{"version":3,"sources":["../../shared/store/types/auth.js","../../shared/store/types/dashboard.js","../../shared/store/types/investors.js","../../shared/store/types/transactions.js","../../shared/store/types/history.js","../../shared/store/types/index.js","../../shared/store/encrypt.js","../../shared/store/api.middleware.js","../../shared/store/reducers/auth.js","../../shared/store/reducers/dashboard.js","../../shared/store/reducers/investors.js","../../shared/store/reducers/transactions.js","../../shared/store/types/profile.js","../../shared/store/reducers/profile.js","../../shared/store/reducers/history.js","../../shared/store/types/support.js","../../shared/store/reducers/support.js","../../shared/store/reducers/loader.js","../../shared/store/reducers/bioAuthentication.js","../../shared/store/types/newinvestor.js","../../shared/store/reducers/newinvestor.js","../../shared/store/reducers/index.js","store/index.js","components/home/amc/index.js","components/forms/tabHeader.js","components/home/nav/navData.js","../../shared/components/utils.js","../../shared/store/actions/auth.js","../../shared/store/actions/dashboard.js","../../shared/store/actions/investors.js","../../shared/store/actions/transactions.js","../../shared/store/actions/history.js","../../shared/store/actions/support.js","../../shared/store/actions/newinvestor.js","../../shared/store/types/portfolio.js","utils/constants.js","lang/en-us.js","components/home/portfolios/utils.js","utils/utilityFunctions.js","../../shared/store/actions/nct.js","../../shared/store/types/nct.js","components/home/transactions/customizedSelect.js","components/forms/autoCompleteInput.js","components/forms/input.js","components/forms/button.js","components/Image.js","../../shared/store/actions/profile.js","../../shared/store/actions/mailback.js","components/forms/captalize.js","components/forms/appEssentials.js","components/home/customModal.js","components/home/searchComponent.js","components/home/breadCrumbs.js","components/home/investors/investorData.js","components/home/investors/InvestorMain.js","components/home/currencyFormatter.js","components/home/investors/investmentsTab.js","components/home/investors/investments.js","components/home/dashboard/piechart.js","components/forms/customLoader.js","components/home/investors/InvestorDetails.js","components/home/transactions/newInvestor/lib/utils.js","components/home/transactions/newPurchaseConfirm.js","components/home/transactions/additionalPurchaseForm.js","components/home/transactions/redemption.js","components/home/transactions/switch.js","components/home/transactions/newInvestor/index.js","components/home/transactions/sip.js","components/home/transactions/swp.js","components/home/transactions/stp.js","components/home/uploadFile.js","components/home/transactions/nfoPhysicalMode.js","lib/TextField/index.js","lib/CustomRadio/index.js","lib/DatePicker/index.js","lib/Button/index.js","lib/TextField/SecureInput.js","lib/Formik/index.js","lib/SearchInput/index.js","lib/NoteModals/index.js","lib/CheckBoxField/index.js","../../shared/store/types/nominees.js","components/home/UpdateNominee/update-nominee-edit.js","components/home/CorrectionFolios/types.js","components/home/MinorStatus/minor-status-edit-bank.js","components/home/CorrectionFolios/correction-folios-selection.js","components/home/UpdateNominee/addNominee.js","components/home/UpdateNominee/nominee-summary.js","components/home/UpdateNominee/SelectedFolios.js","components/home/ChangeEmail/flow.js","components/home/ChangeMobile/flow.js","components/home/ChangeEmail/EmailRelationship.js","components/home/ChangeEmail/index.js","components/home/NoFoliosFound.js","lib/DataTable/index.js","lib/DataTable/customHooks.js","components/home/UpdateNominee/index.js","components/home/ChangeEmail/change-email-list.js","components/home/ChangeMobile/MobileRelationship.js","components/home/ChangeMobile/newMobile.js","components/home/ChangeMobile/index.js","lib/UploadFile.tsx/index.js","components/home/UploadDocumentScreen.js","components/home/ChangeEmail/change-email-document.js","components/home/ChangeMobile/change-mobile-document.js","components/home/transactions/sipCancellation.js","components/home/transactions/NctTypes.js","components/home/transactions/eNach.js","components/home/transactions/nfoAndNewPurchase.js","components/home/transactions/TransactionModes.js","components/home/transactions/TransactionTypeCards.js","components/home/transactions/TransactionTypes.js","components/home/transactions/ekycForm.js","components/home/investors/InvestorRoutes.js","components/home/investors/index.js","components/home/mailBackRequest/index.js","components/home/CustomLoader.js","components/home/transactionHistory/historyDetail.js","components/home/transactionHistory/historyRouter.js","components/home/transactionHistory/index.js","components/home/tableData.js","components/home/transactions/newInvestorSearch.js","components/home/transactions/TransactionMain.js","components/home/transactions/newInvestor/lib/VerticalStepper.js","components/home/transactions/newInvestor/lib/CardComponent.js","components/forms/Loader.js","components/home/transactions/newInvestor/lib/Radiobutton.js","components/home/transactions/newInvestor/FatcaDetails.js","components/home/transactions/newInvestor/lib/Termsandconditions.js","components/home/transactions/newInvestor/Lumpsum.js","components/home/dashboard/displaycards.js","components/home/appCss.js","components/home/transactions/newInvestor/LumpsumSip.js","components/home/transactions/newInvestor/SchemeDetails.js","components/home/transactions/newInvestor/lib/AutoField.js","components/home/transactions/newInvestor/InvestorDetails.js","components/home/transactions/newInvestor/NomineeDetails.js","components/home/transactions/newInvestor/BankDetails.js","components/home/transactions/newInvestor/Confirmation.js","components/home/transactions/newInvestor/NewInvestorRegistration.js","components/home/UpdateNominee/SuccessScreen.js","components/home/UpdateNominee/update-nominee-success.js","components/home/transactions/TransactionRoutes.js","components/home/transactions/index.js","../../shared/components/Transactions/newPurchaseForm.js","components/home/transactions/newPurchaseForm.js","components/home/nav/index.js","components/home/nctHistory/nctDetails.js","components/home/nctHistory/nctRouter.js","components/home/nctHistory/index.js","components/home/social/index.js","components/home/support/index.js","components/home/settings/index.js","starRating.js","components/home/feedback/index.js","components/home/dashboard/displaySimpleCards.js","components/home/dashboard/dashboardmain.js","components/home/dashboard/transactionSummary.js","components/home/dashboard/table.js","components/home/dashboard/tabs.js","components/home/dashboard/ListofInvestors.js","components/home/dashboard/listofInvestorTabs.js","components/home/dashboard/sipMainTabs.js","components/home/dashboard/SipSummaryTabContainer.js","components/home/dashboard/nfoFunds.js","components/home/dashboard/NfoTransaction.js","components/home/transactions/ReinitiateConfirm.js","components/forms/content.js","components/home/dashboard/SipTransactions.js","components/home/dashboard/FmpTransactions.js","components/home/dashboard/dashboardroutes.js","components/home/dashboard/index.js","components/home/mailBackRequest/investor.js","components/home/mailBackRequest/InvestorSelection.js","components/home/mailBackRequest/submitRequest.js","../../shared/store/types/mailBack.js","components/home/mailBackRequest/mailback.js","components/home/mailBackRequest/mailBackSoa.js","components/home/mailBackRequest/consolidatedAccountStatement.js","components/home/mailBackRequest/ELSS.js","components/home/mailBackRequest/CAN.js","components/home/mailBackRequest/CGS.js","components/home/mailBackRequest/GAS.js","components/home/mailBackRequest/networth.js","components/home/mailBackRequest/mailBackRoutes.js","components/home/myEarnings/index.js","components/home/transactions/CobrandingCollaterals.js","components/home/appRoutes.js","components/auth/footer.js","components/home/home.js","components/auth/appbar.js","components/auth/carsouel.js","components/auth/login.js","components/auth/register.js","components/auth/commonTemplate.js","components/auth/otp.js","protectedRoute.js","components/auth/forgotUserId.js","components/auth/forgotPassword.js","components/auth/resetPassword.js","components/auth/refresh.js","App.js","serviceWorker.js","index.js"],"names":["USER_LOGIN_SUCCESS","USER_LOGOUT","LOCAL_AUTHENTICATION_SUCCESS","SKIP_LOCAL_AUTHENTICATION_SUCCESS","LOCAL_AUTH_USERNAME_SUCCESS","LOCAL_AUTH_PASSWORD_SUCCESS","FIRST_TIME_INSTALLATION_SUCCESS","AUTO_SELECT","REMEMBER_ME","USER_PAN","USER_LOGIN_REFRESH_SUCCESS","POSTER_OPEN","GET_DASHBOARD_DATA_SUCCESS","GET_TRANSACTION_DATA","GET_TRANSACTION_DATA_SUCCESS","GET_AUM_DATA_SUCCESS","GET_FREQUENT_MAIL_BACK_REQUEST_SUCCESS","GET_DASHBOARD_AUM_DATA_SUCCESS","GET_DOMAIN_SUCCESS","GET_INVESTORS_LIST","GET_INVESTORS_LIST_SUCCESS","GET_INVESTOR_DETAILS","GET_INVESTOR_DETAILS_SUCCESS","FAVOURITE_INVESTOR_SUCCESS","STORE_CURRENTPAGE","SEARCH_INVESTORS_SUCCESS","SEARCH_SCHEME_INVESTORS_SUCCESS","GET_FUNDS_LIST","GET_FUNDS_LIST_SUCCESS","GET_FUNDS_LIST_FAILED","GET_CATEGORY_LIST","GET_CATEGORY_LIST_SUCCESS","GET_CATEGORY_LIST_FAILED","GET_SCHEME_LIST","GET_SCHEME_LIST_SUCCESS","GET_SCHEME_LIST_FAILED","VALIDATE_SUB_BROKER_SUCCESS","STORE_TYPE","GET_UPCOMING_SIP_DETAILS_SUCCESS","REMOVE_SEARCH_INVESTOR_LIST","STORE_FUND_STATE","STORE_KYC_DATA","GET_NCT_INVESTORS_LIST_SUCCESS","SHOW_PURCHASE_CONFIRMATION_SUCCESS","CONFIRM_PURCHASE_SUCCESS","SET_SIP_DETAILS","SIP_SAVE_DATA_SUCCESS","SET_SWITCH_DETAILS","SWITCH_SAVE_DATA_SUCCESS","SET_STP_DETAILS","STP_SAVE_DATA_SUCCESS","GET_EARNINGS","GET_EARNINGS_SUCCESS","GET_DASHBOARD_SIP_SUCCESS","GET_DASHBOARD_FMP_SUCCESS","SAVE_TRANSACTION_DETAILS","GET_FUNDS_LIST_PAN_SUCCESS","GET_TRANSACTION_HISTORY_SUCCESS","GET_NAV_DATA_SUCCESS","REMOVE_NAV_DATA","REMOVE_TRANSACTION_HISTORY_DATA","ALL","FAVOURITE","RECENT","YES","NO","PANALL","TRUE","FALSE","AUTHORIZATION_PENDING","AUTHORIZATION_APPROVED","AUTHORIZATION_EXPIRED","SIPS","FMP","INVESTMENTS","UPCOMING_SIP","EXISTINGP","EXISTING","NEW","NEWP","PURCHASE","SIP_TRANS_TYPE","REQ_BY","REGULAR","PAYMENT_TYPE","NEW_PURCHASE","ADDITIONAL_PURCHASE","PARTIAL","FULL","UNITS","AMOUNT","REDEMPTION","U","SWITCH","SWP","STP","SIP","PHYSICAL_NEW","PHYSICAL_ADD","PHYSICAL_RED","PHYSICAL_SWITCH","PHYSICAL_SIP","GRAPH","TABLE","PAYMENT_MODE","INVESTMENT_FREQUENCY","SIP_DAY","START_LOADER","STOP_LOADER","INACTIVE_INVESTORS","ACTIVE_INVESTORS","NEW_INVESTORS","GET_SIP_SUMMARY_DATA_SUCCESS","EXPIRING_NEXT_MONTH","CLOSED_THIS_MONTH","SIP_INVESTMENTS","CWS","CWOS","GET_NFO_SCHEMES_SUCCESS","REMOVE_NFO_SCHEMES","encrypt_EncryptionUtils","[object Object]","Object","defineProperty","this","enc_utf8_default","a","parse","e","t","hashstring","sha_js_default","update","Encryptionkey","digest","hashsubstring","substring","n","aes_default","encrypt","keySize","iv","mode","core_default","CBC","padding","pad_pkcs7_default","ciphertext","toString","enc_base64_default","split","join","i","decrypt","payload","encryption","api_middleware_base64","__webpack_require__","BASE_URL","FILE_URL","NCT_URL","FEED_BACK_URL","NCT_URL_NEW","CART_URL","jwt","async","invokeAPI","endpoint","config","auth_token","next","isFile","isTrackApi","isNct","new_investor","isNctNew","isCart","others","DEFAULT_HEADERS","Accept","Content-Type","updatedConfig","headers","authorization","response","fetch","status","data","json","Error","error","message","text","type","responseData","encryptedBody","body","JSON","Dtinformation","Table","Table1","info","errorCode","Error_code","Error_Code","length","Error_Message","CALL_API","Symbol","api_middleware","store","action","url","method","types","showLoader","ikyc","addedparams","params","isLogin","isPreLogin","isAuth","isSignup","isForgot","skipEncode","requestType","successType","authReducer","getState","authorizationToken","exp","decode","FIVE_MINUTES","diff","Math","floor","Date","getTime","token","cause","validateAndRefreshToken","queryParams","URLSearchParams","param","value","set","encodeURIComponent","btoa","stringParametrs","IMEI","DistName","InvEmail","ArnCode","getQueryParams","encode","responseBody","stringify","redirect","_ref","loginPayload","username","encrpyted1","slice","user","validateLogin","alert","auth_initialState","showAll","remeberMe","tran_enable_flag","posterStatus","lastLogin","installed","dist_force_update","dist_ver","dist_ver_update_text","user_pan","autoSelect","auth_authReducer","state","arguments","undefined","DtData","ARNCode","Login_MailID","Regflag","dist_update_text","userId","last_login","investorData","communicationDetails","bankDetails","fundList","Table14","Table7","Table11","initialState","dashboard_dashboard","summaryData","aumData","nfoSchemes","transactionSummary","Table2","emaildomain","emailhost","dashboardAUMData","sipSummaryData","fundData","Table3","map","item","name","category","aum","sort","b","aum_percent","fund","totalAum","reduce","p","c","parseFloat","my_aum","numberofschemes","Numberofschemes","investors_initialState","investors","nctInvestors","count","searchList","favList","investments","investorDetailedSchemes","upComingSipDetails","selectedTab","fundstate","kycData","loading","currentPage","investors_investor","uniquePANs","forEach","Pan","keys","console","log","investor","Kyc","Fatca","fundAllocation","pieData","investorInvestmentDetails","fundLevelInvestments","Table5","Table12","Table13","asOnDate","asondate","fav","find","inv","PAN","filter","totpercent","investorTotal","x","FundDesc","Favorite","nctInvetsors","values","includes","InvPan","FavFlag","updatedInvestors","Dtdata","transactions_transactions","confirmationData","fundsList","categoryList","schemeList","euinList","sipDetails","switchDetails","stpDetails","earnings","sipTransactions","fmpTransactions","transactionDetails","GET_PROFILE_DATA_SUCCESS","profileReducer","profileData","reviewList","history_initialState","transactions","navData","transactionHistory","GET_DIST_POST_QUERY_DATA_SUCCESS","support","supportQueries","loader_loading","max","bioAuthentication_initialState","authID","skipAuth","userName","password","biomtricAuth","STORE_INVESTMENT_DETAILS","STORE_FATCA_DETAILS","STORE_SCHEME_DETAILS","STORE_SCHEME_PARAMS","STORE_APPLICANT_PARAMS","STORE_INVESTMENT_PARAMS","STORE_NOMINEE_DETAILS","STORE_NONOMINEE_DETAILS","STORE_BANK_DETAILS","STORE_SCHEME_DETAILS_CLICK","STORE_SCHEME_DETAILS_SCHEME","STORE_PAN","STORE_SIP","CHANGE_IN_MODE","STORE_LUMPSUM","STORE_LUMPSUM_DETAILS","STORE_SIP_DETAILS","CLEARING_FIRST_TIME_INVETOR_JOURNEY_SUCCESS","STORE_ADDRESS_SUCCESS","GET_BANK_DETAILS_SUCCESS","GET_NOMINEE_DETAILS_SUCESS","newinvestor_initialState","fatcaDetails","nomineDetails","getnomineeDetails","getbankDetails","investmentDetails","schemeDetails","applicantparams","schemeparams","investmentparams","address","store_pan","lumpsum","storeLumpsum","storeSip","sip","noNominee","schemeDetailsClick","schemeDetailsScheme","changeMode","newinvestor","composeEnhancers","window","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","history","createBrowserHistory","basename","process","persistConfig","key","storage","whitelist","persistedReducer","persistReducer","connectRouter","es_redux","router","dashboard","createStore","applyMiddleware","thunk","apiMiddleware","routerMiddleware","persistor","persistStore","Amc","Component","render","React","createElement","style","margin","className","display","flexWrap","AMCS","bordercolor","image","BUILD_URL","Paper","borderColor","props","src","height","alt","TabHeader","active","paddingLeft","paddingRight","cursor","onClick","connect","constructor","_this","super","_defineProperty","setState","dateA","fn_fromdt","reverse","graphData","xDate","yDate","moment","format","fn_nav","range","min","apply","sortedData","sortArrayByDateDescending","justifyContent","borderBottom","Fragment","AreaChart","width","animationDuration","id","x1","y1","x2","y2","offset","stopColor","stopOpacity","XAxis","dataKey","tick","CustomizedAxisTick","YAxis","domain","CartesianGrid","vertical","Tooltip","Area","stroke","fillOpacity","fill","TableHead","backgroundColor","borderTopLeftRadius","borderTopRightRadius","TableRow","TableCell","align","color","fontSize","fontFamily","TableBody","index","component","scope","alignItems","y","transform","dy","textAnchor","DefaultProvider","_provider","auth_PosterOpen","refreshToken","dispatch","generateOtp","userLogout","userPan","getSipSummary","getNfoSchemes","getInvestors","getInvestorDetails","schemeSearch","getNewPurchaseFundList","validateSubBroker","checkKyc","storeCurrentPage","storeFundState","storeKYCData","submitPurchaseData","getSIPTenures","showPurchaseConfirmation","getAssetClasses","getCheckPanKotm","getCheckPanAotm","getOtherSchemes","getRedemptionPaymentDetails","transactions_swpOptions","CalcSIPEnddt","setSipDetails","setSwitchDetails","setStpDetails","getMinimumAmount","saveTransactionDetails","getTransactionHistory","getTrackDetails","RemoveTransactionData","getComplaint","getRelationShipList","opt","getStatesList","getCountriesList","getCitiesList","newinvestor_submitSipDetails","newinvestor_submitLumpsumDetails","getKycDetails","storeSchemeDetails","storeApplicantParams","changeInMode","clearingFirstTimeInvestorJourney","REGISTER_WITH_MOBILE","REGISTER_WITH_EMAIL","addDialCode","mobile","getDate","getDateString","d","isNaN","setFullYear","abs","getFullYear","validUploadFileSize","validUploadFileFormats","OTP_ACTIONS","register","switch","stp","PROSPECT_FOLIO_EMAIL","PROSPECT_FOLIO_MOBILE","swp","sipPause","otmCancel","redeem","forgot_password","SECURITY_ANSWER","additionalPurchase","changeEmail","changeUploadEmail","changeMobile","newPurchase","login","otp_login","changeTaxStatus","changeBank","consolidationFolios","correctionFolios","updateNominee","changeDividend","PRELOGIN_UPDATE_PAN","minorStatusChange","changeifsc","updateMultipleBanks","changeBankDetails","FATCA_DECLARATION","FORM_15","CHANGE_PWD","NEW_MOBILE_ONINE_OTP","NEW_MOBILE_OFFLINE_OTP","UNREGISTERED_MOBILE_CHANGE","NEW_EMAIL_ONINE_OTP","NEW_EMAIL_OFFLINE_OTP","UNREGISTERED_EMAIL_CHANGE","CHANGE_DISPLAY_NAME","TRANSMISSION_OF_UNITS","VERIFY_OTP_RESET_DEVICE","RESET_DEVICE","FRESH_PURCHASE_MOBILE","FRESH_PURCHASE_EMAIL","panRegex","_minDateForCalender","date","ifscRegex","isAlphaNumeric","test","isAlphaNumericAddress","minDateForCalender","currentYear","day","getDay","month","getMonth","checkForOnlyAlphabets","MAX_LENGTH_FOR_PAN","accountNumberRegex","emailRegex","enUs","headerLinks","link1","link2","link3","switchActions","loginWithPassword","loginWithOTP","form","title1","secondaryTitle","titleCaption","termstext","termsLink","panOrPekrn","label","validation","emptyError","minLengthError","rememberMe","button","verifyOtp","href","forgotPassword","answer","quickLinks","title","easyAccess","transmission","subtitle","pan","applyPan","explore","heading","infoBottom","clickHere","websiteInfo","footer","copyRightText","actions","termsOfUse","privacy","termsOfBusiness","siteDeveloper","signUp","sigUpWithPAN","sigUpWithPEKRN","signupText","Disclamer","disclamerText","disclamerInfo","Policies","TandC","validations","regexError","individualPan","email","pekrn","TermsAndCond","title2","notAvailable","notifications","notificationsTxt","clearAll","noNotifications","dashboardLeft","link4","link5","link6","invest","dashboardHome","welcome","notificationinfoLeft","notificationinfoRight","unregisteredFolios","quicklinks","box1","headingBold","box2","box3","box4","slider","slider1","dematHoldingNote","info1","info2","dbPortfolio","investedvalue","marketvalue","gainLoss","banner","portfolioPlaceholder","bottom","link","chartLink","dbNct","portfolioDetails","tabs","asset","amc","assetAllocation","sortby","select","list","holdingPercentage","sortbyList","marketValue","atoz","portfolioSchemes","fundName","folio","balanceUnits","minimumAmount","cagr","readMore","buyNow","nav","popularSchemes","sliders","slider1Title","adsSection","introduce","slides","learnMore","slide1","OtpScreen","subHeading","subHeadingSpan","subHeadingInfo","phoneOtpSubject","otpPhoneSubject","otpEmailSubject","registeredEmail","buttonText","buttonTextWhileLoading","otpValid","changeEmailHeading","emailError","List","tableInfo","emailNote","toolTip","UploadDocument","subHeadingInfo1","subHeadingInfo2","subHeadingInfo3","uploadBtnText","Success","back","getStarted","toolTipWithSameEmailId","success","successMessage","sucessMsg1","sucessEmailMsg1","successMsg2","securityQuestions","Failed","noFoliosFound","UpdatePan","UpdatePanHeading","verifyWithMobile","verifyWithEmail","UpdatePanInfo","uploadPan","selectedFolios","subheading","primaryHolder","contactNo","folioNo","enterPan","enterPanInfo","addFolioText","panValidating","nameValidating","panSuccessful","nameSuccessful","panFailed","nameFailed","folioNameFailed","folioNameInfo","panVerification","kycValidating","aadharValidating","kycSuccessful","aadharSuccessful","kycFailed","aadharFailed","UpdatePanCondition","UnregisteredFolios","newRequest","tabHeading","uploadHeading","uploadInfo","toDownload","myRequest","TrackRequest","list1","list2","list3","disclaimer","disclaimerInfo","ChangeDividend","noSelectLeinUnits","ChangeDividendHeading","radioHeading","payoutToReinvest","reinvestToPayout","ChangeDividendInfo","filters","searchByAMC","selectedFilters","removeFilter","ChangeMobile","ChangeMobileHeading","ChangeMobileInfo","Note","newMobile","headingSpan","toolTipWithSameMobile","UpdateNominee","UpdateNomineeHeading","relationShip","UpdateNomineeInfo","buttonNext","EmptyNomineeInfo","nomineeText","relation","share","more","less","gender","clear","cancel","save","guardianDetailsHeading","addNominee","singleMOHAllowed","nomineeFields","address1","address2","pin","city","country","NoteModals","deleteNominee","greaterModal","lessModal","okay","investorNote","Failure","ChangeBank","ChangeBankHeading","ChangeBankInfo","ChangeBankInfoSpan","ifsc","accountNo","bankName","uploadDocuments","uploadDocumentsInfo","cancelledCheque","bankCheque","addNewBankHeading","addNewBankHeadingInfo","fields","accountNumber","accountType","branch","ocrDataValidating","bankValidating","ocrDataFailed","ocrDataFailedInfo","bankValidationFailed","bankValidationFailedInfo","pennyDropFailed","pennyDropFailedInfo","uploadRequestLetter","ocrDataSuccess","bankValidationSuccess","tooltip","ConsolidationFolios","ConsolidationFoliosHeading","ConsolidationFoliosInfo","chooseMutualFund","targetFolio","submitBtn","selectFolio","sourceFolio","NoConsolidateFoliosInfo","EmptyFolioInfo","terms","ChangeTaxStatus","ChangeTaxStatusHeading","ChangeTaxStatusHeadingSpan","option1","option2","ChangeTaxStatusInfo","newStatusType","newAccountType","newProof","noteModals","proceedText","cancelText","redirecting","confirmationText","UpdateForm15","UpdateForm15Heading","UpdateForm15GHeading","UpdateForm15HHeading","UpdateForm15Info","panDetails","TaxAccessed","yes","no","form15G","form15H","submit","UpdateForm15TableInfo","agreeTerms","listModalInfo","okayBtn","proceedBtn","pleaseNote","modalInfo","Income","dob","enterAmount","dividendIncome","totalDividendIncome","cumulativeIncome","form15GcumulativeIncomeExceed","form15GdividendIncomeExceed","form15GtotalValueExceed","form15HcumulativeIncomeExceed","form15HdividendIncomeExceed","form15HtotalValueExceed","form15HdividendIncomeExceedError","form15GdividendIncomeExceedError","totalIncomeInfo","registerButton","incomeExceedLimit","overwriteBtn","unselectBtn","incomeModalInfo","DetailsOfIncome","slNo","idNo","NatureOfIncome","SectionDeductible","AmountOfIncome","declaration","lastAssesmentYear","declarationModal","instructions","para1","para2","para3","para4","para5","para6","para7","para8","totalIncomeValidation","MinorStatus","MinorStatusHeading","MinorStatusInfo","differentPanError","differentBankError","sessionExpired","requestFailed","EnterPan","enter","toolTipText","ReviewDetails","editFolio","editFolioBank","uploadPanHeading","uploadChequeHeading","uploadSignatureHeading","uploadSignatureInfo","uploadSignatureLink","uploadSignatureLinkInfo","CorrectionFolios","CorrectionFoliosHeading","CorrectionFoliosInfo","Selection","selectionInfo","search","selectedFolio","makeSelection","makeSelectionMobile","nameInRecords","enterCorrectDetails","Fields","secondHolder","thirdHolder","guardianName","mobileNo","emailAddress","dateOfBirth","bankAccNo","bankAccType","bankIfsc","taxResidency","modeOfHolding","dpIdNdClientId","errors","startingWithZero","validNumber","minFiveCharacters","noNumericValues","sameNames","UpdateIFSC","UpdateIFSCHeading","UpdateIFSCInfo","Details","toolTipInfo","pleaseConfirm","ifscCode","BankMandate","BankMandateHeading","selectOption","BankMandateInfo","radioOption1","radioOption2","radioOption3","defaultBank","newBank","chooseBankToDelete","chooseNewDefaultBank","FatcaDeclaration","FatcaDeclarationHeading","enterPanPekrnHeading","enterPanPekrn","taxResident","yesTxt","noTxt","acknowledge","fillFollowing","nationality","countryOfBirth","taxResidencyCountry","tinNo","tinNotAvailable","identificationType","tinTxt","othersTxt","typeHere","selectReason","accountHolderLiable","noTinRequired","othersSpecify","countryOfTaxResidency","tinNumber","validTinNumber","identificationReason","noTinReason","maxCharacterForTinReason","declarationBox","reasonOptionText","placeOfBirth","minLength","pobMinLength","kycFields","fatherName","spouseName","occupation","netWorth","netWorthDate","annualIncomeSlab","pepFlag","addressType","sourceOfWealth","remarks","zeroError","nctModal","otpModal","infoEmail","otpAuth","subHeadingMail","confirmText","consolidation","bank","taxStatus","bankMandate","changePassword","feedbackSubmitted","okayTxt","displayNameChanged","TransmissionRequest","TransmissionRequestHeading","TransmissionUnitHeading","TransmissionRequestInfoSpan","TransmissionRequestInfo","IamFolioHolder","IamNominee","IamClaimant","followingDetails","enterName","enterMobile","enterEmail","multipleNomineesNote","uploadDC","followingFolios","modal","infoNote","exit","iAgree","holderDetails","enterHolderPan","primaryHolderDetails","registeredMobile","enterRegisteredMobile","enterRegisteredEmail","selectAmc","enterFolio","natureOfClaim","addFolio","modal2","nomineeModal","holderModal","claimValues","value1","value2","value3","addedFolio","natureClaim","panUpload","multiplePan","addPan","download","primaryHolderPan","uploadDeathCertificate","toDownloadPrefilled","toDownloadBlank","downloadList","TransmissionInfo","mainInfo","signedT2","deathCertificate","birthCertificate","kycCertificate","newBankMandate","newBankMandateInfo","nominationForm","doneBtn","documentSet","fundFolios","documentRequired","folios","claimant","claimantInfo","holder","nominee","viewDocumentsRequired","submitFormInfo","postLogin","subHeadingSpanPan","subHeadginSpanPekrn","subHeadingInfoPan","subHeadingInfoPekrn","deceasedHolderName","modifyNomineeDetails","downloadNominationForm","signedT1Form","dcCopy","nameEmpty","emailEmpty","otp","validationError","crmDashboard","totalRequests","rejectedRequests","inProgressRequests","resolvedRequests","financial","nonFinancial","nctLinks","dividend","changepan","changeemail","changecontact","unclaimedpayout","datacapture","changebank","multiplebank","changenominee","changebanktype","changeinvestor","changeinvestorinfo","fatca","minor","form15","notMatched","myProfile","accountInfo","emailId","panNoOrPekrn","security","dpHeading","communications","saveChanges","changeSecurity","enableBiometrics","pushNotifications","whatsappNotifications","giveFeedback","registerComplaint","suggestion","changeUserName","changeMobileNo","typehere","enterFeedback","enterRefId","enterQuery","enterServiceName","selectDpId","enterDpId","enableFingerPrint","updateSecurityQuestion","resetSecurityQuestion","question","oldPassword","setNewPassword","confirmPassword","otpinfo","otpAuthentication","otpRequest","signupOtp","registered","resetPassword","reset","setPassword","disclimer","t1","t2","setinput","displayName","twoFactor","selectQuestion","signIn","twoFAHeading","continue","secretQuestionnaire","questions","question1","question2","question3","question4","question5","question6","question7","question8","question9","question10","passwordGuidelines","one","two","three","loginAuth","Hi","forgotpin","or","skipTxt","loginWithFingerprint","setPin","enterPin","confirmPin","enableFingerPrintInfo","enableTxt","skipNow","verifyIdentity","verifyIdentityInfo","touchSensor","newPin","oldPin","resetPin","resetPinSuccess","common","termsConditions","euinDeclaration","serviceDashboard","depReq","nctDisableAboveThreshHold","FAQ","referFAQ","otpinput","resendotp","didntReceiveotp","resendtext","equity","debt","liquid","asOn","viewMore","validatingIFSC","invalidIFSC","IFSCValidated","noRecordsFound","noOtp","spaceNotAllowed","notAlligibleForPekrn","cityMaxLength","stateMaxLength","dobRequired","ageLessThanHundred","minDOBValidation","minorAgeValidation","oldPasswordRequired","confirmPasswordRequired","newPasswordRequired","required","confirmPasswordError","displayname","noSpecialCharacters","regex","mobileLength","relationship","emailRequired","mobileRequired","matchError","bankErrors","sameBankDetails","HoldingType","allHoldings","zeroHoldings","nonZeroHoldings","fundInfoModal","info3","resetDevices","resetTxt","devicesTxt","forceUpdate","forceInfo","skipInfo","unclaimedPayouts","mainHeading","trackStatus","searchWithTransaction","serviceRequestType","sebi","noFoliosToDownload","sebiInfo","statementType","period","periodContent","periodDisclaimer","folioListing","selectionHeading","emailSelectionHeading","passwordSuggestion","selectPeriod","table","head","submitLabel","submitting","downloading","note","networkText","timeOut","unableToProcess","dbCommercial","indNote","ctLinks","redemption","sipPauseDetails","eMandate","purchaseInfo","investmentPage","rightHeading","enterARN","enterSubBrokerARN","enterEUIN","enterRIA","emptyFolio","emptyInstallment","emptySip","invalidInstallment","sipDay","minAmount","stpType","fixed","notAllowed","variable","frequency","daily","weekly","monthly","quarterly","noOfTransfers","enterHere","stpDay","selectDay","fromDate","toDate","amountInstallment","swpDetails","sipCancel","sipTransaction","profileDetails","nominees","addressCheck","exploreMfs","searchmf","allMfHouses","viewAll","mfCategory","inactiveScheme","inactiveSchemeInfo","hybrid","other","solutionOriented","debtInfo","equityInfo","hybridInfo","mfFundSize","below100Cr","upto500Cr","upto1000Cr","above1000Cr","mfByRisk","low","moderatelyLow","moderate","moderatelyHigh","high","veryHigh","fundHouse","searchAmc","fundSize","selectScheme","risk","investmentType","onlySip","onlyLumpsum","wishlist","changeSchemePlan","startSip","startLumpsum","Sip","Lumpsum","returns","exitLoad","minLumpsum","fundType","plan","planFilterTitle","returnDuration","minimumInvestmentFilterTitle","returnCalculator","overThePast","totalInvestment","fundsReturn","fundManager","sectors","companies","sector","company","allocation","showLess","returnCalcDisclaim","kycError","nomineeShare100","enterDistSubDist","EUINmandatory","RIAMandatory","ISINMandatory","NameDOBOccupationRequired","BankDetailsMandatory","euinFlag","distId","subDist","zeroNetWorth","fillAllDetails","minLengthForArn","maxLengthForEuin","taxStatusError","chequeRequired","relationshipError","mfInvestment","stpAmount","swpAmount","selectSwpDay","selectStpDay","existing","new","purAllow","sipAllow","investmentMode","investingThrough","purchaseType","enterArn","subBrokerCode","subBrokerArnCode","euinNo","lumpsumAmount","sipAmount","disclaimers","disclaimersLink","and","of","mfCentral","addToCart","edit","prefilled","personalDetails","panNo","moh","nomineeDetails","countryofTaxR","tinorEqui","taxIdType","selectSipDay","howLong","untilIStop","Or","tenure","years","cotr","tin","riaCode","mfPayment","selectPayment","otm","upi","netBanking","modeOfRegistration","otmRowStatus","otmUmrnEmpty","addNew","investmentAmount","transactionNumber","payVia","enterUPIId","mandateAmount","bankAccount","otmMaxAmountLabel","otmExpiried","otmNotEligible","existingOtm","newOtm","umrnNo","mandateEndDate","mandateBank","registerMandate","enterFollowing","enterBankDetails","gotoEmandate","investorName","accountHolder","amount","confirmAccountNoValidationMsg","selectUntilToday","ifscAndBank","existingBankError","lengths","eMandateDuration","invalid","investorPan","investorMail","branchName","bankAccountNo","confirmBankAccountNo","untilCancelled","mfCart","cartDetails","schemesAdded","scheme","totalAmount","proceedToPay","addMoreFunds","amountPayable","successScreen","headingInfo","investmentSummary","paymentMode","Id","goToTransact","failureScreen","pendingScreen","fatcaStatus","checking","otmStatus","vrFooterSource","vrFooterInfo","leftMenu","contactDetails","fatcaKyc","kyc","editProfileDetails","rightMenu","income","firstHolderDetails","emailRelationship","mobileRelationship","firstHolderName","firstHolderPan","secondHolderDetails","secondHolderName","secondHolderPan","proceed","fatcaEdit","taxId","addId","pep","sow","sof","cservices","micr","lumpsumError","minInvest","multipleOf","maxInvest","NB","bankNotSupportError","paymentProviderError","notSupported","OTM","UPI","paymentFlow","initiatingPayment","redirectingToPayment","selectSchemeToRedeem","redeemBy","units","redeemable","remaining","redeemFullAmount","redeemFullUnits","redeemDetails","currentValue","totalBalanceUnits","redeemableUnits","currentNav","invalidAmount","invalidUnits","maxAmount","maxUnits","multiples","redemptionSummary","redemptionUnits","remainingUnits","exitLoadUnits","amountCreditedTo","redeemAfter","redeemAfterSpan","stayInvested","redemptionReason","goalAchieved","needFunds","poorPerformance","investInOther","switchFromInfo","switchToInfo","switchFromAmountError","switchFromUnitError","selectedSwitchFrom","from","to","selectSwitchTo","switchFrom","switchTo","switchFullAmount","switchFullUnits","minSwitchAmount","minSwitchUnits","viewDetails","newSchmes","noFunds","noFolios","EUIEmpty","acceptEUINDeclaration","selectEUIN","invalidARN","RIALength9","amountEmpty","amountNegative","amountGreaterThan","empty","negative","lessThan","riaCodeRequired","riaCodeMin","arn1Required","arn1Min","arn2Required","arn2Min","termsAndCondition","ct_minor","ct_nro","avaialbleUnits","noIFSC","ifscBank","noFundsAvailable","termsModal","camsEMandate","info4","info5","info6","info7","info8","info9","info10","info11","info12","info13","info14","info15","info16","info17","info18","info19","info20","info21","info22","kfinEMandate","euinModal","nct","default","transactionSource","minorFolio","utils_dashboard","getTaxStatusCode","01","02","21","24","26","27","28","29","getRelationShip","SE","SP","DC","DS","DP","GD","PM","CD","PO","NRI_CODES","portfoliosByTransactionResource","transactionSourceToUpper","toUpperCase","portfoliosByMinorStatus","_ref2","age","rest","taxToUpper","minorBelowEighteenYears","portfoliosByModeOfHolding","_ref3","modeOfHoldingUpper","Number","getInvestorFunds","nomineeFolios","filterFunc","defaultFilterFunc","prev","curr","investorDetails","_ref4","matchFlag","every","func","call","amcName","modeOfHoldingSingle","_ref5","_ref6","aboveEighteen","getErrorMessage","row","dividendFilters","isDisabled","messageTable","defaultError","getMatchAndUnMatchedFunds","addDisable","matchedData","activeRows","unMatchedData","disabledRows","isError","formikState","touched","showHelperText","maskMobileNumber","mobileNumber","replace","saveNominee","portal","fetchInvestorDetails","src_store","enableFixture","filterdByFolio","folioList","schemes","findIndex","ele","schemeNames","assetType","valid","getPortfoliosFilteredData","taxStatusLabel","_folioList$find","_fund","updateEmail","checkEmail","updateMobile","sendPhoneOTP","userRegisteredWith","onSaveImageData","CustomizedSelect","uptext","marginLeft","Select","onChange","handleChange","displayEmpty","disabled","inputRef","border","borderRadius","minHeight","input","InputBase","MenuItem","children","errorMessage","inputComponent","assign","ref","components","Control","TextField","fullWidth","InputProps","classes","notchedOutline","selectProps","notchedOutlineError","inputProps","innerRef","innerProps","textFieldProps","variant","Menu","square","paper","textTransform","NoOptionsMessage","Typography","noOptionsMessage","Option","buttonRef","selected","isFocused","fontWeight","isSelected","whiteSpace","Placeholder","placeholder","SingleValue","singleValue","ValueContainer","valueContainer","withStyles","theme","root","flexGrow","flex","overflow","spacing","position","overflowY","zIndex","marginTop","left","right","divider","withTheme","single","selectStyles","base","palette","primary","& input","font","NoSsr","styles","options","suggestions","isClearable","onKeyDown","Input","image2","isShowError","inputref","isShowPasswordError","marginRight","onBlur","step","OtpInput","textAlign","Signbutton","buttontitle","Debtbutton","DebtbuttonActive","outline","DebtbuttonNowidth","Image","getProfileData","profile_resetPassword","getMailbackList","getcaptialgainStatment","formatDate","checkZero","AddingbuildURL","mid_cap_fund","services_fund","maff_fund","bcf_fund","APP_LOGO","second_app_logo","carouselImage1","carouselImage2","carouselImage4","carouselImage8","dashboardActive","investorsActive","newTransactionActive","navActive","mailBackActive","transactionHistoryActive","ekycActive","earningsActive","settingsActive","cobrandingActive","dashboardInActive","investorsInActive","newTransactionInActive","navInActive","mailBackInActive","transactionHistoryInActive","ekycInActive","earningsInActive","settingsInactive","cobrandingInActive","LOGOUT_ICON","MailBackSoaIcon","CASIcon","ELSSIcon","CANIcon","CGSIcon","GASIcon","networthIcon","Loader_icon","NEW_PURCHASE_ICON","SIP_ICON","ADDITIONAL_PURCHASE_ICON","REDEMPTION_ICON","SWITCH_ICON","STP_ICON","SWP_ICON","SIP_PAUSE_ICON","NCT_ICON","ENACH_ICON","EYE_ICON","EYE_ICON_HIDDEN","DialogTitle","closeButton","top","grey","onClose","MuiDialogTitle","disableTypography","IconButton","aria-label","CloseIcon","DialogContent","MuiDialogContent","SucesssPopUp","Dialog","closeSucessModal","aria-labelledby","open","PasswordDialog","userid","eve","RegExp","target","newPassword","event","oldpassword","ReqBy","closeModal","openSuccessPasword","showPassword","showOldPassword","confirmShowPassword","componentDidMount","_this2","openPasswordModal","closeModalPopUp","onChangeInput","onBlurInput","CustomizedDialogs","closePasswordModal","passwordSucess","PosterDialog","close","paddingBottom","class","getMailBackRequestStatus","v","_this3","startDateValue","toLocaleDateString","year","FromDate","record","_this4","MuiPickersUtilsProvider","utils","DateFnsUtils","KeyboardDatePicker","onDateChange","disableFuture","maxDate","KycNotDoneDialog","nfoFunds","cas","Gas","componentName","refNo","myself","reqtype","Nctihno","refrence","new_type","transactName","Transaction","transactionStatus","closeYesModal","SipCancelModal","rejectionreasonsOpen","closeNoModal","RejectionReason","closemodelafterrejecttion","EnachModal","EnachAMCModal","flexDirection","marginVertical","PerformanceModal","flexBasis","marginBottom","Units","NAV","NavDate","trs_acno","maxWidth","CircularProgressbar","PercentageofCompletion","strokeWidth","MFPayment","background","Unitsallotment","CustomizedDialogsforReintitate","confirmation","rejectionReasons","reason","RejReason","checked","selectedReason","handleReasonChange","reasonMandatory","othersText","selectedotherreason","NEW_TRANSACTION_URL","searchInvestors","ditSchemeDetails","radioValue","inputValue","ARN","AllFavFlag","agentcode","schemeOptions","preventDefault","parameters","agent","uid","Uid","Investorresponse","kycResponse","i_pan","KYCBlock","push","pathname","openModal","regpan","charAt","schemeoption","componentDidUpdate","prevProps","prevState","boxShadow","borderRight","FormControl","RadioGroup","handleRadioChange","FormControlLabel","control","Radio","SearchIcon","maxLength","changeInput","onKeyPress","keyPress","evt","handleschemeOptions","fm_schdesc","CommonBreadCrumb","pathnames","pop","last","hideFirst","breadcrumbNameMap","Breadcrumbs","separator","NavigateNextIcon","lastAndTo","NavLink","storeType","nctInvestorslist","tabName","activeTab","activeText","location","Search","selectTab","TableData","Investor","InvestorData","CurrencyFormat","require","FormatCurrency","displayType","thousandSeparator","prefix","thousandSpacing","decimalScale","InvestmentTab","cellStyleBase","cellStyleRight","cellStyleLeft","cellStyleCenter","isChecked","setIsChecked","useState","columns","upcomingSip","valueA","CurrentValue","filterInvestments","checkingNoZeroHolding","tableData","tableColumns","Checkbox","col","SchDesc","plndesc","CostValue","GainValue","toFixed","lastnav","colSpan","schname","plnname","accno","sipdt","sipstartdt","sipenddt","amt","Status","COLORS","renderActiveShape","cx","cy","innerRadius","outerRadius","startAngle","endAngle","Sector","PieDiagram","PureComponent","activeIndex","parseInt","PieChart","Pie","activeShape","entry","Cell","concat","flexShrink","toLowerCase","symbol","round","aumpieData","ruppess","CustomLoader","favouriteInvestor","updateFavouriteInvestor","getUpComingSips","_eachInvestor","invname","Name","findFavFlag","AgentCode","_response$Dtinformati","isLoading","noData","Params","YearFlag","invdistflag","_this$props$location","_this$props$location$","detailsEmail","detail","detailsMobile","Mobile","_this2$props$location","_this2$props$location2","favourite","KYC","GainVal","Gain","todaygain","changeActive","Investments","checkIfMinor","getFieldsFromMap","Schema","noOfApplicants","customHandler","k","field","getFieldList","fieldMap","f","hidden","$wait","time","Promise","res","rej","setTimeout","addOneMonthAndTwentyYears","dateString","Year","nextMonthDate","setMonth","twentyYearsLaterDate","String","padStart","addFifteenDays","setDate","convertDateFormat","dateStr","Xmobile","Xemail","Email","confirmPurchase","redemptionConfirm","sipPauseDateCalculate","sipPauseEndDateCalculate","swpConfirm","submitSipCancellation","stpConfirm","saveSipData","submitSTPCancellation","sipPauseValidator","finalSipPause","sipType","sipConfirmPurchase","_sipDetails$transacti","_sipDetails$transacti2","_sipDetails$transacti3","_sipDetails$transacti4","sip_start_date","new_start_date","toLocaleString","hour12","end_date","sip_end_date","new_end_date","isFreedom","transactionType","i_euinDeclaration","i_InvDistFlag","Opt","fm_option","SubArn","subArnCode","i_PerpetialSIP","i_Amount","installmentAmount","i_frequency","investmentFrequency","FrequencyID","i_fund","i_subbroker","i_SchemeCode","fm_plan","Pln","Sch","fm_scheme","i_brokercode","arnCode","i_SIPday","i_euinno","i_id","EntDt","i_ModeofPayment","i_EntBy","i_folio","i_SIPEndDate","i_SIPStartDate","i_NoofInstalment","installments","subtrtype","Flexi","Freedom","FlexiMaxAmount","flexiMaxInstallmentAmount","Umrn","UMRN","Freedom_scheme","swpScheme","Freedom_Plan","Freedom_option","SWPStartdate","swp_start_date","SWPEnddate","swp_end_date","AdvanceSwitchDate","sipRefNo","Scheme","ihno","paymenttype","Trtype","trtype","Refno","TRefno","ModuleName","nfoNew","dd_scheme","trim","dd_plan","dd_option","dd_refno","selected_pause_date","selected_pause_installments","sip_pause_end_Data","SrtDt","pauseDetails","enddt","OTPMsg","random","PanNo","InvestorName","i_RedFlg","switchType","EuinValid","i_entby","i_Tacno","Acno","Bankid","i_Plan","i_Tplan","switchInScheme","Desci","i_Toption","i_Acno","i_Fund","i_UntAmtFlg","switchMode","i_oldihno","Subbroker","EuinCode","euin","i_Agent","Distributor_Name","Otp","i_Option","i_Userid","i_Tscheme","i_Scheme","i_Tfund","fm_fund","i_UntAmtValue","EUINFlag","switchRefNo","REFNO","Stpday","i_option","NoofTransfer","transfers","Entby","InvDistFlag","Enddt","sipEndDate","Euinvalid","Stdt","sipStartDate","Tooption","Stpoption","swpOption","Description","Plan","Trdate","Freq","swpFrequency","vale","Batchno","ToScheme","Distributor","Fund","Amount","Ihno","Euin","Toplan","stpRefNo","appno","sipStartDateReverse","startDate","sipEndDateReverse","EndDate","withDrawals","Withdrawaltype","Errno","Optn","Noofwithdrawals","Remarks","Branch","swpRefNo","RefNo","redemptionMode","redemptionType","i_pangno","i_multibankdet","bnkname","bnkacno","bnkactype","rejcode","dsipstdt","Esipstdt","dsipEnddt","EsipEnddt","dtrDate","EsipTrDate","fromdate","todate","trdate","cancellationReason","rejectionreason","reasons","RejCode","ToOption","sch","ToPlan","tpln","customfund","cycleihno","appldt","cycledtpart","termdt","Toscheme","tsch","subTrType","barcode","batchno","disitributorid","pln","acno","dpid","entby","errno","lname","rcpno","chqtype","cmlflag","clientid","allotmentFlag","Frequency","freq","Agent","sipCancellation","dpausesipstdt","Epausesipstdt","dpausesipenddt","Epausesipenddt","dreportingdt","Ereportingdt","dsipenddt","Esipenddt","pausesipstdt","pausesipenddt","reportingdt","pauseihno","sipregihno","sipstdt","validateresponse","oldoption","oldscheme","oldplan","sipamt","refno","noofinst","sipfreq","final","pause_installemnts","sip_pause_dates","sipPauseRefno","pause_inst","Array","_swpScheme$value","folioDetails","sipScheme","swpCategory","selectedKotm","sip_day","Folio","DetailsGroup","mainLabel","subLabel","InvestorEmail","mainLabel1","subLabel2","InvestorMobile","PlnDesc","OptDesc","orginalScheme","Schdesc","FrequencyDescription","UMRNNO","fEmailFlag","fMobileFlag","SubbrokerArn","EUINCode","handlesipPauseDateChange","pause_start_date","handlePauseInstallments","ID","confirmSipPause","confirmSipcancellation","confirmRedemption","confirmSwp","confirmStp","confirmSwitch","sipSubmit","gotoTransactionTypes","pFlag","Set","validateBrokerCode","SubAgentCd","AgentCd","schemeType","showSmart","banks","assetClasses","categories","schtype","fundCode","trantype","otherSchemes","pSchFlg","combo_flag","combo_purchase_enable","combo_purchase_flag","combo_disclaimer","combo_lable","checkCombo","MinAmt","fm_newpur","isCombo","combo","flag","disclamier","smart","funds","findError","arn","categoryField","focus","euinField","amountField","confirm","comboswitch","purchaseData","confirmationParams","INVESTOR_URL","methodType","folioField","schemeField","transaction","euincode","Sub_ARN_code","subbroker","schemename","scheme_code","_this$props","scrollTo","behavior","getFolios","findingScheme","IntegrationReactSelect","handleFolioChange","changeSchemeType","handleCategoryChange","CatValue","CatDesc","SchDesc1","handleSchemeChange","changeValue","subArnField","subBrokerField","abm_agent","changeEuin","showError","ComboFlagChange","getBankDetails","rSchFlg","BalUnits","RedMinAmt","currValue","Fund_CurValue","trdt","ttrtype","sip_tran_trtype","getfolios","handleRedemptionValueChange","checkMultiBrokerFlag","multibrokflg","CurValue","LastNAV","changeRedemptionType","changeRedemptionMode","handlefolioBankDetailsChange","bankField","sSchFlg","switchInSchemes","findingInScheme","Switch_in_scheme","currAmountValue","switchOutField","euinopt","handleSwitchValueChange","handleSwitchInSchemeChange","changeSwitchType","changeSwitchMode","mobileRegex","nameRegex","bankAccountRegex","pincodeRegex","countryCodeRegex","genderOptions","NomineesList","categoryOptions","Occupations","Gross_Annual_income","relationshipOptions","familyDescriptionOptions","minimumLumpsumAmout","swpSchemes","frequencies","sipDays","perpetualSip","freedomorflexiSIPorNot","modes","code","minInstallment","kotm","umrn","sipTenures","swpOptions","Family_Code_Email","Family_Code_Phone","transactiontype_flexi","_this$state$selectedK","_this$state$selectedK2","_this$state$selectedK3","Umrn_endDate","selectedFrequency","startDateSplitting","URMN_enddate","noofFrequency","endDate","timeDifference","monthsDifference","daysToNextYear","ceil","_this$state","_this$state$sipDay","_this$state$sipDay$va","_this$state2","_this$state2$selected","parts","formattedDate","pass","maxAmt","obj","Amt","filteredData","minAmountValue","trType","filterTenures","Stepup_flag","SIPTen","multiplier","SWPAMTPER","findMultiplier","getUMRN","minParams","minamt","mininst","getsiptenures","onlyEqityExcepttaxsaver","sipSchFlg","sipFlag","Setstate","invName","disbleEmail","disbleMobile","astscheme","amc_code","minSwpAmountValue","checkFoilioisMinororNot","sipminamt","SIPminamt","SubCategory","minorflag","getInvestmentFrequency","modeparams","getSipEndDate","installmentsField","StartDate","Installments","dates","SIP_EndDate","SIP_StartDate","err","_this$state3","_this$state3$sip_end_","_this$state4","_this$state4$selected","_this$state4$selected2","_this$state5","_this$state5$selected","_this$state5$selected2","sipTypes","isFlexi","modifiedOthers","d1","d2","split_enddate","split_mandatedate","invNameField","emailField","mobileField","_this$state$transacti","_this$state$transacti2","_this$state$transacti3","_this$state$selectedK4","_this$state$selectedK5","noofinstallments","sipfrequency","sipamount","paymode","countrycode","_this$state$selectedK6","_this$state$selectedK7","sipTypeField","checkExisting","InvName","sip_trtype","mode_of_registration","_this$state6","_this$state7","_this$state8","_this$state9","handleSipTypeChange","family_description_codes","family_description","family_code","FamilyDescriptionEmail","FamilyDescriptionPhone","codeField","changeFrequency","handlechangeSIPEndDateChange","kotmField","handleSwpSchemeChange","Pay_Mode","sip_cycleid","changeSipDay","sFlag","withdrawals","swpFrequencyOptions","sipCycle","no_of_inst","swpOptionsResponse","swpFrequencyOptionsResponse","Astscheme","sipCycleResponse","swpOptionField","sipDayField","swpFrquencyField","handleNoOfWithDrawals","sipStartDateResponse","sipEndDateResponse","handleMinimumAmount","handleSwpOptonChange","handleSwpFrequencyChange","handleSwpDay","sipCycleResponseOptions","stpDates","transferValue","transferAmount","amountValue","minimumInstallments","switchInSchemeField","swpDateField","swpField","transfer","Minimum_Instalment","handleSwitchInScheme","stpFrequencyField","handleChangeStpFrequency","handleChangeTransfers","handleSwpOptionChange","handleChangeTransferAmount","UploadFile","fileName","htmlFor","accept","uploadFile","physicalTransaction","amc_name","AadharFlag","Aadhar","files","file","base64","fileReader","FileReader","onload","fileLoadedEvent","result","readAsDataURL","upload","upload_file","Pdffile","emailIdField","fundField","componentWillMount","componentWillReceiveProps","nextProps","fundChange","fileUpload","TextInput","autoComplete","CustomRadio_dashboard","en","RadioButton","radioImg","cssClass","FormHelperText","useRadio","initValue","setValue","useCallback","CustomRadio","extraClass","selectedValue","helperText","useEffect","Skeleton","FormLabel","_childProps","DatePickerInput","allowKeyboardControl","InputLabelProps","shrink","KeyboardButtonProps","readOnly","inputVariant","SubmitButton","Button","CancelButton","LoadDots","labelWhileLoading","data-testid","SubmitButtonWithLoader","SecureInput","showSecure","onPaste","endAdornment","InputAdornment","edge","Selector","formik","isSubmitting","Form","ui","submitButtonLabel","buttonExtraActions","isCancel","onCancel","cancelButtonLabel","parentClass","onSubmit","handleSubmit","extraProps","_ele","fieldProps","Boolean","updateValue","setFieldValue","SearchInput","darkmode","searchKey","startAdornment","showModal","cancelBtn","proceedHref","mobileOrEmail","show","setShow","onProceed","CheckBoxField","INITIALIZE_NOMINEE_ARRAY","update_nominee_edit_dashboard","update_nominee_edit_form","relationShips","initialValues","pincode","guardianPan","guardianAddress","guardianDob","validationSchemaNominee","yup","val","nullable","notRequired","matches","when","is","thisYear","nomineeDobYear","then","otherwise","nomineePan","parent","UpdateNomineeEdit","useHistory","useLocation","useSelector","selectedRows","nomineeIndex","nomineesData","setNominees","noNomineeFlag","setNoNomineeFlag","deleteIndex","setDeleteIndex","setLoading","showShareModal","setShowShareModal","_ele$relation","_ele$relation2","_ele$relation3","_ele$gender","_ele$address","_ele$address2","_ele$guardian","_ele$guardian2","_ele$guardian3","_ele$guardian4","nomineeState","percent","line1","line2","guardian","isEditable","showDetails","editShare","isNewlyAdded","isEdited","handleAddNomiee","handleAddressCheck","currentNominee","cancelFormSubmission","splice","handleNomineeChange","useDispatch","_ele$relation4","_ele$relation5","AddNominee","handleAddNominee","handleResetForm","ind","resetForm","relations","getNameIndex","nomineeApiPayload","distributor_id","nomineeData","eNomType","eSignFlag","eNomDocId","apiRes","succesMessage","totalShare","sum","current","names","some","line3","address3","updatedNominees","handleDeleteNominee","types_dashboard","types_common","joinName","validateName","oldName","newName","match","initSelection","newValue","validate","handleChangeCondition","_ref7","_ref8","masterData","_ref9","shouldValidateField","_ref10","_ref11","_ref12","ValidationUI","isValidating","onValidationText","successfulValidationText","correction_folios_selection_dashboard","correction_folios_selection_common","payloadKeyValues","secondaryHolderName","thirdHolderName","guardian_name","portfolio","fetchIFSCDetails","selection","setSelection","selectedItems","setSelectedItems","nameFields","setNameFields","openDrawer","setDrawer","setLoader","ifscValidation","setValidation","nomineesShare","setNomineesShare","searchString","setSearch","setError","setValidate","ifscField","checkForCorrectIFSC","nomineeNamesKey","nomineeSharesKey","_fund$bank$","_fund$bank$2","_fund$bank$3","_fund$guardian","nameFieldsOfNominee","fundKeysByRowData","bank_ifsc","bank_accountNo","bank_accountType","nomineesNames","nomineesShares","nomineesNamesData","nomineesShareData","_nominee","isNominee","updateKeysWithRowData","updatedSelections","selector","handleTextInputChange","reqId","firstError","handleSearch","selections","getNames","selectorKey","keyList","updatedValue","oldValue","filteredNames","namesData","dataSelection","FormGroup","prevSelections","_selector","_handleCheckBoxChange","lineHeight","SwipeableDrawer","anchor","onOpen","_selector$masterData","labelId","minDate","maxlength","onFocus","nomineeIds","keyValuePairs","correctedData","dpId","addNominee_dashboard","addNominee_common","AddNomineeForm","resetFieldError","fieldName","excldeKey","setErrors","ScrollToError","cleanedValue","numericValue","el","document","querySelector","_el$parentElement","parentElement","scrollIntoView","useFormik","onReset","validationSchema","validateOnChange","_values$name","_values$name2","_props$investorName","_values$name3","_values$pan","_values$pan2","_values$guardianPan","_values$guardianPan2","_values$address","_values$address2","_values$share","nomineeNames","_ele$name","nomineePans","_ele$pan","guardianPans","_ele$guardianPan","guardianNames","_ele$guardianName","_values$guardianName","_values$guardianName2","_values$guardianName3","_values$name4","formFields","setValues","FormLoad","nominee_summary_dashboard","nominee_summary_form","nominee_summary_common","NomineeSummary","noNomineeFlagAll","verified","SelectedFolios_dashboard","SelectedFolios_dbCommercial","SelectedFolios_form","SelectedFolios_common","BackArrow","header","customStyle","goBack","ActionHeader","subHeader","currIndex","setCurrentIndex","number","NomineeReducer","any","isExpanded","setIsExpanded","paddinTop","KeyboardArrowUp","KeyboardArrowDown","CHANGE_EMAIL_LOGIN_FLOW","CHANGE_EMAIL_MOBILE_LOGIN_FLOW","SUCCESS","MOBILE_LOGIN_FLOW","EMAIL_LOGIN_FLOW","nextScreen","path","nctFlow","flows","getChangeEmailFlow","getChangeMobileFlow","_flow","EmailRelationship","emailFormik","ChangeEmail_dashboard","ChangeEmail_common","sendEmailOTP","ChangeEmail_initialValues","_props$location","_props$location$state","_props$location3","_props$location2","isPhygitial","enteredEmail","hiddenLabel","NoFoliosFound_dashboard","NoFoliosFound","icon","DataTable_dashboard","DataTable_common","useStyles","makeStyles","arrow","CustomToolTip","leaveTouchDelay","enterTouchDelay","useRowStyles","& > *","TableWithCollapse","rows","_columns","radioGroupsEnabled","isCollapse","renderCollapse","checkBoxEnabled","toolTipDescription","setSelectedRows","disableAllSelection","filterType","setFilterType","setFilteredData","isCheckBoxSelectable","resetFilters","enableSearch","notFoundMessage","useMemo","column","isFilter","filterColumns","filterBy","isRowsLoading","MobileRow","collapse","setCollapse","_row","_onRowSelected","toolTipTextGetter","placement","_index","renderCell","valueGetter","GridParams","colDef","headerName","Collapse","in","timeout","unmountOnExit","MaskedEmail","maskedEmail","p1","p2","p3","repeat","DataRow","renderRow","toolTipEnabled","isRowSelectable","SelectAllCheckBox","isAllSelected","isRowHaveSelectedItems","indeterminate","_onColumnHeaderClick","MobileSelectAll","onColumnHeaderClick","filteredRows","filterKeys","filtredRowData","currRow","_key","_currRow$_key","_currRow$_key$toStrin","_filterData","assetTypes","_assetType","_row$amcName","_row$amcName$toLowerC","_filteredData$searchK","TableFilters","borderTop","TableContainer","stickyHeader","minWidth","_handleChange","fieldKey","fieldData","_filteredData","Filters","filterKey","filterHeader","_column$renderStaticF","renderStaticFilters","_ele$toString2","_ele$toString","_ele$toString4","_ele$toString3","_index1","useTableWithCollapse","initialSelectionModal","initialFilterType","initialFilterData","resetTable","tableRows","UpdateNominee_dashboard","mohMap","1","2","3","4","5","Columns","size","stopPropagation","groupFilteredData","rowData","uniqueEmailMobileMap","currentKey","mobileEmailFilterReducer","groupedFilterMap","emailMobileKeys","uniqueKeys","setRowData","filterState","filterDispatch","useReducer","brokercode","nomineeFunds","_nomineeFunds","otherFunds","_fund$nominees","_prev$otherFunds","_prev$nomineeFunds","trace","callApi","_rederCollapse","_","gap","emailStyle","change_email_list_dashboard","sendOtp","uniqueMobileNo","setUniqueMobileNo","selectMobile","setSelectMobile","setFilterdData","change_email_list_columns","_checkresponse","userResponse","request_type","checkresponse","foliosToUpdate","newData","newEmail","req_id","mobileNumbers","fetchPortfolio","MobileRelationship","mobileFormik","newMobile_dashboard","newMobile_common","existingMobile","newMobile_initialValues","newMobile_validationSchema","setFieldError","ChangeMobile_dashboard","uniqueEmailId","setUniqueEmailId","selectEmail","setSelectEmail","ChangeMobile_columns","_props$investors","emailIds","UploadFile_tsx_dashboard","AndriodUploadOptions","_getFileType","fileType","_window$device","documentFormat","setImageName","onImageSelected","initSelected","imageName","selectedFile","setSelectedFile","setIsSelected","anchorEl","setAnchorEl","_window","_navigator","navigator","getBase64","resolve","reject","reader","onerror","handleClose","onSuccess","resolveLocalFileSystemURL","onFileReadSuccess","onFailToRead","fileEntry","fileSize","onFail","fileOptions","device","platform","persist","onSelect","option","camera","getPicture","quality","destinationType","Camera","DestinationType","FILE_URI","sourceType","PictureSourceType","PHOTOLIBRARY","encodingType","EncodingType","JPEG","mediaType","MediaType","PICTURE","allowEdit","correctOrientation","browseFiles","Box","sx","ml","_window$device2","currentTarget","Popover","anchorOrigin","horizontal","transformOrigin","ListItem","UploadDocumentScreen_dashboard","UploadDocumentScreen","backLink","showMobile","linkText","nextLink","emailInfo","mobileInfo","hrefLink","mx","bgcolor","change_email_document_dashboard","_props$location3$stat","_props$location4","_props$location4$stat","_props$location4$stat2","Document","setDocument","content","imageInfo","_props$location2$stat","REACT_APP_S3_CLOUD_URL","change_mobile_document_dashboard","getFolioSipCancellation","getCancellationReason","Foliodata","ShowMore","pause_flag","pause_err_msg","notAllowedPopUp","cancelDetails","visible","txntype","pause","ShowDetails","NEW_NCT_TYPES","digital","isPhygitalPath","NctTypes","nomineeFlag","NctTypeMap","phygital","NctTypeCard","commonStyle","getEnach","EnachOpen","EnachRef","eNachAMCOpen","Contact","arncode","en_ihno","onEmailBlur","OpenEnachAMCClose","Switch","Route","exact","NfoPhysicalMode","NewPurchase","NewPurchaseConfirm","AdditionalPurchase","Redemption","switchCmponent","Swp","Stp","SipCancellation","Nominee","ChangeEmail","ChangeMobileNew","ChangeEmailList","changeEmailDocument","changeMobileDocument","ENACH","_this$props$kycData","TransactionMode","physical","INVESTORS_URL","getUrlByName","borderLeft","TransactionTypeCards","navigationProps","EKYCMail","getDomains","ipv","messageAlert","InvMobile","InvFund","DistUserId","Url","addedParms","APKVer","kycType","emailPlatform","emailSite","emailUsername","checkKycStatus","disable","InvestorRouter","Investors","InvestorDetails","EKYC","TransactionType","NFOAndNewPurchaseDigital","/investors","/investors/details","/investors/new-investor/ekyc","/investors/new-investor/Cobranding-Collaterals","/investors/new-investor","/investors/transction-types","/investors/nfo-new-purchase","/investors/nfo-new-purchase/physical","/investors/nfo-new-purchase/physical/transact","/investors/additional-purchase/physical","/investors/additional-purchase/physical/transact","/investors/redemption/physical","/investors/redemption/physical/transact","/investors/switch/physical","/investors/switch/physical/transact","/investors/sip/physical","/investors/sip/physical/transact","/investors/nfo-new-purchase/digital","/investors/nfo-new-purchase/digital/transact","/investors/nfo-new-purchase/digital/transact/confirm","/investors/additional-purchase","/investors/additional-purchase/transaction-modes","/investors/additional-purchase/digital","/investors/additional-purchase/digital/transact","/investors/additional-purchase/digital/transact/confirm","/investors/redemption","/investors/redemption/transaction-modes","/investors/redemption/digital","/investors/redemption/digital/transact","/investors/redemption/digital/transact/confirm","/investors/switch","/investors/switch/transaction-modes","/investors/switch/digital","/investors/switch/digital/transact","/investors/switch/digital/transact/confirm","/investors/sip","/investors/sip/transaction-modes","/investors/sip/digital","/investors/sip/digital/transact","/investors/sip/digital/transact/confirm","/investors/swp","/investors/swp/transaction-modes","/investors/swp/digital","/investors/swp/digital/transact","/investors/swp/digital/transact/confirm","/investors/stp","/investors/stp/transaction-modes","/investors/stp/digital","/investors/stp/digital/transact","/investors/stp/digital/transact/confirm","/investors/sip-cancellation","/investors/sip-cancellation/transaction-modes","/investors/sip-cancellation/digital","/investors/sip-cancellation/digital/transact","/investors/sip-cancellation/digital/transact/confirm","/investors/nct-type","/investors/nct-type/transaction-modes","/investors/nct-type/digital","/investors/nct-type/digital/transact","/investors/nct-type/digital/transact/confirm","/investors/eNACH","/investors/eNACH/transaction-modes","/investors/eNACH/digital","/investors/eNACH/digital/transact","/investors/eNACH/digital/transact/confirm","InvestorComponent","_location$state","MAILBACK_URL","GetDistMailbackRequest","report","reportType","reformtStDt","changeEndDt","setHours","d3","toDateValue","fromDateValue","reports","refrenceNumber","passwordField","Userid","ReportNumber","ZipPwd","reportField","reportTypeField","fromDateField","toDateField","selfPassword","KDM_Repdesc","KDM_Repcode","handleChangeReportTypes","handleChangeReports","handleChangePassword","gotoblur","CustomLoading","Loader","InvdDistFlag","openPerformanceModal","reverseDate","td_trdt","td_fund","td_ihno","SchemeDesc","td_scheme","TrDate","TrackData","transactionList","isKyc","getTransactions","closePerformanceModal","SingleAmcheader","gotoTrack","TransactionSubContainer","TrtypeDesc","td_amt","td_trno","bankname","td_acno","td_nav","td_units","HistoryRouter","HistoryDetail","HISTORY_URL","/transaction-history","/transaction-history/details","TransactionHistory","loaderDisplay","investorsCount","listLoading","nctTrack","_this$props$investors","mailBackName","NAME","offSet","pre","totalPages","_this$props$investors2","TableHeaders","self","localeCompare","investorsData","textWrap","goToTransactionHistory","goToMailBack","gotoNctTransaction","goToTransaction","previous","NewInvestorSearch","_props$applicantparam","_props$fatcaDetails","_props$nomineDetails","steps","i_dob","i_income","i_nominee","hide","Link","CardComponent","Heading","ReinitiateData","storeFatcaDetails","getCitiesByState","storeAddress","_props$applicantparam3","_props$applicantparam4","_props$applicantparam5","_props$applicantparam6","_props$applicantparam7","_props$applicantparam8","setIsLoading","categoryoccupation","setCategoryOccupation","categoryoccupationprimary","categoryoccupationjoint1","categoryoccupationjoint2","gross_annual_income","setGross_Annual_Income","gross_annual_incomeprimary","gross_annual_incomejoint1","gross_annual_incomejoint2","countriesList","setcountriesList","foreigncountriesList","setforeigncountriesList","countryselected","setcountryselected","countryofbirth","countryofbirthjoint1","nationalityjoint1","countryofbirthjoint2","nationalityjoint2","tax_resident","setTax_resident","i_category","joint1","i_category2","joint2","i_category3","politically_exposed_applicant","setPolitically_Exposed_Applicant","politically_exposed_relative","setPolitically_Exposed_Relative","tax_resident_option","settax_resident_option","foreign_tax_id_no","setforeign_tax_id_no","setOpenModal","panverification","setPanverification","firstRender","getLists","prefillFormValues","i_Occpn","FCountryofBirth","FNationality","i_invpin","FPEP","FPREP","FTaxResident","FForeignTaxType","FForeignTaxId","i_SOccpn","i_Sincome","SCountryofBirth","SNationality","i_invpin2","SForeignTaxType","STaxResident","SForeignTaxId","SPEP","SPREP","i_TOccpn","i_Tincome","TCountryofBirth","TNationality","i_invpin3","TForeignTaxType","TTaxResident","TForeignTaxId","TPEP","TPREP","i_pangno2","i_pangno3","checkReduxStore","Countries","country_name","ForeignCountrires","RemomovingIndia","typeofinvestor","_convertingcountry$","GrossAnnualIncome","app_occ","add1","add2","add3","countryvalue","convertingcountry","restOfGreeting","Address","handleRadioButton","i_fname","fatcawidth","i_jholder1","items","i_jholder2","_props$applicantparam2","i_genMOH","Termsandconditions","submitLumpsumDetails","storeLumpsumDetails","formValues","setFormValues","preValues","newValues","Category","Scheme Plan","Scheme Option","Combo","comboDisclaimer","comboLabel","Sub Broker Code","planValue","optionValue","schemeValue","EUIN","EUINNO","CategoryList","dialog","setDialog","fetchSchemeList","_props$lumpsum$Catego","_formValues$Category","plntype","schemetype","Scheme_Plan","Scheme_Desc","PlanDesc","fm_optiondesc","minAmt","_schemeList$find","_props$lumpsum","_props$lumpsum$Scheme","fm_subcategory","fetchCategoryList","abm_name","fetchEuinList","fetchFromstore","_props$lumpsum2","_Scheme$value","handleBlur","isMandatory","listName","section","commonValues","schemedetails","i_scheme","schemevalue","i_plan","i_EUINno","i_amount","i_disitributorid","ct","paramsLumpsum","i_trtype","i_appldt","i_chqdt","i_bankadd2","i_bankadd3","Invdistflag","CustomFund","card","details","cover","controls","playIcon","Card","transition","CardContent","submitSipDetails","storeSchemeParams","getNav","storeSipDetails","SWP Category","SWP Scheme","SIP Day","SIP Period From","SWP Period To","SWP Period From","SIP Period To","No of Installments","MinimumAmount","MinimumLumpsumAmount","MinimumWithdrawalAmount","Flexi Max Installment Amount","Withdrawal Amount","SIP Tenure","Lumpsum Amount","MinimumInstallements","swpSchemeList","sipDateList","frequencyList","tenureList","swpPlanValue","swpOptionValue","swpSchemeValue","multiple","isFlexiOrFreedomCanBeEnabled","showFlexi","showFreedom","umrnList","Mode of Registration","modeList","InputFields","SIP_Date","setFrequencyList","euinParams","euinResponse","getSipDates","isMonthly","isQuarterly","getFreedomSIPTenures","fetchUMRNList","tenureMuliplier","sipDateParams","_res","_res2","sipDateResponse","End_dt","Start_dt","Swp_End_dt","Swp_Start_dt","getMinInstallment","frequencyParams","schemeParams","schemeResponse","AMC","Pay_Mode_Val","fetchModelist","_props$sip$Category","_props$sip$SIPDay","installment","_formValues$UMRN","_formValues$UMRN$valu","_formValues$UMRN2","dateFromTimestamp","Month","Day","timestamp","dailyEndDate","_formValues$Frequency","_formValues$UMRN6","_formValues$UMRN7","margingBottom","_formValues$UMRN$valu2","_formValues$UMRN$valu3","_formValues$UMRN4","noof","flexiKeys","freedomKeys","BothFlexiandFreedomKeys","Minschemewisewithdrawalamount","finalKeys","final_keys_for_validation","_formValues$UMRN3","_formValues$UMRN3$val","_formValues$UMRN5","_formValues$UMRN5$val","_formValues$transacti","sipday","sip_amt","i_noofinst","i_sipstartdt","i_sipenddt","i_paymode","i_umrno","paramsSip","i_sipflag","Freedom_category","Freedom_scheme_name","Freedom_tenure","Freedom_amount","storeSchemeDetailsClick","storeSchemeDetailsScheme","setScheme","LumpsumSip","defaultChoiceOptions","ChoiceField","o","AutoField","investorType","commonProps","inputField","optionsList","SelectDisplayProps","emptyLabel","divStyle","isRequired","storePan","checkPAN","requestBody","PanName","PanDOB","JH1_PAN","jointHolder1Pan","JH1_PanDOB","jointHolder1PanDOB","JH1_PanName","jointHolder1PanName","JH2_PAN","jointHolder2Pan","JH2_PanDOB","jointHolder2PanDOB","JH2_PanName","jointHolder2PanName","G_Pan","G_PanName","guardianPanName","G_PanDOB","guardianPanDOB","TrxnType","invStatus","JH1_invStatus","JH2_invStatus","panAadhaaarResponse","investortype","setInvestorType","disabledFields","setDisabledFields","validateSecondPan","secondPan","firstPan","pan_1","thirdPan","pan_3","i_nompan1","i_nompan2","i_nompan3","i_nomguardianpan1","i_nomguardianpan2","i_nomguardianpan3","getElementById","validateThirdPan","pan_2","applicantSchema","emailFamily","mobileFamily","guardianname","guardianpan","guardiandob","guardianemailFamily","guardianemail","guardianmobileFamily","guardianmobile","guardianRelationship","initialFormValues","kycCompleted_1","allFieldsMax","showJointHolders","applicantFields","panNotFilled","minorFields","validateField","_props$nomineDetails2","_props$nomineDetails3","_props$nomineDetails4","_props$nomineDetails5","_props$nomineDetails6","isMinorInvestor","currentDate","minAgeDate","isValid","forDifferentMessage1","forDifferentMessage2","_props$nomineDetails7","category_1","enteredDateObj","guardianpan_1","name_1","guardianname_1","displayModal1","setDisplayModal1","displayModal2","setDisplayModal2","previouslyCheckedPAN","setPreviouslyCheckedPAN","applicantFieldList","allFields","gotoEkyc","kycDetails","name1","app_cat","validDate","minYear","dateValue","substr","kycName","_response$DtData","_response$DtData$","_response$DtData2","_response$DtData2$","_response$DtData3","_response$DtData3$","kycFormValues","dob_1","email_1","gender_1","mobile_1","status_1","_response$DtData4","_response$DtData4$","_response$DtData5","_response$DtData5$","country_code","i_email","i_email3","i_invgender","i_mobileno","JHfEmailFlag1","JHfMobileFlag1","JHfEmailFlag2","JHfMobileFlag2","i_invgender2","i_jh1dob","JHcountry_code1","JHcountry_code2","i_mobileno2","i_email2","i_invgender3","i_jh2dob","i_mobileno3","i_shnriadd1","i_shnriadd2","i_shnricity","i_shnristate","i_shnricountry","i_jhnriadd1","i_jhnriadd2","i_jhnricity","i_jhnristate","i_jhnricountry","i_nriadd1","i_nriadd2","i_nricity","i_nristate","i_nricountry","i_guardianname","i_guardianpan","i_guadianmobile","i_guardianemail","i_guardianEmailFlag","i_guardianMobileFlag","i_guardianrelationship","i_guardiandob","countrycode_1","emailFamily_1","mobileFamily_1","name_2","dob_2","gender_2","email_2","mobile_2","countrycode_2","category_2","emailFamily_2","mobileFamily_2","name_3","dob_3","gender_3","email_3","mobile_3","countrycode_3","category_3","emailFamily_3","mobileFamily_3","address1_1","address2_1","city_1","state_1","country_1","guardiandob_1","guardianmobile_1","guardianemail_1","guardianemailFamily_1","guardianmobileFamily_1","guardianRelationship_1","originalDate","field_key","countryCode","countryCodeKey","blur","getKycStatus","catch","_response$DtData6","_response$DtData6$","_kycDetails$Dtinforma","_response$DtData7","_response$DtData7$","app_pangno","isMinor","newFormValues","jointHoldersFields","num","removeJointHolderDetails","nextEmpty","getInvStatus","getStatus","fund_1","Transaction_allow","PASFlag","PASRemarks","PANFlag","PANRemarks","PANNameMatch","JH1_panFlag","JH1_panRemarks","JH2_panFlag","JH2_panRemarks","G_panFlag","G_panRemarks","JH1_PANNameMatch","JH2_PANNameMatch","G_PANNameMatch","PanDOBMatch","JH1_PanDOBMatch","JH2_PanDOBMatch","G_PanDOBMatch","validateResponse","ApplicantDetails","i_Ckyc1","guard_dob","storeNomineeDetails","storeNonomineeDetails","getNomineeDetails","first_nominee_details","otherrelationship","percentage","gaurdianrelationship","second_nominee_details","third_nominee_details","NomineeListShow","setIsNomineeListShow","nominate_yes_or_no","setnominate_yes_or_no","nominees_selected","setnomineeSelected","nominee_selected1","nominee_selected2","nominee_selected3","nomineeList","setnomineeList","relationshipList","setrelationshipList","same_as_first_appicant_address","setsame_as_first_appicant_address","nom1","nom2","nom3","nominee_dateofbirth","setnominee_dateofbirth","first_nominee_dateofbirth","second_nominee_dateofbirth","third_nominee_dateofbirth","nominee_list","setnominee_list","first_nomineeDetails","setfirst_nomineeDetails","second_nomineeDetails","setsecond_nomineeDetails","third_nomineeDetails","setthird_nomineeDetails","handleAddress","nom","nomineelist","NomineeDetails","i_nominee2","i_nominee3","i_NomRelation","i_NomRelation2","i_NomRelation3","i_NomDOB","i_NomDOB2","i_NomDOB3","nom1gender","nom2gender","nom3gender","i_Nominee1percentage","i_Nominee2percentage","i_Nominee3percentage","nom1email","nom2email","nom3email","i_nomadd1","i_nomadd21","i_nomadd31","i_nomcountry","i_nom2country","i_nom3country","i_nomstate","i_nomstate2","i_nomstate3","i_nomcity","i_nomcity2","i_nomcity3","i_nompin","i_nompin2","i_nompin3","i_nomguardianname1","i_nomguardianname3","i_nomguardianname2","i_namguardianrelationship1","i_namguardianrelationship3","i_namguardianrelationship2","i_sameaddress1","i_sameaddress2","i_sameaddress3","new_nominee_dateofbirth","nomineevalues","Nom1","relationShipResponse","relationShipList","rm_relation","handleDateofBirth","dobarr","today","datevalue","min18yersletnew","oneday","handleNomineeList","RemovingTheNomineeMember","nomineedetails","Nom1_Dob","Nom1Relation","Nom1_Gender","Nom1_Add1","Nom1_Add2","Nom1_Add3","Nom1_Country","Nom1_state","Nom1_pin","Nom1_City","Nom2_Dob","Nom3_Dob","handlePanChange","setDetails","primaryPans","investorGuardianPan","jointHolderPans","nomnieePans","gaurdianPans","handleChangePan","handleName","handleNameChange","primaryName","investorGuardianName","nomnieeNames","handleState","handleCity","handlePercentage","handlePincode","gridColumn","storeInvestmentDetails","storeBankClick","storeInvestmentParams","validatePennyDrop","getBankList","NewinvestorBankDetails","bankAccountTypes","getAccountTypes","bankselected","setbankseleected","bankList","setBankList","IFSC","Bank Name","Branch Address","Branch City","Branch Pincode","Account Type","Account Number","Confirm Account Number","AccountTypes","BanksListShow","DisablingBankDetails","BankAcno","BankName","bankadd1","BankAdd1","bankadd2","BankAdd2","bankadd3","BankAdd3","ifsccode","BankCity","BankPIN","BnkAcType","SchemeType","typeList","Account_Type","BankPin","MicrNo","pattern","confirmAccountNumber","isIFSCProvided","isAccountTypeProvided","invdetails","i_ifsccode","i_bnkacname","i_bnkadd1","i_bnkadd3","i_bnkadd2","i_bnkcity","i_bnkpin","i_bnkacctype","i_bnkacno","setType","loader","confirmationMessage","gridTemplateColumns","TrType","activestep","VerticalStepper","FatcaDetails","BankDetails","SchemeDetails","Confirmation","SuccessScreen_dashboard","SuccessScreen","infospan2","handleClick","backNavigation","showTrackStatusButton","update_nominee_success_dashboard","UpdateNomineeSuccess","infospan1","TransactionRouter","NewInvestorRegistration","Transactions","SelectedFolios","/new-transaction","/new-transaction/new-investor/ekyc","/new-transaction/new-investor","/new-transaction/nct-types","/new-transaction/transction-types","/new-transaction/nfo-new-purchase","/new-transaction/nfo-new-purchase/physical","/new-transaction/nfo-new-purchase/physical/transact","/new-transaction/additional-purchase/physical","/new-transaction/additional-purchase/physical/transact","/new-transaction/redemption/physical","/new-transaction/redemption/physical/transact","/new-transaction/switch/physical","/new-transaction/switch/physical/transact","/new-transaction/sip/physical","/new-transaction/sip/physical/transact","/new-transaction/nfo-new-purchase/digital","/new-transaction/nfo-new-purchase/digital/transact","/new-transaction/nfo-new-purchase/digital/transact/confirm","/new-transaction/additional-purchase","/new-transaction/additional-purchase/transaction-modes","/new-transaction/additional-purchase/digital","/new-transaction/additional-purchase/digital/transact","/new-transaction/additional-purchase/digital/transact/confirm","/new-transaction/redemption","/new-transaction/redemption/transaction-modes","/new-transaction/redemption/digital","/new-transaction/redemption/digital/transact","/new-transaction/redemption/digital/transact/confirm","/new-transaction/switch","/new-transaction/switch/transaction-modes","/new-transaction/switch/digital","/new-transaction/switch/digital/transact","/new-transaction/switch/digital/transact/confirm","/new-transaction/sip","/new-transaction/sip/transaction-modes","/new-transaction/sip/digital","/new-transaction/sip/digital/transact","/new-transaction/sip/digital/transact/confirm","/new-transaction/swp","/new-transaction/swp/transaction-modes","/new-transaction/swp/digital","/new-transaction/swp/digital/transact","/new-transaction/swp/digital/transact/confirm","/new-transaction/stp","/new-transaction/stp/transaction-modes","/new-transaction/stp/digital","/new-transaction/stp/digital/transact","/new-transaction/stp/digital/transact/confirm","/new-transaction/sip-cancellation","/new-transaction/sip-cancellation/transaction-modes","/new-transaction/sip-cancellation/digital","/new-transaction/sip-cancellation/digital/transact","/new-transaction/sip-cancellation/digital/transact/confirm","/new-transaction/nct-type","/new-transaction/nct-type/transaction-modes","/new-transaction/eNACH","/new-transaction/eNACH/transaction-modes","/new-transaction/eNACH/digital","/new-transaction/eNACH/digital/transact","/new-transaction/eNACH/digital/transact/confirm","/new-transaction/nct-type/digital","/new-transaction/nct-type/phygital","/new-transaction/nct-type/digital/transact","/new-transaction/nct-type/digital/transact/confirm","/new-transaction/nct-type/digital/change-email","/new-transaction/nct-type/digital/updateNominee","/new-transaction/nct-type/phygital/change-email","/new-transaction/nct-type/update-ind-nominee","/new-transaction/nct-type/success","/new-transaction/nct-type/digital/change-mobile","/new-transaction/nct-type/phygital/change-mobile","/new-transaction/nct-type/digital/change-email-list","/new-transaction/nct-type/digital/change-mobile-list","/new-transaction/nct-type/phygital/change-mobile-document","newPurchaseForm_family_description_codes","minCost","comboScheme","minAmountField","confirmationResponse","firstErroredKey","revCD","params1","types1","params2","emailfamilyField","mobilefamilyField","changeScheme","NAV_URL","getNavData","removeNavData","changeTime","NavData","RequestTypes","nominee_update","email_update","mobile_update","dataEntry_update","folio_consolidation","idcw_update","ifsc_update","fatca_update","update_Minor_To_Major","form15GH_update","multibank_update","update_bank_details","finalTransactions","flatMap","_transaction$amcStatu","req_type","item_req_id","amcStatus","NctRouter","NctDetails","NCTHISTORY_URL","/nct-transaction","/nct-transaction/details","Social","getDistPostQuery","comments","AcNo","AppNo","ChqNo","Comments","EmailID","OS","QrySub","Selqry","TrnDate","convenience","experience","handleChangeSupportQueries","multiline","rowsMax","handleChangeCommentsChange","SubmitList","fromYear","toYear","BlueLine","PasswordModal","UserId","City","MobileNo","From_Year","To_Year","StarRating","Rating","iconFilled","Icon","iconHovered","iconNormal","numbers","loadCSS","handleChangeComments","displaySimpleCard","simpletwo","nameArray","getDashboardData","getDashboardDataAum","PosterOpen","getAumData","getFrequentMailBackRequest","Tab","DateVal","sipParams","_sipSummaryData$Table","_sipSummaryData$Table2","AmcAumList","Table4","SipAumList","SipInvestmentsCount","AUMDetails","AUMPieData","closePoster","DisplayCards","maximumFractionDigits","minimumFractionDigits","dataDiffer","DisplaySimpleCards","ExpiredTransactions","goToRoute","AuthorisedTransaction","AuthorisationPending","SIPTransactions","FMPTransactions","handleChangeTab","SubReports","handleChangeSubReports","SIP_expired_next_month","goToSIPRoute","SIP_Closed_this_month","AmcAum","sipSummary","Type","totalArray","findItem","fund_code","New_Investors","Active_Investors","Inactive_Investors","SubAUMClass","Previous6thMon","Previous6thMonDt","Previous5thMon","Previous5thMonDt","Previous4thMon","Previous4thMonDt","BeforelastMonth","BeforelastMonthDt","BeforeMonth","BeforeMonthDt","PresentMon","PresentDt","TransactionSummary","clipboard","writeText","handleReInitiate","showCopyButton","copyTransactionLink","FileCopyOutlined","getTransactionData","transflag","Arn","onChangeActive","ListOfInvestors","Table6","SipData","showButton","handlescrollButtionVisibility","scrollY","addEventListener","removeEventListener","getData","totalAUM","accumulator","currentObject","AUM","paddingTop","handleScrollToTop","pangir","wordWrap","InvestorTableCard","SipSummaryMainTabs","filteredTableData","_ele$invname","_this$state$searchTex","_this$state$searchTex2","_ele$email","_this$state$searchTex3","searchText","filtered","Table9","Table10","Table8","setTableData","Investmentsbutton","dataToUse","countMap","currentInvestor","existingInvestor","changeDateOn","filterOptions","checkParam","NfoFundCard","fund_desc","LocationScheme","gotoTransact","scheme_desc","closingDate","closing_Date","OpeningDate","opening_date","openShare","copy","maxHeight","wordBreak","copyCodeToClipboard","OpenShareOptions","FacebookShareButton","quote","FacebookIcon","closeShare","WhatsappShareButton","WhatsappIcon","EmailShareButton","subject","EmailIcon","TwitterShareButton","TwitterIcon","NfoSchemesSubmission","nfoLink","FundSchemes","euinflag","subarn","nfo_link","filteredSchemes","fallbackFields","altKeys","amountKeys","altKeyMap","sip_freq","firstFourFields","Fdesc","firstFiveFields","isDoubleCol","newPurchaseFields","sipFields","sip_strtdate","sip_enddt","i_Fname","sip_mode","redemptionFields","swpFields","noWithdrawals","swpDay","switchFields","switchOutScheme","subARNCode","paymentUnits","stpFields","stpOption","noTransfers","trTypes","localScope","ttype","fieldObj","transactionTypes","New purchase","Additional Purchase","transactionTypeList","showPurchaseConfirmationReinitiate","reInitiateTransaction","modal_open","locState","standalone","saving","ReferenceNO","dtData","conData","fetchConfirmationData","reInitiateProps","txn","confirmationDataNotFetched","transactionSchema","td_trtype","getTransactionSchema","schemaFields","transactionTypeDesc","transactionFields","rawFields","getFieldValue","numRows","field1","field2","Close","CircularProgress","r","confirmReinitiation","active_columns","pending_columns","fmp_columns","getSipvalues","pending","Tran_flag","sipvalues","sipvalue","currentsips","monthlyI","USM","USMA","sip_value","current_sips","monthly_installments","upcoming_sips","upcoming_sip_maturity_amount","DisplaySIPCards","currencyformat","Active","PendingAndRejected","folio_number","Number_of_Installments","Start_Date_of_SIP","End_Date_of_SIP","Mode_of_Registration","URN_UMRNumber","InvestorTableCardActive","Rejection_Reason","Maturity_Date","fmp","getFMPdata","fmpvalues","totalFMPs","totalvalueofFMPS","Total_fmp","Total_value","MaturityDate","Nav","isInteger","DashboardRouter","TabContainer","ListOfInvestorsTabs","SipSummaryTabContainer","Dashboard","NfoFunds","NfoTransact","ReinitiateConfirm","SipTransactions","FmpTransactions","DASHBOARD_URL","/dashboard","/dashboard/transaction-summary","/dashboard/investorType","/dashboard/SipSummaryTypes","/dashboard/nfo-funds","/dashboard/nfo-funds/nfo-transact","/dashboard/sip-transactions","/dashboard/fmp-transactions","/dashboard/re-initiate-transaction","DashboardComponent","MailBackInvestor","RequestModes","SubmitRequest","ASON","BETWEEN","SINGLESOA","MULTISOA","SUMMARY","DETAILED","CURRENTFINANCIALYEAR","PREVIOUSFINANCIALYEAR","SPECIFICPERIOD","MailBackComponent","MailbackRouter","MailBackBreadCrumb","getDistFoliobyPan","getMailbackSoaStatus","downloadInvestorProfile","DateON","ConfirmSelfPassword","selectedNames","selectedSchemesNames","soaValue","newSchemes","selfExtract","confirmSelfExtract","asDate","soaType","folioCheck","schemeCheck","isDownload","Zippwd","RepType","stdt","EndDt","endDateValue","folioFormat","gettingSchemeCodes","agentname","Fromdate","Todate","Fdata","schemesResult","formattedResults","desc","handleMultiSelect","MaterialInput","renderValue","handlechange","indexOf","ListItemText","handleschemenamechange","changeSoaValue","handleChangeSelfPassword","selfPasswordField","handleChangeConfirmSelfPassword","ConfirmSelfPasswordField","getAccountStatement","changeStDt","reformtEndDt","d4","d5","DetailedData","AsDate","asDateValue","Soapwd","ToDate","Brokermail","Soaflag","EmailId","LoginFlag","StmtFlag","Broker","changesummaryData","ChangeDetailedData","handleChangeEmail","getElssStatment","fromdt","distCode","Password","distUid","panvadilation","getNetworthPortfolio","Mode","mylp","emailid","pswd","pagetype","InvestorSelection","strict","MailBackSoa","Cas","ELSS","CAN","CGS","GAS","Networth","MyEarnings_URL","getFundWiseEarnings","getEarnings","total","earning","EarningsBlock","CobrandingCollaterals_URL","main_url","Settings","TransactionComponent","MailBack","NctTransactionHistory","CobrandingCollaterals","MyEarnings","Support","FeedBack","Redirect","Footer","EKYC_URL","toolbar","appBar","drawer","drawerPaper","appbaricons","appabarlastlogin","appabarring","appabarlogout","lastlogindiv","lastloginmain","lastloginsub","profile","profileimage","profileRole","borderBottomRightRadius","profileRoletext","profileRolesubtext","profileSettings","profileSettingsicon","profileName","profilenametext","profilenameMaintext","profilediv","profilenamesubtext","combined","listImage","listTextActive","listText","responsiveDrawer","CssBaseline","AppBar","Toolbar","openResponsiveDrawer","logOut","Divider","ExpandLess","ExpandMore","disablePadding","Drawer","AppRouter","Appbar","DemoCarousel","Carousel","images","Item","rel","userLogin","nonce","usernameField","handleEmpanel","arnCodeField","confirmPasswordField","isPasswordEqual","userIdField","autoFocus","CommonTemplate","textOne","textTwo","registration","reGenerateOtp","enteredOtp","responseNonce","CommonOtp","submitOtp","regenerteOtp","keyCode","charCode","keyDown","forgotUserId","sendUserId","Emailid","validateOtp","otpid","diplay","strongRegex","i_reqby","preLoginRoutes","RefreshToken","route","provider","showNotification","Routes","Router","Login","OTP","ForgotUserId","ForgotPassword","ResetPassword","Register","ProtectedRoute","Home","createMuiTheme","overrides","MuiMenuItem","MuiMenu","App","Provider","ThemeProvider","PersistGate","hostname","ReactDOM","serviceWorker","ready","unregister"],"mappings":"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","file":"static/js/main.ec9f1e4a.chunk.js","sourcesContent":["export const USER_LOGIN = \"USER_LOGIN\";\nexport const USER_LOGIN_SUCCESS = \"USER_LOGIN_SUCCESS\";\nexport const USER_LOGIN_FAILED = \"USER_LOGIN_FAILED\";\nexport const USER_LOGOUT = \"USER_LOGOUT\";\nexport const LOCAL_AUTHENTICATION_SUCCESS = \"LOCAL_AUTHENTICATION_SUCCESS\";\nexport const SKIP_LOCAL_AUTHENTICATION_SUCCESS = \"SKIP_LOCAL_AUTHENTICATION_SUCCESS\";\nexport const LOCAL_AUTH_USERNAME_SUCCESS = \"LOCAL_AUTH_USERNAME_SUCCESS\";\nexport const LOCAL_AUTH_PASSWORD_SUCCESS = \"LOCAL_AUTH_PASSWORD_SUCCESS\";\nexport const FIRST_TIME_INSTALLATION_SUCCESS = \"FIRST_TIME_INSTALLATION_SUCCESS\";\nexport const AUTO_SELECT = \"AUTO_SELECT\";\nexport const REMEMBER_ME = \"REMEMBER_ME\";\nexport const USER_PAN = \"USER_PAN\";\nexport const USER_LOGIN_REFRESH_SUCCESS = \"USER_LOGIN_REFRESH_SUCCESS\";\nexport const POSTER_OPEN = \"POSTER_OPEN\";","export const GET_DASHBOARD_DATA = \"GET_DASHBOARD_DATA\";\nexport const GET_DASHBOARD_DATA_SUCCESS = \"GET_DASHBOARD_DATA_SUCCESS\";\nexport const GET_DASHBOARD_DATA_FAILED = \"GET_DASHBOARD_DATA_FAILED\";\nexport const GET_TRANSACTION_DATA = \"GET_TRANSACTION_DATA\";\nexport const GET_TRANSACTION_DATA_SUCCESS = \"GET_TRANSACTION_DATA_SUCCESS\";\nexport const GET_TRANSACTION_DATA_FAILED = \"GET_TRANSACTION_DATA_FAILED\";\nexport const GET_AUM_DATA = \"GET_AUM_DATA\";\nexport const GET_AUM_DATA_SUCCESS = \"GET_AUM_DATA_SUCCESS\";\nexport const GET_AUM_DATA_FAILED = \"GET_AUM_DATA_FAILED\";\nexport const GET_FREQUENT_MAIL_BACK_REQUEST = \"GET_FREQUENT_MAIL_BACK_REQUEST\";\nexport const GET_FREQUENT_MAIL_BACK_REQUEST_SUCCESS = \"GET_FREQUENT_MAIL_BACK_REQUEST_SUCCESS\";\nexport const GET_FREQUENT_MAIL_BACK_REQUEST_FAILED = \"GET_FREQUENT_MAIL_BACK_REQUEST_SUCCESS\";\nexport const GET_DASHBOARD_AUM_DATA = \"GET_DASHBOARD_AUM_DATA\";\nexport const GET_DASHBOARD_AUM_DATA_SUCCESS = \"GET_DASHBOARD_AUM_DATA_SUCCESS\";\nexport const GET_DASHBOARD_AUM_DATA_FAILED = \"GET_DASHBOARD_AUM_DATA_FAILED\";\nexport const GET_DOMAIN = \"GET_DOMAIN\";\nexport const GET_DOMAIN_SUCCESS = \"GET_DOMAIN_SUCESS\";\nexport const GET_DOMAIN_FAILED = \"GET_DOMAIN_FAILED\";\nexport const GET_DASHBOARD_NEWINVESTOR_DATA = \"GET_DASHBOARD_NEWINVESTOR_DATA\";\nexport const GET_DASHBOARD_NEWINVESTOR_DATA_SUCCESS = \"GET_DASHBOARD_NEWINVESTOR_DATA_SUCCESS\";\nexport const GET_DASHBOARD_NEWINVESTOR_DATA_FAILED = \"GET_DASHBOARD_NEWINVESTOR_DATA_FAILED\";","export const GET_INVESTORS_LIST = \"GET_INVESTORS_LIST\";\nexport const GET_INVESTORS_LIST_SUCCESS = \"GET_INVESTORS_LIST_SUCCESS\";\nexport const GET_INVESTORS_LIST_FAILED = \"GET_INVESTORS_LIST_FAILED\";\nexport const GET_INVESTOR_DETAILS = \"GET_INVESTOR_DETAIL\";\nexport const GET_INVESTOR_DETAILS_SUCCESS = \"GET_INVESTOR_DETAIL_SUCCESS\";\nexport const GET_INVESTOR_DETAILS_FAILED = \"GET_INVESTOR_DETAIL_FAILED\";\nexport const FAVOURITE_INVESTOR = \"FAVOURITE_INVESTOR\";\nexport const FAVOURITE_INVESTOR_SUCCESS = \"FAVOURITE_INVESTOR_SUCCESS\";\nexport const FAVOURITE_INVESTOR_FAILED = \"FAVOURITE_INVESTOR_FAILED\";\nexport const SEARCH_INVESTORS = \"SEARCH_INVESTORS\";\nexport const STORE_CURRENTPAGE = \"STORE_CURRENTPAGE\";\nexport const SEARCH_INVESTORS_SUCCESS = \"SEARCH_INVESTORS_SUCCESS\";\nexport const SEARCH_INVESTORS_FAILED = \"SEARCH_INVESTORS_FAILED\";\nexport const SEARCH_SCHEME_INVESTORS = \"SEARCH_SCHEME_INVESTORS\";\nexport const SEARCH_SCHEME_INVESTORS_SUCCESS = \"SEARCH_SCHEME_INVESTORS_SUCCESS\";\nexport const SEARCH_SCHEME_INVESTORS_FAILED = \"SEARCH_SCHEME_INVESTORS_FAILED\";\nexport const GET_FUNDS_LIST = \"GET_FUNDS_LIST\";\nexport const GET_FUNDS_LIST_SUCCESS = \"GET_FUNDS_LIST_SUCCESS\";\nexport const GET_FUNDS_LIST_FAILED = \"GET_FUNDS_LIST_FAILED\";\nexport const GET_CATEGORY_LIST = \"GET_CATEGORY_LIST\";\nexport const GET_CATEGORY_LIST_SUCCESS = \"GET_CATEGORY_LIST_SUCCESS\";\nexport const GET_CATEGORY_LIST_FAILED = \"GET_CATEGORY_LIST_FAILED\";\nexport const GET_SCHEME_LIST = \"GET_SCHEME_LIST\";\nexport const GET_SCHEME_LIST_SUCCESS = \"GET_SCHEME_LIST_SUCCESS\";\nexport const GET_SCHEME_LIST_FAILED = \"GET_SCHEME_LIST_FAILED\";\nexport const VALIDATE_SUB_BROKER = \"VALIDATE_SUB_BROKER\";\nexport const VALIDATE_SUB_BROKER_SUCCESS = \"VALIDATE_SUB_BROKER_SUCCESS\";\nexport const VALIDATE_SUB_BROKER_FAILED = \"VALIDATE_SUB_BROKER_FAILED\";\nexport const STORE_TYPE = \"STORE_TYPe\";\nexport const GET_UPCOMING_SIP_DETAILS = \"GET_UPCOMING_SIP_DETAILS\";\nexport const GET_UPCOMING_SIP_DETAILS_SUCCESS = \"GET_UPCOMING_SIP_DETAILS_SUCCESS\";\nexport const GET_UPCOMING_SIP_DETAILS_FAILED = \"GET_UPCOMING_SIP_DETAILS_FAILED\";\nexport const GET_FOLIOS_CANCELLATION = \"GET_FOLIOS_CANCELLATION\";\nexport const GET_FOLIOS_CANCELLATION_FAILED = \"GET_FOLIOS_CANCELLATION_FAILED\";\nexport const GET_FOLIOS_CANCELLATION_SUCCESS = \"GET_FOLIOS_CANCELLATION_SUCCESS\";\nexport const SUBMIT_GET_FOLIOS_CANCELLATION = \"SUBMIT_GET_FOLIOS_CANCELLATION\";\nexport const SUBMIT_GET_FOLIOS_CANCELLATION_SUCCESS = \"SUBMIT_GET_FOLIOS_CANCELLATION_SUCCESS\";\nexport const SUBMIT_GET_FOLIOS_CANCELLATION_FAILED = \"SUBMIT_GET_FOLIOS_CANCELLATION_FAILED\";\nexport const SEND_MAIL_KYC = \"SEND_MAIL_KYC\";\nexport const SEND_MAIL_KYC_SUCCESS = \"SEND_MAIL_KYC_SUCCESS\";\nexport const SEND_MAIL_KYC_FAILED = \"SEND_MAIL_KYC_FAILED\";\nexport const PAUSE_SIP_DATES = \"PAUSE_SIP_DATES\";\nexport const PAUSE_SIP_DATES_SUCCESS = \"PAUSE_SIP_DATES_SUCCESS\";\nexport const PAUSE_SIP_DATES_FAILED = \"PAUSE_SIP_DATES_FAILED\";\nexport const PAUSE_END_SIP_DATES = \"PAUSE_END_SIP_DATES\";\nexport const PAUSE_END_SIP_DATES_SUCCESS = \"PAUSE_END_SIP_DATES_SUCCESS\";\nexport const PAUSE_END_SIP_DATES_FAILED = \"PAUSE_END_SIP_DATES_FAILED\";\nexport const PAUSE_SIP_VALIDATOR = \"PAUSE_SIP_VALIDATOR\";\nexport const PAUSE_SIP_VALIDATOR_SUCCESS = \"PAUSE_SIP_VALIDATOR_SUCCESS\";\nexport const PAUSE_SIP_VALIDATOR_FAILED = \"PAUSE_SIP_VALIDATOR_FAILED\";\nexport const FINAL_SIP_PAUSE = \"FINAL_SIP_PAUSE\";\nexport const FINAL_SIP_PAUSE_SUCCESS = \"FINAL_SIP_PAUSE_SUCCESS\";\nexport const FINAL_SIP_PAUSE_FAILED = \"FINAL_SIP_PAUSE_FAILED\";\nexport const REMOVE_SEARCH_INVESTOR_LIST = \"REMOVE_SEARCH_INVESTOR_LIST\";\nexport const SUBMIT_GET_STP_FOLIOS_CANCELLATION = \"SUBMIT_GET_STP_FOLIOS_CANCELLATION\";\nexport const SUBMIT_GET__STP_FOLIOS_CANCELLATION_SUCCESS = \"SUBMIT_GET__STP_FOLIOS_CANCELLATION_SUCCESS\";\nexport const SUBMIT_GET_STP_FOLIOS_CANCELLATION_FAILED = \"SUBMIT_GET_STP_FOLIOS_CANCELLATION_FAILED\";\nexport const STORE_FUND_STATE = \"STORE_FUND_STATE\";\nexport const STORE_KYC_DATA = \"STORE_KYC_DATA\";\nexport const GET_NCT_INVESTORS_LIST = \"GET_NCT_INVESTORS_LIST\";\nexport const GET_NCT_INVESTORS_LIST_SUCCESS = \"GET_NCT_INVESTORS_LIST_SUCCESS\";\nexport const GET_NCT_INVESTORS_LIST_FAILED = \"GET_NCT_INVESTORS_LIST_FAILED\";","export const PURCHASE_DATA = \"PURCHASE_DATA\";\nexport const PURCHASE_DATA_SUCCESS = \"PURCHASE_DATA_SUCCESS\";\nexport const PURCHASE_DATA_FAILED = \"PURCHASE_DATA_FAILED\";\nexport const SHOW_PURCHASE_CONFIRMATION = \"SHOW_PURCHASE_CONFIRMATION\";\nexport const SHOW_PURCHASE_CONFIRMATION_SUCCESS = \"SHOW_PURCHASE_CONFIRMATION_SUCCESS\";\nexport const SHOW_PURCHASE_CONFIRMATION_FAILED = \"SHOW_PURCHASE_CONFIRMATION_FAILED\";\nexport const CONFIRM_PURCHASE = \"CONFIRM_PURCHASE\";\nexport const CONFIRM_PURCHASE_SUCCESS = \"CONFIRM_PURCHASE_SUCCESS\";\nexport const CONFIRM_PURCHASE_FAILED = \"CONFIRM_PURCHASE_FAILED\";\nexport const SET_SIP_DETAILS = \"SET_SIP_DETAILS\";\nexport const SIP_SAVE_DATA = \"SIP_SAVE_DATA\";\nexport const SIP_SAVE_DATA_SUCCESS = \"SIP_SAVE_DATA_SUCCESS\";\nexport const SIP_SAVE_DATA_FAILED = \"SIP_SAVE_DATA_FAILED\";\nexport const SET_SWITCH_DETAILS = \"SET_SWITCH_DETAILS\";\nexport const SWITCH_SAVE_DATA = \"SWITCH_SAVE_DATA\";\nexport const SWITCH_SAVE_DATA_SUCCESS = \"SWITCH_SAVE_DATA_SUCCESS\";\nexport const SWITCH_SAVE_DATA_FAILED = \"SWITCH_SAVE_DATA_FAILED\";\nexport const SET_STP_DETAILS = \"SET_STP_DETAILS\";\nexport const STP_SAVE_DATA = \"STP_SAVE_DATA\";\nexport const STP_SAVE_DATA_SUCCESS = \"STP_SAVE_DATA_SUCCESS\";\nexport const STP_SAVE_DATA_FAILED = \"STP_SAVE_DATA_FAILED\";\nexport const GET_EARNINGS = \"GET_EARNINGS\";\nexport const GET_EARNINGS_SUCCESS = \"GET_EARNINGS_SUCCESS\";\nexport const GET_EARNINGS_FAILED = \"GET_EARNINGS_FAILED\";\nexport const RE_INITIATE_TRANSACTION = \"RE_INITIATE_TRANSACTION\";\nexport const RE_INITIATE_SUCCESS = \"RE_INITIATE_SUCCESS\";\nexport const RE_INITIATE_FAILED = \"RE_INITIATE_FAILED\";\nexport const GET_DASHBOARD_SIP = \"GET_DASHBOARD_SIP\";\nexport const GET_DASHBOARD_SIP_SUCCESS = \"GET_DASHBOARD_SIP_SUCCESS\";\nexport const GET_DASHBOARD_SIP_FAILED = \"GET_DASHBOARD_SIP_FAILED\";\nexport const GET_DASHBOARD_FMP = \"GET_DASHBOARD_FMP\";\nexport const GET_DASHBOARD_FMP_SUCCESS = \"GET_DASHBOARD_FMP_SUCCESS\";\nexport const GET_DASHBOARD_FMP_FAILED = \"GET_DASHBOARD_FMP_FAILED\";\nexport const SAVE_TRANSACTION_DETAILS = \"SAVE_TRANSACTION_DETAILS\";","export const GET_FUNDS_LIST_PAN = \"GET_FUNDS_LIST_PAN\";\nexport const GET_FUNDS_LIST_PAN_SUCCESS = \"GET_FUNDS_LIST_PAN_SUCCESS\";\nexport const GET_FUNDS_LIST_PAN_FAILED = \"GET_FUNDS_LIST_PAN_FAILED\";\nexport const GET_TRANSACTION_HISTORY = \"GET_TRANSACTION_HISTORY\";\nexport const GET_TRANSACTION_HISTORY_SUCCESS = \"GET_TRANSACTION_HISTORY_SUCCESS\";\nexport const GET_TRANSACTION_HISTORY_FAILED = \"GET_TRANSACTION_HISTORY_FAILED\";\nexport const GET_NAV_DATA = \"GET_NAV_DATA\";\nexport const GET_NAV_DATA_SUCCESS = \"GET_NAV_DATA_SUCCESS\";\nexport const GET_NAV_DATA_FAILED = \"GET_NAV_DATA_FAILED\";\nexport const REMOVE_NAV_DATA = \"REMOVE_NAV_DATA\";\nexport const REMOVE_TRANSACTION_HISTORY_DATA = \"REMOVE_TRANSACTION_HISTORY_DATA\";","export * from \"./auth\";\nexport * from \"./dashboard\";\nexport * from \"./investors\";\nexport * from \"./transactions\";\nexport * from \"./history\";\nexport const ALL = \"A\";\nexport const FAVOURITE = \"FAV\";\nexport const RECENT = \"R\";\nexport const YES = \"Y\";\nexport const NO = \"N\";\nexport const PANALL = \"ALL\";\nexport const TRUE = \"T\";\nexport const FALSE = \"F\";\nexport const AUTHORIZATION_PENDING = \"P\";\nexport const AUTHORIZATION_APPROVED = \"A\";\nexport const AUTHORIZATION_EXPIRED = \"E\";\nexport const FMPS_MATURITY = \"FMPS_MATURITY\";\nexport const SIPS = \"SIPS\";\nexport const FMP = \"FMP\";\nexport const PHYSICAL_TRANSACTIONS = \"PHYSICAL_TRANSACTIONS\";\nexport const INVESTMENTS = \"INVESTMENTS\";\nexport const UPCOMING_SIP = \"UPCOMING_SIP\";\nexport const EXISTINGP = \"EXISTINGP\";\nexport const EXISTING = \"EXISTING\";\nexport const NEW = \"NEW\";\nexport const NEWP = \"NEWP\";\nexport const PURCHASE = \"P\";\nexport const SIP_TRANS_TYPE = \"I\";\nexport const REQ_BY = \"a\";\nexport const REGULAR = \"Regular\";\nexport const PAYMENT_TYPE = \"DCB\";\nexport const NEW_PURCHASE = \"NEW_PURCHASE\";\nexport const ADDITIONAL_PURCHASE = \"ADDITIONAL_PURCHASE\";\nexport const PARTIAL = \"PARTIAL\";\nexport const FULL = \"FULL\";\nexport const UNITS = \"UNITS\";\nexport const AMOUNT = \"AMOUNT\";\nexport const REDEMPTION = \"REDEMPTION\";\nexport const U = \"U\";\nexport const SWITCH = \"SWITCH\";\nexport const SWP = \"SWP\";\nexport const STP = \"STP\";\nexport const SIP = \"SIP\";\nexport const PHYSICAL_NEW = \"new\";\nexport const PHYSICAL_ADD = \"add\";\nexport const PHYSICAL_RED = \"red\";\nexport const PHYSICAL_SWITCH = \"swop\";\nexport const PHYSICAL_SIP = \"isip\";\nexport const GRAPH = \"GRAPH\";\nexport const TABLE = \"TABLE\";\nexport const PAYMENT_MODE = \"PM\";\nexport const INVESTMENT_FREQUENCY = \"IF\";\nexport const SIP_DAY = \"D\";\nexport const START_LOADER = \"START_LOADER\";\nexport const STOP_LOADER = \"STOP_LOADER\";\nexport const INACTIVE_INVESTORS = \"INACTIVE_INVESTORS\";\nexport const ACTIVE_INVESTORS = \"ACTIVE_INVESTORS\";\nexport const NEW_INVESTORS = \"NEW_INVESTORS\";\nexport const GET_SIP_SUMMARY_DATA = \"GET_SIP_SUMMARY_DATA\";\nexport const GET_SIP_SUMMARY_DATA_SUCCESS = \"GET_SIP_SUMMARY_DATA_SUCCESS\";\nexport const GET_SIP_SUMMARY_DATA_FAILED = \"GET_SIP_SUMMARY_DATA_FAILED\";\nexport const EXPIRING_NEXT_MONTH = \"EXPIRING_NEXT_MONTH\";\nexport const CLOSED_THIS_MONTH = \"CLOSED_THIS_MONTH\";\nexport const SIP_INVESTMENTS = \"SIP_INVESTMENTS\";\nexport const CWS = \"CWS\";\nexport const CWOS = \"CWOS\";\nexport const GET_NFO_SCHEMES = \"GET_NFO_SCHEMES\";\nexport const GET_NFO_SCHEMES_SUCCESS = \"GET_NFO_SCHEMES_SUCCESS\";\nexport const GET_NFO_SCHEMES_FAILED = \"GET_NFO_SCHEMES_FAILED\";\nexport const REMOVE_NFO_SCHEMES = \"REMOVE_NFO_SCHEMES\";","import _defineProperty from \"/Users/mac/kfin-projects/dit-react/packages/web/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport AES from \"crypto-js/aes\";\nimport CryptoJSCore from \"crypto-js/core\";\nimport Base64 from \"crypto-js/enc-base64\";\nimport Utf8 from \"crypto-js/enc-utf8\";\nimport Pkcs7 from \"crypto-js/pad-pkcs7\";\nimport Rp from \"sha.js\";\nexport default class EncryptionUtils {\n constructor() {\n _defineProperty(this, \"Encryptionkey\", \"aGgRTenEUgoACtcOAr\");\n _defineProperty(this, \"Decryptionkey\", \"AecECroRUgnGTa\");\n _defineProperty(this, \"hashstring\", \"\");\n _defineProperty(this, \"hashsubstring\", \"\");\n _defineProperty(this, \"Encrypted\", \"\");\n _defineProperty(this, \"Dencrypted\", \"\");\n _defineProperty(this, \"iv\", Utf8.parse(\"globalaesvectors\"));\n }\n encryption(e, t) {\n this.hashstring = Rp(\"sha256\").update(this.Encryptionkey).digest(\"hex\");\n this.hashsubstring = this.hashstring.substring(0, 32);\n const n = Utf8.parse(this.hashsubstring);\n if (e === \"Encrypt\") {\n const l = AES.encrypt(Utf8.parse(t), n, {\n keySize: 16,\n iv: this.iv,\n mode: CryptoJSCore.mode.CBC,\n padding: Pkcs7\n });\n return l.ciphertext.toString(Base64).split(\"+\").join(\"-\").split(\"/\").join(\"_\");\n }\n const i = t.split(\"-\").join(\"+\").split(\"_\").join(\"/\");\n return AES.decrypt(i, n, {\n keySize: 16,\n iv: this.iv,\n mode: CryptoJSCore.mode.CBC,\n padding: Pkcs7\n }).toString(Utf8);\n }\n encrypt(payload) {\n return this.encryption(\"Encrypt\", payload);\n }\n decrypt(payload) {\n return this.encryption(\"Decrypt\", payload);\n }\n}","import { START_LOADER, STOP_LOADER, USER_LOGOUT, USER_LOGIN_REFRESH_SUCCESS } from \"./types\";\nimport EncryptionUtils from \"./encrypt\";\nvar base64 = require(\"base-64\");\nexport const PROXY_PATH = process.env.REACT_APP_PROXY_PATH || \"/smf-dit-uat-proxy/25uat/SmartService.svc\";\nexport const BASE_URL = \"https://invwise.sundarammutual.com/smf-api/v2/proxy/25/SmartService.svc\";\nexport const FILE_URL = \"https://mfs.kfintech.com/prodapi/image-proxy/ktrackgo/SmartService.svc/ktrack_uploaded_PdfSave\";\nexport const NCT_URL = \"https://images.kfintech.com/ktrackgo/SmartService.svc/ktrack_uploaded_PdfSave_NCT\";\nexport const FEED_BACK_URL = \"https://mfs.kfintech.com/KTRACKAPI/SmartService.svc\";\nconst FETCH_FAILED = \"Failed to fetch\";\nexport const NCT_URL_NEW = \"https://ditapp.kfintech.com/api/nct\";\nexport const CART_URL = \"https://ditapp.kfintech.com/api/ct\";\nvar jwt = require(\"jsonwebtoken\");\nasync function invokeAPI(endpoint, config, auth_token, next) {\n const {\n isFile,\n isTrackApi,\n isNct,\n new_investor,\n isNctNew,\n isCart,\n ...others\n } = config;\n const DEFAULT_HEADERS = {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\"\n };\n const headers = !!auth_token ? {\n ...DEFAULT_HEADERS,\n authorization: `Bearer ${auth_token}`\n } : {\n ...DEFAULT_HEADERS\n };\n const updatedConfig = {\n ...others,\n headers\n };\n const response = await fetch(isNctNew ? NCT_URL_NEW + endpoint : isCart ? CART_URL + endpoint : isNct ? NCT_URL : isFile ? FILE_URL : isTrackApi ? FEED_BACK_URL + endpoint : BASE_URL + endpoint, updatedConfig);\n if (response.status >= 400) {\n const data = await response.json();\n throw new Error(data.error || data.message || \"Something went wrong\");\n }\n if (response.status < 200 || response.status >= 300) {\n //This is an error response.\n const data = await response.text();\n if (response.status == 413) {\n throw new Error(\"Upload file size too large. Try uploading a smaller file less than 24 MB or change the file format.\");\n }\n throw \"Something went wrong\";\n }\n if (response.status === 401) {\n next({\n type: \"USER_LOGOUT\"\n });\n throw new Error(\"Unauthorized request\");\n }\n const responseData = await response.json();\n const {\n encryptedBody\n } = responseData;\n const data = encryptedBody ? JSON.parse(new EncryptionUtils().decrypt(encryptedBody)) : responseData;\n const body = data;\n const {\n Dtinformation,\n Table,\n Table1\n } = body;\n if (!!Dtinformation || !!Table || Table1) {\n // if (\n // !!Dtinformation &&\n // (Dtinformation.length > 1 ||\n // endpoint.includes(\"/getMasterSIP?opt=UE0%3D\") ||\n // endpoint.includes(\"/ktrack_frequent_mailback_request\"))\n // ) {\n // return body;\n // }\n const [info] = Dtinformation || Table || Table1;\n const errorCode = !!info ? typeof info.Error_code !== \"undefined\" ? info.Error_code : info.Error_Code : \"\";\n if (typeof errorCode === \"undefined\" && !!Dtinformation && !!Dtinformation.length) {\n return body;\n } else if (+errorCode !== 0 && +errorCode !== \"0\") {\n throw info.Error_Message;\n }\n return body;\n } else if (!!body) {\n return body;\n }\n}\nexport const CALL_API = Symbol(\"Call API\");\nexport default (function (store) {\n return function (next) {\n return async function (action) {\n // So the middleware doesn't get applied to every single action\n if (typeof action[CALL_API] === \"undefined\") {\n return next(action);\n }\n\n // const constantParams = {\n // Adminusername: \"smartservice\",\n // Adminpassword: \"karvy1234%24\",\n // OS: \"DIT\",\n // IMEI: \"127.0.0.1\",\n // APKVer: \"1.0\"\n // };\n\n let {\n url,\n method,\n types = [],\n showLoader = false,\n body = undefined,\n isNct = false,\n ikyc = false,\n new_investor = false,\n addedparams,\n params,\n isFile = false,\n isTrackApi = false,\n isNctNew = false,\n isCart = false,\n isLogin: isPreLogin = false,\n isAuth: isSignup = false,\n isForgot = false,\n skipEncode = false\n } = action[CALL_API];\n params = {\n ...params\n };\n const isLogin = isSignup || isPreLogin || isForgot;\n const [requestType, successType] = types;\n const {\n authReducer\n } = store.getState();\n requestType && next({\n type: requestType\n });\n try {\n if (showLoader) {\n next({\n type: START_LOADER\n });\n //TODO: Dispatch show modal loader now.\n }\n if (!isLogin) {\n await validateAndRefreshToken(next, store);\n }\n const queryParams = new URLSearchParams();\n for (let param in params) {\n if (skipEncode) {\n const value = params[param] || \"\";\n queryParams.set(param, encodeURIComponent(value));\n } else if (params[param]) {\n queryParams.set(param, encodeURIComponent(btoa(params[param])));\n }\n }\n const stringParametrs = !!ikyc ? queryParams.toString() + `&IMEI=${addedparams.IMEI}&DistName=${addedparams.DistName}&InvEmail=${addedparams.InvEmail}&ArnCode=${addedparams.ArnCode}` : queryParams.toString();\n const getQueryParams = function () {\n if (isForgot) {\n return `${stringParametrs}&isWeb=true`;\n }\n return `${stringParametrs}&isWeb=true&customfund=${encodeURIComponent(base64.encode(\"176\"))}&APKVer=${encodeURIComponent(base64.encode(\"1.0.7\"))}`;\n };\n const responseBody = await invokeAPI(`${url}?${getQueryParams()}`, {\n method,\n body: isNctNew && method === \"POST\" && body ? JSON.stringify({\n encryptedBody: new EncryptionUtils().encrypt(JSON.stringify(body))\n }) : JSON.stringify(body),\n redirect: \"manual\",\n new_investor,\n isFile,\n isNct,\n isNctNew,\n isCart,\n isTrackApi\n }, authReducer.auth_token, next);\n const isValidLogin = validateLogin({\n isLogin,\n loginPayload: body,\n token: responseBody.token\n });\n if (!isValidLogin) {\n next({\n type: STOP_LOADER\n });\n next({\n type: USER_LOGOUT\n });\n alert(\"Unauthorized Request\");\n return;\n }\n successType && next({\n body: {\n ...responseBody\n },\n type: successType\n });\n next({\n type: STOP_LOADER\n });\n return {\n ...responseBody\n };\n } catch (error) {\n if (error.message !== FETCH_FAILED) {\n throw error;\n } else if (error.message === FETCH_FAILED) {\n return `Something went wrong!!\n please check your internet connectivity or try again later`;\n }\n } finally {\n if (showLoader) {\n next({\n type: STOP_LOADER\n });\n //TODO: Dispatch hide modal loader now.\n }\n }\n };\n };\n});\nfunction objToQueryString(obj) {\n const keyValuePairs = [];\n for (const key in obj) {\n keyValuePairs.push(key + \"=\" + encodeURIComponent(base64.encode(obj[key])));\n }\n return keyValuePairs.join(\"&\");\n}\n\n// encodeURIComponent(base64.encode())\n\n// + `&IMEI=${encodeURIComponent(base64.encode(\"127.0.0.1\"))}&Adminusername=${encodeURIComponent(base64.encode(\"smartservice\"))}&Adminpassword=${encodeURIComponent(base64.encode(\"karvy1234%24\"))}&OS=${encodeURIComponent(base64.encode(\"SUNDARAM\"))}&APKVer=${encodeURIComponent(base64.encode(\"1.0\"))}`;\nfunction validateLogin(_ref) {\n let {\n isLogin,\n loginPayload = {},\n token\n } = _ref;\n if (!isLogin) return true;\n const {\n username\n } = loginPayload;\n return !!username ? decrypt(username) === jwt.decode(token).user : true;\n}\nfunction decrypt(text) {\n let decodedString = base64.decode(text);\n let encrpyted1 = decodedString.slice(11, -16);\n let encrpyted = base64.decode(encrpyted1);\n return encrpyted;\n}\nasync function validateAndRefreshToken(next, store) {\n const authorizationToken = store.getState().authReducer.auth_token;\n if (!!authorizationToken) {\n const {\n exp\n } = jwt.decode(authorizationToken);\n const FIVE_MINUTES = 5 * 60 * 1000;\n const diff = Math.floor(new Date(exp * 1000).getTime() - new Date().getTime());\n if (diff < 0) {\n next({\n type: USER_LOGOUT\n });\n throw new Error(\"Your active session has timeout. Request you to re-login\");\n }\n if (diff > FIVE_MINUTES) return;\n const response = await invokeAPI(\"/refresh_token\", {\n method: \"GET\"\n }, authorizationToken);\n if (response.token) {\n next({\n body: response,\n type: USER_LOGIN_REFRESH_SUCCESS\n });\n return;\n }\n if (response.error === \"jwt expired\") {\n next({\n type: USER_LOGOUT\n });\n throw new Error(\"Your active session has timed out. Request you to re-login\", {\n cause: \"AUTH_FAILED\"\n });\n }\n } else {\n next({\n type: USER_LOGOUT\n });\n throw new Error(\"Your active session has timeout. Request you to re-login\");\n }\n}","import { USER_LOGIN_SUCCESS, USER_LOGOUT, REMEMBER_ME, USER_PAN, USER_LOGIN_REFRESH_SUCCESS } from \"../types/auth\";\nimport { GET_INVESTOR_DETAILS, GET_INVESTOR_DETAILS_SUCCESS, FIRST_TIME_INSTALLATION_SUCCESS, AUTO_SELECT, POSTER_OPEN } from \"../types\";\nconst initialState = {\n token: null,\n showAll: false,\n remeberMe: false,\n tran_enable_flag: \"\",\n posterStatus: 0,\n lastLogin: \"\",\n installed: null,\n dist_force_update: \"\",\n dist_ver: \"\",\n dist_ver_update_text: \"\",\n user_pan: \"\",\n autoSelect: {},\n auth_token: null\n};\nexport function authReducer() {\n let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n let action = arguments.length > 1 ? arguments[1] : undefined;\n switch (action.type) {\n case USER_LOGIN_SUCCESS:\n {\n const {\n DtData,\n Dtinformation,\n token\n } = action.body;\n const [data] = DtData;\n const {\n ARNCode,\n Login_MailID,\n Regflag,\n dist_force_update,\n dist_update_text,\n tran_enable_flag,\n dist_ver\n } = data;\n return {\n ...state,\n token: ARNCode,\n auth_token: token,\n userId: Login_MailID,\n tran_enable_flag: tran_enable_flag,\n lastLogin: Dtinformation[0].last_login,\n dist_force_update: dist_force_update,\n dist_update_text: dist_update_text,\n dist_ver: dist_ver,\n Regflag\n };\n }\n case POSTER_OPEN:\n {\n return {\n ...state,\n posterStatus: action.body\n };\n }\n case USER_PAN:\n {\n return {\n ...state,\n user_pan: action.body\n };\n }\n case GET_INVESTOR_DETAILS:\n {\n return {\n ...state,\n investorData: {},\n showAll: false,\n communicationDetails: [],\n bankDetails: [],\n fundList: []\n };\n }\n case GET_INVESTOR_DETAILS_SUCCESS:\n {\n const {\n Table14: communicationDetails,\n Table7: bankDetails,\n Table11,\n Table14: fundList\n } = action.body;\n const [investorData] = Table11;\n return {\n ...state,\n showAll: true,\n investorData,\n communicationDetails,\n bankDetails,\n fundList\n };\n }\n case AUTO_SELECT:\n {\n return {\n ...state,\n autoSelect: action.body\n };\n }\n case FIRST_TIME_INSTALLATION_SUCCESS:\n {\n return {\n ...state,\n installed: action.installed\n };\n }\n case USER_LOGOUT:\n {\n return {\n initialState,\n installed: state.installed,\n remeberMe: state.remeberMe\n };\n }\n case REMEMBER_ME:\n {\n return {\n initialState,\n remeberMe: action.value\n };\n }\n case USER_LOGIN_REFRESH_SUCCESS:\n {\n return {\n ...state,\n auth_token: action.body.token\n };\n }\n default:\n return state;\n }\n}","import { GET_DASHBOARD_DATA_SUCCESS, GET_TRANSACTION_DATA_SUCCESS, GET_TRANSACTION_DATA, GET_AUM_DATA_SUCCESS, GET_FREQUENT_MAIL_BACK_REQUEST_SUCCESS, GET_DASHBOARD_AUM_DATA_SUCCESS, GET_SIP_SUMMARY_DATA_SUCCESS, GET_NFO_SCHEMES_SUCCESS, GET_NFO_SCHEMES, REMOVE_NFO_SCHEMES, GET_DOMAIN_SUCCESS, GET_DASHBOARD_NEWINVESTOR_DATA_SUCCESS } from \"../types\";\nexport function dashboard() {\n let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {\n summaryData: [],\n aumData: [],\n nfoSchemes: []\n };\n let action = arguments.length > 1 ? arguments[1] : undefined;\n switch (action.type) {\n case GET_DASHBOARD_DATA_SUCCESS:\n {\n const {\n DtData\n } = action.body;\n const [data] = DtData;\n return {\n ...state,\n transactionSummary: data\n };\n }\n case GET_DOMAIN_SUCCESS:\n {\n const {\n DtData,\n Table2\n } = action.body;\n return {\n ...state,\n emaildomain: DtData,\n emailhost: Table2\n };\n }\n case GET_DASHBOARD_AUM_DATA_SUCCESS:\n {\n return {\n ...state,\n dashboardAUMData: action.body\n };\n }\n case GET_SIP_SUMMARY_DATA_SUCCESS:\n {\n return {\n ...state,\n sipSummaryData: action.body\n };\n }\n case GET_TRANSACTION_DATA:\n {\n return {\n ...state,\n summaryData: []\n };\n }\n case GET_TRANSACTION_DATA_SUCCESS:\n {\n const {\n DtData\n } = action.body;\n return {\n ...state,\n summaryData: DtData\n };\n }\n case GET_NFO_SCHEMES_SUCCESS:\n {\n return {\n ...state,\n nfoSchemes: action.body\n };\n }\n case REMOVE_NFO_SCHEMES:\n {\n return {\n ...state,\n nfoSchemes: []\n };\n }\n case GET_AUM_DATA_SUCCESS:\n {\n const {\n DtData: aumData,\n Table2: fundData,\n Table3: [data]\n } = action.body;\n return {\n ...state,\n aumData: aumData.map(function (item) {\n return {\n name: item.category,\n value: item.aum\n };\n }),\n fundData: fundData.sort(function (a, b) {\n return b.aum_percent - a.aum_percent;\n }).slice(0, 5).map(function (item) {\n return {\n name: item.fund,\n value: item.aum_percent\n };\n }),\n totalAum: action.body.Table2.map(function (item) {\n return {\n aum: item.aum\n };\n }).reduce(function (p, c) {\n return p + parseFloat(c.aum);\n }, 0),\n my_aum: data.my_aum,\n numberofschemes: data.Numberofschemes\n };\n }\n case GET_FREQUENT_MAIL_BACK_REQUEST_SUCCESS:\n {\n return state;\n }\n default:\n return state;\n }\n}\nfunction removeBlankPropertiesFromPairs(pairs) {\n pairs.forEach(function (pair) {\n Object.keys(pair).forEach(function (key) {\n if (pair[key] === '') {\n delete pair[key];\n }\n });\n });\n return pairs;\n}","import { GET_INVESTORS_LIST_SUCCESS, YES, GET_INVESTOR_DETAILS_SUCCESS, GET_NCT_INVESTORS_LIST_SUCCESS, PANALL, FAVOURITE_INVESTOR_SUCCESS, GET_INVESTORS_LIST, SEARCH_INVESTORS_SUCCESS, SEARCH_SCHEME_INVESTORS_SUCCESS, REMOVE_SEARCH_INVESTOR_LIST, SEARCH_INVESTORS, SEARCH_SCHEME_INVESTORS, GET_INVESTOR_DETAILS, STORE_CURRENTPAGE, GET_UPCOMING_SIP_DETAILS_SUCCESS, ALL, STORE_TYPE, STORE_FUND_STATE, STORE_KYC_DATA } from \"../types\";\nconst initialState = {\n investors: [],\n nctInvestors: [],\n count: 0,\n searchList: [],\n favList: [],\n investments: [],\n investorDetailedSchemes: [],\n upComingSipDetails: [],\n selectedTab: ALL,\n fundstate: {},\n kycData: {},\n loading: false,\n currentPage: 1\n};\nexport function investor() {\n let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n let action = arguments.length > 1 ? arguments[1] : undefined;\n switch (action.type) {\n case GET_INVESTORS_LIST:\n {\n return {\n ...state,\n loading: true\n };\n }\n case GET_INVESTORS_LIST_SUCCESS:\n {\n let {\n DtData\n } = action.body;\n const uniquePANs = {};\n DtData.forEach(function (item) {\n uniquePANs[item.Pan] = true;\n });\n const count = Object.keys(uniquePANs).length;\n console.log(\"Number of distinct PANs:\", count);\n DtData = DtData.map(function (investor) {\n return {\n ...investor,\n Kyc: investor.Kyc === YES,\n Fatca: investor.Fatca === YES\n };\n });\n return {\n ...state,\n investors: DtData,\n count: count,\n loading: false\n };\n }\n // case SEARCH_INVESTORS:\n // // case GET_INVESTORS_LIST: {\n // // return { ...state, investors: [] };\n // // }\n case GET_INVESTOR_DETAILS:\n {\n return {\n ...state,\n investorData: {},\n showAll: false,\n fundAllocation: [],\n pieData: [],\n investments: [],\n communicationDetails: [],\n investorInvestmentDetails: [],\n fundLevelInvestments: []\n };\n }\n case GET_INVESTOR_DETAILS_SUCCESS:\n {\n const {\n Table2: communicationDetails,\n Table3,\n Table5: investorInvestmentDetails,\n Table11,\n Table12: fundLevelInvestments,\n Table13: investments,\n Table14: investorDetailedSchemes\n } = action.body;\n const asOnDate = action.body.Dtinformation[0].asondate;\n const {\n investors = []\n } = state;\n const [investorData] = Table11;\n const fav = investors.find(function (inv) {\n return inv.Pan === investorData.PAN;\n }) || {};\n const fundAllocation = Table3.filter(function (fund) {\n return fund.PAN === PANALL;\n });\n const pieData = fundAllocation.map(function (item) {\n return {\n name: item.name,\n value: item.totpercent\n };\n });\n const investorTotal = investorInvestmentDetails.find(function (x) {\n return x.FundDesc === \"Total\" && x.PAN === \"ALL\";\n });\n return {\n ...state,\n investorData: {\n ...investorData,\n fav: fav.Favorite\n },\n fundAllocation,\n investorDetailedSchemes,\n pieData,\n investorTotal,\n asOnDate,\n investments,\n communicationDetails,\n fundLevelInvestments\n };\n }\n case GET_NCT_INVESTORS_LIST_SUCCESS:\n {\n const {\n investors\n } = state;\n const nctInvetsors = investors.filter(function (investor) {\n return Object.values(action.body).includes(investor.Pan);\n });\n const count = Object.keys(nctInvetsors).length;\n return {\n ...state,\n nctInvestors: nctInvetsors,\n count: count\n };\n }\n case FAVOURITE_INVESTOR_SUCCESS:\n {\n const {\n investors,\n investorData\n } = state;\n const {\n InvPan,\n FavFlag\n } = action.data;\n const updatedInvestors = investors.map(function (inv) {\n if (inv.Pan === InvPan) {\n return {\n ...inv,\n Favorite: FavFlag\n };\n }\n return inv;\n });\n return {\n ...state,\n favList: action.data,\n investors: updatedInvestors,\n investorData: {\n ...investorData,\n fav: FavFlag\n }\n };\n }\n case REMOVE_SEARCH_INVESTOR_LIST:\n {\n return {\n ...state,\n searchList: []\n };\n }\n case SEARCH_INVESTORS_SUCCESS:\n {\n const {\n Dtdata\n } = action.body;\n const uniquePANs = {};\n Dtdata.forEach(function (item) {\n uniquePANs[item.Pan] = true;\n });\n const count = Object.keys(uniquePANs).length;\n console.log(\"Number of distinct PANs:\", count);\n return {\n ...state,\n investors: Dtdata,\n count: count\n };\n }\n case SEARCH_SCHEME_INVESTORS_SUCCESS:\n {\n const {\n DtData\n } = action.body;\n return {\n ...state,\n investors: DtData,\n count: DtData.length\n };\n }\n case GET_UPCOMING_SIP_DETAILS_SUCCESS:\n {\n const {\n DtData\n } = action.body;\n return {\n ...state,\n upComingSipDetails: DtData\n };\n }\n case STORE_TYPE:\n {\n const {\n selectedTab\n } = action.body;\n return {\n ...state,\n selectedTab\n };\n }\n case STORE_CURRENTPAGE:\n {\n return {\n ...state,\n currentPage: action.body\n };\n }\n case STORE_FUND_STATE:\n {\n return {\n ...state,\n fundstate: action.body\n };\n }\n case STORE_KYC_DATA:\n {\n return {\n ...state,\n kycData: action.body\n };\n }\n default:\n return state;\n }\n}","import { SHOW_PURCHASE_CONFIRMATION_SUCCESS, GET_FUNDS_LIST_SUCCESS, GET_CATEGORY_LIST_SUCCESS, GET_SCHEME_LIST_SUCCESS, VALIDATE_SUB_BROKER_SUCCESS, CONFIRM_PURCHASE_SUCCESS, SET_SIP_DETAILS, SIP_SAVE_DATA_SUCCESS, SET_SWITCH_DETAILS, SWITCH_SAVE_DATA_SUCCESS, SET_STP_DETAILS, STP_SAVE_DATA_SUCCESS, GET_EARNINGS_SUCCESS, GET_EARNINGS, GET_DASHBOARD_SIP_SUCCESS, GET_DASHBOARD_FMP_SUCCESS, SAVE_TRANSACTION_DETAILS } from \"../types\";\nexport function transactions() {\n let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {\n confirmationData: {},\n fundsList: [],\n categoryList: [],\n schemeList: [],\n euinList: [],\n sipDetails: {},\n switchDetails: {},\n stpDetails: {},\n earnings: [],\n sipTransactions: []\n };\n let action = arguments.length > 1 ? arguments[1] : undefined;\n switch (action.type) {\n case SHOW_PURCHASE_CONFIRMATION_SUCCESS:\n {\n const {\n Dtinformation,\n DtData\n } = action.body;\n const [data] = DtData || Dtinformation;\n return {\n ...state,\n confirmationData: {\n ...data\n }\n };\n }\n case GET_FUNDS_LIST_SUCCESS:\n {\n const {\n Dtinformation: fundsList = []\n } = action.body;\n return {\n ...state,\n fundsList,\n categoryList: [],\n schemeList: []\n };\n }\n case GET_CATEGORY_LIST_SUCCESS:\n {\n const {\n Dtinformation: categoryList = []\n } = action.body;\n return {\n ...state,\n categoryList,\n schemeList: []\n };\n }\n case GET_SCHEME_LIST_SUCCESS:\n {\n const {\n Dtinformation: schemeList = []\n } = action.body;\n return {\n ...state,\n schemeList\n };\n }\n case VALIDATE_SUB_BROKER_SUCCESS:\n {\n const {\n DtData: euinList = []\n } = action.body;\n return {\n ...state,\n euinList\n };\n }\n case CONFIRM_PURCHASE_SUCCESS:\n {\n return {\n ...state,\n confirmationData: {}\n };\n }\n case SET_SIP_DETAILS:\n {\n return {\n ...state,\n sipDetails: action.body\n };\n }\n case SIP_SAVE_DATA_SUCCESS:\n {\n return {\n ...state,\n sipDetails: {}\n };\n }\n case SET_SWITCH_DETAILS:\n {\n return {\n ...state,\n switchDetails: action.body\n };\n }\n case SWITCH_SAVE_DATA_SUCCESS:\n {\n return {\n ...state,\n switchDetails: {}\n };\n }\n case SET_STP_DETAILS:\n {\n return {\n ...state,\n stpDetails: action.body\n };\n }\n case STP_SAVE_DATA_SUCCESS:\n {\n return {\n ...state,\n stpDetails: {}\n };\n }\n case GET_EARNINGS:\n {\n return {\n ...state,\n earnings: []\n };\n }\n case GET_EARNINGS_SUCCESS:\n {\n const {\n DtData: earnings = []\n } = action.body;\n return {\n ...state,\n earnings\n };\n }\n case GET_DASHBOARD_SIP_SUCCESS:\n {\n const {\n DtData\n } = action.body;\n return {\n ...state,\n sipTransactions: DtData\n };\n }\n case GET_DASHBOARD_FMP_SUCCESS:\n {\n const {\n Table2\n } = action.body;\n console.log(Table2);\n return {\n ...state,\n fmpTransactions: Table2\n };\n }\n case SAVE_TRANSACTION_DETAILS:\n {\n return {\n ...state,\n transactionDetails: action.body\n };\n }\n default:\n return state;\n }\n}","export const GET_PROFILE_DATA = \"GET_PROFILE_DATA\";\nexport const GET_PROFILE_DATA_SUCCESS = \"GET_PROFILE_DATA_SUCCESS\";\nexport const GET_PROFILE_DATA_FAILED = \"GET_PROFILE_DATA_FAILED\";","import { GET_PROFILE_DATA_SUCCESS } from \"../types/profile\";\nexport function profileReducer() {\n let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {\n profileData: {},\n reviewList: []\n };\n let action = arguments.length > 1 ? arguments[1] : undefined;\n switch (action.type) {\n case GET_PROFILE_DATA_SUCCESS:\n {\n const {\n DtData,\n Table2: reviewList = []\n } = action.body;\n const [profileData] = DtData;\n return {\n ...state,\n profileData,\n reviewList\n };\n }\n default:\n return state;\n }\n}","import { GET_FUNDS_LIST_PAN_SUCCESS, GET_TRANSACTION_HISTORY_SUCCESS, GET_NAV_DATA_SUCCESS, REMOVE_NAV_DATA, REMOVE_TRANSACTION_HISTORY_DATA } from \"../types\";\nconst initialState = {\n fundsList: [],\n transactions: [],\n navData: [],\n loading: false\n};\nexport function transactionHistory() {\n let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n let action = arguments.length > 1 ? arguments[1] : undefined;\n switch (action.type) {\n case GET_FUNDS_LIST_PAN_SUCCESS:\n {\n const {\n Table1: fundsList\n } = action.body;\n return {\n ...state,\n fundsList\n };\n }\n case GET_TRANSACTION_HISTORY_SUCCESS:\n {\n const {\n Table1: transactions\n } = action.body;\n return {\n ...state,\n transactions,\n loading: true\n };\n }\n case GET_NAV_DATA_SUCCESS:\n {\n const {\n Table1: navData\n } = action.body;\n return {\n ...state,\n navData\n };\n }\n case REMOVE_NAV_DATA:\n {\n return {\n ...state,\n navData: []\n };\n }\n case REMOVE_TRANSACTION_HISTORY_DATA:\n {\n return {\n ...state,\n transactions: [],\n loading: true\n };\n }\n default:\n return state;\n }\n}","export const GET_DIST_POST_QUERY_DATA = \"GET_DIST_POST_QUERY_DATA\";\nexport const GET_DIST_POST_QUERY_DATA_SUCCESS = \"GET_DIST_POST_QUERY_DATA_SUCCESS\";\nexport const GET_DIST_POST_QUERY_DATA_FAILED = \"GET_DIST_POST_QUERY_DATA_FAILED\";","import { GET_DIST_POST_QUERY_DATA_SUCCESS } from \"../types/support\";\nexport function support() {\n let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {\n supportQueries: []\n };\n let action = arguments.length > 1 ? arguments[1] : undefined;\n switch (action.type) {\n case GET_DIST_POST_QUERY_DATA_SUCCESS:\n {\n const {\n Dtinformation\n } = action.body;\n return {\n ...state,\n supportQueries: Dtinformation\n };\n }\n default:\n return state;\n }\n}","import { START_LOADER, STOP_LOADER } from \"../types\";\nexport function loading() {\n let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {\n count: 0\n };\n let action = arguments.length > 1 ? arguments[1] : undefined;\n switch (action.type) {\n case START_LOADER:\n {\n return {\n ...state,\n count: state.count + 1\n };\n }\n case STOP_LOADER:\n {\n return {\n ...state,\n count: Math.max(0, state.count - 1)\n };\n }\n default:\n {\n return state;\n }\n }\n}","import { LOCAL_AUTHENTICATION_SUCCESS, SKIP_LOCAL_AUTHENTICATION_SUCCESS, LOCAL_AUTH_USERNAME_SUCCESS, LOCAL_AUTH_PASSWORD_SUCCESS } from \"../types/index\";\nconst initialState = {\n authID: null,\n skipAuth: null,\n userName: null,\n password: null\n};\nexport function biomtricAuth() {\n let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n let action = arguments.length > 1 ? arguments[1] : undefined;\n switch (action.type) {\n case LOCAL_AUTHENTICATION_SUCCESS:\n {\n return {\n ...state,\n authID: action.authID\n };\n }\n case SKIP_LOCAL_AUTHENTICATION_SUCCESS:\n {\n return {\n ...state,\n skipAuth: action.skipAuth\n };\n }\n case LOCAL_AUTH_USERNAME_SUCCESS:\n {\n return {\n ...state,\n userName: action.userName\n };\n }\n case LOCAL_AUTH_PASSWORD_SUCCESS:\n {\n return {\n ...state,\n password: action.password\n };\n }\n default:\n return state;\n }\n}","export const GET_BANK_LIST = \"GET_BANK_LIST\";\nexport const GET_BANK_LIST_SUCCESS = \"GET_BANK_LIST_SUCCESS\";\nexport const GET_BANK_LIST_FAILED = \"GET_BANK_LIST_FAILED\";\nexport const STORE_INVESTMENT_DETAILS = \"STORE_INVESTMENT_DETAILS\";\nexport const STORE_FATCA_DETAILS = \"STORE_FATCA_DETAILS\";\nexport const STORE_SCHEME_DETAILS = \"STORE_SCHEME_DETAILS\";\nexport const STORE_SCHEME_PARAMS = \"STORE_SCHEME_PARAMS\";\nexport const STORE_APPLICANT_PARAMS = \"STORE_APPLICANT_PARAMS\";\nexport const STORE_INVESTMENT_PARAMS = \"STORE_INVESTMENT_PARAMS\";\nexport const STORE_NOMINEE_DETAILS = \"STORE_NOMINEE_DETAILS\";\nexport const STORE_NONOMINEE_DETAILS = \"STORE_NONOMINEE_DETAILS\";\nexport const STORE_BANK_DETAILS = \"STORE_BANK_DETAILS\";\nexport const STORE_SCHEME_DETAILS_CLICK = \"STORE_SCHEME_DETAILS_CLICK\";\nexport const STORE_SCHEME_DETAILS_SCHEME = \"STORE_SCHEME_DETAILS_SCHEME\";\nexport const STORE_PAN = \"STORE_PAN\";\nexport const STORE_SIP = \"STORE_SIP\";\nexport const CHANGE_IN_MODE = \"CHANGE_IN_MODE\";\nexport const STORE_LUMPSUM = \"STORE_LUMPSUM\";\nexport const STORE_LUMPSUM_DETAILS = \"STORE_LUMPSUM_DETAILS\";\nexport const STORE_SIP_DETAILS = \"STORE_SIP_DETAILS\";\nexport const CLEARING_FIRST_TIME_INVETOR_JOURNEY_SUCCESS = \"CLEARING_FIRST_TIME_INVETOR_JOURNEY_SUCCESS\";\nexport const STORE_ADDRESS_SUCCESS = \"STORE_ADDRESS_SUCCESS\";\nexport const GET_BANK_DETAILS = \"GET_BANK_DETAILS\";\nexport const GET_BANK_DETAILS_SUCCESS = \"GET_BANK_DETAILS_SUCCESS\";\nexport const GET_BANK_DETAILS_FAILED = \"GET_BANK_DETAILS_FAILED\";\nexport const GET_NOMINEE_DETAILS = \"GET_NOMINEE_DEATILS\";\nexport const GET_NOMINEE_DETAILS_SUCESS = \"GET_NOMINEE_DETAILS_SUCESS\";\nexport const GET_NOMINEE_DEATILS_FAILED = \"GET_NOMINEE_DEATILS_FAILED\";","import { STORE_FATCA_DETAILS, STORE_INVESTMENT_DETAILS, STORE_SCHEME_DETAILS, STORE_APPLICANT_PARAMS, STORE_SCHEME_PARAMS, STORE_INVESTMENT_PARAMS, STORE_NOMINEE_DETAILS, STORE_NONOMINEE_DETAILS, STORE_BANK_DETAILS, STORE_SCHEME_DETAILS_CLICK, GET_NOMINEE_DETAILS_SUCESS, GET_BANK_DETAILS_SUCCESS, STORE_PAN, STORE_LUMPSUM, STORE_ADDRESS_SUCCESS, CLEARING_FIRST_TIME_INVETOR_JOURNEY_SUCCESS, STORE_LUMPSUM_DETAILS, STORE_SIP_DETAILS, STORE_SCHEME_DETAILS_SCHEME, CHANGE_IN_MODE, STORE_SIP } from \"../types/newinvestor\";\nconst initialState = {\n fatcaDetails: {},\n nomineDetails: {},\n getnomineeDetails: {},\n getbankDetails: {},\n investmentDetails: {},\n schemeDetails: {},\n applicantparams: {},\n schemeparams: {},\n investmentparams: {},\n address: {},\n store_pan: {},\n lumpsum: {},\n storeLumpsum: {},\n storeSip: {},\n sip: {},\n // lumpsumSip: {},\n noNominee: false,\n bankDetails: false,\n schemeDetailsClick: false,\n schemeDetailsScheme: \"Lumpsum\",\n changeMode: false\n};\nexport function newinvestor() {\n let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n let action = arguments.length > 1 ? arguments[1] : undefined;\n switch (action.type) {\n case STORE_FATCA_DETAILS:\n return {\n ...state,\n fatcaDetails: action.body\n };\n case STORE_NOMINEE_DETAILS:\n return {\n ...state,\n nomineDetails: action.body\n };\n case STORE_INVESTMENT_DETAILS:\n return {\n ...state,\n investmentDetails: action.body\n };\n case STORE_SCHEME_DETAILS:\n return {\n ...state,\n schemeDetails: action.body\n };\n case STORE_APPLICANT_PARAMS:\n return {\n ...state,\n applicantparams: action.body\n };\n case STORE_SCHEME_PARAMS:\n return {\n ...state,\n schemeparams: action.body\n };\n case STORE_INVESTMENT_PARAMS:\n return {\n ...state,\n investmentparams: action.body\n };\n case GET_NOMINEE_DETAILS_SUCESS:\n return {\n ...state,\n getnomineeDetails: action.body\n };\n case GET_BANK_DETAILS_SUCCESS:\n return {\n ...state,\n getbankDetails: action.body\n };\n case STORE_ADDRESS_SUCCESS:\n return {\n ...state,\n address: action.body\n };\n case CHANGE_IN_MODE:\n return {\n ...state,\n changeMode: action.body\n };\n case STORE_NONOMINEE_DETAILS:\n return {\n ...state,\n noNominee: action.body\n };\n case STORE_BANK_DETAILS:\n return {\n ...state,\n bankDetails: action.body\n };\n case STORE_SCHEME_DETAILS_CLICK:\n return {\n ...state,\n schemeDetailsClick: action.body\n };\n case STORE_SCHEME_DETAILS_SCHEME:\n return {\n ...state,\n schemeDetailsScheme: action.body\n };\n case STORE_PAN:\n return {\n ...state,\n store_pan: action.body\n };\n case STORE_LUMPSUM:\n return {\n ...state,\n lumpsum: {\n ...state.lumpsum,\n ...action.body\n }\n };\n case STORE_SIP:\n return {\n ...state,\n sip: {\n ...state.sip,\n ...action.body\n }\n };\n case STORE_LUMPSUM_DETAILS:\n return {\n ...state,\n storeLumpsum: action.body\n };\n case STORE_SIP_DETAILS:\n return {\n ...state,\n storeSip: action.body\n };\n case CLEARING_FIRST_TIME_INVETOR_JOURNEY_SUCCESS:\n return {\n ...initialState\n };\n default:\n return state;\n }\n}","import { combineReducers } from \"redux\";\n// import { connectRouter } from \"connected-react-router\";\nimport { authReducer } from \"./auth\";\nimport { dashboard } from \"./dashboard\";\nimport { investor } from \"./investors\";\nimport { transactions } from \"./transactions\";\nimport { profileReducer } from \"./profile\";\nimport { transactionHistory } from \"./history\";\nimport { support } from \"./support\";\nimport { loading } from \"./loader\";\nimport { biomtricAuth } from \"./bioAuthentication\";\nimport { newinvestor } from \"./newinvestor\";\nexport default (function (history) {\n return combineReducers({\n router: history,\n authReducer,\n dashboard,\n investor,\n transactions,\n profileReducer,\n transactionHistory,\n support,\n loading,\n biomtricAuth,\n newinvestor\n });\n});","import { createStore, applyMiddleware } from \"redux\";\nimport { persistStore, persistReducer } from \"redux-persist\";\nimport storage from \"redux-persist/lib/storage\";\nimport { routerMiddleware } from \"connected-react-router\";\nimport { createBrowserHistory } from \"history\";\n\nimport thunk from \"redux-thunk\";\nimport apiMiddleware from \"shared/store/api.middleware\";\n// import reduxLogger from \"redux-logger\";\nimport rootReducer from \"shared/store/reducers\";\n\nimport { combineReducers, compose } from \"redux\";\nimport { connectRouter } from \"connected-react-router\";\n\nconst composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\n\n\nexport const history = createBrowserHistory({\n basename: process.env.PUBLIC_URL || \"/\",\n});\n\n// const webRootReducer = history =>\n// combineReducers({\n// router: connectRouter(history),\n// rootReducer\n// });\n\nconst persistConfig = {\n key: \"root\",\n storage,\n whitelist: [\"authReducer\", \"newinvestor\"]\n};\n\nconst persistedReducer = persistReducer(\n persistConfig,\n rootReducer(connectRouter(history))\n // webRootReducer(history) // root reducer with router state\n);\nconst store = createStore(\n persistedReducer,\n composeEnhancers(applyMiddleware(thunk, apiMiddleware, routerMiddleware(history)))\n);\n\nexport const persistor = persistStore(store);\nexport default store;\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { BUILD_URL } from \"../home\";\n\nexport default class Amc extends Component {\n render() {\n return (\n
\n
AMCs
\n \n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n
\n \n );\n }\n}\n\nexport class AMCS extends Component {\n render() {\n return (\n \n \n
{this.props.name}
\n
{this.props.aum}
\n \n );\n }\n}\n","import React, { Component } from \"react\";\n\nexport default class TabHeader extends Component {\n render() {\n return (\n \n {this.props.value}\n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport TabHeader from \"../../forms/tabHeader\";\nimport { GRAPH, TABLE } from \"shared/store/types\";\nimport Table from \"@material-ui/core/Table\";\nimport TableBody from \"@material-ui/core/TableBody\";\nimport TableCell from \"@material-ui/core/TableCell\";\nimport TableHead from \"@material-ui/core/TableHead\";\nimport TableRow from \"@material-ui/core/TableRow\";\nimport { connect } from \"react-redux\";\nimport {\n AreaChart,\n Area,\n XAxis,\n YAxis,\n CartesianGrid,\n Tooltip\n} from \"recharts\";\nimport moment from \"moment\";\n\nclass NavData extends Component {\n constructor(props) {\n super(props);\n this.state = {\n active: GRAPH\n };\n }\n\n onClick = (type) => () => {\n const { active } = this.state;\n if (type !== active) {\n this.setState({\n active: type,\n });\n }\n };\n sortArrayByDateDescending=(data)=> {\n return data.sort((a, b) => {\n const dateA = new Date(a.fn_fromdt.split('/').reverse().join('/'));\n const dateB = new Date(b.fn_fromdt.split('/').reverse().join('/'));\n return dateB - dateA;\n });\n }\n render() {\n const { navData } = this.props;\n const navSortData = navData.sort(function(a, b) {\n var xDate = a.fn_fromdt.split(\"/\")[2]\n var yDate = b.fn_fromdt.split(\"/\")[2]\n var keyA = parseFloat(xDate),\n keyB = parseFloat(yDate);\n return keyA - keyB;\n\n });\n const graphData = navSortData.map(item => ({\n name: moment(item.fn_fromdt, \"DD/MM/YYYY\").format(\"DD MMM YYYY\"),\n value: item.fn_nav\n }));\n const range = navData.map(item => item.fn_nav);\n const min = Math.min.apply(null, range);\n const max = Math.max.apply(null, range);\n const sortedData = this.sortArrayByDateDescending(navData);\n return (\n
\n \n \n\n \n
\n {!!navData.length ? (\n \n {this.state.active === GRAPH ? (\n
\n \n \n \n \n \n \n \n }\n />\n \n \n \n \n \n
\n ) : (\n
\n \n \n \n \n Date\n \n \n Nav (₹)\n \n \n \n \n {sortedData.map((item, index) => (\n \n \n {item.fn_fromdt}\n \n\n \n {item.fn_nav}\n \n \n ))}\n \n
\n
\n )}\n
\n ) : (\n \n Please fill all the details to display {this.state.active===GRAPH ?\"NAV Graph\":\"NAV Table\"}\n \n )}\n \n );\n }\n}\n\nexport default connect(({ transactionHistory }) => {\n const { navData } = transactionHistory;\n return { navData };\n})(NavData);\n\nclass CustomizedAxisTick extends Component {\n render() {\n const { x, y, payload } = this.props;\n\n return (\n \n \n {payload.value}\n \n \n );\n }\n}\n","export function sendNotification(message) {\n _provider.showNotification(message);\n}\nexport class DefaultProvider {\n showNotification(message) {\n console.log(message);\n }\n}\nlet _provider = new DefaultProvider();\nexport function init(provider) {\n _provider = provider;\n}","import { CALL_API } from \"../api.middleware\";\nimport { USER_LOGIN, USER_LOGIN_SUCCESS, USER_LOGIN_FAILED, USER_LOGOUT, LOCAL_AUTHENTICATION_SUCCESS, SKIP_LOCAL_AUTHENTICATION_SUCCESS, LOCAL_AUTH_USERNAME_SUCCESS, LOCAL_AUTH_PASSWORD_SUCCESS, FIRST_TIME_INSTALLATION_SUCCESS, USER_LOGIN_REFRESH_SUCCESS, REMEMBER_ME, AUTO_SELECT, USER_PAN, POSTER_OPEN } from \"../types/auth\";\nimport { sendNotification } from \"../../components/utils\";\nexport const PosterOpen = function (value) {\n return {\n type: POSTER_OPEN,\n body: value\n };\n};\nexport const userLogin = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/login\",\n body,\n method: \"POST\",\n types: [USER_LOGIN, USER_LOGIN_SUCCESS, USER_LOGIN_FAILED],\n isLogin: true\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const refreshToken = function () {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/refresh_token\",\n method: \"GET\",\n types: [\"\", USER_LOGIN_REFRESH_SUCCESS]\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\n// export const userLogin = (params) => async (dispatch) => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: \"/GetUserLoginnew_v17\",\n// params,\n// method: \"GET\",\n// showLoader: true,\n// types: [USER_LOGIN, USER_LOGIN_SUCCESS, USER_LOGIN_FAILED],\n// },\n// });\n// } catch (error) {\n// return { error };\n// }\n// };\n\nexport const forgotUserId = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetForgotUsername\",\n params,\n method: \"GET\",\n isAuth: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const generateOtp = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/generate-signupotp\",\n body,\n method: \"POST\",\n isAuth: true\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const registration = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/validate-signupotp\",\n body,\n method: \"POST\",\n isAuth: true\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const reGenerateOtp = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/regenerate-signupotp\",\n body,\n method: \"POST\",\n isAuth: true\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const forgotPassword = function (params) {\n return async function (dispatch) {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetForgotPassword\",\n params,\n method: \"GET\",\n showLoader: true,\n isForgot: true\n }\n });\n };\n};\nexport const validateOtp = function (body) {\n return async function (dispatch) {\n return await dispatch({\n [CALL_API]: {\n url: \"/validate-otp\",\n body,\n method: \"POST\",\n showLoader: true,\n isForgot: true\n }\n });\n };\n};\nexport const resetPassword = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ResetPassword\",\n params,\n method: \"GET\",\n showLoader: true,\n isForgot: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const userLogout = function () {\n return {\n type: USER_LOGOUT\n };\n};\nexport const saveLocalAutentication = function (authID) {\n return {\n type: LOCAL_AUTHENTICATION_SUCCESS,\n authID\n };\n};\nexport const skipLocalAutentication = function (skipAuth) {\n return {\n type: SKIP_LOCAL_AUTHENTICATION_SUCCESS,\n skipAuth\n };\n};\nexport const saveLocalAuthUserName = function (userName) {\n return {\n type: LOCAL_AUTH_USERNAME_SUCCESS,\n userName\n };\n};\nexport const saveLocalAuthPassword = function (password) {\n return {\n type: LOCAL_AUTH_PASSWORD_SUCCESS,\n password\n };\n};\nexport const remberME = function (value) {\n return {\n type: REMEMBER_ME,\n value: value\n };\n};\nexport const saveFirstTimeInstallationKey = function (installed) {\n return {\n type: FIRST_TIME_INSTALLATION_SUCCESS,\n installed\n };\n};\nexport const AutoSelectObject = function (body) {\n return {\n type: AUTO_SELECT,\n body: body\n };\n};\nexport const userPan = function (Pan) {\n return {\n type: USER_PAN,\n body: Pan\n };\n};","import { CALL_API } from \"../api.middleware\";\nimport { GET_DASHBOARD_DATA, GET_DASHBOARD_DATA_SUCCESS, GET_DASHBOARD_DATA_FAILED, GET_TRANSACTION_DATA, GET_TRANSACTION_DATA_SUCCESS, GET_TRANSACTION_DATA_FAILED, GET_AUM_DATA, GET_AUM_DATA_SUCCESS, GET_AUM_DATA_FAILED, GET_FREQUENT_MAIL_BACK_REQUEST, GET_FREQUENT_MAIL_BACK_REQUEST_FAILED, GET_FREQUENT_MAIL_BACK_REQUEST_SUCCESS, GET_DASHBOARD_AUM_DATA, GET_DASHBOARD_AUM_DATA_SUCCESS, GET_DASHBOARD_AUM_DATA_FAILED, GET_SIP_SUMMARY_DATA, GET_SIP_SUMMARY_DATA_SUCCESS, GET_SIP_SUMMARY_DATA_FAILED, GET_NFO_SCHEMES, GET_NFO_SCHEMES_SUCCESS, GET_NFO_SCHEMES_FAILED, REMOVE_NFO_SCHEMES, GET_DOMAIN, GET_DOMAIN_SUCCESS, GET_DOMAIN_FAILED, GET_DASHBOARD_NEWINVESTOR_DATA, GET_DASHBOARD_NEWINVESTOR_DATA_SUCCESS, GET_DASHBOARD_NEWINVESTOR_DATA_FAILED } from \"../types\";\nexport const getDashboardData = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Dist_Dashboard\",\n params,\n method: \"GET\",\n types: [GET_DASHBOARD_DATA, GET_DASHBOARD_DATA_SUCCESS, GET_DASHBOARD_DATA_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getTransactionData = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_Dist_DetailedTransaction\",\n params,\n method: \"GET\",\n types: [GET_TRANSACTION_DATA, GET_TRANSACTION_DATA_SUCCESS, GET_TRANSACTION_DATA_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getAumData = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetDistributorAUM\",\n params,\n method: \"GET\",\n types: [GET_AUM_DATA, GET_AUM_DATA_SUCCESS, GET_AUM_DATA_FAILED]\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getFrequentMailBackRequest = function () {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ktrack_frequent_mailback_request\",\n method: \"GET\",\n types: [GET_FREQUENT_MAIL_BACK_REQUEST_SUCCESS, GET_FREQUENT_MAIL_BACK_REQUEST, GET_FREQUENT_MAIL_BACK_REQUEST_FAILED]\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getDashboardDataAum = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/KtrackDistAumSummary\",\n params,\n method: \"GET\",\n types: [GET_DASHBOARD_AUM_DATA, GET_DASHBOARD_AUM_DATA_SUCCESS, GET_DASHBOARD_AUM_DATA_FAILED]\n // showLoader:\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getSipSummary = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ktrackGetSipAum\",\n params,\n method: \"GET\",\n types: [GET_SIP_SUMMARY_DATA, GET_SIP_SUMMARY_DATA_SUCCESS, GET_SIP_SUMMARY_DATA_FAILED]\n // showLoader: true,\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getNfoSchemes = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetNFOSchemes\",\n params,\n method: \"GET\",\n types: [GET_NFO_SCHEMES, GET_NFO_SCHEMES_SUCCESS, GET_NFO_SCHEMES_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const NfoSchemesSubmission = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SendNFOLink\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const removeNfoSchemes = function () {\n return {\n type: REMOVE_NFO_SCHEMES\n };\n};\nexport const getDomains = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/ktrack_APT_GET_EmailDomainList`,\n params,\n types: [GET_DOMAIN, GET_DOMAIN_SUCCESS, GET_DOMAIN_FAILED],\n method: \"GET\"\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};","import { CALL_API } from \"../api.middleware\";\nimport { GET_INVESTORS_LIST, GET_INVESTORS_LIST_SUCCESS, GET_INVESTORS_LIST_FAILED, GET_INVESTOR_DETAILS, GET_INVESTOR_DETAILS_SUCCESS, GET_INVESTOR_DETAILS_FAILED, FAVOURITE_INVESTOR_SUCCESS, SEARCH_INVESTORS, REMOVE_SEARCH_INVESTOR_LIST, SEARCH_INVESTORS_SUCCESS, SEARCH_INVESTORS_FAILED, SEARCH_SCHEME_INVESTORS, SEARCH_SCHEME_INVESTORS_SUCCESS, SEARCH_SCHEME_INVESTORS_FAILED, VALIDATE_SUB_BROKER, VALIDATE_SUB_BROKER_SUCCESS, VALIDATE_SUB_BROKER_FAILED, GET_UPCOMING_SIP_DETAILS, GET_UPCOMING_SIP_DETAILS_FAILED, GET_UPCOMING_SIP_DETAILS_SUCCESS, GET_FOLIOS_CANCELLATION, GET_FOLIOS_CANCELLATION_FAILED, GET_FOLIOS_CANCELLATION_SUCCESS, STORE_TYPE, SUBMIT_GET_FOLIOS_CANCELLATION, SUBMIT_GET_FOLIOS_CANCELLATION_SUCCESS, SUBMIT_GET_FOLIOS_CANCELLATION_FAILED, SEND_MAIL_KYC, SEND_MAIL_KYC_SUCCESS, SEND_MAIL_KYC_FAILED, PAUSE_SIP_DATES, PAUSE_SIP_DATES_SUCCESS, PAUSE_SIP_DATES_FAILED, PAUSE_END_SIP_DATES, PAUSE_END_SIP_DATES_SUCCESS, PAUSE_END_SIP_DATES_FAILED, PAUSE_SIP_VALIDATOR, PAUSE_SIP_VALIDATOR_SUCCESS, PAUSE_SIP_VALIDATOR_FAILED, FINAL_SIP_PAUSE, FINAL_SIP_PAUSE_SUCCESS, FINAL_SIP_PAUSE_FAILED, SUBMIT_GET_STP_FOLIOS_CANCELLATION, SUBMIT_GET__STP_FOLIOS_CANCELLATION_SUCCESS, SUBMIT_GET_STP_FOLIOS_CANCELLATION_FAILED, STORE_FUND_STATE, STORE_KYC_DATA, STORE_CURRENTPAGE } from \"../types/investors\";\nexport const getInvestors = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Dist_AllClientDetails\",\n params,\n method: \"GET\",\n types: [GET_INVESTORS_LIST, GET_INVESTORS_LIST_SUCCESS, GET_INVESTORS_LIST_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getInvestorDetails = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetDistributorDetailsbyPAN\",\n params,\n method: \"GET\",\n types: [GET_INVESTOR_DETAILS, GET_INVESTOR_DETAILS_SUCCESS, GET_INVESTOR_DETAILS_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const favouriteInvestor = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/DistSavefavourite\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const updateFavouriteInvestor = function (data) {\n return {\n type: FAVOURITE_INVESTOR_SUCCESS,\n data\n };\n};\nexport const searchInvestors = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/InvestorSearch\",\n params,\n method: \"GET\",\n types: [SEARCH_INVESTORS, SEARCH_INVESTORS_SUCCESS, SEARCH_INVESTORS_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const schemeSearch = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Dist_SchemeSearch\",\n params,\n method: \"GET\",\n types: [SEARCH_SCHEME_INVESTORS, SEARCH_SCHEME_INVESTORS_SUCCESS, SEARCH_SCHEME_INVESTORS_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const RemoveSearchInvestors = function () {\n return {\n type: REMOVE_SEARCH_INVESTOR_LIST\n };\n};\nexport const getNewPurchaseFundList = function (params, types) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/getMasterNewpur\",\n params,\n method: \"GET\",\n types,\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const validateSubBroker = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ValidateBrokercode\",\n params,\n method: \"GET\",\n types: [VALIDATE_SUB_BROKER, VALIDATE_SUB_BROKER_SUCCESS, VALIDATE_SUB_BROKER_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const checkKyc = function (params) {\n let showLoader = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/dist_ChkpanexistsinKRA\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getUpComingSips = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetSipFundDetails\",\n params,\n method: \"GET\",\n types: [GET_UPCOMING_SIP_DETAILS, GET_UPCOMING_SIP_DETAILS_SUCCESS, GET_UPCOMING_SIP_DETAILS_FAILED]\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getFolioSipCancellation = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetFoliosForSIPCancelation\",\n params,\n method: \"GET\",\n types: [GET_FOLIOS_CANCELLATION, GET_FOLIOS_CANCELLATION_SUCCESS, GET_FOLIOS_CANCELLATION_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const submitSipCancellation = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_Dist_SipCancellation\",\n params,\n method: \"GET\",\n types: [SUBMIT_GET_FOLIOS_CANCELLATION, SUBMIT_GET_FOLIOS_CANCELLATION_SUCCESS, SUBMIT_GET_FOLIOS_CANCELLATION_FAILED]\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const submitSTPCancellation = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SIPCancelSave\",\n params,\n method: \"GET\",\n types: [SUBMIT_GET_STP_FOLIOS_CANCELLATION, SUBMIT_GET__STP_FOLIOS_CANCELLATION_SUCCESS, SUBMIT_GET_STP_FOLIOS_CANCELLATION_FAILED]\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\n\n// export const storeType = (selectedTab) => {\n// return {\n// type: STORE_TYPE,\n// body: { selectedTab },\n// };\n// };\n\nexport const EKYCMail = function (params, addedparams) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Send_eKYCMail\",\n ikyc: true,\n params: params,\n addedparams: addedparams,\n method: \"GET\",\n types: [SEND_MAIL_KYC, SEND_MAIL_KYC_SUCCESS, SEND_MAIL_KYC_FAILED]\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const sipPauseDateCalculate = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetSIPPauseDate\",\n params,\n method: \"GET\",\n types: [PAUSE_SIP_DATES, PAUSE_SIP_DATES_SUCCESS, PAUSE_SIP_DATES_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const sipPauseEndDateCalculate = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/PauseSIPEnddateDecider\",\n params,\n method: \"GET\",\n types: [PAUSE_END_SIP_DATES, PAUSE_END_SIP_DATES_SUCCESS, PAUSE_END_SIP_DATES_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const sipPauseValidator = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SIPPauseVAlidation\",\n params,\n method: \"GET\",\n types: [PAUSE_SIP_VALIDATOR, PAUSE_SIP_VALIDATOR_SUCCESS, PAUSE_SIP_VALIDATOR_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const finalSipPause = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SIPPause\",\n params,\n method: \"GET\",\n types: [FINAL_SIP_PAUSE, FINAL_SIP_PAUSE_SUCCESS, FINAL_SIP_PAUSE_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const storeType = function (selectedTab) {\n return {\n type: STORE_TYPE,\n body: {\n selectedTab\n }\n };\n};\nexport const storeCurrentPage = function (body) {\n return {\n type: STORE_CURRENTPAGE,\n body\n };\n};\nexport const latestYield = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/PortfolioInvestmentDetails\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const downloadInvestorProfile = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetAccountStatement_ByACno\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const ditSchemeDetails = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetDitSchemeDetails\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const storeFundState = function (body) {\n return {\n type: STORE_FUND_STATE,\n body\n };\n};\nexport const storeKYCData = function (body) {\n return {\n type: STORE_KYC_DATA,\n body\n };\n};\nexport const getCancellationReason = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetCancellationReason\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};","import { CALL_API } from \"../api.middleware\";\nimport { SHOW_PURCHASE_CONFIRMATION, SHOW_PURCHASE_CONFIRMATION_SUCCESS, SHOW_PURCHASE_CONFIRMATION_FAILED, CONFIRM_PURCHASE, CONFIRM_PURCHASE_SUCCESS, CONFIRM_PURCHASE_FAILED, SET_SIP_DETAILS, SIP_SAVE_DATA, SIP_SAVE_DATA_SUCCESS, SIP_SAVE_DATA_FAILED, SET_SWITCH_DETAILS, SET_STP_DETAILS, GET_EARNINGS, GET_EARNINGS_SUCCESS, GET_EARNINGS_FAILED, RE_INITIATE_TRANSACTION, RE_INITIATE_SUCCESS, RE_INITIATE_FAILED, GET_DASHBOARD_SIP, GET_DASHBOARD_SIP_SUCCESS, GET_DASHBOARD_SIP_FAILED, GET_DASHBOARD_FMP, GET_DASHBOARD_FMP_SUCCESS, GET_DASHBOARD_FMP_FAILED, SAVE_TRANSACTION_DETAILS } from \"../types\";\nexport const submitPurchaseData = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SentpurchasemailRed\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n alert(error);\n }\n };\n};\nexport const getSIPTenures = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/FreedomSIPTenure\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n alert(error);\n }\n };\n};\nexport const showPurchaseConfirmation = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ShowpurchaseconfirmationData\",\n params,\n method: \"GET\",\n types: [SHOW_PURCHASE_CONFIRMATION, SHOW_PURCHASE_CONFIRMATION_SUCCESS, SHOW_PURCHASE_CONFIRMATION_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const saveSipData = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SIPSave\",\n params,\n method: \"GET\",\n types: [SIP_SAVE_DATA, SIP_SAVE_DATA_SUCCESS, SIP_SAVE_DATA_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const confirmPurchase = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SaveDTRWeb\",\n params,\n method: \"GET\",\n types: [CONFIRM_PURCHASE, CONFIRM_PURCHASE_SUCCESS, CONFIRM_PURCHASE_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getAssetClasses = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetAssetclass\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getCheckPanKotm = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/CheckPANKotm\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const getCheckPanAotm = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/CheckPANAotm\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const getOtherSchemes = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/getOtherSchemesSwitch\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getBankDetails = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetRedemptionBankDeatils\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getRedemptionPaymentDetails = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/exitloadcalc\",\n params,\n method: \"GET\",\n showLoader: true,\n types: [SHOW_PURCHASE_CONFIRMATION, SHOW_PURCHASE_CONFIRMATION_SUCCESS, SHOW_PURCHASE_CONFIRMATION_FAILED]\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const redemptionConfirm = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Savetransaction_red\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const swpOptions = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/getMasterSIP\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const CalcSIPEnddt = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/CalcSIPEnddt\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n // const Eerror = error[0].replace(\"Error:\", \"\");\n alert(error);\n }\n };\n};\nexport const swpConfirm = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SWPDetailsSave_WEB\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const stpConfirm = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SaveSTPconfirmationWeb\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const physicalTransaction = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"\",\n body,\n method: \"POST\",\n isFile: true,\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const setSipDetails = function (data) {\n return {\n type: SET_SIP_DETAILS,\n body: data\n };\n};\nexport const setSwitchDetails = function (data) {\n return {\n type: SET_SWITCH_DETAILS,\n body: data\n };\n};\nexport const setStpDetails = function (data) {\n return {\n type: SET_STP_DETAILS,\n body: data\n };\n};\nexport const getFundWiseEarnings = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/GetBrokerageDetails`,\n params,\n method: \"GET\",\n types: [GET_EARNINGS, GET_EARNINGS_SUCCESS, GET_EARNINGS_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getMinimumAmount = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/Ktrack_GetMinAmt`,\n params,\n method: \"GET\"\n // types: [GET_EARNINGS, GET_EARNINGS_SUCCESS, GET_EARNINGS_FAILED],\n // showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getEnach = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/enachregdbilldesk`,\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getNctType = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/GetNCTKtrackgo`,\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const getNctSave = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: ``,\n body,\n method: \"POST\",\n isNct: true,\n showLoader: true\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const reInitiateTransaction = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_ReinitiateTransaction\",\n params,\n method: \"GET\",\n types: [RE_INITIATE_TRANSACTION, RE_INITIATE_SUCCESS, RE_INITIATE_FAILED]\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const getSIPTransactions = function (params) {\n return async function (dispatch, getState) {\n try {\n const {\n authReducer\n } = getState() || {};\n const arncode = authReducer && authReducer.token;\n params = {\n ...params,\n arncode\n };\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_DistDashboard_Sip\",\n params,\n method: \"GET\",\n types: [GET_DASHBOARD_SIP, GET_DASHBOARD_SIP_SUCCESS, GET_DASHBOARD_SIP_FAILED]\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const showPurchaseConfirmationReinitiate = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ShowpurchaseconfirmationData_reinitiate\",\n params,\n method: \"GET\",\n types: [SHOW_PURCHASE_CONFIRMATION, SHOW_PURCHASE_CONFIRMATION_SUCCESS, SHOW_PURCHASE_CONFIRMATION_FAILED]\n }\n });\n } catch (error) {\n console.log(\"error\", error);\n alert(`${error}`);\n }\n };\n};\nexport const getSipvalues = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_Dist_Dashboard_DIT_SIP_active_inactive\",\n params,\n method: \"GET\",\n types: [GET_DASHBOARD_SIP, GET_DASHBOARD_SIP_SUCCESS, GET_DASHBOARD_SIP_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const getFMPdata = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ktrack_get_FMPaum\",\n params,\n method: \"GET\",\n types: [GET_DASHBOARD_FMP, GET_DASHBOARD_FMP_SUCCESS, GET_DASHBOARD_FMP_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const checkPAN = function (payload) {\n return async function (dispatch) {\n try {\n const requestBody = {\n Pan: payload.pan,\n PanName: payload.PanName,\n PanDOB: payload.PanDOB,\n JH1_PAN: payload.jointHolder1Pan,\n JH1_PanDOB: payload.jointHolder1PanDOB,\n JH1_PanName: payload.jointHolder1PanName,\n JH2_PAN: payload.jointHolder2Pan,\n JH2_PanDOB: payload.jointHolder2PanDOB,\n JH2_PanName: payload.jointHolder2PanName,\n G_Pan: payload.guardianPan,\n G_PanName: payload.guardianPanName,\n G_PanDOB: payload.guardianPanDOB,\n TrxnType: \"New\",\n Acno: 0,\n Branch: \"WB99\",\n Fund: \"176\",\n invStatus: payload.invStatus,\n JH1_invStatus: payload.JH1_invStatus,\n JH2_invStatus: payload.JH2_invStatus\n };\n const response = await dispatch({\n [CALL_API]: {\n url: \"/Wrappermethod\",\n showLoader: true,\n params: requestBody,\n enableFixture: false,\n json: \"panValidation.json\",\n skipEncode: true\n }\n });\n const {\n DtData = []\n } = response;\n const [panAadhaaarResponse = {}] = DtData;\n return panAadhaaarResponse;\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const saveTransactionDetails = function (body) {\n return {\n type: SAVE_TRANSACTION_DETAILS,\n body\n };\n};","import { CALL_API } from \"../api.middleware\";\nimport { GET_FUNDS_LIST_PAN, GET_FUNDS_LIST_PAN_SUCCESS, GET_FUNDS_LIST_PAN_FAILED, GET_TRANSACTION_HISTORY, GET_TRANSACTION_HISTORY_SUCCESS, GET_TRANSACTION_HISTORY_FAILED, GET_NAV_DATA, GET_NAV_DATA_SUCCESS, GET_NAV_DATA_FAILED, REMOVE_NAV_DATA, REMOVE_TRANSACTION_HISTORY_DATA } from \"../types\";\nexport const getFundsByPan = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetFundslistByPAN\",\n params,\n types: [GET_FUNDS_LIST_PAN, GET_FUNDS_LIST_PAN_SUCCESS, GET_FUNDS_LIST_PAN_FAILED],\n showLoader: true,\n method: \"GET\"\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getTransactionHistory = function (params) {\n return async function (dispatch) {\n try {\n await dispatch({\n [CALL_API]: {\n url: \"/GetTrxnDatabyFund\",\n params,\n types: [GET_TRANSACTION_HISTORY, GET_TRANSACTION_HISTORY_SUCCESS, GET_TRANSACTION_HISTORY_FAILED],\n showLoader: true,\n method: \"GET\"\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getNavData = function (params) {\n return async function (dispatch) {\n try {\n await dispatch({\n [CALL_API]: {\n url: \"/GetNAVGraph\",\n params,\n method: \"GET\",\n types: [GET_NAV_DATA, GET_NAV_DATA_SUCCESS, GET_NAV_DATA_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const removeNavData = function () {\n return {\n type: REMOVE_NAV_DATA\n };\n};\nexport const getTrackDetails = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/TrackTransactionDetails\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const RemoveTransactionData = function () {\n return {\n type: REMOVE_TRANSACTION_HISTORY_DATA\n };\n};","import { CALL_API } from \"../api.middleware\";\nimport { GET_DIST_POST_QUERY_DATA, GET_DIST_POST_QUERY_DATA_SUCCESS, GET_DIST_POST_QUERY_DATA_FAILED } from \"../types/support\";\nexport const getDistPostQuery = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetDistPostQryData\",\n params,\n method: \"GET\",\n types: [GET_DIST_POST_QUERY_DATA, GET_DIST_POST_QUERY_DATA_SUCCESS, GET_DIST_POST_QUERY_DATA_FAILED]\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getComplaint = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n isTrackApi: true,\n url: \"/GetComplaint\",\n body,\n method: \"POST\"\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};","import { CALL_API } from \"../api.middleware\";\nimport { STORE_FATCA_DETAILS, STORE_NOMINEE_DETAILS, STORE_NONOMINEE_DETAILS, STORE_BANK_DETAILS, STORE_SCHEME_DETAILS_CLICK, STORE_SCHEME_DETAILS_SCHEME, STORE_INVESTMENT_DETAILS, STORE_SCHEME_DETAILS, STORE_APPLICANT_PARAMS, STORE_INVESTMENT_PARAMS, STORE_SCHEME_PARAMS, GET_NOMINEE_DETAILS, GET_NOMINEE_DETAILS_SUCESS, GET_NOMINEE_DEATILS_FAILED, STORE_PAN, STORE_LUMPSUM, STORE_ADDRESS_SUCCESS, CLEARING_FIRST_TIME_INVETOR_JOURNEY_SUCCESS, GET_BANK_DETAILS, GET_BANK_DETAILS_SUCCESS, GET_BANK_DETAILS_FAILED, STORE_LUMPSUM_DETAILS, STORE_SIP_DETAILS, CHANGE_IN_MODE, STORE_SIP } from \"../types/newinvestor\";\nexport const getBankList = function () {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_GetBanks\",\n method: \"GET\"\n }\n });\n } catch (error) {\n console.log({\n error\n });\n }\n };\n};\nexport const validatePennyDrop = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ValidatePennyDrop\",\n method: \"GET\",\n params\n }\n });\n } catch (error) {\n console.log({\n error\n });\n }\n };\n};\nexport const getRelationShipList = function () {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/getmasternewpur\",\n method: \"GET\",\n params: {\n opt: \"nrn\"\n }\n }\n });\n } catch (error) {\n console.log({\n error\n });\n }\n };\n};\nexport const getNomineeDetails = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ktrack_GetDIT_NomineeDetails\",\n params,\n types: [GET_NOMINEE_DETAILS, GET_NOMINEE_DETAILS_SUCESS, GET_NOMINEE_DEATILS_FAILED],\n method: \"GET\"\n }\n });\n } catch (error) {\n console.error(error);\n }\n };\n};\nexport const NewinvestorBankDetails = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ktrack_GetDIT_BankDetails\",\n params,\n method: \"GET\",\n types: [GET_BANK_DETAILS, GET_BANK_DETAILS_SUCCESS, GET_BANK_DETAILS_FAILED]\n }\n });\n } catch (error) {\n console.error(error);\n }\n };\n};\nexport const getNav = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/getNavData\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n console.error(error);\n }\n };\n};\nexport const getStatesList = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_GetStates\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n console.error(error);\n throw error;\n }\n };\n};\nexport const getCountriesList = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_GetCountries\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n console.error(error);\n throw error;\n }\n };\n};\nexport const getBankDetails = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n params,\n url: \"/getBankdetailsByIFSC\",\n method: \"GET\"\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const getCitiesList = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_Getcitybtstate\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n console.error(error);\n }\n };\n};\nexport const submitSipDetails = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/new_investor_sip_submit\",\n body,\n method: \"POST\",\n showLoader: true,\n new_investor: true\n }\n });\n } catch (error) {\n alert(error);\n }\n };\n};\nexport const submitLumpsumDetails = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/new_investor_lumpsum_submit\",\n body,\n method: \"POST\",\n showLoader: true,\n new_investor: true\n }\n });\n } catch (error) {\n alert(error);\n }\n };\n};\nexport const getAccountTypes = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetMasterNewpur_All\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n console.error(error);\n }\n };\n};\nexport const getKycDetails = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_GetKYCaddress\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n console.error(error);\n }\n };\n};\nexport const bankAccountTypes = function () {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/ktrack_Dist_Getbankaccounttypes\",\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n console.error(error);\n }\n };\n};\nexport const storeFatcaDetails = function (body) {\n return {\n type: STORE_FATCA_DETAILS,\n body\n };\n};\nexport const storeNomineeDetails = function (body) {\n return {\n type: STORE_NOMINEE_DETAILS,\n body\n };\n};\nexport const storeNonomineeDetails = function (body) {\n return {\n type: STORE_NONOMINEE_DETAILS,\n body\n };\n};\nexport const storeBankClick = function (body) {\n return {\n type: STORE_BANK_DETAILS,\n body\n };\n};\nexport const storeSchemeDetailsClick = function (body) {\n return {\n type: STORE_SCHEME_DETAILS_CLICK,\n body\n };\n};\nexport const storeSchemeDetailsScheme = function (body) {\n return {\n type: STORE_SCHEME_DETAILS_SCHEME,\n body\n };\n};\nexport const storeInvestmentDetails = function (body) {\n return {\n type: STORE_INVESTMENT_DETAILS,\n body\n };\n};\nexport const storeSchemeDetails = function (body) {\n return {\n type: STORE_SCHEME_DETAILS,\n body\n };\n};\nexport const storeSchemeParams = function (body) {\n return {\n type: STORE_SCHEME_PARAMS,\n body\n };\n};\nexport const storeApplicantParams = function (body) {\n return {\n type: STORE_APPLICANT_PARAMS,\n body\n };\n};\nexport const storeInvestmentParams = function (body) {\n return {\n type: STORE_INVESTMENT_PARAMS,\n body\n };\n};\nexport const storeAddress = function (body) {\n return {\n type: STORE_ADDRESS_SUCCESS,\n body\n };\n};\nexport const storePan = function (body) {\n return {\n type: STORE_PAN,\n body\n };\n};\nexport const storeLumpsum = function (body) {\n return {\n type: STORE_LUMPSUM,\n body\n };\n};\nexport const storeSip = function (body) {\n return {\n type: STORE_SIP,\n body\n };\n};\nexport const changeInMode = function (body) {\n return {\n type: CHANGE_IN_MODE,\n body\n };\n};\nexport const storeLumpsumDetails = function (body) {\n return {\n type: STORE_LUMPSUM_DETAILS,\n body\n };\n};\nexport const storeSipDetails = function (body) {\n return {\n type: STORE_SIP_DETAILS,\n body\n };\n};\nexport const clearingFirstTimeInvestorJourney = function (body) {\n return {\n type: CLEARING_FIRST_TIME_INVETOR_JOURNEY_SUCCESS,\n body\n };\n};","// import { rtaNames } from '../../components/common/FatcaCheck.types';\n// import { SignupPayload } from './login';\n\nexport const FETCH_PORTFOLIOS = 'FETCH_PORTFOLIOS';\nexport const FETCH_PORTFOLIOS_SUCCESS = 'FETCH_PORTFOLIOS_SUCCESS';\nexport const GET_AMC_DETIALS = 'GET_AMC_DETIALS';\nexport const GET_KYC_VERIFIED = 'GET_KYC_VERIFIED';\nexport const GET_KYC_VERIFIED_SUCCESS = 'GET_KYC_VERIFIED_SUCCESS';\nexport const GET_KYC_VERIFIED_FAILED = 'GET_KYC_VERIFIED_FAILED';\nexport const SET_KYC_REGISTRATION_POPUP = 'SET_KYC_REGISTRATION_POPUP';\nexport const GET_UNCLAIMED_PAYOUTS = 'GET_UNCLAIMED_PAYOUTS';\nexport const GET_UNCLAIMED_PAYOUTS_SUCCESS = 'GET_UNCLAIMED_PAYOUTS_SUCCESS';\nexport const GET_FATCA_STATUS_SUCCESS = 'GET_FATCA_STATUS_SUCCESS';\nexport const GET_FATCA_STATUS_FAILED = 'GET_FATCA_STATUS_FAILED';\nexport const GET_FATCA_STATUS = 'GET_FATCA_STATUS';\n\n// export interface LIST_PROTFOLIO_PAYLOAD extends SignupPayload {\n// reqId: string;\n// statementHoldingFilter?: string;\n// }\n\nexport const getAccountType = function (value) {\n switch (value) {\n case AccountTypes.SAVINGS:\n return 'SAVINGS';\n case AccountTypes.NRO:\n return 'NRO';\n default:\n return 'SAVINGS';\n }\n};","import React from \"react\";\nimport moment from \"moment\";\nexport const CommercialRootPath = \"/portal/commercial\";\nexport const EQUITY = \"Equity\";\nexport const LIQUID = \"Liquid\";\nexport const DEBT = \"Debt\";\nexport const OTHER = \"Other\";\nexport const UPDATE_NOMINEE = \"update_nominee\";\nexport const EIGHTEEN_YEARS_IN_MILLISECONDS = 18 * 31556926 * 1000; // 18 * no of seconds in a Year * 1000\nexport const TRANSACTION_RESOURCE_TYPES = [\"SoA Holdings\", \"Demat Holdings\"];\nexport const ALL_HOLDINGS = \"allHoldings\";\nexport const ZERO_HOLDINGS = \"zeroHoldings\";\nexport const NON_ZERO_HOLDINGS = \"nonZeroHoldings\";\nexport const REGISTER_WITH_MOBILE = \"MOBILE\";\nexport const REGISTER_WITH_EMAIL = \"EMAIL\";\nexport const UPDATE_EMAIL = \"update_email\";\nexport const addDialCode = (mobile = \"\") => {\n if (!mobile) {\n return mobile;\n }\n if (mobile.length === 13) return mobile;\n return `+91${mobile.slice(mobile.length - 10)}`;\n};\n\nexport const getDate = (value) => {\n if (!value) return value;\n return new Date(value);\n};\n\nexport const getDateString = (value) => {\n const d = new Date(value);\n if (!isNaN(d.getTime())) {\n d.setFullYear(Math.abs(d.getFullYear()));\n return moment(d).format(\"DD-MMM-YYYY\");\n } else {\n if (!value) return \"\";\n const today = moment(value);\n return today.format(\"DD-MMM-YYYY\");\n }\n // return '';\n};\nexport const validUploadFileSize = 2e6;\n\nexport const validUploadFileFormats = [\n \"application/pdf\",\n // \"image/jpeg\",\n // \"image/png\",\n // \"image/jpg\",\n];\nexport const OTP_ACTIONS = {\n register: \"REGISTER\",\n switch: \"SWITCH\",\n stp: \"STP_REGISTRATION\",\n PROSPECT_FOLIO_EMAIL: \"PROSPECT_FOLIO_EMAIL\",\n PROSPECT_FOLIO_MOBILE: \"PROSPECT_FOLIO_MOBILE\",\n swp: \"SWP_REGISTRATION\",\n sipPause: \"SIP_PAUSE_CANCEL\",\n otmCancel: \"OTM_CANCEL\",\n redeem: \"REDEMPTION\",\n forgot_password: \"FORGOT_PWD\",\n SECURITY_ANSWER: \"SECURITY_ANSWER\",\n additionalPurchase: \"ADDITIONAL_PURCHASE\",\n changeEmail: \"EMAIL_CHANGE\",\n changeUploadEmail: \"UPLOAD_EMAIL_CHANGE\",\n changeMobile: \"MOBILE_CHANGE\",\n newPurchase: \"FRESH_PURCHASE\",\n login: \"LOGIN\",\n otp_login: \"OTP_LOGIN\",\n changeTaxStatus: \"TAX_STATUS\",\n changeBank: \"BANK_ACCOUNT_TYPE_CHANGE\",\n consolidationFolios: \"FOLIO_CONSOLIDATION\",\n correctionFolios: \"DATA_ENTRY_ERROR\",\n updateNominee: \"NOMINEE_CHANGE\",\n changeDividend: \"DIV_OPTION_CHANGE\",\n PRELOGIN_UPDATE_PAN: \"PRELOGIN_UPDATE_PAN\",\n minorStatusChange: \"MINOR_TO_MAJOR\",\n changeifsc: \"BANK_ACCOUNT_TYPE_CHANGE\",\n updateMultipleBanks: \"MULTIPLE_BANK_MANDATE\",\n changeBankDetails: \"BANK_ACCOUNT_DETAIL_CHANGE\",\n FATCA_DECLARATION: \"FATCA_CHANGE\",\n FORM_15: \"UPDATE_FORM15_G_H\",\n CHANGE_PWD: \"CHANGE_PWD\",\n NEW_MOBILE_ONINE_OTP: \"NEW_MOBILE_CHANGE\",\n NEW_MOBILE_OFFLINE_OTP: \"UPLOAD_MOBILE_CHANGE\",\n UNREGISTERED_MOBILE_CHANGE: \"UNREGISTERED_MOBILE_CHANGE\",\n NEW_EMAIL_ONINE_OTP: \"NEW_EMAIL_CHANGE\",\n NEW_EMAIL_OFFLINE_OTP: \"UPLOAD_EMAIL_CHANGE\",\n UNREGISTERED_EMAIL_CHANGE: \"UNREGISTERED_EMAIL_CHANGE\",\n CHANGE_DISPLAY_NAME: \"CHANGE_DISPLAY_NAME\",\n TRANSMISSION_OF_UNITS: \"TRANSMISSION_OF_UNITS\",\n VERIFY_OTP_RESET_DEVICE: \"VERIFY_OTP_RESET_DEVICE\",\n RESET_DEVICE: \"RESET_DEVICE\",\n FRESH_PURCHASE_MOBILE: \"FRESH_PURCHASE_MOBILE\",\n FRESH_PURCHASE_EMAIL: \"FRESH_PURCHASE_EMAIL\",\n};\n\nexport const panRegex = /^[A-Z]{3}[P][A-Z][0-9]{4}[A-Z]{1}$/;\n\nexport const _minDateForCalender = () => {\n const date = new Date();\n date.setFullYear(date.getFullYear() - 100);\n return date;\n};\nexport const ifscRegex = /^[A-Za-z]{4}0[A-Z0-9a-z]{6}$/;\nexport const isAlphaNumeric = (value) => {\n if (/^[A-Za-z0-9 ]+$/.test(value) || !value) {\n return true;\n }\n return false;\n};\nexport const isAlphaNumericAddress = (value) => {\n if (/^[A-Za-z0-9,/\\\\\\- ]+$/.test(value) || !value) {\n return true;\n }\n return false;\n};\n\nexport const minDateForCalender = () => {\n const currentYear = new Date().getFullYear();\n const day = new Date().getDay();\n const month = new Date().getMonth();\n return moment(new Date(`${currentYear - 100}-${month + 1}-${day}`)).format(\n \"YYYY-MM-DD\"\n );\n};\n\nexport const DATA_ERROR = \"data_error\";\n\nexport const checkForOnlyAlphabets = (value) => {\n if (/^[A-Za-z ]+$/.test(value) || !value) {\n return true;\n }\n return false;\n};\nexport const MAX_LENGTH_FOR_PAN = 10;\nexport const MAX_LENGTH_FOR_NOMINEE_NAME = 60;\nexport const MAX_LENGTH_FOR_GUARDIAN_NAME = 120;\nexport const MAX_LENGTH_FOR_ADDRESS = 120;\nexport const accountNumberRegex = /^[0-9]{9,18}$/;\nexport const MaxAccountNumberLength = 19;\n\nexport const accountNumberValidation = (value) => {\n if (\n (/^\\d+$/.test(value) || !value) &&\n value.length < MaxAccountNumberLength\n ) {\n return true;\n }\n return false;\n};\n\nexport const ACCOUNT_TYPE_MASTER_DATA = [\"NRE\", \"NRO\", \"SAVINGS\"];\nexport const emailRegex =\n /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n\nexport const MODE_OF_HOLDING_MASTER_DATA = [\"Anyone/Survivor\", \"Single\"];\nexport const TAX_RESIDENCY_MASTER_DATA = [\"RI\", \"Individual\", \"Minor\"];\n\nexport const validateIfsc = (ifsc) => {\n if (!ifsc) return true;\n if (/^[A-Za-z0-9]+$/.test(ifsc) && ifsc.length < 12) {\n return true;\n }\n return false;\n};\n","const enUs = {\n login: {\n headerLinks: {\n link1: \"Quick Links\",\n link2: \"Sign In\",\n link3: \"Sign Up\",\n },\n switchActions: {\n loginWithPassword: \"Sign In Via Password\",\n loginWithOTP: \"Sign In Via OTP\",\n },\n form: {\n title1: \"Dear \",\n secondaryTitle: \"Investor\",\n titleCaption: \"Sign in to experience a wide range of services\",\n termstext: \"By using this site you agree to our \",\n termsLink: \"Terms & Conditions\",\n panOrPekrn: {\n label: \"Enter PAN / PEKRN\",\n validation: {\n emptyError: \"User id Required\",\n minLengthError: \"User id should be 10 digit unique alphanumeric \",\n },\n },\n password: {\n label: \"Enter Password\",\n validation: {\n emptyError: \"Password Required\",\n },\n },\n rememberMe: {\n label: \"Remember me\",\n },\n action: {\n button: {\n label: \"Sign In\",\n verifyOtp: \"Verify OTP\",\n },\n href: {\n forgotPassword: {\n label: \"Forgot Password?\",\n },\n },\n },\n answer: \"please enter your answer\",\n },\n quickLinks: {\n title: \"Quick \",\n secondaryTitle: \"Links\",\n easyAccess: \"Easy access for seamless experience\",\n transmission: {\n title: \"Transmission Request \",\n subtitle: \"Demise of secondary holder\",\n },\n pan: {\n title: \"Update PAN Details \",\n },\n applyPan: {\n title: \"Apply for PAN\",\n },\n explore: {\n title: \"Explore MF\",\n },\n },\n applyPan: {\n heading: \"Apply for PAN\",\n info: \"Please select any one gateway from the below options\",\n infoBottom:\n \"(Note: You will be re-directed to a new page outside MFCentral)\",\n clickHere: \" Click Here\",\n websiteInfo:\n \"For more information on PAN – Online application, please visit the Income Tax Website :\",\n },\n },\n footer: {\n copyRightText: \"© 2021 MFCentral. All rights reserved.\",\n actions: {\n termsOfUse: {\n title: \"Terms of Use\",\n },\n privacy: {\n title: \"Privacy Policy\",\n },\n termsOfBusiness: {\n title: \"Disclosures\",\n },\n },\n siteDeveloper: {\n title: \"Site designed by KFintech & CAMS\",\n },\n },\n signUp: {\n switchActions: {\n sigUpWithPAN: \"PAN\",\n sigUpWithPEKRN: \"PEKRN\",\n },\n signupText: \"Sign Up\",\n form: {\n title1: \"Welcome, \",\n secondaryTitle: \"Investor!\",\n titleCaption: \"Let’s get started! \",\n Disclamer: {\n disclamerText: \"Disclaimer - \",\n disclamerInfo: \"I have read and accept the Terms of use.\",\n },\n Policies: {\n title: \" I agree and accept the \",\n TandC: \"Terms & Conditions\",\n },\n pan: {\n label: \"Enter your PAN\",\n validations: {\n emptyError: \"PAN Required\",\n regexError: \"PAN Should be ten-digit unique alphanumeric number\",\n individualPan: \"Please enter individual pan number\",\n },\n },\n mobile: {\n label: \"Enter your registered mobile number\",\n validations: {\n emptyError: \"Mobile Number Required\",\n regexError: \"Enter a valid 10 digit mobile number\",\n },\n },\n email: {\n label: \"Enter your email\",\n validations: {\n emptyError: \"Email Required\",\n regexError: \"Enter a valid email\",\n },\n },\n pekrn: {\n label: \"Enter your PEKRN\",\n validations: {\n emptyError: \"PEKRN Required\",\n regexError: \"PEKRN length should be 9-12 characters\",\n },\n },\n action: {\n button: \"Create Account\",\n },\n TermsAndCond: {\n title1:\n \"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodoconsequat. Duis aute irure dolor in reprehenderit in voluptate velit essecillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum\",\n title2:\n \"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodoconsequat. Duis aute irure dolor in reprehenderit in voluptate velit essecillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum\",\n },\n },\n },\n dashboard: {\n notAvailable: \"Not Available\",\n notifications: {\n notificationsTxt: \"Notifications\",\n clearAll: \"Clear All\",\n noNotifications: \"No New Notifications\",\n },\n dashboardLeft: {\n link1: \"Home\",\n link2: \"Portfolio\",\n link3: \"Service Requests\",\n link4: \"Track Status\",\n link5: \"Unclaimed Payouts\",\n link6: \"CAS\",\n invest: \"Transact\",\n },\n dashboardHome: {\n welcome: {\n welcome: \"Welcome, \",\n username: \"Neha Sagar!\",\n info: \"Explore our exciting range of services\",\n notificationinfoLeft: \"You have \",\n notificationinfoRight: \" Unregistered folios \",\n unregisteredFolios: \"Click to view unregistered folios\",\n },\n quicklinks: {\n box1: {\n heading: \"View\",\n headingBold: \"Portfolio\",\n info: \"Quick overview of your holdings​\",\n },\n box2: {\n heading: \"Submit \",\n headingBold: \"Service Requests\",\n info: \"Single-window solution for change requests​​\",\n },\n box3: {\n heading: \"Track\",\n headingBold: \"Status\",\n info: \"View status of submitted service requests​\",\n },\n box4: {\n heading: \"Transact\",\n info: \"Seamless transactions across your Mutual Fund investments, with ease.\",\n },\n },\n slider: {\n slider1: {\n text: \"Mutual Funds are subject to market risk, however, there are certain criteria's you must keep in mind while investing in short-term.\",\n },\n },\n },\n dematHoldingNote: {\n info1: \"Please note: Your DEMAT holdings are sourced from NSDL & CDSL.\",\n info2:\n \"For any queries or assistance in your DEMAT holdings, please contact your Depository Participant (DP).\",\n },\n dbPortfolio: {\n investedvalue: \"Invested Value\",\n marketvalue: \"Market Value\",\n gainLoss: \"Gain/Loss (Absolute)\",\n banner: {\n heading: \"My\",\n headingBold: \"Portfolio\",\n },\n portfolioPlaceholder: \"Start investing and view your funds here\",\n bottom: {\n heading: \"Did you know?\",\n info: \"As a long-term investor, you need to rebalance your portfolio on a periodic basis.\",\n link: \"Click here to read more\",\n chartLink: \"View Details\",\n },\n },\n dbNct: {\n heading: \"Submit \",\n headingBold: \"Service Requests​\",\n },\n portfolioDetails: {\n heading: \"Portfolio Details\",\n tabs: {\n asset: \"Asset Class wise Details\",\n amc: \"Fund House wise Details\",\n assetAllocation: \"Asset Allocation\",\n },\n sortby: \"Sort By\",\n select: \"Select\",\n list: {\n holdingPercentage: \"Holding Percentage\",\n },\n sortbyList: {\n gainLoss: \"Gain/Loss\",\n marketValue: \"Invested Value\",\n atoz: \"A-Z\",\n },\n },\n portfolioSchemes: {\n fundName: \"HDFC mutual fund\",\n folio: \"Select Folio \",\n balanceUnits: \"Balance Units\",\n minimumAmount: \"Min. Amount\",\n cagr: \"CAGR\",\n readMore: \"Read More\",\n buyNow: \"Buy Now\",\n nav: \"NAV\",\n popularSchemes: {\n heading: \"Popular Schemes\",\n sliders: {\n slider1Title:\n \"HDFC Retirement Savings Fund Hybrid Equity Plan Direct Growth\",\n },\n },\n adsSection: {\n introduce: \"Introducing\",\n slides: {\n learnMore: \"Learn More\",\n slide1: {\n title: \"HDFC FLEXI CAP FUND\",\n info: \" The scheme seeks to provide long-term capital appreciation /income by investing predominantly in Small-Cap companies.\",\n },\n },\n },\n },\n OtpScreen: {\n subHeading: \"Enter \",\n subHeadingSpan: \"OTP\",\n subHeadingInfo:\n \"Please enter the 6-digit OTP sent to your email address \",\n phoneOtpSubject:\n \"We’ve sent you an SMS with a 6-digit verification code on \",\n otpPhoneSubject: \"Please enter the 6-digit OTP sent to your mobile\",\n otpEmailSubject: \"Please enter the 6-digit OTP sent to your email\",\n registeredEmail: \"your registered email id \",\n buttonText: \"Verify OTP\",\n buttonTextWhileLoading: \"Sending\",\n otpValid: \"OTP will remain valid for 2 min​\",\n },\n changeEmail: {\n changeEmailHeading: \"Change/Update Email Address\",\n emailError: \"Old and New Email Id's should not be same\",\n subHeading: \"Change / Update Email \",\n subHeadingSpan: \"New Email Address\",\n subHeadingInfo:\n \"Please enter the new email address and choose family relationship below.\",\n buttonText: \"Proceed\",\n List: {\n tableInfo: \"Please select one/multiple folio(s) /schemes​\",\n buttonText: \"Submit \",\n emailNote: \"The new email Id will be updated across all selected folios\",\n toolTip:\n \"For seamless integration your email address will only be updated across all selected your folios \",\n },\n UploadDocument: {\n subHeading: \"Upload Signed Document\",\n subHeadingInfo1:\n \"The mobile number is not on record for this folio. Kindly download the application form \",\n subHeadingInfo2: \"Click Here\",\n subHeadingInfo3: \", complete it and upload it here.\",\n buttonText: \"Upload\",\n uploadBtnText: \"Choose File\",\n },\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo1: \"Your change of email Id \",\n subHeadingInfo2:\n \" has been successfully accepted with unique reference number \",\n subHeadingInfo3: \" to track your request in the folios below: \",\n buttonText: \"Track My Request\",\n getStarted: \"Get Started\",\n },\n toolTipWithSameEmailId: \"New email Id already available in this folio\",\n },\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo1:\n \"Your request is successfully submitted with tracking reference number \",\n subHeadingInfo3: \"Please click on the below button to track your status.\",\n buttonText: \"Track My Request\",\n success: \"Success\",\n successMessage:\n \"Your registered mobile number has been changed. Request you to re-login.\",\n sucessMsg1:\n \"Your change of registered mobile number request has been accepted with tracking reference number \",\n sucessEmailMsg1:\n \"Your change of registered email address request has been accepted with tracking reference number \",\n successMsg2: \" Request you to re-login.\",\n securityQuestions: \"Security Q&A Update Successful!\",\n },\n Failed: {\n back: \"Back\",\n subHeading: \"Request Failed\",\n subHeadingInfo1:\n \"Dear Investor, Due to technical difficulties, we are unable to process your request at the moment. Please try again in sometime.​\",\n buttonText: \"Try Again\",\n },\n noFoliosFound: \"No eligible folio(s) found\",\n UpdatePan: {\n UpdatePanHeading: \"Update PAN Details\",\n subHeading: \"Enter \",\n subHeadingSpan: \"Mobile or Email\",\n subHeadingInfo: \"We will send a 6-digit verification code\",\n buttonText: \"Submit\",\n verifyWithMobile: \"Verify with mobile\",\n verifyWithEmail: \"Verify with email\",\n mobile: \"Mobile Number\",\n email: \"Email ID\",\n UpdatePanInfo: \"Please select the folio(s) you want to update\",\n uploadPan: \"Upload PAN Card (Coloured copy)\",\n selectedFolios: {\n subheading: \"Review your details\",\n primaryHolder: \"Primary Holder - \",\n contactNo: \"Contact No - \",\n pan: \"PAN/PEKRN - \",\n folioNo: \"Folio No \",\n enterPan: \"Enter PAN\",\n enterPanInfo: \"Your name should match with as per your PAN number\",\n buttonText: \"Proceed\",\n addFolioText: \"Add Another Folio\",\n panValidating: \"Validating PAN\",\n nameValidating: \"Validating Name\",\n panSuccessful: \"PAN Validation Successful\",\n nameSuccessful: \"Name Validation Successful\",\n panFailed: \"PAN Validation failed\",\n nameFailed: \"Name Validation failed\",\n folioNameFailed: \"Name Validation failed for folio No: \",\n folioNameInfo:\n \" Dear User,​ PAN entered is incorrect. Please enter the correct PAN to proceed. Alternately, you could submit a request form at the nearest KFintech/CAMS front office.\",\n panVerification: {\n kycValidating: \"Checking KYC Status\",\n aadharValidating: \"Checking if PAN is Aadhaar seeded\",\n kycSuccessful: \"KYC Verification Successful\",\n aadharSuccessful: \"Aadhaar seeding Successful\",\n kycFailed: \"KYC Verification Failed\",\n aadharFailed: \"Aadhaar seeding Failed\",\n },\n },\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo1: \"Your PAN \",\n subHeadingInfo2:\n \" is successfully accepted with unique reference number \",\n subHeadingInfo3: \" to track your request in the folios:\",\n buttonText: \"Track My Request\",\n },\n UpdatePanCondition:\n \"Maximum of 3 folio(s) are eligible under a single request. Please select accordingly.\",\n },\n UnregisteredFolios: {\n heading: \"Unregistered Folios\",\n tabs: {\n newRequest: {\n tabHeading: \"New Request\",\n info1: \"Please Note: Due to availability of multiple \",\n info2:\n \", the following folio(s) could not be registered under MFCentral\",\n uploadHeading: \"Upload Request Letter\",\n clickHere: \"Click Here\",\n uploadInfo:\n \"Please upload a duly signed scanned copy of the below change request form to proceed further. \",\n toDownload: \" to Download \",\n },\n myRequest: {\n tabHeading: \"Track Requests\",\n info: \"The following folios are successfully registered for online view and transacting\",\n },\n },\n TrackRequest: {\n list1:\n \"MFCentral allows investors to access Mutual Fund folio(s) that are registered with the same mobile number.​\",\n list2:\n \"For successfully initiating update for unregistered folio(s), please upload scanned copy of the request letter clearly specifying Fund name and folio number along with signature.​\",\n list3:\n \"The change will automatically reflect in MFCentral once the mobile number is successfully authenticated. (This might take up to 5 working days)​\",\n disclaimer: \"DISCLAMER\",\n disclaimerInfo:\n \" : If the authenticated mobile numbers associated with any of the folio is changed using any platform other than MFCentral, you will not be able to use services under MFCentral till mobile numbers across folios are made uniform and re-authenticated\",\n },\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo:\n \"Requested mobile number will be updated in selected folios after validating the signed request submitted. Post update, you will be able to access your folio details in MFCentral\",\n buttonText: \"Track My Request\",\n },\n },\n ChangeDividend: {\n noSelectLeinUnits: \"Lein units schemes are not eligible for selection\",\n ChangeDividendHeading: \"Change of IDCW Option\",\n radioHeading: \"Select IDCW Option\",\n payoutToReinvest: \"Payout to Reinvest\",\n reinvestToPayout: \"Reinvest to Payout\",\n ChangeDividendInfo: \"Please select the folio(s)/scheme(s)​\",\n filters: \"Filters\",\n category: \"Category\",\n amc: \"Funds\",\n searchByAMC: \"Search by AMC\",\n selectedFilters: \"Selected Filters:\t\",\n removeFilter: \"Remove Filter\",\n buttonText: \"Submit \",\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo1: \"Your Change of Dividend Option from \",\n subHeadingInfo2:\n \" has been successfully accepted with unique reference number \",\n subHeadingInfo3: \" to track your request in the AMC(s) Schemes below: \",\n buttonText: \"Track My Request\",\n },\n toolTip: {\n info1:\n \"The folio cannot be selected as the folio(s)/scheme is not eligible.\",\n },\n },\n ChangeMobile: {\n ChangeMobileHeading: \"Change Registered Mobile Number\",\n ChangeMobileInfo:\n \"The new mobile number will be updated across all selected folios.\",\n filters: \"Filters\",\n category: \"Category\",\n searchByAMC: \"Search by AMC\",\n selectedFilters: \"Selected Filters:\t\",\n removeFilter: \"Remove Filter\",\n buttonText: \"Submit \",\n Note: \"Please Note: The change in registered mobile number will reflect in all selected folios\",\n newMobile: {\n heading: \"Change / Update Mobile Number\",\n headingSpan: \"New Mobile Number\",\n info: \"Please enter the new mobile number and choose family relationship below\",\n },\n toolTipWithSameMobile:\n \"New mobile number is already available in this folio\",\n UploadDocument: {\n subHeading: \"Upload Signed Document\",\n subHeadingInfo1:\n \"The Email ID is not on record for this folio. Kindly download the application form \",\n subHeadingInfo2: \"Click Here\",\n subHeadingInfo3: \", complete it and upload it here.\",\n buttonText: \"Upload\",\n uploadBtnText: \"Choose File\",\n },\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo1: \"Your change of mobile number \",\n subHeadingInfo2:\n \" has been successfully accepted with unique reference number \",\n subHeadingInfo3: \" to track your request in the folios below: \",\n buttonText: \"Track My Request\",\n },\n toolTip:\n \"For seamless integration your mobile number will only be updated across all selected your folios\",\n },\n UpdateNominee: {\n UpdateNomineeHeading: \"Update Nominee Details\",\n relationShip: \"Invalid Email/Mobile Relationship\",\n UpdateNomineeInfo: \"Please select the folio(s):​\",\n buttonText: \"Submit \",\n buttonNext: \"Next \",\n EmptyNomineeInfo:\n \"No eligible folio(s) were found to accept the request​\",\n nomineeText: \"Nominee\",\n name: \"Name\",\n relation: \"Relation\",\n share: \"Share\",\n more: \"More\",\n less: \"Less\",\n gender: \"Gender\",\n address: \"Address\",\n clear: \"Clear\",\n cancel: \"Cancel\",\n save: \"Save\",\n guardianDetailsHeading: \"Guardian Details\",\n addNominee: \"Add Nominee\",\n singleMOHAllowed:\n 'Folio(s) with mode of holding as \"Single\" are only (are) applicable',\n nomineeFields: {\n pan: \"PAN\",\n address1: \"Address 1 (optional)\",\n address2: \"Address 2 (optional)\",\n pin: \"PIN Code (optional)\",\n city: \"City (optional)\",\n state: \"State (optional)\",\n country: \"Country (optional)\",\n },\n NoteModals: {\n deleteNominee: \"Please confirm the deletion of Nominee.\",\n greaterModal:\n \"Total Share(%) of all nominees must be 100. Kindly re-check.\",\n lessModal:\n \"Total Share(%) of all nominees must be 100. Kindly re-check.\",\n okay: \"Okay\",\n },\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo1: \"You request change of dividend option from \",\n subHeadingInfo2: \" Please use the reference number \",\n subHeadingInfo3: \" to track your request in the AMC(s) Schemes below :\",\n buttonText: \"Track My Request\",\n investorNote:\n \"After Investor authorises the transaction, details will be updated after T+1 day.\",\n },\n Failure: {\n back: \"Back\",\n subHeading: \"Oops!\",\n subHeadingInfo1:\n \"Dear Investor,​ Due to technical difficulties, we couldn’t process your request at this moment. Please try again in sometime.​\",\n buttonText: \"Try Again\",\n },\n },\n ChangeBank: {\n ChangeBankHeading: \"Change of Bank Account Details​\",\n ChangeBankInfo: \"Please select the folio(s):​ ​\",\n ChangeBankInfoSpan:\n \"(Change can be made for folios registered under same bank)​\",\n buttonText: \"Submit\",\n Note: \"​(Only folios with same default bank details can be changed through a single request.)\",\n selectedFolios: {\n subheading: \"Selected folios\",\n primaryHolder: \"Primary Holder - \",\n ifsc: \"IFSC - \",\n accountNo: \"Account No - \",\n bankName: \"Bank name - \",\n folioNo: \"Folio No \",\n uploadDocuments: \"Upload Documents\",\n uploadDocumentsInfo:\n \"Document Format : .pdf / .jpg / .jpeg / .png | Each File size : < 2 MB\",\n buttonText: \"Submit\",\n save: \"Save\",\n cancelledCheque:\n \"Upload Default Bank A/C Proof (Coloured scan of Cheque)\",\n bankCheque: \"Upload New Bank A/C Proof (Coloured scan of Cheque)\",\n addNewBankHeading: \"Add New Bank Account Details \",\n addNewBankHeadingInfo:\n \"Please Note: Kindly enter the details carefully.​\",\n fields: {\n accountNumber: \"Account Number\",\n ifsc: \"IFSC \",\n bankName: \"Bank Name \",\n accountType: \"Account Type \",\n branch: \"Branch \",\n city: \"City \",\n },\n ocrDataValidating: \"Verifying information​\",\n bankValidating: \"Validating bank details\",\n ocrDataFailed: \"Verification unsuccessful​ \",\n ocrDataFailedInfo:\n \"Dear User,​ System could not identify the details. Please upload a signed request below.​\",\n bankValidationFailed: \"Bank Validation failed \",\n bankValidationFailedInfo:\n \"Bank Validation failed, Please upload a signed request below.​\",\n pennyDropFailed: \"Penny Drop failed \",\n pennyDropFailedInfo:\n \"Penny Drop failed, Please upload a signed request below.​\",\n uploadRequestLetter: \"Upload Request Letter\",\n ocrDataSuccess: \"OCR data extraction Success\",\n bankValidationSuccess: \"Bank Validation Succesful\",\n },\n tooltip: {\n info1:\n \"Update Bank Account Details can only be carried out for folio(s) with same bank account details\",\n },\n },\n ConsolidationFolios: {\n ConsolidationFoliosHeading: \"Consolidation of Folios \",\n ConsolidationFoliosInfo: \"Selected Mutual Fund :\",\n chooseMutualFund: \"Choose Mutual Fund​\",\n targetFolio: \"Target Folio :\",\n buttonText: \"Next\",\n submitBtn: \"Submit\",\n selectFolio: \"Please select the target folio​\",\n sourceFolio:\n \"Please select “source folios” to consolidate with target folio\",\n NoConsolidateFoliosInfo: \"No eligible folio(s) found\",\n EmptyFolioInfo:\n \"There are currently no folios available for consolidation\",\n terms:\n \"I agree & give consent to consolidate my selected source folios into target folio irrespective of bank & nominee details not matching exactly. I also understand that dividend option (Reinvest or Payout) of the schemes in source folio will be converted into dividend option of the schemes in target folio\",\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo1: \"Your consolidation of folio request in the \",\n subHeadingInfo2: \" is successfully accepted with reference number \",\n subHeadingInfo3: \" to track your request in the folios:\",\n buttonText: \"Track My Request\",\n },\n Failure: {\n back: \"Back\",\n subHeading: \"Request Failed\",\n subHeadingInfo1:\n \"Your request to do consolidation of folio(s) in selected is submitted with the respective AMCs except for the below folios for which the requests failed \",\n buttonText: \"Try Again\",\n },\n },\n ChangeTaxStatus: {\n ChangeTaxStatusHeading: \"Change of Tax status \",\n ChangeTaxStatusHeadingSpan: \"(Resident Indian or Non-Resident Indian)\",\n radioHeading: \"Choose status change:​ \",\n option1: \"Bank Account Type​\",\n option2: \"Bank Account Details​\",\n ChangeTaxStatusInfo: \"Please select the folio(s)/Scheme(s)\",\n buttonText: \"Submit \",\n newStatusType: \"New Tax Residency Status​\",\n newAccountType: \"New Bank Account Type\",\n uploadDocuments: \"Upload Bank Mandate\",\n // uploadDocumentsInfo:\n // \"Document Format : .pdf / .jpg / .jpeg / .png | Each File size : < 2 MB\",\n uploadDocumentsInfo: \"Document Format : .pdf | Each File size : < 2 MB\",\n newProof: \"New bank mandate proof (Coloured scan of Cheque)\",\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo1:\n \"Your Change of Tax status request is successfully accepted with unique reference number \",\n subHeadingInfo3: \" to track your request in the folios:\",\n buttonText: \"Track My Request\",\n },\n toolTip: {\n info: \"Tax status & Default Bank account no should be same across all your folios\",\n },\n noteModals: {\n heading: \"NOTE\",\n info: \"For Change of Bank Account Details, click here \",\n proceedText: \"Proceed\",\n cancelText: \"Cancel\",\n redirecting:\n \"You are now being redirected to “Change of Bank Account Details”\",\n confirmationText: \"Are you sure you want to delete folio?\",\n },\n },\n UpdateForm15: {\n UpdateForm15Heading: \"Update Form 15 G/H Details\",\n UpdateForm15GHeading: \"Update Form 15 G Details\",\n UpdateForm15HHeading: \"Update Form 15 H Details\",\n UpdateForm15Info:\n \"Form 15 G & 15 H are valid for a single financial year. Investors need to submit the forms at the beginning of each financial year (1st April to 31st March). The forms can be submitted anytime during the financial year, however TDS deduction would strop from the subsequent quarter. Hence, it is advisable to submit Form 15 G/H at the beginning of the financial year.​\",\n panDetails: \"Enter PAN\",\n TaxAccessed: \"Are you assessed to Tax under the Income Tax Act 1961 ?\",\n yes: \"Yes\",\n no: \"No\",\n buttonText: \"Generate OTP\",\n radioHeading: \"Select an Option \",\n form15G: \"Register Form 15G\",\n form15H: \"Register Form 15H (Only for investors aged 60 years or above)\",\n submit: \"Submit\",\n UpdateForm15TableInfo: \"Please select the funds:​\",\n EmptyNomineeInfo:\n \"There are no KFintech/CAMS serviced mutual funds for the selected PAN \",\n agreeTerms: \"I accept and agree to the change across folios​\",\n listModalInfo: \"This folio is not applicable for Update of Form 15 G/H\",\n okayBtn: \"Okay\",\n proceedBtn: \"Proceed\",\n pleaseNote: \"PLEASE NOTE\",\n modalInfo:\n \"“Form 15 G/H details will be applied only from the beginning of the subsequent quarter after submission of the same. It is strongly recommended that Form 15 G/H details are submitted at the beginning of Financial year itself, to avoid any TDS deduction.”\",\n Income: {\n heading: \"Please enter the below details for Financial Year : \",\n dob: \"Date of Birth\",\n enterAmount: \"Enter Amount\",\n dividendIncome: \"Estimated dividend income (RS)\",\n totalDividendIncome: \"Total income (RS)\",\n cumulativeIncome: \"Cumulative Dividend Amount\",\n form15GcumulativeIncomeExceed:\n \"Note: Cumulative Dividend Amount for all financial years should not exceed Rs. 2,50,000\",\n form15GdividendIncomeExceed:\n \"Dividend income should not exceed Rs. 2,50,000\",\n form15GtotalValueExceed:\n \"This total value should not exceed Rs 2,50,000\",\n form15HcumulativeIncomeExceed:\n \"Note: Cumulative Dividend Amount for all financial years should not exceed Rs. 10,00,000\",\n form15HdividendIncomeExceed:\n \"Dividend income should not exceed Rs. 10,00,000\",\n form15HtotalValueExceed:\n \"This total value should not exceed Rs 10,00,000\",\n form15HdividendIncomeExceedError:\n \"Sorry! The amount entered exceeds the limit of Rs. 10,00,000\",\n form15GdividendIncomeExceedError:\n \"Sorry! The amount entered exceeds the limit of Rs. 2,50,000\",\n totalIncomeInfo:\n \"Total income is a sum total of income from dividend and annual income.​\",\n registerButton: \"Register\",\n incomeExceedLimit:\n \"Please Note: Maximum set limit for Total Income under Form 15 G/H is Rs 6,00,000. To avail the tax deduction, please ensure your income falls within the range.​\",\n overwriteBtn: \"Overwrite & Proceed\",\n unselectBtn: \"Unselect & Proceed\",\n incomeModalInfo:\n \"Please confirm if you wish to overwrite the previous selection with the new information.\",\n DetailsOfIncome: \"Details of income\",\n slNo: \"Sl. No. - \",\n idNo: \"Identification number of relevant investment / Account etc., -\",\n NatureOfIncome: \"Nature of income\",\n SectionDeductible: \"Section under which tax is deductible\",\n AmountOfIncome: \"Amount of income\",\n declaration:\n \"I, do hereby declare that I am resident in India within the meaning of section 6 of the Income-tax Act, 1961.\",\n readMore: \"Read more​\",\n submit: \"Submit\",\n buttonText: \"Declaration\",\n lastAssesmentYear: \"Select last assessment year\",\n declarationModal: {\n heading: \"Declaration\",\n instructions: \"Instructions\",\n para1:\n \"I, do hereby declare that I am an Indian Resident within the meaning of section 6 of the Income-tax Act, 1961. I also hereby declare that to the best of my knowledge and belief what is stated above is correct, complete and is truly stated. I declare that the income(s) referred to in this form are not includible in the total income of any other person under section 60 to 64 of the Income-tax Act, 1961. I further declare that the tax on my estimated total income including income/incomes referred to in estimated income and aggregate amount of income/incomes referred to in total estimated income column in accordance with the provision of the Income-tax Act,1961, for the previous year ending on 31-March-2021 relevant to the assessment year 2021-22 will be nil.\",\n para2:\n \"I/We also declare that my income/incomes referred to an estimated income and aggregate amount of income/incomes referred to in estimated total income for the previous year ending 31-March-2021 relevant to the assessment year 2021-2022 will not exceed the maximum amount which is not chargeable to Income tax.\",\n para3:\n \"As per provisions of section 206AA(2), for Form 15 G the declaration under section 197A(1) or 197A(1A) and a person (other than a company or firm) under section 197A(1A). Form 15H – Declaration can be furnished by a resident individual who is of the age of 60 years or above at any time during the previous year.\",\n para4:\n ' Please mention \"Yes\" if assessed to tax under the provision of Income tax Act, 1961 for any of the assessment year out of six assessment year preceding the year in which the declaration is filed.',\n para5:\n \"Please mention the amount of estimated total income of the previous year for which the declaration is filed including the amount of income for which this declaration is made.\",\n para6:\n \"In case any declaration(s) in Form No. 15G/H is filed before filling this declaration during the previous year, mention the aggregate amount of income for which said declaration(s) have been filed.\",\n para7:\n \"Before signing the declaration/verification, the declarant should satisfy himself that the information furnished in this form is true, correct and complete in all respects. Any person making a false statement in the declaration shall be liable to prosecution under section 277 of the income tax Act, 1961 and on conviction be punishable.\",\n para8:\n \" In a case where tax sought to be evaded exceeds twenty-five lakh rupees, with rigorous imprisonment which shall not be less than six months, but which may extend to seven years and with fine In any other case, with rigorous imprisonment which shall not be less than three months, but which may extend to two years and with fine”\",\n },\n totalIncomeValidation:\n \"Total income should be greater than or equal to Estimated Income\",\n },\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo1:\n \"Your request to update Minor to Major for the First holder PAN is sucessfully submitted withreference number \",\n subHeadingInfo3: \" to track your request in the folios:\",\n buttonText: \"Track My Request\",\n },\n },\n MinorStatus: {\n MinorStatusHeading: \"Status Modification from Minor to Major\",\n MinorStatusInfo: \"Please select the Folio(s):​\",\n buttonText: \"Update PAN\",\n EmptyNomineeInfo:\n \"No minor investments found for the selected Guardian PAN \",\n differentPanError:\n \"To proceed with your request, kindly select folio(s) with same PAN\",\n differentBankError:\n \"Folio(s) with same bank account can be selected under a single request.\",\n sessionExpired: \"Session expired. Please try again after 30 minutes\",\n requestFailed:\n \"Your recent requests have failed. Please try after 30 minutes from your last request\",\n EnterPan: {\n subHeading: \"Enter \",\n subHeadingSpan: \"PAN\",\n subHeadingInfo: \"Please enter details of First Holder/Minor\",\n enter: \"Enter Here\",\n },\n toolTipText: {\n info1:\n \"Selection applicable only for folio(s) with same First Holder details\",\n info2:\n \"Selection applicable only for folio(s) with same Bank Account Number\",\n },\n ReviewDetails: {\n subheading: \"Review your details​\",\n accountNo: \"Account No - \",\n ifsc: \"IFSC - \",\n accountType: \"Account Type - \",\n folioNo: \"Folio No \",\n uploadDocuments: \"Upload Documents\",\n uploadDocumentsInfo:\n \"Document Format : .pdf / .jpg / .jpeg / .png | Each File size : < 2 MB\",\n buttonText: \"Submit\",\n save: \"Save\",\n editFolio: \"Edit Folio \",\n editFolioBank: \"Edit bank account details for Folio No. \",\n fields: {\n accountNumber: \"Account Number\",\n ifsc: \"IFSC \",\n bankName: \"Bank Name \",\n accountType: \"Account Type \",\n branch: \"Branch \",\n city: \"City \",\n },\n uploadPanHeading: \"Upload PAN Copy (1st Holder only)\",\n uploadChequeHeading: \"Upload Coloured Scan of Cheque (1st Holder only)\",\n uploadSignatureHeading: \"Upload Proof of Signature (1st Holder only)\",\n uploadSignatureInfo:\n \"(Both investor and attestation sign of either guardian/banker is a must)\",\n uploadSignatureLink: \"Click Here\",\n uploadSignatureLinkInfo: \" to download the form\",\n },\n Success: {\n back: \"Back\",\n subHeading: \"Success!\",\n subHeadingInfo1:\n \"Your request to update Minor to Major for the First holder PAN is sucessfully submitted withreference number \",\n subHeadingInfo3: \" to track your request in the folios:\",\n buttonText: \"Track My Request\",\n },\n panVerification: {\n kycValidating: \"Verifying KYC Status​\",\n aadharValidating: \"Verifying Aadhaar Seeding​\",\n kycSuccessful: \"KYC Verification is Succesful\",\n aadharSuccessful: \"Aadhar seeding is Succesful\",\n kycFailed: \"KYC Verification Failed\",\n aadharFailed: \"Aadhar seeding Failed\",\n },\n noteModals: {\n heading: \"Enter PAN to Proceed\",\n info: \"Your Folio No. \",\n info2: \" is not associated with any PAN, Please update PAN to proceed \",\n proceedText: \"Yes\",\n cancelText: \"No\",\n },\n },\n CorrectionFolios: {\n CorrectionFoliosHeading: \"Correction of erroneous data captured in Folio\",\n CorrectionFoliosInfo: \"Please select the folio\",\n buttonText: \"Submit\",\n Selection: {\n selectionInfo: \"Please select the items to change \",\n search: \"Search nature of correction\",\n selectedFolio: \"Folio : \",\n amc: \"Fund : \",\n makeSelection: \"Please make a selection from the left menu.​\",\n makeSelectionMobile:\n \"Please click on above button to select corrections\",\n nameInRecords: \"In records :\",\n enterCorrectDetails: \"Enter Correct Details​\",\n buttonText: \"Submit\",\n Fields: {\n primaryHolder: \"Primary Holder Name​\",\n secondHolder: \"2nd Holder Name​\",\n thirdHolder: \"3rd Holder Name\",\n guardianName: \"Guardian​ ​Name\",\n mobileNo: \"Mobile Number​\",\n emailAddress: \"Email Address​\",\n dateOfBirth: \"Date of Birth\",\n bankAccNo: \"​Bank Account Number\",\n bankAccType: \"​Bank Account Type​\",\n bankIfsc: \"Bank IFSC​\",\n taxResidency: \"Tax Residency​\",\n modeOfHolding: \"Mode of Holding​\",\n dpIdNdClientId: \"Dp ID\",\n email: \"Email\",\n errors: {\n mobile: {\n startingWithZero: \"Mobile number should not start with 0\",\n validNumber: \"Please enter valid mobile number\",\n },\n name: {\n minFiveCharacters: \"Name should have minimum 5 characters\",\n noNumericValues: \"Numeric values are not allowed\",\n sameNames: \"Old name and new name are same\",\n },\n },\n },\n },\n Failure: {\n back: \"Back\",\n subHeading: \"Request Failed\",\n subHeadingInfo1:\n \"Dear Investor,​ Due to technical difficulties, we couldn’t process your request at this moment. Please try again in sometime.​\",\n buttonText: \"Try Again\",\n },\n },\n UpdateIFSC: {\n UpdateIFSCHeading: \"Update Bank IFSC\",\n UpdateIFSCInfo: \"Please select the folio(s)\",\n buttonText: \"Proceed\",\n Details: {\n heading: \"Add the IFSC of the same bank registered under the folio. \",\n info: \"Please Note: We will credit your bank account with a small token amount in order to verify your bank account, kindly enter correct bank details carefully.\",\n submit: \"Submit\",\n fields: {\n accountNumber: \"Account Number\",\n ifsc: \"IFSC \",\n bankName: \"Bank Name \",\n accountType: \"Account Type \",\n branch: \"Branch \",\n city: \"City \",\n },\n },\n toolTipInfo: {\n info: \"Selection applicable only for folio(s) with same Bank Account Number\",\n },\n noteModals: {\n heading: \"NOTE​\",\n info: 'Please Note: For successful Update (Updation?) of Bank IFSC , primary holder\"s name should be same as per both MF Folio and Bank Account details.',\n proceedText: \"Proceed\",\n cancelText: \"Cancel\",\n pleaseConfirm: \"Please confirm the bank details\",\n bankName: \"Bank Name\",\n ifscCode: \"IFSC Code\",\n city: \"City\",\n branch: \"Branch\",\n },\n },\n BankMandate: {\n BankMandateHeading: \"Multiple Bank Mandate Registration\",\n selectOption: \"Select Option\",\n BankMandateInfo:\n \"Please select folios from the below table to modify the Bank Mandate\",\n buttonText: \"Submit\",\n toolTipText:\n \"Selected folio has only single bank account. Please select folios with multiple bank accounts.\",\n noteModals: {\n heading: \"NOTE​\",\n info: \"Unique reference no. for this request is '1234'. For successful completion of Multiple Bank Mandate Registration, name as per folio and bank records should be matched.\",\n proceedText: \"Proceed\",\n cancelText: \"Cancel\",\n },\n selectedFolios: {\n subheading: \"Selected folios\",\n primaryHolder: \"Primary Holder - \",\n ifsc: \"IFSC - \",\n bankName: \"Bank name - \",\n folioNo: \"Folio No \",\n uploadDocuments: \"Upload Bank Mandate\",\n uploadDocumentsInfo:\n \"Document Format : .pdf / .jpg / .jpeg / .png | Each File size : < 2 MB\",\n buttonText: \"Submit\",\n save: \"Save\",\n radioOption1: \"Add New Bank Account\",\n radioOption2: \"Delete Default Bank Account\",\n radioOption3: \"Change Default Bank Account\",\n next: \"Next\",\n defaultBank: \"Upload Default Bank A/C Proof (Coloured scan of Cheque)​\",\n newBank: \"Upload New Bank A/C Proof (Coloured scan of Cheque)​\",\n addNewBankHeading: \"Add New Bank Account Details \",\n addNewBankHeadingInfo:\n \"Please Note: A nominal amount will be credited to your bank account to confirm the details entered by you. Kindly enter the details carefully.​\",\n fields: {\n accountNumber: \"Account Number\",\n ifsc: \"IFSC \",\n bankName: \"Bank Name \",\n accountType: \"Account Type \",\n branch: \"Branch \",\n city: \"City \",\n },\n ocrDataValidating: \"Verifying information​\",\n bankValidating: \"Validating bank details\",\n ocrDataFailed: \"Verification unsuccessful​ \",\n ocrDataFailedInfo:\n \"Dear User,​ System could not identify the details. Please upload a signed request below.​\",\n bankValidationFailed: \"Bank Validation failed \",\n bankValidationFailedInfo:\n \"Bank Validation failed, Please upload a signed request below.​\",\n pennyDropFailed: \"Penny Drop failed \",\n pennyDropFailedInfo:\n \"Penny Drop failed, Please upload a signed request below.​\",\n uploadRequestLetter: \"Upload Request Letter\",\n ocrDataSuccess: \"OCR data matched with bank\",\n bankValidationSuccess: \"Bank Validation Succesful\",\n chooseBankToDelete: \"Choose bank account details to delete\",\n chooseNewDefaultBank: \"Choose New Default Bank account details \",\n },\n Failure: {\n back: \"Back\",\n subHeading: \"Request Declined\",\n subHeadingInfo1:\n \"Name does not match with the bank account. Your request could not be accepted, Please check your details\",\n buttonText: \"Try Again\",\n },\n },\n FatcaDeclaration: {\n FatcaDeclarationHeading: \"FATCA/CRS Declaration\",\n enterPanPekrnHeading: \"Primary Holder Details\",\n enterPanPekrn: \" PAN/PEKRN \",\n taxResident: \"Are you a tax resident of any country other than India?\",\n yesTxt: \"YES\",\n noTxt: \"NO\",\n acknowledge:\n \"I hereby declare that the information entered by me is true to the best of my knowledge and belief. \",\n readMore: \"Read More\",\n buttonText: \"Submit\",\n fillFollowing: \"Please fill the following details\",\n nationality: \"Nationality\",\n countryOfBirth: \"Country of Birth\",\n taxResidencyCountry: \"Country of Tax residency\",\n tinNo: \"Tax Identification No. or Equivalent\",\n tinNotAvailable: \"TIN unavailable\",\n identificationType: \"Identification Type \",\n tinTxt: \"TIN\",\n othersTxt: \"Others (please specify)\",\n typeHere: \"Type Here\",\n selectReason: \"Please select the reason:\",\n accountHolderLiable:\n \"The country where the account holder is liable to pay tax does not issue TIN to its residents.\",\n noTinRequired:\n \"TIN not required (Applicable only if the authorities of the respective country of tax residency do not require TIN to be collected)\",\n othersSpecify: \"Others (Please specify  reason)\",\n errors: {\n taxResidency: \"Please choose tax residency\",\n countryOfBirth: \"Please select country of birth\",\n nationality: \"Please select Nationality\",\n countryOfTaxResidency: \"Please select Country of Tax Residency\",\n tinNumber: \"Please enter TIN number\",\n validTinNumber: \"Please enter valid TIN number\",\n identificationType: \"Please select Identification Type\",\n identificationReason: \"Please enter Identification Type\",\n noTinReason: \"Please select reason for no TIN number\",\n maxCharacterForTinReason: \"Reason should be less than 10 characters\",\n declarationBox: \"Please check the declaration\",\n reasonOptionText: \"Please give reason for no TIN number\",\n placeOfBirth: \"Please give place of birth\",\n minLength: \"Please enter minimum 5 characters\",\n pobMinLength: \"Please enter minimum 2 characters\",\n },\n kycFields: {\n heading: \"KYC Details\",\n fatherName: \"Father Name\",\n spouseName: \"Spouse Name\",\n occupation: \"Occupation\",\n netWorth: \"Net Worth\",\n netWorthDate: \"Net Worth Date\",\n annualIncomeSlab: \"Annual Income\",\n pepFlag: \"PEP Status\",\n addressType: \"Address Type\",\n sourceOfWealth: \"Source of Wealth\",\n placeOfBirth: \"Place of Birth\",\n remarks: \"Any other KYC related information\",\n form: {\n errors: {\n fatherName: \"Please enter father name\",\n netWorthDate: \"Please select net worth date\",\n occupation: \"Please Select Occupation\",\n spouseName: \"Please enter spouse name\",\n annualIncomeSlab: \"Please Select Annual Income\",\n pepFlag: \"Please Select PEP Status\",\n addressType: \"Please Select Address Type\",\n sourceOfWealth: \"Please Select Source of Wealth\",\n placeOfBirth: \"Please enter Place of Birth\",\n remarks: \"Please enter remarks\",\n netWorth: \"Please enter net worth\",\n minLength: \"Please enter minimum 2 characters\",\n pobMinLength: \"Please enter minimum 2 characters\",\n zeroError: \"Amount should be greater than zero\",\n },\n },\n },\n },\n noteModals: {\n nctModal: {\n heading: \"Please Note​\",\n info: \"For security reasons, service requests will only be accepted for Folios registered with MFCentral.\",\n proceedText: \"Proceed\",\n cancelText: \"Cancel\",\n },\n otpModal: {\n heading: \"Proceed with OTP\",\n info: \"We will send a 6-digit verification code to your registered mobile number\",\n infoEmail:\n \"We will send a 6-digit verification code to your registered email address\",\n proceedText: \"Yes\",\n cancelText: \"No\",\n },\n otpAuth: {\n heading: \"OTP Authentication\",\n subHeading:\n \"The one-time password will be sent to your registered mobile number\",\n subHeadingMail:\n \"The one-time password will be sent to your registered email address\",\n confirmText: \"Please confirm the change to proceed further.\",\n },\n consolidation: {\n heading: \"PLEASE NOTE\",\n info: \"Your Source Folio and Target Folio should have the same Set of Holders, Mode of Holding, Tax Status and Holding Pattern.\",\n },\n bank: {\n info: \"Selection of minimum one folio is mandatory, to proceed\",\n },\n taxStatus: {\n info: \"Selection of minimum one folio is mandatory, to proceed\",\n },\n bankMandate: {\n info: \"Selection of minimum one folio is mandatory, to proceed\",\n },\n changePassword:\n \"Password Changed! Please re-login to enjoy our services.\",\n feedbackSubmitted: \"Feedback submitted successfully\",\n okayTxt: \"Okay\",\n displayNameChanged: \"Display name changed successfully\",\n },\n TransmissionRequest: {\n TransmissionRequestHeading: \"Transmission Request\",\n info: \"Note:If you are a primary holder, please login and do the transmission request.\",\n TransmissionUnitHeading: \"Transmission of Units\",\n TransmissionRequestInfoSpan: \"Please Note: \",\n TransmissionRequestInfo:\n \"You can raise only one request per fund, though you can raise a single request for multiple folios within fund, depending on your nature of claim\",\n selectOption: \"Select an Option\",\n IamFolioHolder: \"I am a holder in the folio\",\n IamNominee: \"I am a Nominee\",\n IamClaimant: \"I am a Claimant\",\n submitBtn: \"Submit\",\n followingDetails: \"Please fill the following details\",\n enterPan: \"Enter your PAN\",\n enterName: \"Enter your Name\",\n enterMobile: \"Enter your Mobile\",\n enterEmail: \"Enter your Email ID\",\n multipleNomineesNote:\n \"In case of multiple nominees, all the nominees need to raise the Transmission request together\",\n uploadDC: \"Upload death certificate \",\n followingFolios: \"Following folios matching deceased holder PAN\",\n modal: {\n heading: \"NOTE\",\n info: \"“MFCentral will help you with raising a request for Transmission and guide you on the necessary documents required towards the same. However, it is mandatory to submit the original request form along with all the supporting documents at your nearest CAMS or Kfintech branch within 15 days from the request date for consideration of the request. Also, an SMS and email will be sent to the registered mobile numbers and email Ids on the registered folios regarding this request”\",\n infoNote:\n \"Please do not proceed if this is feature is erroneously used by you.\",\n exit: \"Exit\",\n iAgree: \"I agree\",\n },\n \n holderDetails: {\n enterHolderPan: \"Please enter primary holder PAN\",\n primaryHolderDetails: \"Please fill the following details\",\n enterPan: \"Enter Here\",\n registeredMobile: \"Registered Mobile\",\n registeredEmail: \"Registered Email ID\",\n enterRegisteredMobile: \"Primary Holder Mobile\",\n enterRegisteredEmail: \"Primary Holder Email\",\n selectAmc: \"Select Fundhouse\",\n enterFolio: \"Enter Folio\",\n natureOfClaim: \"Nature of Claim\",\n addFolio: \"Add Another Folio\",\n modal: {\n heading: \"NOTE\",\n info: \"“You can raise a single request in MF Central for multiple funds and multiple claim types. However, you need to mandatorily submit multiple set of documents per Fund and Nature of Claim to your nearest Kfintech or Cams branch within 15 days of submission of request on MFCentral, else this request will deemed to have expired”\",\n okay: \"Okay\",\n },\n modal2: {\n heading: \"NOTE\",\n info: \"“Please ensure that your request is considered complete only when submitted to the nearest Kfintech / Cams branch within 15 days from the date of placing this request. Along with the below documents (Please clearly mention your Unique reference number generated after successful submission of this request on top of each of the below documents). Click ok to Proceed”\",\n cancel: \"Cancel\",\n okay: \"Okay\",\n },\n nomineeModal: {\n heading: \"NOTE\",\n info: \"In case of multiple nominees please visit RTAs servicing respective funds and submit a physical transmission request\",\n cancel: \"Cancel\",\n okay: \"Okay\",\n },\n holderModal: {\n heading: \"NOTE\",\n info: \"The request will be rejected unless all the surviving holders have signed the physical transmission request form.\",\n cancel: \"Cancel\",\n okay: \"Okay\",\n },\n claimValues: {\n value1: \"I am a Holder in the folio\",\n value2: \"I am a Nominee\",\n value3: \"I am a Claimant\",\n },\n addedFolio: {\n fund: \"Fund - \",\n folio: \"Folio - \",\n natureClaim: \"Nature of Claim - \",\n },\n },\n pan: {\n enterPan: \"Please enter Deceased PAN - \",\n panUpload: \"Upload death certificate of PAN - \",\n multiplePan:\n \"Provide multiple PANs in case of death of Multiple holders in any of the folios\",\n addPan: \"Add Another PAN \",\n },\n download: {\n primaryHolderPan: \"Primary holder PAN : \",\n uploadDeathCertificate: \"Upload death certificate \",\n clickHere: \"Click Here\",\n toDownloadPrefilled: \" to download pre-filled \",\n toDownloadBlank: \" to download blank \",\n submitBtn: \"Submit\",\n },\n downloadList: {\n TransmissionInfo:\n \"The following list of documents to be carried to the nearest CAMS or KFintech branch:\",\n mainInfo:\n \"Please ensure that all the documents as per the following grid are complete in all aspect and submitted to your nearest KFintech or CAMS branch for further processing of the transmission request. You can print a copy of the below document grid after submission of the request, for future reference.\",\n signedT2: \"Duly filled in and Signed Form T-2 \",\n deathCertificate:\n \"Death Certificate original or Death certificate Photocopy duly attested by a Notary Public or Gazetted Officer\",\n birthCertificate:\n \"In case claimant is Minor, please provide a Copy of Birth Certificate\",\n kycCertificate:\n \"In case Claimant is Minor, please submit KYC form of the Guardian (If not already KYC complied)\",\n newBankMandate: \"New Bank mandate\",\n newBankMandateInfo:\n \"(with Cancelled cheque leaf with name and bank account number pre-printed OR copy of bank statement / Photocopy of Bank Passbook with current entries (not older than 3 months) attested by a Notary Public or a Gazetted Officer or Bank Manager)\",\n nominationForm: \"Nomination Form \",\n doneBtn: \"Okay\",\n natureOfClaim: \"Nature of claim\",\n documentSet: \"Document Set\",\n fundFolios: \"Fund & Folios\",\n documentRequired: \"Documents Requirement\",\n folios: \"Folios\",\n claimant: \"Claimant\",\n claimantInfo:\n \"Based on the cumulative AUM, Documents will be different\",\n holder: \"Holder\",\n nominee: \"Nominee\",\n viewDocumentsRequired: \"View Documents Required\",\n okay: \"Okay\",\n },\n success: {\n back: \"Back\",\n success: \"Success!\",\n info1:\n \"Thank you for your request for Transmission of units. You request has been accepted vide reference number \",\n info2:\n \" . Please ensure that the documents as per the grid are submitted to the nearest Kfintech / Cams branch within 15 days of this request. Transmission request will be processed after validation of all the documents submitted. If documents are not received within 15 days, this request would be deemed to have expired / rejected.\",\n submitFormInfo: \" to download PDF of the Transmission request\",\n },\n postLogin: {\n subHeading: \"Enter \",\n subHeadingSpanPan: \"PAN\",\n subHeadginSpanPekrn: \"PEKRN\",\n subHeadingInfoPan: \"Please enter PAN Details (Deceased holder)​\",\n subHeadingInfoPekrn: \"Please enter PEKRN Details (Deceased holder)​\",\n proceedBtn: \"Proceed\",\n deceasedHolderName: \" Deceased holder Name :\",\n modifyNomineeDetails: \"I wish to modify Nominee details in the folio\",\n downloadNominationForm: \" to download Nomination Form\",\n mainInfo:\n \"The following list of documents to be carried to the nearest CAMS or KFintech branch:\",\n signedT1Form:\n \"Duly filled in and signed T-1 Form clearly displaying the Unique reference number (Multiple forms may be filled if more than three folio, scheme, plans are selected)\",\n dcCopy: \"Copy of the Death Certificate of the Deceased holder\",\n },\n form: {\n validation: {\n nameEmpty: \"Name Required\",\n emailEmpty: \"Email Required\",\n },\n },\n otp: {\n heading: \"Verify \",\n mobile: {\n headingSpan: \"Mobile\",\n },\n email: {\n headingSpan: \"Email\",\n },\n },\n validationError: \"Deceased pan should not be same as claimant pan\",\n },\n },\n crmDashboard: {\n heading: \"Service Dashboard\",\n totalRequests: \"Total Requests\",\n rejectedRequests: \"Rejected Requests \",\n inProgressRequests: \"In Progress Requests\",\n resolvedRequests: \"Resolved Requests\",\n financial: \"Financial\",\n nonFinancial: \"Non-Financial\",\n },\n nctLinks: {\n dividend: \"Change of IDCW Option\",\n changepan: \"Update PAN Details\",\n changeemail: \"Change/Update Email Address\",\n changecontact: \"Change Registered Mobile Number\",\n consolidation: \"Consolidation of Folios\",\n unclaimedpayout: \"View Unclaimed Payouts\",\n datacapture: \"Correction of erroneous data captured in Folio\",\n changebank: \"Change of Bank Account Details\",\n multiplebank: \"Multiple Bank Mandate Registration\",\n changenominee: \"Update Nominee Details\",\n changebanktype: \"Update Bank IFSC\",\n changeinvestor: \"Change of Tax Status \",\n changeinvestorinfo: \"(Resident Indian or Non-Resident Indian)​\",\n transmission: \"Transmission request​\",\n fatca: \"FATCA/CRS Declaration\",\n minor: \"Status Modification from Minor to Major\",\n form15: \"Update Form 15 G/H Details\",\n notMatched: \"No Match Found. Search for another keyword.\",\n },\n myProfile: {\n heading: \"My Profile\",\n accountInfo: \"Account Information\",\n userName: \"Display Name\",\n mobileNo: \"Registered Mobile Number\",\n emailId: \"Registered Email Address\",\n panNoOrPekrn: \"PAN/PEKRN\",\n security: \"Security\",\n dpHeading: \"Service Request To Depositories\",\n communications: \"Communications\",\n saveChanges: \"Save\",\n changePassword: \"Change Password\",\n changeSecurity: \"Change/Update Security Questions\",\n enableBiometrics: \"Enable Biometrics\",\n pushNotifications: \"Notifications\",\n whatsappNotifications: \"WhatsApp\",\n giveFeedback: \"Feedback/Query\",\n registerComplaint: \"Raise a complaint\",\n suggestion:\n \"We are here for you. Share your suggestions/feedback or grievances.\",\n changeUserName: \"Change User Name \",\n changeMobileNo: \"Change Mobile Number\",\n selectAmc: \"Select Fund House \",\n typehere: \"Please Type here\",\n submit: \"Submit\",\n enterFeedback: \"Please enter your feedback here\",\n enterName: \" Name\",\n enterEmail: \"Email ID\",\n enterRefId: \"Reference ID\",\n enterQuery: \"Type your query here\",\n enterServiceName: \"Query Type\",\n selectDpId: \"Select your DP ID\",\n enterDpId: \"Enter your DP ID\",\n enableFingerPrint: \"Enable Face Id/Fingerprint\",\n },\n updateSecurityQuestion: {\n heading: \"Change/Update Security Questions\",\n success: {\n heading: \"Change/Update Security Questions\",\n },\n successMessage: \"Your request has been successfully accepted\",\n },\n resetSecurityQuestion: {\n heading: \"Reset Security Questions\",\n question: \"Reset Security Questions?\",\n modal: {\n heading: \"Success\",\n info: \"Your security questions have been reset successfully\",\n },\n },\n changePassword: {\n heading: \"Change \",\n headingBold: \"Password\",\n oldPassword: \"Old Password\",\n setNewPassword: \"Set New Password\",\n confirmPassword: \"Confirm Password\",\n save: \"Save\",\n cancel: \"Cancel\",\n },\n forgotPassword: {\n heading: \"Forgot Password?\",\n info: \"Please enter PAN/PEKRN to receive one-time password on your registered mobile number\",\n otpinfo: \"Please enter the 6-digit OTP sent to \",\n label: \"Enter PAN / PEKRN\",\n otpAuthentication: \"OTP Authentication\",\n subHeading:\n \"Please enter the 6-digit OTP sent to your registered email id \",\n action: {\n otpRequest: {\n label: \"Request OTP\",\n },\n },\n },\n signupOtp: {\n heading: \"OTP Authentication\",\n headingBold: \"OTP\",\n action: {\n verifyOtp: \"Verify OTP\",\n },\n },\n verifyOtp: {\n heading: \"Enter 6 Digit OTP\",\n otpinfo: \"Please enter the 6-digit OTP sent to \",\n registered: \"Enter registered PAN / PEKRN\",\n },\n resetPassword: {\n heading: \"Reset Password\",\n reset: \"Reset\",\n },\n setPassword: {\n heading: \"Secure your Account\",\n user: \"User ID\",\n disclimer: {\n t1: \"Please use\",\n t2: \" while login\",\n },\n setPassword: \"Set Password\",\n setinput: \"Set New Password\",\n confirmPassword: \"Confirm New Password\",\n displayName: \"Display Name\",\n twoFactor: \"Two factor authentication\",\n selectQuestion: \"Security Question \",\n signIn: \"Sign In \",\n twoFAHeading: \"Security Question\",\n answer: \"Answer\",\n modal: {\n heading: \"Congratulations!\",\n info: \"Success! You are now registered with MFCentral.\",\n },\n action: {\n continue: \"Submit\",\n signIn: \"Sign In\",\n },\n },\n secretQuestionnaire: {\n heading: \"Two factor authentication\",\n userId: \"User ID : \",\n selectQuestion: \"Select Security Question \",\n answer: \"Answer\",\n submit: \"Submit\",\n questions: {\n question1: \"What is your first mobile brand?\",\n question2: \"What is your first Car/Bike?\",\n question3: \"Which is your favorite place for vacation?\",\n question4: \"What is the name of your favorite sports person?\",\n question5: \"Which city were you born in?\",\n question6: \"What is your favorite food?\",\n question7: \"Which year did you complete your graduation?\",\n question8: \"Where did you go to high school/college?\",\n question9: \"What was the first company that you worked for?\",\n question10: \"What is the name of your pet?\",\n },\n },\n passwordGuidelines: {\n one: \"Minimum 8 characters without any space.\",\n two: \"One Uppercase, One Lowercase and One Numeric value\",\n three: \"One special character\",\n },\n loginAuth: {\n Hi: \"Hi, \",\n forgotpin: \"Forgot PIN?\",\n or: \"Or\",\n skipTxt: \"Skip\",\n loginWithFingerprint: \"Login with fingerprint / faceId\",\n setPin: \"Set 4 digit PIN\",\n enterPin: \"Enter PIN\",\n confirmPin: \"Confirm PIN\",\n enableFingerPrint: \"Do you want to enable fingerprint?\",\n enableFingerPrintInfo:\n \"You can use your fingerprint for easy login to this App\",\n enableTxt: \"Enable\",\n skipNow: \"Skip for now\",\n verifyIdentity: \"Verify your identity\",\n verifyIdentityInfo: \"You can use Touch ID to login\",\n touchSensor: \"Touch the fingerprint sensor\",\n newPin: \"New PIN\",\n oldPin: \"Old PIN\",\n resetPin: \"Reset 4 digit PIN\",\n resetPinSuccess: \"Device pin changed successfully.\",\n },\n common: {\n termsConditions: \"Terms and Conditions\",\n euinDeclaration: \"EUIN Declaration\",\n serviceDashboard: \"Service Dashboard\",\n depReq: \"Service Request To Depositories\",\n nctDisableAboveThreshHold:\n \"You cannot access this service request as your cumulative AUM across all funds in the PAN exceeds 10Lakhs\",\n FAQ: \"FAQs\",\n noFoliosFound: \"No Folios Found\",\n referFAQ: \"For more information, please refer to \",\n back: \"Back\",\n otpinput: \"Enter OTP\",\n resendotp: \"Resend OTP in \",\n didntReceiveotp: \"Didn't receive OTP? \",\n resendtext: \"Resend\",\n equity: \"Equity\",\n debt: \"Debt\",\n liquid: \"Liquid\",\n asOn: \"As on\",\n viewMore: \"View More\",\n validatingIFSC: \"Validating IFSC\",\n invalidIFSC: \"Invalid IFSC code\",\n IFSCValidated: \"IFSC Validated\",\n noRecordsFound: \"No Records Found\",\n noOtp: \"Please enter otp\",\n spaceNotAllowed: \"Spaces are not allowed\",\n notAlligibleForPekrn: \"Not eligible for pekrn user\",\n cityMaxLength: \"City name should be less than 50 characters\",\n stateMaxLength: \"State should be less than 50 characters\",\n errors: {\n dob: {\n dobRequired: \"DOB required\",\n ageLessThanHundred: \"Age should be less than 100 years\",\n minDOBValidation: \"Date of birth should not exceed current date\",\n minorAgeValidation: \"You cannot be of a minor age.\",\n },\n password: {\n oldPasswordRequired: \"Please enter Old Password\",\n confirmPasswordRequired: \"Please enter confirm Password\",\n newPasswordRequired: \"Please enter New Password\",\n required: \"PAN / PEKRN Required\",\n minLengthError: \"PAN / PEKRN Should be 10 digit unique alphanumeric \",\n confirmPasswordError:\n \"Set New Password and Confirm New Password should be Same\",\n setPassword: \"Please enter password\",\n confirmPassword: \"Please confirm password\",\n },\n displayname: {\n required: \"Display name Required\",\n noSpecialCharacters: \"Special characters are not allowed\",\n },\n otp: {\n required: \"Otp Required\",\n length: \"Not a valid otp\",\n },\n email: {\n required: \"Email Required\",\n regex: \"Enter a valid Email ID\",\n },\n mobile: {\n required: \"Mobile Number Required\",\n regex: \"Enter a valid Mobile Number\",\n mobileLength: \"Mobile number must be of 10 digits\",\n },\n relationship: {\n emailRequired: \"Email Relationship is required\",\n mobileRequired: \"Mobile Relationship is required\",\n },\n pan: {\n required: \"PAN / PEKRN Required\",\n regex: \"Enter valid PAN / PEKRN number\",\n individualPan: \"Enter individual PAN number\",\n matchError: \"Pan should not be same as Guardian pan\",\n },\n bankErrors: {\n sameBankDetails:\n \"For a seamless experience, please ensure that the New Bank Details and Existing Bank Details are not the same.\",\n accountNo: {\n required: \"Account number required\",\n regexError: \"Please enter valid Account Number\",\n },\n accountType: \"Please select account type\",\n name: \"Please enter bank name\",\n ifsc: {\n required: \"Please enter ifsc code\",\n regex: \"Enter valid IFSC code\",\n },\n branch: \"Please enter branch name\",\n city: \"Please enter bank location\",\n },\n modeOfHolding: \"Please select mode of holding\",\n taxResidency: \"Please select tax residency\",\n },\n HoldingType: {\n title: \"Holding Type:\",\n allHoldings: \"All Holdings\",\n zeroHoldings: \"Zero Holdings\",\n nonZeroHoldings: \"Non-Zero Holdings\",\n },\n fundInfoModal: {\n info1:\n \"Portfolio and Common Account Statement (CAS) will cover only folios that have the first holder PAN and mobile number same as used during registration onto MFCentral.\",\n info2:\n \"Please also note that Service requests will be allowed only in the above folios under ‘Single’ or ‘Anyone or Survivor’ Mode of holding. Service request are currently also not allowed in Mutual Fund investments held in Demat form.\",\n info3:\n \"Please refer to the ‘Unregistered folio’ section or FAQs for more information on any missing folio or investment details\",\n },\n resetDevices: {\n resetTxt: \"Reset\",\n devicesTxt: \"Device\",\n cancel: \"Cancel\",\n },\n forceUpdate: {\n forceInfo:\n \"A new version is available.You have to download and install it,before you can continue to use the app\",\n skipInfo:\n \"A newer version is available.You may wish to skip or download the latest version\",\n },\n save: \"Save\",\n cancel: \"Cancel\",\n },\n unclaimedPayouts: {\n mainHeading: \"View Unclaimed Payouts\",\n subHeading: \"Please select the Folio(s)/ Scheme(s):​\",\n },\n trackStatus: {\n searchWithTransaction: \"Search with Transaction ID\",\n serviceRequestType: \"SERVICE REQUEST TYPE\",\n },\n sebi: {\n mainHeading: \"Consolidated Account Statement\",\n noFoliosToDownload:\n \"There are currently no folios available to download the CAS\",\n sebiInfo:\n \"The Consolidated Account Statement (CAS) as the name suggests is a statement that consists of all the mutual fund holidings of the person in which he/she might have invested over multiple mutual fund houses, over a given period of time. This gives you vital information pertaining to your funds like the Net Asset Value (NAV), NAV date, market value. The whole purpose of CAS is to keep the investor informed about the performance of the Mutual Fund in which they have invested their money.\",\n statementType: \"Statement Type\",\n period: \"Dated\",\n periodContent: \"As on 16 Jun 2021\",\n periodDisclaimer:\n \"Note: Under Summary option, the date selection is by default of today and will be non-editable\",\n folioListing: \"Folio Listing\",\n selectionHeading: \"Please choose what are all Folios to be included\",\n email: \"Email\",\n emailSelectionHeading:\n \"Please select the available email ID from drop down to change\",\n pan: \"PAN\",\n password: \"Password\",\n passwordSuggestion:\n \"Enter password of 8 digits with combination of both number & characters.\",\n selectPeriod: \"Please select the period\",\n table: {\n head: \"Portfolio Summary (Demat/Non-Demat Folios)\",\n submitLabel: \"Download\",\n },\n submit: \"Submit\",\n submitting: \"Submitting\",\n downloading: \"Downloading\",\n modal: {\n note: \"NOTE\",\n download: \"Download\",\n info1:\n \"Please Note: You can download CAS only 30 mins after the submission of request. Since CAS is aggregated using PAN and Primary Mobile Number combination, for a seamless experience, please ensure to update your primary mobile number for all folio(s).\",\n info2:\n \"Please Note: Demat holdings are updated once per week in the CAS. Hence, please check for your latest transactions after 7 working days.\",\n },\n },\n networkText: {\n timeOut: \"Your active session has timeout. Request you re-login.\",\n unableToProcess:\n \"Sorry! We are unable to process your request. Please re-try after sometime.\",\n },\n dbCommercial: {\n heading: \"Make \",\n headingBold: \"Commercial Transactions\",\n noNominee: {\n indNote:\n \"By checking this box, I agree to not nominate for below folio(s)\",\n },\n subheading: \"\",\n ctLinks: {\n newPurchase: \"Lumpsum/SIP\",\n additionalPurchase: \"Invest More\",\n sip: \"SIP\",\n redemption: \"Redemption\",\n switch: \"Switch\",\n stp: \"STP\",\n swp: \"SWP\",\n sipPause: \"Systematic Transactions\",\n sipPauseDetails: \"Systematic Transaction Details\",\n eMandate: \"eMandate\",\n },\n additionalPurchase: {\n heading: \"Invest More\",\n purchaseInfo: \"Please Select Scheme to Purchase\",\n investmentPage: {\n rightHeading: \"Investment Details\",\n pan: \"PAN No.\",\n viewMore: \"View More\",\n },\n errors: {\n enterARN: \"Please enter valid ARN Code\",\n enterSubBrokerARN: \"Please enter Sub Broker Code\",\n enterEUIN: \"Please enter valid EUIN Number(6 digits)\",\n enterRIA: \"Please enter valid RIA Code(9 digits)\",\n emptyFolio: \"Folio cannot be empty\",\n },\n },\n otmCancel: {\n heading: \"OTM Cancel\",\n },\n sip: {\n heading: \"SIP\",\n purchaseInfo: \"Please Select Scheme for SIP\",\n investmentPage: {\n rightHeading: \"Investment Details\",\n pan: \"PAN No.\",\n },\n errors: {\n emptyInstallment: \"Empty Installments\",\n emptySip: \"Empty SIP\",\n invalidInstallment: \"Invalid Installment\",\n sipDay: \"SIP Day and start date are different\",\n },\n },\n stp: {\n heading: \"STP\",\n stpDetails: \"STP Details\",\n minAmount: \"Minimum Amount\",\n stpType: \"STP Type\",\n fixed: \"Fixed\",\n notAllowed: \"STP is not allowed for this scheme\",\n variable: \"Variable\",\n frequency: \"Frequency\",\n daily: \"Daily\",\n weekly: \"Weekly\",\n monthly: \"Monthly\",\n quarterly: \"Quarterly\",\n noOfTransfers: \"No. of Transfers\",\n enterHere: \"Enter Here\",\n stpDay: \"STP Day\",\n selectDay: \"Select Day\",\n fromDate: \"From Date\",\n toDate: \"To Date\",\n amountInstallment: \"Amount per Installment\",\n button: \"Proceed\",\n },\n swp: {\n heading: \"SWP\",\n swpDetails: \"Please select scheme for SWP\",\n notAllowed: \"SWP is not allowed for this scheme\",\n },\n sipPause: {\n heading: \"SIP Pause\",\n },\n sipCancel: {\n heading: \"SIP Cancel\",\n },\n sipTransaction: {\n heading: \"Latest Transactions\",\n },\n profileDetails: {\n nominees: {\n noNominee: \"I do not wish to nominate\",\n addressCheck: \"Address same as Investor\",\n },\n },\n exploreMfs: {\n heading: \"Explore Mutual Funds\",\n okay: \"Okay\",\n searchmf: \"Search Mutual Fund Scheme\",\n allMfHouses: \"All Mutual Fund Houses\",\n viewAll: \"View All\",\n filter: \"FILTER\",\n mfCategory: \"Mutual Funds By Category\",\n inactiveScheme: \"Inactive Scheme\",\n inactiveSchemeInfo:\n \"This scheme is inactive, please select another scheme\",\n equity: \"Equity\",\n debt: \"Debt\",\n hybrid: \"Hybrid\",\n other: \"Other\",\n liquid: \"Liquid\",\n solutionOriented: \"Solution Oriented\",\n debtInfo: \"For short to medium term\",\n equityInfo: \"For long term (4 years or more)\",\n hybridInfo: \"For medium to long term\",\n mfFundSize: \"Mutual Funds By Fund Size\",\n below100Cr: \"Below 100 Crores\",\n upto500Cr: \"100-500 Crores\",\n upto1000Cr: \"500-1000 Crores\",\n above1000Cr: \"Above 1000 Crores\",\n mfByRisk: \"Mutual Funds By Risk\",\n low: \"Low\",\n moderatelyLow: \"Moderately Low\",\n moderate: \"Moderate\",\n moderatelyHigh: \"Moderately High\",\n high: \"High\",\n veryHigh: \"Very High\",\n filters: \"Filters\",\n fundHouse: \"Fund House\",\n searchAmc: \"Search AMC\",\n category: \"Category\",\n fundSize: \"Fund Size\",\n selectScheme: \"Select Schemes\",\n risk: \"Risk\",\n investmentType: \"Investment Type\",\n onlySip: \"Only SIP\",\n onlyLumpsum: \"Only Lumpsum\",\n clearAll: \"Clear All\",\n selectedFilters: \"Selected Filters\",\n wishlist: \"Wishlist\",\n share: \"Share\",\n changeSchemePlan: \"Change Scheme plan here\",\n startSip: \"Start SIP \",\n startLumpsum: \"Start Lumpsum\",\n Sip: \"SIP\",\n Lumpsum: \"Lumpsum\",\n returns: \"Returns - \",\n aum: \"AUM\",\n nav: \"NAV\",\n exitLoad: \"Exit Load\",\n minLumpsum: \"Min Lumpsum/SIP\",\n fundType: \"Fund Type\",\n plan: \"Plan\",\n planFilterTitle: \"Select Plan\",\n returnDuration: \"Return Duration\",\n minimumInvestmentFilterTitle: \"Min Investment\",\n returnCalculator: \"Return Calculator\",\n overThePast: \"Over the past\",\n totalInvestment: \"Total Investment\",\n fundsReturn: \"This Fund's Returns\",\n fundManager: \"Fund manager\",\n sectors: \"Sectors\",\n companies: \"Companies\",\n sector: \"Sector\",\n company: \"Company\",\n allocation: \"Allocation\",\n showAll: \"Show all\",\n showLess: \"Show less\",\n returnCalcDisclaim:\n \"The above returns & would be amount is computed basis past data, it is not necessary for the scheme to have similar or more returns, investment in this scheme is at your sole discretion\",\n errors: {\n kycError: \"Please fill all KYC details\",\n nomineeShare100: \"Nominee share must be 100 percent\",\n noNominee: \"Please check I do not wish to nominate or add nominees\",\n enterDistSubDist: \"Please enter ARN Code\",\n EUINmandatory: \"Euin Number is mandatory\",\n euinDeclaration: \"Please check the EUIN declaration\",\n RIAMandatory: \"Ria code is mandatory\",\n ISINMandatory: \"Isin is mandatory\",\n NameDOBOccupationRequired:\n \"investor name or dob or occupation or email or mobile are required\",\n BankDetailsMandatory: \"Bank Details are mandatory\",\n netWorth: \"Net Worth is mandatory\",\n euinFlag: \"Euin declartaion is required\",\n distId: \"ARN Code is required\",\n subDist: \"Sub Broker Code is required\",\n zeroNetWorth: \"Networth must be greater than zero\",\n fillAllDetails: \"Please fill tax Details\",\n fatcaDetails: \"Please fill fatca Details\",\n minLengthForArn: \"Min length of 4 digits required for arn codes\",\n maxLengthForEuin: \"Euin No should be 6 digits\",\n taxStatusError: \"Please select the tax status to Individual\",\n fatherName: \"Please enter father name\",\n netWorthDate: \"Please select net worth date\",\n occupation: \"Please Select Occupation\",\n spouseName: \"Please enter spouse name\",\n annualIncomeSlab: \"Please Select Annual Income\",\n pepFlag: \"Please Select PEP Status\",\n addressType: \"Please Select Address Type\",\n sourceOfWealth: \"Please Select Source of Wealth\",\n placeOfBirth: \"Please enter Place of Birth\",\n remarks: \"Please enter remarks\",\n chequeRequired: \"Please upload a cheque for penny-drop\",\n relationshipError: \"Email and mobile relationship are required\",\n },\n mfInvestment: {\n stpAmount: \"STP Amount\",\n swpAmount: \"SWP Amount\",\n selectSwpDay: \"Select SWP day\",\n selectStpDay: \"Select STP day\",\n existing: \"Select Existing Folio\",\n new: \"Create new Folio\",\n purAllow: \"One time purchase is not allowed for this scheme\",\n sipAllow: \"SIP is not allowed for this scheme\",\n investmentMode: \"Investment Mode\",\n investmentDetails: \"Investment Details\",\n investingThrough: \"Investing Through\",\n purchaseType: \"Select purchase type\",\n enterArn: \"Enter ARN\",\n subBrokerCode: \"Sub Broker code\",\n subBrokerArnCode: \"Sub Broker ARN code\",\n euinNo: \"EUIN No.\",\n yes: \"YES\",\n no: \"NO\",\n iAgree: \"I agree to \",\n euinDeclaration: \"EUIN Declaration\",\n lumpsumAmount: \"Lumpsum Amount\",\n sipAmount: \"SIP Amount\",\n disclaimers: \"I hereby agree to the\",\n disclaimersLink: \"Disclaimers \",\n and: \" and \",\n termsLink: \" Terms and Conditions\",\n of: \" of \",\n mfCentral: \"MFCentral\",\n addToCart: \"Add to Cart\",\n invest: \"Invest\",\n profileDetails: \"Profile Details\",\n edit: \"Edit\",\n prefilled:\n \"We have pre-filled details from your latest transacted folio\",\n personalDetails: \"Personal Details\",\n name: \"Name\",\n panNo: \"PAN No.\",\n moh: \"MOH\",\n nomineeDetails: \"Nominee Details\",\n bankDetails: \"Bank Details\",\n fatcaDetails: \"FATCA Details\",\n nominee: \"Nominee \",\n ifsc: \"IFSC\",\n accountNo: \"Account No\",\n countryofTaxR: \"Country of Tax Residency\",\n tinorEqui: \"TIN or equivalent\",\n taxIdType: \"Tax Id Type\",\n frequency: \"Frequency\",\n selectSipDay: \"Select the SIP day\",\n howLong: \"How long should this SIP run?\",\n untilIStop: \"Until I stop\",\n Or: \"Or\",\n tenure: \"Tenure\",\n years: \"Years\",\n bank: {\n ifsc: \"IFSC\",\n accountNo: \"Account No\",\n branch: \"Branch\",\n name: \"Bank Name\",\n },\n fatca: {\n cotr: \"Country of Tax Residency\",\n tin: \"TIN or Equivalent\",\n taxIdType: \"Tax Id Type\",\n countryOfBirth: \"Country of Birth\",\n nationality: \"Nationality\",\n },\n riaCode: \"RIA Code\",\n },\n mfPayment: {\n selectPayment: \"Select Paymode Mode\",\n otm: \"One Time Mandate\",\n upi: \"UPI\",\n netBanking: \"Net Banking\",\n modeOfRegistration: \"Mode of Registration\",\n otmRowStatus: \"OTM is not active\",\n otmUmrnEmpty: \"UMRN can't be empty\",\n addNew: \"Add new\",\n investmentDetails: \"Investment Details\",\n investingThrough: \"Investing Through\",\n investmentType: \"Investment Type\",\n investmentAmount: \"Investment Amount\",\n transactionNumber: \"Transaction Number\",\n payVia: \"Pay via \",\n enterUPIId: \"Enter UPI ID\",\n modal: {\n heading: \"Add New Bank Mandate\",\n mandateAmount: \"Mandate Amount\",\n bankAccount: \"Bank Account\",\n ifsc: \"IFSC \",\n submit: \"Submit\",\n },\n otmMaxAmountLabel:\n \"Max amount should be greater than investment amount\",\n otmExpiried: \"This OTM is not in range b/w SIP Start and End Dates\",\n otmNotEligible: \"This otm is not eligible\",\n },\n eMandate: {\n existingOtm: \"Existing One Time Mandate\",\n newOtm: \"New One Time Mandate\",\n umrnNo: \"UMRN Number -\",\n mandateAmount: \"Mandate Amount -\",\n mandateEndDate: \"Mandate End Date -\",\n mandateBank: \"Mandate Bank - \",\n registerMandate: \"Register eMandate\",\n enterFollowing: \"Please enter the following details\",\n enterBankDetails: \"Please enter Bank details\",\n submit: \"Submit\",\n gotoEmandate: \"Go To Emandate\",\n declaration: \"I hereby agree to the terms & conditions of MFCentral\",\n form: {\n required: {\n investorName: \"Investor Name is Required\",\n email: \"Email is Required\",\n mobile: \"Mobile Number is Required\",\n branch: \"Branch is Required\",\n ifsc: \"IFSC Code is required\",\n accountHolder: \"Account Holder name is required\",\n accountNo: \"Account no is required\",\n amount: \"Amount is required\",\n fromDate: \"From Date is required\",\n toDate: \"To Date is required\",\n confirmAccountNoValidationMsg:\n \"Confirm account number does not match with account No\",\n selectUntilToday: \"Please select\",\n bankName: \"Please select bank\",\n ifscAndBank: \"Ifsc and Bankname should be same bank\",\n existingBankError:\n \"Previously selected bank is not present in the current list\",\n },\n lengths: {\n mobile: \"Mobile Number should be 10 digits\",\n eMandateDuration: \"E-Mandate duration should be minimum 6 months\",\n },\n invalid: {\n email: \"Email is Invalid\",\n mobile: \"Mobile Number is Invalid\",\n ifsc: \"IFSC Code is Invalid\",\n amount: \"Amount cannot exceed 10 Lakhs\",\n },\n },\n fields: {\n investorPan: \"Investor PAN No.\",\n investorName: \"Investor Name\",\n investorMail: \"Investor Email\",\n mobileNo: \"Mobile No.\",\n ifscCode: \"IFSC Code\",\n branchName: \"Branch Name\",\n accountHolder: \"Account Holder Name\",\n amount: \"Amount\",\n bank: \"Bank\",\n bankAccountNo: \"Bank account number\",\n confirmBankAccountNo: \"Confirm Bank account number\",\n accountType: \"Account Type\",\n frequency: \"Frequency\",\n fromDate: \"From Date(dd/mm/yyyy)\",\n toDate: \"To Date(dd/mm/yyyy)\",\n untilCancelled: \"Until cancelled\",\n },\n },\n mfCart: {\n heading: \"My Cart \",\n cartDetails: \"Cart Details\",\n schemesAdded: \" Schemes Added to cart\",\n lumpsum: \"Lumpsum\",\n sip: \"SIP\",\n scheme: \"Scheme\",\n totalAmount: \"Total Amount\",\n proceedToPay: \"Proceed to Pay\",\n addMoreFunds: \" Add More Funds\",\n amountPayable: \"Amount Payable : \",\n },\n successScreen: {\n heading: \"Success!\",\n headingInfo:\n \"Your request is successfully submitted with tracking reference number \",\n investmentSummary: \"Investment Summary \",\n scheme: \"Scheme\",\n panNo: \"PAN No.\",\n folio: \"Folio\",\n investmentType: \"Investment Type\",\n investmentAmount: \"Investment Amount\",\n paymentMode: \"Payment Mode\",\n date: \"Date\",\n Id: \"ID\",\n goToTransact: \"Track My Request\",\n },\n failureScreen: {\n heading: \"Oops!\",\n headingInfo:\n \"Dear Investor,​ Due to technical difficulties, we couldn’t process your request at this moment. Please try again in sometime.​\",\n },\n pendingScreen: {\n heading: \"Pending\",\n },\n },\n fatcaStatus: {\n heading: \"FATCA Status\",\n info1: \"Your PAN is not FATCA verified.\",\n info2: \"Please continue to update FATCA details, now.\",\n info3: \"You can re-initiate this transaction after submitting the FATCA.\",\n cancel: \"Cancel\",\n continue: \"Continue\",\n checking: \"Checking FATCA Status...\",\n },\n otmStatus: {\n heading: \"OTM Status\",\n info1: `You do not have any active OTM linked`,\n lumpsum: \"Lumpsum\",\n eMandate: \"Go to eMandate\",\n checking: \"Fetching Details...\",\n continue: \"Continue\",\n },\n newPurchase: {\n heading: \"Lumpsum/SIP\",\n vrFooterSource: \"Source: \",\n vrFooterInfo: \"Value Research India Pvt Ltd\",\n leftMenu: {\n personalDetails: \"Personal Details\",\n contactDetails: \"Contact Details\",\n bankDetails: \"Bank Details\",\n nomineeDetails: \"Nominee Details\",\n fatcaKyc: \"FATCA & KYC Details\",\n kyc: \"KYC Details\",\n editProfileDetails: \"Edit Profile Details\",\n },\n rightMenu: {\n modeOfHolding: \"Mode of Holding\",\n income: \"Income\",\n firstHolderDetails: \"First Holder Details​\",\n emailRelationship: \"Email Relationship\",\n mobileRelationship: \"Mobile Relationship\",\n firstHolderName: \"First Holder Name\",\n firstHolderPan: \"First Holder PAN\",\n taxStatus: \"Tax Status\",\n netWorth: \"Net Worth\",\n moh: \"Mode of Holding\",\n gender: \"Gender\",\n dob: \"DOB\",\n email: \"Email\",\n occupation: \"Occupation\",\n secondHolderDetails: \"Second Holder Details\",\n secondHolderName: \"Second Holder Name\",\n secondHolderPan: \"Second Holder PAN\",\n address: \"Address\",\n proceed: \"Proceed\",\n mobile: \"Mobile\",\n noNominee: \"No Nominees associated for this Folio!\",\n fatcaEdit: {\n heading: \"Edit FATCA Details\",\n countryOfTaxResidency: \"Country of Tax residency - \",\n taxId: \"Tax ID - \",\n type: \"Type - \",\n addId: \"+ Add ID\",\n submit: \"Submit\",\n },\n kyc: {\n pep: \"Pep Status\",\n netWorth: \"Net Worth\",\n netWorthDate: \"Net Worth Date\",\n addressType: \"Address Type\",\n sow: \"Source of Wealth\",\n sof: \"Source of Funds\",\n fatherName: \"Father Name\",\n spouseName: \"Spouse Name\",\n cservices: \"Corporate Services\",\n remarks: \"Remarks\",\n placeOfBirth: \"Place Of Birth\",\n },\n bank: {\n accountNo: \"Account No\",\n accountType: \"Account Type\",\n ifsc: \"IFSC\",\n micr: \"MICR Code\",\n },\n },\n validations: {\n lumpsumError: {\n minInvest: `Min. `,\n multipleOf: `multiple of `,\n maxInvest: \"Max. \",\n },\n NB: {\n bankNotSupportError: \"This fundhouse is not allowing selected bank\",\n paymentProviderError: \"Payment provider not allowing.\",\n notSupported: \"Netbanking not supported for given fund house\",\n },\n OTM: {\n bankNotSupportError: \"This fundhouse is not allowing selected bank\",\n paymentProviderError: \"Payment provider not allowing.\",\n notSupported: \"OTM not supported for given fund house\",\n },\n UPI: {\n bankNotSupportError: \"This fundhouse is not allowing selected bank\",\n paymentProviderError: \"Payment provider not allowing.\",\n notSupported: \"UPI not supported for given fund house\",\n },\n },\n paymentFlow: {\n initiatingPayment: \"Intiating Payment\",\n redirectingToPayment: \"Redirect to Payement\",\n successMessage: \"Your transaction has been accepted with Reference No \",\n },\n },\n redemption: {\n heading: \"Redemption\",\n investmentDetails: \"Investment Details\",\n selectSchemeToRedeem: \"Please select scheme to redeem\",\n redeemBy: \"Redeem By\",\n amount: \"Amount\",\n units: \"Units\",\n enter: \"Enter \",\n redeemable: \"Redeemable \",\n remaining: \"Remaining \",\n redeemFullAmount: \"Redeem Full Amount\",\n redeemFullUnits: \"Redeem All Units\",\n proceedBtn: \"Proceed\",\n redeemDetails: \"Redeem Details\",\n selectedFolio: \"Selected Folio\",\n currentValue: \"Available Amount\",\n totalBalanceUnits: \"Total Balance Units\",\n totalAmount: \"Total Available Amount\",\n redeemableUnits: \"Redeemable Units\t\",\n currentNav: \"Current NAV\",\n asOn: \"As on \",\n errors: {\n invalidAmount: \"Invalid Amount\",\n invalidUnits: \"Invalid Units\",\n maxAmount: \"Amount cannot be more than\",\n minAmount: \"Amount cannot be less than\",\n maxUnits: \"Units cannot be more than\",\n multiples: \"Amount should be multiple of\",\n },\n redemptionSummary: {\n redemptionSummary: \"Redemption Summary\",\n fund: \"Fund \",\n currentValue: \"Current Value\",\n redemptionUnits: \"Redemption Units\",\n remainingUnits: \"Remaining Units\",\n exitLoadUnits: \"Exit Load Units\",\n amountCreditedTo: \"Amount will be credited to : \",\n redeemAfter: \"Redeem after 1 year of purchase to \",\n redeemAfterSpan: \"save 5% extra tax\",\n proceed: \"Proceed\",\n stayInvested: \"Stay Invested\",\n redemptionReason: \"What is your reason for Redemption?\",\n goalAchieved: \"My Goal or Target Achieved\",\n needFunds: \"I need Funds\",\n poorPerformance: \"Poor Performance\",\n investInOther: \"I want to invest in another scheme\",\n cancel: \"Cancel\",\n },\n },\n switch: {\n heading: \"Switch\",\n switchFromInfo: \"Please select the scheme you want to switch from\",\n switchToInfo: \"Please select the target scheme\",\n switchFromAmountError: \"Amount is greater than available amount\",\n switchFromUnitError:\n \"Units is greater than available units in the switch from scheme\",\n selectedSwitchFrom: \"Selected From Scheme\",\n folioNo: \"Folio No\",\n totalBalanceUnits: \"Total Balance Units\",\n currentNav: \"Current NAV\",\n asOn: \"As on \",\n edit: \"Edit\",\n from: \"From\",\n to: \"To\",\n selectSwitchTo: \"Please Select Switch To Scheme\",\n switchDetails: \"Switch Details\",\n switchFrom: \"Switch From\",\n switchTo: \"Switch To\",\n switchFullAmount: \"Switch Full Amount\",\n switchFullUnits: \"Switch Full Units\",\n minSwitchAmount: \"Min. Switch amount\",\n minSwitchUnits: \"Min. Switch units\",\n exitLoad: \"Exit Load\",\n viewDetails: \"View Details\",\n filters: {\n existing: \"Existing\",\n newSchmes: \"New Schemes\",\n },\n errors: {\n noFunds: \"No funds available\",\n noFolios: \"No Folios Found\",\n EUIEmpty: \"EUI Code can't be empty\",\n acceptEUINDeclaration: \"Please Accept EUIN Declaration\",\n selectEUIN: \"Select Euin Option\",\n invalidARN: \"Invalid ARN\",\n RIALength9: \"Ria code should be of length 9\",\n amountEmpty: \"Amount can't be empty\",\n amountNegative: \"Amount can't be negative\",\n amountGreaterThan: \"Amount can not be greater than\",\n empty: \"can not be empty\",\n negative: \"can not be negative\",\n lessThan: \"can not be less than\",\n multiples: \"should be multiple of\",\n },\n },\n errors: {\n riaCodeRequired: \"Ria code is required\",\n riaCodeMin: \"Ria code is minimum 6 characters\",\n arn1Required: \"ARN-Code is required\",\n arn1Min: \"ARN-Code is minimum 6 charcters\",\n arn2Required: \"Sub-ARN is required\",\n arn2Min: \"Sub-ARN is minimum 6 charcters\",\n termsAndCondition: \"Please accept terms and conditions to proceed\",\n moh: \"The folio cannot be selected as the folio(s)/scheme is not eligible as the mode of holding is not single\",\n \n ct_minor:\n \"The folio(s)/scheme has Minor tax status but the age is above 18\",\n ct_nro:\n \"The folio cannot be selected as the folio(s)/scheme has NRI tax status without NRO bank account type\",\n \n avaialbleUnits:\n \"The folio cannot be selected as the folio(s)/scheme is not eligible has zero available amount\",\n noIFSC:\n \"IFSC code is not updated in your folio, please update IFSC code through Service Request and proceed for transaction\",\n ifscBank:\n \"IFSC code is not updated in your selected bank, please select a different bank\",\n noFundsAvailable: \"No amount/units available\",\n },\n termsModal: {\n additionalPurchase: {\n info1:\n \"I/We have read and understood the contents of the Scheme Information Document(s), Key Information Memorandum and Addenda issued for the respective scheme(s). I/We hereby apply to the Trustee of Mutual Fund and agree to abide by terms and conditions, rules, and regulation of the relevant scheme(s) / Mutual Fund. Also note that participating AMC(s) and their RTA(s) has every right to reject for various regulatory / statutory / internal requirements where folio / PAN is freezed / locked.\",\n info2:\n \"I/We confirm that payment for this transaction has been done through my/own bank account number which is registered in the folio and no third-party account is used for such payments. In case of any non-compliance, I/We authorize you to refund the said amount to the account where it is debited and will be liable for any consequences arising thereof.\",\n info3:\n \"Please note that w.e.f. 01.02.2021, NAV applicability and allotment of units for investment(s) is subject to realization of funds by the Mutual Fund. Online transfer of funds to the respective Mutual Fund account may take from a minimum of 1 to a maximum of 3 days for realization, depending on the banking arrangements of the Mutual Fund. This change is implemented as per SEBI Circular SEBI/HO/IMD/DF2/CIR/P/2020/253.\",\n },\n sip: {\n info1:\n \"I/We have read and understood the contents of the Scheme Information Document(s), Key Information Memorandum and Addenda issued for the respective scheme(s) and propose to open an account with one or more of the participating AMCS. I/We hereby agree to abide by terms and conditions, rules and regulation of the relevant scheme(s) / Mutual Fund.\",\n info2:\n \"I/We, hereby authorize concerned RTA(s) (who are co-hosting MF Central platform) to obtain any documents / specimen signature / information provided by me to any of the KRAs (Know your Customer Registration Agency) for the purpose of opening the Account. I/We further agree and confirm that concerned RTA(s) (who are co-hosting MF Central platform) can obtain such documents directly from any of the KRAs to whom the documents have been provided by me and no further authorization to the KRA from me is required. I/We further understand that these specimen signatures will be used for validating signatures in case of any physical transactions done by me/us. I/We further confirm that no physical application is being given by me/us for fresh purchases through this facility and the above documents obtained from KRAs can be used for the purpose of opening the account with any of the participating AMC. I/We further authorize concerned RTA(s) (who are co-hosting MF Central platform) to take further steps as it may deem necessary for opening the account if the information found in the KRA records is inadequate. I/We confirm that payment as and when made through MF Central application, will be done through my/own bank account number which is registered in the folio and no third-party account is used for such payments. In case of any non-compliance, I/We authorize you to refund the said amount to the account where it is debited, and I/We will be liable for any consequences arising thereof. Also note that participating AMC(s) and their RTA(s) has every right to reject for various regulatory / statutory / internal requirements where folio / PAN is freezed / locked.\",\n info3:\n \"Please note that w.e.f. 01.02.2021, NAV applicability and allotment of units for investment(s) is subject to realization of funds by the Mutual Fund. Online transfer of funds to the respective Mutual Fund account may take from a minimum of 1 to a maximum of 3 days for realization, depending on the banking arrangements of the Mutual Fund. This change is implemented as per SEBI Circular SEBI/HO/IMD/DF2/CIR/P/2020/253.\",\n },\n newPurchase: {\n info1:\n \"I/We have read and understood the contents of the Scheme Information Document(s), Key Information Memorandum and Addenda issued for the respective scheme(s) and propose to open an account with one or more of the participating AMCS. I/We hereby agree to abide by terms and conditions, rules, and regulation of the relevant scheme(s) / Mutual Fund.\",\n info2:\n \"I/We, hereby authorize concerned RTA(s) (who are co-hosting MF Central platform) to obtain any documents / specimen signature / information provided by me to any of the KRAs (Know your Customer Registration Agency) for the purpose of opening the Account. I/We further agree and confirm that concerned RTA(s) (who are co-hosting MF Central platform) can obtain such documents directly from any of the KRAs to whom the documents have been provided by me and no further authorization to the KRA from me is required. I/We further understand that these specimen signatures will be used for validating signatures in case of any physical transactions done by me/us. I/We further confirm that no physical application is being given by me/us for fresh purchases through this facility and the above documents obtained from KRAs can be used for the purpose of opening the account with any of the participating AMC. I/We further authorize concerned RTA(s) (who are co-hosting MF Central platform) to take further steps as it may deem necessary for opening the account if the information found in the KRA records is inadequate. I/We have neither received nor been induced by any rebate or gifts, directly or indirectly in making this investment. The ARN holder has disclosed to me/us all the commissions (in the form of trail commission or any other mode), payable to him for the different competing Schemes of various Mutual Funds from amongst which the Scheme is being recommended to me/us. I/We hereby confirm that I/we have not been offered / communicated any indicative portfolio and/or any indicative yield by the respective Mutual Fund / its distributor for this investment. I/We am/are authorized to undertake this transaction. Any other advisory charges shall be paid directly by the investor to the ARN Holder (AMFI registered Distributor) based on the investors' assessment of various factors including the service rendered by the ARN Holder. In case of existing investor where investment amount is Rs.10,000/- or more and your Distributor has opted to receive Transaction Charges, Rs.100/- will be deducted from the purchase amount and paid to the Distributor. Units will be issued against the balance amount invested. I/We confirm that payment as and when made through MF Central application, will be done through my/own bank account number which is registered in the folio and no third-party account is used for such payments. In case of any non-compliance, I/We authorize you to refund the said amount to the account where it is debited, and I/We will be liable for any consequences arising thereof. Also note that participating AMC(s) and their RTA(s) has every right to reject for various regulatory / statutory / internal requirements where folio / PAN is freezed / locked.\",\n info3:\n \"Please note that w.e.f. 01.02.2021, NAV applicability and allotment of units for investment(s) is subject to realization of funds by the Mutual Fund. Online transfer of funds to the respective Mutual Fund account may take from a minimum of 1 to a maximum of 3 days for realization, depending on the banking arrangements of the Mutual Fund. This change is implemented as per SEBI Circular SEBI/HO/IMD/DF2/CIR/P/2020/253.\",\n },\n redemption: {\n info1:\n \"If my/our unit/amount balance is inadequate to meet the request. I/We authorize you to redeem available units/amount and send the proceeds accordingly. I/We are authorized to undertake this transaction.\",\n info2:\n \"I/We have read and understood the contents of the Scheme Information Document(s), Key Information Memorandum and Addenda issued for the respective scheme(s). We hereby apply to the Trustee of Mutual Fund and agree to abide by terms and conditions, rules and regulation of the relevant scheme(s) / Mutual Fund. Also note that participating AMC(s) and their RTA(s) has every right to reject for various regulatory / statutory / internal requirements where folio / PAN is freezed / locked.\",\n info3:\n \"Unit balance available to switch/redeem may be lower than total balance because of ELSS, liens and recently purchased units.\",\n note: \"Note: \",\n },\n switch: {\n info1:\n \"I/We have read and understood the contents of the Scheme Information Document(s), Key Information Memorandum and Addenda issued for the respective scheme(s). I/We hereby apply to the Trustee of Mutual Fund and agree to abide by terms and conditions, rules, and regulation of the relevant scheme(s) / Mutual Fund. Also note that participating AMC(s) and their RTA(s) has every right to reject for various regulatory / statutory / internal requirements where folio / PAN is freezed / locked.\",\n info2:\n \"Unit balance available to switch/redeem may be lower than total balance because of ELSS, liens and recently purchased units.\",\n note: \"Note: \",\n },\n camsEMandate: {\n info: 'One Time Mandate (OTM) through Automated Clearing House facility (ACH) Computer Age Management Services Limited,(\"CAMS\"), the service provider offers the facility of OTM through ACH to facilitate investments through online modes. This facility is in addition to the facility of remitting the money through internet banking. The facility can be availed by the investor by providing a onetime Mandate in the prescribed form and is subject to the following terms and conditions. TERMS AND CONDITIONS ',\n info1:\n \"1) The Mandate will be registered under Automated Clearing House Mechanism (ACH) by CAMS or its appointed Payment Aggregator, (subject to the details provided being in order) through whom the mandate will be registered for the payments due from the Investor, (either for fresh purchase or additional purchase or SIP debits) \",\n info2:\n \"2) The investor agrees to abide by the terms and conditions of NACH facility of National Payment Corporation of India (NPCI), ECS facility of Reserve Bank of India (RBI) as applicable at the time of investment and as may be modified or amended from time to time.\",\n info3:\n \"3) The investor should refer to the Scheme Information Document (SID), Scheme Additional Information(SAI) and Key Information Memorandum, all Instructions, Addenda issued from time to time and available on the Mutual Funds¿ website towards Applicable NAV, Risk Factors, Loads and all other information related to various requirements of the respective Scheme / Plan before providing the OTM. It is deemed that the investor has agreed to all the terms and conditions of the scheme, as prevailing on the date of the providing the OTM. The AMC may amend any of the terms and conditions in the documents referred above, at any time without prior notice to the Investor and such amended terms and conditions will thereupon apply to and be binding on the Investor with respect to the OTM.\",\n info4:\n \"4) Unit holder(s) hereby confirms, acknowledges and undertakes to make payments for subscription of units from their respective bank account(s) only in compliance with applicable provisions relating restriction on third party payments as detailed in the SID / SAI and that the payment will be through legitimate sources only.\",\n info5:\n \"5) The Investor understands that this Facility is merely a transactional facility offered and that CAMS will not be liable for(a) acting in good faith on any instructions received from the investor(b) error, default, delay or inability of the CAMS to act on all or any of the instruction.\",\n info6:\n \"6) Authorization by Bank Account Holder(s) ¿ The Investor should provide the name of the bank & branch, bank account number and give the authorization for Registration under ACH. If the mode of operation of bank account is joint, all bank account holders would need to sign at the places marked. If the transaction is delayed or not effected at all for reasons of incomplete or incorrect information or due to any reason by the investors banker, the investor would not hold the Mutual Fund or the Bank or the service provider responsible\",\n info7:\n \"7) Unit holder(s) need to provide along with the mandate form an original cancelled cheque (or a copy) with name and Bank account number pre-printed which is to be used for registration of the mandate failing which registration may not be accepted. The Unit holder(s) cheque/bank account details are subject to verification. \",\n info8:\n \"8) Where the cancelled cheque or a copy of the cheque does not mention the bank account holders¿ name(s), investor should provide self-attested bank pass book copy / bank statement / bank letter to substantiate that the first unit holder is one of the joint holders of the bank account. \",\n info9:\n \"9) In the event of any mismatch between the bank account number mentioned in the application form and the Account Number appearing in the cheque leaf submitted, bank account number would be updated based on the cancelled cheque leaf provided the name(s) of the investor/applicant appears in the cheque leaf. 6) Applications incomplete in any respect are liable to be rejected. CAMS / Service Provider shall have absolute discretion to reject any such Application Forms.\",\n info10:\n \"10) CAMS or other service providers shall not be responsible and liable for any damages / compensation for any loss, damage etc. incurred by the investor. The investor assumes the entire risk of using this facility and takes full responsibility.\",\n info11:\n \"11) I have understood the terms and conditions as contained above and hereby authorized CAMS/Service provider to register the Bank Account as contained in the application form under ACH and to debit the appropriate amounts from time to time in the above account through the ACH facility. I confirm that the above is an option given to facilitate investment through online facility and CAMS will not be held responsible for any loss direct or indirect arising from the use of the above facility for the investments made by me.\",\n info12:\n \"12) The investor hereby declares that the particulars in one time mandate and any subsequent transactions provided will be correct and complete. If the transaction is delayed or not effected at all for reasons of incomplete or incorrect information or due to any reason by the investor's banker, the investor would not hold the Mutual Fund or the Bank responsible. \",\n info13:\n \"13) Please refer the SID, SAI and Key Information Memorandum, all Instructions, Addenda issued from time to time and available on Funds website towards Applicable NAV, Risk Factors, Loads and all other information related to various requirements of the respective Scheme / Plan before investing. It is deemed that the investor has agreed to all the terms and conditions of the scheme, as prevailing on the date of the application and investment.\",\n info14:\n \"14) Unit holder(s) hereby confirms, acknowledges and undertakes to make payments for subscription of units from their respective bank account(s) only in compliance with applicable provisions relating restriction on third party payments as detailed in the SID / SAI and that the payment will be through legitimate sources only.\",\n info15:\n \"15) The Mutual Fund, its Registrars, Banks and other service providers shall not be liable for, nor be in default by reason of, any failure or delay in completion of its obligation under this facility, where such failure or delay is caused, in whole or in part, by any acts of God, civil war, civil commotion, riots, strike, mutiny, revolution, fire, flood, fog, war, lightening, earthquake, change of Government policies, unavailability of bank's computer system, force majeure events, or any other cause of peril which is beyond their reasonable control and which has the effect of preventing the performance of contract by them. \",\n info16:\n \"16) The responsibility of providing correct bank account information in the onetime mandate or any other application form for this facility solely rests with the Unit holder(s) and the AMC / Fund / RTA / Banks / Service Providers will not be responsible or liable for any loss, claims, liability that may arise on account of any incorrect and / or erroneous data / information supplied by the Unit holder(s).\",\n info17:\n \"17) It will be the sole responsibility of the unit holder(s)¿ bank and its branch to ensure proper registration of the Mandate and confirm registration. It is expressly clarified that the AMC/RTA/Service providers only act as a unit holder’s messenger to unit holders¿ bank to register the mandate and will not be responsible for any action or inaction on part of the unit holders¿ bank. By signing the One Time Mandate form, Unit holder(s) and the bank account holders hereby agree to have authorized the AMC/RTA to register the mandate and process any transactions received thereafter.\",\n info18:\n \"18) The investor agrees to abide by the terms and conditions of NACH facility of National Payment Corporation of India (NPCI), ECS facility of Reserve Bank of India (RBI) as applicable at the time of investment and as may be modified or amended from time to time.\",\n info19:\n \"19) Applicable NAV for the transactions will be dependent upon the time of receipt of the transaction through online mode into RTA server, electronically time-stamped and other factors like scheme, type of transaction, amount of transaction, date and time of realization of clear funds through banking channels, as per detailed provisions mentioned in Scheme Information documents and will be treated on par transactions received through other modes. For the purpose of this Facility, such AMC/RTA offices/Call center/servers would be considered as an Official Point of Acceptance of the transaction.\",\n info20:\n \"20) It will be the responsibility of the Unit holder(s) to ensure that the cumulative transactions for the day for the SIP installments and lump sum purchases are within the mandate amount limit. Where multiple transactions, either for SIP installments or lump sum purchases are due for debit for a single day or where multiple investment requests are received through different modes in a single day and if the value of the cumulative debits exceeds the mandate amount, it may happen that some transaction may be rejected by the Unit holder(s) bank. The Bank may charge the Unit holder(s) for any failed transactions and it will have to be borne by the Unit holder(s) and not by the Fund or the AMC. The Fund may endeavor to give preference to the SIP installments and the lump sum purchases may be debited on the following days.\",\n info21:\n \"21) The unit holder understand that this Facility is merely a transactional facility offered and that the AMC/RTA will not be liable for (a) acting in good faith on any instructions received from the unit holder (b) error, default, delay or inability of the AMC/RTA to act on all or any of the instruction. 19) The unit holder shall always abide by the aforesaid terms and conditions while availing the facility and hereby undertake not to misuse the same and in the event of any damage shall indemnify the AMC/RTA for any loss arising therefrom. 20) The AMC may amend the above terms and conditions, at any time without prior notice to the unit holders and such amended terms and conditions will thereupon apply to and be binding on the unit holders.\",\n info22:\n \"22) Declaration & Signatures: This section needs to be signed by the applicant(s) / unit holder(s) at the places marked as per the proposed/existing mode of holding (i.e. Single, anyone or Survivor)\",\n },\n kfinEMandate: {\n info: \"I/We also confirm that I am/ we are account holder(s) in the bank account from which we are issuing the mandate. Please note that as per regulations the AMC is required to conduct due diligence to identify the source of the transaction and may also call for further supporting documents wherever required if it is found that I / we are not account holder(s) of the mandate registered by us then I/ we recognize that the AMC is likely to reject the same.\",\n info1: \"Please Note :-\",\n info2:\n \"· To register e-mandate you would be redirected to the Net Banking login page. Amount will be debit from your bank A/c for registration depending on the selected bank as per their policy.\",\n info3:\n \"· This e-mandate would get registered as part of SIP transaction with relevant details fetched as entered on this screen and would be available under OTM payment mode for registering fresh SIP transactions.\",\n info4:\n \"· e-mandate (eNACH) registration is not applicable for lumpsum transaction, minor or NRI investors.\",\n },\n },\n euinModal: {\n info: \" I/We hereby confirm that the EUIN box has been intentionally left blank by me/us as this is an “execution-only” transaction without any interaction or advice by the employee/relationship manager/salesperson of the above distributor or notwithstanding the advice of in-appropriateness, if any, provided by the employee/relationship manager/sales person of the distributor and the distributor has not charged any advisory fees on this transaction.\",\n },\n },\n nct: {\n errors: {\n default: \"This folio cannot be selected\",\n moh: 'Folio(s) with mode of holding as \"Single\" are only applicable',\n transactionSource: '\"Demat\" or \"Exchange\" Folio(s) are not allowed',\n minorFolio: ' \"Minor\" Folio(s) are not allowed',\n },\n },\n };\n \n export default enUs;\n ","import {\n BANK,\n INVESTOR_OBJECT,\n INVETSOR_DETAILS_RESPONSE,\n PINCODE,\n } from \"shared/store/types/nct\";\n import {\n IsAllow,\n PORTFOLIO_DATA_RESPONSE,\n SCHEMES_RESPONSE,\n } from \"shared/store/types/portfolio\";\n // import { DividendTableRowType } from \"../makeNct/ChangeIdcw\";\n // import { RowInfoType } from \"../makeNct/ChangeEmail/change-email-list\";\n // import { ConsolidateTableRowType } from \"../makeNct/ConsolidationFolios/types\";\n // import { NomineeInfoRowData } from \"../makeNct/UpdateNominee/types\";\n import { EIGHTEEN_YEARS_IN_MILLISECONDS } from \"../../../utils/constants\";\n // import moment from \"moment\";\n import enUs from \"../../../lang/en-us.js\";\n // import { TaxDetails } from \"../commercial/ExploreMFs/types\";\n \n const { dashboard } = enUs;\n \n export const getTaxStatusCode = {\n \"01\": \"Individual\",\n \"02\": \"On Behalf Of Minor\",\n \"21\": \"NRI-Repatriable (NRE)\",\n \"24\": \"NRI - NRO [Non Repatriation]\",\n \"26\": \"NRI - Minor\",\n \"27\": \"NRI - HUF (NRO)\",\n \"28\": \"NRI - Minor (NRO)\",\n \"29\": \"NRI - HUF (NRE)\",\n };\n \n export const NRICODES_CT = [\"24\"];\n \n export const gettaxStatusPersonal = {\n \"01\": \"Individual\",\n // \"24\": \"NRI - NRO [Non Repatriable]\",\n };\n \n export const getRelationShip = {\n SE: \"Self\",\n SP: \"Spouse\",\n DC: \"Dependent Children\",\n DS: \"Dependent Siblings\",\n DP: \"Dependent Parents\",\n GD: \"Guardian\",\n PM: \"PMS\",\n CD: \"Custodian\",\n PO: \"POA\",\n // \"24\": \"NRI - NRO [Non Repatriable]\",\n };\n \n export const getIncomeValue = {\n \"31\": \"Below 1 Lakh\",\n \"32\": \"1- 5 Lacs\",\n \"33\": \"5-10 Lacs\",\n \"34\": \"10-25 Lacs\",\n \"35\": \"25 Lacs-1 Crore\",\n \"36\": \"Above 1 Crore\",\n };\n export const getPepValue = {\n Y: \"Yes\",\n N: \"No\",\n };\n export const getOccupation = {\n \"1\": \"Business\",\n \"2\": \"Service\",\n \"3\": \"Professional\",\n \"4\": \"Agriculturist\",\n \"5\": \"Retired\",\n \"6\": \"Housewife\",\n \"7\": \"Student\",\n \"8\": \"Others\",\n \"41\": \"Private Sector Service\",\n \"42\": \"Public Sector/ Government Service\",\n \"43\": \"Forex Dealer\",\n \"44\": \"Government Service\",\n };\n \n export const getAddressType = {\n RB: \"Residential or Business\",\n R: \"Residential\",\n B: \"Business\",\n RO: \"Registered Office\",\n };\n \n export const getSourceOfWealth = {\n \"1\": \"Salary\",\n \"2\": \"Business Income\",\n \"3\": \"Gift\",\n \"4\": \"Ancestral Property\",\n \"5\": \"Rental Income\",\n \"6\": \"Prize Money\",\n \"7\": \"Royalty\",\n \"8\": \"Others\",\n };\n \n const NRI_CODES = [\"21\", \"24\", \"26\", \"27\", \"28\", \"29\"];\n \n \n \n const initData = { equity: [], debt: [], liquid: [] };\n \n // Sorting portfolio response with assetType.(Liquid and Cash are identical types considering as Liquid)\n // export function groupByAmcName(data: PORTFOLIO_DATA_RESPONSE[] = []) {\n // const out = data.reduce((prev: any, curr: PORTFOLIO_DATA_RESPONSE) => {\n // const { schemes } = curr;\n // let filterSchemesByType: any = {};\n // schemes.forEach((scheme: SCHEMES_RESPONSE) => {\n // const {\n // assetType: _assetType,\n // currentMktValue: _currentMktValue,\n // costValue: _costValue,\n // } = scheme;\n // const assetToUpperCase = _assetType?.toUpperCase();\n // // need to be replaced with below line if cash and liquid are different.\n // // const assetType = _assetType !== null ? assetToUpperCase : _assetType\n // const assetType =\n // _assetType !== null\n // ? [\"LIQUID\", \"CASH\"].includes(assetToUpperCase)\n // ? \"LIQUID\"\n // : assetToUpperCase\n // : _assetType;\n // if (!!filterSchemesByType[assetType]) {\n // const { currentMktValue, costValue }: SCHEMES_RESPONSE =\n // filterSchemesByType[assetType];\n // filterSchemesByType = {\n // ...filterSchemesByType,\n // [assetType]: {\n // ...filterSchemesByType[assetType],\n // currentMktValue: decimalFix(\n // // Adding all mkt and cost values for same asset type.\n // Number(currentMktValue) + Number(_currentMktValue)\n // ),\n // costValue: decimalFix(Number(costValue) + Number(_costValue)),\n // },\n // };\n // } else {\n // filterSchemesByType = { ...filterSchemesByType, [assetType]: scheme };\n // }\n // });\n // const { EQUITY, DEBT, LIQUID } = filterSchemesByType;\n // prev = {\n // equity: EQUITY ? [...prev.equity, EQUITY] : prev.equity,\n // debt: DEBT ? [...prev.debt, DEBT] : prev.debt,\n // liquid: LIQUID ? [...prev.liquid, LIQUID] : prev.liquid,\n // };\n // return prev;\n // }, initData);\n // return out;\n // }\n \n // export function calculateGainOrLoss(schemes: any) {\n // const keys: any[] = Object.keys(schemes);\n // return keys.reduce((prev: any, key: any) => {\n // const schemesByType: SCHEMES_RESPONSE[] = schemes[key];\n // schemesByType.forEach((scheme) => {\n // const { costValue = 0, currentMktValue = 0 } = scheme;\n // const gainLoss = Number(currentMktValue) - Number(costValue);\n // const gainLossPercentage = (Number(gainLoss) * 100) / Number(costValue);\n // prev = {\n // ...prev,\n // [key]: [\n // ...(prev[key] || []),\n // {\n // ...scheme,\n // gainLossPercentage: decimalFix(gainLossPercentage),\n // gainLoss: decimalFix(gainLoss),\n // },\n // ],\n // };\n // });\n // return prev;\n // }, {});\n // }\n \n // export function decimalFix(value: number = 0, fixed: number = 2) {\n // if (isNaN(value)) {\n // return 0;\n // }\n // return Number(parseFloat(value.toString()).toFixed(fixed));\n // }\n // export function dateConvert(date: Date | string) {\n // // let options: Intl.DateTimeFormatOptions = {\n // // weekday: \"long\",\n // // year: \"numeric\",\n // // month: \"long\",\n // // day: \"numeric\",\n // // };\n // const d = new Date(date);\n // if (!isNaN(d.getTime())) {\n // d.setFullYear(Math.abs(d.getFullYear()));\n // return moment(d).format('dddd, MMMM DD, YYYY');\n // }\n // else {\n // if (!date) return \"\";\n // const today = moment(date);\n // return today.format('dddd, MMMM DD, YYYY');\n // }\n \n // // const today = moment(new Date(date), \"DD-MMM-YYYY\");\n // // return today.format(\"dddd, MMMM DD, YYYY\");\n // }\n \n // export function getAssetTypeValues(data: any = {}) {\n // return Object.keys(data).reduce((prev: any, curr: any) => {\n // const schemes: SCHEMES_RESPONSE[] = data[curr];\n // let costValue = 0;\n // let currentMktValue = 0;\n // schemes.forEach((ele: SCHEMES_RESPONSE) => {\n // costValue = Number(ele.costValue) + costValue;\n // currentMktValue = Number(ele.currentMktValue) + currentMktValue;\n // });\n // return {\n // ...prev,\n // [curr]: {\n // costValue: decimalFix(costValue),\n // currentMktValue: decimalFix(currentMktValue),\n // },\n // };\n // }, {});\n // }\n /**\n * Portfolio Table Filters for Change Email , Change Mobile and Change Dividend\n // * @param transactionStatus\n // * @returns\n */\n export const portfoliosByTransactionResource = ({\n transactionSource = \"\",\n })=> {\n const transactionSourceToUpper = transactionSource?.toUpperCase();\n return !(\n transactionSourceToUpper === \"DEMAT\" ||\n // transactionSourceToUpper === \"MFU\" ||\n transactionSourceToUpper === \"EXCHANGE\"\n );\n };\n // export const portfoliosByReinvestment = ({\n // schemeOption,\n // }: SCHEMES_RESPONSE): boolean => {\n // const schemeToUpper = schemeOption?.toUpperCase();\n // return Boolean(schemeToUpper?.includes(\"REINVEST\"));\n // // schemeToUpper === \"IDCW REINVEST\" ||\n // // schemeToUpper === \"REINVESTMENT\" ||\n // // schemeToUpper === \"IDCW REINVESTMENT\" ||\n // // schemeToUpper === \"REINVEST\"\n // };\n \n // export const portfoliosByPayout = ({\n // schemeOption,\n // }: SCHEMES_RESPONSE): boolean => {\n // const schemeToUpper = schemeOption?.toUpperCase();\n // return Boolean(schemeToUpper?.includes(\"PAYOUT\"));\n // // return schemeToUpper === \"IDCW PAYOUT\" || schemeToUpper === \"PAYOUT\";\n // };\n \n export const portfoliosByMinorStatus = ({\n taxStatus,\n age = 0,\n dob = null,\n ...rest\n }) => {\n const taxToUpper = taxStatus?.toUpperCase() || \"\";\n return (\n (taxToUpper === \"02\" ||\n taxToUpper === \"01\" ||\n NRI_CODES.includes(taxToUpper)) &&\n minorBelowEighteenYears({ taxStatus, age, dob, ...rest })\n );\n };\n \n // export const ctPortfoliosByMinorStatus = ({\n // taxStatus,\n // age = 0,\n // dob = null,\n // bank,\n // ...rest\n // }: SCHEMES_RESPONSE): boolean => {\n // const accountType = !!bank ? bank.accountType : null;\n // if (!taxStatus || !accountType) {\n // return false;\n // }\n \n // return (\n // taxStatus === \"01\" ||\n // (minorBelowEighteenYears({ taxStatus, age, dob, ...rest }))\n // );\n \n // };\n \n // export const ctPortfoliosByNROAccountType = ({\n // taxStatus,\n // age = 0,\n // dob = null,\n // bank,\n // ...rest\n // }: SCHEMES_RESPONSE): boolean => {\n // const accountType = !!bank ? bank.accountType : null;\n // if (!taxStatus || !accountType) {\n // return false;\n // }\n \n // const isNRI = NRI_CODES.includes(taxStatus)\n \n // if (isNRI) {\n // return NRICODES_CT.includes(taxStatus) && accountType?.toUpperCase() === \"NRO\"\n // }\n \n // return true\n // };\n \n // export const portfoliosByIdcwStatus = ({\n // idcwChangeAllowed,\n // }: SCHEMES_RESPONSE): boolean => idcwChangeAllowed === \"True\";\n \n // export const portfoliosByClosingBalance = ({\n // closingBalance = 0,\n // }: SCHEMES_RESPONSE): boolean => Number(closingBalance) > 0;\n \n export const portfoliosByModeOfHolding = ({\n modeOfHolding = \"\",\n }) => {\n const modeOfHoldingUpper = modeOfHolding?.toUpperCase();\n return (\n modeOfHoldingUpper === \"SINGLE\" ||\n Number(modeOfHolding) === 1 ||\n modeOfHoldingUpper === \"ANYONE/SURVIVOR\" ||\n Number(modeOfHolding) === 4 ||\n modeOfHoldingUpper === \"ANYONE OR SURVIVOR\" ||\n modeOfHoldingUpper === \"EITHER/SURVIVOR\" ||\n modeOfHoldingUpper === \"EITHER OR SURVIVOR\" ||\n Number(modeOfHolding) === 3\n );\n };\n \n // export const portfoliosByPurchaseAllow = ({ purAllow = \"N\" }: any): boolean => {\n // return purAllow === \"Y\";\n // };\n \n // export const portfoliosByPurchaseOrSipAllow = ({\n // purAllow = \"N\",\n // sipAllow = \"N\",\n // }: any): boolean => {\n // return purAllow === \"Y\" || sipAllow === \"Y\";\n // };\n // export const portfoliosBySipAllow = ({ sipAllow = \"N\" }: any): boolean => {\n // return sipAllow === \"Y\";\n // };\n \n // export const portfoliosByRedemptionAllow = ({\n // redAllow = \"F\",\n // }: any): boolean => {\n // return redAllow === \"Y\";\n // };\n \n // export const portfoliosByAvailableUnits = ({\n // availableUnits = 0,\n // }: any): boolean => {\n // return availableUnits > 0;\n // };\n \n // export const portfoliosWithIFSC = ({ bank }: any): boolean => {\n // const { ifsc, neftIfsc } = bank || {};\n // return !!ifsc; // || !!neftIfsc\n // };\n \n // export const portfoliosByDividend = ({\n // taxStatus,\n // age = 0,\n // dob,\n // ...rest\n // }: SCHEMES_RESPONSE): boolean => {\n // const taxToUpper = taxStatus?.toUpperCase() || \"\";\n // return (\n // (taxToUpper === \"01\" ||\n // taxToUpper === \"02\" ||\n // NRI_CODES.includes(taxToUpper)) &&\n // minorBelowEighteenYears({ taxStatus, age, dob, ...rest })\n // );\n // };\n \n // export const checkAvailableUnits = ({\n // availableUnits = 0,\n // }: SCHEMES_RESPONSE): boolean => {\n // return availableUnits > 0;\n // };\n \n // export const portfoliosByChangeofTaxStatus = ({\n // taxStatus,\n // age = 0,\n // dob,\n // ...rest\n // }: SCHEMES_RESPONSE): boolean => {\n // const taxToUpper = taxStatus?.toUpperCase() || \"\";\n // return (\n // (taxToUpper === \"01\" ||\n // taxToUpper === \"02\" ||\n // taxToUpper === \"21\" ||\n // taxToUpper === \"24\") &&\n // minorBelowEighteenYears({ taxStatus, age, dob, ...rest })\n // );\n // };\n //\n //\n /**\n * This function is used to group schemes asset-class wise, and\n * filtering the data using the given list of filter functions.\n *\n * @param folioList List of folios from getPortfolio\n * @param filterFunc List of filter functions\n * @returns\n */\n export function getPortfoliosFilteredData(\n folioList = [],\n filterFunc = []\n ) {\n let data = folioList.reduce(\n (prev, curr) => {\n // const { amc, amcName, investorDetails } = curr;\n //added scheme name to investorDeatails\n const { amc, amcName, schemes, investorDetails } = curr;\n const data = investorDetails || schemes;\n data.forEach((scheme) => {\n let index = prev.findIndex((ele) => ele.id === scheme.folio);\n if (index !== -1) {\n const fund = prev[index];\n const { schemeNames = [], assetType = [] } = fund;\n prev[index] = {\n ...prev[index],\n // schemeNames: [...schemeNames, scheme.schemeName],\n assetType: assetType.includes(scheme.assetType)\n ? assetType\n : [...assetType, scheme.assetType],\n };\n return;\n }\n const valid = filterFunc.every((func) =>\n func.call({}, scheme)\n );\n if (!prev.find((ele) => ele.id === scheme.folio) && valid) {\n prev = [\n ...prev,\n {\n id: scheme.folio,\n amcName: scheme.amcName,\n email: scheme.email,\n investorName: scheme.investorName,\n amc: scheme.amc,\n // schemeNames: [scheme.schemeName],\n mobile: scheme.mobile,\n assetType: [scheme.assetType],\n },\n ];\n }\n });\n return prev;\n },\n []\n );\n return data;\n }\n \n // export interface DIVIDEND_MATCHED_UNMATCHED_DATA_TYPE {\n // matchedData: any[];\n // unMatchedData: any[];\n // }\n \n // export function getDividendFilteredData(\n // folioList: PORTFOLIO_DATA_RESPONSE[] = [],\n // filterFunc: Function[] = []\n // ) {\n // let data = folioList.reduce(\n // (\n // prev: DividendTableRowType[],\n // curr: PORTFOLIO_DATA_RESPONSE,\n // currentIndex: number\n // ) => {\n // const { schemes } = curr;\n // schemes.forEach((fund: DividendTableRowType, index: number) => {\n // const valid = filterFunc.every((func: Function) => func.call({}, fund));\n // if (valid) {\n // prev = [...prev, { ...fund, id: currentIndex + `` + index }];\n // }\n // });\n // return prev;\n // },\n // []\n // );\n // return data;\n // }\n \n export function mapInvestorDetailsToPortfolios(\n nomineeFolios,\n folioList\n ) {\n const filteredNomineeByFolio = nomineeFolios.reduce((prev, curr) => {\n (curr?.investorDetails || []).forEach((fund) => {\n prev = [\n ...prev,\n {\n ...fund,\n amc: curr.amc,\n amcName: curr.amcName,\n id: fund.folio,\n mobile: fund.mobile,\n investorName: fund.investorName,\n nominees: fund.nominees,\n assetType: [],\n taxStatusLabel: getTaxStatusCode[fund.taxStatus],\n },\n ];\n });\n return prev;\n }, []);\n // To map assetType field to investor details\n return filteredNomineeByFolio.map((fund) => ({\n ...fund,\n assetType: folioList.find((_fund) => fund.id === _fund.id)?.assetType,\n }));\n }\n \n // /**\n // * Consolodate Folois Filtering\n // * @param nomineeFolios\n // */\n export function getInvestorFunds(\n nomineeFolios,\n filterFunc = [],\n defaultFilterFunc = []\n ) {\n return nomineeFolios.reduce((prev, curr) => {\n curr.investorDetails.forEach((fund) => {\n if (\n [\n ...filterFunc,\n ...(!!defaultFilterFunc ? defaultFilterFunc : []),\n ({ matchFlag }) =>\n !matchFlag || matchFlag == \"N\" || matchFlag == \"Y\",\n ].every((func) => func.call({}, fund))\n ) {\n prev = [\n ...prev,\n {\n ...fund,\n amc: curr.amc,\n amcName: curr.amcName,\n folio: fund.folio,\n id: fund.folio + curr.amc,\n },\n ];\n }\n });\n return prev;\n }, []);\n }\n \n export const modeOfHoldingSingle = ({ modeOfHolding = \"\" }) =>\n modeOfHolding?.toUpperCase() === \"SINGLE\" || Number(modeOfHolding) === 1;\n \n // export const taxStatusScenario = ({ taxStatus = \"\" }: INVESTOR_OBJECT) => {\n // const taxStatusUpper = taxStatus?.toUpperCase() || \"\";\n // return (\n // taxStatusUpper === \"01\" ||\n // taxStatusUpper === \"02\" ||\n // NRI_CODES.includes(taxStatusUpper)\n // );\n // };\n \n // export const transactionSourceScenarioEmpty = ({\n // transactionSource,\n // }: INVESTOR_OBJECT) => !transactionSource;\n \n // /**\n // * Check the fund is demat or not\n // * @param param0\n // // * @returns\n // // */\n // export const dematFund = ({\n // transactionSource = \"\",\n // }: SCHEMES_RESPONSE): boolean =>\n // [\"DEMAT\", \"EXCHANGE\"].includes(transactionSource?.toUpperCase());\n \n // // export function correctionFolios(nomineeFolios: INVETSOR_DETAILS_RESPONSE[]): ConsolidateTableRowType{\n // // return\n // // }\n \n // export interface BANK_DETAILS_WITH_NO_IFSC {\n // amcName: string;\n // amc: string;\n // id: number | string;\n // accountNo: string;\n // accountType: string;\n // branch: string;\n // city: string;\n // default: string;\n // ifsc: string;\n // micr: string;\n // name: string;\n // neftIfsc: string;\n // pincode: PINCODE;\n // assetType?: string[];\n // }\n // export const portfoliosWithNoIfsc = ({ ifsc, neftIfsc }: BANK): boolean => {\n // return !(Boolean(ifsc) || Boolean(neftIfsc));\n // };\n \n // export function getIFSCDetails(\n // nomineeFolios: INVETSOR_DETAILS_RESPONSE[],\n // filterFunc: Function[] = []\n // ) {\n // return nomineeFolios.reduce((prev: BANK_DETAILS_WITH_NO_IFSC[], curr) => {\n // curr.investorDetails.forEach(({ bank = [], ...fund }) => {\n // const defaultBank: any =\n // bank.find((_ele: BANK) => _ele.default === \"Y\") || {};\n // if (\n // portfoliosWithNoIfsc(defaultBank) &&\n // filterFunc.every((func) => func.call({}, fund || {}))\n // ) {\n // prev = [\n // ...prev,\n // {\n // ...defaultBank,\n // amc: curr.amc,\n // amcName: curr.amcName,\n // id: fund.folio,\n // assetType: fund.assetType,\n // },\n // ];\n // }\n // });\n // return prev;\n // }, []);\n // }\n \n // export const fundsByLienFlag = ({\n // lienUnitsFlag,\n // }: {\n // lienUnitsFlag: \"Y\" | \"N\";\n // }): boolean => {\n // return lienUnitsFlag !== \"Y\";\n // };\n \n export const minorBelowEighteenYears = ({\n taxStatus,\n age = 0,\n dob,\n }) => {\n const taxToUpper = taxStatus?.toUpperCase();\n const aboveEighteen = !!age\n ? age > 18\n : !!dob\n ? new Date().getTime() - new Date(dob).getTime() >\n EIGHTEEN_YEARS_IN_MILLISECONDS\n : false;\n return !(\n (taxToUpper === \"02\" || taxToUpper === \"26\" || taxToUpper === \"28\") &&\n aboveEighteen\n );\n };\n \n // export const checkIsValidObject = (object: any) => {\n // if (typeof object !== \"object\") return false;\n // return Object.values(object).every(\n // (value) => !!value || typeof value === \"boolean\"\n // );\n // };\n \n // export const isValidTaxDetail = (taxDetail: TaxDetails | undefined) => {\n // if (!taxDetail) return false;\n // if (!taxDetail.tinReason) {\n // return !checkIsValidObject(taxDetail);\n // }\n // if (!taxDetail.countryTax) return false;\n // };\n \n export const getErrorMessage = (\n row,\n dividendFilters\n ) => {\n if (!row.isDisabled) {\n return \"\";\n }\n \n const messageTable = {\n // [portfoliosWithIFSC.name]: dbCommercial.errors.noIFSC,\n // [ctPortfoliosByNROAccountType.name]: dbCommercial.errors.ct_nro,\n // [ctPortfoliosByMinorStatus.name]: dbCommercial.errors.ct_minor,\n // [checkAvailableUnits.name]: dbCommercial.errors.avaialbleUnits,\n [modeOfHoldingSingle.name]: enUs.nct.errors.moh,\n [portfoliosByModeOfHolding.name]: enUs.nct.errors.moh,\n [portfoliosByMinorStatus.name]: enUs.nct.errors.minorFolio,\n [portfoliosByTransactionResource.name]: enUs.nct.errors.transactionSource,\n // [fundsByLienFlag.name]: dashboard.ChangeDividend.noSelectLeinUnits,\n // [portfoliosByAvailableUnits.name]: dbCommercial.errors.noFundsAvailable,\n };\n \n const defaultError = dashboard.ChangeDividend.toolTip.info1;\n \n for (let filter of dividendFilters) {\n const failed = !filter.call({}, row);\n \n if (failed) {\n return messageTable[filter.name] || defaultError;\n }\n }\n \n return defaultError;\n };\n ","import React from \"react\";\n//import { History } from 'history';\n// import { DividendTableRowType } from '../components/home/commercial/AdditionalPurchase';\n// import { DIVIDEND_MATCHED_UNMATCHED_DATA_TYPE } from '../components/home/portfolios/utils';\n//import { CommercialRootPath } from './constants';\n\n// export const maskMobileNumber = (mobileNumber: string) => {\n// if (!mobileNumber) {\n// return '';\n// }\n// return mobileNumber.replace(/\\d(?=\\d{4})/g, 'x').replace('+', 'x');\n// };\n\n// export const maskAccountNo = (accountNo: string) => {\n// if (!accountNo) return;\n// return accountNo.replace(/\\d(?=\\d{4})/g, 'x');\n// };\n\n// export const maskEmail = (email: string) => {\n// if (!email) return '';\n// let parts = email.split('@');\n// parts[0] = parts[0].slice(0, -3) + parts[0].slice(-3).replace(/\\w/g, 'x');\n// return parts[0] + '@' + parts[1];\n// };\n\n// export const maskPan = (pan: string) => {\n// if (!pan) return '';\n// return pan.slice(0, -3) + 'xxx';\n// }\n\n// export const getHoldingTypeValue = (value: string) => {\n// switch (value) {\n// case 'allHoldings':\n// return 'ALL';\n// case 'zeroHoldings':\n// return 'ZERO';\n// case 'nonZeroHoldings':\n// return 'NON-ZERO';\n// default:\n// break;\n// }\n// };\n\nconst SALT = \"X2lMZWFwUH\";\nconst SALT2 = \"BTVRJel9pTGVhcF\";\nexport function EncodeBase64(value) {\n const encodeValue = btoa(value);\n const encodeSubString = removeEqualOperator(encodeValue);\n const encodePassword = btoa(`${SALT}${encodeSubString}${SALT2}`);\n return encodePassword;\n}\n\nexport function removeEqualOperator(value = \"\") {\n const lastTwoIndex = value.length - 2;\n let encodeString = value.slice(0, lastTwoIndex);\n const slicedStr = value.slice(lastTwoIndex, value.length);\n slicedStr.split(\"\").forEach((char) => {\n if (char !== \"=\") {\n encodeString += char;\n }\n });\n return encodeString;\n}\n\n// export const getQueryParams = (search: string = ' ') => {\n// return (\n// search\n// .slice(1)\n// .split('&')\n// .map((item) => {\n// let arr = item.split('=');\n// return arr[1];\n// }) || []\n// );\n// };\n\nexport const _debounce = (\n debounceFn,\n delay,\n fn\n) => {\n let time;\n return function (args) {\n if (!!fn && typeof fn === \"function\") {\n fn.call({}, args);\n }\n if (time) {\n clearTimeout(time);\n }\n time = setTimeout(() => debounceFn.call({}, args), delay);\n };\n};\n\nexport const getMatchAndUnMatchedFunds = (\n filters,\n data,\n addDisable\n) => {\n const { matchedData: activeRows, unMatchedData: disabledRows } =\n data.reduce(\n (prev, curr) => {\n const valid = filters.every((func) => func.call({}, curr));\n if (valid) {\n return {\n ...prev,\n matchedData: [...prev.matchedData, curr],\n };\n }\n return {\n ...prev,\n unMatchedData: [\n ...prev.unMatchedData,\n {\n ...curr,\n ...(curr.isDisabled || addDisable ? { isDisabled: true } : {}),\n },\n ],\n };\n },\n {\n matchedData: [],\n unMatchedData: [],\n }\n );\n return [...activeRows, ...disabledRows];\n};\n\nexport function isError(formikState, value) {\n return formikState.touched[value] && formikState.errors[value];\n}\n\nexport function showHelperText(formikState, value) {\n return formikState.touched[value] && !!formikState.errors[value]\n ? formikState.errors[value]\n : \"\";\n}\nexport const maskMobileNumber = (mobileNumber) => {\n if (!mobileNumber) {\n return \"\";\n }\n return mobileNumber.replace(/\\d(?=\\d{4})/g, \"x\").replace(\"+\", \"x\");\n};\n\n// type mobileRedirectProps = {\n// url: string;\n// redirectionPage: string;\n// history: History\n// }\n\n// export function handleRedirectOnMobile({url,history,redirectionPage = 'kyc-status'}:mobileRedirectProps) {\n// // const onExit = () => {\n// // history.push(`${CommercialRootPath}/${redirectionPage}/${reqId}`);\n// // }\n// const onBeforeLoad = (params: any, callback: any) => {\n// if (params.url.includes(redirectionPage)) {\n// ref.close();\n// const _urlArgs = params.url.split('/');\n// const reqId = _urlArgs.pop();\n// if (!!reqId) {\n// const url = `${CommercialRootPath}/${redirectionPage}/${reqId}`;\n// history.push(url);\n// return;\n// }\n// history.push('/');\n// } else {\n// callback(params.url);\n// }\n// };\n// const onLoadStart = (event: any) => {\n// if (event.url.includes(redirectionPage)) {\n// ref.close();\n// const _urlArgs = event.url.split('/');\n// const reqId = _urlArgs.pop();\n// if (!!reqId) {\n// const url = `${CommercialRootPath}/${redirectionPage}/${reqId}`;\n// history.replace(url);\n// return;\n// }\n// history.replace('/');\n// }\n// };\n// const _window: any = window;\n// const options =\n// _window?.device?.platform === 'Android'\n// ? 'hideurlbar=yes,hidenavigationbuttons=yes,beforeload=get'\n// : 'location=no,hidenavigationbuttons=yes,beforeload=get';\n// const ref = _window.cordova.InAppBrowser.open(url, '_blank', options);\n// // ref.addEventListener('exit', onExit)\n// ref.addEventListener('beforeload', onBeforeLoad);\n// ref.addEventListener('loadstart', onLoadStart);\n// }\n","import react from \"react\";\nimport { getPortfoliosFilteredData, mapInvestorDetailsToPortfolios } from \"../../../web/src/components/home/portfolios/utils\";\nimport { addDialCode } from \"../../../web/src/utils/constants\";\nimport { EncodeBase64 } from \"../../../web/src/utils/utilityFunctions\";\nimport { CALL_API } from \"../api.middleware\";\nimport { RootStateType } from \"../reducers/index\";\nimport { SEND_EMAIL_OTP, SEND_EMAIL_OTP_SUCCESS, SEND_SMS_OTP, SEND_SMS_OTP_SUCCESS, UPDATE_EMAIL, CHECK_EMAIL, NCT_TRACK, UPDATE_EMAIL_SUCCESS, CHECK_EMAIL_SUCCESS, NCT_TRACK_SUCCESS, UPDATE_MOBILE, UPDATE_MOBILE_SUCCESS, VERIFY_CHANGE_EMAIL_OTP, VERIFY_CHANGE_EMAIL_OTP_SUCCESS, UPDATE_DIVIDEND_SUCCESS, UPDATE_DIVIDEND, FETCH_TRACK_STATUS_SUCCESS, FETCH_TRACK_STATUS, UPDATE_NOMINEE_SUCCESS, UPDATE_NOMINEE, FETCH_INVESTOR_DETAILS_SUCCESS, FETCH_INVESTOR_DETAILS, CONSOLIDATION_FOLIOS_SUCCESS, CONSOLIDATION_FOLIO, UPDATE_DATA_ENTRY_SUCCESS, UPDATE_DATA_ENTRY, UPDATE_TAX_STATUS_SUCCESS, UPDATE_TAX_STATUS, MINOR_TO_MAJOR, MINOR_TO_MAJOR_SUCCESS, UPDATE_IFSC, UPDATE_IFSC_SUCCESS, UPDATE_BANK_DETAILS, UPDATE_BANK_DETAILS_SUCCESS, UPDATE_MULTIPLE_BANKS, UPDATE_MULTIPLE_BANKS_SUCCESS, GET_FATCA_DETAILS, GET_FATCA_DETAILS_SUCCESS, UPDATE_FATCA_DETAILS, UPDATE_FATCA_DETAILS_SUCCESS, FETCH_IFSC_DETAILS, FETCH_IFSC_DETAILS_SUCCESS, UPDATE_PRELOGIN_PAN, UPDATE_PRELOGIN_PAN_SUCCESS, UPDATE_FORM_15, UPDATE_FORM_15_SUCCESS, GET_AMC_LIST_SUCCESS, GET_AMC_LIST, AMC_LIST_RESPONSE, GET_ALL_SECURITY_QUESTIONS_SUCCESS, GET_ALL_SECURITY_QUESTIONS, GET_ALL_SECURITY_QUESTIONS_ANSWERS_SUCCESS, GET_ALL_SECURITY_QUESTIONS_ANSWERS, UPDATE_SECURITY_QUESTIONS_SUCCESS, UPDATE_SECURITY_QUESTIONS, GIVE_FEEDBACK_SUCCESS, GIVE_FEEDBACK, INVETSOR_DETAILS_RESPONSE, INVESTOR_OBJECT, DOWNLOAD_SUMMARY_SUCCESS, DOWNLOAD_SUMMARY, GENERATE_DETAILED_SUCCESS, GENERATE_DETAILED, DOWNLOAD_DETAILED_SUCCESS, DOWNLOAD_DETAILED, FETCH_ALL_CAS_HISTORY_SUCCESS, FETCH_ALL_CAS_HISTORY, SAVE_DISPLAY_NAME, SAVE_DISPLAY_NAME_SUCCESS, ImageSaveType, SAVE_IMAGE_DATA, TRANSMISSION_UNITS, TRANSMISSION_UNITS_SUCCESS, GET_CRM_DATA, GET_CRM_DATA_SUCCESS, CRM_DETAILS, PRE_LOGIN_TRANSMISSION, PRE_LOGIN_TRANSMISSION_SUCCESS, FETCH_COMMERCIAL_TRACK_STATUS, FETCH_COMMERCIAL_TRACK_STATUS_SUCCESS } from \"../types/nct\";\nimport { GET_NCT_INVESTORS_LIST, GET_NCT_INVESTORS_LIST_SUCCESS, GET_NCT_INVESTORS_LIST_FAILED } from \"../types\";\nimport { PORTFOLIO_RESPONSE_PAYLOAD } from \"../types/portfolio\";\nimport store from \"../../../web/src/store\";\n//import { FORGOT_QA } from '../types/login';\n\nexport const saveNominee = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/distributor/saveNominee\",\n body: {\n ...body,\n portal: 'sundaram'\n },\n method: \"POST\",\n types: [],\n isNctNew: true\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};\nexport const fetchInvestorDetails = function (body) {\n return async function (dispatch) {\n const {\n authReducer: {\n email = \"\"\n }\n } = store.getState();\n try {\n const responseBody = await dispatch({\n [CALL_API]: {\n url: `/distributor/getInvestorDetails`,\n method: \"POST\",\n types: [FETCH_INVESTOR_DETAILS, FETCH_INVESTOR_DETAILS_SUCCESS, FETCH_INVESTOR_DETAILS],\n body: {\n ...body\n },\n enableFixture: false,\n isNctNew: true,\n json: `getInvestorDetails.json`\n }\n });\n const {\n success: data = [],\n ...rest\n } = responseBody;\n const filterdByFolio = getPortfoliosFilteredData(data);\n const filteredFunds = mapInvestorDetailsToPortfolios(data, filterdByFolio);\n const funds = filteredFunds.reduce(function (prev, _ref) {\n let {\n amc,\n amcName,\n ...fund\n } = _ref;\n const index = prev.findIndex(function (fund) {\n return fund.amc === amc;\n });\n if (index === -1) {\n return [...prev, {\n amc,\n amcName,\n investorDetails: [fund]\n }];\n }\n prev[index].investorDetails = [...prev[index].investorDetails, fund];\n return prev;\n }, []);\n return {\n body: {\n success: funds,\n ...rest\n }\n };\n } catch (error) {\n throw error;\n }\n };\n};\nexport const sendEmailOTP = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/otpwrapper/generateEmailOtp`,\n method: \"POST\",\n types: [SEND_EMAIL_OTP_SUCCESS, SEND_EMAIL_OTP],\n body\n }\n });\n } catch (error) {\n throw error;\n }\n };\n};\nexport const verifyChangeEmailOTP = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/otpwrapper/verifyotp`,\n method: \"POST\",\n types: [VERIFY_CHANGE_EMAIL_OTP_SUCCESS, VERIFY_CHANGE_EMAIL_OTP],\n body: {\n ...body,\n enteredOtp: EncodeBase64(body.enteredOtp)\n }\n }\n });\n } catch (error) {\n throw error;\n }\n };\n};\nexport const updateEmail = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/distributor/createUpdateEmailRequest`,\n method: \"POST\",\n types: [UPDATE_EMAIL, UPDATE_EMAIL_SUCCESS],\n body: {\n ...body,\n portal: 'sundaram'\n },\n isNctNew: true,\n enableFixture: false\n }\n });\n } catch (error) {\n throw error;\n }\n };\n};\nexport const checkEmail = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/distributor/duplicateCheck`,\n method: \"POST\",\n types: [CHECK_EMAIL, CHECK_EMAIL_SUCCESS],\n body: {\n ...body\n },\n isNctNew: true\n }\n });\n } catch (error) {\n throw error;\n }\n };\n};\nexport const nctTrack = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/distributor/getNCTStatus`,\n method: \"POST\",\n types: [NCT_TRACK, NCT_TRACK_SUCCESS],\n body: {\n ...body\n },\n isNctNew: true\n }\n });\n } catch (error) {\n throw error;\n }\n };\n};\nexport const updateMobile = function (body) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: `/distributor/createUpdateMobileRequest`,\n method: \"POST\",\n types: [UPDATE_MOBILE, UPDATE_MOBILE_SUCCESS],\n body: {\n ...body,\n portal: 'sundaram'\n },\n isNctNew: true,\n enableFixture: false\n }\n });\n } catch (error) {\n throw error;\n }\n };\n};\nexport const sendPhoneOTP = function (body) {\n return async function (dispatch) {\n try {\n const {\n mobile,\n ...rest\n } = body;\n return await dispatch({\n [CALL_API]: {\n url: `/otpwrapper/generate${store.getState().authReducer.userRegisteredWith === \"EMAIL\" ? \"Email\" : \"Sms\"}Otp`,\n method: \"POST\",\n types: [SEND_SMS_OTP_SUCCESS, SEND_SMS_OTP],\n body: store.getState().authReducer.userRegisteredWith === \"EMAIL\" ? {\n ...rest,\n email: store.getState().authReducer.email\n } : {\n ...rest,\n mobile: addDialCode(mobile),\n email: \"\"\n }\n }\n });\n } catch (error) {\n throw error;\n }\n };\n};\n// export const updateNominee =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: `/nft/updateNominee`,\n// method: 'POST',\n// types: [UPDATE_NOMINEE_SUCCESS, UPDATE_NOMINEE],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const consolidationFolios =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/consolidationFolios',\n// method: 'POST',\n// types: [CONSOLIDATION_FOLIOS_SUCCESS, CONSOLIDATION_FOLIO],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const updateDataEntry =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/updateDataEntry',\n// method: 'POST',\n// types: [UPDATE_DATA_ENTRY_SUCCESS, UPDATE_DATA_ENTRY],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const updateTaxStatus =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/updateTaxStatus',\n// method: 'POST',\n// types: [UPDATE_TAX_STATUS_SUCCESS, UPDATE_TAX_STATUS],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const updateMinorToMajor =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/updateMinorToMajor',\n// method: 'POST',\n// types: [MINOR_TO_MAJOR_SUCCESS, MINOR_TO_MAJOR],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const updateIFSC =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/updateBankAccountType',\n// method: 'POST',\n// types: [UPDATE_IFSC_SUCCESS, UPDATE_IFSC],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const updateBankDetails =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/updateBankAccountDetails',\n// method: 'POST',\n// types: [UPDATE_BANK_DETAILS_SUCCESS, UPDATE_BANK_DETAILS],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const updateMultipleBanks =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/multiBankMandate',\n// method: 'POST',\n// types: [UPDATE_MULTIPLE_BANKS_SUCCESS, UPDATE_MULTIPLE_BANKS],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const getFatcaDetails =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/getFatcaDetails',\n// method: 'POST',\n// types: [GET_FATCA_DETAILS_SUCCESS, GET_FATCA_DETAILS],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const updateFATCA =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/updateFatca',\n// method: 'POST',\n// types: [UPDATE_FATCA_DETAILS_SUCCESS, UPDATE_FATCA_DETAILS],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\nexport const fetchIFSCDetails = function (body) {\n return async function (dispatch) {\n try {\n const {\n authReducer: {\n email = \"\"\n }\n } = store.getState();\n return await dispatch({\n [CALL_API]: {\n url: \"/user/getIfscDetails\",\n method: \"POST\",\n types: [FETCH_IFSC_DETAILS_SUCCESS, FETCH_IFSC_DETAILS],\n body: {\n ...body,\n email\n }\n }\n });\n } catch (error) {\n throw error;\n }\n };\n};\n\n// export const updatePreLoginPan =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/updatePanPrelogin',\n// method: 'POST',\n// types: [UPDATE_PRELOGIN_PAN_SUCCESS, UPDATE_PRELOGIN_PAN],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const updateForm15GH =\n// (body: any) =>\n// async (dispatch: any): Promise => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/updateForm15GH',\n// method: 'POST',\n// types: [UPDATE_FORM_15_SUCCESS, UPDATE_FORM_15],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const getForm15Info =\n// (body: LIST_PROTFOLIO_PAYLOAD) =>\n// async (dispatch: any): Promise => {\n// try {\n// const {\n// authReducer: { email = '' },\n// } = store.getState();\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/getForm15GOrH',\n// method: 'POST',\n// types: [FETCH_IFSC_DETAILS_SUCCESS, FETCH_IFSC_DETAILS],\n// body: { ...body, email },\n// // enableFixture: true,\n// json: 'form15G.json',\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const getAmcList =\n// () =>\n// async (dispatch: any): Promise<{ body: AMC_LIST_RESPONSE[] }> => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/amc-list',\n// method: 'GET',\n// types: [GET_AMC_LIST_SUCCESS, GET_AMC_LIST],\n// enableFixture: true,\n// json: 'amcList.json',\n// enableForProduction: true,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const getSecurityQuestions =\n// (body: any) =>\n// async (dispatch: any): Promise<{ body: AMC_LIST_RESPONSE[] }> => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/getAllSecurityQuestions',\n// method: 'POST',\n// types: [GET_ALL_SECURITY_QUESTIONS_SUCCESS, GET_ALL_SECURITY_QUESTIONS],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const getSecretQuestionsAnswers =\n// (body: any) =>\n// async (dispatch: any): Promise<{ body: AMC_LIST_RESPONSE[] }> => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/getSecurityQuestionsAnswersForUser',\n// method: 'POST',\n// types: [\n// GET_ALL_SECURITY_QUESTIONS_ANSWERS_SUCCESS,\n// GET_ALL_SECURITY_QUESTIONS_ANSWERS,\n// ],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// // export const getSecurityQuestionsForgotQA =\n// // (body: any) =>\n// // async (dispatch: any): Promise<{ body: AMC_LIST_RESPONSE[] }> => {\n// // try {\n// // return await dispatch({\n// // [CALL_API]: {\n// // url: '/user/getAllSecurityQuestionsForForgotQA',\n// // method: 'POST',\n// // types: [GET_ALL_SECURITY_QUESTIONS_SUCCESS, GET_ALL_SECURITY_QUESTIONS],\n// // body: {\n// // ...body,\n// // action: FORGOT_QA,\n// // },\n// // },\n// // });\n// // } catch (error: any) {\n// // throw error;\n// // }\n// // };\n\n// export const updateSecurityQuestionsForUser =\n// (body: any) =>\n// async (dispatch: any): Promise<{ body: AMC_LIST_RESPONSE[] }> => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/updateSecurityQuestionsAnswersForUser',\n// method: 'POST',\n// types: [UPDATE_SECURITY_QUESTIONS_SUCCESS, UPDATE_SECURITY_QUESTIONS],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const updateSecurityQuestionsForUserResetQA =\n// (body: any) =>\n// async (dispatch: any): Promise<{ body: any }> => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/newSecurityQuestionsAnswersForUser',\n// method: 'POST',\n// types: [UPDATE_SECURITY_QUESTIONS_SUCCESS, UPDATE_SECURITY_QUESTIONS],\n// body,\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const giveFeedback =\n// (body: any) =>\n// async (dispatch: any): Promise<{ body: AMC_LIST_RESPONSE[] }> => {\n// try {\n// const {\n// authReducer: { email = '' },\n// } = store.getState();\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/contactUs',\n// method: 'POST',\n// types: [GIVE_FEEDBACK_SUCCESS, GIVE_FEEDBACK],\n// body: { ...body, email },\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const downloadSummaryPDF =\n// (body: any) =>\n// async (dispatch: any): Promise<{ body: any }> => {\n// try {\n// const {\n// authReducer: { email = '' },\n// } = store.getState();\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/getCasSummary',\n// method: 'POST',\n// types: [DOWNLOAD_SUMMARY_SUCCESS, DOWNLOAD_SUMMARY],\n// body: { ...body, email },\n// contentType: 'application/pdf',\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const generateDetailedPDF =\n// (body: any) =>\n// async (dispatch: any): Promise<{ body: any }> => {\n// try {\n// const {\n// authReducer: { email = '' },\n// } = store.getState();\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/getCasDetail',\n// method: 'POST',\n// types: [GENERATE_DETAILED_SUCCESS, GENERATE_DETAILED],\n// body: { ...body, email },\n// contentType: 'application/pdf',\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const downloadDetailedPDF =\n// (body: any) =>\n// async (dispatch: any): Promise<{ body: any }> => {\n// try {\n// const {\n// authReducer: { email = '' },\n// } = store.getState();\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/getCasDocument',\n// method: 'POST',\n// types: [DOWNLOAD_DETAILED_SUCCESS, DOWNLOAD_DETAILED],\n// body: { ...body, email },\n// contentType: 'application/pdf',\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const getCasHistory =\n// (body: any) =>\n// async (dispatch: any): Promise<{ body: any }> => {\n// try {\n// const {\n// authReducer: { email = '' },\n// } = store.getState();\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/getCasHistory',\n// method: 'POST',\n// types: [FETCH_ALL_CAS_HISTORY_SUCCESS, FETCH_ALL_CAS_HISTORY],\n// body: { ...body, email },\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\n// export const onSaveDisplayName = (body: any) => async (dispatch: any) => {\n// try {\n// const {\n// authReducer: { email = '' },\n// } = store.getState();\n// return await dispatch({\n// [CALL_API]: {\n// url: '/user/updateDisplayNameForUser',\n// method: 'POST',\n// types: [SAVE_DISPLAY_NAME_SUCCESS, SAVE_DISPLAY_NAME],\n// body: { ...body, email },\n// },\n// });\n// } catch (err: any) {\n// throw err;\n// }\n// };\n\nexport const onSaveImageData = function (body) {\n return {\n body,\n type: SAVE_IMAGE_DATA\n };\n};\n\n// export const transmissionUnits = (body: any) => async (dispatch: any) => {\n// try {\n// return await dispatch({\n// [CALL_API]: {\n// url: '/nft/transmissionOfUnits',\n// method: 'POST',\n// types: [TRANSMISSION_UNITS_SUCCESS, TRANSMISSION_UNITS],\n// body,\n// },\n// });\n// } catch (err) {\n// throw err;\n// }\n// };\n// export const getCRMDetails =\n// (body: LIST_PROTFOLIO_PAYLOAD) =>\n// async (dispatch: any): Promise => {\n// try {\n// const {\n// authReducer: { email = '' },\n// } = store.getState();\n// return await dispatch({\n// [CALL_API]: {\n// url: `/user/getcrmdetails`,\n// method: 'POST',\n// types: [GET_CRM_DATA, GET_CRM_DATA_SUCCESS],\n// body: { ...body, email },\n// // enableFixture: true,\n// // json: 'crm.json',\n// },\n// });\n// } catch (error: any) {\n// throw error;\n// }\n// };\n\nexport const nctInvestorslist = function () {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/distributor/getNctInvestorPanList\",\n method: \"GET\",\n isNctNew: true,\n types: [GET_NCT_INVESTORS_LIST, GET_NCT_INVESTORS_LIST_SUCCESS, GET_NCT_INVESTORS_LIST_FAILED]\n }\n });\n } catch (error) {\n alert(`${error}`);\n }\n };\n};","// import { NomineeInfoRowData } from '../../components/dashboard/makeNct/UpdateNominee/types';\n// import { SignupPayload } from './login';\nimport { ModeOfHolding, TaxStatus } from \"./portfolio\";\nexport const SEND_EMAIL_OTP = \"SEND_EMAIL_OTP\";\nexport const SEND_EMAIL_OTP_SUCCESS = \"SEND_EMAIL_OTP_SUCCESS\";\nexport const SEND_SMS_OTP = \"SEND_SMS_OTP\";\nexport const SEND_SMS_OTP_SUCCESS = \"SEND_SMS_OTP_SUCCESS\";\nexport const PRE_LOGIN_TRANSMISSION = \"PRELOGIN_TRANSMISSION\";\nexport const PRE_LOGIN_TRANSMISSION_SUCCESS = \"PRELOGIN_TRANSMISSION_SUCCESS\";\nexport const UPDATE_EMAIL = \"UPDATE_EMAIL\";\nexport const CHECK_EMAIL = \"CHECK_EMAIL\";\nexport const NCT_TRACK = \"NCT_TRACK\";\nexport const CHECK_EMAIL_SUCCESS = \"CHECK_EMAIL_SUCCESS\";\nexport const NCT_TRACK_SUCCESS = \"NCT_TRACK_SUCCESS\";\nexport const UPDATE_EMAIL_SUCCESS = \"UPDATE_EMAIL_SUCCESS\";\nexport const VERIFY_CHANGE_EMAIL_OTP = \"VERIFY_CHANGE_EMAIL_OTP\";\nexport const VERIFY_CHANGE_EMAIL_OTP_SUCCESS = \"VERIFY_CHANGE_EMAIL_OTP_SUCCESS\";\nexport const UPDATE_MOBILE = \"UPDATE_MOBILE\";\nexport const UPDATE_MOBILE_SUCCESS = \"UPDATE_MOBILE_SUCCESS\";\nexport const UPDATE_DIVIDEND = \"UPDATE_DIVIDEND\";\nexport const UPDATE_DIVIDEND_SUCCESS = \"UPDATE_DIVIDEND_SUCCESS\";\nexport const FETCH_TRACK_STATUS = \"FETCH_TRACK_STATUS\";\nexport const FETCH_TRACK_STATUS_SUCCESS = \"FETCH_TRACK_STATUS_SUCCESS\";\nexport const FETCH_COMMERCIAL_TRACK_STATUS = \"FETCH_COMMERCIAL_TRACK_STATUS\";\nexport const FETCH_COMMERCIAL_TRACK_STATUS_SUCCESS = \"FETCH_COMMERCIAL_TRACK_STATUS_SUCCESS\";\nexport const UPDATE_NOMINEE = \"UPDATE_NOMINEE\";\nexport const UPDATE_NOMINEE_SUCCESS = \"UPDATE_NOMINEE_SUCCESS\";\nexport const FETCH_INVESTOR_DETAILS = \"FETCH_INVESTOR_DETAILS\";\nexport const FETCH_INVESTOR_DETAILS_SUCCESS = \"FETCH_INVESTOR_DETAILS_SUCCESS\";\nexport const CONSOLIDATION_FOLIO = \"CONSOLIDATION_FOLIO\";\nexport const CONSOLIDATION_FOLIOS_SUCCESS = \"CONSOLIDATION_FOLIOS_SUCCESS\";\nexport const UPDATE_DATA_ENTRY = \"UPDATE_DATA_ENTRY\";\nexport const UPDATE_DATA_ENTRY_SUCCESS = \"UPDATE_DATA_ENTRY_SUCCESS\";\nexport const UPDATE_TAX_STATUS = \"UPDATE_TAX_STATUS\";\nexport const UPDATE_TAX_STATUS_SUCCESS = \"UPDATE_TAX_STATUS_SUCCESS\";\nexport const MINOR_TO_MAJOR = \"MINOR_TO_MAJOR\";\nexport const MINOR_TO_MAJOR_SUCCESS = \"MINOR_TO_MAJOR_SUCCESS\";\nexport const UPDATE_IFSC = \"UPDATE_IFSC\";\nexport const UPDATE_IFSC_SUCCESS = \"UPDATE_IFSC_SUCCESS\";\nexport const UPDATE_BANK_DETAILS = \"UPDATE_BANK_DETAILS\";\nexport const UPDATE_BANK_DETAILS_SUCCESS = \"UPDATE_BANK_DETAILS_SUCCESS\";\nexport const UPDATE_MULTIPLE_BANKS = \"UPDATE_MULTIPLE_BANKS\";\nexport const UPDATE_MULTIPLE_BANKS_SUCCESS = \"UPDATE_MULTIPLE_BANKS_SUCCESS\";\nexport const GET_FATCA_DETAILS = \"GET_FATCA_DETAILS\";\nexport const GET_FATCA_DETAILS_SUCCESS = \"GET_FATCA_DETAILS_SUCCESS\";\nexport const UPDATE_FATCA_DETAILS = \"UPDATE_FATCA_DETAILS\";\nexport const UPDATE_FATCA_DETAILS_SUCCESS = \"UPDATE_FATCA_DETAILS_SUCCESS\";\nexport const FETCH_IFSC_DETAILS = \"FETCH_IFSC_DETAILS\";\nexport const FETCH_IFSC_DETAILS_SUCCESS = \"FETCH_IFSC_DETAILS_SUCCESS\";\nexport const FETCH_FORM_15_DETAILS = \"FETCH_FORM_15_DETAILS\";\nexport const FETCH_FORM_15_DETAILS_SUCCESS = \"FETCH_FORM_15_DETAILS_SUCCESS\";\nexport const UPDATE_PRELOGIN_PAN = \"UPDATE_PRELOGIN_PAN\";\nexport const UPDATE_PRELOGIN_PAN_SUCCESS = \"UPDATE_PRELOGIN_PAN_SUCCESS\";\nexport const UPDATE_FORM_15 = \"UPDATE_FORM_15\";\nexport const UPDATE_FORM_15_SUCCESS = \"UPDATE_FORM_15_SUCCESS\";\nexport const GET_AMC_LIST = \"GET_AMC_LIST\";\nexport const GET_AMC_LIST_SUCCESS = \"GET_AMC_LIST_SUCCESS\";\nexport const GET_ALL_SECURITY_QUESTIONS = \"GET_ALL_SECURITY_QUESTIONS\";\nexport const GET_ALL_SECURITY_QUESTIONS_SUCCESS = \"GET_ALL_SECURITY_QUESTIONS_SUCCESS\";\nexport const GET_ALL_SECURITY_QUESTIONS_ANSWERS = \"GET_ALL_SECURITY_QUESTIONS_ANSWERS\";\nexport const GET_ALL_SECURITY_QUESTIONS_ANSWERS_SUCCESS = \"GET_ALL_SECURITY_QUESTIONS_ANSWERS_SUCCESS\";\nexport const UPDATE_SECURITY_QUESTIONS = \"UPDATE_SECURITY_QUESTIONS\";\nexport const UPDATE_SECURITY_QUESTIONS_SUCCESS = \"UPDATE_SECURITY_QUESTIONS_SUCCESS\";\nexport const GIVE_FEEDBACK = \"GIVE_FEEDBACK\";\nexport const GIVE_FEEDBACK_SUCCESS = \"GIVE_FEEDBACK_SUCCESS\";\nexport const DOWNLOAD_SUMMARY = \"DOWNLOAD_SUMMARY\";\nexport const DOWNLOAD_SUMMARY_SUCCESS = \"DOWNLOAD_SUMMARY_SUCCESS\";\nexport const GENERATE_DETAILED = \"GENERATE_DETAILED\";\nexport const GENERATE_DETAILED_SUCCESS = \"GENERATE_DETAILED_SUCCESS\";\nexport const DOWNLOAD_DETAILED = \"DOWNLOAD_DETAILED\";\nexport const DOWNLOAD_DETAILED_SUCCESS = \"DOWNLOAD_DETAILED_SUCCESS\";\nexport const FETCH_ALL_CAS_HISTORY = \"FETCH_ALL_CAS_HISTORY\";\nexport const FETCH_ALL_CAS_HISTORY_SUCCESS = \"FETCH_ALL_CAS_HISTORY_SUCCESS\";\nexport const SAVE_DISPLAY_NAME = \"SAVE_DISPLAY_NAME\";\nexport const SAVE_DISPLAY_NAME_SUCCESS = \"SAVE_DISPLAY_NAME_SUCCESS\";\nexport const SAVE_IMAGE_DATA = \"SAVE_IMAGE_DATA\";\nexport const TRANSMISSION_UNITS = \"TRANSMISSION_UNITS\";\nexport const TRANSMISSION_UNITS_SUCCESS = \"TRANSMISSION_UNITS_SUCCESS\";\nexport const GET_CRM_DATA = \"GET_CRM_DATA\";\nexport const GET_CRM_DATA_SUCCESS = \"GET_CRM_DATA_SUCCESS\";","import React, { Component } from \"react\";\nimport Select from \"@material-ui/core/Select\";\nimport InputBase from \"@material-ui/core/InputBase\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\n\nexport default class CustomizedSelect extends Component {\n render() {\n return (\n
\n
\n
{this.props.name}
\n {this.props.uptext && (\n \n {this.props.uptext}\n
\n )}\n
\n
\n \n }\n >\n \n {`Select ${this.props.name && this.props.name.includes(\"*\") ? this.props.name.slice(0, -1) : this.props.name}`}\n \n \n {this.props.children}\n \n
\n {!!this.props.errorMessage && (\n \n {this.props.errorMessage}\n \n )}\n \n );\n }\n}\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport Select from \"react-select\";\nimport { withStyles } from \"@material-ui/core/styles\";\nimport Typography from \"@material-ui/core/Typography\";\nimport NoSsr from \"@material-ui/core/NoSsr\";\nimport TextField from \"@material-ui/core/TextField\";\nimport Paper from \"@material-ui/core/Paper\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\n\nconst styles = theme => ({\n root: {\n flexGrow: 1\n },\n input: {\n display: \"flex\",\n padding: 0,\n cursor: \"pointer\",\n height: 50,\n paddingLeft: 15\n },\n valueContainer: {\n display: \"flex\",\n flexWrap: \"wrap\",\n flex: 1,\n alignItems: \"center\",\n overflow: \"hidden\"\n },\n noOptionsMessage: {\n padding: `${theme.spacing(1)}px ${theme.spacing(2)}px`\n },\n singleValue: {\n fontSize: 14,\n fontFamily:\"Ubuntu-Medium\",\n color:\"#293139\"\n },\n placeholder: {\n position: \"absolute\",\n // left: 2,\n fontSize: 16\n // padding: 10\n },\n paper: {\n position: \"absolute\",\n overflowY:\"scroll\",\n zIndex: 1,\n marginTop: theme.spacing(1),\n left: 0,\n right: 0\n },\n divider: {\n height: theme.spacing(2)\n },\n notchedOutlineError: {\n borderColor: \"red !important\"\n },\n notchedOutline: {\n borderColor: \"#rgba(211, 211, 211) !important\",\n borderRadius:5\n }\n});\n\nfunction NoOptionsMessage(props) {\n return (\n \n {props.children}\n \n );\n}\n\nfunction inputComponent({ inputRef, ...props }) {\n return
;\n}\n\nfunction Control(props) {\n return (\n \n );\n}\n\nfunction Option(props) {\n return (\n \n {props.children}\n \n );\n}\n\nfunction Placeholder(props) {\n return (\n \n {props.children}\n \n );\n}\n\nfunction SingleValue(props) {\n return (\n \n {props.children}\n \n );\n}\n\nfunction ValueContainer(props) {\n return (\n
\n {props.children}\n
\n );\n}\n\nfunction Menu(props) {\n return (\n \n {props.children}\n \n );\n}\n\nconst components = {\n Control,\n Menu,\n NoOptionsMessage,\n Option,\n Placeholder,\n SingleValue,\n ValueContainer\n};\n\nclass IntegrationReactSelect extends React.Component {\n state = {\n single: null\n };\n\n render() {\n const { classes, theme } = this.props;\n\n const selectStyles = {\n input: base => ({\n ...base,\n color: theme.palette.text.primary,\n cursor: \"pointer\",\n \"& input\": {\n font: \"inherit\"\n }\n })\n };\n\n return (\n
\n \n \n \n {!!this.props.errorMessage ? this.props.errorMessage : \"\"}\n
\n \n
\n );\n }\n}\n\nIntegrationReactSelect.propTypes = {\n classes: PropTypes.object.isRequired,\n theme: PropTypes.object.isRequired\n};\n\nexport default withStyles(styles, { withTheme: true })(IntegrationReactSelect);\n","import React, { Component } from \"react\";\nimport { BUILD_URL } from \"../home/home\";\nimport { fontFamily } from \"@material-ui/system\";\n\nexport class Input extends Component {\n render() {\n const {\n name,\n image,\n image2,\n height,\n placeholder,\n isShowError,\n inputref,\n label,\n bordercolor,\n isShowPasswordError,\n onClick,\n type,\n errorMessage,\n ...rest\n } = this.props;\n return (\n
\n
\n {name} {label}{\" \"}\n
\n \n {!!image && (\n \n )}\n {name?.includes(\"ARN\") ? (\n \n ) : (\n \"\"\n )}\n \n\n
\n {!!image2 && (\n \n )}\n
\n
\n
\n {isShowError\n ? errorMessage || ` is required.`\n : isShowPasswordError\n ? \"Password should be at least 8 characters in length and should contain at least 1 uppercase letter (A-Z), 1 special character and 1 numeric value (0-9)\"\n : \"\"}\n
\n \n );\n }\n}\n\nexport class OtpInput extends Component {\n render() {\n const { inputref, ...rest } = this.props;\n return (\n
\n \n
\n );\n }\n}\n","import React, { Component } from \"react\";\n\nexport default class Signbutton extends Component {\n render() {\n return (\n\n \n {this.props.buttontitle}\n \n\n );\n }\n}\nexport class Debtbutton extends Component {\n render() {\n return (\n
\n \n {this.props.buttontitle}\n \n
\n );\n }\n}\n\nexport class DebtbuttonActive extends Component {\n render() {\n return (\n
\n \n {this.props.buttontitle}\n \n
\n );\n }\n}\n\nexport class DebtbuttonNowidth extends Component {\n render() {\n return (\n
\n \n {this.props.buttontitle}\n \n
\n );\n }\n}\n","import React from \"react\";\n\nconst BUILD_URL = process.env.PUBLIC_URL;\nexport default function Image({ src, ...props }) {\n return {props.alt;\n}\n","import { CALL_API } from \"../api.middleware\";\nimport { GET_PROFILE_DATA, GET_PROFILE_DATA_SUCCESS, GET_PROFILE_DATA_FAILED } from \"../types/profile\";\nexport const getProfileData = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetDistributorDetails\",\n params,\n method: \"GET\",\n types: [GET_PROFILE_DATA, GET_PROFILE_DATA_SUCCESS, GET_PROFILE_DATA_FAILED],\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const resetPassword = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetChangePassword\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};","import { CALL_API } from \"../api.middleware\";\nexport const getDistFoliobyPan = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetDistFoliobyPan\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getAccountStatement = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetAccountStatement\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getMailbackSoaStatus = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SOAMailBackReport\",\n params,\n method: \"GET\"\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getMailbackList = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetDistMailbackList\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const GetDistMailbackRequest = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetDistMailbackRequest\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getElssStatment = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SaveElssReport\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getcaptialgainStatment = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/CapitalGainsByEmailID\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getNetworthPortfolio = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/Ktrack_NetWorthPortfolio\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const getMailBackRequestStatus = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/GetMailBackRequestStatus\",\n params,\n method: \"GET\",\n v\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};\nexport const downloadInvestorProfile = function (params) {\n return async function (dispatch) {\n try {\n return await dispatch({\n [CALL_API]: {\n url: \"/SOAMailBackReport_Sundaram\",\n params,\n method: \"GET\",\n showLoader: true\n }\n });\n } catch (error) {\n return {\n error\n };\n }\n };\n};","export const firstLetterCaptilize = text => {\n return text.charAt(0).toUpperCase() + text.slice(1).toLowerCase();\n};\n\nexport const firstLetterOnlyCaptilize = text => {\n return text.charAt(0).toUpperCase() + text.slice(1);\n};\n\nexport const captalize = text => {\n return text.toUpperCase();\n};\n\nexport const formatDate = date => {\n return `${checkZero(date.getDate())}/${checkZero(\n date.getMonth() + 1\n )}/${date.getFullYear()}`;\n};\nconst checkZero = data => {\n return data.length == 1 ? `0${data}` : data;\n};\n","export const BUILD_URL = process.env.PUBLIC_URL;\n\nfunction AddingbuildURL(label) {\n return BUILD_URL + label;\n}\nexport const multi_asset = \"https://www.sundarammutual.com/Fund/Sundaram-Multi-Asset-Allocation-Fund?utm_source=Invwise&utm_medium=Banner&utm_campaign=SMAAF_ProductPage\"\nexport const sundaram_investor = \"https://invest.sundarammutual.com/smfinvestor/\"\nexport const large_cap = \"https://www.sundarammutual.com/Fund/Sundaram-Large-Cap-Fund\"\nexport const mutli_fund =\"https://www.sundarammutual.com/Fund/Sundaram-MultiCap-Fund?utm_source=InvWise+Page&utm_medium=Banner&utm_campaign=Multi+Cap+Product+Page\"\nexport const large_mid = \"https://www.sundarammutual.com/Fund/Sundaram-Large-and-MidCap-Fund\"\nexport const focuused_fund = \"https://www.sundarammutual.com/Fund/Sundaram-Focused?utm_source=InvWise+Page&utm_medium=Banner&utm_campaign=Focused+Fund+Product+Page\"\nexport const aggressive_fund = \"https://www.sundarammutual.com/Fund/Sundaram-Aggressive-Hybrid-Fund?utm_source=InvWise+Page&utm_medium=Banner&utm_campaign=Aggressive+Hybrid+Product+Page\"\nexport const mid_cap_fund = \"https://www.sundarammutual.com/Fund/Sundaram-Mid-Cap-Fund?utm_source=Invwise&utm_medium=Banner&utm_campaign=MidCapFundProductPage\"\nexport const flexi_fund = \"https://www.sundarammutual.com/Fund/Sundaram-Flexi-Cap-Fund\"\nexport const BAF_invwise = \"https://www.sundarammutual.com/Fund/Sundaram-Balanced-Advantage-Fund\"\nexport const services_fund= \"https://www.sundarammutual.com/Fund/Sundaram-Services-Fund?utm_source=Invwise&utm_medium=Banner&utm_campaign=ServicesFundProductPage\"\nexport const maff_fund =\"https://www.sundarammutual.com/Fund/Sundaram-Multi-Asset-Allocation-Fund?utm_source=Invwise&utm_medium=Banner&utm_campaign=MAAFProductPage\"\nexport const bcf_fund =\"https://www.sundarammutual.com/Fund/Sundaram-Business-Cycle-Fund?utm_source=Invwise&utm_medium=Banner&utm_campaign=BCFProductPage\"\nexport const business_cycle = \"https://www.sundarammutual.com/report/OSSBCF\"\nexport const APP_LOGO = AddingbuildURL(\"/images/invwise-sundaram-logo_new.svg\");\nexport const second_app_logo = AddingbuildURL(\"/images/invwise-1.svg\");\n\n\n// Login IMAGES\nexport const carouselImage0 = AddingbuildURL(\"/images/new_sundaram_investor.jpg\")\nexport const carouselImage1 = AddingbuildURL(\"/images/MAAF_Invwise.jpg\")\nexport const carouselImage2 = AddingbuildURL(\"/images/Mid_cap_Fund.jpg\")\nexport const carouselImage3 = AddingbuildURL(\"/images/Focused_Fund.jpg\")\nexport const carouselImage4 = AddingbuildURL(\"/images/BCF_Invwise.jpg\")\nexport const carouselImage5 = AddingbuildURL(\"/images/Aggressive_Hybrid_Fund.jpg\")\nexport const carouselImage6 = AddingbuildURL(\"/images/Multi_Cap_Fund.jpg\")\nexport const carouselImage7 = AddingbuildURL(\"/images/Balanced_Advantage_fund_latest.jpg\")\nexport const carouselImage8 = AddingbuildURL(\"/images/Services_fund_Invwise_latest.jpg\")\nexport const carouselImage9 = AddingbuildURL(\"/images/Large_cap_fund.jpg\")\nexport const carouselImage10 = AddingbuildURL(\"/images/Multi_asset.jpg\")\nexport const carouselImage11 = AddingbuildURL(\"/images/NFO_Invwise-banner_BCF.jpg\")\n\n\n\n// HOME ICONS\n\nexport const dashboardActive = AddingbuildURL(\"/images/home_active.svg\");\nexport const investorsActive = AddingbuildURL( \"/images/su_investor_color.svg\");\nexport const newTransactionActive = AddingbuildURL(\"/images/su_new_transact_active.svg\");\nexport const navActive = AddingbuildURL(\"/images/su_nav_color.svg\");\nexport const mailBackActive = AddingbuildURL( \"/images/su_mailback_active.svg\");\nexport const transactionHistoryActive = AddingbuildURL( \"/images/su_transaction_history_color.svg\");\nexport const ekycActive = AddingbuildURL(\"/images/su_ekyc_active.svg\");\nexport const earningsActive = AddingbuildURL(\"/images/su_my_earnings_color.svg\");\nexport const supportActive = AddingbuildURL(\"/images/customer-service.svg\");\nexport const settingsActive = AddingbuildURL(\"/images/settings_active.png\");\nexport const cobrandingActive = AddingbuildURL(\"/images/cobranding_active.svg\");\n\n\n//app-side-bar-inactive-images\n\nexport const dashboardInActive = AddingbuildURL(\"/images/home.svg\");\nexport const investorsInActive = AddingbuildURL(\"/images/su_investor.svg\");\nexport const newTransactionInActive = AddingbuildURL(\"/images/new_transaction.svg\");\nexport const navInActive = AddingbuildURL( \"/images/su_nav.svg\");\nexport const mailBackInActive = AddingbuildURL(\"/images/maiback_home.svg\");\nexport const transactionHistoryInActive = AddingbuildURL(\"/images/su_transaction_history.svg\");\nexport const ekycInActive = AddingbuildURL(\"/images/ekyc.svg\");\nexport const earningsInActive = AddingbuildURL(\"/images/su_my_earnings.svg\");\nexport const supportInActive = AddingbuildURL(\"/images/support.png\");\nexport const settingsInactive = AddingbuildURL(\"/images/su_settings.svg\");\nexport const cobrandingInActive = AddingbuildURL(\"/images/cobranding_unactive.svg\");\n\nexport const LOGOUT_ICON = AddingbuildURL(\"/images/su_logout.svg\");\n\n\n// MAILBACK ICONS\n\nexport const MailBackSoaIcon = AddingbuildURL(\"/images/su_newsletter.svg\");\nexport const CASIcon = AddingbuildURL(\"/images/su_cas.svg\");\nexport const ELSSIcon = AddingbuildURL(\"/images/su_elss.svg\");\nexport const CANIcon = AddingbuildURL(\"/images/su_can.svg\");\nexport const CGSIcon = AddingbuildURL(\"/images/su_cgs.svg\");\nexport const GASIcon = AddingbuildURL(\"/images/su_gas.svg\");\nexport const networthIcon = AddingbuildURL(\"/images/su_networth.svg\");\nexport const mailbackRightarrow = AddingbuildURL(\"/images/arrow_right_grey.svg\");\n\n\n// Loader ICON :\n\nexport const Loader_icon = AddingbuildURL(\"/images/su_loader_logo.png\")\n\n\n// Transaction ICONS\n\nexport const NEW_PURCHASE_ICON = AddingbuildURL(\"/images/su_new_purchase.svg\");\nexport const SIP_ICON = AddingbuildURL(\"/images/su_sip.svg\");\nexport const ADDITIONAL_PURCHASE_ICON = AddingbuildURL(\"/images/su_additional_purchase.svg\");\nexport const REDEMPTION_ICON = AddingbuildURL(\"/images/su_redemption.svg\");\nexport const SWITCH_ICON = AddingbuildURL(\"/images/su_switch.svg\");\nexport const STP_ICON = AddingbuildURL(\"/images/su_stp.svg\");\nexport const SWP_ICON = AddingbuildURL(\"/images/su_swp.svg\");\nexport const SIP_PAUSE_ICON = AddingbuildURL(\"/images/su_sip_pause.svg\");\nexport const NCT_ICON = AddingbuildURL(\"/images/nct_icon.svg\");\nexport const ENACH_ICON = AddingbuildURL(\"/images/nach.svg\");\n\n\n\n// eye icons\n\n\nexport const EYE_ICON = AddingbuildURL(\"/images/su_eye_icon_unhidden.svg\");\nexport const EYE_ICON_HIDDEN= AddingbuildURL(\"/images/su_eyeicon.svg\");\n","import React, { Component } from \"react\";\nimport { withStyles } from \"@material-ui/core/styles\";\nimport Signbutton, { DebtbuttonActive } from \"../forms/button\";\nimport { Input } from \"../forms/input\";\nimport { Debtbutton } from \"../forms/button\";\nimport Dialog from \"@material-ui/core/Dialog\";\nimport MuiDialogTitle from \"@material-ui/core/DialogTitle\";\nimport MuiDialogContent from \"@material-ui/core/DialogContent\";\nimport IconButton from \"@material-ui/core/IconButton\";\nimport CloseIcon from \"@material-ui/icons/Close\";\nimport Typography from \"@material-ui/core/Typography\";\nimport { connect } from \"react-redux\";\nimport Image from \"../Image\";\nimport { resetPassword } from \"shared/store/actions/profile\";\nimport { getMailBackRequestStatus } from \"shared/store/actions/mailback\";\nimport { REQ_BY } from \"shared/store/types\";\nimport { BUILD_URL } from \"./home\";\nimport { formatDate } from \"../forms/captalize\";\nimport {\n MuiPickersUtilsProvider,\n KeyboardDatePicker,\n} from \"@material-ui/pickers\";\nimport DateFnsUtils from \"@date-io/date-fns\";\n\nimport Paper from \"@material-ui/core/Paper\";\nimport { userLogout } from \"shared/store/actions\";\nimport { CircularProgressbar } from \"react-circular-progressbar\";\nimport \"react-circular-progressbar/dist/styles.css\";\nimport { EYE_ICON, EYE_ICON_HIDDEN } from \"../forms/appEssentials\";\nconst styles = (theme) => ({\n root: {\n margin: 0,\n padding: theme.spacing(2),\n },\n closeButton: {\n position: \"absolute\",\n right: theme.spacing(1),\n top: theme.spacing(1),\n color: theme.palette.grey[500],\n },\n});\n\nconst DialogTitle = withStyles(styles)((props) => {\n const { children, classes, onClose } = props;\n return (\n \n \n {children}\n \n {onClose ? (\n \n \n \n ) : null}\n \n );\n});\n\nconst DialogContent = withStyles((theme) => ({\n root: {\n padding: theme.spacing(2),\n },\n}))(MuiDialogContent);\n\nexport class SucesssPopUp extends Component {\n render() {\n return (\n \n \n\n \n
\n
\n \n
\n
Successfully raised a query
\n {!!this.props.response ? (\n \n {this.props.response}\n
\n ) : (\n \"\"\n )}\n \n
\n \n
\n
\n \n );\n }\n}\nexport class PasswordModal extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n oldPassword: {\n value: \"\",\n isShowError: false,\n isShowPasswordError: false,\n },\n showPassword: false,\n showOldPassword: false,\n confirmShowPassword: false,\n newPassword: {\n value: \"\",\n isShowError: false,\n isShowPasswordError: false,\n },\n confirmPassword: {\n value: \"\",\n isShowError: false,\n isShowPasswordError: false,\n },\n openSuccessPasword: false,\n };\n }\n\n componentDidMount() {\n this.setState({\n oldPassword: {\n value: \"\",\n isShowError: false,\n isShowPasswordError: false,\n },\n showPassword: false,\n showOldPassword: false,\n confirmShowPassword: false,\n newPassword: {\n value: \"\",\n isShowError: false,\n isShowPasswordError: false,\n },\n confirmPassword: {\n value: \"\",\n isShowError: false,\n isShowPasswordError: false,\n },\n openSuccessPasword: false,\n });\n }\n\n onBlurInput = (eve, label) => {\n var strongRegex = new RegExp(\n \"^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$\"\n );\n if (strongRegex.test(eve.target.value) === false) {\n if (label === \"oldPassword\") {\n this.setState({\n [label]: { ...this.state.oldPassword, isShowPasswordError: true },\n });\n } else if (label === \"newPassword\") {\n this.setState({\n [label]: { ...this.state.newPassword, isShowPasswordError: true },\n });\n } else if (label === \"confirmPassword\") {\n this.setState({\n [label]: { ...this.state.confirmPassword, isShowPasswordError: true },\n });\n }\n }\n };\n\n onChangeInput = (label) => (event) => {\n this.setState({\n [label]: { value: event.target.value },\n });\n };\n\n submit = async () => {\n if (\n !this.state.oldPassword.value ||\n !this.state.newPassword.value ||\n !this.state.confirmPassword.value\n ) {\n if (!this.state.oldPassword.value) {\n this.setState({\n oldPassword: {\n ...this.state.oldPassword,\n isShowError: true,\n errorMessage: \"(old Password is mandatory)\",\n },\n });\n }\n if (!this.state.newPassword.value) {\n this.setState({\n newPassword: {\n ...this.state.newPassword,\n isShowError: true,\n errorMessage: \"(new Password is mandatory)\",\n },\n });\n }\n if (!this.state.confirmPassword.value) {\n this.setState({\n confirmPassword: {\n ...this.state.confirmPassword,\n isShowError: true,\n errorMessage: \"(confirm Password is mandatory)\",\n },\n });\n }\n } else if (this.state.oldPassword.value === this.state.newPassword.value) {\n this.setState({\n newPassword: {\n ...this.state.newPassword,\n isShowError: true,\n errorMessage: \"(*Old password and New Password should not be Same)\",\n },\n });\n } else if (\n this.state.newPassword.value !== this.state.confirmPassword.value\n ) {\n this.setState({\n confirmPassword: {\n ...this.state.confirmPassword,\n isShowError: true,\n errorMessage: \"(Password does not match)\",\n },\n });\n } else {\n const response = await this.props.resetPassword({\n newPassword: this.state.newPassword.value,\n oldpassword: this.state.oldPassword.value,\n ReqBy: REQ_BY,\n userid: this.props.userid,\n });\n if (!!response && !response.error) {\n this.props.closeModal();\n // this.props.history.replace(BUILD_URL + \"/Login\");\n this.setState({\n openSuccessPasword: true,\n });\n } else if (!!response && !!response.error) {\n alert(`${response.error}`)\n this.setState({\n confirmPassword: { value: \"\" },\n newPassword: { value: \"\" },\n oldPassword: { value: \"\" }\n\n })\n }\n }\n };\n closePasswordModal = () => {\n this.props.userLogout();\n this.props.history.replace(\"/Login\");\n this.setState({\n openSuccessPasword: false,\n });\n };\n\n closeModalPopUp = () => {\n this.props.closeModal();\n this.setState({\n oldPassword: { value: \"\" },\n newPassword: { value: \"\" },\n confirmPassword: { value: \"\" },\n });\n };\n\n render() {\n return (\n
\n \n \n \n Change Password\n
\n \n \n
\n
\n this.onBlurInput(value, \"oldPassword\")}\n height={18}\n image2={\n !!this.state.showOldPassword &&\n !this.state.showOldPassword.value\n ? EYE_ICON\n : EYE_ICON_HIDDEN\n }\n onClick={() => {\n this.setState({\n showOldPassword: !this.state.showOldPassword,\n });\n }}\n isShowError={this.state.oldPassword.isShowError}\n errorMessage={this.state.oldPassword.errorMessage}\n />\n
\n
\n this.onBlurInput(value, \"newPassword\")}\n onClick={() => {\n this.setState({\n showPassword: !this.state.showPassword,\n });\n }}\n isShowError={this.state.newPassword.isShowError}\n isShowPasswordError={\n this.state.newPassword.isShowPasswordError\n }\n errorMessage={this.state.newPassword.errorMessage}\n />\n
\n
\n {\n this.setState({\n confirmShowPassword: !this.state.confirmShowPassword,\n });\n }}\n value={this.state.confirmPassword.value}\n onChange={this.onChangeInput(\"confirmPassword\")}\n onBlur={(eve) => this.onBlurInput(eve, \"confirmPassword\")}\n isShowError={this.state.confirmPassword.isShowError}\n isShowPasswordError={\n this.state.confirmPassword.isShowPasswordError\n }\n errorMessage={this.state.confirmPassword.errorMessage}\n />\n
\n
\n this.submit()}\n />\n \n
\n
\n
\n \n this.closePasswordModal()}\n passwordSucess={this.state.openSuccessPasword === true ? true : false}\n />\n \n );\n }\n}\n\nconst mapStateToProps = ({ authReducer }) => {\n return {\n userid: authReducer.userId,\n };\n};\n\nexport const PasswordDialog = connect(mapStateToProps, {\n resetPassword,\n userLogout,\n})(PasswordModal);\n\nexport class NonLoginServicesDialog extends Component {\n render() {\n return (\n \n \n Distributor Non-Login Services\n \n \n
\n
\n \n Services\n
\n
\n \n \n \n \n
\n
\n\n
\n \n Forms\n
\n
\n \n \n
\n \n\n
\n \n Downloads\n
\n
\n \n \n \n \n \n \n
\n \n \n
\n \n );\n }\n}\n\nexport class MailBacKRequestStatusPopUp extends Component {\n constructor(props) {\n super(props);\n this.state = {\n date: new Date(),\n record: false,\n };\n }\n\n onDateChange = (event) => {\n this.setState({\n date: event,\n });\n };\n\n submit = async () => {\n const { date } = this.state;\n let startDateValue;\n if (date) {\n startDateValue = date.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n });\n }\n const params = {\n FromDate: startDateValue,\n };\n const response = await this.props.getMailBackRequestStatus(params);\n if (!response) {\n this.setState({\n record: true,\n });\n }\n };\n\n render() {\n return (\n
\n \n \n MailBack Request Status\n \n \n \n \n this.onDateChange(e)}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n maxDate={new Date()}\n id=\"mui-pickers-date\"\n value={this.state.date}\n />\n \n
\n
\n \n
\n \n \n \n );\n }\n}\n\n\nexport class PosterDialog extends Component {\n render() {\n return (\n <>\n
\n \n \n {/* \n window.open(\"https://bit.ly/49yOZfT\")\n }\n /> */}\n
\n

\n Important Regulatory Update on KYC Status\n

\n
\n As per the Master Circular issued by SEBI on KYC requirements,\n Investors with ‘KYC Registered’ status are requested to do their KYC again to become ‘KYC Validated’ by visiting {\" \"}\n https://mfs.kfintech.com/Investor/General/ValidateKYC/

\n Click here to know more about the circular.\n
\n
\n \n \n
\n \n \n \n \n );\n }\n}\n\n\nexport const MBRStatusDialog = connect(null, { getMailBackRequestStatus })(\n MailBacKRequestStatusPopUp\n);\n\nexport class NonLoginServices extends Component {\n render() {\n return (\n \n \n \n {this.props.name}\n \n \n );\n }\n}\n\nexport class KycNotDoneDialog extends React.Component {\n render() {\n return (\n
\n \n \n \n \n {!!this.props.message\n ? this.props.message\n : `The entered PAN is not KYC-Compliant. Please click \"Continue\" to proceed for doing eKYC`}\n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n \n \n \n );\n }\n}\n\nexport default class CustomizedDialogs extends React.Component {\n render() {\n return (\n
\n \n \n \n
\n \n
\n {this.props.nfoFunds === true ? (\n
\n
\n The transaction for NFO has been initiated\n Successfully.\n
\n
\n Link for {this.props.scheme} scheme is\n generated\n
\n
\n ) : this.props.cas === true ||\n this.props.Gas === true ||\n this.props.componentName === \"MailBackSoa\" ||\n this.props.passwordSucess ? (\n \n {!!this.props.passwordSucess\n ? this.props.message || \"Password Changed Successfully\"\n : !!this.props.Gas\n ? this.props.error\n : \"Your request has been successfully submitted\"}\n \n {this.props.cas === true\n ? \"A mail will be sent to the investor within 30 minutes.\"\n : \"\"}\n
\n \n ) : (this.props.componentName === \"MailBacKRequest\" &&\n this.props.refNo) ||\n (this.props.componentName === \"SWP\" && this.props.refNo) ||\n (this.props.componentName === \"REDEMPTION\" &&\n this.props.refNo) ? (\n
\n {!!this.props.componentName &&\n (this.props.componentName === \"REDEMPTION\" ||\n this.props.componentName === \"SWP\") ? (\n
\n Successfully Initiated Transaction\n
\n ) : (\n \"\"\n )}\n
\n
\n {!!this.props.componentName &&\n (this.props.componentName === \"REDEMPTION\" ||\n this.props.componentName === \"SWP\") ? (\n
\n The transaction for{\" \"}\n {this.props.componentName} has been\n initiated successfully.\n
\n ) : (\n \"\"\n )}\n \n Your request is successfully registered with reference number\n \n {\" \"}\n {this.props.refNo}\n \n .{\" \"}\n {this.props.myself === true ? \"Distributor\" : \"Investor\"}{\" \"}\n will receive an email for approval.\n
\n
\n
\n \n ) : (\n
\n
\n {this.props.componentName === \"Sip cancellation\" ||\n this.props.componentName === \"SWP cancellation\" ||\n this.props.componentName === \"STP cancellation\"\n ? `Successfully Cancelled ${this.props.componentName}`\n : this.props.componentName === \"Sip Pause\"\n ? `Successfully Sip Transaction has been paused`\n : `Successfully Initiated Transaction`}\n
\n\n {this.props.type === \"STP\" || this.props.type === \"SWITCH\" ? (\n
\n
\n The transaction for {this.props.type} has\n been initiated successfully.\n
\n
\n You have initiated the transaction successfully with\n reference number:\n \n {this.props.refNo}\n \n investor will receive an email for approval.\n
\n
\n ) : (\n
\n {!!this.props.reqtype ? (\n
\n the transaction for {this.props.reqtype}{\" \"}\n with the IHNO : ${this.props.Nctihno} has been initiated\n successfully\n
\n ) : (\n this.props.componentName !== \"Sip cancellation\" ||\n this.props.componentName !== \"SWP cancellation\" ||\n this.props.componentName !== \"STP cancellation\" ||\n (this.props.componentName !== \"Sip Pause\" && (\n
\n The transaction for{\" \"}\n \n {!!this.props.refrence\n ? this.props.refrence.new_type\n : \"\"}\n {!!this.props.refNo ? \"SIP\" : \"\"}\n {\" \"}\n has been initiated successfully.\n
\n ))\n )}\n {!!this.props.reqtype ? (\n
\n Your investor will receive the details via an email and\n SMS\n
\n ) : this.props.componentName === \"Sip cancellation\" ||\n this.props.componentName === \"SWP cancellation\" ||\n this.props.componentName === \"STP cancellation\" ? (\n
\n the transaction for{\" \"}\n {this.props.componentName} with the\n Ihno {this.props.refNo.value} has been\n successful.\n
\n ) : this.props.componentName === \"Sip Pause\" ? (\n this.props.refNo.errorMessage\n ) : (\n
\n
\n the transaction for{\" \"}\n {this.props.transactName} has been\n initiated successfully.\n
\n
\n Your investor will receive the details via an email and\n SMS with reference number\n \n {!!this.props.refrence\n ? this.props.refrence.value\n : \"\"}\n {!!this.props.refNo ? this.props.refNo : \"\"}\n \n
\n
\n )}\n
\n )}\n
\n )}\n\n {!!this.props.Transaction &&
Would you like to do another transaction ?
}\n\n
\n {!!this.props.Transaction ?\n
\n
\n \n
\n
\n \n
\n
\n\n : this.props.cas === true && !this.props.componentName ? (\n
\n \n
\n ) : (\n \n )}\n
\n \n \n \n );\n }\n}\n\nexport class SipCancelModal extends Component {\n render() {\n return (\n \n {!this.props.rejectionreasonsOpen && (<>\n \n SIP Cancellation\n \n\n \n \n {this.props.message}\n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n \n )}\n {this.props.rejectionreasonsOpen && (\n <>\n
\n \n
\n
\n\n
\n \n
\n
\n \n
\n
\n \n )\n\n }\n \n );\n }\n}\n\n\nexport class EnachModal extends Component {\n render() {\n return (\n \n \n
\n \n
\n \n {this.props.message}\n \n
\n
\n \n
\n {/*
\n \n
*/}\n
\n
\n \n );\n }\n}\n\nexport class EnachAMCModal extends Component {\n render() {\n const FundList = [\n \"AXIS MUTUAL FUND\",\n \"BOI AXA MUTUAL FUND\",\n \"CANARA ROBECO MUTUAL FUND\",\n \"ESSEL MUTUAL FUND\",\n \"IDBI MUTUAL FUND\",\n \"INVESCO MUTUAL FUND\",\n \"ITI MUTUAL FUND\",\n \"LIC MUTUAL FUND\",\n \"MOTILAL OSWAL MUTUAL FUND\",\n \"NIPPON INDIA MUTUAL FUND\",\n \"PGIM INDIA MUTUAL FUND\",\n \"QUANT MUTUAL FUND\",\n \"QUANTUM MUTUAL FUND\",\n \"SUNDARAM MUTUAL FUND\",\n ];\n return (\n \n \n
\n \n eNACH Participating AMCs{\" \"}\n
\n \n \n \n
\n {FundList.map((ele, index) => (\n \n {ele}\n \n ))}\n \n
\n \n );\n }\n}\n\nexport class PerformanceModal extends Component {\n render() {\n const {data} = this.props;\n return (\n \n \n
\n \n Transaction Details\n
\n
\n
\n
\n Units\n
\n \n {!!data && !!data[0]?data[0].Units : \"\"}\n
\n
\n
\n
\n Price (NAV)\n
\n \n {!!data && !!data[0]?data[0].NAV : \"\"}\n
\n \n \n
\n
\n
\n Nav Date\n
\n \n {!!data && !!data[0]?data[0].NavDate : \"\"}\n
\n
\n
\n
\n Folio Number\n
\n \n {!!data && !!data[0]?data[0].trs_acno : \"\"}\n
\n \n \n \n
\n
\n \n Transaction Completion\n
\n
\n \n
\n
\n
\n \n Transaction Status\n
\n
\n \n
\n \n \n
Payment Confirmation
\n {/*
\n {!!data && !!data[0]?data[0].PaymentDate:\"\"}\n
*/}\n {/*
Via {!!data && !!data[0]?data[0].MFPaymentMode:\"-\"}
*/}\n
\n
\n \n {!!data && !!data[0]?data[0].MFPayment:\"-\"}\n \n \n \n
\n
\n \n \n
Units Allotment
\n
\n
\n \n {!!data && !!data[0] ?data[0].Unitsallotment:\"\"}\n \n\n \n \n \n \n
\n \n
\n
\n \n );\n}\n}\n\nexport class CustomizedDialogsforReintitate extends React.Component {\n render() {\n return (\n
\n \n \n \n
\n \n
\n
\n Successfully Re-Initiated Transaction\n
\n
\n
\n
\n Transaction for {this.props.componentName}{\" \"}\n has been initiated Successfully.\n
\n
\n
\n
\n Your investor will receive the details via an mail and sms with\n reference number\n \n {!!this.props.refNo ? this.props.refNo : \"\"}\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n );\n }\n}\nexport const RejectionReason = (props) => {\n return (\n
\n

Cancellation Reasons

\n {props.rejectionReasons.map((reason) => (\n
\n \n \n
\n\n ))}\n {\n !!props.reasonMandatory && *Rejection reason is mandatory\n }\n\n

Selected Reason: {props.selectedReason}

\n {props.selectedReason.includes(\"Others\") && (\n
\n \n
\n )}\n
\n\n );\n};","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport CustomizedSelect from \"../home/transactions/customizedSelect\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport FormControl from \"@material-ui/core/FormControl\";\nimport InputBase from \"@material-ui/core/InputBase\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport { connect } from \"react-redux\";\nimport { REQ_BY } from \"shared/store/types\";\nimport {\n searchInvestors,\n schemeSearch,\n ditSchemeDetails,\n getInvestors,\n getInvestorDetails,\n checkKyc,\n storeFundState,\n storeKYCData,\n userPan,\n clearingFirstTimeInvestorJourney,\n storeCurrentPage,\n} from \"shared/store/actions\";\nimport { KycNotDoneDialog } from \"./customModal\";\n\nexport const NEW_TRANSACTION_URL = `/investors`;\nclass Search extends Component {\n constructor(props) {\n super(props);\n const { tran_enable_flag } = this.props;\n this.state = {\n radioValue: tran_enable_flag === \"Y\" ? \"pan\" : \"name\",\n inputValue: \"\",\n errorMessage: \"\",\n scheme: { value: \"\" },\n schemeOptions: [],\n };\n }\n async componentDidMount() {\n const { fundstate } = this.props;\n if (!!fundstate) {\n this.setState({\n ...fundstate,\n radioValue: \"pan\",\n });\n }\n }\n componentDidUpdate(prevProps, prevState) {\n const { inputValue } = prevState;\n if (!this.state.inputValue && !!inputValue) {\n this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: this.props.selectedTab,\n });\n }\n }\n\n handleRadioChange = async (event) => {\n this.props.storeCurrentPage(1);\n this.setState({\n radioValue: event.target.value,\n inputValue: \"\",\n errorMessage: \"\",\n });\n this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: this.props.selectedTab,\n });\n if (event.target.value === \"fund\") {\n const params = {\n fund: \"176\",\n agentcode: this.props.token,\n };\n const response = await this.props.ditSchemeDetails(params);\n const { DtData } = response;\n this.setState({\n schemeOptions: DtData || [],\n });\n }\n };\n\n changeInput = (event) => {\n const inputValue = event.target.value;\n if (inputValue === \"\") {\n this.setState({\n errorMessage: \"\",\n });\n }\n this.setState({\n inputValue:\n this.state.radioValue === \"pan\"\n ? inputValue.toUpperCase()\n : this.state.radioValue === \"mobile\" && inputValue.length > 10\n ? this.state.inputValue\n : inputValue,\n });\n // if (this.state.radioValue === \"name\" && inputValue.length >= 4) {\n // this.search();\n // }\n };\n\n keyPress = (e) => {\n if (e.key === \"Enter\") {\n this.search();\n e.preventDefault();\n }\n };\n\n search = async () => {\n const { inputValue, radioValue } = this.state;\n const regpan = /^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/;\n if(inputValue === \"\") {\n this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: this.props.selectedTab,\n });\n return\n }\n if (\n radioValue === \"pan\" &&\n (/[A-Za-z]{5}\\d{4}[A-Za-z]{1}/.test(inputValue) === false ||\n inputValue === \"\")\n ) {\n this.setState({\n errorMessage: \"(Please enter a Valid PAN)\",\n });\n this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: this.props.selectedTab,\n });\n } else if (radioValue === \"name\" && !inputValue) {\n this.setState({\n errorMessage: \"(Please enter a Valid name)\",\n });\n this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: this.props.selectedTab,\n });\n } else if (radioValue === \"folio\" && !inputValue) {\n this.setState({\n errorMessage: \"(Please enter a Valid Folio)\",\n });\n this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: this.props.selectedTab,\n });\n } else if (\n radioValue === \"mobile\" &&\n (/^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[6-9]\\d{9}$/.test(inputValue) ===\n false ||\n inputValue === \"\")\n ) {\n this.setState({\n errorMessage: \"(Please enter a Valid Mobile Number)\",\n });\n this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: this.props.selectedTab,\n });\n } else if (\n radioValue === \"email\" &&\n (/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(inputValue) ===\n false ||\n inputValue === \"\")\n ) {\n this.setState({\n errorMessage: \"Please enter a Valid Email ID\",\n });\n this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: this.props.selectedTab,\n });\n } else if (radioValue === \"fund\" && !inputValue) {\n this.setState({\n errorMessage: \"(Please enter a Valid Fund)\",\n });\n } else {\n if (!!this.state.inputValue) {\n\n const parameters = {\n [this.state.radioValue]:\n this.state.radioValue === \"pan\"\n ? this.state.inputValue.toUpperCase()\n : this.state.inputValue,\n agent: this.props.token,\n uid: this.props.userId,\n };\n const response = await this.props.searchInvestors(parameters, true);\n if (!response && this.state.radioValue === \"pan\") {\n const regpan = /^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/;\n if (!this.state.inputValue || !regpan.test(this.state.inputValue)) {\n this.setState({ errorMessage: \"Please enter valid PAN\" });\n } else if ((this.state.inputValue.charAt(3) !== \"P\") && (this.state.inputValue.charAt(3) !== \"H\")) {\n this.setState({\n errorMessage: \"Non Indivdual PAN is not allowed to transact\",\n });\n }\n } else {\n const params = {\n Uid: this.props.userId,\n ReqBy: REQ_BY,\n PAN:\n this.state.radioValue === \"pan\"\n ? this.state.inputValue.toUpperCase()\n : !!response &&\n !!response.Dtdata &&\n !!response.Dtdata[0] &&\n !!response.Dtdata[0].Pan\n ? response.Dtdata[0].Pan\n : this.state.inputValue,\n };\n await this.props.userPan(this.state.inputValue);\n\n const Investorresponse = await this.props.getInvestorDetails(\n params,\n true\n );\n\n if (!!Investorresponse && !Investorresponse.error) {\n // this.props.history.push({\n // pathname: process.env.PUBLIC_URL + \"/investors/transction-types\",\n // pan: this.state.radioValue === \"pan\"?this.state.inputValue: !!response &&\n // !!response.Dtdata &&\n // !!response.Dtdata[0] &&\n // !!response.Dtdata[0].Pan\n // ? response.Dtdata[0].Pan:\"\",\n // });\n } else {\n if (this.state.radioValue === \"pan\") {\n const kycResponse = await this.props.checkKyc(\n {\n fund: \"176\",\n userid: this.props.userId,\n i_pan: this.state.inputValue,\n },\n true\n );\n\n const {\n DtData: [info],\n } = kycResponse;\n await this.props.storeKYCData(info)\n await this.props.clearingFirstTimeInvestorJourney();\n if (info.KYCBlock === \"N\") {\n await this.props.clearingFirstTimeInvestorJourney();\n\n this.props.history.push({\n pathname: \"/new-investor-transaction/investor-details\",\n\n // pathname: NEW_TRANSACTION_URL + \"/transction-types\",\n state: {\n pan: !!this.state.inputValue ? this.state.inputValue : \"\",\n },\n });\n await this.props.userPan(this.state.inputValue);\n\n } else {\n this.setState({ openModal: true });\n }\n } else {\n alert(\"No Data Found\");\n }\n }\n }\n }\n }\n };\n closeModal = () => {\n this.setState({\n openModal: false,\n });\n };\n\n continue = () => {\n this.closeModal();\n this.props.history.push({\n pathname:\n NEW_TRANSACTION_URL + `/new-investor/ekyc/${this.state.inputValue}`,\n });\n };\n handleschemeOptions = async (event) => {\n const schemeoption = event.target.value;\n this.setState({\n scheme: { value: schemeoption },\n });\n const params = {\n fund: \"176\",\n scheme: schemeoption,\n agentcode: this.props.token,\n };\n const response = await this.props.schemeSearch(params);\n if (!!response && response.error) {\n alert(response.error);\n }\n this.props.storeFundState(this.state);\n };\n\n render() {\n const { count } = this.props;\n return (\n
\n {count === 0 && (\n \n \n
Search by :
\n \n \n \n {\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Name
\n
\n }\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
PAN
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Folio No.
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Mobile
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Email ID
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Fund
\n
\n \n
\n
\n \n {this.state.radioValue !== \"fund\" && (\n
\n
\n \n (this.InputField = ele)}\n onChange={this.changeInput}\n onKeyPress={this.keyPress}\n onKeyDown={(evt) =>\n evt.key === \"e\" &&\n (this.state.radioValue === \"mobile\" ||\n this.state.radioValue === \"folio\") &&\n evt.preventDefault()\n }\n />\n
\n
\n Search\n
\n
\n )}\n {this.state.radioValue === \"fund\" && (\n
\n \n {this.state.schemeOptions.map((item, index) => (\n \n {item.fm_schdesc}\n \n ))}\n \n
\n )}\n \n )}\n {!!this.state.errorMessage ? (\n \n {this.state.errorMessage}\n \n ) : (\n \"\"\n )}\n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, investor, loading }) => {\n const { token, userId, tran_enable_flag, investorData, fundList } =\n authReducer;\n const { count } = loading;\n const { selectedTab, fundstate } = investor;\n return {\n token,\n userId,\n selectedTab,\n count,\n tran_enable_flag,\n fundList,\n fundstate,\n };\n },\n {\n searchInvestors,\n schemeSearch,\n ditSchemeDetails,\n getInvestors,\n getInvestorDetails,\n checkKyc,\n storeFundState,\n storeKYCData,\n clearingFirstTimeInvestorJourney,\n userPan,\n storeCurrentPage,\n }\n)(Search);","import React, { Component } from \"react\";\nimport { NavLink } from \"react-router-dom\";\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\nimport NavigateNextIcon from \"@material-ui/icons/NavigateNext\";\nimport { BUILD_URL } from \"./home\";\n\nexport default class CommonBreadCrumb extends Component {\n lastAndTo = (index) => {\n let { pathnames } = this.props;\n if (pathnames.find((p) => p === process.env.PUBLIC_URL.split(\"/\").pop())) {\n pathnames = pathnames.slice(1);\n }\n const last = index === pathnames.length - 1;\n const to = `/${pathnames.slice(0, index + 1).join(\"/\")}`;\n return { last, to };\n };\n\n render() {\n let { hideFirst, pathnames, breadcrumbNameMap } = this.props;\n if (pathnames.find((p) => p === process.env.PUBLIC_URL.split(\"/\").pop())) {\n pathnames = pathnames.slice(1);\n }\n return pathnames.length === 1 && !!hideFirst ? (\n
\n ) : (\n }\n aria-label=\"Breadcrumb\"\n >\n {pathnames.map((value, index) => {\n const { last, to } = this.lastAndTo(index);\n return (\n
\n {index === 0 && (\n \n )}\n {last ? (\n
\n {breadcrumbNameMap[to].title}\n
\n ) : (\n \n {breadcrumbNameMap[to].title}\n \n )}\n
\n );\n })}\n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport Search from \"../searchComponent\";\nimport { ALL, FAVOURITE, RECENT } from \"shared/store/types\";\nimport TableData from \"../tableData\";\nimport { connect } from \"react-redux\";\nimport { getInvestors, storeType,schemeSearch,storeFundState,nctInvestorslist} from \"shared/store/actions\";\nimport TabHeader from \"../../forms/tabHeader\";\n\nclass InvestorData extends Component {\n constructor(props) {\n super(props);\n this.state = {\n activeTab: ALL,\n activeText: \"All\"\n };\n }\n\n async componentDidMount() {\n const { fundstate } = this.props;\n const response = await this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: ALL\n });\n if(this.props.location.pathname.includes(\"nct\")){\n await this.props.nctInvestorslist()\n }\n if (!!fundstate && !!Object.keys(fundstate).length) {\n if (!!fundstate.scheme.value) {\n const params = {\n fund: \"176\",\n scheme: fundstate.scheme.value,\n agentcode: this.props.token,\n }\n const response = await this.props.schemeSearch(params)\n if (!!response && response.error) {\n alert(response.error);\n }\n }\n }\n }\n\n selectTab = tabName => async () => {\n this.props.storeType(tabName);\n this.setState({\n activeTab: tabName,\n activeText:\n tabName === ALL ? \"All\" : tabName === RECENT ? \"Recent\" : \"Favourite\"\n });\n if(this.props.location.pathname.includes(\"nct\")){\n await this.props.nctInvestorslist()\n } else {\n\n await this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: tabName\n });\n }\n };\n\n render() {\n const { activeTab } = this.state;\n return (\n
\n \n \n \n \n {this.props.location.pathname.includes(\"nct\") ?null :\n } \n \n {this.props.location.pathname.includes(\"nct\") ?null :\n } \n\n
\n \n {this.state.activeText}: {this.props.count} Investors\n
\n \n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, investor }) => {\n const { token } = authReducer;\n const { count,fundstate } = investor;\n return { token, count,fundstate };\n },\n { getInvestors, storeType ,schemeSearch,storeFundState,nctInvestorslist}\n)(InvestorData);\n","import React, { Component } from \"react\";\nimport InvestorData from \"./investorData\";\nexport default class Investor extends Component {\n render() {\n return (\n
\n
Investors
\n \n
\n );\n }\n}\n","import React, { Component } from \"react\";\nvar CurrencyFormat = require(\"react-currency-format\");\nexport class FormatCurrency extends Component {\n render() {\n return (\n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport TabHeader from \"../../forms/tabHeader\";\nimport { INVESTMENTS, UPCOMING_SIP } from \"shared/store/types\";\n\nexport default class InvestmentTab extends Component {\n render() {\n return (\n \n \n \n \n );\n }\n}\n","import React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { INVESTMENTS } from \"shared/store/types\";\nimport Table from \"@material-ui/core/Table\";\nimport TableBody from \"@material-ui/core/TableBody\";\nimport TableCell from \"@material-ui/core/TableCell\";\nimport TableHead from \"@material-ui/core/TableHead\";\nimport TableRow from \"@material-ui/core/TableRow\";\nimport { Checkbox } from \"@material-ui/core\";\nconst Investments = (props) => {\n const [isChecked, setIsChecked] = useState(false);\n const { investments, upComingSipDetails } = props;\n const columns = {\n investments: [\n \"Scheme\",\n \"Cost Value\",\n \"Current Value\",\n \"Gain\",\n \"Units\",\n \"NAV\",\n ],\n upcomingSip: [\n \"Scheme\",\n \"Folio Number\",\n \"Next SIP Date\",\n \"SIP Start Date\",\n \"SIP End Date\",\n \"SIP Amount(₹)\",\n \"Status\",\n ],\n };\n console.log(\"investments\", investments)\n const sortedData = [...investments].sort((a, b) => {\n const valueA = parseFloat(a.CurrentValue.replace(/,/g, ''));\n const valueB = parseFloat(b.CurrentValue.replace(/,/g, ''));\n return valueB - valueA;\n });\n const filterInvestments = sortedData.filter((data) => data.units >= 1);\n const checkingNoZeroHolding = sortedData.filter((data) => data.units === 0);\n\n\n console.log(\"sortedData\", sortedData);\n const tableData =\n props.active === INVESTMENTS\n ? isChecked\n ? sortedData\n : filterInvestments\n : upComingSipDetails;\n const tableColumns =\n props.active === INVESTMENTS ? columns.investments : columns.upcomingSip;\n\n return (\n
\n {props.active === INVESTMENTS && (\n <>\n setIsChecked((p) => !p)}\n checked={isChecked}\n />\n \n Include Zero Holdings\n \n {\n checkingNoZeroHolding.length === 0 && isChecked && (\n *No zero holding investments\n )\n }\n \n )}\n \n \n \n {tableColumns.map((col) => (\n \n {col}\n \n ))}\n \n \n {props.active === INVESTMENTS && (\n \n {tableData.length ? (\n tableData.map((data, index) => (\n \n \n {\" \"}\n {data.SchDesc} - {data.plndesc}\n \n {data.CostValue}\n \n {data.CurrentValue}\n \n {data.GainValue}\n {parseFloat(data.units).toFixed(3)}\n {data.lastnav} \n \n ))\n ) : (\n \n \n \n No Investments\n \n \n \n )}\n \n )}\n {props.active !== INVESTMENTS && (\n \n {tableData.length ? (\n tableData.map((data, index) => (\n \n \n {\" \"}\n {`${data.schname}-${data.plnname}`}{\" \"}\n \n {data.accno}\n {data.sipdt}\n \n {data.sipstartdt}\n \n \n {data.sipenddt}{\" \"}\n \n \n {\" \"}\n {!!data.amt ? data.amt : 0}{\" \"}\n \n {data.Status} \n \n ))\n ) : (\n \n \n \n No Upcoming Sips\n \n \n \n )}\n \n )}\n
\n
\n );\n};\n\nconst cellStyleBase = {\n padding: \"20px 10px\",\n color: \"#2f3953\",\n fontSize: 15,\n fontFamily: \"Ubuntu-Regular\",\n};\n\nconst cellStyleRight = { ...cellStyleBase, textAlign: \"right\" };\nconst cellStyleLeft = { ...cellStyleBase, textAlign: \"left\" };\n\nconst cellStyleCenter = { ...cellStyleBase, textAlign: \"center\" };\n\nexport default connect(({ investor }) => {\n const { investments, upComingSipDetails } = investor;\n return { investments, upComingSipDetails };\n})(Investments);\n","import React, { PureComponent } from \"react\";\nimport { PieChart, Pie, Cell, Sector } from \"recharts\";\nimport { FormatCurrency } from \"../../home/currencyFormatter\";\n\nconst data = [\n { name: \"Group A\", value: 400 },\n { name: \"Group B\", value: 300 },\n { name: \"Group C\", value: 300 },\n { name: \"Group D\", value: 200 },\n];\nconst COLORS = [\"#FCC65D\",\"#35DFDF\", \"#196FB2\", \"#68be7f\"];\n\nconst renderActiveShape = (name) => (props) => {\n // const RADIAN = Math.PI / 180;\n const {\n cx,\n cy,\n // midAngle,\n innerRadius,\n outerRadius,\n startAngle,\n endAngle,\n fill,\n } = props;\n\n return (\n \n \n {name}\n \n \n \n );\n};\n\nexport default class PieDiagram extends PureComponent {\n state = {\n activeIndex: 0,\n values: [],\n };\n\n onPieEnter = (index) => {\n this.setState({\n activeIndex: index,\n });\n };\n currencyConverter = (value) => {\n if (Math.abs(Number(value)) >= 1.0e5) {\n return `${parseInt(Math.abs(Number(value)) / 1.0e5)} lakh`;\n } else if (Math.abs(Number(value)) >= 1.0e6) {\n return `${parseInt(Math.abs(Number(value)) / 1.0e6)} cr`;\n } else if (Math.abs(Number(value)) >= 1.0e3) {\n return `${parseInt(Math.abs(Number(value)) / 1.0e3)} thousand`;\n } else {\n return Math.abs(Number(value));\n }\n };\n\n render() {\n return (\n \n \n \n {data.map((entry, index) => (\n \n ))}\n \n \n
\n {!!this.props.data && !this.props.name ? (\n
\n {!!this.props.data\n ? this.props.data.map((item, index) => (\n \n \n \n {item.name\n .charAt(0)\n .toUpperCase()\n .concat(item.name.substring(1, item.name.length))}\n
\n
{item.value} %
\n
\n ))\n : \"\"}\n \n ) : (\n
\n {!!this.props.data\n ? this.props.data.map((item, index) => (\n \n \n \n \n {!!item && !!item.name && this.props.name === \"Fund\"\n ? `${item.name.split(\"MUTUAL FUND\")[0]} MF`\n : !!item && !!item.name && this.props.name !== \"Fund\"\n ? item.name.toLowerCase()\n : \"\"}\n
\n \n \n ))\n : \"\"}\n \n )}\n {!!this.props.data && !this.props.name ? (\n \"\"\n ) : (\n \n \n {this.props.symbol === \"%\" && !!this.props.data\n ? \"Percentage\"\n : !!this.props.data\n ? \"INR\"\n : \"\"}\n \n {!!this.props.data\n ? this.props.data.map((item, index) => (\n \n {this.props.symbol === \"%\" ? (\n `${Math.round(item.value)}${this.props.symbol}`\n ) : (\n \n )}\n \n ))\n : \"\"}\n \n )}\n {this.props.symbol === \"%\" && !!this.props.aumpieData ? (\n \n \n INR\n \n {this.props.data.map((item, index) => (\n \n \n \n ))}\n \n ) : (\n \"\"\n )}\n \n \n );\n }\n}\n\n// class CustomizedAxisTick extends Component {\n// render() {\n// const { x, y, stroke, payload } = this.props;\n\n// return (\n// \n// \n// {payload.value}\n// \n// \n// );\n// }\n// }\n","import React, { Component } from \"react\";\nimport { Loader_icon } from \"./appEssentials\";\n\nexport default class CustomLoader extends Component {\n render() {\n const { display } = this.props;\n return (\n
\n
\n
\n
\n
\n
\n \n
\n
\n );\n }\n}\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { connect } from \"react-redux\";\nimport { FormatCurrency } from \"../../home/currencyFormatter\";\nimport ExpandLess from \"@material-ui/icons/ExpandLess\";\nimport ExpandMore from \"@material-ui/icons/ExpandMore\";\nimport {\n getInvestorDetails,\n favouriteInvestor,\n updateFavouriteInvestor,\n getUpComingSips,\n getInvestors,\n clearingFirstTimeInvestorJourney,\n userPan,\n} from \"shared/store/actions\";\nimport {\n YES,\n TRUE,\n FALSE,\n INVESTMENTS,\n REQ_BY,\n UPCOMING_SIP,\n} from \"shared/store/types\";\nimport InvestmentTab from \"./investmentsTab\";\nimport Investments from \"./investments\";\nimport PieDiagram from \"../../home/dashboard/piechart\";\nimport { BUILD_URL } from \"../home\";\nimport CustomLoader from \"../../forms/customLoader\";\nimport { Debtbutton, DebtbuttonActive } from \"../../forms/button\";\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\nimport NavigateNextIcon from \"@material-ui/icons/NavigateNext\";\nimport { dashboardActive } from \"../../forms/appEssentials\";\nclass InvestorDetails extends Component {\n constructor(props) {\n super(props);\n this.state = {\n isLoading: true,\n noData: false,\n count: 3,\n active: INVESTMENTS,\n };\n }\n\n async componentDidMount() {\n const { location } = this.props;\n const { state } = location;\n const params = { PAN: state.PAN, Uid: this.props.userId, ReqBy: REQ_BY };\n const response = await this.props.getInvestorDetails(params);\n await this.props.clearingFirstTimeInvestorJourney();\n await this.props.userPan(state.PAN);\n if (response && response.error !== \"No Data\") {\n this.setState({ isLoading: false });\n } else if(response.error && response.error === \"No Data\") {\n this.setState({ isLoading: false, noData: true });\n }\n if (state.PAN) {\n const Params = {\n Pan: state.PAN,\n YearFlag: new Date().getFullYear(),\n invdistflag: \"A\",\n };\n await this.props.getUpComingSips(Params);\n }\n if (state.from === \"view history\") {\n this.setState({ active: UPCOMING_SIP });\n }\n }\n\n /**\n *\n * @param {string} pan\n * @returns {string} 'T' if investor is favourited else 'F'\n */\n findFavFlag = (pan) => {\n const { investors } = this.props;\n const fav = investors.find((_eachInvestor) => _eachInvestor.Pan === pan);\n return !!fav ? fav.Favorite : FALSE;\n };\n\n favourite = async () => {\n let { PAN: InvPan, invname: Name } = this.props.investorData;\n const FavFlag = this.findFavFlag(InvPan) === TRUE ? FALSE : TRUE;\n\n const params = { InvPan, FavFlag, Name, AgentCode: this.props.token };\n const response = await this.props.favouriteInvestor(params);\n if(response.error){\n alert(response.error)\n }\n if (response) {\n alert(response?.Dtinformation[0]?.Error_Message)\n this.props.updateFavouriteInvestor({ InvPan, FavFlag });\n } else if (!response) {\n this.setState({\n errorMessage: \"Already this pan ID member is added as a Favorite\",\n });\n }\n };\n\n changeActive = (active) => () => {\n this.setState({ active });\n };\n\n render() {\n const {\n investorData = {},\n communicationDetails = [],\n pieData,\n investments,\n upComingSipDetails,\n } = this.props;\n const detailsEmail = communicationDetails.find(\n (detail) => detail.PAN === investorData.PAN && !!detail.email\n );\n const detailsMobile = communicationDetails.find(\n (detail) => detail.PAN === investorData.PAN && !!detail.Mobile\n );\n\n const fatca = this.props.investors.find(\n (ele) =>\n !!investorData && !!investorData.PAN && ele.Pan === investorData.PAN\n );\n const { isLoading, noData } = this.state;\n const isFavourite = this.findFavFlag(investorData.PAN) === TRUE;\n\n return (\n
\n {!isLoading ? (\n \n {!noData ? (\n \n
\n {this.props.location?.state?.from === \"view history\" && (\n }\n aria-label=\"Breadcrumb\"\n style={{ margin: 20 }}\n >\n
\n \n this.props.history.push({\n pathname:\"/dashboard/SipSummaryTypes\",\n state: {\n active: this.props.location?.state?.active,\n },\n })}\n className=\"breadcrumbs-unselect-label\"\n style={{ cursor: \"pointer\" }}\n >\n Sip Summary\n \n
\n \n )}\n \n \n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n {investorData.invname}\n
\n \n {investorData.fav === TRUE ? (\n \n ) : (\n \n )}\n\n
\n
\n
\n\n
\n PAN: {investorData.PAN}\n
\n
\n
\n \n
\n \n \n KYC\n \n \n \n FATCA\n \n
\n \n \n\n
\n {!!detailsEmail && detailsEmail.email\n ? detailsEmail.email\n : \"\"}\n
\n \n \n \n
\n {!!detailsMobile && !!detailsMobile.Mobile\n ? detailsMobile.Mobile\n : \"\"}\n
\n \n
\n
\n
\n\n {!!this.state.errorMessage ? (\n \n {this.state.errorMessage}\n
\n ) : (\n \"\"\n )}\n \n\n \n
\n
\n
\n Cost\n
\n
\n {!!this.props.investorTotal &&\n !!this.props.investorTotal.CostValue ? (\n \n ) : (\n \"--NA--\"\n )}\n
\n
\n
\n
\n Investment Value\n
\n
\n ₹\n {!!this.props.investorTotal &&\n !!this.props.investorTotal.CurrentValue\n ? this.props.investorTotal.CurrentValue\n : \"--NA--\"}\n
\n
\n\n
\n
\n Overall Gain\n
\n
\n ₹\n {!!this.props.investorTotal &&\n !!this.props.investorTotal.GainVal\n ? this.props.investorTotal.GainVal\n : \"--NA--\"}\n \n
\n
\n\n
\n
\n Today's Gain\n
\n
\n {!!this.props.investorTotal &&\n !!this.props.investorTotal.todaygain\n ? this.props.investorTotal.todaygain\n : \"--NA--\"}\n (%)\n\n \n
\n
\n
\n \n \n this.props.history.push({\n pathname: \"/new-transaction/transction-types\",\n state: {\n investorData:\n investorData || this.props.user_pan,\n },\n })\n }\n display={\n !!investorData.PAN &&\n investorData.PAN.charAt(3).toUpperCase() === \"P\"\n ? \"block\"\n : \"none\"\n }\n buttontitle={\"Initiate Investment\"}\n width={150}\n />\n \n this.props.history.push({\n pathname: \"/mailBackRequest/investor\",\n state: {\n investorData: investorData,\n },\n })\n }\n buttontitle={\"Send Reports\"}\n width={150}\n />\n \n \n \n
\n
\n
\n Asset Allocation\n
\n\n \n
\n
\n \n \n \n \n
\n \n
\n {(upComingSipDetails.length > 3 &&\n this.state.active === UPCOMING_SIP) ||\n (this.state.active === INVESTMENTS &&\n investments.length > 3) ? (\n \n this.state.active === INVESTMENTS\n ? this.setState({\n count:\n parseFloat(this.state.count) === 3\n ? investments.length\n : 3,\n })\n : this.setState({\n count:\n parseFloat(this.state.count) === 3\n ? upComingSipDetails.length\n : 3,\n })\n }\n >\n ) : (\n
\n )}\n \n
\n \n ) : (\n
No Investor PAN found. Please submit investor PAN.
\n )}\n \n ) : (\n \n )}\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, investor, loading }) => {\n const { userId, token, communicationDetails, investorData, user_pan } =\n authReducer;\n const {\n fundAllocation,\n pieData,\n investments,\n investors,\n investorTotal,\n upComingSipDetails,\n } = investor;\n const { count } = loading;\n return {\n userId,\n investorData,\n fundAllocation,\n pieData,\n communicationDetails,\n token,\n investors,\n investorTotal,\n investments,\n upComingSipDetails,\n count,\n user_pan,\n };\n },\n {\n getInvestorDetails,\n favouriteInvestor,\n updateFavouriteInvestor,\n getUpComingSips,\n getInvestors,\n clearingFirstTimeInvestorJourney,\n userPan,\n }\n)(InvestorDetails);\n","export const validatePercentage = (val) => {\n if (+val > 100 || +val <= 0) {\n return +val > 100\n ? \"Percentage cannot be more than 100\"\n : \"Percentage should not be 0\";\n }\n};\n\nexport const checkIfMinor = (date) => {\n var today = new Date().getTime();\n var birthDate = new Date(date).getTime();\n const age = (today - birthDate) / 365 / 24 / 3600 / 1000;\n return age < 18;\n};\nexport const getFieldsFromMap = (\n type,\n Schema,\n noOfApplicants,\n customHandler\n) => {\n const fields = {};\n for (let i = 1; i < noOfApplicants + 1; i++) {\n for (let k in Schema) {\n const field = { ...Schema[k] };\n fields[`${type ? type + \"_\" : \"\"}${k}_${i}`] = field;\n\n customHandler && customHandler(field, i, k);\n }\n }\n return fields;\n};\n\nexport const getFieldList = (fieldMap) => {\n const fieldList = Object.keys(fieldMap).map((k) => {\n const field = fieldMap[k];\n field.key = k;\n return field;\n });\n\n return fieldList.filter((f) => !f.hidden);\n};\n\nexport const getConvertedFormValues = (formValues, allFields) => {\n const newFormValues = { ...formValues };\n for (let f in allFields) {\n if (f.hidden) {\n delete newFormValues[f.key];\n }\n }\n const conversionMap = {\n // # gets replaced with 1,2,3\n // @ gets replaced with '',2,3\n // ~ gets replaced with F,S,T\n pan: \"i_pangno@\",\n name: \"i_fname@\", // jholder1,jholder2\n email: \"i_email@\",\n gender: \"i_invgender@\",\n dob: \"i_dob@\", //jh1dob,jh2dob\n mobile: \"i_mobileno@\",\n category: \"i_category@\",\n status: \"\", //not needed\n kycCompleted: \"i_Ckyc#\",\n kyc_occupation: \"i_Occpn@\", //i_Soccpn, i_Toccpn\n kyc_annualIncome: \"i_income@\", //SAnnualIncome, TAnnualIncome\n kyc_birthCountry: \"~CountryofBirth\",\n kyc_nationality: \"~Nationality\",\n kyc_residentOfIndia: \"\",\n kyc_residency: \"~TaxResident\",\n kyc_foreignTaxId: \"~ForeignTaxId\",\n kyc_foreignTaxIdType: \"~ForeignTaxType\",\n countrycode: \"\",\n kyc_address: \"i_invadd#\",\n kyc_country: \"i_invcountry@\",\n kyc_state: \"i_invstate@\",\n kyc_city: \"i_invcity@\",\n kyc_pincode: \"i_invpin@\",\n kyc_politicallexposed: \"~PEP\",\n kyc_politicallyexposedrelative: \"~PREP\",\n\n nom_name: \"i_Nominee@\",\n nom_relationship: \"i_NomRelation@\",\n nom_guardian: \"i_@nomGuardian\",\n nom_dob: \"i_NomDOB@\",\n nom_gender: \"nom#gender\",\n nom_percentage: \"i_Nominee#percentage\",\n nom_email: \"nom#email\",\n nom_address: \"i_nomadd#1\",\n nom_country: \"i_nom@country\",\n nom_state: \"i_nomstate@\",\n nom_city: \"i_nomcity@\",\n nom_pincode: \"i_nompin@\",\n };\n\n const finalValues = {};\n\n for (let fkey in newFormValues) {\n const key = fkey.replace(/_\\d/g, \"\");\n const [num_part] = fkey.match(/_\\d/g) || [\"_1\"];\n const number = String(num_part).slice(1);\n\n const templateKey = conversionMap[key];\n\n if (!templateKey) {\n console.log({ key });\n continue;\n }\n\n const wildCard = [`@`, \"#\", \"~\"].find((t) => templateKey.includes(t));\n\n let finalNumber = number;\n\n if (wildCard === \"@\" && parseInt(number) === 1) {\n finalNumber = \"\";\n } else if (wildCard === `~`) {\n finalNumber = [\"F\", \"S\", \"T\"][number - 1];\n }\n const specialKeys = {\n name_2: \"i_jholder1\",\n name_3: \"i_jholder2\",\n dob_2: \"i_jh1dob\",\n dob_3: \"i_jh2dob\",\n kyc_occupation_2: \"i_Soccpn\",\n kyc_occupation_3: \"i_Toccpn\",\n kyc_annualIncome_2: \"SAnnualIncome\",\n kyc_annualIncome_3: \"TAnnualIncome\",\n nom_address_1: \"i_nomadd1\",\n };\n if (fkey in specialKeys) {\n finalValues[specialKeys[fkey]] = newFormValues[fkey];\n } else {\n const actualKey = templateKey.replace(wildCard, finalNumber);\n finalValues[actualKey] = newFormValues[fkey];\n }\n }\n\n return finalValues;\n};\n\nexport function $wait(time = 500) {\n return new Promise((res, rej) => {\n setTimeout(() => {\n res();\n }, time);\n });\n}\nexport const addOneMonthAndTwentyYears=(dateString,Year) =>{\n let [day, month, year] = dateString.split('/').map(Number);\n let date = new Date(year, month - 1, day);\n \n // Add one month\n let nextMonthDate = new Date(date);\n nextMonthDate.setMonth(date.getMonth() + 1);\n \n // Add twenty years\n let twentyYearsLaterDate = new Date(date); \n twentyYearsLaterDate.setFullYear(Year);\n \n // Format dates to dd/mm/yyyy\n let formatDate = date => {\n let d = String(date.getDate()).padStart(2, '0');\n let m = String(date.getMonth() + 1).padStart(2, '0'); // Month is zero-indexed\n let y = date.getFullYear();\n return `${d}/${m}/${y}`;\n };\n \n return {\n nextMonthDate: formatDate(nextMonthDate),\n twentyYearsLaterDate: formatDate(twentyYearsLaterDate)\n };\n \n}\nexport const addFifteenDays=(dateString)=> {\n// Parse the input date in dd/mm/yyyy format\nlet [day, month, year] = dateString.split('/').map(Number);\nlet date = new Date(year, month - 1, day);\n\n// Add 15 days\ndate.setDate(date.getDate() + 15);\n\n// Format date to dd/mm/yyyy\nlet formatDate = date => {\n let d = String(date.getDate()).padStart(2, '0');\n let m = String(date.getMonth() + 1).padStart(2, '0'); // Month is zero-indexed\n let y = date.getFullYear();\n return `${d}/${m}/${y}`;\n};\n\nreturn formatDate(date);\n}\nexport const convertDateFormat = (dateStr) => {\n if (!dateStr) return null; // Return null if dateStr is undefined or null\n const [month, day, year] = dateStr.split('/');\n if (!month || !day || !year) return null; // Return null if split parts are not valid\n return `${day}/${month}/${year}`;\n};","import React, { Component } from \"react\";\nimport Signbutton from \"../../forms/button\";\nimport { Paper } from \"@material-ui/core\";\nimport CustomizedDialogs from \"../customModal\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport { connect } from \"react-redux\";\nimport {\n confirmPurchase,\n redemptionConfirm,\n swpConfirm,\n submitPurchaseData,\n submitSTPCancellation,\n stpConfirm,\n saveSipData,\n submitSipCancellation,\n sipPauseDateCalculate,\n sipPauseEndDateCalculate,\n sipPauseValidator,\n finalSipPause,\n} from \"shared/store/actions\";\nimport {\n PAYMENT_TYPE,\n REDEMPTION,\n ALL,\n UNITS,\n U,\n PARTIAL,\n FALSE,\n SWP,\n STP,\n SIP,\n ADDITIONAL_PURCHASE,\n NEW,\n YES,\n SWITCH,\n NEWP,\n EXISTINGP\n} from \"shared/store/types\";\nimport moment from \"moment\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport { Input } from \"../../forms/input\";\nimport { NEW_TRANSACTION_URL } from \"./index\";\nimport CustomLoader from \"../../forms/customLoader\";\nimport { BUILD_URL } from \"../../forms/appEssentials\";\nimport { addFifteenDays } from \"./newInvestor/lib/utils\";\n\nclass NewPurchaseConfirm extends Component {\n constructor(props) {\n super(props);\n this.state = {\n open: false,\n disabled: false,\n stpRefNo: { value: \"\" },\n swpRefNo: { value: \"\" },\n redemption: { value: \"\" },\n nfoNew: { value: \"\" },\n switchRefNo: { value: \"\" },\n sipRefNo: { value: \"\" },\n sipCancellation: { value: \"\" },\n pause_installemnts: [],\n sip_pause_dates: [],\n selected_pause_date: { value: \"\" },\n selected_pause_installments: { value: \"\" },\n sip_pause_end_Data: \"\",\n sipPauseRefno: { value: \"\" },\n };\n }\n\n async componentDidMount() {\n const { location } = this.props;\n const { state } = location;\n\n if (!!state.type && state.type === \"Sip Pause\") {\n const pause_inst = new Array(state.pauseDetails.pause_inst).fill(1);\n this.setState({\n pause_installemnts: pause_inst,\n });\n const params = {\n ihno: state.pauseDetails.ihno,\n fund: state.pauseDetails.fund.trim(),\n // uid: this.props.userId,\n };\n const response = await this.props.sipPauseDateCalculate(params);\n if (\n !!response &&\n !!response.Dtinformation &&\n response.Dtinformation.length > 0\n ) {\n this.setState({\n sip_pause_dates: response.Dtinformation,\n });\n }\n }\n }\n\n closeModal = () => {\n this.setState({\n open: false,\n });\n this.props.history.replace(NEW_TRANSACTION_URL);\n };\n\n sipSubmit = () => {\n const { sipDetails } = this.props;\n const { sipType } = sipDetails;\n\n if (sipType.value === NEW || sipType.value === NEWP ||\n sipType.value === EXISTINGP) {\n this.confirmPurchase();\n } else {\n this.sipConfirmPurchase();\n }\n };\n\n sipConfirmPurchase = async () => {\n const { sipDetails } = this.props;\n this.setState({\n disabled: true,\n });\n let date = sipDetails.sip_start_date.value.split(\"/\").reverse();\n const new_start_date = new Date(\n new Date().setFullYear(date[0], Number(date[1]) - 1, date[2])\n ).toLocaleString(\"en-US\", {\n hour12: true,\n month: \"2-digit\",\n day: \"2-digit\",\n year: \"numeric\",\n });\n let end_date = sipDetails.sip_end_date.value.split(\"/\").reverse();\n\n let new_end_date = new Date(\n new Date().setFullYear(end_date[0], Number(end_date[1]) - 1, end_date[2])\n ).toLocaleString(\"en-US\", {\n hour12: true,\n month: \"2-digit\",\n day: \"2-digit\",\n year: \"numeric\",\n });\nconst isFreedom = sipDetails.transactionType?.value === \"Freedom\"\n const params = {\n i_euinDeclaration: YES,\n i_InvDistFlag: \"S\",\n Option:\n sipDetails.scheme.value.value.Opt ||\n sipDetails.scheme.value.value.fm_option,\n SubArn: sipDetails.subArnCode.value,\n i_PerpetialSIP: ALL,\n i_Amount: sipDetails.installmentAmount.value,\n i_frequency: sipDetails.investmentFrequency.value.FrequencyID,\n i_fund:\"176\",\n i_subbroker: sipDetails.subBrokerCode.value,\n i_SchemeCode:\n (sipDetails.scheme.value.value.fm_plan ||\n sipDetails.scheme.value.value.Pln) +\n (sipDetails.scheme.value.value.Sch ||\n sipDetails.scheme.value.value.fm_scheme),\n i_brokercode: sipDetails.arnCode.value,\n i_SIPday: sipDetails.sipDay.value.value,\n i_euinno:\n sipDetails.radioValue.value === \"no\"\n ? sipDetails.euinNo.value.value.split(\" \")[0]\n : \"\",\n i_id: \"1\",\n EntDt: moment(new Date()).format(\"MM/DD/YYYY\"),\n i_ModeofPayment: sipDetails.mode.value,\n i_EntBy: this.props.userId,\n i_folio: sipDetails.folio.value.value,\n i_SIPEndDate: new_end_date,\n i_SIPStartDate: new_start_date,\n i_NoofInstalment: sipDetails.installments.value,\n subtrtype: { Flexi: \"fsip\", Freedom: \"FreedomSIP\" }[sipDetails.transactionType?.value] || \"\",\n FlexiMaxAmount: sipDetails.transactionType?.value===\"Flexi\" ? sipDetails.flexiMaxInstallmentAmount.value : sipDetails.transactionType?.value===\"Freedom\"?sipDetails.swpAmount.value:0,\n Umrn: this.props.location?.state?.UMRN,\n Freedom_scheme: isFreedom ? sipDetails.swpScheme.value.value.Sch ||\n sipDetails.swpScheme.value.value.fm_scheme : \"\",\n Freedom_Plan:isFreedom ? sipDetails.swpScheme.value.value.Pln ||\n sipDetails.swpScheme.value.value.fm_plan : \"\",\n Freedom_option: isFreedom ? sipDetails.swpScheme.value.value.Opt ||\n sipDetails.swpScheme.value.value.fm_option : \"\",\n SWPStartdate: isFreedom ? new Date(sipDetails.swp_start_date.value.split(\"/\").reverse().join(\"/\")).toLocaleDateString(\"en-US\", {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric'\n }): \"\",\n SWPEnddate: isFreedom ? new Date(sipDetails.swp_end_date.value.split(\"/\").reverse().join(\"/\")).toLocaleDateString(\"en-US\", {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric'\n }) : \"\",\n AdvanceSwitchDate:isFreedom ? new Date(addFifteenDays(sipDetails.sip_end_date.value).split(\"/\").reverse().join(\"/\")).toLocaleDateString(\"en-US\", {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric'\n }):\"\"\n };\n const response = await this.props.saveSipData(params);\n\n if (!!response && !response.error) {\n this.setState({\n open: true,\n sipRefNo: {\n value: `${response.DtData[0].Scheme}${response.DtData[0].Pln}${response.DtData[0].Opt}${response.DtData[0].ihno}`,\n },\n disabled: false,\n });\n } else if (!!response.error) {\n alert(`${response.error}`)\n }\n\n this.setState({\n disabled: false,\n });\n };\n\n confirmPurchase = async () => {\n const { confirmationData } = this.props;\n this.setState({\n disabled: true,\n });\n const params = {\n paymenttype: PAYMENT_TYPE,\n Trtype: confirmationData.trtype,\n fund: \"176\",\n Refno: confirmationData.TRefno,\n ModuleName: \"Webile\",\n };\n const response = await this.props.confirmPurchase(params);\n\n if (!!response && !response.error) {\n this.setState({\n open: true,\n disabled: false,\n nfoNew: {\n value: !!response.DtData && !!response.DtData[0] ? `${response.DtData[0].dd_scheme.trim()}${response.DtData[0].dd_plan.trim()}${response.DtData[0].dd_option}${response.DtData[0].dd_refno}` : \"NA\",\n new_type:\n !!this.props.location && this.props.location.state\n ? this.props.location.state.type\n : \"\",\n },\n });\n } else if (!!response && !!response.error) {\n alert(`${response.error}`)\n }\n\n this.setState({\n disabled: false,\n });\n };\n\n handlesipPauseDateChange = (event) => {\n const { selected_pause_date } = this.state;\n if (\n !!selected_pause_date.value &&\n event.target.value &&\n selected_pause_date.value === event.target.value\n ) {\n return;\n } else {\n this.setState({\n selected_pause_date: { value: event.target.value },\n selected_pause_installments: { value: \"\" },\n sip_pause_end_Data: \"\",\n });\n }\n };\n handlePauseInstallments = async (event) => {\n const { selected_pause_installments } = this.state;\n if (!event.target.value) {\n this.setState({\n selected_pause_installments: { value: \"\" },\n sip_pause_end_Data: \"\",\n });\n } else if (\n !!event.target.value &&\n selected_pause_installments.value &&\n parseInt(selected_pause_installments.value) ===\n parseInt(event.target.value)\n ) {\n return;\n } else {\n this.setState({\n selected_pause_installments: { value: event.target.value },\n });\n const { location } = this.props;\n const { state } = location;\n let date = this.state.selected_pause_date.value.split(\"/\").reverse();\n const startDate = new Date(\n new Date().setFullYear(date[0], Number(date[1]) - 1, date[2])\n ).toLocaleString(\"en-US\", {\n hour12: true,\n day: \"numeric\",\n month: \"2-digit\",\n year: \"numeric\",\n });\n const params = {\n SrtDt: startDate,\n fund: state.pauseDetails.fund.trim(),\n count: event.target.value,\n uid: this.props.userId,\n };\n const response = await this.props.sipPauseEndDateCalculate(params);\n if (\n !!response &&\n !!response.Dtinformation &&\n response.Dtinformation[0].Error_Message === \"Success\" &&\n !!response.DtData &&\n !!response.DtData[0].enddt\n ) {\n this.setState({\n sip_pause_end_Data: response.DtData[0].enddt,\n });\n } else if (response.Dtinformation && response.Dtinformation[0]) {\n alert(`${response.Dtinformation[0].Error_Message}`);\n }\n }\n };\n\n confirmSwitch = async () => {\n const { state } = this.props.location;\n this.setState({\n disabled: true,\n });\n const { profileData } = this.props;\n\n const { investorData, token, userId } = this.props;\n const OTPMsg = Math.floor(100000 + Math.random() * 900000);\n const params = {\n PanNo: investorData.PAN,\n InvestorName: investorData.invname,\n i_RedFlg: state.switchType === \"PARTIAL\" ? \"P\" : \"F\",\n EuinValid: YES,\n i_entby: userId,\n trtype: \"S\",\n i_Tacno: state.scheme.Acno,\n Bankid: \"null~null\",\n i_Plan: state.scheme.Pln,\n i_Tplan: state.switchInScheme.fm_plan,\n Desci: \"Yes~S~null\",\n i_Toption: state.switchInScheme.fm_option,\n i_Acno: state.scheme.Acno,\n i_Fund: \"176\",\n i_UntAmtFlg: state.switchMode === UNITS ? U : ALL,\n i_oldihno: \"0\",\n ARNCode: token,\n Subbroker: state.subBrokerCode,\n EuinCode:\n !!state && !!state.euin && !!state.euin.value ? state.euin.value : \"\",\n i_Agent: !!profileData ? profileData.Distributor_Name : \"\",\n Otp: OTPMsg,\n i_Option: state.scheme.Opt,\n i_Userid: userId,\n i_Tscheme: state.switchInScheme.fm_scheme,\n i_Scheme: state.scheme.Sch,\n i_Tfund: state.switchInScheme.fm_fund,\n i_InvDistFlag: \"S\",\n i_UntAmtValue: state.amount,\n EUINFlag: YES,\n ModuleName: \"Webile\",\n };\n\n\n const response = await this.props.submitPurchaseData(params);\n if (!!response && !response.error) {\n this.setState({\n open: true,\n disabled: true,\n switchRefNo: { value: !!response.DtData && !!response.DtData[0] ? response.DtData[0].REFNO : \"\" },\n });\n } else if (!!response.error) {\n alert(`${response.error}`)\n this.props.history.push(\"/dashboard\")\n }\n this.setState({\n disabled: false,\n });\n };\n\n\n\n confirmStp = async () => {\n const { stpDetails } = this.props;\n const { token, userId } = this.props;\n this.setState({\n disabled: true,\n });\n\n const params = {\n Trtype: \"STP\",\n Stpday: !!stpDetails.sipDay ? stpDetails.sipDay.value : \"\",\n i_option: !!stpDetails.scheme ? stpDetails.scheme.value.value.Opt : \"\",\n Refno: \"0\",\n NoofTransfer: !!stpDetails.transfers ? stpDetails.transfers.value : \"\",\n Entby: userId,\n InvDistFlag: \"S\",\n Enddt: !!stpDetails.sipEndDate\n ? new Date(\n stpDetails.sipEndDate.value.split(\"/\").reverse().join(\"/\")\n ).toLocaleDateString(\"en-US\")\n : \"\",\n Euinvalid: \"Y\",\n Scheme: !!stpDetails.scheme ? stpDetails.scheme.value.value.Sch : \"\",\n Stdt: !!stpDetails.sipStartDate\n ? new Date(\n stpDetails.sipStartDate.value.split(\"/\").reverse().join(\"/\")\n ).toLocaleDateString(\"en-US\")\n : \"\",\n Tooption: !!stpDetails.switchInScheme\n ? stpDetails.switchInScheme.value.value.fm_option\n : \"\",\n Stpoption: !!stpDetails.swpOption\n ? stpDetails.swpOption.value.Description\n : \"\",\n Plan: !!stpDetails.scheme ? stpDetails.scheme.value.value.Pln : \"\",\n Trdate: moment(new Date()).format(\"MM/DD/YYYY\"),\n Freq:\n !!stpDetails.swpFrequency && !!stpDetails.swpFrequency.vale\n ? stpDetails.swpFrequency.vale\n : \"\",\n Batchno: \"0\",\n ToScheme: !!stpDetails.switchInScheme\n ? stpDetails.switchInScheme.value.value.fm_scheme\n : \"\",\n Distributor: token,\n Fund: !!stpDetails.scheme ? stpDetails.scheme.value.value.Fund : \"\",\n Amount: !!stpDetails.amount ? stpDetails.amount.value : \"\",\n Ihno: \"0\",\n Euin:\n !!stpDetails.euinNo &&\n !!stpDetails.euinNo.value &&\n !!stpDetails.euinNo.value.value\n ? stpDetails.euinNo.value.value\n : \"\",\n Acno: !!stpDetails.scheme ? stpDetails.scheme.value.value.Acno : \"\",\n Toplan: !!stpDetails.scheme\n ? stpDetails.switchInScheme.value.value.fm_plan\n : \"\",\n };\n const response = await this.props.stpConfirm(params);\n if (response) {\n this.setState({\n stpRefNo: { value: response.DtData[0].appno },\n open: true,\n disabled: false,\n });\n }\n this.setState({\n disabled: false,\n });\n };\n\n confirmSwp = async () => {\n const { state } = this.props.location;\n let sipStartDateReverse, startDate, sipEndDateReverse, EndDate;\n this.setState({\n disabled: true,\n });\n const { userId } = this.props;\n const {\n scheme,\n swpFrequency,\n sipEndDate,\n sipStartDate,\n amount,\n swpOption,\n withDrawals,\n } = state;\n\n if (!!sipStartDate) {\n sipStartDateReverse = sipStartDate.split(\"/\").reverse().join(\"/\");\n startDate = new Date(sipStartDateReverse).toLocaleDateString(\"en-US\");\n }\n\n if (!!sipEndDate) {\n sipEndDateReverse = sipEndDate.split(\"/\").reverse().join(\"/\");\n EndDate = new Date(sipEndDateReverse).toLocaleDateString(\"en-US\");\n }\n const params = {\n Trtype: \"SWP\",\n Withdrawaltype: swpOption.Description,\n Refno: \"0\",\n Errno: \"0\",\n Optn: scheme.Opt,\n Entby: userId,\n InvDistFlag: \"S\",\n Noofwithdrawals: withDrawals,\n Enddt: EndDate,\n Remarks: \"0\",\n Scheme: scheme.Sch,\n Stdt: startDate,\n Plan: scheme.Pln,\n Trdate: moment(new Date()).format(\"MM/DD/YYYY\"),\n Freq: swpFrequency.FrequencyID,\n Batchno: \"0\",\n Fund: scheme.Fund,\n Branch: \"0\",\n Amount: !!amount ? amount : \"\",\n Ihno: \"0\",\n Acno: scheme.Acno,\n };\n\n const response = await this.props.swpConfirm(params);\n\n if (response) {\n this.setState({\n open: true,\n swpRefNo: {\n value: `${scheme.Sch}${scheme.Pln}${scheme.Opt}${response.Table1[0].RefNo}`,\n },\n disabled: false,\n });\n }\n this.setState({\n disabled: false,\n });\n };\n\n confirmRedemption = async () => {\n const { state } = this.props.location;\n this.setState({\n disabled: true,\n });\n\n const { scheme, amount, redemptionMode, bank, redemptionType } = state;\n\n const { investorData, token, userId } = this.props;\n try {\n const params = {\n i_InvDistFlag: \"S\",\n i_Acno: scheme.Acno,\n i_Fund: scheme.Fund,\n i_Plan: scheme.Pln,\n i_Option: scheme.Opt,\n i_RedFlg: redemptionType === PARTIAL ? \"P\" : \"F\",\n i_Scheme: scheme.Sch,\n i_Userid: userId,\n i_UntAmtValue: amount,\n ARNCode: token,\n i_pangno: investorData.PAN,\n i_UntAmtFlg: redemptionMode === UNITS ? \"U\" : \"A\",\n i_oldihno: \"0\",\n i_multibankdet: `${bank.bnkname}-${bank.bnkacno}~~ ${bank.bnkacno}~~ ${bank.bnkactype}`,\n };\n\n const response = await this.props.redemptionConfirm(params);\n if (response && !response.error) {\n this.setState({\n open: true,\n redemption: { value: response.DtData[0].REFNO },\n });\n }\n if (response && !!response.error) {\n alert(`${response.error}`)\n }\n this.setState({\n disabled: false,\n });\n } catch (error) {\n alert(error)\n }\n };\n confirmSipcancellation = async () => {\n let reason, rejcode\n\n const { location, token, userId, investorData } = this.props;\n const { state } = location;\n const { pauseDetails, sipType } = state;\n this.setState({\n disabled: true,\n });\n\n let dsipstdt, Esipstdt, dsipEnddt, EsipEnddt, dtrDate, EsipTrDate;\n if (!!pauseDetails.fromdate) {\n dsipstdt = pauseDetails.fromdate.split(\"/\").reverse();\n Esipstdt = new Date(\n new Date().setFullYear(\n dsipstdt[0],\n Number(dsipstdt[1]) - 1,\n dsipstdt[2]\n )\n ).toLocaleString(\"en-US\", {\n hour12: true,\n day: \"numeric\",\n month: \"2-digit\",\n year: \"numeric\",\n });\n }\n\n if (!!pauseDetails.todate) {\n dsipEnddt = pauseDetails.todate.split(\"/\").reverse();\n EsipEnddt = new Date(\n new Date().setFullYear(\n dsipEnddt[0],\n Number(dsipEnddt[1]) - 1,\n dsipEnddt[2]\n )\n ).toLocaleString(\"en-US\", {\n hour12: true,\n day: \"numeric\",\n month: \"2-digit\",\n year: \"numeric\",\n });\n }\n if (!!pauseDetails.trdate) {\n dtrDate = pauseDetails.trdate.split(\"/\").reverse();\n EsipTrDate = new Date(\n new Date().setFullYear(dtrDate[0], Number(dtrDate[1]) - 1, dtrDate[2])\n ).toLocaleString(\"en-US\", {\n hour12: true,\n day: \"numeric\",\n month: \"2-digit\",\n year: \"numeric\",\n });\n }\n if (!!this.props.location.state.cancellationReason) {\n const rejectionreason = this.props.location.state.reasons.find((ele) => ele.RejReason === this.props.location.state.cancellationReason)\n if (rejectionreason) {\n reason = this.props.location.state.cancellationReason\n rejcode = rejectionreason.RejCode\n } else {\n reason = `Others-${this.props.location.state.cancellationReason}`\n rejcode = this.props.location.state.reasons.length\n }\n }\n\n const body =\n sipType !== \"SIP\"\n ? {\n subBrokerCode: \"\",\n ToOption: \"\",\n Scheme: pauseDetails.sch,\n ToPlan: pauseDetails.tpln,\n customfund: \"\",\n cycleihno: \"0\",\n appldt: \"\",\n branch: \"\",\n mobile: pauseDetails.mobile,\n cycledtpart: \"\",\n termdt: !!Esipstdt ? Esipstdt : \"\",\n todate: !!EsipEnddt ? EsipEnddt : \"\",\n trdate: !!EsipTrDate ? EsipTrDate : \"\",\n trtype: sipType,\n Toscheme: pauseDetails.tsch,\n subTrType: \"\",\n barcode: \"\",\n batchno: \"0\",\n disitributorid: this.props.token,\n amt: pauseDetails.amt,\n Optn: pauseDetails.opt,\n Plan: pauseDetails.pln,\n acno: pauseDetails.acno,\n dpid: \"\",\n fund: pauseDetails.fund.trim(),\n ihno: pauseDetails.ihno,\n Refno: pauseDetails.ihno,\n entby: userId,\n errno: \"0\",\n lname: pauseDetails.lname,\n rcpno: \"\",\n chqtype: \"\",\n cmlflag: \"\",\n clientid: \"\",\n remarks: \"\",\n allotmentFlag: \"\",\n invdistflag: \"S\",\n Frequency: pauseDetails.freq,\n }\n : {\n Trtype: sipType,\n Pan: investorData.PAN,\n uid: userId,\n Fund: pauseDetails.fund.trim(),\n Ihno: pauseDetails.ihno,\n Agent: token,\n folio: pauseDetails.acno,\n reason: reason,\n rejcode: rejcode\n };\n\n const response =\n sipType === \"SIP\"\n ? await this.props.submitSipCancellation(body)\n : await this.props.submitSTPCancellation(body);\n\n if (\n !!response &&\n !!response.Dtinformation &&\n !!response.Dtinformation[0] &&\n (!!response.Dtinformation[0].Error_Code ||\n !!response.Dtinformation[0].Error_code) &&\n (response.Dtinformation[0].Error_Code === \"0\" ||\n response.Dtinformation[0].Error_code === \"0\")\n ) {\n this.setState({\n open: true,\n disabled: false,\n sipCancellation: {\n value: response.DtData[0].ihno,\n errorMessage: response.Dtinformation[0].Error_Message,\n },\n });\n }\n\n this.setState({\n disabled: false,\n });\n };\n confirmSipPause = async () => {\n const {\n sip_pause_end_Data,\n selected_pause_installments,\n selected_pause_date,\n } = this.state;\n if (\n !!sip_pause_end_Data ||\n !!selected_pause_installments.value ||\n !!selected_pause_date.value\n ) {\n this.setState({\n disabled: true,\n });\n const { state } = this.props.location;\n const { pauseDetails } = state;\n\n const dpausesipstdt = selected_pause_date.value.split(\"/\").reverse();\n const Epausesipstdt = new Date(\n new Date().setFullYear(\n dpausesipstdt[0],\n Number(dpausesipstdt[1]) - 1,\n dpausesipstdt[2]\n )\n ).toLocaleString(\"en-US\", {\n hour12: true,\n day: \"numeric\",\n month: \"2-digit\",\n year: \"numeric\",\n });\n\n const dpausesipenddt = sip_pause_end_Data.split(\"/\").reverse();\n const Epausesipenddt = new Date(\n new Date().setFullYear(\n dpausesipenddt[0],\n Number(dpausesipenddt[1]) - 1,\n dpausesipenddt[2]\n )\n ).toLocaleString(\"en-US\", {\n hour12: true,\n day: \"numeric\",\n month: \"2-digit\",\n year: \"numeric\",\n });\n\n let dreportingdt = pauseDetails.trdate.split(\"/\").reverse();\n let Ereportingdt = new Date(\n new Date().setFullYear(\n dreportingdt[0],\n Number(dreportingdt[1]) - 1,\n dreportingdt[2]\n )\n ).toLocaleString(\"en-US\", {\n hour12: true,\n day: \"numeric\",\n month: \"2-digit\",\n year: \"numeric\",\n });\n\n const dsipstdt = pauseDetails.fromdate.split(\"/\").reverse();\n const Esipstdt = new Date(\n new Date().setFullYear(\n dsipstdt[0],\n Number(dsipstdt[1]) - 1,\n dsipstdt[2]\n )\n ).toLocaleString(\"en-US\", {\n hour12: true,\n day: \"numeric\",\n month: \"2-digit\",\n year: \"numeric\",\n });\n\n let dsipenddt = pauseDetails.todate.split(\"/\").reverse();\n let Esipenddt = new Date(\n new Date().setFullYear(\n dsipenddt[0],\n Number(dsipenddt[1]) - 1,\n dsipenddt[2]\n )\n ).toLocaleString(\"en-US\", {\n hour12: true,\n day: \"numeric\",\n month: \"2-digit\",\n year: \"numeric\",\n });\n\n const params = {\n pausesipstdt: Epausesipstdt,\n Scheme: pauseDetails.sch,\n pausesipenddt: Epausesipenddt,\n reportingdt: moment(new Date()).format(\"MM/DD/YYYY\"),\n amt: pauseDetails.amt,\n uid: this.props.userId,\n acno: pauseDetails.acno,\n freq: pauseDetails.freq,\n fund: pauseDetails.fund,\n plan: pauseDetails.pln,\n sipenddt: Esipenddt,\n pauseihno: \"0\",\n sipregihno: pauseDetails.ihno,\n sipstdt: Esipstdt,\n };\n const validateresponse = await this.props.sipPauseValidator(params);\n if (\n (!!validateresponse &&\n !!validateresponse.Table &&\n validateresponse.Table.length > 0 &&\n validateresponse.Table[0].Error_Message === \"Success\",\n validateresponse.Table[0].Error_Code === 0)\n ) {\n const params = {\n oldoption: pauseDetails.opt,\n oldscheme: pauseDetails.sch,\n cycleihno: pauseDetails.ihno,\n oldplan: pauseDetails.pln,\n mobile:\n pauseDetails.mobile ||\n this.props.investorData.invname ||\n this.props.Mobile,\n sipamt: pauseDetails.amt,\n termdt: Epausesipstdt,\n trdate: Ereportingdt,\n trtype: \"paus\",\n batchno: \"0\",\n disitributorid: this.props.token,\n amt: pauseDetails.amt,\n uid: this.props.userId,\n acno: pauseDetails.acno,\n fund: pauseDetails.fund,\n ihno: pauseDetails.ihno,\n entby: this.props.userId,\n lname: pauseDetails.lname || this.props.investorData.invname,\n refno: pauseDetails.ihno,\n sipenddt: Epausesipenddt,\n noofinst: selected_pause_installments.value,\n invdistflag: \"S\",\n sipfreq: pauseDetails.freq,\n sipstdt: Esipstdt,\n };\n\n const final = await this.props.finalSipPause(params);\n if (\n !!final &&\n !!final.Table &&\n final.Table[0].Error_Code === \"0\" &&\n final.Table[0].Error_Message === \"Success\"\n ) {\n this.setState({\n open: true,\n pause_installemnts: [],\n sip_pause_dates: [],\n selected_pause_date: { value: \"\" },\n selected_pause_installments: { value: \"\" },\n sip_pause_end_Data: \"\",\n sipPauseRefno: {\n value: final.Table1[0].refno,\n errorMessage: `You have initated the pause SIP Transaction successfully with reference number ${final.Table1[0].refno} , Investor will receive an email for approval`,\n },\n });\n }\n }\n } else {\n alert(\"please submit all details to confirm\");\n }\n\n this.setState({\n disabled: false,\n });\n };\n\n\n gotoTransactionTypes = () => {\n this.props.history.push({\n pathname: NEW_TRANSACTION_URL + \"/transction-types\"\n });\n }\n render() {\n const {\n confirmationData,\n location,\n investorData,\n sipDetails,\n stpDetails,\n } = this.props;\n const { state } = location;\n const {\n scheme,\n redemptionMode,\n redemptionType,\n amount,\n swpOption,\n swpFrequency,\n sipEndDate,\n pauseDetails,\n sipStartDate,\n sipDay,\n withDrawals,\n folioDetails,\n } = state;\n const {\n email = {},\n mobile = {},\n fund = {},\n folio = {},\n scheme: sipScheme = {},\n installments = {},\n swpAmount={},\n swpCategory={},\n swpScheme={},\n flexiMaxInstallmentAmount={},\n transactionType={},\n selectedKotm={},\n tenure={},\n investmentFrequency = {},\n sipDay: sip_day = {},\n sip_end_date = {},\n sip_start_date = {},\n swp_end_date = {},\n swp_start_date = {},\n arnCode = {},\n subArnCode = {},\n mode = {},\n euinNo = {},\n investmentAmount = {},\n installmentAmount = {},\n sipType = {},\n } = sipDetails;\n const Xemail = (this.props.communicationDetails || []).find(\n (detail) =>\n !!state.scheme &&\n !!state.Folio &&\n detail.Acno === state.Folio.value &&\n detail.PAN === investorData.PAN &&\n !!detail.email\n );\n const Xmobile = (this.props.communicationDetails || []).find(\n (detail) =>\n detail.PAN === investorData.PAN &&\n !!state.Folio &&\n !!state.scheme &&\n detail.Acno === state.Folio.value &&\n !!detail.Mobile\n );\n\n const Email = !!Xemail && !!Xemail.email ? Xemail.email : \"\";\n\n const Mobile = !!Xmobile && !!Xmobile.Mobile ? Xmobile.Mobile : \"\";\n console.log(\"sipDetails\", sipDetails)\n return (\n \n
{state.title}
\n \n {state.type != \"Sip Pause\" && state.type !== \"Sip cancellation\" && (\n \n )}\n {state.type === SWITCH ? (\n
\n \n \n
\n ) : (\n \"\"\n )}\n \n \n\n {(state.type === \"Sip Pause\" ||\n state.type === \"Sip Cancellation\") && (\n
\n \n \n\n \n
\n )}\n {state.type === SIP && (\n
\n \n \n \n\n \n\n \n \n {(mode.value===\"KOTM\"||mode.value===\"AOTM\") && (\n \n )}\n \n {(sipType.value === NEW || sipType.value === \"EXISTINGP\") && (\n \n )}\n \n {transactionType?.value === \"Flexi\" &&\n\n \n }\n {transactionType.value === \"Freedom\" &&\n
\n \n \n \n \n\n
\n }\n
\n )}\n {state.type === STP && (\n
\n \n \n \n \n \n
\n )}\n {state.type === SWP && (\n
\n \n \n \n {swpOption.Description === \"Fixed\" && (\n \n )}\n
\n )}\n {((state.type === \"NEW_PURCHASE\") || (sipType.value === NEW || sipType.value === NEWP)) && (\n \n )}\n\n {state.type != \"Sip cancellation\" && (\n \n )}\n {state.type == \"Sip Pause\" ||\n (state.type === \"Sip cancellation\" && (\n
\n \n \n\n \n {state.type === \"Sip cancellation\" && state.sipType === \"SIP\" && (\n \n )}\n\n
\n ))}\n\n {state.type !== SWP && state.type !== SIP && (\n
\n \n\n {state.type === \"Sip Pause\" && (\n
\n
\n (this.sipTypeField = ele)}\n // isError={sipType.isError}\n // errorMessage={sipType.errorMessage}\n >\n {this.state.sip_pause_dates.map((item, index) => (\n \n {item.pause_start_date}\n \n ))}\n \n
\n
\n (this.sipTypeField = ele)}\n // isError={sipType.isError}\n // errorMessage={sipType.errorMessage}\n >\n {this.state.pause_installemnts.map((item, index) => (\n \n {index + 1}\n \n ))}\n \n
\n {\n // this.setState({\n // showPassword: !this.state.showPassword,\n // });\n // }}\n // isShowError={password.isError}\n // inputref={(ele) => (this.passwordField = ele)}\n // onKeyPress={this.keyPress()}\n />\n
\n )}\n
\n )}\n
\n\n \n\n {(!!confirmationData.ID ||\n !!scheme ||\n !!sipDetails.sipType ||\n state.type === \"Sip cancellation\" ||\n state.type === \"Sip Pause\" ||\n !!stpDetails.scheme) && (\n
\n \n
\n )}\n\n \n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions, profileReducer }) => {\n const { profileData } = profileReducer;\n const {\n confirmationData,\n sipDetails = {},\n switchDetails = {},\n stpDetails = {},\n } = transactions;\n let { investorData, communicationDetails, token, userId } = authReducer;\n\n const Xmobile = (communicationDetails || []).find(\n (detail) => detail.PAN === investorData.PAN && !!detail.Mobile\n );\n const Xemail = (communicationDetails || []).find(\n (detail) => detail.PAN === investorData.PAN && !!detail.email\n );\n const Email = !!Xemail && !!Xemail.email ? Xemail.email : \"\";\n const Mobile = !!Xmobile && !!Xmobile.Mobile ? Xmobile.Mobile : \"\";\n\n investorData = { ...investorData, Email: Email, Mobile: Mobile };\n return {\n confirmationData,\n communicationDetails,\n investorData,\n token,\n profileData,\n userId,\n sipDetails,\n switchDetails,\n stpDetails,\n };\n },\n {\n confirmPurchase,\n redemptionConfirm,\n sipPauseDateCalculate,\n sipPauseEndDateCalculate,\n swpConfirm,\n submitSipCancellation,\n stpConfirm,\n saveSipData,\n submitSTPCancellation,\n submitPurchaseData,\n sipPauseValidator,\n finalSipPause,\n }\n)(NewPurchaseConfirm);\n\nexport class DetailsGroup extends Component {\n render() {\n const { reverse } = this.props;\n return (\n
\n
\n \n {this.props.mainLabel}\n
\n \n {this.props.subLabel}\n
\n \n
\n \n {this.props.mainLabel1}\n
\n \n {this.props.subLabel2}\n \n \n \n );\n }\n}\n\n// const investorData = { ...this.props.investorData, Email, Mobile };\n// const Xmobile = (communicationDetails.reverse() || []).find(\n// (detail) => (detail.PAN === investorData.PAN) && !!detail.Mobile\n// );\n// const Xemail = (communicationDetails.reverse() || []).find(\n// (detail) => detail.PAN === investorData.PAN && !!detail.email\n// );\n// const Email = !!Xemail && !!Xemail.email ? Xemail.email : \"\";\n// const Mobile = !!Xmobile && !!Xmobile.Mobile ? Xmobile.Mobile : \"\";\n\n","import React, { Component } from \"react\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport { Input } from \"../../forms/input\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport { connect } from \"react-redux\";\nimport {\n YES,\n EXISTING,\n NEW,\n REGULAR,\n PURCHASE,\n NO,\n ALL,\n ADDITIONAL_PURCHASE,\n} from \"shared/store/types\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport { Checkbox } from \"@material-ui/core\";\nimport Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControl from \"@material-ui/core/FormControl\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport {\n validateSubBroker,\n getAssetClasses,\n getOtherSchemes,\n submitPurchaseData,\n showPurchaseConfirmation,\n saveTransactionDetails\n} from \"shared/store/actions\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\nimport { NEW_TRANSACTION_URL } from \".\";\nimport { SundaramMutualFund } from \"./newPurchaseForm\";\nimport { INVESTOR_URL } from \"../investors\";\nclass AdditionalPurchase extends Component {\n constructor(props) {\n super(props);\n const { location } = this.props;\n const { state } = location;\n const { transaction } = state || {};\n this.state = {\n fund: { value: { value: \"176\" } },\n folios: [],\n folio: {\n value: !!transaction ? {\n label: transaction.acno,\n value: transaction.acno,\n } : \"\"\n },\n schemes: [],\n schemeType: EXISTING,\n combo: { flag: \"\", disclamier: \"\", label: \"\" },\n isCombo: false,\n euinNo: {\n value:\n !!transaction\n ? { label: transaction?.euincode, value: transaction?.euincode }\n : \"\",\n },\n radioValue: {\n value: !!transaction && !!transaction.euincode ? \"no\" : \"yes\",\n },\n arnCode: { value: this.props.token },\n subArnCode: { value: !!transaction ? transaction.Sub_ARN_code : \"\" },\n subBrokerCode: { value: !!transaction ? transaction.subbroker : \"\" },\n category: { value: !!transaction ? transaction.category : \"\" },\n scheme: {\n value: !!transaction\n ? {\n label: transaction.schemename,\n value: transaction.scheme_code,\n }\n : \"\",\n },\n bank: { value: \"\" },\n categories: [],\n banks: [],\n amount: { value: !!transaction ? transaction.amount : \"\" },\n showSmart: false,\n smart: { flag: \"yes\" },\n combo_purchase_enable: false,\n combo_purchase_flag: true,\n combo_disclaimer: { value: \"\" },\n combo_lable: { value: \"\" }\n };\n }\n async componentDidMount() {\n window.scrollTo({\n behavior: \"smooth\",\n top: 0\n })\n const { transactionDetails } = this.props;\n if (!!transactionDetails && (Object.keys(transactionDetails).length > 0)) {\n this.setState(transactionDetails);\n return;\n }\n this.getFolios();\n if (this.props?.location?.state?.transaction) {\n const { subArnCode, arnCode, folio } = this.state;\n const params = {\n Fund: \"176\",\n SubAgentCd: subArnCode.value ? `ARN-${subArnCode.value}` : \"-\",\n AgentCd: arnCode.value,\n };\n await this.props.validateSubBroker(params);\n \n const schemes = this.schemes(folio.value.value);\n const transaction = this.props.location.state.transaction;\n const findingScheme = schemes.find(({ Sch, Pln, Opt }) => `176~${Sch}~${Pln}~${Opt}` === transaction.scheme_code);\n \n this.setState({\n schemes,\n scheme: { value: { label: transaction.schemename, value: findingScheme } }\n });\n }\n \n\n }\n\n getFolios = () => {\n const fund = \"176\";\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (curr.pFlag === YES && curr.Fund.trim() === fund) {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n\n this.setState({\n ...this.state,\n fund: { value: { value: \"176\" } },\n folios: Array.from(new Set(folios)),\n });\n this.validateBrokerCode(fund)();\n };\n\n validateBrokerCode = (fund) => async () => {\n const { subArnCode, arnCode } = this.state;\n if (\n !!this.state.subArnCode.value &&\n this.state.subArnCode.value === this.state.arnCode.value.split(\"-\")[1]\n ) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: \"ARN and Sub ARN Code should not be the same\",\n },\n });\n return;\n }\n const params = {\n Fund: \"176\",\n SubAgentCd: !!subArnCode.value ? `ARN-${subArnCode.value}` : \"-\",\n AgentCd: arnCode.value,\n };\n const response = await this.props.validateSubBroker(params);\n\n if (!response) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `Please enter a valid Sub ARN Code`,\n },\n });\n }\n };\n\n handleFolioChange = (value) => {\n if (!value) {\n this.setState({\n folio: { value: \"\" },\n schemes: [],\n schemeType: EXISTING,\n banks: [],\n scheme: { value: \"\" },\n // bank: { value: \"\" },\n subArnCode: { value: \"\" },\n subBrokerCode: { value: \"\" },\n euinNo: { value: \"\" },\n category: { value: \"\" },\n radioValue: { value: \"no\" },\n amount: { value: \"\" },\n showSmart: false,\n });\n return;\n } else if (value.value === this.state.folio.value.value) {\n return;\n } else {\n const folio = value.value;\n const schemes = this.schemes(folio);\n // const banks = this.props.bankDetails.filter(\n // (item) => item.foliono === folio\n // );\n this.setState({\n folio: { value },\n schemes,\n schemeType: EXISTING,\n // banks,\n showSmart: false,\n // bank: { value: \"\" },\n });\n }\n };\n\n changeEuin = (value) => {\n this.setState({\n euinNo: { value },\n });\n };\n\n changeValue = (label) => (event) => {\n if (label === \"amount\" && event.target.value.length <= 10) {\n this.setState({\n [label]: { value: event.target.value.replace(/^0+/, \"\") },\n });\n } else if (\n (label === \"subArnCode\" || label === \"subBrokerCode\") &&\n event.target.value.length <= 20\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (label === \"radioValue\" && event.target.value === \"no\") {\n if (!this.state.euinNo.value) {\n this.setState({\n radioValue: { value: event.target.value },\n });\n } else {\n this.setState({\n [label]: { value: event.target.value },\n euinNo: { value: \"\" },\n });\n }\n }\n else if (\n label !== \"amount\" &&\n label !== \"subArnCode\" &&\n label !== \"subBrokerCode\" &&\n label === \"radioValue\" &&\n event.target.value !== \"no\"\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n }\n };\n\n getAssetClasses = async () => {\n const params = {\n Fund: \"176\",\n Folio: this.state.folio.value.value,\n };\n const assetClasses = await this.props.getAssetClasses(params);\n if (assetClasses) {\n this.setState({\n categories: assetClasses.DtData,\n });\n }\n };\n\n getOtherSchemes = async (value) => {\n const params = {\n schtype: REGULAR,\n category: value,\n acno: this.state.folio.value.value,\n fundCode: \"176\",\n trantype: PURCHASE,\n };\n const otherSchemes = await this.props.getOtherSchemes(params);\n if (otherSchemes) {\n this.setState({\n schemes: otherSchemes.DtData,\n });\n }\n };\n\n schemes = (folio) => {\n return this.props.fundList.reduce((prev, curr) => {\n if (\n curr.pSchFlg === YES &&\n curr.Fund.trim() === \"176\" &&\n curr.Acno === folio\n ) {\n return [...prev, curr];\n }\n return prev;\n }, []);\n };\n\n handleCategoryChange = (event) => {\n if (event.target.value) {\n this.getOtherSchemes(event.target.value);\n this.setState({\n category: { value: event.target.value },\n scheme: { value: \"\" },\n showSmart: false,\n });\n } else {\n this.setState({\n category: { value: \"\" },\n scheme: { value: \"\" },\n showSmart: false,\n });\n }\n };\n\n showError = (label) => (event) => {\n const {\n [label]: { value },\n } = this.state;\n\n\n // if (label === \"amount\" && this.state.fund.value.value === \"103\") {\n // const { amount, scheme, schemeType } = this.state;\n // let SmartSchemes = [\"103~LA~RD~R\", \"103~LA~RD~D\", \"103~LA~RG~G\"];\n\n // let constructScheme;\n // if (schemeType === EXISTING) {\n // const { Fund, Sch, Pln, Opt } = scheme.value.value;\n // constructScheme = `${Fund}~${Sch}~${Pln}~${Opt}`;\n // } else {\n // const { fm_fund, fm_scheme, fm_plan, fm_option } = scheme.value.value;\n // constructScheme = `${fm_fund}~${fm_scheme}~${fm_plan}~${fm_option}`;\n // }\n\n // if (\n // !!SmartSchemes.includes(constructScheme) &&\n // parseFloat(amount.value) >= 25000\n // ) {\n // this.setState({\n // showSmart: true,\n // smart: { flag: \"yes\" },\n // });\n // } else if (\n // !!SmartSchemes.includes(constructScheme) &&\n // (!amount.value || (!!amount.value && parseFloat(amount.value) <= 25000))\n // ) {\n // this.setState({\n // showSmart: false,\n // smart: { flag: \"no\" },\n // });\n // }\n // } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n // }\n };\n\n changeSchemeType = (value) => () => {\n if (value === this.state.schemeType) {\n return;\n }\n if (value === EXISTING) {\n const schemes = this.schemes(this.state.folio.value.value);\n this.setState({\n schemeType: value,\n schemes,\n category: { value: \"\" },\n scheme: { value: \"\" },\n amount: { value: \"\" },\n showSmart: false,\n });\n } else {\n this.setState({\n schemeType: value,\n scheme: { value: \"\" },\n category: { value: \"\" },\n amount: { value: \"\" },\n showSmart: false,\n });\n if (!!this.state.fund.value && !!this.state.folio.value) {\n this.getAssetClasses();\n this.getOtherSchemes();\n }\n }\n };\n\n handleSchemeChange = (value) => {\n if (!value) {\n this.setState({\n scheme: { value: \"\" },\n\n scheme: { value: \"\" },\n // bank: { value: \"\" },\n subArnCode: { value: \"\" },\n subBrokerCode: { value: \"\" },\n euinNo: { value: \"\" },\n\n radioValue: { value: \"no\" },\n amount: { value: \"\" },\n showSmart: false,\n });\n return;\n } else if (\n !!value &&\n !!this.state.scheme.value &&\n value.value === this.state.scheme.value.value\n ) {\n return;\n } else {\n if (value.value.combo_flag === \"Y\") {\n this.setState({\n combo_purchase_enable: true,\n combo_purchase_flag: true,\n combo_disclaimer: { value: value.value.combo_disclaimer },\n combo_lable: { value: value.value.combo_lable }\n })\n }\n else{\n this.setState({\n combo_purchase_enable: false,\n combo_purchase_flag: true,\n combo_disclaimer: { value: \"\"},\n combo_lable: { value: \"\" }\n })\n }\n const scheme = value.value;\n const checkCombo =\n !!scheme && !!scheme.combo_flag && scheme.combo_flag === \"Y\";\n this.setState({\n scheme: { value },\n minAmount: scheme.MinAmt || scheme.fm_newpur,\n amount: { value: \"\" },\n isCombo: !!checkCombo ? true : false,\n combo: {\n flag: !!checkCombo ? \"Y\" : \"N\",\n disclamier: scheme.combo_disclaimer,\n label: scheme.combo_lable,\n },\n // bank: { value: \"\" },\n subArnCode: { value: \"\" },\n subBrokerCode: { value: \"\" },\n euinNo: { value: \"\" },\n showSmart: false,\n radioValue: { value: \"no\" },\n });\n }\n };\n\n changeSmart = (event) => {\n this.setState({\n smart: { flag: event.target.value },\n });\n };\n\n submit = async () => {\n const {\n funds,\n categories,\n smart,\n showSmart,\n schemes,\n folios,\n banks,\n arnCode,\n subArnCode,\n subBrokerCode,\n radioValue,\n euinNo,\n minAmount,\n schemeType,\n category,\n bank,\n isCombo,\n combo,\n fund,\n combo_purchase_enable,\n combo_purchase_flag,\n combo_disclaimer,\n combo_lable,\n ...others\n } = this.state;\n const keys = Object.keys(others);\n\n if (this.state.schemeType === NEW && this.state.category.value === \"\") {\n this.setState({\n category: {\n value: \"\",\n isError: true,\n errorMessage: \"Category is mandatory*\",\n },\n });\n }\n if (\n this.state.euinNo.value === \"\" &&\n this.state.radioValue.value === \"no\"\n ) {\n this.setState({\n euinNo: {\n value: \"\",\n isError: true,\n },\n });\n }\n const findError = keys.every((key) => !!others[key].value);\n const arn = this.state.arnCode.value.split(\"-\");\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage: `${key} is mandatory*`,\n },\n });\n });\n const firstErroredKey = keys.find((key) => !others[key].value);\n switch (firstErroredKey) {\n // case \"fund\": {\n // this.fundField.focus();\n // break;\n // }\n case \"folio\": {\n this.folioField.focus();\n break;\n }\n case \"scheme\": {\n this.schemeField.focus();\n break;\n }\n case \"amount\": {\n this.amountField.focus();\n break;\n }\n // case \"bank\": {\n // this.bankField.focus();\n // break;\n // }\n }\n } else if (schemeType === NEW && !category.value) {\n this.setState({\n category: { ...category, isError: true },\n });\n this.categoryField.focus();\n return;\n } else if (radioValue.value === \"no\" && !euinNo.value) {\n this.setState({\n euinNo: { ...euinNo, isError: true },\n });\n this.euinField.focus();\n return;\n } else if (\n !!others.amount.value &&\n parseFloat(minAmount) > parseFloat(others.amount.value)\n ) {\n this.setState({\n amount: {\n ...others[\"amount\"],\n isError: true,\n errorMessage: `Minimum amount is ${minAmount} (₹)`,\n },\n });\n this.amountField.focus();\n return;\n } else if (arn[1] === this.state.subArnCode.value) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `and ARN code should not match`,\n },\n });\n } else {\n if (!this.state.combo_purchase_flag && !!this.state.combo_purchase_enable) {\n if (window.confirm(\"You have opted to do a Purchase cum Switch. Do you want to proceed?\")) {\n } else {\n return;\n }\n }\n const { communicationDetails, investorData } = this.props;\n const Xmobile = communicationDetails.find(\n (detail) =>\n detail.Fund === this.state.fund.value.value &&\n detail.Acno === this.state.folio.value.value &&\n detail.PAN === investorData.PAN &&\n !!detail.Mobile\n );\n const Xemail = communicationDetails.find(\n (detail) =>\n detail.Fund === this.state.fund.value.value &&\n detail.Acno === this.state.folio.value.value &&\n detail.PAN === investorData.PAN &&\n !!detail.email\n );\n\n const Email = !!Xemail && !!Xemail.email ? Xemail.email : \"\";\n const Mobile = !!Xmobile && !!Xmobile.Mobile ? Xmobile.Mobile : \"\";\n const params = {\n InvestorName: investorData.invname,\n i_entby: this.props.userId,\n trtype: PURCHASE,\n Desci: \"Yes~S~\",\n SubbrokerArn: !!this.state.subArnCode.value\n ? `ARN-${subArnCode.value}`\n : \"\",\n ARNCode: this.state.arnCode.value,\n EuinCode:\n this.state.radioValue.value === \"no\"\n ? this.state.euinNo.value.value\n : \"\",\n i_Userid: this.props.userId,\n Mobile: Mobile,\n PanNo: investorData.PAN,\n Email: Email,\n i_Acno: this.state.folio.value.value,\n\n Subbroker: this.state.subBrokerCode.value,\n i_Fund: \"176\",\n i_UntAmtValue: this.state.amount.value,\n EUINFlag: this.state.radioValue.value === \"no\" ? NO : YES,\n EuinValid: this.state.radioValue.value === \"no\" ? NO : YES,\n // Bankid: `${this.state.bank.value.bnkcode}~${this.state.bank.value.bnkactype}~${this.state.bank.value.bnkacno}`,\n i_Scheme:\n this.state.scheme.value.value.Sch ||\n this.state.scheme.value.value.fm_scheme,\n i_Plan:\n this.state.scheme.value.value.Pln ||\n this.state.scheme.value.value.fm_plan,\n i_Option:\n this.state.scheme.value.value.Opt ||\n this.state.scheme.value.value.fm_option,\n i_oldihno: \"0\",\n i_InvDistFlag: \"S\",\n ModuleName: \"Webile\",\n comboswitch:!this.state.combo_purchase_flag===true?\"Y\":\"N\"\n };\n console.log(\"params\",params)\n\n const response = await this.props.submitPurchaseData(params);\n if (response) {\n const {\n DtData: [purchaseData],\n } = response;\n const confirmationParams = {\n Trtype: PURCHASE,\n fund: \"176\",\n Refno: purchaseData.refno,\n ModuleName: \"Webile\",\n };\n const confirmationResponse = await this.props.showPurchaseConfirmation(\n confirmationParams\n );\n\n if (!!confirmationResponse) {\n this.props.saveTransactionDetails(this.state);\n this.props.history.push({\n pathname:\n INVESTOR_URL +\n \"/additional-purchase/digital/transact/confirm\",\n state: {\n title: this.state.combo_purchase_flag ?\"ADDITIONAL PURCHASE SUMMARY\":\"ADDITIONAL PURCHASE SUMMARY(Purchase cum Switch)\",\n type: ADDITIONAL_PURCHASE,\n scheme: { Fund: this.state.fund.value.value },\n ARNCode: this.state.arnCode.value.split(\"-\")[1],\n Folio: this.state.folio.value,\n folio: this.state.folio.value,\n methodType: this.state.schemeType,\n },\n });\n }\n }\n }\n };\n\n ComboChange = () => {\n this.setState({\n isCombo: !this.state.isCombo,\n });\n };\n ComboFlagChange = (value) => {\n this.setState({\n combo_purchase_flag: !this.state.combo_purchase_flag\n })\n }\n\n render() {\n const {\n fund,\n funds = [],\n folio,\n folios = [],\n schemeType,\n schemes = [],\n scheme,\n radioValue,\n arnCode,\n subArnCode,\n subBrokerCode,\n euinNo,\n categories,\n category,\n combo,\n isCombo,\n // bank,\n banks,\n amount,\n smart,\n showSmart,\n } = this.state;\n const { euinList } = this.props;\n return (\n
\n
Additional Purchase
\n {/*
\n
AMC
\n \n
*/}\n
\n
Folio
\n ({\n label: item,\n value: item,\n }))}\n value={folio.value}\n placeholder=\"Select Folio\"\n handleChange={this.handleFolioChange}\n inputRef={(ele) => (this.folioField = ele)}\n disabled={!fund.value}\n isError={folio.isError}\n errorMessage={folio.errorMessage}\n />\n
\n
Select Scheme Type
\n
\n \n \n
\n {schemeType === NEW && (\n
\n (this.categoryField = ele)}\n isError={category.isError}\n errorMessage={category.errorMessage}\n >\n {categories.map((item, index) => (\n \n {item.CatDesc}\n \n ))}\n \n
\n )}\n
\n
Scheme
\n ({\n value: item,\n label: item.PlnDesc\n ? `${item.SchDesc1} - ${item.PlnDesc} - ${item.OptDesc}`\n : item.fm_schdesc,\n }))}\n value={scheme.value}\n placeholder=\"Select Scheme\"\n handleChange={this.handleSchemeChange}\n disabled={!folio.value}\n inputRef={(ele) => (this.schemeField = ele)}\n isError={scheme.isError}\n errorMessage={scheme.errorMessage}\n />\n
\n
\n \n
\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n type=\"number\"\n value={subArnCode.value}\n isShowError={subArnCode.isError}\n errorMessage={subArnCode.errorMessage}\n onBlur={this.validateBrokerCode(\n fund.value ? fund.value.value.Fund : \"\"\n )}\n onChange={this.changeValue(\"subArnCode\")}\n inputref={(ele) => (this.subArnField = ele)}\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n />\n
\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n value={subBrokerCode.value}\n onChange={this.changeValue(\"subBrokerCode\")}\n inputref={(ele) => (this.subBrokerField = ele)}\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n />\n
\n
\n
EUIN
\n \n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
YES
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
NO
\n
\n \n
\n
\n {radioValue.value === \"no\" ? (\n
\n ({\n value: item.abm_agent,\n label: item.abm_agent,\n }))}\n value={euinNo.value}\n placeholder=\"Select EUIN\"\n handleChange={this.changeEuin}\n disabled={!euinList.length}\n inputRef={(ele) => (this.euinField = ele)}\n isError={euinNo.isError}\n />\n
\n ) : (\n
\n I/We hereby confirm that the EUIN box has been intentionally left\n the blank by me/us as this is an 'execution-only' transaction\n without any interaction or advice by any personnel of the above\n distributor or notwithstanding the advice of in-appropriateness,if\n any provided by any personnel of the distributor and the distributor\n has not charged any advisory fees on this transaction\n
\n )}\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n onBlur={this.showError(\"amount\")}\n onChange={this.changeValue(\"amount\")}\n inputref={(ele) => (this.amountField = ele)}\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n isShowError={amount.isError}\n errorMessage={amount.errorMessage}\n />\n
\n {/* {!!showSmart && (\n
\n \n Your investor is eligible for a SMART facility\n
\n\n \n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
YES
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
NO
\n
\n \n
\n
\n )} */}\n {/* {combo.flag === \"Y\" && (\n
\n \n \n {combo.label}\n
\n \n )}\n {combo.flag === \"Y\" && (\n \n {combo.disclamier}\n \n )} */}\n {/* (this.bankField = ele)}\n isError={bank.isError}\n errorMessage={bank.errorMessage}\n >\n {banks.map((item, index) => (\n \n {item.bnkname} - {item.bnkacno}\n \n ))}\n */}\n {this.state.combo_purchase_enable &&\n
\n
\n {this.state.combo_lable.value}\n
\n
{this.state.combo_disclaimer.value}
\n
\n }\n
\n \n
\n\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions }) => {\n const {\n fundList,\n token,\n userId,\n bankDetails,\n investorData,\n communicationDetails,\n } = authReducer;\n const { euinList,transactionDetails } = transactions;\n return {\n fundList,\n token,\n userId,\n euinList,\n bankDetails,\n investorData,\n communicationDetails,\n transactionDetails\n };\n },\n {\n validateSubBroker,\n getAssetClasses,\n getOtherSchemes,\n submitPurchaseData,\n showPurchaseConfirmation,\n saveTransactionDetails\n }\n)(AdditionalPurchase);\n","import React, { Component } from \"react\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport { Input } from \"../../forms/input\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport { connect } from \"react-redux\";\nimport {\n YES,\n PARTIAL,\n FULL,\n UNITS,\n AMOUNT,\n PURCHASE,\n REDEMPTION,\n} from \"shared/store/types\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport {\n getBankDetails,\n getRedemptionPaymentDetails,\n saveTransactionDetails,\n} from \"shared/store/actions/transactions\";\nimport moment from \"moment\";\n\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\n\nimport { INVESTOR_URL } from \"../investors\";\n\nclass Redemption extends Component {\n constructor(props) {\n super(props);\n const { location } = this.props;\n const { state } = location;\n const { transaction } = state || {};\n this.state = {\n // funds,\n fund: { value: { value: \"176\" } },\n folios: [],\n folio: {\n value: !!transaction\n ? {\n label: transaction.acno,\n value: transaction.acno,\n }\n : \"\",\n },\n schemes: [],\n scheme: {\n value: !!transaction\n ? {\n label: transaction.schemename,\n value: transaction.scheme_code,\n }\n : \"\",\n },\n bank: { value: \"\", errorMessage: \"\" },\n amount: {\n value: !!transaction\n ? !!transaction.amount\n ? transaction.amount\n : transaction.units\n : \"\",\n },\n redemptionType: !!transaction\n ? transaction.sip_tran_trtype === \"FUL\"\n ? FULL\n : PARTIAL\n : PARTIAL,\n redemptionMode: !!transaction\n ? !!transaction.amount\n ? AMOUNT\n : UNITS\n : UNITS,\n banks: [],\n };\n }\n\n handleFundChange = (value) => {\n const fund = !!value ? value.value : \"\";\n if (!value) {\n this.setState({\n fund: { value: \"\" },\n folios: [],\n scheme: { value: \"\" },\n folio: { value: \"\" },\n redemptionType: PARTIAL,\n redemptionMode: UNITS,\n amount: { value: \"\" },\n });\n return;\n } else if (value.value === this.state.fund.value.value) {\n return;\n } else {\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (curr.rSchFlg === YES && curr.Fund === fund) {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n this.setState({\n fund: { value },\n folios: Array.from(new Set(folios)),\n scheme: { value: \"\" },\n folio: { value: \"\" },\n redemptionType: PARTIAL,\n redemptionMode: UNITS,\n });\n }\n };\n\n async componentDidMount() {\n window.scrollTo({\n behavior: \"smooth\",\n top: 0,\n });\n const { transactionDetails } = this.props;\n if (!!transactionDetails && (Object.keys(transactionDetails).length > 0)) {\n this.setState(transactionDetails);\n return;\n }\n this.getfolios();\n if (this.props?.location?.state?.transaction) {\n let schemes = this.schemes(this.props.location.state.transaction.acno);\n schemes = schemes.filter((scheme) => scheme.BalUnits !== 0);\n const findingScheme = schemes.find((ele)=>(`176~${ele.Sch}~${ele.Pln}~${ele.Opt}`=== this.props.location.state.transaction.scheme_code))\n this.setState({\n schemes,\n scheme:{value:{label:this.props.location.state.transaction.schemename,value:findingScheme}}\n });\n const params = {\n Acno: this.props.location.state.transaction.acno,\n Trtype: \"\",\n Fund: \"176\",\n };\n schemes = schemes.filter((scheme) => scheme.BalUnits !== 0);\n const response = await this.props.getBankDetails(params);\n\n if (response) {\n const banks = response.Table1;\n this.setState({\n banks,\n });\n }\n }\n }\n\n getfolios = () => {\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (curr.rSchFlg === YES && curr.Fund.trim() === \"176\") {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n this.setState({\n ...this.state,\n fund: { value: { value: \"176\" } },\n folios: Array.from(new Set(folios)),\n // scheme: { value: \"\" },\n // folio: { value: \"\" },\n // redemptionType: PARTIAL,\n // redemptionMode: UNITS,\n });\n };\n\n handleFolioChange = async (value) => {\n const folio = !!value ? value.value : \"\";\n if (!folio) {\n this.setState({\n folio: { value: \"\" },\n scheme: { value: \"\" },\n schemes: [],\n banks: [],\n bank: { value: \"\" },\n redemptionType: PARTIAL,\n redemptionMode: UNITS,\n amount: { value: \"\" },\n });\n } else if (value.value === this.state.folio.value) {\n return;\n } else {\n const params = {\n Acno: folio,\n Trtype: \"\",\n Fund: \"176\",\n };\n let schemes = this.schemes(folio);\n schemes = schemes.filter((scheme) => scheme.BalUnits !== 0);\n const response = await this.props.getBankDetails(params);\n\n if (response) {\n const banks = response.Table1;\n this.setState({\n folio: {\n value,\n isError: !schemes.length,\n errorMessage: !schemes.length\n ? \"Redemption in zero balance folios is not allowed\"\n : \"\",\n },\n scheme: { value: \"\" },\n schemes,\n banks,\n bank: { value: \"\" },\n redemptionType: PARTIAL,\n redemptionMode: UNITS,\n });\n }\n }\n };\n\n schemes = (folio) => {\n return this.props.fundList.reduce((prev, curr) => {\n if (\n curr.rSchFlg === YES &&\n curr.Fund === this.state.fund.value.value &&\n curr.Acno === folio &&\n !!curr.BalUnits\n ) {\n return [...prev, curr];\n }\n return prev;\n }, []);\n };\n handleSchemeChange = (value) => {\n const scheme = !!value ? value.value : \"\";\n if (!scheme) {\n this.setState({\n scheme: { value: \"\" },\n minAmount: \"\",\n amount: { value: \"\" },\n redemptionType: PARTIAL,\n redemptionMode: UNITS,\n });\n } else if (value.value === this.state.scheme.value.value) {\n return;\n } else {\n this.setState({\n scheme: { value },\n minAmount: !!scheme ? scheme.RedMinAmt || scheme.fm_newpur : \"\",\n amount: { value: \"\" },\n redemptionType: PARTIAL,\n redemptionMode: UNITS,\n });\n }\n };\n\n showError = (label) => () => {\n const {\n [label]: { value },\n } = this.state;\n\n if (label === \"amount\") {\n if (!!this.state.scheme && !!this.state.scheme.value) {\n this.setState({\n [label]: {\n value,\n isError:\n this.state.redemptionMode === AMOUNT\n ? this.state.scheme.value.value.MinAmt > this.state.amount.value\n ? true\n : !value\n : this.state.scheme.value.value.BalUnits <\n this.state.amount.value\n ? true\n : !value,\n errorMessage:\n this.state.redemptionMode === AMOUNT\n ? this.state.scheme.value.value.MinAmt > this.state.amount.value\n ? `Minimum amount is ${this.state.scheme.value.value.MinAmt} (₹)`\n : \"\"\n : this.state.scheme.value.value.BalUnits <\n this.state.amount.value\n ? `You don't have enough Units To Redeem!`\n : \"\",\n },\n });\n }\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n handleRedemptionValueChange(event) {\n const { redemptionMode, redemptionType } = this.state;\n if (event.target.value.length <= 10) {\n if (redemptionMode === UNITS && redemptionType === PARTIAL) {\n if (\n /^[0-9]*$/.test(event.target.value) ||\n /[-+]?[0-9]*(\\.[0-9]{0,3}$)/.test(event.target.value)\n ) {\n this.setState({\n amount: { value: event.target.value },\n });\n }\n } else {\n this.setState({\n amount: { value: event.target.value.replace(/^0+/, \"\") },\n });\n }\n }\n }\n\n changeRedemptionType = (value) => () => {\n if (value === FULL) {\n this.setState({\n redemptionType: FULL,\n redemptionMode: UNITS,\n amount: {\n value: !!this.state.scheme.value\n ? this.state.scheme.value.value.BalUnits\n : \"\",\n },\n });\n }\n if (value === PARTIAL) {\n this.setState({\n redemptionType: PARTIAL,\n amount: { value: \"\" },\n });\n }\n };\n changeRedemptionMode = (value) => () => {\n if (value === AMOUNT) {\n this.setState({\n redemptionMode: AMOUNT,\n amount: { value: \"\" },\n });\n }\n if (value === UNITS) {\n this.setState({\n redemptionMode: UNITS,\n });\n }\n };\n handlefolioBankDetailsChange = (event) => {\n this.setState({\n bank: { value: event.target.value },\n });\n };\n\n submit = async () => {\n const {\n funds,\n banks,\n schemes,\n folios,\n redemptionType,\n redemptionMode,\n minAmount,\n fund,\n bank,\n ...others\n } = this.state;\n if (this.state.bank.value === \"\") {\n this.setState({\n bank: {\n value: \"\",\n isError: true,\n errorMessage: \"Please select the bank details\",\n },\n });\n }\n let currValue;\n if (!!this.state.scheme.value) {\n currValue = !!this.state.scheme.value.value\n ? this.state.scheme.value.value.Fund_CurValue\n : \"\";\n }\n const keys = Object.keys(others);\n const findError = keys.every((key) => !!others[key].value);\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage: `${key} is mandatory*`,\n },\n });\n });\n const firstErroredKey = keys.find((key) => !others[key].value);\n switch (firstErroredKey) {\n // case \"fund\": {\n // this.fundField.focus();\n // break;\n // }\n case \"folio\": {\n this.folioField.focus();\n break;\n }\n case \"scheme\": {\n this.schemeField.focus();\n break;\n }\n case \"amount\": {\n this.amountField.focus();\n break;\n }\n // case \"bank\": {\n // this.bankField.focus();\n // break;\n // }\n }\n } else if (\n this.state.redemptionMode === AMOUNT &&\n this.state.scheme.value.value.MinAmt > this.state.amount.value\n ) {\n this.setState({\n amount: {\n value: \"\",\n isError: true,\n errorMessage: `Minimum amount shoud be ${this.state.scheme.value.value.MinAmt} (₹)`,\n },\n });\n } else if (\n this.state.redemptionMode !== AMOUNT &&\n this.state.scheme.value.value.BalUnits < this.state.amount.value\n ) {\n this.setState({\n amount: {\n value: \"\",\n isError: true,\n errorMessage: `You dont have enough points to redeem`,\n },\n });\n } else if (this.state.bank.value === \"\") {\n this.setState({\n bank: {\n ...others[\"bank\"],\n isError: true,\n errorMessage: `Please select the bank`,\n },\n });\n } else {\n const params = {\n amount: redemptionMode === AMOUNT ? others.amount.value : \"0\",\n Fund: \"176\",\n plan: others.scheme.value.value.Pln,\n scheme: others.scheme.value.value.Sch,\n acno: others.scheme.value.value.Acno,\n trdt: moment(new Date()).format(\"MM/DD/YYYY\"),\n units: redemptionMode === UNITS ? others.amount.value : \"0\",\n ttrtype: PURCHASE,\n };\n const response = await this.props.getRedemptionPaymentDetails(params);\n if (response) {\n this.props.saveTransactionDetails(this.state);\n\n this.props.history.push({\n pathname: INVESTOR_URL + \"/redemption/digital/transact/confirm\",\n state: {\n title: \"Redemption Payment Summary\",\n type: REDEMPTION,\n scheme: others.scheme.value.value,\n redemptionMode,\n Folio: { value: others.scheme.value.value.Acno },\n redemptionType,\n amount: others.amount.value,\n bank: this.state.bank.value,\n },\n });\n }\n }\n };\n\n render() {\n const {\n fund,\n funds = [],\n folio,\n folios = [],\n schemes = [],\n scheme,\n bank,\n banks,\n amount,\n redemptionType,\n redemptionMode,\n } = this.state;\n\n const checkMultiBrokerFlag =\n !!this.state.scheme &&\n !!this.state.scheme.value &&\n !!this.state.scheme.value.value &&\n !!this.state.scheme.value.value.multibrokflg &&\n this.state.scheme.value.value.multibrokflg === \"Y\";\n return (\n
\n
Redemption
\n\n
\n
Folio
\n ({\n label: item,\n value: item,\n }))}\n value={folio.value}\n placeholder=\"Select Folio\"\n handleChange={this.handleFolioChange}\n inputRef={(ele) => (this.folioField = ele)}\n isError={folio.isError}\n errorMessage={folio.errorMessage}\n />\n
\n\n
\n
Scheme
\n ({\n label: item.PlnDesc\n ? `${item.SchDesc1} - ${item.PlnDesc} - ${item.OptDesc}`\n : item.fm_schdesc,\n value: item,\n }))}\n value={scheme.value}\n placeholder=\"Select Scheme\"\n handleChange={this.handleSchemeChange}\n inputRef={(ele) => (this.schemeField = ele)}\n isError={scheme.isError}\n disabled={!folio.value}\n errorMessage={scheme.errorMessage}\n />\n
\n\n
\n
\n {!checkMultiBrokerFlag &&
Balance Units
}\n {!checkMultiBrokerFlag &&
Current Value
}\n
NAV as on Date
\n
Minimum Amount
\n
\n
\n {!checkMultiBrokerFlag && (\n
{!!scheme.value ? scheme.value.value.BalUnits : \"\"}
\n )}\n {!checkMultiBrokerFlag && (\n
\n {!!scheme.value ? `₹ ${scheme.value.value.CurValue}` : \"\"}\n
\n )}\n
{!!scheme.value ? scheme.value.value.LastNAV : \"\"}
\n
{!!scheme.value ? `₹ ${scheme.value.value.MinAmt}` : \"₹\"}
\n
\n
\n\n {!!checkMultiBrokerFlag && (\n \n {\" \"}\n Note: This folio has multiple distributors. Hence, the balance units\n and current value will not be displayed. In case of full redemption,\n all the units in the investor's portfolio will be redeemed.\n
\n )}\n\n
Redemption Type
\n
\n \n \n
\n\n
Redemption Mode
\n
\n \n \n
\n\n
\n \n (evt.key === \"e\" || evt.key === \"-\") && evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n errorMessage={amount.errorMessage}\n isShowError={amount.isError}\n type=\"number\"\n onBlur={this.showError(\"amount\")}\n disabled={redemptionType === FULL ? true : false}\n inputref={(ele) => (this.amountField = ele)}\n onChange={(event) => this.handleRedemptionValueChange(event)}\n value={amount.value}\n />\n
\n\n
\n (this.bankField = ele)}\n >\n {banks.map((item, index) => (\n \n {item.bnkname}-{item.bnkacno}\n \n ))}\n \n {/* {!!bank.errorMessage ?
{bank.errorMessage}
: \"\"} */}\n
\n
\n \n
\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer,transactions }) => {\n const {\n fundList,\n token,\n userId,\n bankDetails,\n investorData,\n communicationDetails,\n } = authReducer;\nconst {transactionDetails}= transactions\n return {\n fundList,\n token,\n userId,\n bankDetails,\n investorData,\n communicationDetails,\n transactionDetails\n };\n },\n { getBankDetails, getRedemptionPaymentDetails, saveTransactionDetails\n }\n)(Redemption);","import React, { Component } from \"react\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport { Input } from \"../../forms/input\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport {\n validateSubBroker,\n getNewPurchaseFundList,\n getOtherSchemes,\n getAssetClasses,\n setSwitchDetails,\n getRedemptionPaymentDetails,\n saveTransactionDetails\n} from \"shared/store/actions\";\n\nimport { connect } from \"react-redux\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport {\n YES,\n PARTIAL,\n FULL,\n UNITS,\n AMOUNT,\n REGULAR,\n PURCHASE,\n SWITCH,\n} from \"shared/store/types\";\nimport Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControl from \"@material-ui/core/FormControl\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport moment from \"moment\";\nimport { NEW_TRANSACTION_URL } from \".\";\nimport { SundaramMutualFund } from \"./newPurchaseForm\";\nimport { INVESTOR_URL } from \"../investors\";\nclass switchCmponent extends Component {\n constructor(props) {\n super(props);\n const { switchDetails,location } = this.props;\n const { state } = location;\n const { transaction } = state || {};\n this.state = {\n fund: { value: {value:\"176\"} },\n folios: [],\n folio: {\n value: !!transaction\n ? {\n label: transaction.acno,\n value: transaction.acno,\n }\n : \"\",\n },\n schemes: [],\n scheme: {\n value: !!transaction\n ? {\n label: transaction.schemename,\n value: transaction.scheme_code,\n }\n : \"\",\n },\n radioValue: {\n value: !!transaction && transaction.euinopt === \"Y\" ? \"yes\" : \"no\",\n }, \n arnCode: { value: this.props.token },\n subArnCode: { value: !!transaction ? transaction.Sub_ARN_code : \"\" },\n subBrokerCode: { value: !!transaction ? transaction.subbroker : \"\" },\n euinNo: {\n value:\n !!transaction && transaction.euinopt == \"N\"\n ? transaction.euincode\n : \"\",\n }, \n category: { value: !!transaction ? transaction.category : \"\" },\n categories: [],\n switchInSchemes: [],\n switchInScheme: { value: \"\" },\n amount: {\n value: !!transaction\n ? !!transaction.amount\n ? transaction.amount\n : transaction.units\n : \"\",\n },\n switchType: PARTIAL,\n switchMode: UNITS,\n ...switchDetails,\n };\n }\n\n handleFundChange = (value) => {\n if (!value) {\n this.setState({\n fund: { value: \"\" },\n folios: [],\n folio: { value: \"\" },\n scheme: { value: \"\" },\n amount: { value: \"\" },\n switchInScheme: { value: \"\" },\n category: { value: \"\" },\n });\n return;\n } else if (\n !!value &&\n !!this.state.fund &&\n value.value === \"176\"\n ) {\n return;\n } else {\n const fund = value.value;\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (curr.Fund === fund && curr.sSchFlg === YES) {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n this.setState({\n fund: { value },\n folios: Array.from(new Set(folios)),\n folio: { value: \"\" },\n scheme: { value: \"\" },\n category: { value: \"\" },\n switchInScheme: { value: \"\" },\n switchType: PARTIAL,\n switchMode: UNITS,\n });\n if (!!fund) {\n this.validateBrokerCode(fund)();\n }\n }\n };\n async componentDidMount() {\n window.scrollTo({\n behavior:\"smooth\",\n top:0\n })\n const { transactionDetails }= this.props\n if (!!transactionDetails && (Object.keys(transactionDetails).length > 0)) {\n this.setState(transactionDetails);\n return;\n }\n this.getFolios();\n if (this.props?.location?.state?.transaction) {\n let schemes = this.schemes(this.props.location.state.transaction.acno);\n schemes = schemes.filter((scheme) => scheme.BalUnits !== 0);\n const findingScheme = schemes.find((ele)=>(`176~${ele.Sch}~${ele.Pln}~${ele.Opt}`=== this.props.location.state.transaction.scheme_code))\n this.setState({\n schemes,\n scheme:{value:{label:this.props.location.state.transaction.schemename,value:findingScheme}}\n });\n this.getAssetClasses();\n this.getOtherSchemes(this.props.location.state.transaction.category) \n }\n }\n\n getFolios = () => {\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (curr.Fund.trim() === \"176\" && curr.sSchFlg === YES) {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n this.setState({\n ...this.state,\n fund: { value: { value: \"176\" } },\n folios: Array.from(new Set(folios)),\n // folio: { value: \"\" },\n // scheme: { value: \"\" },\n // category: { value: \"\" },\n // switchInScheme: { value: \"\" },\n // switchType: PARTIAL,\n // switchMode: UNITS,\n });\n // if (!!fund) {\n this.validateBrokerCode(\"117\")();\n // }\n };\n\n validateBrokerCode = (fund) => async () => {\n const { subArnCode, arnCode } = this.state;\n if (\n !!this.state.subArnCode.value &&\n this.state.subArnCode.value === this.state.arnCode.value.split(\"-\")[1]\n ) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: \"ARN and Sub ARN Code should not be the same\",\n },\n });\n return;\n }\n const params = {\n Fund: \"176\",\n SubAgentCd: !!subArnCode.value ? `ARN-${subArnCode.value}` : \"\",\n AgentCd: arnCode.value,\n };\n const response = await this.props.validateSubBroker(params);\n if (!response) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `(Please enter a valid Sub ARN Code)`,\n },\n });\n }\n };\n\n handleFolioChange = async (value) => {\n if (!value) {\n this.setState({\n folio: { value: \"\" },\n schemes: [],\n scheme: { value: \"\" },\n category: { value: \"\" },\n switchInScheme: { value: \"\" },\n switchType: PARTIAL,\n switchMode: UNITS,\n amount: { value: \"\" },\n });\n return;\n } else if (\n !!value &&\n !!this.state.folio &&\n value.value === this.state.folio.value.value\n ) {\n return;\n } else {\n const folio = value.value;\n const schemes = this.schemes(folio);\n\n this.setState({\n folio: {\n value,\n isError: !schemes.length,\n errorMessage: !schemes.length\n ? \"SWITCH in zero balance folios is not allowed\"\n : \"\",\n },\n schemes,\n scheme: { value: \"\" },\n category: { value: \"\" },\n switchInScheme: { value: \"\" },\n switchType: PARTIAL,\n switchMode: UNITS,\n categories: [],\n });\n\n this.getAssetClasses();\n }\n };\n schemes = (folio) => {\n return this.props.fundList.reduce((prev, curr) => {\n if (\n curr.sSchFlg === YES &&\n curr.Fund.trim() === \"176\" &&\n curr.Acno === folio &&\n !!curr.BalUnits\n ) {\n return [...prev, curr];\n }\n return prev;\n }, []);\n };\n handleSchemeChange = (value) => {\n if (!value) {\n this.setState({\n scheme: { value: \"\" },\n minAmount: \"\",\n amount: { value: \"\" },\n category: { value: \"\" },\n switchInScheme: { value: \"\" },\n switchType: PARTIAL,\n switchMode: UNITS,\n categories: [],\n });\n return;\n } else if (\n !!value.value &&\n !!this.state.scheme.value.value &&\n value.value.SchDesc === this.state.scheme.value.value.SchDesc\n ) {\n return;\n } else {\n const scheme = value.value;\n if (!!value.value && !value.value.BalUnits) {\n this.setState({\n folio: {\n value: \"\",\n isError: \"true\",\n errorMessage: \"Switch in Zero balance folios is not accepted\",\n },\n scheme: { value: \"\" },\n });\n } else {\n this.setState({\n scheme: { value },\n minAmount: !!scheme ? scheme.MinAmt : \"\",\n amount: { value: \"\" },\n category: { value: \"\" },\n switchInScheme: { value: \"\" },\n });\n }\n this.getAssetClasses();\n }\n };\n handleCategoryChange = (event) => {\n if (!!event.target.value) {\n this.getOtherSchemes(event.target.value);\n this.setState({\n category: { value: event.target.value },\n switchInScheme: { value: \"\" },\n switchInSchemes: [],\n });\n }\n // else if(event.target.value===){\n\n // }\n else {\n this.setState({\n category: { value: \"\" },\n switchInScheme: { value: \"\" },\n switchInSchemes: [],\n });\n }\n };\n getAssetClasses = async () => {\n const params = {\n Fund: \"176\",\n Folio: this.state.folio.value.value,\n };\n const assetClasses = await this.props.getAssetClasses(params);\n if (assetClasses) {\n this.setState({\n categories: assetClasses.DtData,\n });\n }\n };\n\n changeEuin = (value) => {\n this.setState({\n euinNo: { value },\n });\n };\n\n getOtherSchemes = async (value) => {\n const params = {\n schtype: REGULAR,\n category: value,\n acno: this.state.folio.value.value,\n fundCode: \"176\",\n trantype: \"S\",\n };\n const otherSchemes = await this.props.getOtherSchemes(params);\n if (otherSchemes) {\n this.setState({\n switchInSchemes: otherSchemes.DtData,\n });\n }\n if (!!this.props.location.state.transaction) {\n const findingInScheme = otherSchemes.DtData.find((ele)=>(ele.fm_schdesc === this.props.location.state.transaction.Switch_in_scheme))\n this.setState({\n switchInScheme:{value:{label:this.props.location.state.transaction.Switch_in_scheme,value:findingInScheme}}\n });\n }\n };\n handleSwitchInSchemeChange = (value) => {\n if (!value) {\n this.setState({\n switchInScheme: { value },\n });\n return;\n }\n this.setState({\n switchInScheme: { value },\n });\n };\n changeValue = (label) => (event) => {\n if (\n (label === \"subArnCode\" || label === \"subBrokerCode\") &&\n event.target.value.length <= 20\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (label === \"radioValue\" && event.target.value === \"no\") {\n if (!this.state.euinNo.value) {\n this.setState({\n radioValue: { value: event.target.value },\n });\n } else {\n this.setState({\n [label]: { value: event.target.value },\n euinNo: { value: \"\" },\n });\n }\n } else if (\n label !== \"subArnCode\" &&\n label !== \"subBrokerCode\" &&\n label === \"radioValue\" &&\n event.target.value !== \"no\"\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n }\n };\n\n handleSwitchValueChange(event) {\n if (event.target.value.length <= 10) {\n this.setState({\n amount: { value: event.target.value.replace(/^0+/, \"\") },\n });\n }\n }\n\n changeSwitchType = (value) => () => {\n if (value === FULL) {\n this.setState({\n switchType: FULL,\n switchMode: UNITS,\n amount: {\n value: !!this.state.scheme.value\n ? this.state.scheme.value.value.BalUnits\n : \"\",\n },\n });\n }\n if (value === PARTIAL) {\n this.setState({\n switchType: PARTIAL,\n amount: { value: \"\" },\n });\n }\n };\n changeSwitchMode = (value) => () => {\n if (value === AMOUNT) {\n this.setState({\n switchMode: AMOUNT,\n amount: { value: \"\" },\n });\n }\n if (value === UNITS) {\n this.setState({\n switchMode: UNITS,\n amount: { value: \"\" },\n });\n }\n };\n showError = (label) => () => {\n const {\n [label]: { value },\n } = this.state;\n if (!!this.state.scheme && !!this.state.scheme.value.value) {\n if (label === \"amount\") {\n this.setState({\n [label]: {\n value,\n isError:\n this.state.switchMode === AMOUNT\n ? this.state.scheme.value.value.MinAmt > this.state.amount.value\n ? true\n : !value\n : this.state.scheme.value.value.BalUnits <\n this.state.amount.value\n ? true\n : !value,\n errorMessage:\n this.state.switchMode === AMOUNT\n ? this.state.scheme.value.value.MinAmt > this.state.amount.value\n ? `Minimum amount should be ${this.state.minAmount} (₹)`\n : \"\"\n : this.state.scheme.value.value.BalUnits <\n this.state.amount.value\n ? `You don't have enough Units To Redeem!`\n : \"\",\n },\n });\n }\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n\n submit = async () => {\n let currValue, currAmountValue;\n\n const {\n funds,\n fund,\n schemes,\n switchInSchemes,\n folios,\n switchType,\n switchMode,\n minAmount,\n categories,\n arnCode,\n subArnCode,\n subBrokerCode,\n euinNo,\n amount,\n radioValue,\n isError,\n errorMessage,\n ...others\n } = this.state;\n if (this.state.amount.value === \"\") {\n this.setState({\n amount: {\n value: \"\",\n isError: true,\n errorMessage: `Please enter the switch value`,\n },\n });\n }\n const arn = this.state.arnCode.value.split(\"-\");\n const keys = Object.keys(others);\n if (!!this.state.scheme.value) {\n currValue = parseFloat(\n this.state.scheme.value.value.CurValue.replace(/,/g, \"\")\n );\n }\n currAmountValue =\n this.state.switchType !== FULL\n ? parseFloat(this.state.amount.value.replace(/,/g, \"\"))\n : \"\";\n const findError = keys.every((key) => !!others[key].value);\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage: `${key} is mandatory* `,\n },\n });\n });\n const firstErroredKey = keys.find((key) => !others[key].value);\n switch (firstErroredKey) {\n // case \"fund\": {\n // this.fundField.focus();\n // break;\n // }\n case \"folio\": {\n this.folioField.focus();\n break;\n }\n case \"scheme\": {\n this.switchOutField.focus();\n break;\n }\n case \"category\": {\n this.category.focus();\n break;\n }\n case \"switchInScheme\": {\n this.switchInScheme.focus();\n break;\n }\n }\n } else if (arn[1] === this.state.subArnCode.value) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `and ARN code should not match `,\n },\n });\n } else if (\n (this.state.scheme.value.value.MinAmt > this.state.amount.value &&\n this.state.switchMode === AMOUNT) ||\n (this.state.scheme.value.value.BalUnits < this.state.amount.value &&\n this.state.switchMode === UNITS &&\n this.state.switchType === PARTIAL) ||\n (currValue < currAmountValue && this.state.switchMode === AMOUNT)\n ) {\n if (\n currValue < currAmountValue &&\n this.state.scheme.value.value.MinAmt < this.state.amount.value\n ) {\n this.setState({\n amount: {\n ...others[\"amount\"],\n isError: true,\n errorMessage: `You dont have enough amount to Switch plan`,\n },\n });\n } else if (\n this.state.scheme.value.value.MinAmt > this.state.amount.value &&\n this.state.switchMode === AMOUNT\n ) {\n this.setState({\n amount: {\n ...others[\"amount\"],\n isError: true,\n errorMessage: `Minimum Amount value is ${this.state.minAmount} (₹)`,\n },\n });\n this.amountField.focus();\n return;\n } else if (\n this.state.scheme.value.value.BalUnits < this.state.amount.value &&\n this.state.switchMode === UNITS\n ) {\n this.setState({\n ...others[\"amount\"],\n isError: true,\n errorMessage: `You dont have enough Units to Switch plan`,\n });\n }\n this.amountField.focus();\n return;\n } else if (\n this.state.radioValue.value === \"no\" &&\n this.state.euinNo.value === \"\"\n ) {\n this.setState({\n euinNo: { value: \"\", isError: true, errorMessage: `select EUIN` },\n });\n this.euinField.focus();\n } else {\n this.props.setSwitchDetails(this.state);\n const params = {\n amount: switchMode === AMOUNT ? this.state.amount.value : \"0\",\n fund: \"176\",\n plan: others.scheme.value.value.Pln,\n scheme: others.scheme.value.value.Sch,\n acno: others.scheme.value.value.Acno,\n trdt: moment(new Date()).format(\"MM/DD/YYYY\"),\n units: switchMode === UNITS ? this.state.amount.value : \"0\",\n ttrtype: PURCHASE,\n };\n const response = await this.props.getRedemptionPaymentDetails(params);\n if (response) {\n this.props.history.push({\n pathname: INVESTOR_URL + \"/switch/digital/transact/confirm\",\n state: {\n title: \"Switch Payment Summary\",\n type: SWITCH,\n scheme: others.scheme.value.value,\n Folio: { value: others.scheme.value.value.Acno },\n switchInScheme: others.switchInScheme.value.value,\n fund: \"176\",\n switchMode,\n subArnCode: this.state.subArnCode.value,\n subBrokerCode: this.state.subBrokerCode.value,\n switchType,\n euin: this.state.euinNo.value,\n amount: this.state.amount.value,\n },\n });\n }\n }\n };\n\n render() {\n const {\n fund,\n funds = [],\n folio,\n folios = [],\n schemes = [],\n scheme,\n radioValue,\n arnCode,\n subArnCode,\n subBrokerCode,\n euinNo,\n categories,\n category,\n switchInScheme,\n switchInSchemes,\n amount,\n switchType,\n switchMode,\n } = this.state;\n const { euinList } = this.props;\n const checkMultiBrokerFlag =\n !!this.state.scheme &&\n !!this.state.scheme.value &&\n !!this.state.scheme.value.value &&\n !!this.state.scheme.value.value.multibrokflg &&\n this.state.scheme.value.value.multibrokflg === \"Y\";\n return (\n
\n
Switch
\n\n
\n
Folio
\n ({\n label: item,\n value: item,\n }))}\n value={folio.value}\n placeholder=\"Select Folio\"\n handleChange={this.handleFolioChange}\n inputRef={(ele) => (this.folioField = ele)}\n isError={folio.isError}\n errorMessage={folio.errorMessage}\n />\n
\n
\n
\n Switch out Scheme\n
\n ({\n value: item,\n label: item.PlnDesc\n ? `${item.SchDesc1} - ${item.PlnDesc} - ${item.OptDesc}`\n : item.fm_schdesc,\n }))}\n value={scheme.value}\n placeholder=\"Select Scheme\"\n handleChange={this.handleSchemeChange}\n disabled={!folio.value}\n inputRef={(ele) => (this.switchOutField = ele)}\n isError={scheme.isError}\n errorMessage={scheme.errorMessage}\n />\n
\n
\n
\n {!checkMultiBrokerFlag &&
Balance Units
}\n {!checkMultiBrokerFlag &&
Current Value
}\n
NAV as on Date
\n
Minimum Amount (INR)
\n
\n
\n {!checkMultiBrokerFlag && (\n
\n {!!scheme && !!scheme.value ? scheme.value.value.BalUnits : \"\"}\n
\n )}\n {!checkMultiBrokerFlag && (\n
\n {!!scheme && !!scheme.value ? `₹${scheme.value.value.CurValue}` : \"\"}\n
\n )}\n
\n {!!scheme && !!scheme.value ? scheme.value.value.LastNAV : \"\"}\n
\n
\n {!!scheme && !!scheme.value ? `₹${scheme.value.value.MinAmt}` : \"\"}\n
\n
\n
\n {!!checkMultiBrokerFlag && (\n \n {\" \"}\n Note: This folio has multiple distributors. Hence, the balance units\n and current value will not be displayed.\n
\n )}\n
\n (this.category = ele)}\n isError={category.isError}\n disabled={!scheme.value}\n errorMessage={category.errorMessage}\n >\n {categories.map((item, index) => (\n \n {item.CatDesc}\n \n ))}\n \n
\n\n
\n
\n Switch in Scheme\n
\n ({\n label: item.fm_schdesc,\n value: item,\n }))}\n label=\"Fund\"\n handleChange={this.handleSwitchInSchemeChange}\n value={switchInScheme.value}\n placeholder=\"Select Switch in Scheme\"\n disabled={!category.value}\n inputRef={(ele) => (this.switchInScheme = ele)}\n isError={switchInScheme.isError}\n errorMessage={switchInScheme.errorMessage}\n />\n
\n\n
\n \n
\n\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n disabled={!fund.value}\n isShowError={subArnCode.isError}\n errorMessage={subArnCode.errorMessage}\n value={subArnCode.value}\n onBlur={\n !!fund.value ? this.validateBrokerCode(fund.value.value.Fund) : \"\"\n }\n onChange={this.changeValue(\"subArnCode\")}\n />\n
\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n value={subBrokerCode.value}\n onChange={this.changeValue(\"subBrokerCode\")}\n />\n
\n\n
\n
EUIN
\n \n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
YES
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
NO
\n
\n \n
\n
\n\n {radioValue.value === \"no\" ? (\n
\n ({\n label: item.abm_agent,\n value: item.abm_agent,\n }))}\n label=\"Fund\"\n handleChange={this.changeEuin}\n value={euinNo.value}\n disabled={!euinList.length}\n placeholder=\"Select EUIN\"\n inputRef={(ele) => (this.euinField = ele)}\n isError={euinNo.isError}\n />\n
\n ) : (\n
\n I/We hereby confirm that the EUIN box has been intentionally left\n the blank by me/us as this is an 'execution-only' transaction\n without any interaction or advice by any personnel of the above\n distributor or notwithstanding the advice of in-appropriateness,if\n any provided by any personnel of the distributor and the distributor\n has not charged any advisory fees on this transaction\n
\n )}\n\n
Switch Type
\n
\n \n \n
\n\n
Switch Mode
\n
\n \n \n
\n\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n errorMessage={amount.errorMessage}\n isShowError={amount.isError}\n onBlur={this.showError(\"amount\")}\n disabled={switchType === FULL ? true : false}\n onChange={(event) => this.handleSwitchValueChange(event)}\n value={amount.value}\n inputref={(ele) => (this.amountField = ele)}\n />\n\n
\n \n
\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions }) => {\n const {\n fundList,\n token,\n userId,\n investorData,\n communicationDetails,\n } = authReducer;\n const { euinList, switchDetails = {},transactionDetails } = transactions;\n return {\n fundList,\n token,\n userId,\n euinList,\n switchDetails,\n investorData,\n communicationDetails,\n transactionDetails\n };\n },\n {\n validateSubBroker,\n getNewPurchaseFundList,\n getOtherSchemes,\n setSwitchDetails,\n getAssetClasses,\n getRedemptionPaymentDetails,\n saveTransactionDetails\n }\n)(switchCmponent);\n","export const emailRegex = new RegExp(\n \"[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$\"\n);\nexport const ifscRegex = new RegExp(\"^[A-Za-z]{4}[a-zA-Z0-9]{7}$\");\nexport const mobileRegex = new RegExp(\"^[6-9]{1}[0-9]{9}$\");\nexport const nameRegex = new RegExp(\"^[a-zA-Z ]{4,50}$\");\nexport const accountRegex = new RegExp(\"^[a-zA-Z ]{0,10}$\");\nexport const panRegex = new RegExp(\"^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$\");\nexport const bankAccountRegex = new RegExp(\"^[0-9]{9,18}$\");\nexport const pincodeRegex = new RegExp(\"^[0-9]{6}$\");\nexport const countryCodeRegex = new RegExp(\"^[+][0-9]{1,3}$\");\nexport const alphabetsRegex = new RegExp(\"/^[A-Za-z]$/\");\n\nexport const genderOptions = [\n { name: \"Male\", value: \"M\" },\n { name: \"Female\", value: \"F\" },\n { name: \"Transgender\", value: \"O\" },\n];\nexport const NomineesList = [\n {\n label: \"1\",\n value: \"1\",\n },\n {\n label: \"2\",\n value: \"2\",\n },\n {\n label: \"3\",\n value: \"3\",\n },\n];\nexport const tenureList = [\n {\n label: \"7\",\n value: \"7\",\n },\n {\n label: \"10\",\n value: \"10\",\n },\n {\n label: \"15\",\n value: \"15\",\n },\n {\n label: \"20\",\n value: \"20\",\n },\n];\n\nexport const categoryOptions = [\n { name: \"Resident Indian\", value: \"11\" },\n { name: \"NRI\", value: \"20\" },\n];\nexport const statusOptions = [\n { name: \"Individual\", value: \"I\" },\n { name: \"NRI\", value: \"N\" },\n];\nexport const Occupations = [\n { label: \"Service\", value: 1 },\n { label: \"Business\", value: 2 },\n { label: \"Student\", value: 3 },\n { label: \"House Wife\", value: 4 },\n { label: \"Professional\", value: 5 },\n { label: \"Retired\", value: 7 },\n { label: \"Others\", value: 8 },\n];\nexport const Gross_Annual_income = [\n { label: \"Below 1 Lac\", value: \"Below 1 Lac\" },\n { label: \"1-5 Lacs\", value: \"1-5 Lacs\" },\n { label: \"5-10 Lacs\", value: \"5-10 Lacs\" },\n { label: \"10-25 Lacs\", value: \"10-25 Lacs\" },\n { label: \"25 Lacs-1 Crore\", value: \"25 Lacs-1 Crore\" },\n { label: \"1 Crore and above\", value: \"1 Crore and above\" },\n];\n\nexport const modeOfHoldingOptions = [\n { name: \"Single\", value: \"single\" },\n { name: \"Anyone (or) survivor\", value: \"anyone\" },\n];\n\nexport const relationshipOptions = [\n {\n name: \"Brother\",\n value: \"Brother\",\n },\n {\n name: \"Daughter\",\n value: \"Daughter\",\n },\n {\n name: \"Father\",\n value: \"Father\",\n },\n {\n name: \"Mother\",\n value: \"Mother\",\n },\n {\n name: \"Sister\",\n value: \"Sister\",\n },\n {\n name: \"Son\",\n value: \"Son\",\n },\n {\n name: \"Wife\",\n value: \"Wife\",\n },\n];\nexport const familyDescriptionOptions = [\n {\n label: \"Self\",\n value: \"SE\",\n },\n {\n label: \"Spouse\",\n value: \"SP\",\n },\n {\n label: \"Dependent Children\",\n value: \"DC\",\n },\n {\n label: \"Dependent Siblings\",\n value: \"DS\",\n },\n {\n label: \"Dependent Parents\",\n value: \"DP\",\n },\n {\n label: \"Guardian\",\n value: \"GD\",\n },\n];\n","import React, { Component, useEffect } from \"react\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport { Input } from \"../../forms/input\";\nimport {\n EXISTING,\n NEW,\n NEWP,\n YES,\n ALL,\n GET_FUNDS_LIST,\n GET_FUNDS_LIST_SUCCESS,\n GET_FUNDS_LIST_FAILED,\n PAYMENT_MODE,\n REGULAR,\n PURCHASE,\n SIP_TRANS_TYPE,\n INVESTMENT_FREQUENCY,\n SIP_DAY,\n SIP,\n NO,\n EXISTINGP,\n} from \"shared/store/types\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControl from \"@material-ui/core/FormControl\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport { connect } from \"react-redux\";\nimport { Checkbox } from \"@material-ui/core\";\nimport {\n validateSubBroker,\n swpOptions,\n getNewPurchaseFundList,\n getOtherSchemes,\n getAssetClasses,\n CalcSIPEnddt,\n setSipDetails,\n submitPurchaseData,\n showPurchaseConfirmation,\n getMinimumAmount,\n getCheckPanKotm,\n getCheckPanAotm,\n saveTransactionDetails,\n getSIPTenures\n} from \"shared/store/actions\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\n// import { NEW_TRANSACTION_URL } from \".\";\nimport { SundaramMutualFund } from \"./newPurchaseForm\";\nimport { INVESTOR_URL } from \"../investors\";\nimport { tenureList } from \"./newInvestor\";\nimport { addOneMonthAndTwentyYears, addFifteenDays } from \"./newInvestor/lib/utils\";\nconst initialState = {\n fund: { value: \"\" },\n funds: [],\n folio: { value: \"\" },\n folios: [],\n category: { value: \"\" },\n minimumLumpsumAmout: \"\",\n categories: [],\n scheme: { value: \"\" },\n swpScheme: { value: \"\" },\n schemes: [],\n swpSchemes: [],\n investmentFrequency: { value: \"\" },\n frequencies: [],\n installments: { value: \"\" },\n sipDay: { value: \"\" },\n sipDays: [],\n perpetualSip: false,\n sip_start_date: { value: \"\" },\n sip_end_date: { value: \"\" },\n installmentAmount: { value: \"\" },\n flexiMaxInstallmentAmount: { value: \"\" },\n freedomorflexiSIPorNot: false,\n tenure: { value: \"\" },\n swpCategory: { value: \"EQUITY\" },\n swpAmount: { value: \"\" },\n investmentAmount: { value: \"\" },\n mode: { value: \"\" },\n modes: [],\n minAmount: \"\",\n code: { value: \"+91\" },\n minInstallment: \"\",\n kotm: false,\n selectedKotm: { value: \"\" },\n umrn: [],\n sipTenures: []\n};\nclass Sip extends Component {\n constructor(props) {\n super(props);\n const { sipDetails, location, fundList } = this.props;\n const { state } = location;\n const { transaction } = state || {};\n const checkExisting =\n !!fundList && fundList.find((ele) => ele.Fund === \"176\" && !!ele.Acno);\n this.state = {\n sipTypes:\n (!!state && !!state.pan) || !checkExisting\n ? [\n // {\n // label: \"New Folio - SIP Registration with payment\",\n // value: NEW,\n // },\n { label: \"New Folio - SIP Registration\", value: NEWP },\n ]\n : [\n { label: \"Existing Folio - SIP Registration\", value: EXISTING },\n // { label: \"New Folio - SIP Registration\", value: NEWP },\n // {\n // label: \"New Folio - SIP Registration with payment\",\n // value: NEW,\n // },\n {\n label: \"Existing Folio - SIP Registration with payment\",\n value: EXISTINGP,\n },\n ],\n invName: {\n value: !!transaction ? transaction.InvName : this.props.kycData.invname,\n },\n sipType: { value: !!transaction ? transaction.sip_trtype : \"\" },\n fund: { value: \"\" },\n funds: [],\n folio: {\n value: !!transaction\n ? {\n label: transaction.acno,\n value: transaction.acno,\n }\n : \"\",\n },\n folios: [],\n arnCode: { value: this.props.token },\n subArnCode: { value: !!transaction ? transaction.Sub_ARN_code : \"\" },\n subBrokerCode: { value: !!transaction ? transaction.subbroker : \"\" },\n schemeType: EXISTING,\n category: { value: !!transaction ? transaction.category : \"\" },\n categories: [],\n schemes: [],\n scheme: {\n value: !!transaction\n ? {\n label: transaction.schemename,\n value: transaction.scheme_code,\n }\n : \"\",\n },\n modes: [],\n mode: { value: !!transaction ? transaction.mode_of_registration : \"\" },\n euinNo: {\n value:\n !!transaction && transaction.euinopt == \"N\"\n ? transaction.euincode\n : \"\",\n },\n radioValue: {\n value: !!transaction && transaction.euinopt === \"Y\" ? \"yes\" : \"no\",\n },\n transactionType: { value: \"Normal SIP\" },\n minAmount: \"\",\n minAmountValue: { value: \"\" },\n minSwpAmountValue: { value: \"\" },\n frequencies: [],\n investmentFrequency: { value: \"\" },\n sipDays: [],\n sipDay: { value: \"\" },\n installments: { value:\"\" },\n sip_start_date: { value: \"\" },\n sip_end_date: { value: \"\" },\n swp_start_date: { value: \"\" },\n swp_end_date: { value: \"\" },\n email: { value: \"\" },\n mobile: { value: \"\" },\n installmentAmount: { value:\"\" },\n investmentAmount: { value: \"\" },\n Family_Code_Email: { value: \"\" },\n Family_Code_Phone: { value: \"\" },\n code: { value: \"+91\" },\n minInstallment: \"\",\n transactiontype_flexi: false,\n ...sipDetails,\n };\n }\n\n async componentDidMount() {\n window.scrollTo({\n behavior: \"smooth\",\n top: 0,\n });\n const { transactionDetails } = this.props;\n if (!!transactionDetails && (Object.keys(transactionDetails).length > 0)) {\n this.setState(transactionDetails);\n return;\n }\n }\n\n FamilyDescriptionEmail = (event) => {\n this.setState({\n Family_Code_Email: { value: event },\n });\n };\n FamilyDescriptionPhone = (event) => {\n this.setState({\n Family_Code_Phone: { value: event },\n });\n };\n handlechangetransactiontype = () => {\n const { transactiontype_flexi } = this.state;\n if (!transactiontype_flexi) {\n this.setState({\n transactiontype_flexi: !this.state.transactiontype_flexi,\n });\n } else if (!!transactiontype_flexi) {\n this.setState({\n transactiontype_flexi: !this.state.transactiontype_flexi,\n });\n }\n };\n\n handlechangeSIPEndDateChange = () => {\n let Umrn_endDate=\"\"\n let selectedFrequency = this.state.investmentFrequency.value.FrequencyID;\n let startDateSplitting = this.state.sip_start_date.value;\n const [day, month, year] = startDateSplitting.split('/');\n const startDate = new Date(year, month - 1, day);\n const URMN_enddate =\n this.state.selectedKotm?.value[\"MANDATE END DATE\"]?.split(\"/\");\n if (this.state.selectedKotm?.value[\"MANDATE END DATE\"]) {\n Umrn_endDate = new Date().setFullYear(\n URMN_enddate[2],\n URMN_enddate[1] - 1,\n URMN_enddate[0]\n );\n }\n\n let EndDate = new Date(\"2099-12-31\");\n let endDate =\n (this.state.mode.value === \"KOTM\" ||\n this.state.mode.value === \"AOTM\")\n ? new Date(Umrn_endDate)\n : new Date(EndDate);\n \n // Calculate the difference in time (in milliseconds)\n let timeDifference = endDate - startDate;\n \n // Calculate the number of months between startDate and endDate\n let monthsDifference = (endDate.getFullYear() - startDate.getFullYear()) * 12 + (endDate.getMonth() - startDate.getMonth());\n let daysToNextYear = Math.ceil((new Date(new Date().getFullYear() + 1, new Date().getMonth(), new Date().getDate()) - new Date()) / (1000 * 60 * 60 * 24));\n\n let noofFrequency;\n if (selectedFrequency === \"Monthly\") {\n noofFrequency = monthsDifference+1;\n } else if (selectedFrequency === \"Daily\") {\n noofFrequency = Math.floor(daysToNextYear);\n } else if (selectedFrequency === \"Weekly\") {\n noofFrequency = Math.floor((timeDifference / (1000 * 60 * 60 * 24 * 7))-1);\n } else if (selectedFrequency === \"Quarterly\") {\n noofFrequency = Math.floor(monthsDifference / 3);\n } else if (selectedFrequency === \"Yearly\") {\n noofFrequency = Math.floor(monthsDifference / 12);\n } else {\n noofFrequency = \"\";\n }\n const { perpetualSip } = this.state;\n if (!perpetualSip && selectedFrequency !== \"Daily\") {\n const day = this.state?.sipDay?.value?.value\n\n this.setState({\n perpetualSip: !this.state.perpetualSip,\n sip_end_date: { value: this.state.mode.value === \"ISIP\" ? `31/12/2099` : this?.state?.selectedKotm?.value[\"MANDATE END DATE\"] },\n installments: {\n value: noofFrequency,\n placeholder: \"\",\n disabled: true,\n },\n });\n }\n if (!perpetualSip && selectedFrequency === \"Daily\" && !!this.state.sip_start_date.value) {\n const parts = this.state.sip_start_date.value.split(\"/\");\n const startDate = new Date(`${parts[2]}-${parts[1]}-${parts[0]}`);\n\n startDate.setFullYear(startDate.getFullYear() + 1);\n startDate.setDate(startDate.getDate() - 1);\n\n const formattedDate = startDate.toLocaleDateString('en-IN', { day: '2-digit', month: '2-digit', year: 'numeric' });\n\n\n this.setState({\n perpetualSip: !this.state.perpetualSip,\n sip_end_date: { value: formattedDate },\n installments: {\n value: noofFrequency,\n placeholder: \"\",\n disabled: true,\n },\n });\n }\n\n if (!!perpetualSip) {\n this.setState({\n perpetualSip: !this.state.perpetualSip,\n sipDay: { value: \"\" },\n sip_end_date: { value: \"\" },\n sip_start_date: { value: \"\" },\n mode: { value: \"\" },\n kotm: false,\n installments: {\n value: \"\",\n placeholder: \"\",\n disabled: false,\n },\n });\n }\n };\n\n // handleFundChange = async (value) => {\n // const fund = !!value ? value.value : \"\";\n // const fundValue = !!value\n // ? this.state.sipType.value === NEW || this.state.sipType.value === NEWP\n // ? fund.amc_code\n // : fund.Fund\n // : \"\";\n\n // if (!value) {\n // this.setState({\n // ...initialState,\n // funds: this.state.funds,\n // fund: { value },\n // schemes: [],\n // scheme: { value: \"\" },\n // modes: [],\n // mode: { value: \"\" },\n // euinNo: { value: \"\" },\n // radioValue: { value: \"no\" },\n // minAmount: \"\",\n // frequencies: [],\n // investmentFrequency: { value: \"\" },\n // sipDays: [],\n // sipDay: { value: \"\" },\n // minAmountValue: { value: \"\" },\n // installments: { value: \"\" },\n // sip_start_date: { value: \"\" },\n // sip_end_date: { value: \"\" },\n // email: {\n // value:\n // this.state.sipType.value === NEW ||\n // this.state.sipType.value === NEWP\n // ? this.state.email.value\n // : \"\",\n // },\n // mobile: {\n // value:\n // this.state.sipType.value === NEW ||\n // this.state.sipType.value === NEWP\n // ? this.state.mobile.value\n // : \"\",\n // },\n // installmentAmount: { value: \"\" },\n // investmentAmount: { value: \"\" },\n // });\n // return;\n // } else if (\n // !!value &&\n // !!this.state.fund.value &&\n // value.value.Fund === this.state.fund.value.value.Fund &&\n // value.value.Fund !== undefined\n // ) {\n // return;\n // } else {\n // const params = {\n // opt: PAYMENT_MODE,\n // Fund: fundValue,\n // astscheme:\n // !!this.props.investorData && !!this.props.investorData.PAN\n // ? this.props.investorData.PAN\n // : \"\",\n // };\n // const folios = this.props.fundList.reduce((prev, curr) => {\n // if (curr.Fund === fundValue && curr.sipFlag === YES) {\n // return [...prev, curr.Acno];\n // }\n // return prev;\n // }, []);\n // this.setState({\n // ...initialState,\n // funds: this.state.funds,\n // fund: { value },\n // folios: Array.from(new Set(folios)),\n // folio: { value: \"\" },\n // });\n // if (!!value) {\n // this.validateBrokerCode(fundValue)();\n // }\n // if (\n // this.state.sipType.value === NEW ||\n // this.state.sipType.value === NEWP\n // ) {\n // this.getAssetClasses(fundValue);\n // }\n // const response = await this.props.swpOptions(params);\n // if (response) {\n // const { Dtinformation } = response;\n // this.setState({\n // modes: Dtinformation,\n // minAmountValue: { value: \"\" },\n // mode: { value: \"\" },\n // });\n // }\n // }\n // };\n getUMRN = async (pass) => {\n const params = {\n Fund: \"176\",\n PAN: this.props.investorData.PAN || this.props.location.state.pan,\n Acno: 0,\n };\n const response =\n pass === \"KOTM\"\n ? await this.props.getCheckPanKotm(params)\n : await this.props.getCheckPanAotm(params);\n const umrn = await response.Table1;\n if (umrn.length > 1) {\n const maxAmt = umrn.reduce(\n (max, obj) => (obj.Amt > max ? obj.Amt : max),\n 0\n );\n const filteredData = umrn.filter((obj) => obj.Amt === maxAmt);\n this.setState({\n selectedKotm: { value: filteredData[0] },\n });\n }\n if (umrn.length === 1) {\n this.setState({\n selectedKotm: { value: umrn[0] },\n });\n }\n this.setState({\n umrn,\n });\n };\n\n validateBrokerCode = (fund) => async () => {\n const { subArnCode, arnCode } = this.state;\n if (\n !!subArnCode.value &&\n subArnCode.value === arnCode.value.split(\"-\")[1]\n ) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `(Please enter a valid Sub ARN Code)`,\n },\n });\n } else {\n const params = {\n Fund: \"176\",\n SubAgentCd: !!subArnCode.value ? `ARN-${subArnCode.value}` : \"\",\n AgentCd: arnCode.value,\n };\n const response = await this.props.validateSubBroker(params);\n\n if (!response) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `Please enter a valid Sub ARN code`,\n },\n });\n }\n }\n };\n\n handleFolioChange = (value) => {\n const folio = !!value ? value.value : \"\";\n const { funds, fund, folios, modes, mode } = this.state;\n const state = { funds, fund, folios, modes, mode };\n if (!value) {\n this.setState({\n ...initialState,\n ...state,\n folio: { value },\n });\n return;\n } else if (\n !!value &&\n !!this.state.folio.value &&\n value.value === this.state.folio.value.value\n ) {\n return;\n } else {\n const schemes = this.schemes(folio);\n this.setState({\n ...initialState,\n ...state,\n folio: { value },\n minAmountValue: { value: \"\" },\n schemes,\n schemeType: EXISTING,\n });\n }\n };\n\n changeEuin = (value) => {\n this.setState({\n euinNo: { value },\n });\n };\n getsiptenures = async () => {\n const params = {\n fund: \"102\",\n frequency: this.state.investmentFrequency.value.FrequencyID,\n scheme: this.state.scheme.value.value.Sch ||\n this.state.scheme.value.value.fm_scheme,\n trType: \"SIP\"\n }\n const response = await this.props.getSIPTenures(params)\n if (!!response.Table2.length > 0) {\n const filterTenures = response.Table2\n .filter((ele) => ele.Stepup_flag === \"Y\")\n .map((ele) => ({\n label: `${ele.SIPTen} years`,\n value: ele.SIPTen,\n multiplier: ele.SWPAMTPER\n }));\n // const defautTenure = filterTenures.find((ele) => Number(ele.value) === 20)\n this.setState({\n sipTenures: filterTenures,\n })\n }\n }\n\n changeValue = (label) => async (event) => {\n if (\n (label === \"installmentAmount\" || label === \"investmentAmount\" || label === \"flexiMaxInstallmentAmount\" || label === 'swpAmount') &&\n event.target.value.length <= 10\n ) {\n this.setState({\n [label]: { value: parseFloat(event.target.value.replace(/^0+/, \"\")) },\n });\n }\n\n if (\n (label === \"installmentAmount\" && this.state.transactionType.value === \"Freedom\")\n ) {\n const tenure = this.state.tenure.value.value;\n const value = event.target.value;\n const findMultiplier = this.state.sipTenures.find((ele) => ele.value === tenure)\n\n const amount = findMultiplier.multiplier ? value * findMultiplier.multiplier : null;\n\n this.setState({\n swpAmount: { value: amount },\n });\n }\n if (label === \"installments\" && event.target.value.length <= 4 && this.state.investmentFrequency.value.FrequencyID !== \"Daily\") {\n if (parseFloat(event.target.value) <= 9999) {\n this.setState({\n [label]: {\n value: parseFloat(event.target.value.replace(/^0+/, \"\")),\n },\n sipDay: { value: \"\" },\n sip_start_date: { value: \"\" },\n sip_end_date: { value: \"\" },\n });\n } else if (!event.target.value) {\n this.setState({\n [label]: {\n value: \"\",\n isError: true,\n errorMessage: !!event.target.value\n ? \"No. of Installments should not be more than 500\"\n : \"No. of Installments is mandatory\",\n },\n sipDay: { value: \"\" },\n sip_start_date: { value: \"\" },\n sip_end_date: { value: \"\" },\n });\n }\n }\n if (label === \"installments\" && event.target.value.length <= 3 && this.state.investmentFrequency.value.FrequencyID === \"Daily\") {\n if (parseFloat(event.target.value) <= 365) {\n this.setState({\n [label]: {\n value: event.target.value,\n },\n sipDay: { value: \"\" },\n sip_start_date: { value: \"\" },\n sip_end_date: { value: \"\" },\n });\n } else if (!event.target.value) {\n this.setState({\n [label]: {\n value: \"\",\n isError: true,\n errorMessage: !!event.target.value\n ? \"No. of Installments should not be more than 500\"\n : \"No. of Installments is mandatory\",\n },\n sipDay: { value: \"\" },\n sip_start_date: { value: \"\" },\n sip_end_date: { value: \"\" },\n swp_end_date: { value: \"\" },\n swp_start_date: { value: \"\" },\n });\n }\n }\n if (label === \"code\") {\n if (!/^[+]\\d{1,3}/.test(event.target.value)) {\n this.setState({\n [label]: {\n value: event.target.value,\n isError: true,\n errorMessage: \"Enter a valid Country Code\",\n },\n });\n } else {\n this.setState({ [label]: { value: event.target.value } });\n }\n } else if (label === \"mobile\" && event.target.value.length <= 10) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (\n (label === \"subArnCode\" || label === \"subBrokerCode\") &&\n event.target.value.length <= 20\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (label === \"mode\") {\n this.setState({\n sipDay: { value: \"\" },\n sip_start_date: { value: \"\" },\n sip_end_date: { value: \"\" },\n swp_end_date: { value: \"\" },\n swp_start_date: { value: \"\" },\n // perpetualSip: false,\n })\n // if(this.state.perpetualSip){\n // this.setState({installments:{value:\"\"}})\n // }\n if (event.target.value === \"KOTM\") {\n this.getUMRN(\"KOTM\");\n }\n if (event.target.value === \"AOTM\") {\n this.getUMRN(\"AOTM\");\n }\n this.setState({\n [label]: { value: event.target.value },\n kotm: event.target.value === \"KOTM\" || event.target.value === \"AOTM\",\n selectedKotm: { value: \"\" },\n });\n } else if (label === \"kotm\") {\n\n this.setState({\n selectedKotm: {\n value: event.target.value,\n },\n sip_end_date: !!this.state.perpetualSip\n ? { value: event.target.value[\"MANDATE END DATE\"] }\n : \"\",\n });\n } else if (label === \"radioValue\" && event.target.value === \"no\") {\n if (!this.state.euinNo.value) {\n this.setState({\n radioValue: { value: event.target.value },\n });\n } else {\n this.setState({\n [label]: { value: event.target.value },\n euinNo: { value: \"\" },\n });\n }\n } else if (label === \"email\") {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (label === \"tenure\") {\n if (!!this.state.installmentAmount.value) {\n this.setState({\n [label]: { value: event.target.value },\n swpAmount: { value: Number(this.state.installmentAmount.value) * Number(event.target.value.multiplier) },\n sip_start_date: { value: \"\" },\n sip_end_date: { value: \"\" },\n swp_start_date: { value: \"\" },\n swp_end_date: { value: \"\" },\n sipDay: { value: \"\" },\n installmentAmount:{ value : \"\" },\n swpAmount:{ value : \"\" },\n investmentAmount:{ value : \"\" }\n });\n } else {\n this.setState({\n [label]: { value: event.target.value },\n swpAmount: { value: \"\" },\n sip_start_date: { value: \"\" },\n sip_end_date: { value: \"\" },\n swp_start_date: { value: \"\" },\n swp_end_date: { value: \"\" },\n sipDay: { value: \"\" },\n installmentAmount:{ value : \"\" },\n swpAmount:{ value : \"\" },\n investmentAmount:{ value : \"\" }\n });\n }\n } else if (label === \"transactionType\") {\n const value = event.target.value\n if (value === \"Normal SIP\") {\n const minParams = {\n Fund: \"176\",\n Scheme: this.state.scheme.value.value.fm_scheme,\n Trtype: \"SIP\",\n Frequency: this.state.investmentFrequency.value.FrequencyID,\n };\n const response = await this.props.getMinimumAmount(minParams);\n\n if (response) {\n const { DtData } = response;\n\n this.setState({\n installments: { value: \"\" },\n sip_end_date: { value: \"\" },\n sip_start_date: { value: \"\" },\n swp_end_date: { value: \"\" },\n swp_start_date: { value: \"\" },\n perpetualSip: false,\n // minAmountValue: {\n // value: this.state.minAmountValue.value,\n // },\n minAmountValue: { value: DtData[0].minamt },\n minInstallment: DtData[0].mininst,\n\n // minimumLumpsumAmout: this.state.minimumLumpsumAmout,\n });\n }\n }\n if (value === \"Freedom\") {\n this.getOtherSchemes(\"EQUITY\")(\"SWP\");\n this.getsiptenures()\n\n\n }\n if (value === \"Flexi\" && this.state.investmentFrequency.value.FrequencyID === \"Monthly\") {\n this.setState({\n minInstallment: 12,\n minAmountValue: {\n value: 1000\n },\n })\n }\n if (value === \"Flexi\" && this.state.investmentFrequency.value.FrequencyID === \"Quarterly\") {\n this.setState({\n minInstallment: 4,\n minAmountValue: {\n value: 3000\n },\n })\n }\n this.setState({\n [label]: { value: value },\n });\n } else if (label === \"invName\") {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (\n label !== \"installmentAmount\" &&\n label !== \"invName\" &&\n label !== \"subArnCode\" &&\n label !== \"mode\" &&\n label !== \"installments\" &&\n label !== \"subBrokerCode\" &&\n label !== \"email\" &&\n label !== \"mobile\" &&\n label !== \"investmentAmount\" &&\n label === \"radioValue\" &&\n event.target.value !== \"no\"\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n }\n };\n\n getAssetClasses = async (fund, folio) => {\n const params = {\n Fund: \"176\",\n Folio: folio,\n };\n const assetClasses = await this.props.getAssetClasses(params);\n if (assetClasses) {\n this.setState({\n categories: assetClasses.DtData,\n });\n }\n };\n\n getOtherSchemes = (category) => async (label) => {\n const params = {\n schtype: REGULAR,\n category,\n acno:\n this.state.sipType.value === NEW || this.state.sipType.value === NEWP\n ? \"0\"\n : this.state.folio.value.value,\n fundCode: \"176\",\n trantype: SIP_TRANS_TYPE,\n };\n\n const otherSchemes = await this.props.getOtherSchemes(params);\n const FundName = \"176\";\n\n if (label === \"SIP\") {\n if (otherSchemes) {\n this.setState({\n schemes: otherSchemes.DtData,\n });\n }\n } else {\n if (otherSchemes) {\n const onlyEqityExcepttaxsaver = otherSchemes.DtData.filter((ele) => ele.fm_scheme !== \"TF\" && ele.fm_option === \"G\" && ele.fm_scheme !== \"GA\" && ele.fm_scheme !== \"NH\")\n this.setState({\n swpSchemes: onlyEqityExcepttaxsaver,\n minAmountValue: {\n value: 2000\n },\n });\n }\n }\n };\n\n // schemes = (folio) => {\n // return this.props.fundList.reduce((prev, curr) => {\n // if (\n // this.state.sipType.value === NEW &&\n // !!this.state.fund.value &&\n // this.state.fund.value.value\n // ? curr.Fund === \"176\"\n // : curr.Fund === \"176\" &&\n // curr.Acno === folio &&\n // curr.sipSchFlg === YES\n // ) {\n // return [...prev, curr];\n // }\n // return prev;\n // }, []);\n // };\n\n schemes = (folio) => {\n if (\n this.state.sipType.value === EXISTING ||\n this.state.sipType.value === EXISTINGP\n ) {\n return this.props.fundList.reduce((prev, curr) => {\n if (\n parseFloat(curr.Fund) === 176 &&\n parseFloat(curr.Acno) === parseFloat(folio) &&\n curr.sipSchFlg === YES\n ) {\n return [...prev, curr];\n }\n return prev;\n }, []);\n }\n };\n\n handleCategoryChange = (label) => (event) => {\n const category = event.target.value;\n const { funds, fund, folios, modes, mode, folio, categories } = this.state;\n const state = {\n funds,\n fund,\n folios,\n modes,\n mode,\n folio,\n categories,\n };\n if (!category) {\n this.setState({\n ...initialState,\n ...state,\n category: { value: \"\" },\n transactionType: { value: \"Normal SIP\" },\n });\n return;\n }\n this.setState({\n ...initialState,\n ...state,\n category: { value: category },\n transactionType: { value: \"Normal SIP\" },\n });\n this.getOtherSchemes(category)(\"SIP\");\n };\n getFolios = () => {\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (parseFloat(curr.Fund) === 176 && curr.sipFlag === YES) {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n this.setState({\n folios: Array.from(new Set(folios)),\n });\n };\n handleSipTypeChange = async (event) => {\n const sipType = event.target.value;\n const { communicationDetails, investorData, location } = this.props;\n const { state } = location;\n\n const detailsEmail = communicationDetails.find(\n (detail) => detail.PAN === investorData.PAN && !!detail.email\n );\n const detailsMobile = communicationDetails.find(\n (detail) => detail.PAN === investorData.PAN && !!detail.Mobile\n );\n\n const Setstate = {\n ...initialState,\n schemeType: EXISTING,\n invName: {\n value:\n !!investorData && !!investorData.invname\n ? investorData.invname\n : this.props.kycData.invname,\n },\n email: {\n value:\n (sipType === NEW || sipType === NEWP) &&\n // !!location.state &&\n // !location.state.pan &&\n !!detailsEmail &&\n !!detailsEmail.email\n ? detailsEmail.email\n : \"\",\n },\n mobile: {\n value:\n (sipType === NEW || sipType === NEWP) &&\n // !!location.state &&\n // !location.state.pan &&\n !!detailsMobile &&\n !!detailsMobile.Mobile\n ? detailsMobile.Mobile\n : \"\",\n },\n disbleEmail:\n !!detailsEmail &&\n !!detailsEmail.email &&\n (sipType === NEW || sipType === NEWP)\n ? true\n : false,\n disbleMobile:\n !!detailsMobile &&\n (sipType === NEW || sipType === NEWP) &&\n !!detailsMobile.Mobile\n ? true\n : false,\n };\n\n if (!sipType) {\n this.setState({\n ...state,\n sipType: { value: event.target.value },\n minAmountValue: { value: \"\" },\n });\n return;\n } else if (event.target.value === this.state.sipType.value) {\n return;\n }\n const params = {\n opt: PAYMENT_MODE,\n Fund: \"176\",\n astscheme:\n !!this.props.investorData && !!this.props.investorData.PAN\n ? this.props.investorData.PAN\n : !!state && !!state.pan\n ? state.pan\n : \"\",\n };\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (parseFloat(curr.Fund) === 176 && curr.sipFlag === YES) {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n\n this.setState({\n ...Setstate,\n sipType: { value: sipType },\n funds: [],\n fund: { value: { value: \"176\" } },\n folios: Array.from(new Set(folios)),\n folio: { value: \"\" },\n swp_end_date: { value: \"\" },\n swp_start_date: { value: \"\" },\n });\n if (!!sipType) {\n this.validateBrokerCode(\"176\")();\n }\n if (sipType === NEW || sipType === NEWP) {\n this.getAssetClasses(\"176\");\n }\n const response = await this.props.swpOptions(params);\n if (response) {\n const { Dtinformation } = response;\n this.setState({\n modes: Dtinformation,\n minAmountValue: { value: \"\" },\n mode: { value: \"\" },\n });\n }\n // const { fundList, fundsList } = this.props;\n // const funds =\n // sipType === NEW || sipType === NEWP\n // ? fundsList\n // : fundList.reduce((prev, curr) => {\n // if (curr.sipFlag === YES) {\n // const findIndex =\n // prev.findIndex((fund) => fund.Fund === curr.Fund) !== -1;\n // if (!findIndex) {\n // return [...prev, { Fund: curr.Fund, FundDesc: curr.FundDesc }];\n // }\n // }\n // return prev;\n // }, []);\n\n // this.setState({\n // ...state,\n // sipType: { value: event.target.value },\n // minAmountValue: { value: \"\" },\n // funds,\n // });\n };\n\n changeSchemeType = (value) => () => {\n const { funds, fund, folios, modes, mode, folio } = this.state;\n const state = {\n funds,\n fund,\n folios,\n modes,\n mode,\n folio,\n };\n if (value === this.state.schemeType) {\n return;\n }\n if (value === EXISTING || value === EXISTINGP) {\n const schemes = this.schemes(this.state.folio.value.value);\n this.setState({\n ...initialState,\n ...state,\n schemeType: value,\n minAmountValue: { value: \"\" },\n schemes,\n transactiontype_flexi: false,\n transactionType: \"\",\n\n });\n } else {\n this.setState({\n ...initialState,\n minAmountValue: { value: \"\" },\n ...state,\n schemeType: value,\n });\n if (!!this.state.fund.value && !!this.state.folio.value) {\n this.getAssetClasses(\n this.state.sipType.value === NEW\n ? this.state.fund.value.value.amc_code\n : this.state.fund.value.value.Fund,\n this.state.folio.value.value\n );\n }\n }\n };\n handleSwpSchemeChange = async (value) => {\n console.log('value', value)\n const minParams = {\n Fund: \"176\",\n Scheme: value.value.fm_scheme,\n Trtype: \"SWP\",\n Frequency: 'Monthly',\n };\n const response = await this.props.getMinimumAmount(minParams);\n\n if (response) {\n\n this.setState({\n swpScheme: { value },\n minSwpAmountValue: {value:response.DtData[0].minamt}\n })\n\n }\n }\n handleSchemeChange = (value) => {\n const scheme = !!value ? value.value : \"\";\n\n const {\n funds,\n fund,\n folios,\n modes,\n mode,\n folio,\n categories,\n category,\n schemes,\n } = this.state;\n const state = {\n funds,\n fund,\n folios,\n modes,\n mode,\n folio,\n categories,\n category,\n schemes,\n };\n if (!value) {\n this.setState({\n ...initialState,\n ...state,\n scheme: { value: value },\n });\n return;\n }\n const checkFoilioisMinororNot = this.props.fundList.find((ele)=>ele.Acno ===this.state.folio.value.value)\n this.setState({\n ...initialState,\n ...state,\n scheme: { value },\n multiples: !!scheme && !!scheme.multiples ? scheme.multiples : \"\",\n minAmount: !!scheme ? scheme.sipminamt || scheme.SIPminamt : \"\",\n minAmountValue: {\n value: !!scheme ? scheme.sipminamt || scheme.SIPminamt : \"\",\n },\n minimumLumpsumAmout:\n this.state.sipType.value === NEW || this.state.sipType.value === NEWP\n ? scheme.fm_newpur\n : this.state.sipType.value === EXISTINGP && this.state.schemeType !== 'NEW'\n ? scheme.MinAmt\n : scheme.fm_newpur,\n transactionType: { value: \"Normal SIP\" },\n freedomorflexiSIPorNot: !!scheme ? (scheme.SubCategory === \"EQUITY\" && checkFoilioisMinororNot?.minorflag !== \"Y\" && scheme.Sch !== \"TF\" && scheme.Opt === \"G\" && scheme.Sch !== \"GA\" && scheme.Sch !== \"NH\") || (this.state.category.value === \"EQUITY\" && scheme.fm_scheme !== \"TF\" && scheme.fm_option === \"G\" && scheme.fm_scheme !== \"GA\" && scheme.fm_scheme !== \"NH\") : false\n });\n const params = {\n opt: INVESTMENT_FREQUENCY,\n fund: \"176\",\n };\n this.getInvestmentFrequency(params, \"frequencies\");\n };\n\n getInvestmentFrequency = async (params, label) => {\n const response = await this.props.swpOptions(params);\n if (response) {\n this.setState({\n [label]: response.Dtinformation,\n });\n }\n };\n\n changeFrequency = async (event) => {\n const investmentFrequency = event.target.value;\n let minAmount = \"\";\n let minInstallment = \"\";\n const {\n funds,\n fund,\n folios,\n modes,\n mode,\n folio,\n categories,\n category,\n schemes,\n scheme,\n frequencies,\n } = this.state;\n const state = {\n funds,\n fund,\n folios,\n modes,\n mode,\n folio,\n categories,\n category,\n schemes,\n scheme,\n frequencies,\n };\n if (!investmentFrequency) {\n this.setState({\n ...initialState,\n ...state,\n installments: { value: \"\" },\n sip_end_date: { value: \"\" },\n sip_start_date: { value: \"\" },\n swp_end_date: { value: \"\" },\n swp_start_date: { value: \"\" },\n sipDay: { value: \"\" },\n perpetualSip: false,\n investmentFrequency: { value: investmentFrequency },\n });\n return;\n }\n if (this.state.sipType.value === NEW || this.state.sipType.value === NEWP) {\n const minParams = {\n Fund: \"176\",\n Scheme: this.state.scheme.value.value.fm_scheme,\n Trtype: \"SIP\",\n Frequency: event.target.value.FrequencyID,\n };\n const response = await this.props.getMinimumAmount(minParams);\n\n if (response) {\n const { DtData } = response;\n minAmount = DtData[0].minamt;\n minInstallment = DtData[0].mininst;\n }\n }\n if (\n this.state.sipType.value === EXISTING ||\n this.state.sipType.value === EXISTINGP\n ) {\n const minParams = {\n Fund: \"176\",\n\n Scheme:\n this.state.scheme.value.value.Sch ||\n this.state.scheme.value.value.fm_scheme,\n Trtype: \"SIP\",\n Frequency: event.target.value.FrequencyID,\n };\n\n const response = await this.props.getMinimumAmount(minParams);\n\n if (!!response && !response.error) {\n const { DtData } = response;\n minAmount = DtData[0].minamt;\n minInstallment = DtData[0].mininst;\n this.setState({\n investmentFrequency: { value: investmentFrequency },\n transactionType: { value: \"Normal SIP\" },\n installments: { value: \"\" },\n sip_end_date: { value: \"\" },\n sip_start_date: { value: \"\" },\n swp_end_date: { value: \"\" },\n swp_start_date: { value: \"\" },\n perpetualSip: false,\n // minAmountValue: {\n // value: this.state.minAmountValue.value,\n // },\n minAmountValue: { value: minAmount },\n minInstallment: minInstallment,\n\n // minimumLumpsumAmout: this.state.minimumLumpsumAmout,\n });\n } else {\n alert(response.error)\n }\n }\n\n\n\n const params = {\n opt: SIP_DAY,\n fund: \"176\",\n astscheme: investmentFrequency.FrequencyID,\n };\n this.getInvestmentFrequency(params, \"sipDays\");\n\n const modeparams = {\n opt: PAYMENT_MODE,\n Fund: \"176\",\n astscheme:\n !!this.props.investorData && !!this.props.investorData.PAN\n ? this.props.investorData.PAN\n : !!this.state && !!this.state.pan\n ? this.state.pan.value\n : \"\",\n customfund: \"176\",\n };\n const res = await this.props.swpOptions(modeparams);\n if (res) {\n const { Dtinformation } = res;\n this.setState({\n modes: Dtinformation,\n });\n }\n };\n changeSipDay = (value) => {\n const sipDay = !!value ? value.value : \"\";\n this.setState({\n sipDay: { value: value },\n installmentAmount: { value: \"\" },\n investmentAmount: { value: \"\" },\n flexiMaxInstallmentAmount: { value: \"\" }\n });\n if (!!sipDay) {\n this.getSipEndDate(sipDay);\n } else if (!this.state.installments.value) {\n this.setState({\n sipDay: { value: \"\" },\n installments: {\n isError: true,\n errorMessage: \"Please enter Instalments\",\n },\n });\n this.installmentsField.focus();\n }\n };\n\n getSipEndDate = async (sipDay) => {\n const params = {\n fund: \"176\",\n sch:\n this.state.scheme.value.value.Sch ||\n this.state.scheme.value.value.fm_scheme,\n StartDate: sipDay,\n Installments: this.state.transactionType.value !== \"Freedom\" ? this.state.installments.value : Number(this.state.tenure.value.value) * 12,\n Frequency: this.state.investmentFrequency.value.FrequencyID,\n trtype: \"SIP\",\n };\n try {\n const response = await this.props.CalcSIPEnddt(params);\n const isFreedom = this.state.transactionType.value === \"Freedom\"\n let res = \"\"\n if (response) {\n const {\n DtData: [dates],\n } = response;\n const { SIP_EndDate, SIP_StartDate } = dates;\n if (isFreedom) {\n res = addOneMonthAndTwentyYears(SIP_EndDate,2099)\n }\n this.setState({\n sip_start_date: { value: SIP_StartDate },\n sip_end_date: { value: SIP_EndDate },\n installments: { value: this.state.transactionType.value !== \"Freedom\" ? this.state.installments.value : Number(this.state.tenure.value.value) * 12 },\n swp_start_date: { value: !!isFreedom ? res.nextMonthDate : \"\" },\n swp_end_date: { value: !!isFreedom ? res.twentyYearsLaterDate : \"\" }\n })\n }\n } catch (err) {\n alert(err)\n }\n };\n\n showError = (label) => (event) => {\n const {\n [label]: { value },\n } = this.state;\n // if (label === \"investmentAmount\") {\n // this.setState({\n // [label]: {\n // value,\n // isError:\n // label === \"investmentAmount\"\n // ? this.state.minAmountValue.value <\n // this.state.investmentAmount.value\n // ? true\n // : !value\n // : \"\",\n // errorMessage:\n // label === \"investmentAmount\"\n // ? this.state.minAmountValue.value <\n // this.state.investmentAmount.value\n // ? `Investment Amount should be ${this.state.minAmountValue.value}(INR)`\n // : \"\"\n // : \"\"\n // }\n // });\n // }\n // if (label === \"installmentAmount\") {\n // this.setState({\n // [label]: {\n // value,\n // isError:\n // label === \"installmentAmount\"\n // ? this.state.minAmountValue.value <\n // this.state.installmentAmount.value\n // ? true\n // : !value\n // : \"\",\n // errorMessage:\n // label === \"installmentAmount\"\n // ? this.state.minAmountValue.value <\n // this.state.installmentAmount.value\n // ? `Installment Amount should be ${this.state.minAmountValue.value}(INR)`\n // : \"\"\n // : \"\"\n // }\n // });\n // }\n if (label === \"email\") {\n this.setState({\n [label]: {\n value,\n isError: !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n )\n ? true\n : !value,\n errorMessage: !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n )\n ? `Enter an vaild Email ID`\n : \"\",\n },\n });\n } else if (label === \"code\") {\n if (!/^[+]\\d{1,3}/.test(event.target.value)) {\n this.setState({\n [label]: {\n value: \"\",\n isError: true,\n errorMessage: \"Enter a valid Country Code\",\n },\n });\n }\n } else if (label === \"mobile\") {\n this.setState({\n [label]: {\n value,\n isError: !/^[6-9]\\d{9}$/.test(this.state.mobile.value)\n ? true\n : !value,\n errorMessage: !/^[6-9]\\d{9}$/.test(this.state.mobile.value)\n ? `Enter a valid Mobile`\n : !value,\n },\n });\n } else if (label === \"investmentAmount\") {\n if (\n +this.state.selectedKotm.value.Amt < +this.state.investmentAmount.value\n ) {\n this.setState({\n investmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: `Lumpsum amount cannot exceed\n mandate registration limit of ${this.state.selectedKotm.value.Amt}.`,\n },\n });\n this.investmentAmount.focus();\n return;\n }\n return;\n } else if (label === \"flexiMaxInstallmentAmount\") {\n if (\n this.state.installmentAmount.value > this.state.flexiMaxInstallmentAmount.value\n ) {\n this.setState({\n flexiMaxInstallmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: `Flexi Max Installment Amount should be more than ${this.state.installmentAmount.value}.`,\n },\n });\n return;\n }\n return;\n } else if (\n +this.state.selectedKotm.value.Amt < +this.state.installmentAmount.value\n ) {\n this.setState({\n installmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: `SIP installment amount cannot exceed\n mandate registration limit of ${this.state.selectedKotm.value.Amt}.`,\n },\n });\n this.installmentAmount.focus();\n return;\n } if (label === \"installments\") {\n let selectedFrequency = this.state.investmentFrequency.value.FrequencyID;\n let startDate = new Date();\n let endDate = new Date(\"2099-12-31\");\n let monthsDifference =\n (endDate.getFullYear() - startDate.getFullYear()) * 12 +\n (endDate.getMonth() - startDate.getMonth());\n let noofFrequency =\n selectedFrequency === \"Monthly\"\n ? monthsDifference - 1\n : selectedFrequency === \"Daily\"\n ? Math.floor((endDate - startDate) / (1000 * 60 * 60 * 24))\n : selectedFrequency === \"Weekly\"\n ? Math.floor((endDate - startDate) / (1000 * 60 * 60 * 24 * 7))\n : selectedFrequency === \"Quarterly\"\n ? Math.floor(monthsDifference / 3)\n : selectedFrequency === \"Yearly\"\n ? Math.floor(monthsDifference / 12)\n : \"\";\n\n if (value > noofFrequency) {\n this.setState({\n [label]: {\n value: \"\",\n isError: true,\n errorMessage: `Number of instalments should NOT be more than ${noofFrequency}`,\n },\n });\n return;\n } else {\n if (selectedFrequency === \"Daily\" && (value < 92 || value > 365)) {\n this.setState({\n [label]: {\n value: \"\",\n isError: true,\n errorMessage:\n \"Min instalment should be 92 (3 Months).Max instalment should be one year.Sip should not trigger for Sat,Sun and Holidays\",\n },\n });\n return;\n } else {\n this.setState({\n [label]: {\n value,\n isError:\n !!this.state.investmentFrequency.value &&\n !!this.state.minInstallment &&\n this.state.installments.value <\n this.state.minInstallment\n ? true\n : !value,\n errorMessage:\n \"No. of installments should be more than the minimum installments\",\n },\n });\n }\n }\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n errorMessage: `${label} is mandatory*`,\n },\n });\n }\n }\n\n submit = async () => {\n const {\n sipTypes,\n installments,\n funds,\n fund,\n folio,\n sipTenures,\n folios,\n arnCode,\n subArnCode,\n invName,\n email,\n subBrokerCode,\n schemeType,\n category,\n mobile,\n categories,\n schemes,\n modes,\n euinNo,\n perpetualSip,\n radioValue,\n minimumLumpsumAmout,\n // installmentAmount,\n minSwpAmountValue,\n transactiontype_flexi,\n minAmount,\n minAmountValue,\n frequencies,\n sipDays,\n investmentAmount,\n disbleEmail,\n disbleMobile,\n multiples,\n code,\n Family_Code_Email,\n Family_Code_Phone,\n transactionType,\n minInstallment,\n kotm,\n selectedKotm,\n umrn,\n swpSchemes,\n freedomorflexiSIPorNot,\n flexiMaxInstallmentAmount,\n tenure,\n swpCategory,\n swpAmount,\n swpScheme,\n swp_end_date,\n swp_start_date,\n ...others\n } = this.state;\n const isFlexi = this.state.transactionType.value === \"FLexi\"\n const isFreedom = this.state.transactionType.value === \"Freedom\"\n const modifiedOthers = {\n ...others,\n ...(isFlexi && { flexiMaxInstallmentAmount: this.state.flexiMaxInstallmentAmount }),\n ...(isFreedom && {\n tenure: this.state.tenure,\n swpCategory: this.state.swpCategory,\n swpScheme: this.state.swpScheme,\n }),\n };\n const { location } = this.props;\n const { state } = location;\n let d1, d2;\n const split_enddate = this?.state?.sip_end_date?.value.split(\"/\");\n const split_mandatedate =\n this?.state?.selectedKotm?.value[\"MANDATE END DATE\"]?.split(\"/\");\n d1 = new Date(\n Number(split_enddate[2]),\n Number(split_enddate[1]) - 1,\n Number(split_enddate[0])\n );\n if (this?.state?.selectedKotm?.value[\"MANDATE END DATE\"]?.split(\"/\")) {\n d2 = new Date(\n Number(split_mandatedate[2]),\n Number(split_mandatedate[1]) - 1,\n Number(split_mandatedate[0])\n );\n }\n if (!this.state.installmentAmount.value) {\n this.setState({\n installmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: \"installmentAmount is mandatory\",\n },\n });\n }\n if (!this.state.flexiMaxInstallmentAmount.value && this.state.transactionType.value === \"Flexi\") {\n this.setState({\n flexiMaxInstallmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: \"Flexi Max Installment Amount is mandatory\",\n },\n });\n return;\n }\n if (+this.state.installmentAmount.value > 1000000) {\n this.setState({\n installmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: `Amount should be less than or equal to 1,000,000`,\n },\n });\n return;\n }\n if (+this.state.flexiMaxInstallmentAmount.value > 1000000) {\n this.setState({\n flexiMaxInstallmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: `Amount should be less than or equal to 1,000,000`,\n },\n });\n return;\n }\n if (!this.state.selectedKotm.value && kotm) {\n this.setState({\n selectedKotm: {\n value: \"\",\n isError: true,\n errorMessage: \"UMRN is mandatory*\",\n },\n });\n }\n if (\n !this.state.Family_Code_Email.value &&\n this.state.sipType.value === NEW\n ) {\n this.setState({\n Family_Code_Email: {\n value: \"\",\n isError: true,\n errorMessage: \"Email Family Description is mandatory*\",\n },\n });\n return;\n }\n if (\n !this.state.Family_Code_Phone.value &&\n this.state.sipType.value === NEW\n ) {\n this.setState({\n Family_Code_Phone: {\n value: \"\",\n isError: true,\n errorMessage: \"Mobile Family Description is mandatory*\",\n },\n });\n return;\n }\n if (!this.state.email.value) {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: \"Email ID is mandatory*\",\n },\n });\n }\n if (isFreedom ) {\n const findMultiplier = this.state.sipTenures.find((ele) => ele.value === this.state.tenure.value.value)\n const amount = findMultiplier.multiplier ? Number(this.state.installmentAmount.value) * findMultiplier.multiplier : null;\n // if (!!this.state.installmentAmount.value && (Number(this.state.swpAmount.value) > Number(amount))) {\n // this.setState({\n // swpAmount: {\n // value: \"\",\n // isError: true,\n // errorMessage: `Withdrawal amount should be less than ${amount}`\n // },\n // });\n // return;\n // }\n if ((Number(this.state.swpAmount.value) < Number(this.state.minSwpAmountValue.value))) {\n this.setState({\n swpAmount: {\n value: \"\",\n isError: true,\n errorMessage: `Withdrawal amount should be greater than ${this.state.minSwpAmountValue.value} `\n },\n });\n return;\n }\n }\n if (!this.state.installments.value && !this.state.perpetualSip && !isFreedom) {\n this.setState({\n installments: {\n value: \"\",\n isError: true,\n errorMessage: \"No of Installments is Mandatory\",\n },\n });\n }\n if (!this.state.invName.value) {\n this.setState({\n invName: {\n value: \"\",\n isError: true,\n errorMessage: \"Investor name is mandatory*\",\n },\n });\n }\n if (\n !/^[+]\\d{1,3}/.test(this.state.code.value) &&\n (this.state.sipType.value === NEW || this.state.sipType.value === NEWP)\n ) {\n this.setState({\n code: {\n value: \"\",\n isError: true,\n errorMessage: !code.value\n ? \"Country Code is Mandatory\"\n : \"Enter a valid Country Code\",\n },\n });\n return;\n }\n if (!this.state.mobile.value) {\n this.setState({\n mobile: {\n value: \"\",\n isError: true,\n errorMessage: \"Mobile is mandatory*\",\n },\n });\n }\n\n if (!this.state.folio.value) {\n this.setState({\n folio: {\n value: \"\",\n isError: true,\n errorMessage: \"Folio is mandatory*\",\n },\n });\n }\n if (!this.state.category.value) {\n this.setState({\n category: {\n value: \"\",\n isError: true,\n errorMessage: \"Category is mandatory*\",\n },\n });\n }\n if (!this.state.investmentAmount.value) {\n this.setState({\n investmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: \"Investment amount is mandatory*\",\n },\n });\n }\n if (!this.state.euinNo.value) {\n this.setState({\n euinNo: {\n value: \"\",\n isError: true,\n },\n });\n }\n if (\n this.state.sipType.value === EXISTINGP && (this.state.installmentAmount.value > this.state.investmentAmount.value) && !isFreedom\n ) {\n this.setState({\n investmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: \"Lumpsum Amount should be greater than SIP Amount\",\n },\n });\n return;\n }\n if (kotm && !this.state.selectedKotm.value) {\n this.setState({\n selectedKotm: {\n value: \"\",\n errorMessage: \"Please select umrn no to proceed\"\n }\n })\n return;\n }\n\n const keys = Object.keys(modifiedOthers);\n\n const findError = keys.every((key) => !!modifiedOthers[key].value);\n\n const arn = this.state.arnCode.value.split(\"-\");\n if (!findError) {\n keys.forEach((key) => {\n !modifiedOthers[key].value &&\n this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage: `${key.toLowerCase()} is mandatory*`,\n },\n });\n });\n const firstErroredKey = keys.find((key) => !modifiedOthers[key].value);\n switch (firstErroredKey) {\n case \"sipType\":\n this.sipTypeField.focus();\n break;\n // case \"fund\":\n // this.fundField.focus();\n // break;\n case \"scheme\":\n this.schemeField.focus();\n break;\n case \"investmentFrequency\":\n this.investmentFrequency.focus();\n break;\n case \"sipDay\":\n this.sipDay.focus();\n break;\n case \"installmentAmount\":\n this.installmentAmount.focus();\n break;\n case \"email\":\n this.emailField.focus();\n break;\n case \"mobile\":\n this.mobileField.focus();\n break;\n }\n } else if (\n invName.value === \"\" &&\n (this.state.sipType.value === NEW || this.state.sipType.value === NEWP)\n ) {\n this.setState({\n invName: {\n value: \"\",\n isError: true,\n errorMessage: \"Investor name is mandatory*\",\n },\n });\n this.invNameField.focus();\n return;\n } else if (others.sipType === EXISTING && !folio.value) {\n this.setState({ folio: { ...folio, isError: true } });\n this.folioField.focus();\n return;\n } else if (\n (others.sipType.value === NEW || schemeType === NEW) &&\n !category.value\n ) {\n this.setState({ category: { ...category, isError: true } });\n this.categoryField.focus();\n return;\n } else if (\n (others.sipType.value === NEW || others.sipType.value === NEWP) &&\n (!email.value ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(email.value))\n ) {\n this.setState({\n email: {\n ...email,\n isError: true,\n errorMessage: \"Please enter a valid Email ID\",\n },\n });\n this.emailField.focus();\n return;\n } else if (\n others.sipType.value === NEW &&\n (!mobile.value || !/^[6-9]\\d{9}$/.test(mobile.value))\n ) {\n this.setState({ mobile: { ...mobile, isError: true } });\n this.mobileField.focus();\n return;\n } else if (radioValue.value === \"no\" && !euinNo.value) {\n this.setState({\n euinNo: { ...euinNo, isError: true },\n });\n this.euinField.focus();\n return;\n } else if (\n (others.sipType.value === NEW || others.sipType.value === EXISTINGP) &&\n (!investmentAmount.value ||\n parseFloat(investmentAmount.value) <\n parseFloat(this.state.minimumLumpsumAmout))\n ) {\n if (\n parseFloat(investmentAmount.value) <\n parseFloat(this.state.minimumLumpsumAmout)\n ) {\n this.setState({\n investmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: `Lumpsum amount should be more than ${this.state.minimumLumpsumAmout}`,\n },\n });\n } else {\n this.setState({\n investmentAmount: { ...investmentAmount, isError: true },\n });\n }\n\n this.investmentAmount.focus();\n return;\n } else if (arn[1] === this.state.subArnCode.value) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `and ARN code should not match `,\n },\n });\n } else if (\n !!this.state.minInstallment && !isFreedom &&\n this.state.installments.value <\n this.state.minInstallment\n ) {\n this.installmentsField.focus();\n this.setState({\n installments: {\n value: \"\",\n isError: true,\n errorMessage: `Please check minimum no. of installments`,\n },\n });\n } else if (\n this.state.minAmountValue.value > this.state.installmentAmount.value\n ) {\n this.setState({\n installmentAmount: {\n value: \"\",\n isError: true,\n errorMessage: `Minimum Instalment Amount should be ${this.state.minAmountValue.value} (₹)`,\n },\n });\n this.installmentAmount.focus();\n return;\n } else if (d1 > d2) {\n this.setState({\n sip_end_date: {\n value: \"\",\n isError: true,\n errorMessage: `SIP end date cannot exceed mandate validity\n date of ${selectedKotm.value[\"MANDATE END DATE\"]}.`,\n },\n });\n return;\n } else {\n const { transactionType } = this.state;\n this.props.setSipDetails(this.state);\n const { location } = this.props;\n const { state } = location;\n const { communicationDetails, investorData } = this.props;\n const Xmobile = communicationDetails.find(\n (detail) =>\n detail.Fund === this.state.fund.value.value &&\n detail.Acno === this.state.folio.value.value &&\n detail.PAN === investorData.PAN &&\n !!detail.Mobile\n );\n const Xemail = communicationDetails.find(\n (detail) =>\n detail.Fund === this.state.fund.value.value &&\n detail.Acno === this.state.folio.value.value &&\n detail.PAN === investorData.PAN &&\n !!detail.email\n );\n\n const Email = !!Xemail && !!Xemail.email ? Xemail.email : \"\";\n const Mobile = !!Xmobile && !!Xmobile.Mobile ? Xmobile.Mobile : \"\";\n if (\n others.sipType.value === NEW ||\n others.sipType.value === NEWP ||\n others.sipType.value === EXISTINGP\n ) {\n const { investorData } = this.props;\n const params = {\n InvestorName: this.state.invName.value || \"\",\n i_entby: this.props.userId,\n trtype: PURCHASE,\n Desci: \"Yes~S~\",\n SubbrokerArn: !!this.state.subArnCode.value\n ? `ARN-${subArnCode.value}`\n : \"\",\n ARNCode: this.state.arnCode.value,\n EuinCode:\n this.state.radioValue.value === \"no\"\n ? this.state.euinNo.value.value\n : \"\",\n i_Userid: this.props.userId,\n Mobile: Mobile,\n PanNo: investorData.PAN,\n Email: Email,\n fEmailFlag: this.state.Family_Code_Email.value.value,\n fMobileFlag: this.state.Family_Code_Phone.value.value,\n i_Acno:\n others.sipType.value === EXISTINGP\n ? this.state.folio.value.value\n : \"0\",\n Subbroker: this.state.subBrokerCode.value,\n i_Fund: \"176\",\n i_UntAmtValue:\n this.state.sipType.value === NEW ||\n this.state.sipType.value === EXISTINGP\n ? this.state.investmentAmount.value\n : \"\",\n EUINFlag: this.state.radioValue.value === \"no\" ? NO : YES,\n EuinValid: this.state.radioValue.value === \"no\" ? NO : YES,\n noofinstallments: this.state.installments.value,\n i_Scheme:\n this.state.scheme.value.value.Sch ||\n this.state.scheme.value.value.fm_scheme,\n i_Plan:\n this.state.scheme.value.value.Pln ||\n this.state.scheme.value.value.fm_plan,\n i_Option:\n this.state.scheme.value.value.Opt ||\n this.state.scheme.value.value.fm_option,\n i_oldihno: \"0\",\n i_InvDistFlag: \"S\",\n sipenddt: new Date(\n this.state.sip_end_date.value.split(\"/\").reverse().join(\"/\")\n ).toLocaleDateString(\"en-US\"),\n sipstartdt: new Date(\n this.state.sip_start_date.value.split(\"/\").reverse().join(\"/\")\n ).toLocaleDateString(\"en-US\"),\n sipfrequency: this.state.investmentFrequency.value.FrequencyID,\n sipamount: this.state.installmentAmount.value,\n ModuleName: \"Webile\",\n paymode: this.state.mode.value,\n countrycode: this.state.code.value,\n subtrtype: { Flexi: \"fsip\", Freedom: \"FreedomSIP\" }[this.state.transactionType?.value] || \"\",\n FlexiMaxAmount: this.state.transactionType?.value === \"Flexi\" ? this.state.flexiMaxInstallmentAmount.value : this.state.transactionType?.value === \"Freedom\" ? this.state.swpAmount.value : 0,\n UMRN: this.state.selectedKotm?.value?.UMRNNO,\n Freedom_scheme: isFreedom ? this.state.swpScheme.value.value.Sch ||\n this.state.swpScheme.value.value.fm_scheme : \"\",\n Freedom_Plan: isFreedom ? this.state.swpScheme.value.value.Pln ||\n this.state.swpScheme.value.value.fm_plan : \"\",\n Freedom_option: isFreedom ? this.state.swpScheme.value.value.Opt ||\n this.state.swpScheme.value.value.fm_option : \"\",\n SWPStartdate: isFreedom ? new Date(this.state.swp_start_date.value.split(\"/\").reverse().join(\"/\")).toLocaleDateString(\"en-US\", {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric'\n }) : \"\",\n SWPEnddate: isFreedom ? new Date(this.state.swp_end_date.value.split(\"/\").reverse().join(\"/\")).toLocaleDateString(\"en-US\", {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric'\n }) : \"\",\n AdvanceSwitchDate: isFreedom ? new Date(addFifteenDays(this.state.sip_end_date.value).split(\"/\").reverse().join(\"/\")).toLocaleDateString(\"en-US\", {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric'\n }) : \"\"\n };\n const response = await this.props.submitPurchaseData(params);\n\n if (response) {\n const {\n DtData: [purchaseData],\n } = response;\n const confirmationParams = {\n Trtype: PURCHASE,\n fund: \"176\",\n\n Refno: purchaseData.refno,\n ModuleName: \"Webile\",\n };\n const confirmationResponse =\n await this.props.showPurchaseConfirmation(confirmationParams);\n\n if (confirmationResponse) {\n this.props.saveTransactionDetails(this.state);\n this.props.history.push({\n pathname: INVESTOR_URL + \"/sip/digital/transact/confirm\",\n state: {\n title: \"SIP\",\n type: SIP,\n Folio:{value:this.state.folio.value.value},\n InvestorEmail:\n this.state.sipType.value === NEW ||\n this.state.sipType.value === NEWP\n ? this.state.email.value\n : \"\",\n InvestorMobile:\n this.state.sipType.value === NEW ||\n this.state.sipType.value === NEWP\n ? this.state.mobile.value\n : \"\",\n arnCode: this.state.arnCode.value,\n scheme: {\n Fund: \"176\",\n },\n fEmailFlag: this.state.Family_Code_Email.value,\n fMobileFlag: this.state.Family_Code_Phone.value,\n UMRN: this.state.selectedKotm?.value?.UMRNNO,\n },\n });\n }\n }\n } else {\n this.props.saveTransactionDetails(this.state);\n this.props.history.push({\n pathname: INVESTOR_URL + \"/sip/digital/transact/confirm\",\n state: {\n title: \"SIP\",\n type: SIP,\n InvestorEmail:\n this.state.sipType.value === NEW ||\n this.state.sipType.value === NEWP\n ? this.state.email.value\n : \"\",\n InvestorMobile:\n this.state.sipType.value === NEW ||\n this.state.sipType.value === NEWP\n ? this.state.mobile.value\n : \"\",\n arnCode: this.state.arnCode.value,\n Folio: { value: this.state.folio.value.value },\n scheme: {\n Fund: \"176\",\n },\n UMRN: this.state.selectedKotm.value.UMRNNO,\n },\n });\n }\n }\n };\n\n render() {\n const {\n sipType,\n schemeType,\n fund,\n sipTypes,\n funds,\n folios,\n folio,\n arnCode,\n subArnCode,\n subBrokerCode,\n modes,\n mode,\n categories,\n category,\n schemes,\n scheme,\n euinNo,\n radioValue,\n minAmount,\n frequencies,\n investmentFrequency,\n sipDays,\n sipDay,\n installments,\n sip_end_date,\n sip_start_date,\n swp_end_date,\n swp_start_date,\n installmentAmount,\n investmentAmount,\n flexiMaxInstallmentAmount,\n swpAmount,\n tenure,\n email,\n mobile,\n invName,\n Family_Code_Email,\n Family_Code_Phone,\n transactionType,\n kotm,\n selectedKotm,\n swpCategory,\n swpSchemes,\n swpScheme,\n freedomorflexiSIPorNot,\n } = this.state;\n const { euinList } = this.props;\n const { location } = this.props;\n const { state } = location;\nconsole.log(\"this.state\",this.state)\n return (\n
\n
SIP
\n
\n (this.sipTypeField = ele)}\n isError={sipType.isError}\n errorMessage={sipType.errorMessage}\n >\n {sipTypes.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
\n\n {(sipType.value === NEW || sipType.value === NEWP) && (\n
\n
\n (this.invNameField = ele)}\n disabled={true}\n />\n
\n\n
\n
\n Email Family Description\n
\n ({\n label: item.family_description,\n value: item.family_code,\n }))}\n value={Family_Code_Email.value}\n placeholder=\"Select Family Description\"\n handleChange={this.FamilyDescriptionEmail}\n isError={Family_Code_Email.isError}\n errorMessage={Family_Code_Email.errorMessage}\n />\n
\n\n
\n (this.emailField = ele)}\n />\n
\n
\n
\n Mobile Family Description\n
\n ({\n label: item.family_description,\n value: item.family_code,\n }))}\n value={Family_Code_Phone.value}\n placeholder=\"Select Phone Description\"\n handleChange={this.FamilyDescriptionPhone}\n isError={Family_Code_Phone.isError}\n errorMessage={Family_Code_Phone.errorMessage}\n />\n
\n
\n (this.codeField = ele)}\n />\n
\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n type=\"number\"\n onChange={this.changeValue(\"mobile\")}\n onBlur={this.showError(\"mobile\")}\n isShowError={mobile.isError}\n errorMessage={mobile.errorMessage}\n inputref={(ele) => (this.mobileField = ele)}\n />\n
\n
\n )}\n\n {/*
\n
AMC
\n \n
*/}\n {(sipType.value === EXISTING || sipType.value === EXISTINGP) && (\n
\n
\n
Folio
\n ({\n label: item,\n value: item,\n }))}\n value={folio.value}\n placeholder=\"Select Folio\"\n handleChange={this.handleFolioChange}\n inputRef={(ele) => (this.folioField = ele)}\n // disabled={!fund.value}\n isError={folio.isError}\n errorMessage={folio.errorMessage}\n />\n
\n
Select Scheme Type
\n
\n \n \n
\n
\n )}\n\n {(schemeType === NEW ||\n sipType.value === NEW ||\n sipType.value === NEWP) && (\n
\n (this.categoryField = ele)}\n isError={category.isError}\n errorMessage={category.errorMessage}\n >\n {categories.map((item, index) => (\n \n {item.CatDesc}\n \n ))}\n \n
\n )}\n
\n
Scheme
\n ({\n label: item.PlnDesc\n ? `${item.SchDesc1} - ${item.PlnDesc} - ${item.OptDesc}`\n : item.fm_schdesc,\n value: item,\n }))}\n value={scheme.value}\n placeholder=\"Select Scheme\"\n // handleInputchange={this.handleInputChange}\n handleChange={this.handleSchemeChange}\n\n inputRef={(ele) => (this.schemeField = ele)}\n isError={scheme.isError}\n errorMessage={scheme.errorMessage}\n />\n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n
EUIN Declaration
\n \n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
YES
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
NO
\n
\n \n
\n
\n {radioValue.value === \"no\" ? (\n
\n ({\n value: item.abm_agent,\n label: item.abm_agent,\n }))}\n value={euinNo.value}\n placeholder=\"Select EUIN\"\n handleChange={this.changeEuin}\n disabled={!euinList.length}\n inputRef={(ele) => (this.euinField = ele)}\n isError={euinNo.isError}\n />\n
\n ) : (\n
\n I/We hereby confirm that the EUIN box has been intentionally left\n the blank by me/us as this is an 'execution-only' transaction\n without any interaction or advice by any personnel of the above\n distributor or notwithstanding the advice of in-appropriateness,if\n any provided by any personnel of the distributor and the distributor\n has not charged any advisory fees on this transaction\n
\n )}\n\n
\n (this.investmentFrequency = ele)}\n isError={investmentFrequency.isError}\n errorMessage={investmentFrequency.errorMessage}\n >\n {frequencies.map((item, index) => (\n \n {item.FrequencyDescription}\n \n ))}\n \n
\n \n {!!investmentFrequency.value.FrequencyDescription &&\n investmentFrequency.value.FrequencyDescription === \"Weekly\" &&\n \"For 'weekly' frequency, the SIP start date will be on Wednesday falling on or after the cooling period (currently 30 days) from the date of transaction.\"}\n
\n {this.state?.sip_start_date.value && this.state.transactionType.value !== \"Freedom\" && (\n \n \n
\n Perpetual SIP\n
\n \n )}\n {((this.state.investmentFrequency.value.FrequencyID === \"Monthly\" || this.state.investmentFrequency.value.FrequencyID === \"Quarterly\") && !!freedomorflexiSIPorNot) &&\n
\n
SIP Transaction Type
\n \n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Normal SIP
\n
\n\n
\n\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Flexi SIP
\n
\n {this.state.investmentFrequency.value.FrequencyID === \"Monthly\" && (\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Prosperity SIP
\n
\n )}\n\n\n \n
\n
\n }\n {this.state.transactionType.value !== \"Freedom\" && (\n
\n (this.installmentsField = ele)}\n errorMessage={installments.errorMessage}\n disabled={installments.disabled}\n placeholder={installments.placeholder}\n />\n
\n )}\n\n {this.state.transactionType.value === \"Freedom\" && this.state.investmentFrequency.value.FrequencyID === \"Monthly\" && this.state.sipTenures.length > 0 && (\n
\n
\n (this.kotmField = ele)}\n isError={tenure.error}\n errorMessage={tenure.errorMessage}\n >\n {this.state?.sipTenures.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
\n

SWP Details

\n\n
\n (this.categoryField = ele)}\n isError={swpCategory.isError}\n errorMessage={swpCategory.errorMessage}\n disabled={true}\n >\n \n {swpCategory.value}\n \n \n
\n
\n
Scheme
\n ({\n label: item.PlnDesc\n ? `${item.SchDesc1} - ${item.PlnDesc} - ${item.OptDesc}`\n : item.fm_schdesc,\n value: item,\n }))}\n value={swpScheme.value}\n placeholder=\"Select Scheme\"\n // handleInputchange={this.handleInputChange}\n handleChange={this.handleSwpSchemeChange}\n isError={swpScheme.isError}\n errorMessage={swpScheme.errorMessage}\n />\n
\n
\n )}\n\n
\n \n {modes.map((item, index) => (\n \n {item.Pay_Mode}\n \n ))}\n \n
\n {kotm && (\n
\n
\n (this.kotmField = ele)}\n isError={selectedKotm.error}\n errorMessage={selectedKotm.errorMessage}\n disabled={this.state?.umrn.length === 1 ? true : false}\n >\n {this.state.umrn.map((item, index) => (\n \n {item.UMRNNO}\n \n ))}\n \n
\n
\n {this.state?.umrn.length === 1 && (\n
\n The investor has only one active KOTM mandate.\n
\n )}\n
\n
\n )}\n {kotm && (\n
\n
\n
Mandate amount limit
\n
Start Date
\n
End Date
\n
Bank Name
\n
Bank Account No
\n
\n
\n
\n {selectedKotm.value ? selectedKotm.value.Amt : \"\"}\n (INR)\n
\n
\n {selectedKotm.value\n ? selectedKotm.value[\"MANDATE START DATE\"]\n : \"\"}{\" \"}\n
\n
\n {selectedKotm.value\n ? selectedKotm.value[\"MANDATE END DATE\"]\n : \"\"}\n
\n
\n {selectedKotm.value ? selectedKotm.value[\"BANK NAME\"] : \"\"}\n
{\" \"}\n
\n {selectedKotm.value ? selectedKotm.value[\"BANK A/C NO\"] : \"\"}\n
\n
\n
\n )}\n
\n
SIP Date
\n ({\n value: item.sip_cycleid,\n label: item.sip_cycleid,\n }))}\n value={sipDay.value}\n placeholder=\"SIP Day\"\n handleChange={this.changeSipDay}\n disabled={\n (!investmentFrequency.value || !installments.value) &&\n this.state.transactionType.value !== \"Freedom\"\n }\n inputRef={(ele) => (this.sipDay = ele)}\n isError={sipDay.isError}\n errorMessage={sipDay.errorMessage}\n />\n
\n\n
\n \n
\n\n
\n \n
\n {this.state.transactionType.value === \"Freedom\" && this.state.investmentFrequency.value.FrequencyID === \"Monthly\" && (\n
\n \n
\n )}\n {this.state.transactionType.value === \"Freedom\" && this.state.investmentFrequency.value.FrequencyID === \"Monthly\" && (\n
\n \n
\n )}\n
\n
\n
Minimum SIP Amount
\n {(sipType.value === NEW || sipType.value === EXISTINGP) && (\n
Minimum Lumpsum Investment Amount
\n )}\n
\n
\n
\n {!!this.state.minAmountValue.value\n ? this.state.minAmountValue.value\n : \"\"}\n (₹)\n
\n {(sipType.value === NEW || sipType.value === EXISTINGP) && (\n
{this.state.minimumLumpsumAmout}(₹)
\n )}\n
\n
\n\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n value={installmentAmount.value}\n onChange={this.changeValue(\"installmentAmount\")}\n type=\"number\"\n onBlur={this.showError(\"installmentAmount\")}\n isShowError={installmentAmount.isError}\n inputref={(ele) => (this.installmentAmount = ele)}\n errorMessage={installmentAmount.errorMessage}\n />\n
\n {this.state.transactionType.value === \"Flexi\" && (\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n value={flexiMaxInstallmentAmount.value}\n onChange={this.changeValue(\"flexiMaxInstallmentAmount\")}\n type=\"number\"\n onBlur={this.showError(\"flexiMaxInstallmentAmount\")}\n isShowError={flexiMaxInstallmentAmount.isError}\n inputref={(ele) => (this.flexiMaxInstallmentAmount = ele)}\n errorMessage={flexiMaxInstallmentAmount.errorMessage}\n />\n
\n )}\n {this.state.transactionType.value === \"Freedom\" && (\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n type=\"number\"\n\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n value={swpAmount.value}\n onChange={this.changeValue(\"swpAmount\")}\n isShowError={swpAmount.isError}\n errorMessage={swpAmount.errorMessage}\n />\n
\n )}\n {(sipType.value === NEW || sipType.value === EXISTINGP) && (\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n value={investmentAmount.value}\n onChange={this.changeValue(\"investmentAmount\")}\n type=\"number\"\n onBlur={this.showError(\"investmentAmount\")}\n isShowError={investmentAmount.isError}\n inputref={(ele) => (this.investmentAmount = ele)}\n errorMessage={investmentAmount.errorMessage}\n />\n )}\n {this.state.transactionType.value === \"Freedom\" && (\n\n
NOTE: On completion of the chosen SIP period, the units accumulated through Prosperity SIP shall be transferred to the selected target scheme (the scheme from which the SWP will get processed). If the target scheme is different, the switch shall take place on the T + 15th day or the subsequent business day, if T + 15th day is a non-business day (T being the last SIP instalment date).
\n )}\n
\n \n
\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions, investor }) => {\n const { fundList, token, userId, investorData, communicationDetails } =\n authReducer;\n const { euinList, fundsList, sipDetails = {}, transactionDetails } = transactions;\n const { kycData } = investor;\n return {\n fundList,\n token,\n userId,\n euinList,\n investorData,\n communicationDetails,\n fundsList,\n sipDetails,\n kycData,\n transactionDetails\n };\n },\n {\n validateSubBroker,\n swpOptions,\n getNewPurchaseFundList,\n getOtherSchemes,\n getAssetClasses,\n CalcSIPEnddt,\n getCheckPanKotm,\n getCheckPanAotm,\n setSipDetails,\n submitPurchaseData,\n showPurchaseConfirmation,\n getMinimumAmount,\n saveTransactionDetails,\n getSIPTenures\n }\n)(Sip);\n\nexport const family_description_codes = [\n {\n family_description: \"Self\",\n family_code: \"SE\",\n },\n {\n family_description: \"Spouse\",\n family_code: \"SP\",\n },\n {\n family_description: \"Dependent Children\",\n family_code: \"DC\",\n },\n {\n family_description: \"Dependent Siblings\",\n family_code: \"DS\",\n },\n {\n family_description: \"Dependent Parents\",\n family_code: \"DP\",\n },\n {\n family_description: \"Guardian\",\n family_code: \"GD\",\n },\n];\n","import React, { Component } from \"react\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport { Input } from \"../../forms/input\";\nimport Signbutton from \"../../forms/button\";\nimport { connect } from \"react-redux\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport { YES, SWP } from \"shared/store/types\";\nimport {\n swpOptions,\n CalcSIPEnddt,\n getMinimumAmount,\n saveTransactionDetails,\n} from \"shared/store/actions\";\nimport { NEW_TRANSACTION_URL } from \".\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\nimport { textAlign } from \"@material-ui/system\";\nimport { SundaramMutualFund } from \"./newPurchaseForm\";\nimport { INVESTOR_URL } from \"../investors\";\nclass Swp extends Component {\n constructor(props) {\n super(props);\n const { location } = this.props;\n const { state } = location;\n const { transaction } = state || {};\n this.state = {\n // funds,\n minAmountValue: { value: \"\" },\n fund: { value: { value: \"176\" } },\n folios: [],\n folio: {\n value: \"\",\n },\n schemes: [],\n scheme: {\n value: \"\",\n },\n swpOption: { value: \"\" },\n swpOptions: [],\n swpFrequency: { value: \"\" },\n swpFrequencyOptions: [],\n withdrawals: { value: \"\" },\n minAmountValue: { value: \"\" },\n sipDay: { value: \"\" },\n sipStartDate: { value: \"\" },\n sipEndDate: { value: \"\" },\n amount: { value: \"\" },\n sipCycle: [],\n };\n }\n handleFundChange = (value) => {\n if (!value) {\n this.setState({\n fund: { value: \"\" },\n folios: [],\n folio: { value: \"\" },\n schemes: [],\n scheme: { value: \"\" },\n swpOption: { value: \"\" },\n swpOptions: [],\n swpFrequency: { value: \"\" },\n swpFrequencyOptions: [],\n withdrawals: { value: \"\" },\n sipDay: { value: \"\" },\n sipStartDate: { value: \"\" },\n sipEndDate: { value: \"\" },\n amount: { value: \"\" },\n sipCycle: [],\n });\n } else if (value.value === \"176\") {\n return;\n } else {\n const fund = !!value ? value.value : \"\";\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (curr.sFlag === YES && curr.Fund === fund) {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n this.setState({\n fund: { value },\n folios: Array.from(new Set(folios)),\n folio: { value: \"\" },\n scheme: { value: \"\" },\n withdrawals: { value: \"\" },\n swpFrequency: { value: \"\" },\n });\n }\n };\n\n\n async componentDidMount() {\n window.scrollTo({\n behavior: \"smooth\",\n top: 0\n })\n const { transactionDetails } = this.props;\n if (!!transactionDetails && (Object.keys(transactionDetails).length > 0)) {\n this.setState(transactionDetails);\n return;\n }\n this.getfolios();\n }\n\n getfolios = () => {\n const { location } = this.props;\n const { state } = location;\n const { transaction } = state || {};\n if (transaction?.no_of_inst === null) {\n alert(\"Failed to fetch data\")\n }\n\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (curr.sFlag === YES && curr.Fund.trim() === \"176\") {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n this.setState({\n ...this.state,\n fund: { value: { value: \"176\" } },\n folios: Array.from(new Set(folios)),\n folio: { value: \"\" },\n scheme: { value: \"\" },\n withdrawals: { value: \"\" },\n swpFrequency: { value: \"\" },\n });\n };\n handleFolioChange = async (value) => {\n const folio = !!value ? value.value : \"\";\n const schemes = !!value ? this.schemes(folio) : [];\n // const banks = this.props.bankDetails.filter(item => item.foliono === folio);\n this.setState({\n folio: { value },\n schemes,\n scheme: { value: \"\" },\n });\n };\n schemes = (folio) => {\n return this.props.fundList.reduce((prev, curr) => {\n if (curr.Fund === \"176\" && curr.Acno === folio) {\n return [...prev, curr];\n }\n return prev;\n }, []);\n };\n\n handleSchemeChange = async (value) => {\n if (!value) {\n this.setState({\n swpOption: { value: \"\" },\n swpOptions: [],\n swpFrequency: { value: \"\" },\n swpFrequencyOptions: [],\n withdrawals: { value: \"\" },\n sipDay: { value: \"\" },\n sipStartDate: { value: \"\" },\n sipEndDate: { value: \"\" },\n amount: { value: \"\" },\n sipCycle: [],\n });\n } else if (\n !!value &&\n !!this.state.scheme.value.value &&\n value.value.SchDesc === this.state.scheme.value.value.SchDesc\n ) {\n return;\n } else {\n if (value.value.BalUnits === 0) {\n this.setState({\n folio: {\n value: \"\",\n isError: true,\n errorMessage: \"SWP in zero balance folios is not allowed\",\n },\n scheme: {\n value: \"\",\n },\n });\n } else {\n const params = {\n fund: \"176\",\n opt: \"SWPW\",\n };\n let swpOptionsResponse = [];\n const response = await this.props.swpOptions(params);\n if (response) {\n swpOptionsResponse = response.Dtinformation;\n }\n this.setState({\n scheme: { value },\n swpOptions: swpOptionsResponse,\n });\n }\n }\n };\n handleSwpOptonChange = async (event) => {\n if (\n !!this.state.swpOption.value &&\n event.target.value.code === this.state.swpOption.value.code\n ) {\n return;\n } else {\n const swpOption = event.target.value;\n const params = {\n opt: \"SWF\",\n fund: \"176\",\n };\n const response = await this.props.swpOptions(params);\n const swpFrequencyOptionsResponse = response.Dtinformation;\n\n this.setState({\n swpOption: { value: swpOption },\n withdrawals: { value: \"\" },\n swpFrequency: { value: \"\" },\n swpFrequencyOptions: swpFrequencyOptionsResponse,\n });\n }\n };\n\n handleSwpFrequencyChange = async (event) => {\n const swpFrequency = event.target.value;\n const params = {\n opt: \"SWPD\",\n fund: \"176\",\n Astscheme: !!event.target.value && !!event.target.value.FrequencyDescription ? event.target.value.FrequencyDescription : \"\"\n };\n const response = await this.props.swpOptions(params);\n const sipCycleResponse = response.Dtinformation;\n\n this.setState({\n swpFrequency: { value: swpFrequency },\n sipDay: { value: \"\" },\n\n sipStartDate: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipCycle: sipCycleResponse,\n minAmountValue: {\n value: event.target.value.FrequencyID === \"Yearly\" ? 1000 : 500,\n },\n });\n };\n\n handleNoOfWithDrawals(event) {\n if (event.target.value.length <= 3 && !!event.target.value) {\n if (parseFloat(event.target.value) <= 500 && event.target.value !== \"0\") {\n this.setState({\n withdrawals: {\n value: parseFloat(event.target.value.replace(/^0+/, \"\")),\n },\n sipStartDate: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipDay: { value: \"\" },\n swpFrequency: { value: \"\" },\n });\n } else {\n this.setState({\n withdrawals: {\n value: \"\",\n isError: true,\n errorMessage: !!event.target.value\n ? \"No. of Withdrawls should not be more than 500\"\n : \"\",\n },\n sipStartDate: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipDay: { value: \"\" },\n swpFrequency: { value: \"\" },\n });\n }\n } else if (!event.target.value) {\n this.setState({\n withdrawals: {\n value: \"\",\n isError: true,\n errorMessage:\n !!event.target.value && event.target.value !== \"0\"\n ? \"No. of Withdrawals should not be more than 500\"\n : event.target.value === \"0\"\n ? \"No. of Withdrwals should not be zero\"\n : \"Please enter the minimum no of Withdrawals\",\n },\n sipStartDate: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipDay: { value: \"\" },\n });\n }\n }\n async handleSwpDay(event) {\n const day = event.target.value;\n\n if (!!day) {\n const params = {\n Fund: \"176\",\n StartDate: day,\n installments: this.state.withdrawals.value,\n Frequency: this.state.swpFrequency.value.FrequencyDescription,\n trtype: \"SWP\",\n sch: this.state.scheme.value.value.Sch\n };\n\n\n const response = await this.props.CalcSIPEnddt(params);\n\n const sipStartDateResponse = response.DtData[0].SIP_StartDate;\n const sipEndDateResponse = response.DtData[0].SIP_EndDate;\n this.setState({\n sipDay: { value: day },\n sipStartDate: { value: sipStartDateResponse },\n sipEndDate: { value: sipEndDateResponse },\n });\n }\n }\n\n showError = (label) => () => {\n const {\n [label]: { value },\n } = this.state;\n\n if (label === \"withdrawals\") {\n this.setState({\n [label]: {\n value,\n isError: this.state.withdrawals.value < 2 ? true : !value,\n errorMessage:\n this.state.withdrawals.value < 2\n ? \"Please enter the vaild number of Withdrawals\"\n : \"\",\n },\n });\n }\n // else if (label === \"amount\") {\n // this.setState({\n // [label]: {\n // value,\n // isError:\n // this.state.minAmountValue.value < this.state.amount.value\n // ? true\n // : !value,\n // errorMessage:\n // this.state.minAmountValue.value < this.state.amount.value\n // ? `Amount should be ${this.state.minAmountValue.value}`\n // : \"\"\n // }\n // });\n // }\n else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n errorMessage: `${label} is mandatory*`,\n },\n });\n }\n };\n\n handleMinimumAmount(event) {\n if (event.target.value.length <= 10) {\n this.setState({\n amount: { value: parseFloat(event.target.value.replace(/^0+/, \"\")) },\n });\n }\n }\n\n submit = () => {\n let currValue;\n if (!!this.state.scheme.value) {\n currValue = parseFloat(\n this.state.scheme.value.value.CurValue.replace(/,/g, \"\")\n );\n }\n if (!this.state.amount.value) {\n this.setState({\n amount: {\n value: \"\",\n isError: true,\n errorMessage: \"Investment amount is mandatory*\",\n },\n });\n }\n const {\n fund,\n funds,\n folios,\n schemes,\n swpOptions,\n swpFrequencyOptions,\n withdrawals,\n sipStartDate,\n sipEndDate,\n amount,\n sipCycle,\n bank,\n banks,\n ...others\n } = this.state;\n const keys = Object.keys(others);\n const findError = keys.every((key) => !!others[key].value);\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage:\n key === \"sipDay\"\n ? \"SWP Day is mandatory*\"\n : key === \"swpFrequency\"\n ? \"Withdrawal Frequency is mandatory*\"\n : key === \"swpOption\"\n ? \"Withdrawal Option is mandatory*\"\n : `${key} is mandatory*`,\n },\n });\n });\n const firstErroredKey = keys.find((key) => !others[key].value);\n switch (firstErroredKey) {\n // case \"fund\": {\n // this.fundField.focus();\n // break;\n // }\n case \"folio\": {\n this.folioField.focus();\n break;\n }\n case \"scheme\": {\n this.schemeField.focus();\n break;\n }\n case \"swpOption\": {\n this.swpOptionField.focus();\n break;\n }\n case \"sipDay\": {\n this.sipDayField.focus();\n break;\n }\n case \"swpFrequency\": {\n this.swpFrquencyField.focus();\n break;\n }\n }\n } else if (this.state.withdrawals.value < 2) {\n this.setState({\n withdrawals: {\n value: \"\",\n isError: true,\n errorMessage: `Please check the minimum Withdrawals Value`,\n },\n });\n } else if (\n (parseFloat(this.state.amount.value) < this.state.minAmountValue.value ||\n !this.state.amount.value) &&\n this.state.swpOption.value.Description === \"Fixed\"\n ) {\n this.setState({\n amount: {\n value: \"\",\n isError: true,\n errorMessage: `Minimum amount is ${this.state.minAmountValue.value}(₹)`,\n },\n });\n } else {\n const {\n funds,\n folios,\n schemes,\n swpFrequencyOptions,\n ...others\n } = this.state;\n this.props.saveTransactionDetails(this.state);\n this.props.history.push({\n pathname: INVESTOR_URL + \"/swp/digital/transact/confirm\",\n state: {\n title: \"SWP Payment Summary\",\n type: SWP,\n Folio: { value: others.scheme.value.value.Acno },\n withDrawals: others.withdrawals.value,\n scheme: others.scheme.value.value,\n swpFrequency: others.swpFrequency.value,\n sipEndDate: others.sipEndDate.value,\n swpOption: others.swpOption.value,\n sipStartDate: others.sipStartDate.value,\n amount: others.amount.value,\n sipDay: others.sipDay.value,\n },\n });\n }\n };\n render() {\n const {\n funds,\n fund,\n folio,\n folios,\n scheme,\n schemes,\n swpOption,\n swpOptions,\n swpFrequency,\n swpFrequencyOptions,\n withdrawals,\n sipDay,\n sipStartDate,\n sipEndDate,\n sipCycle,\n amount,\n } = this.state;\n return (\n
\n
SWP
\n\n
\n
Folio
\n ({\n label: item,\n value: item,\n }))}\n disabled={!fund.value}\n value={folio.value}\n placeholder=\"Select Folio\"\n handleChange={this.handleFolioChange}\n inputRef={(ele) => (this.folioField = ele)}\n isError={folio.isError}\n errorMessage={folio.errorMessage}\n />\n
\n
\n
Scheme
\n ({\n label: item.PlnDesc\n ? `${item.SchDesc1} - ${item.PlnDesc} - ${item.OptDesc}`\n : item.fm_schdesc,\n value: item,\n }))}\n disabled={!folio.value}\n value={scheme.value}\n placeholder=\"Select Scheme\"\n handleChange={this.handleSchemeChange}\n inputRef={(ele) => (this.schemeField = ele)}\n isError={scheme.isError}\n errorMessage={scheme.errorMessage}\n />\n
\n
\n
\n {/*
Minimum Amount (₹)
*/}\n
Current Value
\n
\n
\n {/*
{!!scheme.value ? scheme.value.value.MinAmt : \"\"}
*/}\n
{!!scheme.value ? `₹ ${scheme.value.value.CurValue}` : \"\"}
\n
\n
\n
\n (this.swpOptionField = ele)}\n isError={swpOption.isError}\n errorMessage={swpOption.errorMessage}\n >\n {swpOptions.map((item, index) => (\n \n {item.Description}\n \n ))}\n \n
\n
\n this.handleNoOfWithDrawals(event)}\n onBlur={this.showError(\"withdrawals\")}\n isShowError={withdrawals.isError}\n errorMessage={withdrawals.errorMessage}\n disabled={!scheme.value}\n value={withdrawals.value}\n errorMessage={withdrawals.errorMessage}\n />\n
\n
\n (this.swpFrquencyField = ele)}\n isError={swpFrequency.isError}\n disabled={!withdrawals.value}\n errorMessage={swpFrequency.errorMessage}\n >\n {swpFrequencyOptions.map((item, index) => (\n \n {item.FrequencyDescription}\n \n ))}\n \n
\n
\n (this.sipDayField = ele)}\n isError={sipDay.isError}\n errorMessage={sipDay.errorMessage}\n handleChange={(event) => this.handleSwpDay(event)}\n >\n {sipCycle.map((item, index) => (\n \n {item.sip_cycleid}\n \n ))}\n \n
\n
Withdrawal Period
\n
\n \n
\n\n
\n \n
\n {swpOption.value.Description === \"Fixed\" ? (\n
\n \n Minimum Amount :\n {!!this.state.minAmountValue\n ? this.state.minAmountValue.value\n : \"\"}\n (₹)\n
\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n type=\"number\"\n errorMessage={amount.errorMessage}\n isShowError={amount.isError}\n onBlur={this.showError(\"amount\")}\n // disabled={redemptionType === FULL ? true : false}\n onChange={(event) => this.handleMinimumAmount(event)}\n value={amount.value}\n />\n
\n
\n ) : (\n \"\"\n )}\n
\n \n
\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions }) => {\n const {\n fundList,\n token,\n userId,\n bankDetails,\n investorData,\n communicationDetails,\n } = authReducer;\n const { euinList,transactionDetails } = transactions;\n return {\n fundList,\n token,\n userId,\n euinList,\n bankDetails,\n investorData,\n communicationDetails,\n transactionDetails\n };\n },\n { swpOptions, CalcSIPEnddt, getMinimumAmount,saveTransactionDetails }\n)(Swp);\n","import React, { Component } from \"react\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport { Input } from \"../../forms/input\";\nimport Signbutton from \"../../forms/button\";\nimport { connect } from \"react-redux\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\nimport {\n validateSubBroker,\n getAssetClasses,\n getOtherSchemes,\n swpOptions,\n CalcSIPEnddt,\n setStpDetails,\n saveTransactionDetails,\n} from \"shared/store/actions\";\nimport { REGULAR, PURCHASE, STP } from \"shared/store/types\";\nimport Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControl from \"@material-ui/core/FormControl\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport { NEW_TRANSACTION_URL } from \".\";\nimport { SundaramMutualFund } from \"./newPurchaseForm\";\nimport { INVESTOR_URL } from \"../investors\";\n\nclass Stp extends Component {\n constructor(props) {\n super(props);\n const { stpDetails, location } = this.props;\n const { state } = location;\n const { transaction } = state || {}; \n this.state = {\n fund: { value: { value: \"176\" } },\n folios: [],\n folio: {\n value: !!transaction\n ? {\n label: transaction.acno,\n value: transaction.acno,\n }\n : \"\",\n },\n schemes: [],\n scheme: {\n value: !!transaction\n ? {\n label: transaction.schemename,\n value: transaction.scheme_code,\n }\n : \"\",\n },\n radioValue: {\n value: !!transaction && transaction.euinopt === \"Y\" ? \"yes\" : \"no\",\n },\n arnCode: { value: this.props.token },\n subArnCode: { value: \"\" },\n euinNo: {\n value:\n !!transaction \n ? transaction.euincode\n : \"\",\n },\n subBrokerCode: { value: \"\" },\n categories: [],\n category: { value: !!transaction ? transaction.category : \"\" },\n switchInSchemes: [],\n switchInScheme: { value: \"\" },\n sipCycle: [],\n sipDay: { value: \"\" },\n transfers: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipStartDate: { value: \"\" },\n stpDates: [],\n swpOptions: [],\n swpOption: { value: \"\" },\n amount: { value: \"\" },\n swpFrequency: { vale: \"\" },\n minimumInstallments: \"\",\n ...stpDetails,\n };\n }\n\n handleFundChange = (value) => {\n if (!value) {\n this.setState({\n fund: { value: \"\" },\n folios: [],\n folio: { value: \"\" },\n subArnCode: { value: \"\" },\n euinNo: { value: \"\" },\n subBrokerCode: { value: \"\" },\n categories: [],\n category: { value: \"\" },\n switchInSchemes: [],\n switchInScheme: { value: \"\" },\n sipCycle: [],\n sipDay: { value: \"\" },\n transfers: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipStartDate: { value: \"\" },\n swpOptions: [],\n swpOption: { value: \"\" },\n amount: { value: \"\" },\n swpFrequency: { vale: \"\" },\n schemes: [],\n scheme: { value: \"\" },\n });\n return;\n } else if (value.value === \"176\") {\n return;\n } else {\n const fund = value.value;\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (curr.Fund === fund) {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n this.setState({\n fund: { value },\n folios: Array.from(new Set(folios)),\n folio: { value: \"\" },\n scheme: { value: \"\" },\n schemes: [],\n subArnCode: { value: \"\" },\n euinNo: { value: \"\" },\n subBrokerCode: { value: \"\" },\n categories: [],\n category: { value: \"\" },\n switchInSchemes: [],\n switchInScheme: { value: \"\" },\n sipCycle: [],\n sipDay: { value: \"\" },\n transfers: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipStartDate: { value: \"\" },\n swpOptions: [],\n swpOption: { value: \"\" },\n amount: { value: \"\" },\n swpFrequency: { vale: \"\" },\n });\n if (!!fund) {\n this.validateBrokerCode(fund)();\n }\n }\n };\n\n async componentDidMount() {\n window.scrollTo({\n behavior: \"smooth\",\n top: 0,\n });\n const { transactionDetails } = this.props;\n if (!!transactionDetails && (Object.keys(transactionDetails).length > 0)) {\n this.setState(transactionDetails);\n return;\n }\n this.getFolios();\n if (this.props?.location?.state?.transaction) {\n let schemes = this.schemes(this.props.location.state.transaction.acno);\n const findingScheme = schemes.find(\n (ele) =>\n `176~${ele.Sch}~${ele.Pln}~${ele.Opt}` ===\n this.props.location.state.transaction.scheme_code\n );\n this.setState({\n schemes,\n scheme: {\n value: {\n label: this.props.location.state.transaction.schemename,\n value: findingScheme,\n },\n },\n });\n this.getAssetClasses(this.props.location.state.transaction.acno);\n this.getOtherSchemes(this.props.location.state.transaction.category);\n const params = {\n fund: \"176\",\n opt: \"SWPW\",\n };\n const response = await this.props.swpOptions(params);\n const swpOptionsResponse = response.Dtinformation;\n this.setState({\n swpOptions: swpOptionsResponse,\n });\n }\n const params = {\n opt: \"SF\",\n fund: \"176\",\n astscheme: \"\",\n };\n const sipCycleResponse = await this.props.swpOptions(params);\n const sipCycleResponseOptions = !!sipCycleResponse\n ? sipCycleResponse.Dtinformation\n : \"\";\n this.setState({\n stpDates: sipCycleResponseOptions,\n });\n }\n getFolios = () => {\n const folios = this.props.fundList.reduce((prev, curr) => {\n if (curr.Fund.trim() === \"176\") {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n\n this.setState({\n ...this.state,\n fund: { value: { value: \"176\" } },\n folios: Array.from(new Set(folios)),\n // folio: { value: \"\" },\n // scheme: { value: \"\" },\n // schemes: [],\n // subArnCode: { value: \"\" },\n // euinNo: { value: \"\" },\n // subBrokerCode: { value: \"\" },\n // categories: [],\n // category: { value: \"\" },\n // switchInSchemes: [],\n // switchInScheme: { value: \"\" },\n // sipCycle: [],\n // sipDay: { value: \"\" },\n // transfers: { value: \"\" },\n // sipEndDate: { value: \"\" },\n // sipStartDate: { value: \"\" },\n // swpOptions: [],\n // swpOption: { value: \"\" },\n // amount: { value: \"\" },\n // swpFrequency: { vale: \"\" },\n });\n this.validateBrokerCode(\"176\")();\n };\n\n validateBrokerCode = (fund) => async () => {\n const { subArnCode, arnCode } = this.state;\n if (\n !!this.state.subArnCode.value &&\n this.state.subArnCode.value === this.state.arnCode.value.split(\"-\")[1]\n ) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: \"ARN and Sub ARN code should not be the same\",\n },\n });\n return;\n }\n const params = {\n Fund: \"176\",\n SubAgentCd: !!subArnCode.value ? `ARN-${subArnCode.value}` : \"\",\n AgentCd: arnCode.value,\n };\n const response = await this.props.validateSubBroker(params);\n if (!response) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `Please enter a valid sub ARN code`,\n },\n });\n }\n };\n\n handleFolioChange = (value) => {\n if (!value) {\n this.setState({\n folio: { value: \"\" },\n schemes: [],\n scheme: { value: \"\" },\n subArnCode: { value: \"\" },\n euinNo: { value: \"\" },\n subBrokerCode: { value: \"\" },\n categories: [],\n category: { value: \"\" },\n switchInSchemes: [],\n switchInScheme: { value: \"\" },\n sipCycle: [],\n sipDay: { value: \"\" },\n transfers: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipStartDate: { value: \"\" },\n swpOptions: [],\n swpOption: { value: \"\" },\n amount: { value: \"\" },\n swpFrequency: { vale: \"\" },\n });\n return;\n } else if (value.value === this.state.folio.value.value) {\n return;\n } else {\n this.getAssetClasses(value.value);\n const schemes = this.schemes(value.value);\n\n this.setState({\n folio: { value },\n schemes,\n scheme: { value: \"\" },\n });\n }\n };\n\n getAssetClasses = async (value) => {\n const params = {\n Fund: \"176\",\n Folio: value,\n };\n const assetClasses = await this.props.getAssetClasses(params);\n if (assetClasses) {\n this.setState({\n categories: assetClasses.DtData,\n });\n }\n };\n\n schemes = (value) => {\n return this.props.fundList.reduce((prev, curr) => {\n if (curr.Fund.trim() === \"176\" && curr.Acno === value) {\n return [...prev, curr];\n }\n return prev;\n }, []);\n };\n handleSchemeChange = (value) => {\n if (!value) {\n this.setState({\n scheme: { value: \"\" },\n category: { value: \"\" },\n switchInSchemes: [],\n switchInScheme: { value: \"\" },\n sipCycle: [],\n sipDay: { value: \"\" },\n transfers: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipStartDate: { value: \"\" },\n swpOptions: [],\n swpOption: { value: \"\" },\n amount: { value: \"\" },\n swpFrequency: { vale: \"\" },\n });\n return;\n } else if (value.value === this.state.scheme.value.value) {\n return;\n } else {\n if (!value.value.BalUnits) {\n this.setState({\n folio: {\n value: \"\",\n isError: \"true\",\n errorMessage: \"STP in Zero balance folios is not accepted\",\n },\n scheme: { value: \"\" },\n });\n } else {\n this.setState({\n scheme: { value },\n category: { value: \"\" },\n switchInSchemes: [],\n switchInScheme: { value: \"\" },\n sipCycle: [],\n sipDay: { value: \"\" },\n transfers: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipStartDate: { value: \"\" },\n swpOptions: [],\n swpOption: { value: \"\" },\n amount: { value: \"\" },\n swpFrequency: { vale: \"\" },\n });\n }\n }\n };\n handleCategoryChange = (event) => {\n if (event.target.value) {\n this.getOtherSchemes(event.target.value);\n this.setState({\n category: { value: event.target.value },\n switchInScheme: { value: \"\" },\n sipCycle: [],\n sipDay: { value: \"\" },\n transfers: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipStartDate: { value: \"\" },\n swpOptions: [],\n swpOption: { value: \"\" },\n });\n } else {\n this.setState({\n category: { value: \"\" },\n switchInScheme: { value: \"\" },\n });\n }\n };\n getOtherSchemes = async (value) => {\n const params = {\n schtype: REGULAR,\n category: value,\n acno: this.state.folio.value.value,\n fundCode: \"176\",\n trantype: PURCHASE,\n };\n const otherSchemes = await this.props.getOtherSchemes(params);\n\n if (otherSchemes) {\n this.setState({\n switchInSchemes: otherSchemes.DtData,\n });\n }\n if (!!this.props.location.state.transaction) {\n const findingInScheme = otherSchemes.DtData.find(\n (ele) =>\n ele.fm_schdesc ===\n this.props.location.state.transaction.Switch_in_scheme\n );\n this.setState({\n switchInScheme: {\n value: {\n label: this.props.location.state.transaction.Switch_in_scheme,\n value: findingInScheme,\n },\n },\n });\n }\n };\n handleSwitchInScheme = async (value) => {\n if (!value) {\n this.setState({\n switchInScheme: { value: \"\" },\n // sipCycle: [],\n sipDay: { value: \"\" },\n transfers: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipStartDate: { value: \"\" },\n swpOptions: [],\n swpOption: { value: \"\" },\n });\n return;\n } else if (value.value === this.state.switchInScheme.value.value) {\n return;\n } else {\n const params = {\n opt: \"SF\",\n fund: \"176\",\n astscheme: \"\",\n };\n const sipCycleResponse = await this.props.swpOptions(params);\n const sipCycleResponseOptions = !!sipCycleResponse\n ? sipCycleResponse.Dtinformation\n : \"\";\n this.setState({\n switchInScheme: { value },\n stpDates: sipCycleResponseOptions,\n });\n }\n };\n changeValue = (label) => (event) => {\n if (\n label === \"subArnCode\" ||\n (label === \"subBrokerCode\" && event.target.value.length <= 20)\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (label === \"radioValue\" && event.target.value === \"no\") {\n if (!this.state.euinNo.value) {\n this.setState({\n radioValue: { value: event.target.value },\n });\n } else {\n this.setState({\n [label]: { value: event.target.value },\n euinNo: { value: \"\" },\n });\n }\n } else if (\n label !== \"subArnCode\" &&\n label !== \"subBrokerCode\" &&\n label === \"radioValue\" &&\n event.target.value !== \"no\"\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n }\n };\n\n async handleSwpDay(event) {\n const day = event.target.value;\n const x = parseFloat(this.state.transfers.value.replace(/,/g, \"\"));\n if (\n this.state.transfers.value !== \"\" &&\n (x > parseFloat(this.state.minimumInstallments) ||\n x === parseFloat(this.state.minimumInstallments))\n ) {\n const params = {\n Fund: \"176\",\n StartDate: day,\n installments: this.state.transfers.value,\n Frequency: this.state.swpFrequency.vale,\n trtype: \"STP\",\n sch: this.state.scheme.value.value.Sch,\n };\n\n const response = await this.props.CalcSIPEnddt(params);\n const sipStartDateResponse = response.DtData[0].SIP_StartDate;\n const sipEndDateResponse = response.DtData[0].SIP_EndDate;\n this.setState({\n sipDay: { value: day },\n sipStartDate: { value: sipStartDateResponse },\n sipEndDate: { value: sipEndDateResponse },\n // swpOption: { value: \"\" }\n });\n }\n }\n handleChangeTransfers = async (event) => {\n const transferValue = event.target.value;\n const params = {\n fund: \"176\",\n opt: \"SWPW\",\n };\n if (!this.state.swpOption.value && event.target.value.length <= 4) {\n const response = await this.props.swpOptions(params);\n const swpOptionsResponse = response.Dtinformation;\n if (!!transferValue && parseFloat(transferValue) <= 9999) {\n this.setState({\n transfers: { value: transferValue },\n swpOptions: swpOptionsResponse,\n sipDay: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipStartDate: { value: \"\" },\n swpOption: { value: \"\" },\n });\n } else if (!transferValue) {\n this.setState({\n transfers: {\n value: \"\",\n isError: true,\n errorMessage: !!transferValue\n ? \"No of transfers value should not be more than 9999\"\n : \"Transfers value is mandatory*\",\n },\n swpOptions: swpOptionsResponse,\n sipDay: { value: \"\" },\n sipEndDate: { value: \"\" },\n sipStartDate: { value: \"\" },\n swpOption: { value: \"\" },\n });\n }\n } else if (event.target.value.length <= 3) {\n this.setState({\n transfers: { value: transferValue },\n sipEndDate: { value: \"\" },\n sipDay: { value: \"\" },\n sipStartDate: { value: \"\" },\n swpOption: { value: \"\" },\n });\n }\n };\n handleSwpOptionChange = (event) => {\n const swpOption = event.target.value;\n\n this.setState({\n swpOption: { value: swpOption },\n amount: { value: \"\" },\n });\n };\n handleChangeTransferAmount = (event) => {\n const transferAmount = event.target.value;\n if (event.target.value.length <= 10) {\n this.setState({\n amount: { value: transferAmount.replace(/^0+/, \"\") },\n });\n }\n };\n changeEuin = (value) => {\n this.setState({\n euinNo: { value },\n });\n };\n\n submit = () => {\n let amountValue;\n const {\n amount,\n transfers,\n sipEndDate,\n sipStartDate,\n funds,\n folios,\n schemes,\n categories,\n switchInSchemes,\n sipCycle,\n subBrokerCode,\n subArnCode,\n radioValue,\n euinNo,\n fund,\n arnCode,\n swpOptions,\n swpFrequency,\n stpDates,\n minimumInstallments,\n ...others\n } = this.state;\n if (!!this.state.amount) {\n amountValue = parseFloat(this.state.amount.value.replace(/,/g, \"\"));\n }\n if (this.state.transfers.value === \"\") {\n this.setState({\n transfers: {\n value: \"\",\n isError: true,\n errorMessage: \"Please enter the no of transfers value\",\n },\n });\n }\n if (\n this.state.radioValue.value === \"no\" ||\n this.state.euinNo.value === \"\"\n ) {\n this.setState({\n euinNo: {\n value: \"\",\n isError: true,\n },\n });\n }\n const minAmount = 1000;\n const arn = this.state.arnCode.value.split(\"-\");\n const keys = Object.keys(others);\n\n const findError = keys.every((key) => !!others[key].value);\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage:\n key === \"sipDay\"\n ? \"STP Date is mandatory\"\n : key === \"swpOption\"\n ? \"STP Option is mandatory*\"\n : `${key} is mandatory*`,\n },\n });\n });\n const firstErroredKey = keys.find((key) => !others[key].value);\n switch (firstErroredKey) {\n // case \"fund\": {\n // this.fundField.focus();\n // break;\n // }\n case \"folio\": {\n this.folioField.focus();\n break;\n }\n case \"scheme\": {\n this.schemeField.focus();\n break;\n }\n case \"category\": {\n this.categoryField.focus();\n break;\n }\n case \"switchInScheme\": {\n this.switchInSchemeField.focus();\n break;\n }\n case \"sipDay\": {\n this.swpDateField.focus();\n break;\n }\n case \"swpOption\": {\n this.swpField.focus();\n break;\n }\n }\n } else if (\n !!this.state.subArnCode.value &&\n arn[1] === this.state.subArnCode.value\n ) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `and ARN code should not match `,\n },\n });\n } else if (\n (amountValue < minAmount || this.state.amount.value === \"\") &&\n this.state.swpOption.value.Description === \"Fixed\"\n ) {\n if (this.state.amount.value === \"\") {\n this.setState({\n amount: {\n ...others[\"amount\"],\n isError: true,\n errorMessage: `Transfer amount value is mandatory*`,\n },\n });\n } else if (amountValue < minAmount) {\n this.setState({\n amount: {\n ...others[\"amount\"],\n isError: true,\n errorMessage: `Minimum amount is 1000 (₹) for monthly stp frequency`,\n },\n });\n }\n // else if (amountValue > currValue) {\n // this.setState({\n // amount: {\n // ...others[\"amount\"],\n // isError: true,\n // errorMessage: `(Transfer amount is more than the current Value)`\n // }\n // });\n // }\n } else if (\n this.state.radioValue.value === \"no\" &&\n !this.state.euinNo.value\n ) {\n this.euinField.focus();\n this.setState({\n euinNo: {\n value: \"\",\n isError: true,\n },\n });\n } else if (\n this.state.transfers.value === \"\" ||\n parseFloat(this.state.transfers.value) <\n parseFloat(this.state.minimumInstallments)\n ) {\n this.setState({\n transfers: {\n value: \"\",\n isError: true,\n errorMessage: \"Please check the no of transfers value\",\n },\n });\n } else if (!this.state.swpOption.value) {\n this.setState({\n swpOption: {\n value: \"\",\n isError: true,\n errorMessage: \"STP option is mandatory*\",\n },\n });\n } else {\n const {\n scheme,\n amount,\n transfers,\n sipEndDate,\n swpOption,\n sipStartDate,\n sipDay,\n euinNo,\n switchInScheme,\n stpDates,\n ...stpDetails\n } = this.state;\n this.props.saveTransactionDetails(this.state);\n\n this.props.setStpDetails(this.state);\n\n this.props.history.push({\n pathname: INVESTOR_URL + \"/stp/digital/transact/confirm\",\n state: {\n title: \"STP Payment Summary\",\n type: STP,\n Folio: { value: this.state.scheme.value.value.Acno },\n scheme: { Fund: \"176\" },\n ...stpDetails,\n },\n });\n }\n };\n\n showError = (label) => () => {\n let amountValue, currValue;\n const {\n [label]: { value },\n } = this.state;\n if (!!this.state.amount) {\n amountValue = parseFloat(this.state.amount.value.replace(/,/g, \"\"));\n }\n if (!!this.state.scheme.value) {\n currValue = parseFloat(\n this.state.scheme.value.value.CurValue.replace(/,/g, \"\")\n );\n }\n const minAmount = 1000;\n\n if (label === \"transfers\") {\n this.setState({\n [label]: {\n value,\n isError:\n parseFloat(this.state.transfers.value) <\n parseFloat(this.state.minimumInstallments) ||\n this.state.transfers.value === \"\"\n ? true\n : !value,\n errorMessage:\n parseFloat(this.state.transfers.value) <\n parseFloat(this.state.minimumInstallments) ||\n this.state.transfers.value === \"\"\n ? ` No. of with-drawals should be minimum ${this.state.minimumInstallments}`\n : \"\",\n },\n });\n } else if (label === \"amount\") {\n this.setState({\n [label]: {\n value,\n isError:\n amountValue < minAmount &&\n this.state.swpOption.value.Description === \"Fixed\"\n ? true\n : !value,\n errorMessage:\n amountValue < minAmount &&\n this.state.swpOption.value.Description === \"Fixed\"\n ? `Minimum amount should be ${minAmount}(₹)`\n : \"\",\n },\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n\n handleChangeStpFrequency = async (event) => {\n if (event.target.value === this.state.swpFrequency.vale) {\n return;\n } else {\n const transfer = this.state.stpDates.find(\n (ele) => ele.FrequencyID === event.target.value\n );\n const params = {\n opt: \"STPD\",\n fund: \"176\",\n astscheme: event.target.value,\n };\n const sipCycleResponse = await this.props.swpOptions(params);\n const sipCycleResponseOptions = !!sipCycleResponse\n ? sipCycleResponse.Dtinformation\n : \"\";\n\n this.setState({\n swpFrequency: { vale: event.target.value },\n minimumInstallments: transfer.Minimum_Instalment,\n transfers: { value: \"\" },\n sipCycle: sipCycleResponseOptions,\n });\n }\n };\n\n render() {\n const {\n funds,\n fund,\n folio,\n folios,\n scheme,\n schemes,\n categories,\n category,\n arnCode,\n subArnCode,\n subBrokerCode,\n switchInScheme,\n switchInSchemes,\n euinNo,\n radioValue,\n sipCycle,\n sipDay,\n transfers,\n sipStartDate,\n sipEndDate,\n swpOptions,\n swpOption,\n stpDates,\n amount,\n } = this.state;\n // let e;\n // e = parseFloat(this.state.transfers.value.replace(/,/g, \"\"));\n const { euinList } = this.props;\n return (\n
\n
STP
\n\n
\n
Folio
\n ({\n label: item,\n value: item,\n }))}\n type=\"number\"\n value={folio.value}\n placeholder=\"Select Folio\"\n handleChange={this.handleFolioChange}\n inputRef={(ele) => (this.folioField = ele)}\n disabled={!fund.value}\n isError={folio.isError}\n errorMessage={folio.errorMessage}\n />\n
\n
\n
Transfer from
\n ({\n value: item,\n label: item.PlnDesc\n ? `${item.SchDesc1} - ${item.PlnDesc} - ${item.OptDesc}`\n : item.fm_schdesc,\n }))}\n value={scheme.value}\n placeholder=\"Select Scheme\"\n handleChange={this.handleSchemeChange}\n disabled={!folio.value}\n inputRef={(ele) => (this.schemeField = ele)}\n isError={scheme.isError}\n errorMessage={scheme.errorMessage}\n />\n
\n
\n
\n
Balance Units
\n
Current Value
\n
\n
\n
{!!scheme.value.value ? scheme.value.value.BalUnits : \"\"}
\n
\n {!!scheme.value.value ? `₹ ${scheme.value.value.CurValue}` : \"\"}\n
\n
\n
\n
\n (this.categoryField = ele)}\n isError={category.isError}\n disabled={!scheme.value}\n errorMessage={category.errorMessage}\n >\n {categories.map((item, index) => (\n \n {item.CatValue}\n \n ))}\n \n
\n
\n
Transfer to
\n ({\n label: item.fm_schdesc,\n value: item,\n }))}\n label=\"Fund\"\n handleChange={this.handleSwitchInScheme}\n value={switchInScheme.value}\n placeholder=\"Select Transfer To Scheme\"\n inputRef={(ele) => (this.switchInSchemeField = ele)}\n isError={switchInScheme.isError}\n errorMessage={switchInScheme.errorMessage}\n />\n
\n\n
\n \n
\n\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n disabled={!fund.value}\n type=\"number\"\n isShowError={subArnCode.isError}\n errorMessage={subArnCode.errorMessage}\n onBlur={\n !!fund.value ? this.validateBrokerCode(fund.value.value.Fund) : \"\"\n }\n onChange={this.changeValue(\"subArnCode\")}\n />\n
\n\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n type=\"number\"\n onChange={this.changeValue(\"subBrokerCode\")}\n />\n
\n
\n
EUIN
\n \n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
YES
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
NO
\n
\n \n
\n
\n {radioValue.value === \"no\" ? (\n
\n ({\n label: item.abm_agent,\n value: item.abm_agent,\n }))}\n label=\"Fund\"\n handleChange={this.changeEuin}\n value={euinNo.value}\n disabled={!euinList.length}\n placeholder=\"Select EUIN\"\n inputRef={(ele) => (this.euinField = ele)}\n isError={euinNo.isError}\n />\n
\n ) : (\n
\n I/We hereby confirm that the EUIN box has been intentionally left\n the blank by me/us as this is an 'execution-only' transaction\n without any interaction or advice by any personnel of the above\n distributor or notwithstanding the advice of in-appropriateness,if\n any provided by any personnel of the distributor and the distributor\n has not charged any advisory fees on this transaction\n
\n )}\n
\n (this.stpFrequencyField = ele)}\n handleChange={this.handleChangeStpFrequency}\n value={this.state.swpFrequency.vale}\n >\n {stpDates.length > 0\n ? stpDates.map((item, index) => (\n \n {item.FrequencyDescription}\n \n ))\n : \"\"}\n {/* {\n \n {switchInScheme.value !== \"\" ? \"Monthly\" : \"\"}\n \n } */}\n \n
\n\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n onChange={this.handleChangeTransfers}\n onBlur={this.showError(\"transfers\")}\n isShowError={transfers.isError}\n errorMessage={transfers.errorMessage}\n />\n
\n\n
\n (this.swpDateField = ele)}\n isError={sipDay.isError}\n placeholder=\"STP Date\"\n value={\n this.state.sipDay.value\n // this.state.transfers.value !== \"\" && (e > 60 || e === 60)\n // ? this.state.sipDay.value\n // : \"\"\n }\n onBlur={this.showError(\"transfers\")}\n handleChange={(event) => this.handleSwpDay(event)}\n errorMessage={sipDay.errorMessage}\n >\n {sipCycle.map((item, index) => (\n \n {item.sip_cycleid}\n \n ))}\n \n
\n\n
Time Period
\n
\n \n
\n
\n \n
\n
\n (this.swpField = ele)}\n isError={swpOption.isError}\n errorMessage={swpOption.errorMessage}\n value={swpOption.value}\n handleChange={this.handleSwpOptionChange}\n // disabled={!sipDay.value}\n >\n {swpOptions.map((item, index) => (\n \n {item.Description}\n \n ))}\n \n
\n {swpOption.value.Description === \"Fixed\" ? (\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n onChange={this.handleChangeTransferAmount}\n value={amount.value}\n type=\"number\"\n onBlur={this.showError(\"amount\")}\n isShowError={amount.isError}\n errorMessage={amount.errorMessage}\n />\n ) : (\n \"\"\n )}\n
\n \n
\n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions }) => {\n const {\n fundList,\n token,\n userId,\n bankDetails,\n investorData,\n communicationDetails,\n } = authReducer;\n const { euinList, stpDetails = {},transactionDetails } = transactions;\n return {\n fundList,\n token,\n userId,\n euinList,\n stpDetails,\n bankDetails,\n investorData,\n communicationDetails,\n transactionDetails\n };\n },\n {\n validateSubBroker,\n getAssetClasses,\n getOtherSchemes,\n swpOptions,\n setStpDetails,\n CalcSIPEnddt,\n saveTransactionDetails\n }\n)(Stp);\n","import React, { Component } from \"react\";\nimport { BUILD_URL } from \"./home\";\n\nexport default class UploadFile extends Component {\n render() {\n const { id, isShowError, fileName } = this.props;\n return (\n \n \n \n
\n \n \n Upload\n
\n \n \n
{fileName}
\n \n \n
\n );\n }\n}\n","import React, { Component } from \"react\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport { connect } from \"react-redux\";\nimport {\n getNewPurchaseFundList,\n physicalTransaction,\n} from \"shared/store/actions\";\nimport {\n GET_FUNDS_LIST,\n GET_FUNDS_LIST_SUCCESS,\n GET_FUNDS_LIST_FAILED,\n ALL,\n PHYSICAL_NEW,\n EXISTING,\n NEW,\n YES,\n} from \"shared/store/types\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport { Input } from \"../../forms/input\";\nimport UploadFile from \"../uploadFile\";\nimport Signbutton from \"../../forms/button\";\nimport CustomizedDialogs from \"../customModal\";\nimport { NEW_TRANSACTION_URL } from \".\";\n\nclass NfoPhysicalMode extends Component {\n constructor(props) {\n super(props);\n const { investorData, communicationDetails = [] } = this.props;\n const Xmobile = (communicationDetails || []).find(\n (detail) => detail.PAN === investorData.PAN && !!detail.Mobile\n );\n const Xemail = (communicationDetails || []).find(\n (detail) => detail.PAN === investorData.PAN && !!detail.email\n );\n const Email = !!Xemail && !!Xemail.email ? Xemail.email : \"\";\n const Mobile = !!Xmobile && !!Xmobile.Mobile ? Xmobile.Mobile : \"\";\n this.state = {\n emailId: { value: Email },\n mobile: { value: Mobile },\n fund: { value: \"\" },\n upload: { errorMessage: \"\" },\n sipTypes: [\n { label: \"Existing Folio - SIP Registration\", value: EXISTING },\n { label: \"New Folio - SIP Registration with payment\", value: NEW },\n ],\n sipType: { value: \"\" },\n file: {},\n disabled: false,\n fundsList: [],\n fundList: [],\n open: false,\n refNo:\"\",\n folio: {\n value: this.props.location.state.type !== PHYSICAL_NEW ? \"\" : \"0\",\n },\n submitting: false,\n };\n }\n\n componentWillMount() {\n this.setState({\n fundsList: this.funds(this.props),\n });\n }\n\n funds = (props) => {\n let { fundsList } = props;\n const { type, flag } = this.props.location.state;\n if (type !== PHYSICAL_NEW) {\n if (!!flag) {\n fundsList = fundsList.filter((item) => item[flag] === YES);\n }\n fundsList = fundsList.reduce((prev, curr) => {\n const findIndex =\n prev.findIndex((fund) => fund.Fund === curr.Fund) !== -1;\n if (!findIndex) {\n return [...prev, { Fund: curr.Fund, FundDesc: curr.FundDesc }];\n }\n return prev;\n }, []);\n }\n return fundsList;\n };\n\n componentDidMount() {\n const params = {\n opt: ALL,\n };\n const types = [\n GET_FUNDS_LIST,\n GET_FUNDS_LIST_SUCCESS,\n GET_FUNDS_LIST_FAILED,\n ];\n this.props.getNewPurchaseFundList(params, types);\n }\n\n componentWillReceiveProps(nextProps) {\n this.setState({ fundsList: this.funds(nextProps) });\n }\n\n changeValue = (label) => (event) => {\n if (label === \"mobile\" && event.target.value.length <= 10) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (label !== \"mobile\") {\n this.setState({\n [label]: { value: event.target.value },\n });\n }\n };\n\n showError = (label) => () => {\n const {\n [label]: { value },\n } = this.state;\n if (label === \"emailId\") {\n this.setState({\n [label]: {\n value,\n isError:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.emailId.value\n ) === false\n ? true\n : !value,\n errorMessage:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.emailId.value\n ) === false\n ? `( *enter an vaild email address )`\n : \"\",\n },\n });\n } else if (label === \"mobile\") {\n this.setState({\n [label]: {\n value,\n isError:\n /^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[6-9]\\d{9}$/.test(\n this.state.mobile.value\n ) === false\n ? true\n : !value,\n errorMessage:\n /^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[6-9]\\d{9}$/.test(\n this.state.mobile.value\n ) === false\n ? `(* Enter a valid Phone Number)`\n : !value,\n },\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n handleSipTypeChange = (event) => {\n const sipType = event.target.value;\n\n const state = {\n schemeType: EXISTING,\n email: { value: \"\" },\n\n mobile: { value: \"\" },\n };\n if (!sipType) {\n this.setState({\n ...state,\n sipType: { value: event.target.value },\n });\n return;\n } else if (event.target.value === this.state.sipType.value) {\n return;\n }\n const { fundList, fundsList } = this.props;\n\n const funds =\n sipType === EXISTING\n ? this.funds(this.props)\n : fundList.map((fund) => ({\n Fund: fund.amc_code,\n FundDesc: fund.amc_name,\n AadharFlag: fund.Aadhar,\n }));\n this.setState({\n // ...state,\n sipType: { value: event.target.value },\n fundsList: funds,\n fund: { value: \"\" },\n folio: { value: \"\" },\n });\n };\n\n fundChange = (event) => {\n const fund = event.target.value;\n let folios = [];\n const { type, flag } = this.props.location.state;\n let { fundsList } = this.props;\n if (type !== PHYSICAL_NEW) {\n if (!!flag) {\n fundsList = fundsList.filter((item) => item[flag] === YES);\n }\n folios = fundsList.reduce((prev, curr) => {\n if (curr.Fund === fund) {\n return [...prev, curr.Acno];\n }\n return prev;\n }, []);\n }\n this.setState({\n fund: { value: fund },\n folios: Array.from(new Set(folios)),\n });\n };\n\n fileUpload = (label) => (e) => {\n if (!!e.target.files.length) {\n const file = e.target.files[0];\n this.setState({\n [label]: file.name,\n });\n\n var fileReader = new FileReader();\n var base64;\n // Onload of file read the file content\n fileReader.onload = (fileLoadedEvent) => {\n base64 = fileLoadedEvent.target.result;\n // Print data in console\n this.setState({\n file: { value: base64.split(\",\")[1] },\n });\n };\n // Convert data to base64\n fileReader.readAsDataURL(file);\n this.setState({\n upload: { errorMessage: \"Upload Successfully\" },\n });\n }\n };\n\n closeModal = () => {\n this.setState({\n open: false,\n });\n this.props.history.replace(NEW_TRANSACTION_URL);\n };\n\n submit = async () => {\n const {\n upload_file,\n fundsList,\n refNo,\n open,\n folios,\n disabled,\n submitting,\n upload,\n sipType,\n sipTypes,\n fundList,\n folio,\n ...others\n } = this.state;\n const { type } = this.props.location.state;\n const keys = Object.keys(others);\n\n const findError = keys.every((key) => !!others[key].value);\n\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({ [key]: { ...others[key], isError: true } });\n });\n const firstErroredKey = keys.find((key) => !others[key].value);\n switch (firstErroredKey) {\n case \"emailId\": {\n this.emailIdField.focus();\n break;\n }\n case \"mobile\": {\n this.mobileField.focus();\n break;\n }\n case \"fund\": {\n this.fundField.focus();\n break;\n }\n }\n } else if (\n !this.state.folio.value &&\n this.state.sipType.value === EXISTING\n ) {\n this.setState({\n folio: {\n value: \"\",\n isError: true,\n errorMessage: \"folio is mandatory\",\n },\n });\n } else if (\n !!this.state.emailId.value &&\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.emailId.value\n ) === false\n ) {\n this.setState({\n emailId: {\n ...others[\"emailId\"],\n isError: true,\n errorMessage: `Enter a vaild Email address`,\n },\n });\n return;\n } else if (\n !!this.state.mobile.value &&\n /^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[6-9]\\d{9}$/.test(\n this.state.mobile.value\n ) === false\n ) {\n this.setState({\n mobile: {\n ...others[\"mobile\"],\n isError: true,\n errorMessage: `Enter a vaild Phone number`,\n },\n });\n return;\n } else {\n const payload = {\n email: others.emailId.value,\n folio: this.state.folio.value || \"0\",\n fund: others.fund.value,\n mobile: others.mobile.value,\n pan: this.props.investorData.PAN || \"\",\n Pdffile: others.file.value,\n reqtype: type,\n userid: this.props.userId,\n };\n this.setState({ submitting: true });\n const response = await this.props.physicalTransaction(payload);\n\n\n if (response && !!response.DtData && !!response.DtData.length && !!response.DtData.length>0) {\n this.setState({ open: true ,refNo:response.DtData[0].ihno});\n\n }\n this.setState({ submitting: false });\n }\n };\n\n render() {\n const {\n emailId,\n mobile,\n fund,\n refNo,\n folio,\n fundsList = [],\n fundList = [],\n folios = [],\n sipType,\n sipTypes,\n } = this.state;\n const type = this.props.location.state.type;\n return (\n \n
\n {type === \"isip\" && (\n
\n (this.sipTypeField = ele)}\n isError={sipType.isError}\n errorMessage={sipType.errorMessage}\n >\n {sipTypes.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
\n )}\n\n (this.fundField = ele)}\n isError={fund.isError}\n >\n {fundsList.map((item, index) => (\n \n {type === PHYSICAL_NEW ? item.amc_name : item.FundDesc}\n \n ))}\n \n
\n\n {type !== PHYSICAL_NEW && this.state.sipType.value !== NEW && (\n
\n (this.folioField = ele)}\n isError={folio.isError}\n >\n {folios.map((item, index) => (\n \n {item}\n \n ))}\n \n
\n )}\n
\n (this.emailIdField = ele)}\n errorMessage={this.state.emailId.errorMessage}\n />\n
\n\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n value={mobile.value}\n type=\"number\"\n onChange={this.changeValue(\"mobile\")}\n onBlur={this.showError(\"mobile\")}\n isShowError={mobile.isError}\n errorMessage={mobile.errorMessage}\n inputref={(ele) => (this.mobileField = ele)}\n />\n
\n
\n {!!this.state.upload.errorMessage ? (\n \n {this.state.upload.errorMessage}\n
\n ) : (\n \"\"\n )}\n \n
\n Only .pdf files allowed. File size to not exceed 24 MB\n
\n \n\n
\n \n
\n \n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions }, props) => {\n const { location } = props;\n const { investorData, communicationDetails, token, userId } = authReducer;\n const { fundsList } = transactions;\n const { fundList } = authReducer;\n\n return {\n investorData,\n communicationDetails,\n token,\n fundList: location.state.type === \"isip\" ? fundsList : [],\n fundsList: location.state.type === PHYSICAL_NEW ? fundsList : fundList,\n userId,\n };\n },\n {\n getNewPurchaseFundList,\n physicalTransaction,\n }\n)(NfoPhysicalMode);\n","import React from 'react';\nimport { TextField, TextFieldProps } from '@material-ui/core';\n\nexport default function TextInput({\n label,\n id = 'textinput',\n variant = 'filled',\n ...rest\n}) {\n return ;\n}\n","import React, { useCallback, useEffect } from 'react';\nimport en from '../../lang/en-us';\nimport {\n FormControl,\n FormControlLabel,\n FormHelperText,\n FormLabel,\n Radio,\n RadioGroup,\n} from '@material-ui/core';\nimport { Skeleton } from '@material-ui/lab';\nconst { dashboard } = en;\n\nfunction RadioButton({\n label = '',\n value = '',\n radioImg = '',\n cssClass = '',\n disabled = false,\n isError = false,\n errorMessage = '',\n}) {\n return (\n <>\n }\n disabled={disabled}\n label={\n <>\n {radioImg && \"icon\"}\n {label}\n {isError && (\n {`(* ${errorMessage})`}\n )}\n \n }\n className={cssClass}\n />\n \n );\n}\n\nexport const useRadio = ({ initValue }) => {\n const [value, setValue] = React.useState(initValue);\n const reset = useCallback(() => {\n setValue(initValue);\n }, [initValue]);\n\n return {\n value,\n setValue,\n reset,\n };\n};\nexport function CustomRadio({\n list = [] ,\n title = '',\n name = '',\n extraClass = '',\n selectedValue = 'Female',\n helperText = '',\n error = false,\n handleRadioChange = (value) => { },\n component: Component = RadioButton,\n isLoading = false,\n}) {\n const { value, setValue } = useRadio({ initValue: selectedValue });\n const handleChange = (event) => {\n handleRadioChange((event.target ).value);\n setValue((event.target ).value);\n };\n useEffect(() => {\n setValue(selectedValue);\n }, [selectedValue]);\n return isLoading ? (\n <>\n \n \n \n \n \n \n \n \n \n \n \n \n ) : (\n \n {title}\n \n {list.map((_childProps, index) => (\n \n ))}\n \n {helperText && {helperText}}\n \n );\n}\n","import React from 'react';\nimport DateFnsUtils from '@date-io/date-fns';\nimport {\n KeyboardDatePicker,\n KeyboardDatePickerProps,\n MuiPickersUtilsProvider,\n} from '@material-ui/pickers';\n\nexport default function DatePickerInput({\n id,\n variant,\n label,\n value = '',\n ...rest\n}) {\n return (\n \n \n \n );\n}\n","import React from 'react';\nimport { Button, ButtonProps } from '@material-ui/core';\n\n\nexport function SubmitButton({ label, ...rest }) {\n return (\n \n );\n}\n\nexport function CancelButton({ label, ...rest }) {\n return (\n \n );\n}\n\nexport const LoadDots = ({ labelWhileLoading = '' }) => {\n return (\n \n );\n};\n\nexport const SubmitButtonWithLoader = ({\n loading,\n label,\n labelWhileLoading,\n ...rest\n}) => {\n return loading ? (\n \n ) : (\n \n {label}\n \n );\n};\n","import React from 'react';\nimport { IconButton, InputAdornment, TextFieldProps } from '@material-ui/core';\nimport { useState } from 'react';\nimport TextInput from '.';\nimport Image from '../../components/Image';\n// import { FormikPropType } from '../Formik';\n\nexport default function SecureInput({\n label,\n showSecure = true,\n ...rest\n}) {\n const [showPassword, setPassword] = useState(false);\n return (\n {\n e.preventDefault();\n return false;\n }}\n InputProps={{\n endAdornment: showSecure && (\n \n setPassword(!showPassword)}\n aria-label=\"toggle password visibility\"\n edge=\"end\"\n >\n {showPassword ? (\n \"icon\"\n ) : (\n \"icon\"\n )}\n \n \n ),\n }}\n />\n );\n}\n","/* eslint-disable no-undef */\n/* eslint-disable no-unused-vars */\nimport { Button, FormControl, InputLabel, MenuItem, Select } from '@material-ui/core';\nimport { Form as _Form, useFormik, FormikConfig, FormikContextType } from 'formik';\nimport React, { ReactNode, useEffect } from 'react';\nimport { CancelButton, SubmitButton } from '../Button';\nimport TextInput from '../TextField';\nimport SecureInput from '../TextField/SecureInput';\n\n// export interface InputType {\n// type: 'email' | 'select' | 'checkbox' | 'text' | 'password';\n// label: string;\n// name: string;\n// component?: any;\n// extraProps?: object;\n// multiline?: boolean;\n// disabled?: boolean;\n// value?: string;\n// }\n// export interface ExtraFormPropsTypes {\n// submitButtonLabel?: string;\n// buttonExtraActions?: boolean;\n// isCancel?: boolean;\n// onCancel?: React.MouseEventHandler;\n// cancelButtonLabel?: string;\n// }\n// export interface FormPropType extends ExtraFormPropsTypes {\n// ui: Partial[];\n// }\n// export interface FormikPropType extends FormPropType {\n// formik: FormikContextType;\n// children?: ReactNode;\n// parentClass?: string;\n// }\n\nconst Selector = ({ formik, value, ...props }) => {\n let component = null;\n switch (props.type) {\n case 'email':\n case 'text': {\n component = (\n \n );\n break;\n }\n case 'password': {\n component = ;\n break;\n }\n default: {\n component =

{`${props.type} not found`}

;\n }\n }\n return component;\n};\n\nfunction Form({\n ui = [],\n submitButtonLabel = '',\n buttonExtraActions = false,\n isCancel = false,\n onCancel,\n cancelButtonLabel = 'Cancel',\n formik,\n parentClass = '',\n ...props\n}) {\n return (\n <>\n
\n {ui.map(\n (\n { component: Component, extraProps = {}, ..._ele },\n index,\n ) => {\n const fieldProps = {\n key: index + 'field',\n onChange: formik.handleChange,\n value: formik.values[`${_ele.name}`],\n error:\n formik.touched[`${_ele.name}`] &&\n Boolean(formik.errors[`${_ele.name}`]),\n helperText:\n formik.touched[`${_ele.name}`] && formik.errors[`${_ele.name}`],\n };\n return !!Component ? (\n \n formik.setFieldValue(_ele.name || '', value)\n }\n value={formik.values[`${_ele.name}`]}\n formik={formik}\n {..._ele}\n {...extraProps}\n />\n ) : (\n \n );\n },\n )}\n \n {submitButtonLabel && (\n <>\n {formik.isSubmitting ? (\n \n ) : (\n \n )}\n \n )}\n {isCancel && (\n \n )}\n \n {props.children}\n \n \n );\n}\n\nexport default Form;\n","import React from \"react\";\nimport { FormControl, InputAdornment, Input } from \"@material-ui/core\";\nimport { useState, useEffect } from \"react\";\nimport { useHistory } from \"react-router\";\n//import { CommercialRootPath } from '../../components/home/commercial/routeConfig';\n//import { useSchemeSearch } from '../../hooks/useSchemeData';\nimport { favLogos } from \"../../logo/logos\";\nimport { _debounce } from \"../../utils/utilityFunctions\";\nimport Image from \"../../components/Image\";\n\nimport \"./searchinput.scss\";\n \nconst Suggestions = ({\n options = [],\n maxItems = 100,\n searchParam,\n}) => {\n const history = useHistory();\n if (!searchParam) return null;\n if (searchParam && !options.length) {\n return (\n \n {`No match results for `}\n {searchParam}\n \n );\n }\n return (\n \n \n {options.length > maxItems\n ? `${maxItems}+ results`\n : `${options.length} results`}\n

\n
    \n {options.slice(0, maxItems).map((ele) => (\n
  • \n \n // history.push(`${CommercialRootPath}/${ele.value}/explore`)\n // }\n >\n \n \n {ele.label}\n \n

    \n \n {ele.schemeCategory}\n \n \n {ele.schemeSubCategory.slice(\n ele.schemeSubCategory.indexOf(\":\") + 1\n )}\n \n

    \n \n
  • \n ))}\n
\n \n );\n};\n\n// export function SchemeSearchInput({\n// id = '',\n// className = '',\n// darkmode = false,\n// placeholder = 'Search',\n// value = '',\n// onChange,\n// searchKey = 'schemeName',\n// ...rest\n// }: any) {\n// const [show, setShow] = useState(false);\n// const [searchParam, setSearchParam] = useState('');\n// const [options, setOptions] = useState([]);\n// const { doGlobalSearch, searchData } = useSchemeSearch({});\n\n// const callFilterFuncion = (e: any) => {\n// doGlobalSearch(searchKey, e.target.value);\n// };\n// const _handleInputChange = (e: any) => {\n// setSearchParam(e.target.value);\n// };\n\n// useEffect(() => {\n// const options: SuggestionOptionType[] = searchData.map((fund: any) => ({\n// label: fund[searchKey],\n// value: fund.isinCode,\n// amcCode: fund.fundAmcCode,\n// schemeCategory: fund.schemeCategory,\n// schemeSubCategory: fund.schemeSubCategory,\n// }));\n// setOptions(options);\n// }, [searchData]);\n\n// return (\n// \n// \n// {darkmode ? (\n// \"icon\"\n// ) : (\n// \"icon\"\n// )}\n// \n// }\n// onFocus={() => setShow(true)}\n// // onBlur={() => {\n// // setShow(false);\n// // setOptions([]);\n// // }}\n// onChange={_debounce(callFilterFuncion, 500, _handleInputChange)}\n// {...rest}\n// />\n// {/* {show && } */}\n// \n// \n// );\n// }\n\nexport default function SearchInput({\n id = \"\",\n className = \"\",\n darkmode = false,\n placeholder = \"Search\",\n value = \"\",\n onChange = (e) => {},\n searchKey = \"scheme_name\",\n ...rest\n}) {\n return (\n \n \n {darkmode ? (\n \"icon\"\n ) : (\n \"icon\"\n )}\n \n }\n onChange={onChange}\n {...rest}\n />\n \n );\n}\n","import React from 'react';\nimport { Button, Dialog } from '@material-ui/core';\nimport { useEffect } from 'react';\nimport { useState } from 'react';\n\nexport function NoteModals({\n showModal = false,\n extraClass = '',\n heading = 'NOTE',\n info = '',\n proceedBtn = '',\n cancelBtn = '',\n proceedHref = '',\n mobileOrEmail = '',\n onCancel = () => { },\n ...props\n}) {\n const [show, setShow] = useState(showModal);\n\n useEffect(() => {\n setShow(showModal);\n }, [showModal]);\n\n const onProceed = () => {\n if (!!props.onProceed && typeof props.onProceed === 'function') {\n props.onProceed();\n return;\n }\n props.push(proceedHref);\n };\n\n return (\n \n
\n

{heading}

\n

\n {info} {mobileOrEmail}\n

\n
\n \n {!!cancelBtn && (\n {\n setShow(!show);\n onCancel();\n }}\n >\n {cancelBtn}\n \n )}\n
\n
\n
\n );\n}\n","import React from 'react';\nimport { Checkbox, FormControlLabel } from \"@material-ui/core\";\n\nexport function CheckBoxField({\n\tlabel = \"\",\n\tonChange = (e) => {},\n\tvalue = false,\n\t...rest\n}) {\n\treturn (\n\t\t}\n\t\t\tlabel={label}\n\t\t\t{...rest}\n\t\t/>\n\t);\n}\n","export const INITIALIZE_NOMINEE_ARRAY = 'INITIALIZE_NOMINEE_ARRAY';\nexport const UPDATE_NOMINEE_ARRAY = 'UPDATE_NOMINEE_ARRAY';","import React from \"react\";\nimport {\n Button,\n Dialog,\n FormControl,\n InputAdornment,\n MenuItem,\n Select,\n } from \"@material-ui/core\";\n import { useEffect, useState } from \"react\";\n import en from \"../../../lang/en-us.js\";\n import { CustomRadio } from \"../../../lib/CustomRadio/index.js\";\n import { saveNominee, sendPhoneOTP } from \"shared/store/actions/nct\";\n import TextInput from \"../../../lib/TextField/index.js\";\n import AddNominee from \"./addNominee\";\n import * as yup from \"yup\";\n import { SubmitButtonWithLoader } from \"../../../lib/Button\";\n import { NoteModals } from \"../../../lib/NoteModals/index.js\";\n import { connect, useDispatch, useSelector } from \"react-redux\";\n import {\n getDate,\n getDateString,\n UPDATE_NOMINEE,\n OTP_ACTIONS,\n panRegex,\n _minDateForCalender,\n } from \"../../../utils/constants\";\n import { getNameIndex } from \"../CorrectionFolios/correction-folios-selection\";\n import { CheckBoxField } from \"../../../lib/CheckBoxField\";\n import { UPDATE_NOMINEE_ARRAY } from \"shared/store/types/nominees\";\n // import { defaultOptions, DigioParamsType, parseNomineeDetailsForEsign, submitDigioDocument, VerifyThrough } from './utils';\n // import { FormattedNomineeType, NomineeInfoRowData } from \"./types\";\n import { RootStateType } from \"shared/store/reducers\";\n import { useHistory, useLocation } from \"react-router-dom\";\n import { NomineeReducerState } from \"shared/store/reducers/nominees\";\n import Image from \"../../Image\";\n \n //\n const {\n dashboard,\n signUp: { form },\n dbCommercial,\n common,\n } = en;\n \n export const relationShips = [\n {\n label: \"Mother\",\n value: \"mother\",\n },\n {\n label: \"Son\",\n value: \"son\",\n },\n {\n label: \"Daughter\",\n value: \"daughter\",\n },\n {\n label: \"Father\",\n value: \"father\",\n },\n {\n label: \"Spouse\",\n value: \"spouse\",\n },\n {\n label: \"Others\",\n value: \"others\",\n },\n ];\n \n export const initialValues= {\n relation: \"\",\n name: \"\",\n dob: \"\",\n share: null,\n gender: \"\",\n pan: \"\",\n address1: \"\",\n address2: \"\",\n pincode: \"\",\n city: \"\",\n state: \"\",\n country: \"India\",\n guardianName: \"\",\n guardianPan: \"\",\n guardianAddress: \"\",\n guardianDob: \"\",\n };\n \n export const validationSchemaNominee = yup.object({\n relation: yup.string().required(\"Relation is required\"),\n name: yup\n .string()\n .required(\"Name is required\")\n .test(\"len\", \"Name should have at least 3 letters\", (val) => {\n return val && val.trim().length >= 3;\n }),\n gender: yup.string().required(\"Gender is required\"),\n dob: yup.date().required(\"Date of Birth is required\").nullable(),\n pan: yup\n .string()\n .nullable()\n .notRequired()\n .matches(panRegex, form.pan.validations.individualPan),\n address1: yup\n .string()\n .notRequired()\n .nullable()\n .test(\"len\", common.spaceNotAllowed, (val) => val?.trim().length !== 0),\n address2: yup\n .string()\n .notRequired()\n .nullable()\n .test(\"len\", common.spaceNotAllowed, (val) => val?.trim().length !== 0),\n city: yup\n .string()\n .notRequired()\n .nullable()\n .test(\"len\", common.spaceNotAllowed, (val) => val?.trim().length !== 0)\n .max(50, common.cityMaxLength),\n state: yup\n .string()\n .notRequired()\n .nullable()\n .test(\"len\", common.spaceNotAllowed, (val) => val?.trim().length !== 0)\n .max(50, common.stateMaxLength),\n pincode: yup\n .string()\n .notRequired()\n .nullable()\n .length(6, \"Pincode should be of 6 digits\"),\n guardianName: yup\n .string()\n .when(\"dob\", {\n is: (dob) => {\n const thisYear = new Date().getFullYear();\n const nomineeDobYear = new Date(dob).getFullYear();\n return dob && thisYear - nomineeDobYear < 18;\n },\n then: yup.string().required(\"Name is required\").test(\"len\", \"Name should have at least 3 letters\", (val) => {\n return val && val.trim().length >= 3;\n }),\n otherwise: yup.string(), \n }),\n guardianPan: yup\n .string()\n .notRequired()\n .nullable()\n .matches(panRegex, form.pan.validations.individualPan)\n .test(\n \"not-same-as-pan\",\n \"Guardian Pan should not be the same as Nominee Pan\",\n function (value) {\n const { pan, nomineePan } = this.parent; \n if (!pan || !value) {\n return true; \n }\n return value !== pan; \n }\n ),\n // guardianDob: yup.string().required('Select date of birth'),\n });\n \n export default function UpdateNomineeEdit() {\n const history = useHistory();\n const location = useLocation();\n const { pan } = useSelector(({ authReducer }) => ({\n ...authReducer,\n }));\n const { investorData, token } = useSelector(\n ({ investor, authReducer }) => ({\n investorData: investor.investorData,\n token: authReducer.token,\n })\n ); \n const { selectedRows, nomineeIndex = null } = location.state;\n const nomineesData = selectedRows[0];\n \n useEffect(() => {\n if (!Object.keys(nomineesData).length) {\n history.replace(\"/\");\n return;\n }\n if(!investorData?.PAN){\n history.replace(\"/investors\")\n }\n }, []);\n \n const [nominees, setNominees] = useState([]);\n const { nominees: data = [], investorName = \"\" } = nomineesData;\n const [noNomineeFlag, setNoNomineeFlag] = useState(false);\n const [deleteIndex, setDeleteIndex] = useState(\"\");\n const [show, setShow] = useState(false);\n const [loading, setLoading] = useState(false);\n const [showShareModal, setShowShareModal] = useState({\n show: false,\n text: \"\",\n });\n \n useEffect(() => {\n setNominees(\n !!data.length && selectedRows.length === 1\n ? data.slice(0, 3).map((_ele) => {\n let nomineeState = {\n relation: [\n \"mother\",\n \"son\",\n \"daughter\",\n \"father\",\n \"spouse\",\n ].includes(_ele?.relation?.toLowerCase())\n ? _ele.relation?.toLowerCase()\n : _ele.relation?.toLowerCase()\n ? \"others\"\n : \"\",\n name: _ele.name || \"\",\n dob: getDate(_ele.dob),\n share: _ele.percent,\n pan: _ele.pan,\n gender: _ele.gender?.toLowerCase(),\n address1: _ele?.address?.line1 || \"\",\n address2: _ele?.address?.line2 || \"\",\n ..._ele?.address,\n country: \"India\",\n guardianName: _ele?.guardian?.name,\n guardianPan: _ele?.guardian?.pan,\n guardianAddress: _ele?.guardian?.address || \"\",\n guardianDob: _ele?.guardian?.dob || \"\",\n isEditable: false,\n showDetails: false,\n editShare: false,\n isNewlyAdded: false,\n addressCheck: false,\n id: _ele.id,\n isEdited: false,\n };\n return { ...nomineeState, initialState: nomineeState };\n })\n : [\n // {\n // ...initialValues,\n // isEditable: false,\n // showDetails: false,\n // editShare: false,\n // isNewlyAdded: true,\n // isEdited: false,\n // },\n ]\n );\n setNoNomineeFlag(!data.length);\n }, []);\n \n // useEffect(() => {\n // setNoNomineeFlag(!data.length);\n // }, [data.length]);\n \n const handleAddNomiee = () => {\n if (nominees.length === 1 && nominees[0].name === \"\") {\n return alert(\"please add 1st nominee\");\n }\n setNominees([\n ...nominees,\n { ...initialValues, isEditable: true, isNewlyAdded: true },\n ]);\n };\n \n const handleAddressCheck = (index, value) => {\n if (!value) {\n setNominees((prev) => {\n return prev.map((currentNominee, i) => {\n if (Number(index) !== i) return currentNominee;\n return {\n ...currentNominee,\n addressCheck: value,\n address1: \"\",\n address2: \"\",\n city: \"\",\n state: \"\",\n };\n });\n });\n } else {\n const {\n address: { line1 = \"\", line2 = \"\" },\n address,\n } = nomineesData;\n \n setNominees((prev) => {\n return prev.map((currentNominee, i) => {\n if (Number(index) !== i) return currentNominee;\n return {\n ...currentNominee,\n addressCheck: value,\n ...address,\n address1: line1,\n address2: line2,\n };\n });\n });\n }\n };\n \n const cancelFormSubmission = (index, id) => {\n setNominees((prevState) => {\n const nominees = [...prevState];\n const nominee = nominees[index];\n if (nominee[\"name\"] === \"\") {\n nominees.splice(index, 1);\n return nominees;\n } else {\n nominees[index] = {\n ...nominee,\n ...(nominee.initialState || initialValues),\n isEditable: false,\n };\n }\n return nominees;\n });\n };\n \n const resetForm = (index) => {\n const nominee = [...nominees];\n nominee[index] = { ...initialValues, isEditable: true };\n setNominees(nominee);\n };\n \n const handleNomineeChange = (key, value, index) => {\n const nominee = [...nominees];\n nominee[index][key] = value;\n setNominees(nominee);\n };\n \n const handleDeleteNominee = (ind) => {\n const updatedNominees = nominees.map((_ele) => ({\n ..._ele,\n isEdited: true,\n }));\n setNominees(\n updatedNominees.filter(\n (_ele, index) => index !== ind\n )\n );\n };\n \n const handleSubmit = () => {\n try {\n setShow(false);\n handleDeleteNominee(deleteIndex);\n } catch (err) {\n alert(err.message);\n }\n };\n \n \n const dispatch = useDispatch();\n \n const handleUpdateNominee = async () => {\n if (noNomineeFlag) {\n try {\n setLoading(true);\n const nomineeApiPayload = {\n email: nomineesData.email,\n mobile: nomineesData.mobile,\n pan: investorData.PAN,\n distributor_id: token,\n address:nomineesData?.address,\n data: selectedRows.map((nomineeData) => {\n return {\n folio: nomineeData.folio,\n amc: nomineeData.amc,\n amc_name: nomineeData.amcName,\n noNominee: \"Y\",\n nominees: [],\n eNomType: \"F\",\n eSignFlag: \"\",\n eNomDocId: \"\",\n };\n }),\n };\n const apiRes = await saveNominee(nomineeApiPayload)(dispatch);\n if (apiRes.status === 201) {\n history.replace(\"/new-transaction/nct-type/success\", {\n state: {\n succesMessage: apiRes.message,\n },\n });\n }\n } catch (err) {\n alert(err.message);\n } finally {\n setLoading(false);\n }\n } else {\n try {\n const totalShare = nominees\n .map((_ele) => _ele.share)\n .reduce((sum = 0, current) => sum + Number(current), 0);\n const gender = nominees.findIndex((ele)=>!ele.gender)\n if (totalShare > 100) {\n throw Error(dashboard.UpdateNominee.NoteModals.greaterModal);\n }\n if (totalShare < 100) {\n throw Error(dashboard.UpdateNominee.NoteModals.lessModal);\n }\n if(gender!==-1){\n const nomineegendererror = gender===0?\"1st\":gender===1?\"2nd\":\"3rd\"\n throw Error(`gender is required for ${nomineegendererror} nominee`);\n }\n if (nominees.length) {\n let names = [];\n let error = false;\n nominees.some((nominee) => {\n if (names.includes(nominee.name)) {\n error = true;\n }\n names = [...names, nominee.name];\n return false;\n });\n if (error)\n throw Error(\"Nominees name should be different from each other\");\n }\n const payload = nominees.map(\n (_ele, ind) => ({\n nominee: ind + 1,\n name: _ele.name,\n percent:_ele.share.toString(),\n gender: _ele.gender,\n dob: getDateString(_ele.dob),\n pan: _ele.pan,\n address: {\n line1: _ele.address1 || \"\",\n line2: _ele.address2 || \"\",\n line3: _ele.address3 || \"\",\n },\n addressCheck: _ele.addressCheck || false,\n city: _ele.city,\n state: _ele.state,\n pincode: _ele.pincode,\n country: _ele.country,\n relation: _ele.relation,\n guardian: {\n name: _ele.guardianName || \"\",\n pan: _ele.guardianPan || \"\",\n pekrn: \"\",\n dob: _ele.guardianDob || \"\",\n },\n })\n );\n const nomineeApiPayload = {\n email: nomineesData.email,\n mobile: nomineesData.mobile,\n pan: investorData.PAN,\n distributor_id: token,\n address:nomineesData?.address,\n data: selectedRows.map((nomineeData) => {\n return {\n folio: nomineeData.folio,\n amc: nomineeData.amc,\n amc_name: nomineeData.amcName,\n noNominee: noNomineeFlag ? \"Y\" : \"\",\n nominees: noNomineeFlag ? [] : payload,\n eNomType: \"F\",\n eSignFlag: \"\",\n eNomDocId: \"\",\n };\n }),\n };\n try {\n setLoading(true);\n const apiRes = await saveNominee(nomineeApiPayload)(dispatch);\n if (apiRes.status === 201) {\n history.replace(\"/new-transaction/nct-type/success\", {\n state: {\n succesMessage: apiRes.message,\n },\n });\n }\n } catch (err) {\n alert(err.message);\n } finally {\n setLoading(false);\n }\n // const { pan = '', pekrn = '', mobile = '' } = props;\n // let res = await props.sendPhoneOTP({\n // mobile,\n // pan,\n // pekrn,\n // action: OTP_ACTIONS.updateNominee,\n // });\n // props.history.replace('update-nominee-edit-otp', {\n // mobile: props.mobile,\n // pan: props.pan,\n // data: [{ folio: nomineesData.id, amc: nomineesData.amc, nominees: payload }],\n // ...(res || {}).body,\n // });\n } catch (e) {\n setShowShareModal({ show: true, text: e.message });\n // alert(e.message);\n } finally {\n setLoading(false);\n }\n }\n };\n \n return (\n
\n {/* { */}\n {/* { */}\n {/* nominees.every((_ele) => !_ele.isEditable) */}\n {/* ? props.history.goBack() */}\n {/* : nominees.map( */}\n {/* (_ele, index) => */}\n {/* _ele.isEditable && cancelFormSubmission(index, `${index}`), */}\n {/* ); */}\n {/* }} */}\n {/* /> */}\n {/* } */}\n
\n
\n {/*
{dashboard.UpdateNominee.UpdateNomineeInfo}
*/}\n
\n {nominees.every((_ele) => !_ele.isEditable) && (\n
\n setNoNomineeFlag(!noNomineeFlag)}\n value={noNomineeFlag}\n label={dbCommercial.profileDetails.nominees.noNominee}\n />\n
\n )}\n {!noNomineeFlag && nominees?.length > 0 && \n nominees?.map((_ele, index) =>\n !_ele?.isEditable ? (\n
\n
\n
\n \n \"icon\"\n \n {getNameIndex(index + 1)}{\" \"}\n {dashboard.UpdateNominee.nomineeText}\n
\n {\n setNominees((prevState) => {\n const nominees = [...prevState];\n const { initialState, ...nominee } =\n nominees[index];\n nominees[index].initialState = nominee;\n nominees[index].isEditable = true;\n return nominees;\n });\n }}\n />\n {nominees.length > 1 && (\n {\n setShow(true);\n setDeleteIndex(index);\n }}\n />\n )}\n
\n
\n
\n
\n
\n

\n {\" \"}\n {dashboard.UpdateNominee.name}\n

\n

{_ele?.name}

\n
\n
\n

\n {dashboard.UpdateNominee.relation}\n

\n

\n {_ele?.relation?.slice(0, 1).toUpperCase() +\n _ele?.relation?.slice(1)}\n

\n
\n
\n {!_ele?.editShare ? (\n <>\n

\n {dashboard.UpdateNominee.share}\n

\n

\n {_ele?.share}%\n {/* \n handleNomineeChange(\n \"editShare\",\n true,\n index\n )\n }\n /> */}\n

\n \n ) : (\n
\n {\n if (Number(e.target.value) === 0) {\n alert(\"Nominee share should not be 0\");\n return;\n }\n handleNomineeChange(\n \"editShare\",\n false,\n index\n );\n handleNomineeChange(\n \"isEdited\",\n true,\n index\n );\n }}\n // onChange={(e) => {\n // if (Number(e.target.value) <= 100) {\n // handleNomineeChange(\n // 'share',\n // e.target.value,\n // index,\n // )\n // }\n // }}\n />\n {\n handleNomineeChange(\n \"editShare\",\n false,\n index\n );\n handleNomineeChange(\n \"isEdited\",\n true,\n index\n );\n }}\n />\n
\n )}\n
\n {/*
\n {!_ele.showDetails ? (\n \n handleNomineeChange(\n \"showDetails\",\n true,\n index\n )\n }\n >\n {dashboard.UpdateNominee.more}\n \n \n ) : (\n \n handleNomineeChange(\n \"showDetails\",\n false,\n index\n )\n }\n >\n {dashboard.UpdateNominee.less}\n \n \n )}\n
*/}\n
\n {\n setNominees((prevState) => {\n const nominees = [...prevState];\n const { initialState, ...nominee } =\n nominees[index];\n nominees[index].initialState = nominee;\n nominees[index].isEditable = true;\n nominees[index].isEdited = true;\n return nominees;\n });\n }}\n />\n {nominees.length > 1 && (\n {\n setShow(true);\n setDeleteIndex(index);\n }}\n />\n )}\n
\n
\n
\n
\n
\n ) : (\n resetForm(ind)}\n handleNomineeChange={(\n key,\n value,\n ind\n ) => handleNomineeChange(key, value, ind)}\n handleAddressCheck={handleAddressCheck}\n saveNominee={(key, value, ind) => {\n const nominee = [...nominees];\n nominee[ind] = {\n ...nominee[ind],\n isEditable: false,\n isNewlyAdded: false,\n isEdited: true,\n };\n setNominees(nominee);\n }}\n nominees={nominees}\n investorName={investorName}\n relations={\n _ele.relation\n ? relationShips.filter((relation) => {\n const addedRelations = nominees\n .map((nominee) => {\n if (nominee.relation !== _ele.relation)\n return nominee.relation;\n })\n .filter((ele) => ele);\n return !addedRelations.includes(relation.label);\n })\n : relationShips.filter((relation) => {\n const addedRelations = nominees.map(\n (_ele) => _ele.relation\n );\n return !addedRelations.includes(relation.label);\n })\n }\n pan={pan || investorData.PAN}\n cancelFormSubmission={cancelFormSubmission}\n />\n )\n )}\n {!noNomineeFlag && nominees.length < 3 && (\n \n )}\n {(nominees?.length > 0 || noNomineeFlag ) && nominees?.every(\n (_ele) => !_ele.isEditable && !_ele.editShare\n ) && (\n
\n \n
\n )}\n \n setShow(false)}\n />\n \n setShowShareModal({\n show: false,\n text: \"\",\n })\n }\n />\n
\n
\n
\n
\n );\n }\n ","import React from 'react';\nimport en from '../../../lang/en-us';\nimport {\n accountNumberRegex,\n accountNumberValidation,\n ACCOUNT_TYPE_MASTER_DATA,\n emailRegex,\n isAlphaNumeric,\n MAX_LENGTH_FOR_GUARDIAN_NAME,\n minDateForCalender,\n MODE_OF_HOLDING_MASTER_DATA,\n TAX_RESIDENCY_MASTER_DATA,\n validateIfsc,\n} from '../../../utils/constants';\nimport { getTaxStatusCode } from '../portfolios/utils';\nconst { dashboard, common } = en;\n\n\n\nconst joinName = (name) => {\n if (name) {\n return name.split(' ').join('').toLowerCase();\n }\n return '';\n};\n\nexport const validateName = (oldName, newName) => {\n const match = /\\d/.test(newName);\n if (newName.trim().length < 5) {\n return {\n error: true,\n helperText: dashboard.CorrectionFolios.Selection.Fields.errors.name.minFiveCharacters,\n };\n }\n\n if (match) {\n return {\n error: true,\n helperText: dashboard.CorrectionFolios.Selection.Fields.errors.name.noNumericValues,\n };\n }\n if (joinName(oldName) === joinName(newName)) {\n return {\n error: true,\n helperText: dashboard.CorrectionFolios.Selection.Fields.errors.name.sameNames,\n };\n }\n return { error: false, helperText: '' };\n};\n\nexport const ifscRegex = /^[A-Za-z]{4}0[A-Z0-9a-z]{6}$/;\n\nexport const initSelection = [\n {\n label: dashboard.CorrectionFolios.Selection.Fields.primaryHolder,\n type: 'text',\n isSelected: false,\n newValue: '',\n field: 'investorName',\n validate: ({ value, newValue }) => {\n if (newValue) {\n return validateName(value, newValue);\n }\n return { error: false, helperText: '' };\n },\n handleChangeCondition: (newValue) => {\n if (isAlphaNumeric(newValue) || !newValue) {\n return true;\n }\n },\n }, \n {\n label: dashboard.CorrectionFolios.Selection.Fields.secondHolder,\n field: 'secondHolder',\n type: 'text',\n isSelected: false,\n newValue: '',\n validate: ({ value, newValue }) => {\n if (newValue) {\n return validateName(value, newValue);\n }\n return { error: false, helperText: '' };\n },\n handleChangeCondition: (newValue) => {\n if (isAlphaNumeric(newValue) || !newValue) {\n return true;\n }\n },\n },\n {\n label: dashboard.CorrectionFolios.Selection.Fields.thirdHolder,\n field: 'thirdHolder',\n type: 'text',\n isSelected: false,\n newValue: '',\n validate: ({ value, newValue }) => {\n if (newValue) {\n return validateName(value, newValue);\n }\n return { error: false, helperText: '' };\n },\n handleChangeCondition: (newValue) => {\n if (isAlphaNumeric(newValue) || !newValue) {\n return true;\n }\n },\n },\n {\n label: dashboard.CorrectionFolios.Selection.Fields.guardianName,\n field: 'guardian_name',\n type: 'text',\n isSelected: false,\n newValue: '',\n validate: ({ value, newValue }) => {\n if (newValue) {\n return validateName(value, newValue);\n }\n return { error: false, helperText: '' };\n },\n handleChangeCondition: (newValue) => {\n if (isAlphaNumeric(newValue) || !newValue) {\n return true;\n }\n },\n },\n {\n label: dashboard.CorrectionFolios.Selection.Fields.mobileNo,\n field: 'mobile',\n type: 'number',\n isSelected: false,\n newValue: '',\n validate: ({ value, newValue }) => {\n if (newValue) {\n if (newValue[0] == 0) {\n return {\n error: true,\n helperText:\n dashboard.CorrectionFolios.Selection.Fields.errors.mobile\n .startingWithZero,\n };\n }\n if (/\\D/.test(newValue) || newValue.length !== 10) {\n return {\n error: true,\n helperText:\n dashboard.CorrectionFolios.Selection.Fields.errors.mobile.validNumber,\n };\n }\n return { error: false, helperText: '' };\n }\n return { error: false, helperText: '' };\n },\n handleChangeCondition: (newValue) => {\n if ((/^\\d+$/.test(newValue) || !newValue) && newValue.length < 11) {\n return true;\n }\n },\n },\n {\n label: dashboard.CorrectionFolios.Selection.Fields.dateOfBirth,\n field: 'dob',\n type: 'dob',\n isSelected: false,\n newValue: '',\n validate: ({ value, newValue }) => {\n if (newValue) {\n const currentDate = new Date();\n if (currentDate < new Date(newValue)) {\n return { error: true, helperText: common.errors.dob.minDOBValidation };\n }\n if (new Date(newValue) < new Date(minDateForCalender())) {\n return { error: true, helperText: common.errors.dob.ageLessThanHundred };\n }\n }\n return { error: false, helperText: '' };\n },\n },\n {\n label: dashboard.CorrectionFolios.Selection.Fields.bankAccNo,\n field: 'bank_accountNo',\n type: 'text',\n isSelected: false,\n newValue: '',\n validate: ({ value, newValue }) => {\n if (newValue) {\n if (!accountNumberRegex.test(newValue)) {\n return {\n error: true,\n helperText: common.errors.bankErrors.accountNo.regexError,\n };\n }\n }\n return { error: false, helperText: '' };\n },\n handleChangeCondition: (newValue) => {\n if (accountNumberValidation(newValue)) {\n return true;\n }\n },\n },\n {\n label: dashboard.CorrectionFolios.Selection.Fields.bankAccType,\n field: 'bank_accountType',\n type: 'text',\n isSelected: false,\n newValue: '',\n validate: ({ value, newValue }) => {\n if (newValue && newValue === 'Select') {\n return { error: true, helperText: common.errors.bankErrors.accountType };\n }\n return { error: false, helperText: '' };\n },\n masterData: ACCOUNT_TYPE_MASTER_DATA,\n },\n {\n label: dashboard.CorrectionFolios.Selection.Fields.bankIfsc,\n field: 'bank_ifsc',\n type: 'text',\n isSelected: false,\n newValue: '',\n validate: ({ value, newValue }) => {\n if (newValue) {\n const match = ifscRegex.test(newValue);\n if (!match) {\n return { error: true, helperText: common.errors.bankErrors.ifsc.regex };\n }\n }\n return { error: false, helperText: '' };\n },\n handleChangeCondition: (newValue) => {\n if (validateIfsc(newValue)) {\n return true;\n }\n return false;\n },\n shouldValidateField: true,\n },\n {\n label: dashboard.CorrectionFolios.Selection.Fields.taxResidency,\n field: 'taxStatus',\n type: 'text',\n isSelected: false,\n newValue: '',\n masterData: Object.values(getTaxStatusCode),\n validate: ({ value, newValue }) => {\n if (newValue === 'Select') {\n return { error: true, helperText: common.errors.taxResidency };\n }\n return { error: false, helperText: '' };\n },\n },\n {\n label: dashboard.CorrectionFolios.Selection.Fields.modeOfHolding,\n field: 'modeOfHolding',\n type: 'text',\n isSelected: false,\n newValue: '',\n masterData: MODE_OF_HOLDING_MASTER_DATA,\n validate: ({ value, newValue }) => {\n if (newValue === 'Select') {\n return { error: true, helperText: common.errors.modeOfHolding };\n }\n return { error: false, helperText: '' };\n },\n },\n // {\n // label: dashboard.CorrectionFolios.Selection.Fields.dpIdNdClientId,\n // field : 'dpid',\n // type: 'text',\n // isSelected : false,\n // newValue : '',\n // },\n {\n label: dashboard.CorrectionFolios.Selection.Fields.email,\n field: 'email',\n type: 'text',\n isSelected: false,\n newValue: '',\n validate: ({ value, newValue }) => {\n if (newValue && !newValue.match(emailRegex)) {\n return { error: true, helperText: common.errors.email.regex };\n }\n return { error: false, helperText: '' };\n },\n },\n];\n","import React from \"react\";\n// import en from '../../../../lang/en-us';\n// import TextInput from '../../../../lib/TextField';\n// const { dashboard, common } = en;\n// import { useEffect, useState } from 'react';\n// import { connect } from 'react-redux';\n// import { ConsolidateTableRowType } from '../ConsolidationFolios/types';\n// import { BANK } from '../../../../redux-store/types/nct';\n// import { SubmitButton } from '../../../../lib/Button';\n// import { FormControl, FormHelperText, MenuItem, Select } from '@material-ui/core';\n// import {\n// accountNumberRegex,\n// accountNumberValidation,\n// ACCOUNT_TYPE_MASTER_DATA,\n// getBankAddress,\n// ifscRegex,\n// MINOR_MAJOR,\n// validateIfsc,\n// } from '../../../../utils/constants';\n// import { RootStateType } from '../../../../redux-store/reducers';\n// import {\n// fetchIFSCDetails as getIfscDetails,\n// sendPhoneOTP,\n// } from '../../../../redux-store/actions/nct';\n// import { NoteModals } from '../../../../lib/NoteModals';\n// import { useRef } from 'react';\n// import { IfscModal } from '../../../../lib/NoteModals/ifscModal';\n// import { ActionHeader, FaqLink } from '..';\n\n// export type BANK_DETAILS = {\n// label: string;\n// value: string;\n// name: string;\n// fieldValidation?: any;\n// actionOnBlur?: boolean;\n// isDisabled: boolean;\n// shouldValidateField?: boolean;\n// options?: { label: string; value: string | number }[];\n// };\n\n// const initialValues = {\n// accountNo: '',\n// accountType: '',\n// branch: '',\n// city: '',\n// default: '',\n// ifsc: '',\n// micr: '',\n// name: '',\n// neftIfsc: '',\n// pincode: '',\n// };\n\n\n\nexport function ValidationUI({\n isValidating = false,\n onValidationText = 'Validating',\n successfulValidationText = 'Validated',\n}) {\n return (\n
\n {isValidating ? (\n <>\n
\n {onValidationText}\n \n ) : (\n \n \n {successfulValidationText}\n

\n )}\n \n );\n}\n\n// function MinorStatusEditBank(props: any) {\n// const { Funds: targetFunds, newPan, defaultBank } = props.location.state || {};\n\n// const notInitialRender = useRef(false);\n// const [bankDetails, setBankDetails] = useState(initialValues);\n\n// const [ifscValidation, setValidation] = useState(false);\n\n// const [isDisabled, setDisabled] = useState(false);\n\n// const [showLoader, setLoader] = useState(false);\n\n// const [newDetails, setDetails] = useState({\n// name: '',\n// branch: '',\n// city: '',\n// });\n\n// const [showModal, setShowModal] = useState(false);\n\n// const [errors, setErrors] = useState({});\n\n// useEffect(() => {\n// if (!props.location.state) {\n// props.history.push('/');\n// return;\n// }\n// setBankDetails({ ...defaultBank, accountType: 'SAVINGS' });\n// }, []);\n\n// const ifscCode = bankDetails.ifsc;\n\n// useEffect(() => {\n// if (ifscCode) {\n// if (notInitialRender.current) {\n// setLoader(false);\n// setDisabled(true);\n// const ifscCode = bankDetails.ifsc;\n// if (ifscCode.length === 11) {\n// document.getElementById('ifsc')?.blur();\n// _getIFSCDetails();\n// }\n// } else {\n// notInitialRender.current = true;\n// }\n// }\n// }, [ifscCode]);\n\n// const handleChange = (value: any, key: string) => {\n// setBankDetails({\n// ...bankDetails,\n// [key]: value,\n// });\n// };\n\n// const validateForm = () => {\n// let errors: any = {};\n// let formIsValid = true;\n// const firstBank = bankDetails;\n// if (!firstBank.accountNo) {\n// formIsValid = false;\n// errors['accountNo'] = common.errors.bankErrors.accountNo.required;\n// }\n// if (!accountNumberRegex.test(firstBank.accountNo)) {\n// formIsValid = false;\n// errors['accountNo'] = common.errors.bankErrors.accountNo.regexError;\n// }\n// if (!firstBank.ifsc) {\n// formIsValid = false;\n// errors['ifsc'] = common.errors.bankErrors.ifsc.required;\n// }\n// if (!firstBank.ifsc.match(ifscRegex)) {\n// formIsValid = false;\n// errors['ifsc'] = common.errors.bankErrors.ifsc.regex;\n// }\n// if (!firstBank.name) {\n// formIsValid = false;\n// errors['name'] = common.errors.bankErrors.name;\n// }\n// if (\n// !firstBank.accountType ||\n// firstBank.accountType === dashboard.ChangeBank.selectedFolios.fields.accountType\n// ) {\n// formIsValid = false;\n// errors['accountType'] = common.errors.bankErrors.accountType;\n// }\n// if (!firstBank.branch) {\n// formIsValid = false;\n// errors['branch'] = common.errors.bankErrors.branch;\n// }\n// if (!firstBank.city) {\n// formIsValid = false;\n// errors['city'] = common.errors.bankErrors.city;\n// }\n// setErrors(errors);\n// return formIsValid;\n// };\n\n// const handleSubmit = () => {\n// if (validateForm()) {\n// let bankInfo = targetFunds[0].bank;\n// bankInfo = bankInfo.map((_ele: BANK) => {\n// if (_ele.default === 'Y') return bankDetails;\n// return _ele;\n// });\n// props.history.replace('minor-status-list', {\n// targetFunds: [{ ...targetFunds[0], bank: bankInfo }],\n// newPan,\n// });\n// }\n// };\n\n// const removeErrors = () => {\n// setErrors({});\n// };\n\n// const _handleChangeBankDetails = (\n// bankName: string = '',\n// bankAddress: string = '',\n// city: string = '',\n// ) => {\n// setDetails({\n// name: bankName,\n// branch: bankAddress,\n// city,\n// });\n// };\n\n// const _handleUpdateDetails = () => {\n// const { name: bankName = '', branch: bankAddress = '', city = '' } = newDetails;\n// setBankDetails({\n// ...bankDetails,\n// name: bankName,\n// branch: bankAddress,\n// city: city,\n// });\n// setShowModal(false);\n// setDisabled(false);\n// };\n// const _getIFSCDetails = async () => {\n// if (bankDetails.ifsc.match(ifscRegex)) {\n// setValidation(true);\n// setLoader(true);\n// const { pan, pekrn, mobile, reqId } = props;\n// try {\n// let response: any = await props.getIfscDetails({\n// pan,\n// pekrn,\n// mobile,\n// reqId,\n// ifscCode: bankDetails.ifsc,\n// });\n// const { errors = [], data = [] } = (response || {}).body;\n// if (errors.length) {\n// const [firstError] = errors;\n// throw Error(firstError?.message);\n// }\n// const [details] = data;\n// const { BankAdd1 = '', BankAdd2 = '', BankAdd3 = '' } = details;\n// _handleChangeBankDetails(\n// details.BankName,\n// getBankAddress(BankAdd1, BankAdd2, BankAdd3),\n// details.BankCity,\n// );\n// setDisabled(false);\n// setValidation(false);\n// setShowModal(true);\n// } catch (e: any) {\n// setLoader(false);\n// setValidation(false);\n// setDisabled(true);\n// _handleChangeBankDetails();\n// setErrors({ ifsc: e.message });\n// }\n// } else {\n// _handleChangeBankDetails();\n// setLoader(false);\n// setValidation(false);\n// setDisabled(true);\n// setErrors({ ifsc: common.errors.bankErrors.ifsc.regex });\n// }\n// };\n\n// const _handleModalClose = () => {\n// setValidation(false);\n// setLoader(false);\n// setDisabled(true);\n// _handleChangeBankDetails();\n// setShowModal(false);\n// setBankDetails({\n// ...bankDetails,\n// ifsc: '',\n// });\n// };\n\n// return (\n//
\n// \n//
\n//
\n//
\n//

\n// {dashboard.MinorStatus.ReviewDetails.editFolioBank}\n// {/* Put Folio Number HERE */}\n// {targetFunds[0].folio}\n//

\n//
\n// {[\n// {\n// label: dashboard.MinorStatus.ReviewDetails.fields.accountNumber,\n// value: bankDetails.accountNo || '',\n// name: 'accountNo',\n// fieldValidation: accountNumberValidation,\n// isDisabled: false,\n// },\n// {\n// label: dashboard.MinorStatus.ReviewDetails.fields.ifsc,\n// value: bankDetails.ifsc || '',\n// name: 'ifsc',\n// actionOnBlur: true,\n// isDisabled: false,\n// shouldValidateField: true,\n// fieldValidation: validateIfsc,\n// },\n// {\n// label: dashboard.MinorStatus.ReviewDetails.fields.bankName,\n// value: bankDetails.name || '',\n// name: 'name',\n// isDisabled: true,\n// },\n// {\n// label: dashboard.MinorStatus.ReviewDetails.fields.accountType,\n// value:\n// bankDetails.accountType ||\n// dashboard.ChangeBank.selectedFolios.fields.accountType,\n// name: 'accountType',\n// isDisabled: false,\n// },\n// {\n// label: dashboard.MinorStatus.ReviewDetails.fields.branch,\n// value: bankDetails.branch || '',\n// name: 'branch',\n// isDisabled: true,\n// },\n// {\n// label: dashboard.MinorStatus.ReviewDetails.fields.city,\n// value: bankDetails.city || '',\n// name: 'city',\n// isDisabled: true,\n// },\n// ].map((_ele: BANK_DETAILS, index: number) =>\n// _ele.name === 'accountType' ? (\n// \n// {\n// handleChange(e.target.value, _ele.name);\n// }}\n// onBlur={removeErrors}\n// // readOnly={true}\n// >\n// \n// {\n// dashboard.ChangeBank.selectedFolios.fields\n// .accountType\n// }\n// \n// {['SAVINGS'].map((type: string) => (\n// \n// {type}\n// \n// ))}\n// \n// \n// {errors[_ele.name]}\n// \n// \n// ) : (\n// <>\n// \n// {\n// if (_ele.fieldValidation) {\n// _ele.fieldValidation(e.target.value)\n// ? handleChange(\n// e.target.value,\n// _ele.name,\n// )\n// : null;\n// return;\n// }\n// handleChange(e.target.value, _ele.name);\n// }}\n// error={!!errors[_ele.name]}\n// helperText={errors[_ele.name]}\n// onBlur={() => removeErrors()}\n// onFocus={() => setErrors({})}\n// disabled={_ele.isDisabled}\n// title={!!_ele.isDisabled ? _ele.value : ''}\n// />\n// {_ele.shouldValidateField && showLoader && (\n// \n// \n// \n// )}\n// \n// \n// ),\n// )}\n//
\n// \n//
\n// \n//
\n// {showModal && (\n// \n// )}\n//
\n//
\n//
\n//
\n// );\n// }\n// export default connect(({ authReducer }: RootStateType) => ({ ...authReducer }), {\n// getIfscDetails,\n// sendPhoneOTP,\n// })(MinorStatusEditBank);\n","import React from \"react\";\nimport {\n Button,\n Checkbox,\n FormControl,\n FormControlLabel,\n FormGroup,\n FormHelperText,\n MenuItem,\n Select,\n SwipeableDrawer,\n InputAdornment,\n} from \"@material-ui/core\";\nimport moment from \"moment\";\nimport { useEffect, useState } from \"react\";\nimport en from \"../../../lang/en-us\";\nimport SearchInput from \"../../../lib/SearchInput\";\nimport TextInput from \"../../../lib/TextField\";\nimport { NOMINEE } from \"shared/store/types/nct\";\nimport { sendPhoneOTP, fetchIFSCDetails } from \"shared/store/actions/nct\";\nimport { NOMINEEINFO } from \"../UpdateNominee/update-nominee-edit\";\nimport { initSelection, validateName } from \"./types\";\nimport { connect } from \"react-redux\";\nimport { RootStateType } from \"shared/store/reducers\";\nimport {\n getDateString,\n ifscRegex,\n isAlphaNumeric,\n minDateForCalender,\n OTP_ACTIONS,\n _minDateForCalender,\n DATA_ERROR,\n} from \"../../../utils/constants\";\nimport { ValidationUI } from \"../MinorStatus/minor-status-edit-bank\";\nimport DatePickerInput from \"../../../lib/DatePicker\";\n//import { ActionHeader, FaqLink } from \"..\";\nimport { SubmitButtonWithLoader } from \"../../../lib/Button\";\nimport { getTaxStatusCode } from \"../portfolios/utils\";\nconst { dashboard, common, nctLinks } = en;\n\nconst payloadKeyValues = {\n investorName: \"firstHolder\",\n secondaryHolderName: \"secondHolder\",\n thirdHolderName: \"thirdHolder\",\n guardian_name: \"guardian\",\n mobile: \"mobile\",\n dob: \"dob\",\n taxStatus: \"taxStatus\",\n modeOfHolding: \"modeOfHolding\",\n email: \"email\",\n};\n\nexport const getNameIndex = (index) => {\n if (index === 1) {\n return \"1st\";\n } else if (index === 2) {\n return \"2nd\";\n } else if (index === 3) {\n return \"3rd\";\n }\n};\n\nfunction CorrectionFoliosSelection(props) {\n const { fund = null } = props.location.state || {};\n const [selection, setSelection] =\n useState(initSelection);\n const [selectedItems, setSelectedItems] = useState([]);\n const [nameFields, setNameFields] = useState([\n dashboard.CorrectionFolios.Selection.Fields.primaryHolder,\n dashboard.CorrectionFolios.Selection.Fields.secondHolder,\n dashboard.CorrectionFolios.Selection.Fields.thirdHolder,\n dashboard.CorrectionFolios.Selection.Fields.guardianName,\n ]);\n const [openDrawer, setDrawer] = useState(false);\n const [showLoader, setLoader] = useState(false);\n const [ifscValidation, setValidation] = useState(false);\n const [nomineesShare, setNomineesShare] = useState([]);\n const [searchString, setSearch] = useState(\"\");\n const [error, setError] = useState({\n error: false,\n message: \"\",\n });\n const [validate, setValidate] = useState(false);\n const [loading, setLoading] = useState(false);\n\n const ifscField = selectedItems.find(\n (_ele) => _ele.field === \"bank_ifsc\"\n );\n\n useEffect(() => {\n setLoader(false);\n if (ifscField?.newValue.length === 11) {\n // document.getElementById(\"bank_ifsc\")?.blur();\n checkForCorrectIFSC();\n }\n }, [ifscField?.newValue]);\n\n const nomineeNamesKey = (index) => {\n return `${index}_nominee_name`;\n };\n\n const nomineeSharesKey = (index) => {\n return `${index}_nominee_share`;\n };\n\n useEffect(() => {\n if (!fund) {\n props.history.push(\"/\");\n return;\n }\n const nameFieldsOfNominee = fund.nominees.map(\n (_ele, index) => `Nominee ${index + 1} name`\n );\n setNameFields([...nameFields, ...nameFieldsOfNominee]);\n const fundKeysByRowData = {\n ...fund,\n bank_ifsc: fund?.bank[0]?.ifsc,\n bank_accountNo: fund?.bank[0]?.accountNo,\n bank_accountType: fund?.bank[0]?.accountType,\n guardian_name: fund?.guardian?.name,\n };\n const nomineesNames = fund.nominees.reduce(\n (prev, curr, index) => {\n return {\n ...prev,\n [nomineeNamesKey(index)]: curr.name,\n };\n },\n {}\n );\n\n const nomineesShares = fund.nominees.reduce(\n (prev, curr, index) => {\n return {\n ...prev,\n [nomineeSharesKey(index)]: curr.percent,\n };\n },\n {}\n );\n\n const nomineesNamesData = fund.nominees\n .slice(0, 3)\n .map((_ele, index) => ({\n label: `${getNameIndex(index + 1)} Nominee name`,\n field: `${index}_nominee_name`,\n type: \"text\",\n isSelected: false,\n newValue: \"\",\n validate: ({\n value,\n newValue,\n }) => {\n if (newValue) {\n return validateName(value, newValue);\n }\n return { error: false, helperText: \"\" };\n },\n handleChangeCondition: (newValue) => {\n if (isAlphaNumeric(newValue) || !newValue) {\n return true;\n }\n },\n }));\n const nomineesShareData = fund.nominees\n .slice(0, 3)\n .map((_nominee, index) => ({\n label: `Share of Nominee ${index + 1} (in %)`,\n field: `${index}_nominee_share`,\n type: \"number\",\n isSelected: false,\n isNominee: true,\n handleChangeCondition: (newValue) => {\n if (\n (/^\\d+$/.test(newValue) || !newValue) &&\n Number(newValue) <= 100\n ) {\n return true;\n }\n },\n newValue: \"\",\n validate: ({ value, newValue }) => {\n if (newValue && Number(newValue) === 0) {\n return { error: true, helperText: \"Share should not be zero\" };\n }\n return { error: false, helperText: \"\" };\n },\n }));\n setNomineesShare(nomineesShareData);\n const updateKeysWithRowData = {\n ...fundKeysByRowData,\n ...nomineesNames,\n ...nomineesShares,\n };\n const updatedSelections = [\n ...initSelection,\n ...nomineesNamesData,\n ...nomineesShareData,\n ].map((selector) => ({\n ...selector,\n value:\n updateKeysWithRowData[\n `${\n selector.field === \"taxStatus\" ? \"taxStatusLabel\" : selector.field\n }`\n ], // manupulating taxStatus\n }));\n setSelection(updatedSelections);\n }, []);\n\n const _handleCheckBoxChange = (\n selector,\n index\n ) => {\n setSelectedItems((prevSelections) => {\n return selector.isSelected\n ? [...prevSelections, selector]\n : prevSelections.filter(\n (_selector) => selector.label !== _selector.label\n );\n });\n\n setSelection((prevSelections) => {\n prevSelections[index] = selector;\n return prevSelections;\n });\n if (selector.isNominee) {\n setNomineesShare(\n nomineesShare.map((_ele) => {\n if (_ele.field === selector.field) {\n return {\n ..._ele,\n isSelected: !_ele.isSelected,\n };\n }\n return _ele;\n })\n );\n }\n };\n\n const handleTextInputChange = (value, label) => {\n setSelectedItems(\n selectedItems.map((_ele) => {\n if (_ele.label === label) {\n return {\n ..._ele,\n newValue: value,\n };\n }\n return _ele;\n })\n );\n };\n\n const checkIfShareIsSelected = () => {\n return nomineesShare.some(\n (_ele) => _ele.isSelected\n );\n };\n\n const handleSubmit = async () => {\n const { fund } = props.location.state;\n const nomineeIds = fund.nominees\n .slice(0, 3)\n .map((_ele) => _ele.id);\n const keyValuePairs = selectedItems.reduce(\n (prev, curr) => ({\n ...prev,\n [curr.field]: curr.newValue || \"\",\n }),\n {}\n );\n const selectedFieldPairs = selection.reduce(\n (prev, curr) => ({\n ...prev,\n [curr.field]: \"\",\n }),\n {}\n );\n const correctedData = { ...selectedFieldPairs, ...keyValuePairs };\n const values = Object.keys(\n payloadKeyValues\n ).reduce(\n (prev, curr) => ({\n ...prev,\n [payloadKeyValues[curr]]: correctedData[curr],\n }),\n {}\n );\n const updatedNominees = nomineeIds.length\n ? nomineeIds.map((_ele, index) => ({\n id: _ele,\n name: correctedData[`${index}_nominee_name`],\n percent: correctedData[`${index}_nominee_share`],\n }))\n : [{ id: 1, name: \"\", percent: \"\" }];\n if (checkIfShareIsSelected()) {\n const totalShare = updatedNominees\n .map((_ele) => _ele.percent)\n .reduce((sum = 0, current) => sum + Number(current), 0);\n if (totalShare < 100) {\n alert(\"Total Share is less than 100 %\");\n return;\n }\n if (totalShare > 100) {\n alert(\"Total Share is greater than 100 %\");\n return;\n }\n }\n const data = {\n folio: fund?.folio,\n amc: fund?.amc,\n ...values,\n taxStatus:\n Object.keys(getTaxStatusCode).find(\n (_ele) => getTaxStatusCode[_ele] === values.taxStatus\n ) || \"\",\n bank: {\n accountNo: correctedData[\"bank_accountNo\"],\n accountType: correctedData[\"bank_accountType\"],\n ifsc: correctedData[\"bank_ifsc\"],\n },\n dob: getDateString(correctedData[\"dob\"]),\n nominees: updatedNominees,\n dpId: \"\",\n };\n const { pan = \"\", pekrn = \"\", mobile = \"\" } = props;\n try {\n setLoading(true);\n let res = await props.sendPhoneOTP({\n mobile,\n pan,\n pekrn,\n action: OTP_ACTIONS.correctionFolios,\n });\n props.history.replace(\"correction-folios-otp\", {\n mobile: props.mobile,\n pan: props.pan,\n amc: fund.amc,\n data,\n ...(res || {}).body,\n });\n } catch (err) {\n alert(err.message);\n } finally {\n setLoading(false);\n }\n };\n\n const checkForCorrectIFSC = async () => {\n setValidation(true);\n setLoader(true);\n let ifsc = (\n selectedItems.find(\n (_ele) => _ele.field === \"bank_ifsc\"\n ) || {}\n ).newValue;\n if (ifsc.match(ifscRegex)) {\n const { pan, pekrn, mobile, reqId } = props;\n try {\n let response = await props.fetchIFSCDetails({\n pan,\n pekrn,\n mobile,\n reqId,\n ifscCode: ifsc,\n });\n const { errors = [], data = [] } = (response || {}).body;\n if (errors.length) {\n const [firstError] = errors;\n throw Error(firstError?.message);\n }\n setValidation(false);\n setError({\n error: false,\n message: \"\",\n });\n } catch (e) {\n setLoader(false);\n setValidation(false);\n setError({ error: true, message: e.message });\n }\n } else {\n setLoader(false);\n setValidation(false);\n setError({ error: true, message: common.errors.bankErrors.ifsc.regex });\n }\n };\n\n const handleSearch = (selections) => {\n if (searchString) {\n return selections.filter((_ele) =>\n _ele.label.toLowerCase().includes(searchString.toLowerCase())\n );\n }\n return selections;\n };\n\n const getNames = (\n selectorKey,\n keyList,\n updatedValue,\n oldValue\n ) => {\n if (updatedValue) {\n const filteredNames = keyList.filter(\n (_ele) => _ele !== selectorKey\n );\n const namesData = selectedItems\n .map((_ele) => {\n if (filteredNames.includes(_ele.label)) {\n return _ele.newValue.trim().toLowerCase();\n }\n })\n .filter((ele) => ele);\n if (validateName(oldValue, updatedValue).error) {\n return validateName(oldValue, updatedValue);\n }\n if (namesData.includes(updatedValue.trim().toLowerCase())) {\n return {\n error: true,\n helperText: `${selectorKey} should not be same as other names`,\n };\n }\n return { error: false, helperText: \"\" };\n }\n return { error: false, helperText: \"\" };\n };\n\n const isButtonDisabled = () => {\n return selectedItems.some((_ele) => {\n if (nameFields.includes(_ele.label)) {\n return getNames(_ele.label, nameFields, _ele.newValue, _ele.value)\n .error;\n }\n return false;\n });\n };\n\n const dataSelection = () => {\n return (\n
\n
\n
{dashboard.CorrectionFolios.Selection.selectionInfo}
\n setSearch(value)}\n endAdornment={\n searchString.length > 0 ? (\n \n setSearch(\"\")}\n />\n \n ) : null\n }\n />\n
\n
\n \n {!!handleSearch(selection).length ? (\n handleSearch(selection).map((selector, index) => (\n \n _handleCheckBoxChange(\n {\n ...selector,\n isSelected: checked,\n },\n index\n )\n }\n checked={selector.isSelected}\n name=\"primary-holder\"\n />\n }\n label={selector.label}\n />\n ))\n ) : (\n \n {nctLinks.notMatched}\n

\n )}\n
\n
\n \n
\n );\n };\n\n useEffect(() => {\n setSearch(\"\");\n }, [openDrawer]);\n\n return (\n
\n {/* */}\n
\n
\n {dataSelection()}\n
\n setDrawer(false)}\n onOpen={() => setDrawer(true)}\n >\n {dataSelection()}\n \n
\n \n
\n
\n

\n {dashboard.CorrectionFolios.Selection.selectedFolio}\n {fund?.folio}\n

\n

\n {dashboard.CorrectionFolios.Selection.amc}\n {fund?.amcName}\n

\n
\n
\n {/*
\n

{dashboard.CorrectionFolios.Selection.makeSelection}

\n
*/}\n {!!selectedItems.length ? (\n
\n {selectedItems.map((selector, index) => (\n
\n
{selector.label}
\n
\n
\n {dashboard.CorrectionFolios.Selection.nameInRecords}\n {selector.type === \"dob\" ? (\n moment(selector.value).format(\"DD/MM/YYYY\")\n ) : (\n {selector.value || \"Not Available\"}\n )}\n
\n {[\n \"bank_accountType\",\n \"taxStatus\",\n \"modeOfHolding\",\n ].includes(selector.field) ? (\n \n \n handleTextInputChange(value, selector.label)\n }\n onBlur={() => setValidate(true)}\n >\n SELECT\n {selector.masterData?.map((_ele) => (\n {_ele}\n ))}\n \n \n {validate\n ? selector.validate &&\n selector.validate({\n value: selector.value,\n newValue: selector.newValue,\n }).helperText\n : \"\"}\n \n \n ) : selector.type === \"dob\" ? (\n {\n handleTextInputChange(date, selector.label);\n }}\n minDate={_minDateForCalender()}\n maxDate={moment(new Date()).format(\"YYYY-MM-DD\")}\n error={\n validate\n ? selector.validate &&\n selector.validate({\n value: selector.value,\n newValue: selector.newValue,\n }).error\n : false\n }\n helperText={\n validate\n ? selector.validate &&\n selector.validate({\n value: selector.value,\n newValue: selector.newValue,\n }).helperText\n : \"\"\n }\n />\n ) : (\n \n {\n if (selector.handleChangeCondition) {\n return selector.handleChangeCondition(value)\n ? handleTextInputChange(\n value,\n selector.label\n )\n : null;\n \n }\n handleTextInputChange(value, selector.label);\n }}\n onBlur={() => {\n if (selector.field === \"bank_ifsc\") {\n setError({\n error: true,\n message: \"\",\n });\n checkForCorrectIFSC();\n }\n setValidate(true);\n }}\n onFocus={() => setValidate(false)}\n error={\n validate\n ? selector.field === \"bank_ifsc\"\n ? error.error\n : nameFields.includes(selector.label)\n ? getNames(\n selector.label,\n nameFields,\n selector.newValue,\n selector.value\n ).error\n : selector.validate &&\n selector.validate({\n value: selector.value,\n newValue: selector.newValue,\n }).error\n : false\n }\n helperText={\n validate\n ? selector.field === \"bank_ifsc\"\n ? error.message\n : nameFields.includes(selector.label)\n ? getNames(\n selector.label,\n nameFields,\n selector.newValue,\n selector.value\n ).helperText\n : selector.validate &&\n selector.validate({\n value: selector.value,\n newValue: selector.newValue,\n }).helperText\n : \"\"\n }\n />\n {selector.shouldValidateField && showLoader && (\n \n \n \n )}\n \n )}\n
\n
\n ))}\n
\n ) : (\n
\n

\n {dashboard.CorrectionFolios.Selection.makeSelection}\n

\n

\n {dashboard.CorrectionFolios.Selection.makeSelectionMobile}\n

\n
\n )}\n
\n
\n {!!selectedItems.length && (\n !!_ele.newValue\n ) ||\n selectedItems.some(\n (_ele) => {\n if (_ele.validate) {\n return _ele.validate({\n value: _ele.value,\n newValue: _ele.newValue,\n }).error;\n }\n return false;\n }\n ) ||\n error.error ||\n isButtonDisabled()\n }\n onClick={handleSubmit}\n label={dashboard.CorrectionFolios.Selection.buttonText}\n loading={loading}\n labelWhileLoading={dashboard.OtpScreen.buttonTextWhileLoading}\n >\n )}\n
\n
\n
\n
\n {/* */}\n
\n );\n}\n\nexport default connect(\n ({ authReducer, portfolio }) => ({\n ...authReducer,\n ...portfolio,\n }),\n { sendPhoneOTP, fetchIFSCDetails }\n)(CorrectionFoliosSelection);\n","import React from \"react\";\nimport {\n FormControl,\n FormHelperText,\n MenuItem,\n Select,\n } from \"@material-ui/core\";\n import { useFormik } from \"formik\";\n import { useCallback, useEffect } from \"react\";\n import en from \"../../../lang/en-us.js\";\n import { CustomRadio } from \"../../../lib/CustomRadio/index.js\";\n import DatePickerInput from \"../../../lib/DatePicker/index.js\";\n import Form, { InputType } from \"../../../lib/Formik/index.js\";\n import TextInput from \"../../../lib/TextField/index.js\";\n import {\n checkForOnlyAlphabets,\n EIGHTEEN_YEARS_IN_MILLISECONDS,\n isAlphaNumericAddress,\n isAlphaNumeric,\n MAX_LENGTH_FOR_PAN,\n MAX_LENGTH_FOR_NOMINEE_NAME,\n MAX_LENGTH_FOR_GUARDIAN_NAME,\n MAX_LENGTH_FOR_ADDRESS,\n minDateForCalender,\n _minDateForCalender,\n } from \"../../../utils/constants\";\n import { getNameIndex } from \"../CorrectionFolios/correction-folios-selection\";\n import { NOMINEEINFO, validationSchemaNominee } from \"./update-nominee-edit\";\n import Image from \"../../Image\";\n import { CheckBoxField } from \"../../../lib/CheckBoxField\";\n const { dashboard, common } = en;\n function AddNomineeForm(props) {\n const { formik } = props;\n const thisYear = new Date().getFullYear();\n \n const resetFieldError = (fieldName) => {\n const { [fieldName]: excldeKey, ...rest } = formik.errors;\n formik.setErrors(rest);\n };\n \n return (\n <>\n \n
\n

\n {\" \"}\n \"icon\"\n {getNameIndex(props.index)} {dashboard.UpdateNominee.nomineeText}\n

\n \n {dashboard.UpdateNominee.save}\n \n {/* formik.resetForm()} className=\"clear-nominee\">\n {dashboard.UpdateNominee.clear}\n */}\n \n props.cancelFormSubmission(props.index - 1, formik.values.id)\n }\n className=\"clear-nominee\"\n >\n {dashboard.UpdateNominee.cancel}\n \n
\n {\n resetFieldError(\"relation\");\n props.handleNomineeChange(\"relation\", value, props.index - 1);\n }}\n key={formik.values.relation}\n error={!!formik.errors.relation}\n helperText={formik.errors.relation}\n extraClass={\"nominee-relation-radio\"}\n />\n
\n
\n {\n resetFieldError(\"name\");\n return checkForOnlyAlphabets(e.target.value)\n ? props.handleNomineeChange(\n \"name\",\n e.target.value,\n props.index - 1\n )\n : null;\n }}\n error={!!formik.errors.name}\n helperText={formik.errors.name}\n />\n
\n
\n
\n {\n resetFieldError(\"dob\");\n props.handleNomineeChange(\"dob\", date, props.index - 1);\n if (\n thisYear - new Date(formik.values.dob).getFullYear() >=\n 18\n ) {\n props.handleNomineeChange(\n \"guardianName\",\n \"\",\n props.index - 1\n );\n props.handleNomineeChange(\n \"guardianPan\",\n \"\",\n props.index - 1\n );\n }\n }}\n minDate={_minDateForCalender()}\n error={!!formik.errors.dob}\n helperText={formik.errors.dob}\n />\n
\n
\n {\n resetFieldError(\"share\");\n\n const cleanedValue = e.target.value.replace(/[^0-9.]/g, '');\n\n if (!isNaN(cleanedValue)) {\n const numericValue = Number(cleanedValue);\n\n if (numericValue <= 100) {\n props.handleNomineeChange(\"share\", numericValue, props.index - 1);\n }\n }\n }}\n error={!!formik.errors.share}\n helperText={formik.errors.share}\n/>\n
\n
\n
\n {\n resetFieldError(\"gender\");\n props.handleNomineeChange(\"gender\", value, props.index - 1);\n }}\n list={[\n {\n label: \"Male\",\n value: \"male\",\n },\n {\n label: \"Female\",\n value: \"female\",\n },\n {\n label: \"Others\",\n value: \"others\",\n },\n ]}\n key={formik.values.gender}\n error={!!formik.errors.gender}\n helperText={formik.errors.gender}\n />\n
\n
\n {\n resetFieldError(\"pan\");\n return isAlphaNumeric(e.target.value) &&\n e.target.value.length <= MAX_LENGTH_FOR_PAN\n ? props.handleNomineeChange(\n \"pan\",\n e.target.value.toUpperCase(),\n props.index - 1\n )\n : null;\n }}\n error={!!formik.errors.pan}\n helperText={formik.errors.pan}\n />\n
\n
\n {\n props.handleAddressCheck(props.index - 1, e.target.checked);\n }}\n name=\"addressCheck\"\n value={formik.values.addressCheck}\n label={en.dbCommercial.profileDetails.nominees.addressCheck}\n />\n
\n
\n
\n {\n resetFieldError(\"address1\");\n if (isAlphaNumericAddress(e.target.value)) {\n props.handleNomineeChange(\n \"address1\",\n e.target.value,\n props.index - 1\n );\n }\n }}\n error={!!formik.errors.address1}\n helperText={formik.errors.address1}\n />\n
\n
\n {\n resetFieldError(\"address2\");\n if (isAlphaNumericAddress(e.target.value)) {\n props.handleNomineeChange(\n \"address2\",\n e.target.value,\n props.index - 1\n );\n }\n }}\n error={!!formik.errors.address2}\n helperText={formik.errors.address2}\n />\n
\n
\n {\n resetFieldError(\"pincode\");\n return (/^\\d+$/.test(e.target.value) || !e.target.value) &&\n e.target.value.length < 7\n ? props.handleNomineeChange(\n \"pincode\",\n e.target.value,\n props.index - 1\n )\n : null;\n }}\n error={formik.errors.pincode ? true : false}\n helperText={formik.errors.pincode}\n />\n
\n
\n {\n resetFieldError(\"city\");\n if (!checkForOnlyAlphabets(e.target.value)) return;\n props.handleNomineeChange(\n \"city\",\n e.target.value,\n props.index - 1\n );\n }}\n error={!!formik.errors.city}\n helperText={formik.errors.city}\n />\n
\n
\n {\n resetFieldError(\"state\");\n if (\n !checkForOnlyAlphabets(e.target.value) ||\n e.target.value.length > 20\n )\n return;\n props.handleNomineeChange(\n \"state\",\n e.target.value,\n props.index - 1\n );\n }}\n name={\"state\"}\n error={!!formik.errors.state}\n helperText={formik.errors.state}\n />\n
\n
\n
\n \n {\n resetFieldError(\"country\");\n props.handleNomineeChange(\n \"country\",\n e.target.value,\n props.index - 1\n );\n }}\n >\n {/* \n {dashboard.UpdateNominee.nomineeFields.country}\n */}\n India\n \n \n {formik.errors.country}\n \n \n
\n
\n
\n {thisYear - new Date(formik.values.dob).getFullYear() < 18 && (\n
\n

{dashboard.UpdateNominee.guardianDetailsHeading}

\n
\n
\n {\n resetFieldError(\"guardianName\");\n return checkForOnlyAlphabets(e.target.value)\n ? props.handleNomineeChange(\n \"guardianName\",\n e.target.value,\n props.index - 1\n )\n : null;\n }}\n error={!!formik.errors.guardianName}\n helperText={formik.errors.guardianName}\n />\n
\n
\n {\n resetFieldError(\"guardianPan\");\n return isAlphaNumeric(e.target.value) &&\n e.target.value.length <= MAX_LENGTH_FOR_PAN\n ? props.handleNomineeChange(\n \"guardianPan\",\n e.target.value.toUpperCase(),\n props.index - 1\n )\n : null;\n }}\n error={!!formik.errors.guardianPan}\n helperText={formik.errors.guardianPan}\n />\n
\n {/*
\n {\n resetFieldError(\"guardianDob\");\n props.handleNomineeChange(\n 'guardianDob',\n e.target.value,\n props.index - 1,\n )\n }}\n type={'date'}\n inputProps={{\n max: moment(new Date()).format('YYYY-MM-DD'), min: minDateForCalender()\n }}\n InputLabelProps={{ shrink: true }}\n helperText={formik.errors.guardianDob}\n error={!!formik.errors.guardianDob}\n />\n
*/}\n {/*
\n \n props.handleNomineeChange(\n 'guardianAddress',\n e.target.value,\n props.index - 1,\n )\n }\n />\n
*/}\n
\n
\n )}\n
\n
\n {/* {props.index < 3 && (\n \n )} */}\n \n );\n }\n function ScrollToError({ submitting }) {\n useEffect(() => {\n const el = document.querySelector('.Mui-error, [data-error]');\n if (el) {\n const parentEl = el.parentElement ?? el;\n parentEl.scrollIntoView();\n }\n }, [submitting]);\n return null;\n }\n const AddNominee = ({ initialValues = {}, ...props }) => {\n const validate = (values) => {\n const nomineeNames = props.nominees\n .map((_ele, ind) => {\n if (ind !== props.index - 1) {\n return _ele.name?.trim().toLowerCase();\n }\n })\n .filter((name) => name);\n \n const nomineePans = props.nominees\n .map((_ele, ind) => {\n if (ind !== props.index - 1) {\n return _ele.pan?.trim().toLowerCase();\n }\n })\n .filter((pan) => pan);\n const guardianPans = props.nominees\n .map((_ele, ind) => {\n if (ind !== props.index - 1) {\n console.log(\"_ele\",_ele)\n return _ele.guardianPan?.trim().toLowerCase();\n }\n })\n .filter((guardianPan) => guardianPan);\n const guardianNames = props.nominees\n .map((_ele, ind) => {\n if (ind !== props.index - 1) {\n return _ele.guardianName?.trim().toLowerCase();\n }\n })\n .filter((guardianName) => guardianName);\n const thisYear = new Date().getFullYear();\n const nomineeDobYear = new Date(formik.values.dob).getFullYear();\n if (nomineeNames.includes(values.name?.trim().toLowerCase())) {\n return {\n name: `Nominee name should not be same as other nominee names`,\n };\n } else if (\n values.name?.trim().toLowerCase() ===\n props.investorName?.trim().toLowerCase()\n ) {\n return {\n name: `Nominee name can not be investor name`,\n };\n } else if (values.name?.trim().length > MAX_LENGTH_FOR_NOMINEE_NAME) {\n return {\n name: `Nominee name should be less than ${MAX_LENGTH_FOR_NOMINEE_NAME} characters`,\n };\n } else if (guardianNames.includes(values.name.trim().toLowerCase())) {\n return {\n name: `Name should not be same as other guardian names`,\n };\n } else if (guardianNames.includes(values.guardianName.trim().toLowerCase()) || nomineeNames.includes(values.guardianName.trim().toLowerCase())) {\n return {\n guardianName: `Guardian name should not be same as other nominee names and other guardian names`,\n };\n } \n if (values.pan === props.pan) {\n return {\n pan: `Nominee pan should not be the investor pan`,\n };\n }else if (values.guardianPan === props.pan) {\n return {\n guardianPan: `Guardian pan should not be the investor pan`,\n };\n } else if (nomineePans.includes(values.pan?.trim().toLowerCase())) {\n return {\n pan: `Nominee pan should not be same as other nominee pans`,\n };\n } else if (guardianPans.includes(values.pan?.trim().toLowerCase())) {\n return {\n pan: `Nominee pan should not be same as other nominee pans and other guardian pans`,\n };\n } if (guardianPans.includes(values.guardianPan?.trim().toLowerCase()) || nomineePans.includes(values.guardianPan?.trim().toLowerCase())) {\n return {\n guardianPan: `Pan should not be same as other nominee pans and other guardian pans`,\n };\n }\n if (values?.address1?.trim().length > MAX_LENGTH_FOR_ADDRESS) {\n return {\n address1: `Address should be less than ${MAX_LENGTH_FOR_ADDRESS} characters`,\n };\n }\n if (values?.address2?.trim().length > MAX_LENGTH_FOR_ADDRESS) {\n return {\n address2: `Address should be less than ${MAX_LENGTH_FOR_ADDRESS} characters`,\n };\n }\n if (!values.share?.toString()) {\n return {\n share: \"Share is required\",\n };\n } else if (Number(values.share) === 0) {\n return {\n share: \"Nominee share should not be 0\",\n };\n }\n if (values.dob) {\n const selectedDate = new Date(values.dob);\n if (selectedDate.getTime() > new Date().getTime()) {\n return {\n dob: \"Date of birth should not exceed current date\",\n };\n }\n \n if (thisYear - nomineeDobYear < 18) {\n if (!values.guardianName || values.guardianName?.trim().length === 0) {\n return {\n guardianName: `Guardian name is required`,\n };\n }else if (!values.guardianPan) {\n return {\n guardianPan: `Guardian pan is required`,\n };\n } else if (values.guardianPan.length<10) {\n return {\n guardianPan: `Please enter individual pan number`,\n };\n } else if (\n values.guardianName?.trim().length > MAX_LENGTH_FOR_GUARDIAN_NAME\n ) {\n return {\n guardianName: `Guardian name should be less than ${MAX_LENGTH_FOR_GUARDIAN_NAME} characters`,\n };\n } else if (\n values.guardianName?.trim().toLowerCase() ===\n values.name?.trim().toLowerCase()\n ) {\n return {\n guardianName: `Nominee name and Guardian name should not be same`,\n };\n }\n // if (\n // values.guardianPan &&\n // (values.guardianPan === values.pan ||\n // values.guardianPan === props.pan)\n // ) {\n // return {\n // guardianPan:\n // values.pan === values.guardianPan\n // ? `Guardian pan should not same as Nominee pan`\n // : `Guardian pan should not same as Investor pan`,\n // };\n // }\n \n if (values.guardianPan && values.guardianPan === values.pan) {\n return {\n guardianPan:\n values.pan === values.guardianPan\n ? `Guardian pan should not same as Nominee pan`\n : ``,\n };\n }\n }\n }\n \n // if (values.guardianDob) {\n // const selectedDate = new Date(values.guardianDob);\n // if (new Date().getTime() - selectedDate.getTime() < EIGHTEEN_YEARS_IN_MILLISECONDS) {\n // return {\n // guardianDob: 'Guardian of the Nominee should be major',\n // };\n // }\n // if (selectedDate < new Date(minDateForCalender())) {\n // return {\n // guardianDob: common.errors.dob.ageLessThanHundred,\n // };\n // }\n // }\n };\n \n const formik = useFormik({\n initialValues: initialValues,\n onSubmit: () => {\n props.saveNominee(\"isEditable\", false, props.index - 1);\n alert(\"Nominee added successfully\");\n },\n onReset: () => {\n props.handleResetForm(props.index - 1);\n },\n validationSchema: validationSchemaNominee,\n validateOnChange: false,\n validate: validate,\n });\n \n const formFields = [\n {\n component: AddNomineeForm,\n extraProps: props,\n },\n ];\n \n useEffect(() => {\n formik.setValues(initialValues, false);\n }, [initialValues]);\n \n const FormLoad = useCallback(() => {\n return
;\n }, [formik]);\n \n return FormLoad();\n };\n \n export default AddNominee;\n ","import React from \"react\";\nimport { useEffect, useState } from \"react\";\nimport en from \"../../../lang/en-us.js\";\nimport TextInput from \"../../../lib/TextField/index.js\";\nimport AddNominee from \"./addNominee\";\nimport * as yup from \"yup\";\nimport { NoteModals } from \"../../../lib/NoteModals/index.js\";\nimport { connect } from \"react-redux\";\nimport {\n getDate,\n getDateString,\n panRegex,\n _minDateForCalender,\n} from \"../../../utils/constants\";\nimport { getNameIndex } from \"../CorrectionFolios/correction-folios-selection\";\nimport Image from \"../../Image\";\n \nconst {\n dashboard,\n signUp: { form },\n common,\n} = en;\nexport const relationShips = [\n {\n label: \"Mother\",\n value: \"mother\",\n },\n {\n label: \"Son\",\n value: \"son\",\n },\n {\n label: \"Daughter\",\n value: \"daughter\",\n },\n {\n label: \"Father\",\n value: \"father\",\n },\n {\n label: \"Spouse\",\n value: \"spouse\",\n },\n {\n label: \"Others\",\n value: \"others\",\n },\n];\n\nexport const initialValues = {\n relation: \"\",\n name: \"\",\n dob: \"\",\n share: null,\n gender: \"\",\n pan: \"\",\n address1: \"\",\n address2: \"\",\n pincode: \"\",\n city: \"\",\n state: \"\",\n country: \"\",\n guardianName: \"\",\n guardianPan: \"\",\n guardianAddress: \"\",\n guardianDob: \"\",\n};\n\nexport const validationSchemaNominee = yup.object({\n relation: yup.string().required(\"Relation is required\"),\n name: yup\n .string()\n .required(\"Name is required\")\n .test(\"len\", \"Name should have at least 3 letters\", (val) => {\n return val && val.trim().length >= 3;\n }),\n gender: yup.string().required(\"Gender is required\"),\n pan: yup.string().matches(panRegex, form.pan.validations.individualPan),\n address1: yup\n .string()\n .notRequired()\n .test(\"len\", common.spaceNotAllowed, (val) => val?.trim().length !== 0),\n address2: yup\n .string()\n .notRequired()\n .test(\"len\", common.spaceNotAllowed, (val) => val?.trim().length !== 0),\n city: yup\n .string()\n .notRequired()\n .test(\"len\", common.spaceNotAllowed, (val) => val?.trim().length !== 0)\n .max(50, common.cityMaxLength),\n state: yup\n .string()\n .notRequired()\n .test(\"len\", common.spaceNotAllowed, (val) => val?.trim().length !== 0)\n .max(50, common.stateMaxLength),\n pincode: yup.string().length(6, \"Pincode should be of 6 digits\"),\n guardianPan: yup\n .string()\n .notRequired()\n .matches(panRegex, form.pan.validations.individualPan),\n});\n\nexport default function NomineeSummary(props) {\n const { nomineesData = {}, noNomineeFlagAll = false } = props || {};\n const { nominees: data = [], investorName = \"\", verified } = nomineesData;\n const [nominees, setNominees] = useState([]);\n\n useEffect(() => {\n setNominees(\n !!data.length\n ? data.slice(0, 3).map((_ele) => {\n let nomineeState = {\n relation: [\n \"mother\",\n \"son\",\n \"daughter\",\n \"father\",\n \"spouse\",\n ].includes(_ele?.relation?.toLowerCase())\n ? _ele.relation?.toLowerCase()\n : _ele.relation?.toLowerCase()\n ? \"others\"\n : \"\",\n name: _ele.name || \"\",\n dob: getDate(_ele.dob),\n share: _ele.percent,\n pan: _ele.pan,\n gender: _ele?.gender?.toLowerCase(),\n address1: _ele.address?.line1 || \"\",\n address2: _ele.address?.line2 || \"\",\n ..._ele?.address,\n guardianName: _ele.guardian?.name || \"\",\n guardianPan: _ele.guardian?.pan || \"\",\n guardianAddress: _ele.guardian?.address || \"\",\n guardianDob: _ele.guardian?.dob || \"\",\n isEditable: false,\n showDetails: false,\n editShare: false,\n isNewlyAdded: false,\n id: _ele.id,\n isEdited: false,\n };\n return { ...nomineeState, initialState: nomineeState };\n })\n : [\n {\n ...initialValues,\n isEditable: true,\n showDetails: false,\n editShare: false,\n isNewlyAdded: true,\n isEdited: false,\n },\n ]\n );\n }, []);\n\n // useEffect(() => {\n // console.log('hhhagi');\n // }, [nominees]);\n\n return (\n \n {nomineesData.noNominee === \"Y\" || noNomineeFlagAll ? (\n
Opted out of nomination
\n ) : !nomineesData.noNominee && nomineesData.nominees.length === 0 ? (\n
No nominees selected
\n ) : (\n nominees.map((_ele,index) => (\n
\n
\n
\n \n \"icon\"\n \n {getNameIndex(index + 1)} {dashboard.UpdateNominee.nomineeText}\n
\n
\n
\n
\n

{dashboard.UpdateNominee.name}

\n

{_ele.name}

\n
\n
\n

{dashboard.UpdateNominee.relation}

\n

\n {_ele.relation.slice(0, 1).toUpperCase() +\n _ele.relation.slice(1)}\n

\n
\n
\n <>\n

{dashboard.UpdateNominee.share}

\n

{_ele.share}%

\n \n
\n {/* */}\n
\n {_ele.showDetails && (\n
\n
\n

{dashboard.UpdateNominee.gender}

\n

\n {_ele.gender.slice(0, 1).toUpperCase() +\n _ele.gender.slice(1)}\n

\n
\n
\n

\n {\" \"}\n {dashboard.UpdateNominee.address}\n

\n

{_ele.address1}

\n
\n
\n )}\n
\n
\n
\n ))\n )}\n
\n );\n}\n","import React from \"react\";\nimport {\n Table,\n TableHead,\n TableCell,\n TableBody,\n // TableContainer,\n Paper,\n TableRow,\n} from '@material-ui/core';\nimport { KeyboardArrowDown, KeyboardArrowUp } from '@material-ui/icons';\nimport { useEffect } from 'react';\nimport en from \"../../../lang/en-us.js\";\nimport NomineeSummary from './nominee-summary';\nimport { connect, useDispatch, useSelector } from 'react-redux';\nimport { RootStateType } from 'shared/store/reducers';\nimport { SubmitButton } from '../../../lib/Button';\nimport { CheckBoxField } from '../../../lib/CheckBoxField';\nimport { saveNominee } from 'shared/store/actions/nct';\nimport Image from '../../Image';\nimport { useHistory } from 'react-router';\n\nconst {\n dashboard,\n dbCommercial,\n signUp: { form },\n common,\n} = en;\n\nexport const BackArrow = ({ header = \"\", history, customStyle }) => {\n return (\n

\n history.goBack()} style={{ cursor: \"pointer\" }}>\n \n Back\n \n

\n );\n};\n\nexport const ActionHeader = ({ header = '', subHeader, history } ) => {\n return (\n

\n history.goBack()} style={{ cursor: 'pointer' }}>\n \"icon\"/\n \n {header}\n {subHeader && {subHeader}}\n

\n );\n};\n\nfunction SelectedFolios(props) {\n const [currIndex, setCurrentIndex] = React.useState(-1);\n const { nomineesData, investorData, token } = useSelector(({ NomineeReducer, investor, authReducer }) => ({\n nomineesData: NomineeReducer,\n investorData: investor.investorData,\n token: authReducer.token,\n }));\n const [nominees, setNominees] = React.useState([]);\n const [loading, setLoading] = React.useState(false);\n const [isExpanded, setIsExpanded] = React.useState(false);\n const [noNomineeFlag, setNoNomineeFlag] = React.useState(false);\n const dispatch = useDispatch();\n\n useEffect(() => {\n if (!nomineesData.length) {\n props.history.goBack();\n }\n }, []);\n\n const handleChange = (index) => {\n if (index === currIndex) {\n setIsExpanded(false);\n setCurrentIndex(-1);\n } else {\n setIsExpanded(true);\n setCurrentIndex(index);\n }\n };\n\n console.log(token, investorData, 'idafa');\n\n const handleSubmit = async () => {\n const nomineeApiPayload = {\n email: nomineesData[0].email,\n mobile: nomineesData[0].mobile,\n pan: investorData.PAN,\n distributor_id: token,\n data: nomineesData.map(nomineeData => {\n return {\n\n folio: nomineeData.folio,\n amc: nomineeData.amc,\n amc_name: nomineeData.amcName,\n noNominee: noNomineeFlag ? \"Y\" : \"\",\n nominees: noNomineeFlag ? [] : nomineeData.nominees,\n eNomType: \"F\",\n eSignFlag: \"\",\n eNomDocId: \"\",\n }\n })\n };\n try {\n setLoading(true);\n const apiRes = await saveNominee(nomineeApiPayload)(dispatch);\n if (apiRes.status === 201) {\n props.history.replace(\"/new-transaction/nct-type/success\", {\n state: {\n succesMessage: apiRes.message,\n },\n });\n }\n } catch (err) {\n alert(err.message);\n } finally {\n setLoading(false);\n }\n };\n\n return (\n
\n \n
\n {/* {verifyThrough === VerifyThrough.ESIGN && ( */}\n {/*
*/}\n {/*
*/}\n {/* )} */}\n setNoNomineeFlag(!noNomineeFlag)}\n style={{ paddinTop: 8, paddingBottom : 8 }}\n value={noNomineeFlag}\n label={dbCommercial.noNominee.indNote}\n />\n {/* */}\n \n \n \n Folio Number \n \n {' '}\n Investor Name{' '}\n \n \n \n \n \n \n \n {nomineesData.map((nominee, index) => (\n <>\n {\n handleChange(index);\n }}\n style={{ cursor: 'pointer' }}\n >\n {nominee.folio}\n {nominee.investorName}\n {\n props.history.push(\n '/new-transaction/nct-type/update-ind-nominee',\n {\n nomineesData: nominee,\n nomineeIndex: index,\n },\n );\n }}\n >\n \n \n \n {isExpanded && currIndex === index ? (\n \n ) : (\n \n )}\n \n \n {nominee.verified || noNomineeFlag ? 'Updated' : 'Not Updated'}\n \n \n {currIndex === index && isExpanded && (\n \n \n \n \n \n )}\n \n ))}\n \n
\n {/*
*/}\n
\n !nominee.verified))}\n label={'Submit'}\n onClick={handleSubmit}\n />\n
\n
\n
\n );\n}\n\nexport default connect(null)(SelectedFolios);\n","// import store from '../../../../store';\nimport {\n REGISTER_WITH_EMAIL,\n REGISTER_WITH_MOBILE,\n } from \"../../../utils/constants\";\n \n const EMAIL_LISTING_ROUTE = \"/portal/nct/change-email-list\";\n const EMAIL_ENTER_ROUTE = \"/portal/nct/change-email\";\n const EMAIL_OTP_VERIFY = \"/portal/nct/change-email-otp\";\n const REGISTERED_EMAIL_OR_PHONE_VERIFY = \"/portal/nct/change-email-auth\";\n \n export const SUCCESS = \"SUCCESS\";\n \n export const CHANGE_EMAIL_LOGIN_FLOW = [\n EMAIL_LISTING_ROUTE,\n REGISTERED_EMAIL_OR_PHONE_VERIFY,\n EMAIL_ENTER_ROUTE,\n EMAIL_OTP_VERIFY,\n ];\n export const CHANGE_EMAIL_MOBILE_LOGIN_FLOW = [\n EMAIL_ENTER_ROUTE,\n EMAIL_OTP_VERIFY,\n EMAIL_LISTING_ROUTE,\n REGISTERED_EMAIL_OR_PHONE_VERIFY,\n ];\n \n export function getChangeEmailFlow(registerType = REGISTER_WITH_MOBILE) {\n return registerType === REGISTER_WITH_EMAIL\n ? CHANGE_EMAIL_LOGIN_FLOW\n : CHANGE_EMAIL_MOBILE_LOGIN_FLOW;\n }\n ","import store from \"shared/store/api.middleware\";\nimport {\n REGISTER_WITH_EMAIL,\n REGISTER_WITH_MOBILE,\n} from \"../../../utils/constants\";\nimport { getChangeEmailFlow } from \"../ChangeEmail/flow\";\n\nconst MOBILE_LISTING_ROUTE = \"/portal/nct/change-mobile\";\nconst MOBILE_ENTER_ROUTE = \"/portal/nct/change-mobile-new\";\nconst MOBILE_OTP_VERIFY = \"/portal/nct/otp-verification\";\nconst REGISTERED_EMAIL_OR_PHONE_VERIFY = \"/portal/nct/change-mobile-auth\";\n\nexport const SUCCESS = \"SUCCESS\";\n\nexport const MOBILE_LOGIN_FLOW = [\n MOBILE_LISTING_ROUTE,\n REGISTERED_EMAIL_OR_PHONE_VERIFY,\n MOBILE_ENTER_ROUTE,\n MOBILE_OTP_VERIFY,\n];\nexport const EMAIL_LOGIN_FLOW = [\n MOBILE_ENTER_ROUTE,\n MOBILE_OTP_VERIFY,\n MOBILE_LISTING_ROUTE,\n REGISTERED_EMAIL_OR_PHONE_VERIFY,\n];\n\nexport function getChangeMobileFlow(registerType = REGISTER_WITH_MOBILE) {\n return registerType === REGISTER_WITH_EMAIL\n ? EMAIL_LOGIN_FLOW\n : MOBILE_LOGIN_FLOW;\n}\n\nexport function nextScreen(path , nctFlow = \"mobile\") {\n const { authReducer } = store.getState();\n const { userRegisteredWith } = authReducer;\n const flows =\n nctFlow === \"email\"\n ? getChangeEmailFlow(userRegisteredWith)\n : getChangeMobileFlow(userRegisteredWith);\n if (!path) {\n return flows[0];\n }\n const index = flows.findIndex((_flow) => _flow === path);\n if (index + 1 === flows.length) {\n return SUCCESS;\n }\n return flows[index + 1];\n}\n// export function emailRegisteredUser() {\n// const { authReducer } = store.getState();\n// const { userRegisteredWith } = authReducer;\n// return userRegisteredWith === REGISTER_WITH_EMAIL;\n// }\n","import {\n FormControl,\n InputLabel,\n Select,\n MenuItem,\n FormHelperText,\n } from \"@material-ui/core\";\n import { showHelperText } from \"../../../utils/utilityFunctions\";\n import { getRelationShip } from \"../../home/portfolios/utils\";\n import React from \"react\";\n \n export default function EmailRelationship({ emailFormik }) {\n return (\n \n \n Email Family Relationship\n \n \n \n \n
Email Relationship
\n
\n {Object.keys(getRelationShip).map((key) => (\n {getRelationShip[key]}\n ))}\n \n \n {showHelperText(emailFormik, \"emailRelationship\")}\n \n
\n \n );\n }\n ","import {\n FormControl,\n FormHelperText,\n InputLabel,\n MenuItem,\n Select,\n } from \"@material-ui/core\";\n import { Formik, useFormik } from \"formik\";\n import React from \"react\";\n import { useEffect } from \"react\";\n import { connect } from \"react-redux\";\n import * as yup from \"yup\";\n // import { ActionHeader, FaqLink } from '..';\n import { BackArrow } from \"../UpdateNominee/SelectedFolios\";\n import en from \"../../../lang/en-us.js\";\n import { SubmitButton } from \"../../../lib/Button\";\n import TextInput from \"../../../lib/TextField\";\n import { sendEmailOTP } from \"shared/store/actions/nct\";\n// import { RootStateType } from \"../../../store/reducers\";\n import {\n OTP_ACTIONS,\n REGISTER_WITH_EMAIL,\n UPDATE_EMAIL,\n } from \"../../../utils/constants\";\n import { isError, showHelperText } from \"../../../utils/utilityFunctions\";\n import Image from \"../../Image\";\n import { nextScreen } from \"../ChangeMobile/flow\";\n import EmailRelationship from \"./EmailRelationship\";\n const { dashboard, common } = en;\n export const re =\n /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n \n const initialValues = {\n email: \"\",\n emailRelationship: \"\",\n };\n \n const validationSchema = yup.object({\n email: yup\n .string()\n .required(common.errors.email.required)\n .email(common.errors.email.regex),\n emailRelationship: yup\n .string()\n .required(common.errors.relationship.emailRequired),\n });\n function ChangeEmail(props) {\n const {\n pan,\n pekrn,\n mobile,\n userRegisteredWith,\n email: registeredEmail,\n } = props;\n \n const emailFormik = useFormik({\n initialValues,\n onSubmit: async ({ email, emailRelationship }) => {\n if (registeredEmail === email) {\n alert(dashboard.changeEmail.emailError);\n return;\n }\n // const action =\n // props?.location?.state?.action || OTP_ACTIONS.NEW_EMAIL_ONINE_OTP;\n \n if (props?.location?.state?.isPhygitial) {\n props.history.push(\n \"/new-transaction/nct-type/phygital/change-email-document\",\n {\n enteredEmail: email,\n emailRelationship: emailRelationship,\n ...(props?.location?.state || {}),\n }\n );\n return;\n }\n props.history.push(\n \"/new-transaction/nct-type/digital/change-email-list\",\n {\n enteredEmail: email,\n emailRelationship: emailRelationship,\n ...(props?.location?.state || {}),\n }\n );\n const goTo = nextScreen(props.match.path, \"email\");\n },\n validationSchema,\n });\n return (\n
\n \n
\n \n
\n
\n \n {dashboard.changeEmail.subHeading}\n \n

{dashboard.changeEmail.subHeadingInfo}

\n
\n
\n \n Enter New Email\n \n \n
\n \n
\n
\n {/* */}\n
\n
\n \n
\n
\n
\n );\n }\n \n export default connect(\n ({ authReducer, investor }) => ({\n ...authReducer,\n ...investor,\n }),\n { sendEmailOTP }\n )(ChangeEmail);\n ","import React from 'react';\nimport { Button } from '@material-ui/core';\nimport en from '../../lang/en-us';\nimport { SubmitButton } from '../../lib/Button';\nimport Image from '../Image';\nconst { dashboard } = en;\n\n\n\nexport default function NoFoliosFound({\n info = '',\n extraClass = '',\n icon = 'folios-not-found',\n onClick = null,\n}) {\n return (\n
\n \"icon\"\n {/*

{info}

*/}\n

{info || dashboard.noFoliosFound}

\n {!!onClick &&\n \n }\n
\n );\n}\n","/* eslint-disable jsx-a11y/no-noninteractive-element-interactions */\n/* eslint-disable jsx-a11y/anchor-is-valid */\n/* eslint-disable react/prop-types */\n/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/click-events-have-key-events */\n/* eslint-disable react/display-name */\nimport {\n Tooltip,\n Checkbox,\n makeStyles,\n TableHead,\n Table,\n TableRow,\n TableCell,\n TableBody,\n Paper,\n Collapse,\n Radio,\n FormControlLabel,\n SwipeableDrawer,\n} from \"@material-ui/core\";\nimport TableContainer from \"@material-ui/core/TableContainer\"\n// import { Theme, createStyles } from \"@material-ui/core/styles\";\n// import { GridRowData } from \"@material-ui/data-grid\";\nimport { useState, useEffect, useMemo } from \"react\";\nimport React from \"react\";\nimport en from \"../../lang/en-us\";\nimport { CheckBoxField } from \"../CheckBoxField\";\nimport SearchInput from \"../SearchInput\";\nimport Skeleton from \"@material-ui/lab/Skeleton\";\nimport {\n CustomToolTipProps,\n DataTableColumn as _Column,\n TableCellParams as CellParams,\n TableColumn as Column,\n TableProps,\n} from \"./types\";\nimport NoFoliosFound from \"../../components/home/NoFoliosFound\";\nimport Image from \"../../components/Image\";\nconst { dashboard, common } = en;\n\n// export type TableColumn = Column;\n// export type DataTableColumn = _Column;\n// export type TableCellParams = CellParams;\n\nconst useStyles = makeStyles({\n tooltip: {\n backgroundColor: \"#a39cc7\",\n fontSize: 14,\n },\n arrow: {\n color: \"#a39cc7\",\n },\n});\n/**\n * Custoom Tool Tip\n * @param param0\n */\n\nexport function CustomToolTip({ children, ...props }) {\n const classes = useStyles();\n return (\n \n {children}\n \n );\n}\n\n/**\n * Custom Table with Collapse Feature and Radio selection & Checkbox Selection\n * @param param0 TableProps\n */\n\nconst useRowStyles = makeStyles({\n root: {\n \"& > *\": {\n borderBottom: \"unset\",\n },\n },\n});\n\nexport function TableWithCollapse({\n rows,\n columns: _columns,\n radioGroupsEnabled = false,\n isCollapse = false,\n renderCollapse,\n checkBoxEnabled = false,\n toolTipDescription = \"\",\n selectedRows = [],\n setSelectedRows = () => {},\n disableAllSelection = false,\n filterType = null,\n filteredData = {},\n setFilterType = () => {},\n setFilteredData = () => {},\n isCheckBoxSelectable = true,\n resetFilters = () => {},\n enableSearch,\n enteredEmail,\n notFoundMessage,\n ...props\n}) {\n const classes = useRowStyles();\n const columns = useMemo(\n () => _columns.filter((column) => !column.isFilter),\n [_columns]\n );\n const filterColumns = useMemo(\n () => _columns.filter((column) => !!column.filterBy || !!column.isFilter),\n [_columns]\n );\n const isRowsLoading = useMemo(\n () => columns.some((column) => !!column.Cell),\n [columns]\n );\n\n const MobileRow = ({ row, index }) => {\n const [collapse, setCollapse] = useState(isCollapse);\n const isSelected = (selectedRows.find((_row) => _row.id === row.id));\n return (\n \n {isRowsLoading ? (\n \n \n \n ) : (\n <>\n {checkBoxEnabled && (\n \n \n \n \n \n )}\n {radioGroupsEnabled && (\n \n \n setSelectedRows([row])}\n checked={isSelected}\n />\n \n \n )}\n \n )}\n
\n {columns.map(\n (\n {\n renderCell,\n field,\n valueGetter,\n Cell,\n fullWidth = false,\n ...column\n },\n _index\n ) => {\n const value = row[`${field}`];\n const GridParams = {\n row,\n id: row.id,\n value,\n colDef: { field, ...column },\n setCollapse,\n collapse,\n index,\n };\n return (\n \n

{column.headerName}

\n

\n {Cell\n ? Cell\n : renderCell\n ? renderCell(GridParams)\n : valueGetter\n ? valueGetter(GridParams)\n : value}\n

\n
\n );\n }\n )}\n
\n \n {renderCollapse ? (\n
\n {renderCollapse({ row, setCollapse })}\n
\n ) : (\n \n )}\n \n
\n \n \n );\n };\n const MaskedEmail = ({ email }) => {\n const maskedEmail = email.replace(/^(.{4})(.*)(@.*)$/, (match, p1, p2, p3) => {\n return p1 + 'X'.repeat(5) + p3;\n });\n \n return {maskedEmail};\n };\n const DataRow = ({ row, index }) => {\n const [collapse, setCollapse] = useState(isCollapse);\n const isSelected = !!(selectedRows.find((_row) => _row.id === row.id));\n const renderRow = useMemo(() => {\n return columns.map(\n (\n { renderCell, field, valueGetter, Cell, ...column },\n _index\n ) => {\n const value = row[`${field}`];\n const GridParams = {\n row,\n id: row.id,\n value,\n colDef: { field, ...column },\n setCollapse,\n index,\n collapse,\n };\n return Cell ? (\n \n {Cell}\n \n ) : renderCell ? (\n \n {renderCell(GridParams)}\n \n ) : (\n \n {valueGetter ? valueGetter(GridParams) : field===\"email\" ? :value}\n \n );\n }\n );\n }, [row, collapse, index]);\n return (\n <>\n \n {(radioGroupsEnabled || checkBoxEnabled) &&\n (isRowsLoading ? (\n \n \n \n ) : (\n \n {checkBoxEnabled ? (\n props.toolTipEnabled ? (\n \n \n \n \n \n ) : (\n \n )\n ) : props.toolTipEnabled ? (\n \n \n setSelectedRows([row])}\n checked={isSelected}\n disabled={row.isDisabled || !isCheckBoxSelectable}\n />\n \n \n ) : (\n setSelectedRows([row])}\n checked={isSelected}\n disabled={row.isDisabled || !isCheckBoxSelectable}\n />\n )}\n \n ))}\n {renderRow}\n \n {useMemo(\n () => (\n \n \n \n {renderCollapse ? (\n renderCollapse({ row, setCollapse })\n ) : (\n
\n )}\n \n \n
\n ),\n [collapse, setCollapse, renderCollapse, columns, row]\n )}\n \n );\n };\n\n const _onRowSelected = (row, checked) => (e) => {\n console.log('this is row', checked, row,props, e);\n if(row.email === enteredEmail) {\n alert(\"This folio already has the new Email ID, entered in the previous screen.\")\n return;\n }\n if(row.mobile === props.mobile) {\n alert(\"This folio already has the new Mobile Number, entered in the previous screen.\")\n return;\n }\n if (row.isDisabled) return;\n if (radioGroupsEnabled) {\n setSelectedRows([row]);\n return;\n }\n const isSelectable =\n !!props.isRowSelectable && typeof props.isRowSelectable === \"function\"\n ? props.isRowSelectable({ row, checked })\n : true;\n if (isSelectable) {\n setSelectedRows((prev) => {\n return checked\n ? [...prev, row]\n : prev.filter((_row) => _row.id !== row.id);\n });\n }\n };\n\n const SelectAllCheckBox = () => {\n const isAllSelected =\n !!selectedRows.length &&\n selectedRows.length === rows.filter((row) => !row.isDisabled).length;\n const isRowHaveSelectedItems =\n !!selectedRows.length &&\n selectedRows.length !== rows.filter((row) => !row.isDisabled).length;\n return (\n _onColumnHeaderClick(!isAllSelected)}\n disabled={!rows.filter((row) => !row.isDisabled).length}\n />\n );\n };\n\n const MobileSelectAll = () => {\n return (\n
\n } label=\"Select All\" />\n
\n );\n };\n\n const _onColumnHeaderClick = (isAllSelected) => {\n if (!isCheckBoxSelectable) {\n return;\n }\n setSelectedRows(() =>\n isAllSelected ? rows.filter((row) => !row.isDisabled) : []\n );\n if (\n !!props.onColumnHeaderClick &&\n typeof props.onColumnHeaderClick === \"function\"\n ) {\n props.onColumnHeaderClick({ isSelected: isAllSelected });\n }\n };\n\n const filteredRows = useMemo(() => {\n const filterKeys = Object.keys(filteredData).filter(\n (key) => key !== \"searchKey\"\n );\n const filtredRowData = rows.reduce((prev, currRow) => {\n const valid = filterKeys.every((_key) => {\n const _filterData = filteredData[_key] || [];\n const value =\n typeof currRow[_key] === \"string\"\n ? currRow[_key]?.toString()?.toLowerCase()\n : currRow[_key];\n if (!_filterData.length) {\n return true;\n }\n if (_key === \"assetType\") {\n let other = false;\n let assetTypes =\n typeof value === \"string\" ? [value?.toUpperCase()] : value; // Modifying assetTypes as array\n if (_filterData.includes(\"other\")) {\n other = assetTypes?.every((assetType) => {\n const _assetType = assetType?.toUpperCase();\n return !(\n _assetType === \"EQUITY\" ||\n _assetType === \"DEBT\" ||\n _assetType === \"LIQUID\"\n );\n });\n }\n return (\n _filterData.some((_assetType) =>\n assetTypes?.includes(_assetType?.toUpperCase())\n ) || other\n );\n }\n if (_filterData.includes(value)) {\n return true;\n }\n });\n if (valid) {\n return [...prev, currRow];\n }\n return prev;\n }, []);\n\n return filteredData.searchKey\n ? filtredRowData.filter((row) =>\n row?.amcName\n ?.toLowerCase()\n ?.includes(filteredData?.searchKey?.toLowerCase())\n )\n : filtredRowData;\n }, [rows, filteredData]);\n const _TableFilters = useMemo(\n () => (\n \n ),\n [\n rows,\n filterColumns,\n filteredData,\n filterType,\n setFilterType,\n setFilteredData,\n resetFilters,\n ]\n );\n\n return (\n \n {/* {filterColumns.length ? _TableFilters : } */}\n \n {!!filteredRows.length ? (\n // \n \n \n \n \n {radioGroupsEnabled && }\n {checkBoxEnabled && !disableAllSelection && (\n \n \n \n )}\n {checkBoxEnabled && disableAllSelection && (\n \n )}\n {columns.map((header, _index) => (\n \n {header.headerName}\n \n ))}\n \n \n \n {filteredRows.map((row, index) => (\n \n ))}\n \n \n \n ) : (\n \n )}\n {checkBoxEnabled && !disableAllSelection && }\n
\n {filteredRows.map((row, index) => (\n \n ))}\n
\n \n \n );\n}\n\n/**\n * Filter For The table\n * @param columns\n * @param rows\n * @param onUpdateFilters\n */\nexport function TableFilters({\n columns = [],\n rows = [],\n filterType = null,\n filteredData = {},\n setFilteredData = () => {},\n setFilterType = () => {},\n resetFilters,\n enableSearch = true,\n} ) {\n const [openDrawer, setDrawer] = useState(false);\n\n const _handleChange = (fieldKey, _ele) => {\n const fieldData = filteredData[fieldKey] || [];\n const index = fieldData.findIndex((ele) => ele === _ele);\n const _filteredData =\n index === -1\n ? {\n ...filteredData,\n [fieldKey]: [...fieldData, _ele],\n }\n : {\n ...filteredData,\n [fieldKey]: fieldData.filter((ele) => ele !== _ele),\n };\n setFilteredData(_filteredData);\n \n };\n\n const Filters = useMemo(() => {\n return columns.map((column, index) => (\n {\n // setDrawer(true);\n setFilterType((type) =>\n type === (column.filterKey || column.field)\n ? \"\"\n : column.filterKey || column.field\n );\n }}\n className={\n filterType === (column.filterKey || column.field) && openDrawer\n ? \"active\"\n : \"\"\n }\n >\n \"icon\"\n \n {column.filterHeader || column.headerName}\n \n \n \n ));\n }, [columns, filterType, setFilterType, openDrawer]);\n\n const onRemoveFilter = (field, ele) => () => {\n const fieldData = filteredData[field];\n const _filterData = {\n ...filteredData,\n [field]: fieldData.filter((_ele) => _ele !== ele),\n };\n setFilteredData(_filterData);\n };\n\n const FilterChips = () => {\n return Object.keys(filteredData)\n .filter((key) => key !== \"searchKey\")\n .map((_key, _index) =>\n filteredData[_key].map((_ele, _index1) => (\n \n {_ele}\n \n \n ))\n );\n };\n\n const onClear = () => {\n resetFilters();\n };\n\n return (\n
\n
\n

\n \"icon\"\n {dashboard.ChangeDividend.filters} :\n

\n {Filters}\n {enableSearch && (\n \n setFilteredData({ ...filteredData, searchKey: e.target.value })\n }\n />\n )}\n
\n {columns.map((column, index) => {\n const fieldKey = column.filterKey || column.field;\n const dataWithDuplicatedValueKeys = rows.map((row) => row[fieldKey]);\n const data = dataWithDuplicatedValueKeys.reduce((prev, curr) => {\n if (!prev.includes(curr)) {\n return [...prev, curr];\n }\n return prev;\n }, []);\n const values = column.renderStaticFilters?.length\n ? column.renderStaticFilters\n : data;\n return (\n <>\n \n
\n
\n {values.map((_ele, index) => (\n \n _handleChange(fieldKey, _ele?.toString()?.toLowerCase())\n }\n value={(filteredData[fieldKey] || [])?.includes(\n _ele?.toString()?.toLowerCase()\n )}\n />\n ))}\n
\n
\n \n {\n setFilterType(\"\");\n setDrawer(false);\n }}\n onOpen={() => {}}\n className=\"mobile_mode\"\n >\n
\n
\n {values.map((_ele, index) => (\n \n _handleChange(fieldKey, _ele?.toString()?.toLowerCase())\n }\n value={(filteredData[fieldKey] || [])?.includes(\n _ele?.toString()?.toLowerCase()\n )}\n />\n ))}\n
\n
\n \n \n );\n })}\n {!!Object.keys(filteredData)\n .filter((key) => key !== \"searchKey\")\n .some((_ele) => !!filteredData[_ele].length) && (\n
\n
\n {Object.keys(filteredData).length ? (\n

{dashboard.ChangeDividend.selectedFilters}

\n ) : (\n \n )}\n
{FilterChips()}
\n
\n {Object.keys(filteredData).length ? (\n \n ) : (\n \n )}\n
\n )}\n
\n );\n}\n","import React from 'react';\n// import { GridRowData } from '@material-ui/data-grid';\nimport { useCallback, useEffect, useMemo, useState } from 'react';\nimport { TableColumn } from '.';\nimport Skeleton from '@material-ui/lab/Skeleton';\n\n\n\nexport function useTableWithCollapse({\n initialSelectionModal = [],\n initialFilterType = null,\n initialFilterData = {},\n rows = [],\n columns = [],\n loading,\n}) {\n const [selectedRows, setSelectedRows] = useState(initialSelectionModal);\n const [filterType, setFilterType] = useState(null);\n const [filteredData, setFilteredData] = useState({});\n\n const resetTable = useCallback(() => {\n setSelectedRows(initialSelectionModal);\n }, [initialSelectionModal]);\n\n const resetFilters = useCallback(() => {\n setFilterType(initialFilterType);\n setFilteredData(initialFilterData);\n }, [initialFilterType, initialFilterData]);\n\n const tableColumns = useMemo(() => {\n return loading ? columns.map((column) => ({ ...column, Cell: })) : columns;\n }, [columns, loading]);\n\n const tableRows = useMemo(() => {\n return loading ? new Array(5).fill({}) : rows;\n }, [rows, loading]);\n\n return {\n selectedRows,\n setSelectedRows,\n resetTable,\n resetFilters,\n filterType,\n filteredData,\n setFilterType,\n setFilteredData,\n tableColumns,\n tableRows,\n };\n}\n","import React from \"react\";\nimport { IconButton, MenuItem } from \"@material-ui/core\";\n// import { GridRowData } from \"@material-ui/data-grid\";\nimport { KeyboardArrowDown, KeyboardArrowUp } from \"@material-ui/icons\";\nimport { useEffect, useMemo, useReducer, useState } from \"react\";\nimport { connect, useDispatch } from \"react-redux\";\n//import en from '../../../../lang/en-us';\nimport { BackArrow } from \"./SelectedFolios.js\";\nimport en from \"../../../lang/en-us.js\";\nimport { SubmitButton } from \"../../../lib/Button\";\nimport {\n TableColumn,\n TableCellParams,\n TableWithCollapse,\n} from \"../../../lib/DataTable/index.js\";\nimport { fetchInvestorDetails } from \"shared/store/actions/nct\";\n\n// import { RootStateType } from '../../../../redux-store/reducers';\nimport { RootStateType } from \"shared/store/reducers/index\";\n//import { INVESTOR_OBJECT } from '../../../store/types/nct';\n//import { LIST_PROTFOLIO_PAYLOAD } from '../../../store/types/portfolio';\nimport {\n getErrorMessage,\n getInvestorFunds,\n minorBelowEighteenYears,\n modeOfHoldingSingle,\n portfoliosByMinorStatus,\n portfoliosByTransactionResource,\n} from \"../portfolios/utils\";\nimport {\n EQUITY,\n LIQUID,\n DEBT,\n OTHER,\n UPDATE_NOMINEE,\n} from \"../../../utils/constants\";\nimport NoFoliosFound from \"../NoFoliosFound\";\nimport { useTableWithCollapse } from \"../../../lib/DataTable/customHooks.js\";\nimport { getMatchAndUnMatchedFunds } from \"../../../utils/utilityFunctions\";\nimport { INITIALIZE_NOMINEE_ARRAY } from \"shared/store/types/nominees\";\nimport CustomizedSelect from \"../transactions/customizedSelect\";\n\nconst { dashboard } = en;\n\nconst _renderNominee = ({ row, setCollapse, collapse }) => {\n return (\n <>\n {row.nominees.length ? (\n <>\n Yes\n {\n e.stopPropagation();\n setCollapse((open) => !open);\n }}\n >\n {!collapse ? (\n <>\n View\n \n \n ) : (\n <>\n Hide\n \n \n )}\n \n \n ) : row.noNominee === \"Y\" ? (\n Opted Out of Nomination\n ) :(\n No Nominees Added\n )}\n \n );\n};\nconst _renderModeofHolding = ({ row }) => (\n
{row.modeOfHolding === \"1\" ? \"Single\" : \"---\"}
\n);\nexport const mohMap = {\n 1: \"Single\",\n 2: \"Joint\",\n 3: \"Either or Survivor\",\n 4: \"Anyone or Survivor\",\n 5: \"Not applied\",\n};\n\nconst Columns = [\n {\n field: \"id\",\n headerName: \"FOLIO\",\n valueGetter: ({ row }) => row.folio,\n },\n /* {\n field: \"amcName\",\n headerName: \"Fund House\",\n width: 300,\n filterBy: true,\n }, */\n {\n field: \"investorName\",\n headerName: \"PRIMARY HOLDER\",\n width: 200,\n },\n {\n field: \"modeOfHolding\",\n headerName: \"Mode of Holding\",\n valueGetter: ({ row }) => {\n if (row.modeOfHolding === null) {\n return \"NA\";\n }\n const moh = mohMap[row.modeOfHolding];\n if (moh) {\n return moh;\n } else {\n return \"Others\";\n }\n },\n width: 150,\n },\n {\n field: \"nominees\",\n renderCell: _renderNominee,\n headerName: \"NOMINEE Details\",\n width: 150,\n },\n {\n isFilter: true,\n field: \"assetType\",\n headerName: \"Category\",\n filterBy: true,\n renderStaticFilters: [EQUITY, LIQUID, DEBT, OTHER],\n },\n];\n\nconst groupFilteredData = (rowData) => {\n const uniqueEmailMobileMap= {};\n for (let i = 0; i < rowData.length; ++i) {\n const { email, mobile } = rowData[i];\n if (!email || !mobile) continue;\n const currentKey = `${email.trim()}-${mobile.trim()}`;\n if (uniqueEmailMobileMap[currentKey]) {\n uniqueEmailMobileMap[currentKey].push(rowData[i]);\n } else {\n uniqueEmailMobileMap[currentKey] = [rowData[i]];\n }\n }\n return uniqueEmailMobileMap;\n};\n\nconst mobileEmailFilterReducer = (\n state,\n action\n) => {\n const { groupedFilterMap, emailMobileKeys, currentKey } = state;\n switch (action.type) {\n case \"SET_FILTER_MAP\":\n const uniqueKeys = Object.keys(action.payload);\n return {\n ...state,\n groupedFilterMap: action.payload,\n emailMobileKeys: uniqueKeys,\n currentKey: !currentKey && uniqueKeys[0],\n };\n break;\n case \"SET_FILTER_KEY\":\n return {\n ...state,\n currentKey: action.payload,\n };\n break;\n default:\n throw Error(`Invalid action`);\n }\n};\n\nfunction Nominee(props) {\n const [rowData, setRowData] = useState([]);\n const [loading, setLoading] = useState(false);\n\n const [filterState, filterDispatch] = useReducer(mobileEmailFilterReducer, {\n groupedFilterMap: null,\n emailMobileKeys: null,\n currentKey: null,\n });\n const { emailMobileKeys, currentKey, groupedFilterMap } = filterState;\n\n const { selectedRows, setSelectedRows, tableColumns, tableRows, ...filters } =\n useTableWithCollapse({\n rows: currentKey ? groupedFilterMap[currentKey] : rowData,\n columns: Columns,\n loading,\n });\n\n const { userRegisteredWith } = props;\n const dispatch = useDispatch();\n\n useEffect(() => {\n setLoading(true);\n async function callApi() {\n const payload = {\n pan: props.investorData.PAN,\n brokercode: props.token,\n fund:\"176\",\n };\n\n try {\n // await props.getPortfolio(payload);\n const { body: investorDetails = {} } = await props.fetchInvestorDetails(\n payload\n );\n const { success: nomineeFunds = [] } = investorDetails;\n const filters = [\n modeOfHoldingSingle,\n portfoliosByMinorStatus,\n portfoliosByTransactionResource,\n ];\n const funds = getMatchAndUnMatchedFunds(\n filters,\n getInvestorFunds(nomineeFunds),\n true\n ).map((fund) => {\n return { ...fund, error: getErrorMessage(fund, filters) };\n });\n const { nomineeFunds: _nomineeFunds = [], otherFunds = [] } =\n funds.reduce((prev, fund) => {\n if (fund?.nominees?.length) {\n return {\n ...prev,\n nomineeFunds: [...(prev.nomineeFunds ?? []), fund],\n };\n }\n return { ...prev, otherFunds: [...(prev.otherFunds ?? []), fund] };\n }, []);\n setRowData([...otherFunds, ..._nomineeFunds]);\n setLoading(false);\n } catch (err) {\n console.log(\"err\",err)\n console.trace(err);\n alert(err.message);\n }\n }\n callApi();\n return () => {};\n }, []);\n\n useEffect(() => {\n const groupedFilterMap = groupFilteredData(rowData);\n filterDispatch({\n type: \"SET_FILTER_MAP\",\n payload: groupedFilterMap,\n });\n }, [rowData]);\n\n // clear selected rows on changing the value in the filter drop down\n useEffect(() => {\n setSelectedRows([]);\n }, [currentKey]);\n\n const _rederCollapse = ({ row }) => {\n const { nominees = [] } = row;\n return (\n \n {new Array(3).fill(\"\").map((_, index) => (\n \n \n \n \n ))}\n \n );\n };\n\n const TableBody = useMemo(() => {\n return (\n (row.isDisabled ? row.error : \"\")}\n isRowSelectable={({ row }) => (row.isDisabled ? false : true)}\n checkBoxEnabled={true}\n toolTipEnabled\n {...filters}\n />\n );\n }, [tableColumns, tableRows, selectedRows, filters]);\n\n const handleFilterKeyChange = (e) => {\n filterDispatch({\n type: \"SET_FILTER_KEY\",\n payload: e.target.value,\n });\n };\n\n return (\n
\n \n \n \n Select Email-Mobile Combination\n
\n (this.reportTypeField = ele)}\n // isError={reportType.isError}\n // errorMessage={reportType.errorMessage}\n // isShowError={reportType.isError}\n //placeholder=\"Select Report Type\"\n >\n {emailMobileKeys &&\n emailMobileKeys.map((item) => (\n \n {item}\n \n ))}\n \n \n {/*
*/}\n
\n
\n
\n {/* */}\n
\n
\n
{dashboard.UpdateNominee.UpdateNomineeInfo}
\n
\n {loading || rowData.length ? (\n TableBody\n ) : (\n \n )}\n
\n {/* */}\n
\n
\n
\n {\n dispatch({\n type: INITIALIZE_NOMINEE_ARRAY,\n body: { payload: selectedRows },\n });\n props.history.push(\n \"/new-transaction/nct-type/update-ind-nominee\",\n {\n selectedRows,\n }\n );\n }}\n className=\"customBtn\"\n disabled={!selectedRows.length}\n label={dashboard.UpdateNominee.buttonNext}\n />\n
\n
\n
\n
\n
\n
\n {/*
*/}\n \n );\n}\n\nexport default connect(\n ({ authReducer, investor }) => ({\n ...authReducer,\n ...investor,\n }),\n { fetchInvestorDetails }\n)(Nominee);\n","import { Button } from \"@material-ui/core\";\nimport en from \"../../../lang/en-us.js\";\nimport { useEffect, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { getPortfolio } from \"shared/store/actions/portfolio\";\nimport { RootStateType } from \"shared/store/reducers\";\nimport {\n sendPhoneOTP as sendOtp,\n sendEmailOTP,\n updateEmail,\n checkEmail,\n} from \"shared/store/actions/nct\";\nimport {\n getPortfoliosFilteredData,\n portfoliosByMinorStatus,\n portfoliosByModeOfHolding,\n portfoliosByTransactionResource,\n} from \"../../home/portfolios/utils\";\nimport { getErrorMessage, getInvestorFunds } from \"../portfolios/utils\";\nimport { NoteModals } from \"../../../lib/NoteModals/index.js\";\nimport { TableColumn, TableWithCollapse } from \"../../../lib/DataTable/index.js\";\nimport { NOMINEE } from \"shared/store/types/nct\";\nimport {\n UPDATE_EMAIL,\n OTP_ACTIONS,\n REGISTER_WITH_EMAIL,\n} from \"../../../utils/constants\";\nimport NoFoliosFound from \"./../NoFoliosFound\";\nimport { useTableWithCollapse } from \"../../../lib/DataTable/customHooks.js\";\n// import { ActionHeader, FaqLink } from '../index';\nimport { nextScreen } from \"../ChangeMobile/flow\";\nimport { getMatchAndUnMatchedFunds } from \"../../../utils/utilityFunctions\";\nimport { fetchInvestorDetails } from \"shared/store/actions/nct\";\nimport { SubmitButtonWithLoader } from \"../../../lib/Button\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport CustomizedSelect from \"../transactions/customizedSelect\";\nimport React from \"react\";\nimport { BackArrow } from \"../UpdateNominee/SelectedFolios\";\n\nimport { mohMap } from \"../UpdateNominee\";\nconst { dashboard } = en;\nconst columns = [\n { field: \"folio\", headerName: \"Folio\" },\n/* { field: \"amcName\", headerName: \"Fund House\", width: 300 },\n */ { field: \"investorName\", headerName: \"Primary Holder\", width: 250 },\n {\n field: \"modeOfHolding\",\n headerName: \"Mode of Holding\",\n valueGetter: ({ row }) => {\n if (row.modeOfHolding === null) {\n return \"NA\";\n }\n const moh = mohMap[row.modeOfHolding];\n if (moh) {\n return moh;\n } else {\n return \"Others\";\n }\n },\n width: 150,\n },\n { field: \"mobile\", headerName: \"Mobile No.\", width: 150 },\n\n { field: \"email\", headerName: \"Email Address\", width: 200 },\n];\n\nfunction ChangeEmailList(props) {\n const { enteredEmail: email, emailRelationship } = props.location.state || {};\n const [loading, setLoading] = useState(false);\n const [rowData, setRowData] = useState([]);\n const [uniqueMobileNo, setUniqueMobileNo] = useState([]);\n const [selectMobile, setSelectMobile] = useState(\"\");\n const [filteredData, setFilterdData] = useState([]);\n const { tableRows, tableColumns, selectedRows, setSelectedRows } =\n useTableWithCollapse({\n rows: filteredData,\n columns,\n loading,\n });\n const [show, setShow] = useState(false);\n\n const handleSubmit = async () => {\n let userResponse \n const foliosToUpdate = selectedRows.filter(\n (fund) => fund.email !== email\n );\n const param = {\n request_type:\"email_update\",\n folios: foliosToUpdate.map((item) => item.folio.toString()),\n pan: props.investorData.PAN,\n distributor_id: props.token\n }\n let checkresponse \n try {\n checkresponse = await props.checkEmail(param);\n } catch (error) {\n userResponse = window.confirm(\"There is already a pending request to be approved by the Investor. Would you like to anyway proceed with a New NCT request?\");\n }\n if (checkresponse?.message === \"Not a duplicate request\" || userResponse) { try {\n setLoading(true);\n // const goTo = nextScreen(props.match.path, \"email\");\n const { pan = \"\", pekrn = \"\", mobile = \"\" } = props;\n const foliosToUpdate = selectedRows.filter(\n (fund) => fund.email !== email\n );\n // const action = emailRegisteredUser()\n // ? OTP_ACTIONS.changeEmail\n // : OTP_ACTIONS.changeMobile;\n const investorName = props.investorData.invname;\n const investorPan = props.investorData.PAN;\n\n const investor = props.investors.find(\n (item) =>\n item.Name.toLowerCase() === investorName.toLowerCase() ||\n item.Pan.toLowerCase() == investorPan.toLowerCase()\n );\n\n const newData = foliosToUpdate.map((item) => ({\n folio: item.folio,\n amc: item.amc,\n amc_name: item.amcName,\n }));\n\n const payload = {\n email: investor.Email,\n newEmail: email,\n mobile: selectMobile,\n image: null,\n relation: emailRelationship,\n pan: investorPan,\n distributor_id: props.token,\n data: newData,\n };\n\n if (selectMobile === \"N/A\") {\n props.history.replace(\n \"/new-transaction/nct-type/phygital/change-email-document\",\n {\n payload: payload,\n }\n );\n return;\n }\n// console.log(\"payload1\",payload)\n const res = await props.updateEmail(payload);\n\n alert(\n `Request with request Id ${res.req_id} for update email address link has been sent to investor mobile number`\n );\n props.history.push(\"/new-transaction/nct-types\");\n\n // if (foliosToUpdate.length) {\n // let res = await props.sendOtp({\n // pan,\n // pekrn,\n // action: OTP_ACTIONS.changeEmail,\n // });\n // props.history.replace(goTo, {\n // foliosToUpdate: selectedRows.filter((fund) => fund.email !== email),\n // ...(props?.location?.state || {}),\n // action: OTP_ACTIONS.changeEmail,\n // ...(res || {}).body,\n // });\n // }\n } catch (err) {\n alert(err.message);\n } finally {\n setLoading(false);\n } }\n };\n\n // useEffect(() => {\n // if (!(props.email || email)) {\n // props.history.replace(\"/\");\n // }\n // }, []);\n\n useEffect(() => {\n async function fetchPortfolio() {\n try {\n setLoading(true);\n const { pan = \"\", pekrn = \"\", mobile = \"\", reqId = \"\" } = props;\n\n // await props.getPortfolio({\n // pan,\n // pekrn,\n // mobile,\n // reqId,\n // });\n const payload = {\n pan: props.investorData.PAN,\n brokercode: props.token,\n };\n const { body: investorDetails = {} } = await props.fetchInvestorDetails(\n payload\n );\n const { success: nomineeFunds = [] } = investorDetails;\n const filters = [\n portfoliosByModeOfHolding,\n portfoliosByMinorStatus,\n portfoliosByTransactionResource,\n ];\n const funds = getMatchAndUnMatchedFunds(\n filters,\n getInvestorFunds(nomineeFunds),\n true\n ).map((fund) => {\n return { ...fund, error: getErrorMessage(fund, filters) };\n });\n const { nomineeFunds: _nomineeFunds = [], otherFunds = [] } =\n funds.reduce((prev, fund) => {\n if (fund?.nominees?.length) {\n return {\n ...prev,\n nomineeFunds: [...(prev.nomineeFunds ?? []), fund],\n };\n }\n return { ...prev, otherFunds: [...(prev.otherFunds ?? []), fund] };\n }, []);\n\n const rows = [...otherFunds, ..._nomineeFunds].map(\n (item) => ({\n folio: item.folio,\n amc: item.amc,\n amcName: item.amcName,\n email: item.email,\n id: item.id,\n investorName: item.investorName,\n mobile: item.mobile || \"N/A\",\n assetType: item.assetType,\n modeOfHolding: item.modeOfHolding,\n isDisabled: item.isDisabled,\n error: item.error,\n })\n );\n // .filter((item) => item.email != email);\n\n // setRowData([...otherFunds, ..._nomineeFunds]);\n // setSelectedRows([...otherFunds, ..._nomineeFunds]);\n const mobileNumbers = [];\n\n for (let i = 0; i < rows.length; i++) {\n if (rows[i].mobile) {\n const mobile = rows[i].mobile.trim() || \"N/A\";\n if (!mobileNumbers.includes(mobile)) {\n mobileNumbers.push(mobile);\n }\n }\n }\n setUniqueMobileNo(mobileNumbers);\n setRowData(rows);\n // setSelectedRows(rows);\n setLoading(false);\n } catch (err) {\n alert(err.message);\n setLoading(false);\n }\n }\n fetchPortfolio();\n }, []);\n\n useEffect(() => {\n setSelectMobile(uniqueMobileNo[0] || \"\");\n const filteredData = rowData.filter(\n (item) => item.mobile == uniqueMobileNo[0]\n );\n setFilterdData(filteredData);\n // setRowData(filteredData);\n // setSelectedRows(filteredData);\n }, [uniqueMobileNo, rowData]);\n useEffect(() => {\n // console.log(\"selectedRows\",selectedRows,\"tablecolumns\",tableColumns,tableRows);\n })\n\n const handleChangeMobileNumber = (e) => {\n setSelectMobile(e.target.value);\n const filteredData = rowData.filter(\n (item) => item.mobile == e.target.value\n );\n setFilterdData(filteredData);\n // setRowData(filteredData);\n setSelectedRows([]);\n };\n return (\n <>\n
\n \n {/* */}\n \n {dashboard.changeEmail.List.emailNote}\n \n \n \n Select Mobile Number\n
\n {/*
Folios that do not have the Email ID, as entered in the previous screen, will only be displayed here
*/}\n (this.reportTypeField = ele)}\n // isError={reportType.isError}\n // errorMessage={reportType.errorMessage}\n // isShowError={reportType.isError}\n //placeholder=\"Select Report Type\"\n >\n {uniqueMobileNo.map((item) => (\n \n {item}\n \n ))}\n \n \n\n
\n Sundaram Mutual Funds\n
\n\n
\n
\n
\n \n {!filteredData.length && !loading ? (\n \n ) : (\n \n row.isDisabled ? row.error : \"\"\n }\n checkBoxEnabled\n toolTipEnabled\n />\n )}\n
\n
\n {/* */}\n
\n {!!tableRows.length && (\n
\n
\n fund.email.toLowerCase() !== email.toLowerCase()\n ).length\n }\n onClick={() => {\n handleSubmit();\n }}\n />\n
\n
\n )}\n \n props.history.push(\"change-email-document\", {\n foliosToUpdate: selectedRows.filter(\n (fund) => fund.email !== email\n ),\n })\n }\n />\n \n \n \n );\n}\n\nexport default connect(\n ({ authReducer, portfolio, investor }) => ({\n ...authReducer,\n ...portfolio,\n ...investor,\n }),\n {\n fetchInvestorDetails,\n // getPortfolio,\n sendOtp,\n updateEmail,\n checkEmail,\n }\n)(ChangeEmailList);\n\n// export default {};\n","import {\n FormControl,\n InputLabel,\n Select,\n MenuItem,\n FormHelperText,\n } from \"@material-ui/core\";\n import { showHelperText } from \"../../../utils/utilityFunctions\";\n import { getRelationShip } from \"../../home/portfolios/utils\";\n import React from \"react\";\n \n export default function ({ mobileFormik }) {\n return (\n \n \n Mobile Family Relationship\n \n \n \n \n
Mobile Relationship
\n
\n {Object.keys(getRelationShip).map((key) => (\n {getRelationShip[key]}\n ))}\n \n \n {showHelperText(mobileFormik, \"mobileRelationship\")}\n \n
\n \n );\n }\n ","import {\n Button,\n FormControl,\n FormHelperText,\n InputLabel,\n MenuItem,\n Select,\n } from \"@material-ui/core\";\n import { useFormik } from \"formik\";\n import { useState } from \"react\";\n import { connect } from \"react-redux\";\n // import { ActionHeader, FaqLink } from '..';\n import en from \"../../../lang/en-us.js\";\n import { NoteModals } from \"../../../lib/NoteModals/index.js\";\n import TextInput from \"../../../lib/TextField/index.js\";\n // import { sendPhoneOTP, sendMobileOTP, updateMobile } from 'shared/store/actions/nct';\n import { RootStateType } from \"shared/store/reducers\";\n import { addDialCode, OTP_ACTIONS } from \"../../../utils/constants\";\n import { isError, showHelperText } from \"../../../utils/utilityFunctions\";\n import { nextScreen } from \"./flow\";\n import * as yup from \"yup\";\n import MobileRelationship from \"./MobileRelationship\";\n import React from \"react\";\n import { BackArrow } from \"../UpdateNominee/SelectedFolios\";\n \n const { dashboard, common } = en;\n const initialValues = {\n mobile: \"\",\n mobileRelationship: \"\",\n };\n const validationSchema = yup.object({\n mobile: yup.string()\n .required(common.errors.mobile.required)\n .matches(/^[789]\\d{9}$/, common.errors.mobile.regex),\n mobileRelationship: yup\n .string()\n .required(common.errors.relationship.mobileRequired),\n // .mobile(common.errors.email.regex),\n });\n \n function ChangeMobileNew(props) {\n // const mobile = props.communicationDetails[0].mobile ;\n const existingMobile = props.communicationDetails[0].Mobile\n const mobileFormik = useFormik({\n initialValues,\n onSubmit: async ({ mobile, mobileRelationship }) => {\n // const goTo = nextScreen(props.match.path);\n console.log(\"existingMobile\",existingMobile,props)\n if (existingMobile.slice(3) === mobile) {\n alert(\n \"New mobile number should not be same as registered mobile number\"\n );\n mobileFormik.setFieldValue(\"mobile\", \"\");\n return;\n }\n if (props?.location?.state?.isPhygitial) {\n props.history.push(\n \"/new-transaction/nct-type/phygital/change-mobile-document\",\n {\n mobile,\n mobileRelationship,\n ...(props?.location?.state || {}),\n }\n );\n return;\n }\n props.history.push(\n \"/new-transaction/nct-type/digital/change-mobile-list\",\n {\n mobile,\n mobileRelationship,\n ...(props?.location?.state || {}),\n }\n );\n \n // try {\n // const {\n // images = [],\n // action = OTP_ACTIONS.NEW_MOBILE_ONINE_OTP,\n // flow,\n // } = props.location.state || {};\n // const { pan, pekrn } = props;\n // let res = await props.sendMobileOTP({\n // mobile: addDialCode(mobile),\n // pan,\n // pekrn,\n // action,\n // });\n // const routeStateParams = {\n // mobile,\n // mobileRelationship,\n // ...(res || {}).body,\n // onSuccessNavigationUrl: props?.location?.state?.onSuccessNavigationUrl || '',\n // foliosToUpdate: props?.location?.state?.foliosToUpdate,\n // success: true,\n // images,\n // action,\n // };\n \n // props.history.replace(goTo, routeStateParams);\n // } catch (err: any) {\n // alert(err.message);\n // }\n },\n validationSchema,\n });\n \n const handleMobileChange = (event) => {\n const { target } = event;\n let { value } = target;\n value = value.replace(/\\D/g, \"\"); // Remove non-digit characters\n if (value.length <= 10) {\n mobileFormik.setFieldValue(\"mobile\", value);\n // Clear the error for mobile field if it was previously shown\n if (mobileFormik.touched.mobile && mobileFormik.errors.mobile) {\n mobileFormik.setFieldError(\"mobile\", \"\");\n }\n }\n };\n \n return (\n
\n \n
\n \n
\n
\n \n {dashboard.ChangeMobile.newMobile.heading}\n {/* {dashboard.ChangeMobile.newMobile.headingSpan} */}\n \n

{dashboard.ChangeMobile.newMobile.info}

\n
\n
\n \n Enter New Mobile Number\n \n \n
\n \n
\n
\n {/* */}\n
\n
\n \n {dashboard.changeEmail.buttonText}\n \n
\n
\n
\n );\n }\n export default connect(\n ({ authReducer, portfolio }) => ({\n ...authReducer,\n ...portfolio,\n }),\n {}\n )(ChangeMobileNew);\n \n // export default {};\n ","import { Button } from \"@material-ui/core\";\nimport en from \"../../../lang/en-us.js\";\nimport { connect } from \"react-redux\";\nimport { RootStateType } from \"shared/store/reducers\";\n// import { getPortfolio } from \"shared/store/actions/portfolio\";\nimport { useEffect, useState } from \"react\";\nimport { RowInfoType } from \"../ChangeEmail/change-email-list\";\nimport {\n getPortfoliosFilteredData,\n portfoliosByMinorStatus,\n portfoliosByModeOfHolding,\n portfoliosByTransactionResource,\n} from \"../../home/portfolios/utils\";\nimport { sendPhoneOTP, updateMobile, checkEmail } from \"shared/store/actions/nct\";\nimport { NoteModals } from \"../../../lib/NoteModals/index.js\";\nimport { maskMobileNumber } from \"../../../utils/utilityFunctions\";\nimport { TableColumn, TableWithCollapse } from \"../../../lib/DataTable/index.js\";\nimport {\n OTP_ACTIONS,\n REGISTER_WITH_MOBILE,\n REGISTER_WITH_EMAIL,\n addDialCode,\n} from \"../../../utils/constants\";\nimport NoFoliosFound from \"../NoFoliosFound\";\nimport { useTableWithCollapse } from \"../../../lib/DataTable/customHooks.js\";\n// import { ActionHeader, FaqLink } from '..';\nimport { nextScreen } from \"./flow\";\nimport { getErrorMessage, getInvestorFunds } from \"../portfolios/utils\";\nimport { getMatchAndUnMatchedFunds } from \"../../../utils/utilityFunctions\";\nimport { fetchInvestorDetails } from \"shared/store/actions/nct\";\nimport { SubmitButtonWithLoader } from \"../../../lib/Button\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport CustomizedSelect from \"../transactions/customizedSelect\";\nimport React from \"react\";\nimport { mohMap } from \"../UpdateNominee\";\n\nconst { dashboard } = en;\n\nconst columns = [\n { field: \"folio\", headerName: \"Folio\" },\n // { field: \"amcName\", headerName: \"Fund House\", width: 350 },\n { field: \"investorName\", headerName: \"Primary Holder\", width: 290 },\n { field: \"email\", headerName: \"Email Address\", width: 200 },\n {\n field: \"modeOfHolding\",\n headerName: \"Mode of Holding\",\n valueGetter: ({ row }) => {\n if (row.modeOfHolding === null) {\n return \"NA\";\n }\n const moh = mohMap[row.modeOfHolding];\n if (moh) {\n return moh;\n } else {\n return \"Others\";\n }\n },\n width: 150,\n },\n {\n field: \"mobile\",\n headerName: \"Mobile Number\",\n width: 150,\n valueGetter: ({ row, ...params }) => maskMobileNumber(row?.mobile),\n },\n];\n\nfunction ChangeMobile(props) {\n const [rowData, setRowData] = useState([]);\n const [loading, setLoading] = useState(false);\n const [uniqueEmailId, setUniqueEmailId] = useState([]);\n const [selectEmail, setSelectEmail] = useState(\"\");\n const [filteredData, setFilterdData] = useState([]);\n const { tableRows, tableColumns, selectedRows, setSelectedRows } =\n useTableWithCollapse({\n rows: filteredData,\n columns,\n loading,\n });\n const [show, setShow] = useState(false);\n const { mobile: newMobile, mobileRelationship } = props.location.state || {};\n\n const handleSubmit = async () => {\n let userResponse \n const foliosToUpdate = selectedRows.filter(\n (fund) => addDialCode(fund.mobile) !== addDialCode(newMobile)\n );\n const param = {\n request_type:\"mobile_update\",\n folios: foliosToUpdate.map((item) => item.folio.toString()),\n pan: props.investorData.PAN,\n distributor_id: props.token\n }\n let checkresponse\n try {\n checkresponse = await props.checkEmail(param);\n }\n catch(err) {\n userResponse = window.confirm(\"There is already a pending request to be approved by the Investor. Would you like to anyway proceed with a New NCT request?\"); \n }\n if(checkresponse?.message === \"Not a duplicate request\" || userResponse ) { if (foliosToUpdate.length) {\n try {\n setLoading(true);\n // const action = emailRegisteredUser()\n // ? OTP_ACTIONS.changeEmail\n // : OTP_ACTIONS.changeMobile;\n const investorName = props.investorData.invname;\n const investorPan = props.investorData.PAN;\n const investor = props.investors?.find(\n (item) =>\n item.Name.toLowerCase() === investorName.toLowerCase() ||\n item.Pan.toLowerCase() == investorPan.toLowerCase()\n );\n\n const newData = foliosToUpdate.map((item) => ({\n folio: item.folio,\n amc: item.amc,\n amc_name: item.amcName,\n }));\n const payload = {\n email: selectEmail,\n newMobile: newMobile,\n mobile: investor.Mobile,\n image: null,\n relation: mobileRelationship,\n pan: investorPan,\n distributor_id: props.token,\n data: newData,\n };\n if (selectEmail === \"N/A\") {\n props.history.replace(\n \"/new-transaction/nct-type/phygital/change-mobile-document\",\n {\n payload: payload,\n }\n );\n return;\n }\n\n const res = await props.updateMobile(payload);\n alert(\n `Request with request Id ${res.req_id} for update Mobile Number link has been sent to investor mobile number`\n );\n props.history.push(\"/new-transaction/nct-types\");\n } catch (err) {\n alert(err.message);\n } finally {\n setLoading(false);\n }\n } }\n };\n\n // Avoid direct navigation to this page if user is registered through email\n const { userRegisteredWith } = props || {};\n useEffect(() => {\n // This page should not be opened by entering the url if registered with Email\n // This page is the first page in the flow, if user is registered with mobile number.\n // But this page comes as 3rd page in the flow when user is email registered\n if (userRegisteredWith == REGISTER_WITH_EMAIL) {\n if (!props.location.state) {\n props.history.replace(\"/\");\n return;\n }\n }\n console.log(\"mobile\" ,props)\n }, []);\n\n useEffect(() => {\n async function fetchPortfolio() {\n try {\n setLoading(true);\n const { pan = \"\", pekrn = \"\", mobile = \"\", reqId = \"\" } = props;\n const payload = {\n pan: props.investorData.PAN,\n brokercode: props.token,\n };\n const { body: investorDetails = {} } = await props.fetchInvestorDetails(\n payload\n );\n const { success: nomineeFunds = [] } = investorDetails;\n const filters = [\n portfoliosByModeOfHolding,\n portfoliosByMinorStatus,\n portfoliosByTransactionResource,\n ];\n const funds = getMatchAndUnMatchedFunds(\n filters,\n getInvestorFunds(nomineeFunds),\n true\n ).map((fund) => {\n return { ...fund, error: getErrorMessage(fund, filters) };\n });\n const { nomineeFunds: _nomineeFunds = [], otherFunds = [] } =\n funds.reduce((prev, fund) => {\n if (fund?.nominees?.length) {\n return {\n ...prev,\n nomineeFunds: [...(prev.nomineeFunds ?? []), fund],\n };\n }\n return { ...prev, otherFunds: [...(prev.otherFunds ?? []), fund] };\n }, []);\n const rows = [...otherFunds, ..._nomineeFunds].map(\n (item) => ({\n folio: item.folio,\n amc: item.amc,\n amcName: item.amcName,\n email: item.email || \"N/A\",\n id: item.id,\n investorName: item.investorName,\n mobile: item.mobile,\n assetType: item.assetType,\n modeOfHolding: item.modeOfHolding,\n isDisabled: item.isDisabled,\n error: item.error,\n })\n );\n\n const emailIds = [];\n\n for (let i = 0; i < rows.length; i++) {\n const mobile = rows[i].email.trim() || \"N/A\";\n if (!emailIds.includes(mobile)) {\n emailIds.push(mobile);\n }\n }\n setUniqueEmailId(emailIds);\n setRowData(rows);\n // setSelectedRows(rows);\n setLoading(false);\n } catch (err) {\n alert(err.message);\n setLoading(false);\n }\n }\n fetchPortfolio();\n }, []);\n\n useEffect(() => {\n setSelectEmail(uniqueEmailId[0] || \"\");\n const filteredData = rowData.filter(\n (item) => item.email == uniqueEmailId[0]\n );\n setFilterdData(filteredData);\n // setRowData(filteredData);\n }, [uniqueEmailId, rowData]);\n\n const handleChangeEmailId = (e) => {\n setSelectEmail(e.target.value);\n const filteredData = rowData.filter((item) => item.email == e.target.value);\n setFilterdData(filteredData);\n // setRowData(filteredData);\n setSelectedRows([]);\n };\n\n return (\n
\n {/* */}\n \n {\" \"}\n {dashboard.ChangeMobile.ChangeMobileInfo}\n \n \n \n Select Email ID\n
\n (this.reportTypeField = ele)}\n // isError={reportType.isError}\n // errorMessage={reportType.errorMessage}\n // isShowError={reportType.isError}\n //placeholder=\"Select Report Type\"\n >\n {uniqueEmailId.map((item) => (\n \n {item}\n \n ))}\n \n \n
\n Sundaram Mutual Funds\n
\n\n
\n
\n
\n \n {!rowData.length && !loading ? (\n \n ) : (\n \n row.isDisabled ? row.error : \"\"\n }\n checkBoxEnabled\n toolTipEnabled\n />\n )}\n
\n
\n {/* */}\n
\n {!!tableRows.length && (\n
\n
\n fund.mobile !== newMobile)\n .length\n }\n onClick={() => {\n handleSubmit();\n }}\n />\n
\n
\n )}\n props.history.push(\"change-mobile-document\")}\n />\n \n \n );\n}\n\nexport default connect(\n ({ authReducer, portfolio, investor }) => ({\n ...authReducer,\n ...portfolio,\n ...investor,\n }),\n { fetchInvestorDetails, sendPhoneOTP, updateMobile , checkEmail}\n)(ChangeMobile);\n","import React from \"react\";\nimport {\n Box,\n Button,\n Dialog,\n List,\n ListItem,\n Popover,\n} from \"@material-ui/core\";\nimport { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport en from \"../../lang/en-us\";\nimport {\n validUploadFileFormats,\n validUploadFileSize,\n} from \"../../utils/constants\";\nimport Image from \"../../components/Image\";\nconst { dashboard } = en;\n\n\n\nconst AndriodUploadOptions = [\"Camera\", \"Browse Files\"];\n\nconst _getFileType = (fileType) => {\n if (fileType === \"application/pdf\") {\n return \"PDF\";\n }\n if (fileType === \"image/png\") {\n return \"PNG\";\n }\n if (fileType === \"image/jpeg\") {\n return \"JPEG\";\n }\n if (fileType === \"image/jpg\") {\n return \"JPG\";\n }\n};\n\nexport function UploadFile({\n documentFormat = \"Document Format : .pdf / .jpg / .jpeg / .png\",\n setImageName = (name) => {},\n onImageSelected = (\n ) => {},\n id = \"upload-document\",\n initSelected = false,\n imageName = \"\",\n}) {\n const [selectedFile, setSelectedFile] = useState({ name: imageName });\n const [isSelected, setIsSelected] = useState(initSelected);\n const [anchorEl, setAnchorEl] = useState(null);\n\n useEffect(() => {\n setIsSelected(initSelected);\n }, [initSelected]);\n\n useEffect(() => {\n setSelectedFile({ name: imageName || \"\" });\n }, [imageName]);\n\n const _window = window;\n const _navigator = navigator;\n\n function getBase64(file) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => resolve(reader.result);\n reader.onerror = (error) => reject(error);\n });\n }\n\n const changeHandler = async (event) => {\n setSelectedFile(event.target.files[0]);\n const name = event.target.files[0].name;\n setImageName(name);\n try {\n event.persist();\n const base64 = await getBase64(event.target.files[0]);\n let fileType = event.target.files[0].type;\n const fileSize = event.target.files[0].size;\n if (!validUploadFileFormats.includes(fileType)) {\n throw Error(\"Please upload correct format\");\n }\n if (fileSize > validUploadFileSize) {\n throw Error(\"File size should be less than 2 MB\");\n }\n onImageSelected(base64.split(\",\")[1], _getFileType(fileType), { name });\n event.target.value = null;\n setIsSelected(true);\n } catch (e) {\n alert(e.message);\n event.target.value = null;\n }\n };\n\n const handleOpen = (event) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n const getPic = () => {\n if (_navigator.camera) {\n _navigator.camera.getPicture(onSuccess, onFail, {\n quality: 25,\n destinationType: _window.Camera.DestinationType.FILE_URI,\n });\n }\n };\n\n const browseFiles = () => {\n if (_navigator.camera) {\n let options = {\n quality: 50,\n destinationType: _window.Camera.DestinationType.FILE_URI,\n sourceType: _window.Camera.PictureSourceType.PHOTOLIBRARY,\n encodingType: _window.Camera.EncodingType.JPEG,\n mediaType: _window.Camera.MediaType.PICTURE,\n allowEdit: false,\n correctOrientation: true, // Corrects Android orientation quirks\n };\n _navigator.camera.getPicture(onSuccess, onFail, options);\n }\n };\n const onSuccess = (path) => {\n _window.resolveLocalFileSystemURL(path, onFileReadSuccess, onFailToRead);\n };\n\n const onFailToRead = (message) => {\n alert(`Failed ${message}`);\n };\n\n const onFileReadSuccess = (fileEntry) => {\n try {\n fileEntry.file(async function (file) {\n try {\n setSelectedFile(file);\n const base64 = await getBase64(file);\n let fileType = file.type;\n const fileSize = file.size;\n if (!validUploadFileFormats.includes(fileType)) {\n throw Error(\"Please upload correct format\");\n }\n if (fileSize > validUploadFileSize) {\n throw Error(\"File size should be less than 2 MB\");\n }\n onImageSelected(base64.split(\",\")[1], _getFileType(fileType));\n setIsSelected(true);\n } catch (e) {\n alert(e.message);\n }\n });\n } catch (e) {\n alert(e.message);\n }\n };\n\n function onFail(message) {\n // alert('Failed because: ' + message);\n }\n\n const fileOptions =\n _window?.device?.platform !== \"Android\"\n ? {\n type: \"file\",\n onChange: changeHandler,\n }\n : {};\n\n const onSelect = (option) => {\n handleClose();\n if (option === AndriodUploadOptions[0]) {\n getPic();\n setAnchorEl(null);\n } else {\n browseFiles();\n }\n };\n return (\n \n \n Upload Application Form*\n

\n
\n \n \n {isSelected && (\n <>\n \n {selectedFile.name}{\" \"}\n {\n onImageSelected(\"\", \"\");\n setIsSelected(false);\n setSelectedFile({ name: \"\" });\n }}\n />\n \n \n )}\n {/* \n \n
\n Signed.docx \"icon\"\n
*/}\n
\n
\n

{dashboard.ChangeTaxStatus.uploadDocumentsInfo}

\n {/*

{documentFormat}

\n

Each File size : {'<'} 2 MB

*/}\n
\n \n \n {AndriodUploadOptions.map((ele) => (\n \n {\n onSelect(ele);\n }}\n >\n {ele}\n \n \n ))}\n \n \n
\n );\n}\n","import React from \"react\";\nimport { Box, Button, Typography } from \"@material-ui/core\";\nimport { useState } from \"react\";\n// import { ActionHeader } from '.';\nimport en from \"../../lang/en-us\";\nimport { UploadFile } from \"../../lib/UploadFile.tsx\";\nimport Image from \"../Image\";\nconst { dashboard } = en;\n\nexport default function UploadDocumentScreen({\n backLink = \"\",\n heading = \"\",\n subheading = \"\",\n info1 = \"\",\n info2 = \"\",\n showMobile = false,\n linkText = \"\",\n nextLink = \"\",\n id = \"document\",\n emailInfo = \"\",\n mobile = \"\",\n mobileInfo = \"\",\n onImageSelected = (value, format) => {},\n handleSubmit = () => {},\n isDisabled = true,\n hrefLink = \"#\",\n email = \"\",\n}) {\n return (\n <>\n {/* */}\n {/*
*/}\n \n {/* */}\n \n {/*
*/}\n \n \n {showMobile ? \"Mobile\" : \"Email\"}\n

\n

{email ? email : mobile}

\n
\n\n {/* */}\n \n \"icon\"\n \n {mobileInfo ? mobileInfo : emailInfo}\n \n \n {/* */}\n \n
\n
\n
\n {/*

{subheading}

*/}\n\n {/* */}\n\n \n
\n\n
\n \n {dashboard.changeEmail.UploadDocument.buttonText}\n \n
\n
\n \n \n );\n}\n","import { useState, useEffect } from \"react\";\nimport { connect } from \"react-redux\";\nimport { onSaveImageData } from \"shared/store/actions/nct\";\nimport { RootStateType } from \"shared/store/reducers\";\nimport { ImageSaveType } from \"shared/store/types/nct\";\nimport { OTP_ACTIONS } from \"../../../utils/constants\";\nimport UploadDocumentScreen from \"../UploadDocumentScreen\";\nimport { updateEmail } from \"shared/store/actions/nct\";\nimport { fetchInvestorDetails } from \"shared/store/actions/nct\";\nimport { getMatchAndUnMatchedFunds } from \"../../../utils/utilityFunctions\";\nimport {\n getPortfoliosFilteredData,\n portfoliosByMinorStatus,\n portfoliosByModeOfHolding,\n portfoliosByTransactionResource,\n} from \"../../home/portfolios/utils\";\nimport { getErrorMessage, getInvestorFunds } from \"../portfolios/utils\";\nimport en from \"../../../lang/en-us.js\";\nimport { RowInfoType } from \"./change-email-list\";\n//import InfoIcon from \"@mui/icons-material/Info\";\nimport React from \"react\";\nimport { BackArrow } from \"../UpdateNominee/SelectedFolios\";\nconst { dashboard } = en;\n\nfunction ChangeEmailDocument(props) {\n const [rowData, setRowData] = useState([]);\n const { enteredEmail: email, emailRelationship } = props.location.state || {};\n const [Document, setDocument] = useState({\n image: { name: \"EMAIL_CHANGE\", format: \"\", content: \"\" },\n });\n\n const handleImageSelection = (value, format) => {\n setDocument({\n image: {\n ...Document.image,\n format: format,\n content: value,\n },\n });\n };\n useEffect(() => {\n if (!props?.location?.state?.isPhygitial) return;\n async function fetchPortfolio() {\n try {\n // setLoading(true);\n const { pan = \"\", pekrn = \"\", mobile = \"\", reqId = \"\" } = props;\n\n // await props.getPortfolio({\n // pan,\n // pekrn,\n // mobile,\n // reqId,\n // });\n const payload = {\n pan: props.investorData.PAN,\n brokercode: props.token,\n };\n const { body: investorDetails = {} } = await props.fetchInvestorDetails(\n payload\n );\n const { success: nomineeFunds = [] } = investorDetails;\n const filters = [\n portfoliosByModeOfHolding,\n portfoliosByMinorStatus,\n portfoliosByTransactionResource,\n ];\n const funds = getMatchAndUnMatchedFunds(\n filters,\n getInvestorFunds(nomineeFunds),\n true\n ).map((fund) => {\n return { ...fund, error: getErrorMessage(fund, filters) };\n });\n const { nomineeFunds: _nomineeFunds = [], otherFunds = [] } =\n funds.reduce((prev, fund) => {\n if (fund?.nominees?.length) {\n return {\n ...prev,\n nomineeFunds: [...(prev.nomineeFunds ?? []), fund],\n };\n }\n return { ...prev, otherFunds: [...(prev.otherFunds ?? []), fund] };\n }, []);\n const rows = [...otherFunds, ..._nomineeFunds].map(\n (item) => ({\n folio:item.folio,\n amc: item.amc,\n amcName: item.amcName,\n email: item.email,\n id: item.id,\n investorName: item.investorName,\n mobile: item.mobile || \"N/A\",\n assetType: item.assetType,\n })\n );\n // .filter((item) => item.email != email);\n\n // setRowData([...otherFunds, ..._nomineeFunds]);\n // setSelectedRows([...otherFunds, ..._nomineeFunds]);\n\n setRowData(rows);\n\n // setLoading(false);\n } catch (err) {\n alert(err.message);\n // setLoading(false);\n }\n }\n fetchPortfolio();\n }, []);\n const handleSubmission = async () => {\n if (props?.location?.state?.isPhygitial) {\n try {\n const investorName = props.investorData.invname;\n const investorPan = props.investorData.PAN;\n const investor = props.investors.find(\n (item) =>\n item.Name.toLowerCase() === investorName.toLowerCase() ||\n item.Pan.toLowerCase() == investorPan.toLowerCase()\n );\n\n const newData = rowData.map((item) => ({\n folio: item.folio,\n amc: item.amc,\n amc_name: item.amcName,\n }));\n\n const payload = {\n email: investor.Email,\n newEmail: email,\n mobile: investor.Mobile,\n image: Document.image,\n relation: emailRelationship,\n pan: investorPan,\n distributor_id: props.token,\n data: newData,\n };\n const res = await props.updateEmail(payload);\n\n alert(res.message);\n props.history.push(\"/new-transaction/nct-types\");\n } catch (err) {\n alert(err.message);\n }\n } else {\n try {\n const payload = {\n ...props.location.state.payload,\n image: Document.image,\n };\n\n const res = await props.updateEmail(payload);\n\n alert(res.message);\n\n props.history.push(\"/new-transaction/nct-types\");\n } catch (err) {\n alert(err.message);\n }\n }\n\n // props.history.replace(\"change-email\", {\n // images: [Document.image],\n // action: OTP_ACTIONS.NEW_EMAIL_OFFLINE_OTP,\n // ...(props?.location?.state || {}),\n // });\n };\n\n // save image in store\n useEffect(() => {\n return () => {\n const imageInfo = {\n data: [Document.image],\n type: \"CHANGE_EMAIL\",\n };\n props.onSaveImageData(imageInfo);\n };\n }, [Document]);\n\n return (\n <>\n
\n \n \n
\n \n );\n}\nexport default connect(\n ({ authReducer, portfolio, investor }) => ({\n ...authReducer,\n ...portfolio,\n ...investor,\n }),\n { onSaveImageData, updateEmail, fetchInvestorDetails }\n)(ChangeEmailDocument);\n\n// export default {};\n","import { useState, useEffect } from \"react\";\nimport { connect } from \"react-redux\";\nimport en from \"../../../lang/en-us.js\";\nimport { onSaveImageData } from \"shared/store/actions/nct\";\nimport { RootStateType } from \"shared/store/reducers\";\nimport { ImageSaveType } from \"shared/store/types/nct\";\nimport { OTP_ACTIONS } from \"../../../utils/constants\";\nimport UploadDocumentScreen from \"../UploadDocumentScreen\";\nimport { updateMobile } from \"shared/store/actions/nct\";\nimport { RowInfoType } from \"../ChangeEmail/change-email-list\";\nimport { fetchInvestorDetails } from \"shared/store/actions/nct\";\nimport { getMatchAndUnMatchedFunds } from \"../../../utils/utilityFunctions\";\nimport {\n getPortfoliosFilteredData,\n portfoliosByMinorStatus,\n portfoliosByModeOfHolding,\n portfoliosByTransactionResource,\n} from \"../../home/portfolios/utils\";\nimport { getErrorMessage, getInvestorFunds } from \"../portfolios/utils\";\nimport { BackArrow } from \"../UpdateNominee/SelectedFolios\";\nimport React from \"react\";\n\nconst { dashboard } = en;\n\nfunction ChangeMobileDocument(props) {\n const [Document, setDocument] = useState({\n image: { name: \"MOBILE_CHANGE\", format: \"\", content: \"\" },\n });\n const [rowData, setRowData] = useState([]);\n const { mobile: newMobile, mobileRelationship } = props.location.state || {};\n \n const handleImageSelection = (value, format) => {\n setDocument({\n image: {\n ...Document.image,\n format: format,\n content: value,\n },\n });\n };\n\n useEffect(() => {\n if (!props?.location?.state?.isPhygitial) return;\n async function fetchPortfolio() {\n try {\n // setLoading(true);\n const { pan = \"\", pekrn = \"\", mobile = \"\", reqId = \"\" } = props;\n const payload = {\n pan: props.investorData.PAN,\n brokercode: props.token,\n };\n const { body: investorDetails = {} } = await props.fetchInvestorDetails(\n payload\n );\n const { success: nomineeFunds = [] } = investorDetails;\n const filters = [\n portfoliosByModeOfHolding,\n portfoliosByMinorStatus,\n portfoliosByTransactionResource,\n ];\n const funds = getMatchAndUnMatchedFunds(\n filters,\n getInvestorFunds(nomineeFunds),\n true\n ).map((fund) => {\n return { ...fund, error: getErrorMessage(fund, filters) };\n });\n const { nomineeFunds: _nomineeFunds = [], otherFunds = [] } =\n funds.reduce((prev, fund) => {\n if (fund?.nominees?.length) {\n return {\n ...prev,\n nomineeFunds: [...(prev.nomineeFunds ?? []), fund],\n };\n }\n return { ...prev, otherFunds: [...(prev.otherFunds ?? []), fund] };\n }, []);\n const rows = [...otherFunds, ..._nomineeFunds].map(\n (item) => ({\n folio:item.folio,\n amc: item.amc,\n amcName: item.amcName,\n email: item.email || \"N/A\",\n id: item.id,\n investorName: item.investorName,\n mobile: item.mobile,\n assetType: item.assetType,\n })\n );\n setRowData(rows);\n } catch (err) {\n alert(err.message);\n // setLoading(false);\n }\n }\n fetchPortfolio();\n }, []);\n\n const handleSubmission = async () => {\n if (props?.location?.state?.isPhygitial) {\n try {\n const investorName = props.investorData.invname;\n const investorPan = props.investorData.PAN;\n const investor = props.investors.find(\n (item) =>\n item.Name.toLowerCase() === investorName.toLowerCase() ||\n item.Pan.toLowerCase() == investorPan.toLowerCase()\n );\n\n const newData = rowData.map((item) => ({\n folio: item.folio,\n amc: item.amc,\n amc_name: item.amcName,\n }));\n\n const payload = {\n email: investor.Email,\n newMobile: newMobile,\n mobile: investor.Mobile,\n image: Document.image,\n relation: mobileRelationship,\n pan: investorPan,\n distributor_id: props.token,\n data: newData,\n };\n const res = await props.updateMobile(payload);\n alert(res.message);\n props.history.push(\"/new-transaction/nct-types\");\n } catch (err) {\n alert(err.message);\n }\n } else {\n try {\n const payload = {\n ...props.location.state.payload,\n image: Document.image,\n };\n const res = await props.updateMobile(payload);\n\n alert(res.message);\n props.history.push(\"/new-transaction/nct-types\");\n } catch (err) {\n alert(err.message);\n }\n }\n };\n\n // save image in store\n useEffect(() => {\n return () => {\n const imageInfo = {\n data: [Document.image],\n type: \"CHANGE_MOBILE\",\n };\n props.onSaveImageData(imageInfo);\n };\n }, [Document]);\n\n return (\n
\n \n \n
\n );\n}\n\nexport default connect(\n ({ authReducer, portfolio, investor }) => ({\n ...authReducer,\n ...portfolio,\n ...investor,\n }),\n { onSaveImageData, updateMobile, fetchInvestorDetails }\n)(ChangeMobileDocument);\n","import React, { Component } from \"react\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport {\n getNewPurchaseFundList,\n getFolioSipCancellation,\n getCancellationReason\n} from \"shared/store/actions/investors\";\nimport { connect } from \"react-redux\";\nimport {\n GET_FUNDS_LIST,\n GET_FUNDS_LIST_FAILED,\n GET_FUNDS_LIST_SUCCESS,\n} from \"shared/store/types/investors\";\nimport { DetailsGroup } from \"./newPurchaseConfirm\";\nimport { BUILD_URL } from \"../home\";\nimport { SipCancelModal } from \"../customModal\";\nimport { SundaramMutualFund } from \"./newPurchaseForm\";\n\nclass SipCancellation extends Component {\n constructor(props) {\n super(props);\n this.state = {\n sipTypes: [\n { label: \"SIP\", value: \"SIP\" },\n { label: \"STP\", value: \"STP\" },\n { label: \"SWP\", value: \"SWP\" },\n ],\n funds: [],\n folios: [],\n fund: { value: \"\" },\n sipType: { value: \"\" },\n cancelDetails: {},\n checked: \"\",\n ShowMore: \"\",\n visible: \"\",\n rejectionReasons:[],\n rejectionreasonsOpen:false,\n othersText:{value:\"\"},\n selectedReason:\"\",\n reasonMandatory:false,\n\n };\n }\n async componentDidMount(){\n const response = await this.props.getCancellationReason({txntype:\"SIP\"})\n this.setState({rejectionReasons:response.DtData})\n } \n\n handleSipTypeChange = async (event) => {\n this.setState({\n sipType: { value: event.target.value },\n folios: [],\n funds: [],\n fund: { value: \"176\" },\n });\n const { investorData } = this.props;\n const body = {\n Trtype: event.target.value,\n Pan: investorData.PAN,\n Fund: \"176\",\n invdistflag: \"S\",\n };\n\n const response = await this.props.getFolioSipCancellation(body);\n if (!!response && !!response.DtData && response.DtData.length > 0) {\n this.setState({\n folios: response.DtData,\n fund: { value: \"176\" },\n });\n } else {\n alert(\"No Active Registrations\");\n }\n };\n\n handleFundChange = async (event) => {\n const { sipType } = this.state;\n const { investorData } = this.props;\n this.setState({\n fund: { value: event.target.value },\n });\n\n const body = {\n Trtype: sipType.value,\n Pan: investorData.PAN,\n Fund: \"176\",\n invdistflag: \"S\",\n };\n const response = await this.props.getFolioSipCancellation(body);\n\n if (!!response && !!response.DtData && response.DtData.length > 0) {\n this.setState({\n folios: response.DtData,\n fund: { value: event.target.value },\n });\n } else if (!response) {\n alert(\"No data found for the following pan number\");\n // this.props.history.push(`/investors`);\n }\n };\n\n handleChangeCheckbox = (value) => () => {\n this.setState({\n checked: value,\n });\n };\n onSubmit = () => {\n const { checked, folios, fund, sipType } = this.state;\n\n const Foliodata = !!folios && folios.find((ele) => ele.ihno == checked);\n if (!!Foliodata) {\n this.props.history.push({\n pathname: `/investors/sip-cancellation/digital/transact/confirm`,\n state: {\n folioDetails: Foliodata,\n type: \"Sip cancellation\",\n fundName: \"Sundaram Mutual Fund\",\n sipType: sipType.value,\n },\n });\n }\n };\n\n ShowDetails = (label) => () => {\n if (label === this.state.ShowMore) {\n this.setState({\n ShowMore: \"\",\n });\n } else {\n this.setState({\n ShowMore: label,\n });\n }\n };\n\n pause = (ele) => () => {\n if (ele.pause_flag === \"Y\" && ele.pause_err_msg === \"\") {\n this.props.history.push({\n pathname: `/investors/sip-cancellation/digital/transact/confirm`,\n state: {\n type: \"Sip Pause\",\n pauseDetails: ele,\n scheme: { Fund: \"176\" },\n fundName: \"SUNDARAM MUTUAL FUND\",\n sipType: this.state.sipType.value,\n },\n });\n } else if (!!ele.pause_err_msg) {\n alert(`${ele.pause_err_msg}`);\n }\n };\n\n closeNoModal = () => {\n this.setState({\n open: false,\n rejectionreasonsOpen:false,\n message: \"\",\n notAllowedPopUp: false,\n othersText:{value:\"\"},\n selectedReason:\"\"\n });\n };\n\n\n closeYesModal = () => {\n this.setState({\n open:false,\n rejectionreasonsOpen:true,\n })\n };\n\n closemodelafterrejecttion=()=>{\n if(!this.state.selectedReason || (this.state.selectedReason.includes(\"Others\") && !this.state.othersText.value)){\n this.setState({reasonMandatory:true})\n return;\n }\n if(this.state.selectedReason.includes(\"Others\") && !this.state.othersText.value){\n this.setState({\n othersText: {\n value:\"\",\n isError: true,\n errorMessage: \"Reason is mandatory\",\n },\n });\n return;\n }\n if ( this.state.selectedReason.includes(\"Others\") && this.state.othersText.value.length < 10) {\n this.setState({\n othersText: {\n value:\"\",\n isError: true,\n errorMessage: \"Please enter at least 10 characters\",\n },\n });\n return;\n }\n if( this.state.selectedReason.includes(\"Others\") && this.state.othersText.value.length > 100) {\n this.setState({\n othersText: {\n value: \"\",\n isError: true,\n errorMessage: \"Please enter at least 10 characters\",\n },\n });\n return;\n }\n const { cancelDetails } = this.state;\n this.props.history.push({\n pathname: `/investors/sip-cancellation/digital/transact/confirm`,\n state: {\n type: \"Sip cancellation\",\n pauseDetails: cancelDetails,\n scheme: { Fund: this.state.fund.value.amc_code },\n fundName: this.state.fund.value.amc_name,\n sipType: this.state.sipType.value,\n cancellationReason:this.state.selectedReason.includes(\"Others\")?this.state.othersText.value:this.state.selectedReason,\n reasons:this.state.rejectionReasons\n },\n });\n }\n \n\n cancel = (ele) => () => {\n if (\n ele.pause_flag === \"Y\" &&\n ele.pause_err_msg === \"\" &&\n this.state.sipType.value === \"SIP\"\n ) {\n this.setState({\n open: true,\n cancelDetails: ele,\n message: \"Are you sure you want to Cancel? Instead Choose Pause\",\n });\n } else {\n this.props.history.push({\n pathname: `/investors/sip-cancellation/digital/transact/confirm`,\n state: {\n type: \"Sip cancellation\",\n pauseDetails: ele,\n scheme: { Fund: \"176\" },\n fundName: \"SUNDARAM MUTUAL FUND\",\n sipType: this.state.sipType.value,\n },\n });\n }\n };\n handleReasonChange = (e)=>{\n this.setState({selectedReason:e.target.value,reasonMandatory:false,othersText:{value:\"\"}})\n }\n selectedotherreason = (e) => {\n const inputValue = e.target.value.replace(/[^A-Za-z\\s]/g, '');\n if (inputValue.length <= 100) {\n this.setState({ othersText: { value: inputValue } });\n } else if (inputValue.length < 10) {\n this.setState({\n othersText: {\n value: inputValue,\n isError: true,\n errorMessage: \"Please enter at least 10 characters\",\n },\n });\n return;\n } else {\n this.setState({\n othersText: {\n value: inputValue.slice(0, 100),\n isError: true,\n errorMessage: \"Maximum character length is 100\",\n },\n });\n }\n }\n render() {\n const { sipTypes, sipType, folios } = this.state;\n return (\n
\n
Pause/ Cancel Module
\n
\n (this.sipTypeField = ele)}\n // isError={sipType.isError}\n // errorMessage={sipType.errorMessage}\n >\n {sipTypes.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
\n\n {folios.map((ele, index) => (\n \n \n \n {this.state.sipType.value} - {index + 1}\n
\n
\n {ele.pause_flag !== \"N\" &&\n this.state.sipType.value === \"SIP\" && (\n \n \n \n Pause\n
\n \n )}\n\n \n \n \n Cancel\n \n \n \n \n
\n \n\n {this.state.ShowMore === ele.ihno && (\n
\n \n \n \n
\n )}\n
\n\n \n {this.state.ShowMore === ele.ihno\n ? \"Hide Details\"\n : \"View Details\"}\n \n \n ))}\n\n\n\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { token, userId, investorData } = authReducer;\n\n return {\n token,\n userId,\n investorData,\n };\n },\n { getNewPurchaseFundList, getFolioSipCancellation,getCancellationReason }\n)(SipCancellation);\n","import { Paper } from \"@material-ui/core\";\nimport React from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport Image from \"../../Image\";\n// import { RootStateType } from \"../../../store/reducers\";\nimport { useSelector } from \"react-redux\";\n\nconst NEW_NCT_TYPES = [\n {\n path: \"/new-transaction/nct-type/digital/updateNominee\",\n name: \"Update Nominee Details\",\n isPhygitial: false,\n digital: \"Digital mode\",\n },\n\n {\n path: \"/new-transaction/nct-type/digital/change-email\",\n isPhygitalPath: \"/new-transaction/nct-type/phygital/change-email\",\n name: \"Change/Update Email Address\",\n isPhygitial: false,\n digital: \"Digital mode\",\n // phygital: \"Phygital mode\",\n },\n {\n path: \"/new-transaction/nct-type/digital/change-mobile\",\n isPhygitalPath: \"/new-transaction/nct-type/phygital/change-mobile\",\n name: \"Change Registered Mobile Number \",\n isPhygitial: false,\n digital: \"Digital mode\",\n // phygital: \"Phygital mode\",\n },\n];\n\nexport default function NctTypes() {\n const history = useHistory();\n const { nomineeFlag } = useSelector(\n (state) => state.authReducer\n );\n\n const NctTypeMap = NEW_NCT_TYPES\n \n\n return (\n
\n \n Select Transaction Type\n
\n
\n {NctTypeMap.map(\n (\n { name, path, isPhygitial, phygital, digital, isPhygitalPath },\n i\n ) => (\n {\n history.push(isPhygitial ? isPhygitalPath : path, {\n isPhygitial: isPhygitial,\n });\n }}\n name={name}\n isPhygitial={isPhygitial}\n phygital={phygital}\n digital={digital}\n key={i}\n />\n )\n )}\n
\n \n );\n}\n\nfunction NctTypeCard({\n onClick,\n name,\n isPhygitial,\n phygital,\n digital,\n}) {\n const commonStyle = {\n display: \"flex\",\n justifyContent: \"center\",\n flexGrow: 1,\n fontSize: 13,\n color: \"black\",\n fontFamily: \"OpenSans-Regular\",\n flexBasis: 0,\n padding: \"15px 0px\",\n cursor: \"pointer\",\n // boxShadow: \"-1px 1px 3px 1px lavender\",\n //padding: \"15px 0px 0px 0px\",\n // borderRadius: 8,\n };\n return (\n
\n \n
\n \"\"\n
\n \n {name}\n
\n\n \n onClick(e, false)}\n >\n {digital} \n \n \n {isPhygitial && (\n onClick(e, true)}\n >\n {phygital}\n \n \n )}\n \n
\n \n );\n}\n","import React, { Component } from \"react\";\nimport { Input } from \"../../forms/input\";\nimport Signbutton from \"../../forms/button\";\nimport { connect } from \"react-redux\";\nimport { getEnach } from \"shared/store/actions/transactions\";\nimport { EnachModal, EnachAMCModal } from \"../customModal\";\nimport { BUILD_URL } from \"../home\";\n\nclass ENACH extends Component {\n constructor(props) {\n super(props);\n const { investorData, communicationDetails,location } = this.props;\n const {state} = location;\n\n const Xemail =\n !!this.props.communicationDetails &&\n !!this.props.communicationDetails.length > 0 &&\n !!investorData.PAN &&\n (this.props.communicationDetails || []).find(\n (detail) =>\n detail.PAN === investorData.PAN &&\n !!detail.email &&\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(detail.email)\n );\n\n const Xmobile =\n !!this.props.communicationDetails &&\n !!this.props.communicationDetails.length > 0 &&\n !!investorData.PAN &&\n (this.props.communicationDetails || []).find(\n (detail) => detail.PAN === investorData.PAN && !!detail.Mobile\n );\n\n const Email = !!Xemail && !!Xemail.email ? Xemail.email : \"\";\n\n const Mobile = !!Xmobile && !!Xmobile.Mobile ? Xmobile.Mobile : \"\";\n\n this.state = {\n email: { value: Email || \"\" },\n EnachOpen: false,\n eNachAMCOpen: false,\n disabled: false,\n pan: {\n value: !!investorData && !!investorData.PAN ? investorData.PAN : !!state && !!state.pan ? state.pan :\"\",\n },\n mobile: { value: Mobile },\n name: {\n value:\n !!investorData && !!investorData.invname ? investorData.invname : \"\",\n },\n ref: \"\",\n };\n }\n\n changeValue = (label) => async (event) => {\n if (\n (label === \"mobile\") &&\n event.target.value.length <= 10\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (label != \"mobile\") {\n this.setState({\n [label]: { value: event.target.value },\n });\n }\n };\n submit = async () => {\n const {\n ref,\n EnachOpen,\n EnachRef,\n disabled,\n eNachAMCOpen,\n ...others\n } = this.state;\n this.setState({\n disabled: true,\n });\n const { email, mobile, pan, name } = this.state;\n const {location} = this.props;\n const {state} = location;\n\n\n if(!!state && !!state.pan && (!email.value || !mobile.value || !name.value)){\n alert(\"Please fill all fields to submit\");\n this.setState({\n email: { value:this.state.email.value, isError: false, errorMessage: \"\" },\n });\n }else {\n const params = {\n Email: this.state.email.value,\n Contact: this.state.mobile.value,\n Name: this.state.name.value,\n Pan: this.state.pan.value,\n invdistflag: \"S\",\n arncode: this.props.token,\n };\n const response = await this.props.getEnach(params);\n if (\n !!response &&\n !!response.DtData &&\n !!response.DtData[0] &&\n !!response.DtData[0].en_ihno\n ) {\n this.setState({\n EnachRef: response.DtData[0].en_ihno,\n EnachOpen: true,\n });\n }\n\n }\n\n\n // const keys = Object.keys(others);\n // const findError = keys.every((key) => !!others[key].value);\n // if (!findError) {\n // keys.forEach((key) => {\n // !others[key].value &&\n // this.setState({\n // [key]: {\n // ...others[key],\n // isError: true,\n // errorMessage: `${key.toUpperCase()} is Mandatory`,\n // },\n // });\n // });\n // const firstErroredKey = keys.find((key) => !others[key].value);\n // switch (firstErroredKey) {\n // case \"email\": {\n // this.emailField.focus();\n // break;\n // }\n // case \"mobile\": {\n // this.mobileField.focus();\n // break;\n // }\n // case \"pan\": {\n // this.panField.focus();\n // break;\n // }\n // case \"name\": {\n // this.nameField.focus();\n // break;\n // }\n // }\n // } else if (\n // !!this.state.pan.value &&\n // /^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/.test(this.state.pan.value) ===\n // false\n // ) {\n // this.setState({\n // pan: {\n // ...others[\"pan\"],\n // isError: true,\n // errorMessage: `Enter a vaild PAN`,\n // },\n // });\n // return;\n // } else if (\n // !!this.state.email.value &&\n // /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n // this.state.email.value\n // ) === false\n // ) {\n // this.setState({\n // email: {\n // ...others[\"email\"],\n // isError: true,\n // errorMessage: `Enter a vaild Email address`,\n // },\n // });\n // return;\n // } else if (\n // !!this.state.mobile.value &&\n // /^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[6-9]\\d{9}$/.test(\n // this.state.mobile.value\n // ) === false\n // ) {\n // this.setState({\n // mobile: {\n // ...others[\"mobile\"],\n // isError: true,\n // errorMessage: `Enter a vaild Phone number`,\n // },\n // });\n // return;\n // } else {\n\n // }\n this.setState({\n disabled: false,\n });\n };\n\n OpenEnachAMCOpen = () => {\n this.setState({\n eNachAMCOpen: true,\n });\n };\n\n OpenEnachAMCClose = () => {\n this.setState({\n eNachAMCOpen: false,\n });\n };\n\n close = () => {\n this.setState({\n EnachOpen: false,\n });\n this.props.history.push(\"/dashboard\");\n // const refno = encodeURIComponent(btoa(this.state.EnachRef));\n // window.open(\n // `https://api.karvymfs.com/25/Enach/EnachRegd.aspx?refno=${refno}`,\n // \"_self\"\n // );\n };\n\n onEmailBlur = () => {\n if (\n !!this.state.email.value &&\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ) {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: \"Enter a vaild Email ID\",\n },\n });\n }\n };\n render() {\n const { mobile, email, pan, name } = this.state;\n const {location} = this.props;\n const {state} = location;\n\n return (\n
\n
eNACH
\n
\n \n // (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n // evt.preventDefault()\n // }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n // onChange={this.changeValue(\"pan\")}\n // isShowError={pan.isError}\n // inputref={(ele) => (this.panField = ele)}\n // errorMessage={this.state.pan.errorMessage}\n />\n
\n
\n (this.nameField = ele)}\n // errorMessage={this.state.name.errorMessage}\n />\n
\n\n
\n (this.emailField = ele)}\n errorMessage={this.state.email.errorMessage}\n />\n
\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n onChange={this.changeValue(\"mobile\")}\n // isShowError={mobile.isError}\n // inputref={(ele) => (this.mobileField = ele)}\n // errorMessage={this.state.mobile.errorMessage}\n />\n
\n\n {/* \n \n eNACH Participating AMCs{\" \"}\n
\n \n */}\n
\n \n
\n\n \n\n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions }, props) => {\n const { location } = props;\n const { investorData, communicationDetails, token, userId } = authReducer;\n // const { fundsList } = transactions;\n const { fundList } = authReducer;\n\n return {\n investorData,\n communicationDetails,\n token,\n\n fundList,\n userId,\n };\n },\n { getEnach }\n)(ENACH);\n","import React, { Component } from \"react\";\nimport { Paper } from \"@material-ui/core\";\nimport { connect } from \"react-redux\";\nimport { Route, Switch } from \"react-router-dom\";\nimport NewPurchase from \"./newPurchaseForm\";\nimport NewPurchaseConfirm from \"./newPurchaseConfirm\";\nimport AdditionalPurchase from \"./additionalPurchaseForm\";\nimport Redemption from \"./redemption\";\nimport switchCmponent from \"./switch\";\nimport Sip from \"./sip\";\nimport Swp from \"./swp\";\nimport Stp from \"./stp\";\nimport NfoPhysicalMode from \"./nfoPhysicalMode\";\nimport ChangeEmail from \"../ChangeEmail\";\nimport ChangeEmailList from \"../ChangeEmail/change-email-list\";\nimport Nominee from \"../UpdateNominee\";\nimport ChangeMobileNew from \"../ChangeMobile/newMobile\";\nimport ChangeMobile from \"../ChangeMobile\";\nimport changeEmailDocument from \"../ChangeEmail/change-email-document\";\nimport changeMobileDocument from \"../ChangeMobile/change-mobile-document\";\nimport { BUILD_URL } from \"../home\";\nimport SipCancellation from \"./sipCancellation\";\nimport NctTypes from \"./NctTypes\";\nimport ENACH from \"./eNach\";\nimport { userPan } from \"shared/store/actions/auth\";\n\nclass NFOAndNewPurchaseDigital extends Component {\n async componentDidMount() {\n if (!!this.props.location.state && !!this.props.location.state.pan) {\n await this.props.userPan(this.props.location.state.pan);\n }\n }\n render() {\n const { investorData } = this.props;\n return (\n
\n \n {this.props.match.path.includes(\"nct-type\") ? null : (\n
\n \n
\n )}\n
\n \n \n \n \n \n \n \n \n \n \n\n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n\n \n \n \n\n \n \n\n \n \n \n
\n \n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer,investor }) => {\n const { investorData, user_pan } = authReducer;\n const {kycData}=investor\n return { investorData, user_pan ,kycData};\n },\n { userPan }\n)(NFOAndNewPurchaseDigital);\n\nexport class List extends Component {\n render() {\n const { invname, PAN } = this.props.investorData;\n return (\n
\n
\n \n
\n
{invname || this.props.kycData?.invname}
\n
\n {\" \"}\n PAN: {PAN || this.props.pan}\n
\n
\n {!!this.props.image && (\n
\n \n
\n )}\n
\n
\n );\n }\n}\n","import React, { Component } from \"react\";\nimport { Paper } from \"@material-ui/core\";\nimport { BUILD_URL } from \"../home\";\n\nexport default class TransactionMode extends Component {\n render() {\n return (\n
\n \n
\n
\n \n
\n
\n
Digital Mode
\n
\n A mutual fund is a professionally managed investment fund that pools\n money from many investors to purchase securities. These investors\n may be retail or institutional in nature.\n
\n \n this.props.history.push({\n pathname: this.props.location.state.digital\n })\n }\n >\n Select digital Mode\n \n \n \n
\n \n\n \n
\n
\n \n
\n
\n
Physical Mode
\n
\n
\n Please Follow The Below Steps\n
\n
\n
\n \n
\n
\n
\n Upload Order form\n
\n
\n Upload Cheque\n
\n
\n Sumbit Cheque at nearest Karvy Branch\n
\n
\n
\n
\n \n this.props.history.push({\n pathname: this.props.location.state.physical,\n state: {\n type: this.props.location.state.type,\n flag: this.props.location.state.flag\n }\n })\n }\n >\n Select Physical Mode\n \n \n \n \n
\n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport { Paper } from \"@material-ui/core\";\n// import { INVESTORS_URL } from \".\";\nimport { BUILD_URL } from \"../home\";\nimport { connect } from \"react-redux\";\n\nimport { saveTransactionDetails } from \"shared/store/actions\";\n\nconst INVESTORS_URL = `/investors`;\nclass TransactionTypeCards extends Component {\n constructor() {\n super();\n window.scrollTo({\n top: 0,\n behavior: \"smooth\",\n });\n }\n\n getUrlByName = (name) => {\n this.props.saveTransactionDetails({});\n let url = `/`;\n switch (name) {\n case \"SIP (Existing Folio)\":\n url = `${INVESTORS_URL}/sip/digital/transact`;\n break;\n case \"STP\":\n url = INVESTORS_URL + \"/stp/digital/transact\";\n break;\n case \"Switch\":\n url = INVESTORS_URL + \"/switch/digital/transact\";\n break;\n case \"Redemption\":\n url = INVESTORS_URL + \"/redemption/digital/transact\";\n break;\n case \"SWP\":\n url = INVESTORS_URL + \"/swp/digital/transact\";\n break;\n case \"New Purchase + SIP (New Folio)\":\n url = \"/new-investor-transaction/investor-details\";\n break;\n case \"Additional Purchase\":\n url = INVESTORS_URL + \"/additional-purchase/digital/transact\";\n break;\n case \"Pause/Cancellation\":\n url = INVESTORS_URL + \"/sip-cancellation/digital/transact\";\n break;\n case \"NCT\":\n url = INVESTORS_URL + \"/nct-type/digital/transact\";\n break;\n case \"eNACH\":\n url = INVESTORS_URL + \"/eNACH/digital/transact\";\n break;\n }\n return url;\n };\n render() {\n return (\n \n this.props.history.push({\n \n pathname: this.getUrlByName(this.props.name),\n state: {\n pan:\n this.props.name === \"New Purchase + SIP (New Folio)\"\n ? this.props.user_pan\n : !!this.props.pan\n ? this.props.pan\n : \"\",\n },\n })\n \n }\n >\n
\n \n
\n
{this.props.name}
\n {/* {this.props.name !== \"Pause/Cancellation\" &&\n this.props.name != \"NCT\" &&\n this.props.name != \"eNACH\" ? (\n \n \n this.props.history.push({\n pathname: this.getUrlByName(this.props.name),\n state: {\n pan:\n !!this.props.pan &&\n (this.props.name === \"SIP\" ||\n this.props.name === \"NFO & New Purchase\")\n ? this.props.pan\n : \"\",\n },\n })\n }\n >\n Digital Mode\n \n {this.props.name === \"STP\" || this.props.name === \"SWP\" ? (\n \"\"\n ) : (\n \n this.props.history.push({\n pathname: this.props.navigationProps.physical,\n state: {\n type: this.props.navigationProps.type,\n flag: this.props.navigationProps.flag,\n pan:\n (!!this.props.pan &&\n this.props.name === \"NFO & New Purchase\") ||\n this.props.name === \"SIP\"\n ? this.props.pan\n : \"\",\n },\n })\n }\n >\n Phygital Mode\n \n )}\n \n ) : (\n \n \n this.props.history.push({\n pathname: this.getUrlByName(this.props.name),\n state: {\n pan:\n !!this.props.pan &&\n (this.props.name === \"eNACH\")\n ? this.props.pan\n : \"\",\n },\n })\n }\n >\n Proceed\n \n \n )} */}\n \n );\n }\n}\nexport default connect(({ authReducer }) => {\n const { user_pan } = authReducer;\n return { user_pan };\n},{saveTransactionDetails})(TransactionTypeCards);\n\n","import React, { Component } from \"react\";\nimport TransactionTypeCards from \"./TransactionTypeCards\";\nimport { connect } from \"react-redux\";\nimport { Paper } from \"@material-ui/core\";\nimport {\n setSipDetails,\n setSwitchDetails,\n setStpDetails,\n} from \"shared/store/actions\";\nimport {\n PHYSICAL_NEW,\n PHYSICAL_ADD,\n PHYSICAL_RED,\n PHYSICAL_SWITCH,\n PHYSICAL_SIP,\n} from \"shared/store/types\";\nimport { BUILD_URL } from \"../home\";\nimport {\n NEW_PURCHASE_ICON,\n SIP_ICON,\n ADDITIONAL_PURCHASE_ICON,\n REDEMPTION_ICON,\n SWITCH_ICON,\n STP_ICON,\n SWP_ICON,\n SIP_PAUSE_ICON,\n NCT_ICON,\n ENACH_ICON\n} from \"../../forms/appEssentials\";\nclass TransactionType extends Component {\n componentDidMount() {\n const payload = {};\n this.props.setSipDetails(payload);\n this.props.setSwitchDetails(payload);\n this.props.setStpDetails(payload);\n }\n\n render() {\n const { showAll } = this.props;\n return (\n
\n \n
Select Transaction Type
\n
\n \n
\n \n \n
\n \n {/* \n Phygital Mode\n
*/}\n {/*
\n Please Follow The Below Steps\n
*/}\n {/*
\n
\n \n
\n
\n
\n Upload Order form\n
\n
\n Upload Cheque\n
\n
\n Sumbit Cheque at nearest Karvy Branch\n
\n
\n
*/}\n\n \n Digital Mode\n
\n \n Digital mode lets you do all the transactions digitally\n without any effort to physically submit the transactions of\n your Investors.\n \n \n \n \n \n
\n \n \n\n \n {!!showAll && (\n \n \n\n \n\n \n \n \n )}\n\n {!!showAll && (\n \n \n\n \n \n \n \n )}\n \n
\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { showAll } = authReducer;\n return { showAll };\n },\n { setSipDetails, setSwitchDetails, setStpDetails }\n)(TransactionType);\n","import React, { Component } from \"react\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { Input } from \"../../forms/input\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport { connect } from \"react-redux\";\nimport {\n getNewPurchaseFundList,\n checkKyc,\n getDomains,\n} from \"shared/store/actions\";\nimport { EKYCMail } from \"shared/store/actions/investors\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport {\n GET_FUNDS_LIST,\n GET_FUNDS_LIST_SUCCESS,\n GET_FUNDS_LIST_FAILED,\n ALL,\n} from \"shared/store/types\";\nimport { KycNotDoneDialog } from \"../customModal\";\nimport { SundaramMutualFund } from \"./newPurchaseForm\";\nimport InputBase from \"@material-ui/core/InputBase\";\nclass EKYC extends Component {\n constructor(props) {\n super(props);\n const { match } = this.props;\n this.state = {\n kycType: { value: \"IKYC\" },\n ipv: { value: \"YES\", errorMessage: \"\" },\n messageAlert: \"\",\n open: false,\n pan: {\n value:\n !!match && !!match.params && !!match.params.pan\n ? match.params.pan\n : \"\",\n },\n fund: { value: { value: \"117\" } },\n name: { value: \"\" },\n email: { value: \"\" },\n mobile: { value: \"\" },\n };\n }\n\n async componentDidMount() {\n // const params = {\n // opt: ALL,\n // schemetype: this.props.userId,\n // };\n // const types = [\n // GET_FUNDS_LIST,\n // GET_FUNDS_LIST_SUCCESS,\n // GET_FUNDS_LIST_FAILED,\n // ];\n // this.props.getNewPurchaseFundList(params, types);\n }\n\n handleChange = (value) => {\n this.setState({\n fund: { value },\n pan: { value: this.state.pan.value },\n });\n };\n\n changeValue = (label) => (event) => {\n if (label === \"pan\" && event.target.value.length < 11) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (label === \"name\") {\n if (!!event.target.value && /^[a-zA-Z ]+$/.test(event.target.value)) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (!event.target.value) {\n this.setState({\n [label]: { value: event.target.value },\n });\n }\n } else if (label === \"mobile\" && event.target.value.length <= 10) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (label != \"pan\" && label != \"mobile\" && label != \"name\") {\n this.setState({\n [label]: { value: event.target.value },\n });\n }\n };\n\n changeIpvValue = (value) => () => {\n if (value === \"YES\") {\n this.setState({\n ipv: { value: \"YES\" },\n });\n } else if (value === \"NO\") {\n this.setState({\n ipv: {\n value: \"NO\",\n errorMessage: \"(It is mandatory to perform IPV to proceed )\",\n },\n });\n }\n };\n checkKycStatus = async () => {\n if (!/^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/.test(this.state.pan.value)) {\n this.setState({\n pan: {\n value: \"\",\n isError: true,\n isShowError: true,\n errorMessage: \"Enter a Valid PAN Number\",\n },\n });\n } else {\n const pan = this.state.pan.value;\n const params = {\n i_pan: pan,\n InvDistFlag: \"S\",\n };\n const response = await this.props.checkKyc(params);\n try {\n const { DtData } = response;\n const { KYCBlock } = DtData[0];\n if (KYCBlock === \"N\") {\n this.setState({\n pan: {\n value: \"\",\n isError: false,\n isShowError: false,\n errorMessage: \"\",\n },\n });\n alert(\"PAN is KYC Registered !\");\n }\n } catch (e) {\n console.log(e);\n }\n }\n };\n submit = async () => {\n const { ipv, open, messageAlert, fund, email, ...others } = this.state;\n const keys = Object.keys(others);\n const findError = keys.every((key) => !!others[key].value);\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage: `${\n key === \"kycType\"\n ? \"KYC type\"\n : key === \"fund\"\n ? \"Fund\"\n : key === \"pan\"\n ? \"PAN\"\n : key === \"name\"\n ? \"Name\"\n : key === \"email\"\n ? \"Email Id\"\n : key === \"mobile\"\n ? \"Mobile\"\n : key\n } is mandatory`,\n },\n });\n });\n return;\n } else if (\n !/^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/.test(this.state.pan.value)\n ) {\n this.setState({\n pan: {\n value: \"\",\n isError: true,\n errorMessage: \"please enter a valid pan\",\n },\n });\n } else if (\n this.state.email.value === \"\" ||\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ) {\n if (this.state.email.value === \"\") {\n this.setState({\n email: {\n isError: true,\n errorMessage: `(emaild is mandatory)`,\n },\n });\n } else if (\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ) {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: `(enter a valid email address)`,\n },\n });\n }\n } else if (this.state.name.value === \"\") {\n this.setState({\n name: {\n isError: true,\n errorMessage: \"(Name is Mandatory)\",\n },\n });\n } else if (\n this.state.mobile.value === \"\" ||\n /^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[6-9]\\d{9}$/.test(\n this.state.mobile.value\n ) === false\n ) {\n if (this.state.mobile.value === \"\") {\n this.setState({\n mobile: {\n isError: true,\n errorMessage: `(Mobile no is mandatory)`,\n },\n });\n } else if (\n /^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[6-9]\\d{9}$/.test(\n this.state.mobile.value\n ) === false\n ) {\n this.setState({\n mobile: {\n isError: true,\n errorMessage: `(enter a valid Mobile number)`,\n },\n });\n }\n } else {\n const { fund, name, email, mobile, pan } = this.state;\n const url = `https://mfs.kfintech.com/ckyc/eKyc.aspx?UserID=2703&AgencyCode=${fund.value.value}&AgencyTransactionID=123&Pan=${pan.value}&PanName=${name.value}&Mobile=${mobile.value}&EmailID=${email.value}&AuthType=3&ipv=y&EmpName=${this.props.userId}&EmpDesig=Manager&EmpCode=${this.props.token}&EmpLoc=Hyderabad&FundCode=${fund.value.value}&fromType=DITWEB`;\n\n const params = {\n InvPan: this.state.pan.value,\n InvMobile: mobile.value,\n InvFund: \"176\",\n InvName: name.value,\n DistUserId: this.props.userId,\n InvDistFlag: \"S\",\n Url: \"\",\n };\n const addedParms = {\n IMEI: encodeURIComponent(btoa(\"127.0.0.1\")),\n DistName: encodeURIComponent(btoa(this.props.userId)),\n ArnCode: encodeURIComponent(btoa(this.props.token)),\n APKVer: encodeURIComponent(btoa(\"1.0\")),\n InvEmail: encodeURIComponent(btoa(email.value)),\n };\n const response = await this.props.EKYCMail(params, addedParms);\n if (response && !response.error) {\n this.setState({\n open: true,\n messageAlert:\n \"An email will be triggered to investor's email for uploading neccesary KYC documents and selfie video.please confirm\",\n });\n }\n }\n };\n\n closeModal = () => {\n this.setState({\n open: false,\n messageAlert: \"\",\n });\n };\n\n continue = () => {\n const { params } = this.props.match;\n this.setState({\n kycType: { value: \"\" },\n ipv: { value: \"YES\", errorMessage: \"\" },\n fund: { value: \"\" },\n pan: { value: !!params && !!params.pan ? params.pan : \"\" },\n open: false,\n messageAlert: \"\",\n name: { value: \"\" },\n email: { value: \"\" },\n mobile: { value: \"\" },\n });\n this.props.history.push(`/dashboard`);\n };\n\n handleChangeKycType = (event) => {\n const { match } = this.props;\n this.setState({\n kycType: { value: event.target.value },\n ipv: { value: \"YES\", errorMessage: \"\" },\n fund: { value: \"\" },\n pan: {\n value:\n !!match && !!match.params && !!match.params.pan\n ? match.params.pan\n : \"\",\n },\n name: { value: \"\" },\n email: { value: \"\" },\n mobile: { value: \"\" },\n });\n };\n render() {\n const { emaildomain, emailhost } = this.props;\n const {\n email,\n name,\n mobile,\n kycType,\n emailPlatform,\n emailSite,\n emailUsername,\n } = this.state;\n const KYCTYPES = [\n { key: \"DKYC\", label: \"Distributor (eKYC)\" },\n { key: \"IKYC\", label: \"Online IPV with E-sign\" },\n ];\n return (\n
\n
eKYC Form
\n \n
\n
\n
\n
\n \n
\n
\n
PAN*
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
Name*
\n
\n \n
\n
\n
\n
\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n type=\"number\"\n value={mobile.value}\n isShowError={mobile.isError}\n errorMessage={mobile.errorMessage}\n />\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions, dashboard }) => {\n const { token, userId } = authReducer;\n const { fundsList = [] } = transactions;\n const { emaildomain, emailhost } = dashboard;\n return {\n token,\n userId,\n fundsList,\n emaildomain,\n emailhost,\n };\n },\n { getNewPurchaseFundList, EKYCMail, checkKyc, getDomains }\n)(EKYC);\n","import React, { Component } from \"react\";\nimport { Route, Switch } from \"react-router-dom\";\nimport Investors from \"./InvestorMain\";\nimport InvestorDetails from \"./InvestorDetails\";\nimport NFOAndNewPurchaseDigital from \"../transactions/nfoAndNewPurchase\";\nimport TransactionMode from \"../transactions/TransactionModes\";\nimport TransactionType from \"../transactions/TransactionTypes\";\nimport EKYC from \"../transactions/ekycForm\";\n\nexport default class InvestorRouter extends Component {\n render() {\n const { history, location } = this.props;\n return (\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n\n \n \n\n \n \n\n \n \n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport CommonBreadCrumb from \"../breadCrumbs\";\nimport InvestorRouter from \"./InvestorRoutes\";\n\nexport const INVESTOR_URL = `/investors`;\n\nconst breadcrumbNameMap = {\n \"/investors\": { title: \"Investors\", to: INVESTOR_URL },\n\n \"/investors/details\": {\n title: \"Investor Details\",\n to: INVESTOR_URL + \"/details\",\n },\n\n \"/investors/new-investor/ekyc\": {\n title: \"EKYC\",\n to: INVESTOR_URL + \"/new-investor/ekyc\",\n },\n \"/investors/new-investor/Cobranding-Collaterals\": {\n title: \"Cobranding Collaterals\",\n to: INVESTOR_URL + \"/Cobranding-Collaterals\",\n },\n \"/investors/new-investor\": {\n title: \"New Investor\",\n to: INVESTOR_URL,\n },\n \"/investors/transction-types\": {\n title: \"Transaction Type\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/nfo-new-purchase\": {\n title: \"New Purchase\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n // \"/investors/nfo-new-purchase/transaction-modes\": {\n // title: \"Mode of Transaction\",\n // to: INVESTOR_URL + \"/nfo-new-purchase/transaction-modes\"\n // },\n \"/investors/nfo-new-purchase/physical\": {\n title: \"Phygital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n // to: INVESTOR_URL + \"/nfo-new-purchase/transaction-modes\"\n },\n \"/investors/nfo-new-purchase/physical/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/nfo-new-purchase/physical/transact\",\n },\n \"/investors/additional-purchase/physical\": {\n title: \"Phygital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n // to: INVESTOR_URL + \"/additional-purchase/transaction-modes\"\n },\n \"/investors/additional-purchase/physical/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/additional-purchase/physical/transact\",\n },\n\n \"/investors/redemption/physical\": {\n title: \"Phygital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n // to: INVESTOR_URL + \"/redemption/transaction-modes\"\n },\n \"/investors/redemption/physical/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/redemption/physical/transact\",\n },\n \"/investors/switch/physical\": {\n title: \"Phygital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n // to: INVESTOR_URL + \"/switch/transaction-modes\"\n },\n \"/investors/switch/physical/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/switch/physical/transact\",\n },\n \"/investors/sip/physical\": {\n title: \"Phygital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n // to: INVESTOR_URL + \"/sip/transaction-modes\"\n },\n \"/investors/sip/physical/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/sip/physical/transact\",\n },\n\n \"/investors/nfo-new-purchase/digital\": {\n title: \"Digital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/nfo-new-purchase/digital/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/nfo-new-purchase/digital/transact\",\n },\n \"/investors/nfo-new-purchase/digital/transact/confirm\": {\n title: \"Confirm\",\n to: INVESTOR_URL + \"/nfo-new-purchase/digital/transact/confirm\",\n },\n\n \"/investors/additional-purchase\": {\n title: \"Additional Purchase\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/additional-purchase/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: INVESTOR_URL + \"/additional-purchase/transaction-modes\",\n },\n \"/investors/additional-purchase/digital\": {\n title: \"Digital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/additional-purchase/digital/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/additional-purchase/digital/transact\",\n },\n \"/investors/additional-purchase/digital/transact/confirm\": {\n title: \"Confirm\",\n to: INVESTOR_URL + \"/additional-purchase/digital/transact/confirm\",\n },\n\n \"/investors/redemption\": {\n title: \"Redemption\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/redemption/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: INVESTOR_URL + \"/redemption/transaction-modes\",\n },\n \"/investors/redemption/digital\": {\n title: \"Digital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/redemption/digital/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/redemption/digital/transact\",\n },\n \"/investors/redemption/digital/transact/confirm\": {\n title: \"Confirm\",\n to: INVESTOR_URL + \"/redemption/digital/transact/confirm\",\n },\n\n \"/investors/switch\": {\n title: \"SWITCH\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/switch/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: INVESTOR_URL + \"/switch/transaction-modes\",\n },\n \"/investors/switch/digital\": {\n title: \"Digital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/switch/digital/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/switch/digital/transact\",\n },\n \"/investors/switch/digital/transact/confirm\": {\n title: \"Confirm\",\n to: INVESTOR_URL + \"/switch/digital/transact/confirm\",\n },\n\n \"/investors/sip\": {\n title: \"SIP\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/sip/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: INVESTOR_URL + \"/sip/transaction-modes\",\n },\n \"/investors/sip/digital\": {\n title: \"Digital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/sip/digital/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/sip/digital/transact\",\n },\n \"/investors/sip/digital/transact/confirm\": {\n title: \"Confirm\",\n to: INVESTOR_URL + \"/sip/digital/transact/confirm\",\n },\n\n \"/investors/swp\": {\n title: \"SWP\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/swp/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: INVESTOR_URL + \"/swp/transaction-modes\",\n },\n \"/investors/swp/digital\": {\n title: \"Digital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/swp/digital/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/swp/digital/transact\",\n },\n \"/investors/swp/digital/transact/confirm\": {\n title: \"Confirm\",\n to: INVESTOR_URL + \"/swp/digital/transact/confirm\",\n },\n\n \"/investors/stp\": {\n title: \"STP\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/stp/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/stp/digital\": {\n title: \"Digital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/stp/digital/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/stp/digital/transact\",\n },\n \"/investors/stp/digital/transact/confirm\": {\n title: \"Confirm\",\n to: INVESTOR_URL + \"/stp/digital/transact/confirm\",\n },\n\n \"/investors/sip-cancellation\": {\n title: \"SIP Cancellation\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/sip-cancellation/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/sip-cancellation/digital\": {\n title: \"Digital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/sip-cancellation/digital/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/sip-cancellation/digital/transact\",\n },\n \"/investors/sip-cancellation/digital/transact/confirm\": {\n title: \"Confirm\",\n to: INVESTOR_URL + \"/sip-cancellation/digital/transact/confirm\",\n },\n \"/investors/nct-type\": {\n title: \"NCT\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/nct-type/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/nct-type/digital\": {\n title: \"Digital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/nct-type/digital/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/nct-type/digital/transact\",\n },\n \"/investors/nct-type/digital/transact/confirm\": {\n title: \"Confirm\",\n to: INVESTOR_URL + \"/nct-type/digital/transact/confirm\",\n },\n\n \"/investors/eNACH\": {\n title: \"eNACH\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/eNACH/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/eNACH/digital\": {\n title: \"Digital Mode\",\n to: INVESTOR_URL + \"/transction-types\",\n },\n \"/investors/eNACH/digital/transact\": {\n title: \"Transact\",\n to: INVESTOR_URL + \"/eNACH/digital/transact\",\n },\n \"/investors/eNACH/digital/transact/confirm\": {\n title: \"Confirm\",\n to: INVESTOR_URL + \"/eNACH/digital/transact/confirm\",\n },\n};\n\nexport default class InvestorComponent extends Component {\n render() {\n const { location } = this.props;\n const pathnames =\n location.pathname.includes(\"/ekyc\") ||\n location.pathname.includes(\"/investors/details\")\n ? location.pathname\n .split(\"/\")\n .filter((name) => name)\n .slice(0, 2)\n : location.pathname.split(\"/\").filter((name) => name);\n return (\n
\n {location?.state?.from !== \"view history\" && }\n \n
\n );\n }\n}\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport { connect } from \"react-redux\";\nimport CustomizedSelect from \"../transactions/customizedSelect\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nimport { Input } from \"../../forms/input\";\nimport Signbutton from \"../../forms/button\";\nimport CustomizedDialogs from \"../../home/customModal\";\nimport { MBRStatusDialog } from \"../../home/customModal\";\nimport {\n MuiPickersUtilsProvider,\n KeyboardDatePicker,\n} from \"@material-ui/pickers\";\nimport { ALL } from \"shared/store/types\";\nimport {\n getInvestorDetails,\n getNewPurchaseFundList,\n} from \"shared/store/actions\";\nimport {\n getMailbackList,\n GetDistMailbackRequest,\n} from \"shared/store/actions/mailback\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\nimport { SundaramMutualFund } from \"../transactions/newPurchaseForm\";\nimport { EYE_ICON, EYE_ICON_HIDDEN } from \"../../forms/appEssentials\";\nexport const MAILBACK_URL = `/mailBackRequest`;\nclass MailBack extends Component {\n constructor(props) {\n super(props);\n const { state } = this.props.location;\n this.state = {\n fund: { value: \"\" },\n reports: [],\n status: {\n value: false,\n },\n report:\n !!state && !!state.value\n ? {\n value: {\n label: state.value.KDM_Repdesc,\n value: state.value.KDM_Repcode,\n },\n }\n : { value: \"\" },\n reportType: { value: \"\" },\n fromDate: { value: null, error: false },\n toDate: { value: null, error: false },\n password: { value: \"\" },\n showPassword: false,\n open: false,\n refrenceNumber: { value: \"\" },\n };\n }\n\n async componentDidMount() {\n const response = await this.props.getMailbackList();\n if (response) {\n this.setState({\n reports: response.DtData,\n });\n }\n }\n handleChangeReports = (value) => {\n this.setState({\n report: { value },\n });\n };\n handleChangeReportTypes = (event) => {\n this.setState({\n reportType: { value: event.target.value },\n });\n };\n handleChangeFunds = (value) => {\n this.setState({\n fund: { value },\n });\n };\n handleChangePassword = (event) => {\n this.setState({\n password: { value: event.target.value },\n });\n };\n onDateChange = (label, event) => {\n if (label === \"toDate\" && !!this.state.fromDate.value && !!event) {\n const reformtStDt = this.state.fromDate.value.toLocaleDateString(\n \"en-US\",\n {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n }\n );\n\n const changeEndDt = event.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeEndDt).setHours(12, 0, 0, 0);\n if (d2 > d3 || d2 === d3) {\n this.setState({\n [label]: {\n value: null,\n error: true,\n errorMessage: \"Start Date should be earlier than End Date\",\n },\n });\n } else {\n this.setState({\n [label]: { value: event, errorMessage: \"\", error: false },\n });\n }\n } else if (label === \"fromDate\") {\n this.setState({\n [label]: { value: event },\n toDate: { value: null, error: \"\", errorMessage: \"\" },\n });\n }\n // this.setState({ [label]: { value: event } });\n };\n\n submit = async () => {\n let toDateValue;\n let fromDateValue;\n if (this.state.fromDate.value) {\n fromDateValue = this.state.fromDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n }\n if (this.state.toDate.value) {\n toDateValue = this.state.toDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n }\n const {\n funds,\n fund,\n reports,\n fromDate,\n status,\n toDate,\n showPassword,\n open,\n refrenceNumber,\n ...others\n } = this.state;\n\n const keys = Object.keys(others);\n const d2 = new Date(this.state.fromDate.value).setHours(12, 0, 0, 0);\n const d3 = new Date(this.state.toDate.value).setHours(12, 0, 0, 0);\n\n const findError = keys.every((key) => !!others[key].value);\n\n if (!this.state.toDate.value) {\n this.setState({\n toDate: {\n value: null,\n error: true,\n errorMessage: \"End date is mandatory\",\n },\n });\n }\n\n if (!this.state.fromDate.value) {\n this.setState({\n fromDate: {\n value: null,\n error: true,\n errorMessage: \"Start date is mandatory\",\n },\n });\n }\n\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage: `${\n key === \"report\"\n ? \"Report\"\n : key === \"reportType\"\n ? \"Report type\"\n : key === \"password\"\n ? \"Password\"\n : key === \"fund\"\n ? \"Fund\"\n : \"\"\n } is mandatory`,\n },\n });\n });\n const firstErroredKey = keys.find((key) => !others[key].value);\n switch (firstErroredKey) {\n case \"report\": {\n this.reportField.focus();\n break;\n }\n case \"reportType\": {\n this.reportTypeField.focus();\n break;\n }\n case \"fromDate\": {\n this.fromDateField.focus();\n break;\n }\n case \"toDate\": {\n this.toDateField.focus();\n break;\n }\n }\n } else if (others.password.value === \"\") {\n this.setState({\n password: {\n ...others[\"password\"],\n isError: true,\n errorMessage: `Password is mandatory`,\n },\n });\n this.passwordField.focus();\n return;\n } else if (!this.state.fromDate.value) {\n this.setState({\n fromDate: {\n value: null,\n error: true,\n errorMessage: \"Start Date is mandatory\",\n },\n });\n return;\n } else if (!this.state.toDate.value) {\n this.setState({\n toDate: {\n value: null,\n error: true,\n errorMessage: \"End date is mandatory\",\n },\n });\n return;\n } else if (d2 > d3 || d2 === d3) {\n this.setState({\n toDate: {\n value: null,\n error: true,\n errorMessage: \"Start date should be earlier than End date\",\n },\n });\n } else {\n const params = {\n Userid: this.props.userId,\n ReportNumber: this.state.report.value.value,\n ZipPwd: this.state.password.value,\n Fund: \"176\",\n toDate: toDateValue,\n fromDate: fromDateValue,\n ReqBy: ALL,\n Agent: this.props.token,\n reportType: this.state.reportType.value === \"Excel\" ? \"Excel\" : \"DBF\",\n };\n const response = await this.props.GetDistMailbackRequest(params);\n if (response) {\n this.setState({\n open: true,\n refrenceNumber: { value: response.DtData[0].Refno },\n });\n }\n }\n };\n\n closeModal = () => {\n this.setState({\n open: false,\n fund: { value: \"\" },\n report: { value: \"\" },\n reportType: { value: \"\" },\n fromDate: { value: null, error: false },\n toDate: { value: null, error: false },\n password: { value: \"\" },\n refrenceNumber: { value: \"\" },\n });\n };\n showError = (label) => (event) => {\n const {\n [label]: { value },\n } = this.state;\n\n if (label === \"\") {\n this.setState({\n [label]: {\n value: \"\",\n isError: this.state.selfPassword.value === \"\" ? true : !value,\n errorMessage:\n this.state.selfPassword.value === \"\"\n ? `(selfPassword is mandatory)`\n : \"\",\n },\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n close() {\n this.setState({\n status: {\n value: false,\n },\n });\n }\n gotoblur = () => {\n if (\n this.state.password.value === \"\" ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.password.value\n )\n ) {\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.password.value\n )\n ) {\n this.setState({\n password: {\n value: this.state.password.value,\n isError: true,\n errorMessage: `Password should be atleast 8 characters in length and should contain at least 1 Upper Case alphabet(A-Z).1 Special Character and 1 Numeric Value (0-9)`,\n },\n });\n return;\n } else if (this.state.password.value === \"\") {\n this.setState({\n password: {\n value: this.state.password.value,\n isError: true,\n errorMessage: `Password is mandatory`,\n },\n });\n return;\n }\n }\n };\n\n render() {\n const { fundsList, location } = this.props;\n const { fund, reports, report, reportType, password } = this.state;\n const { state } = location;\n return (\n
\n
My Reports
\n\n \n \n
\n
\n
\n (this.reportTypeField = ele)}\n isError={reportType.isError}\n errorMessage={reportType.errorMessage}\n isShowError={reportType.isError}\n placeholder=\"Select Report Type\"\n >\n \n Excel\n \n \n DBF\n \n \n
\n
\n
Select Report
\n ({\n label: item.KDM_Repdesc.split(\"-\")[1].trim(),\n value: item.KDM_Repcode,\n }))}\n value={report.value}\n placeholder=\"Select Report\"\n errorMessage={report.errorMessage}\n maxDate={new Date()}\n disabled={!!state && !!state.value}\n inputRef={(ele) => (this.reportField = ele)}\n isError={report.isError}\n isShowError={report.isError}\n handleChange={this.handleChangeReports}\n />\n
\n
\n\n
\n
\n
Start Date
\n \n this.onDateChange(\"fromDate\", e)}\n // openTo={true}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n maxDate={new Date()}\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.fromDate.value}\n />\n {!!this.state.fromDate.errorMessage ? (\n \n {this.state.fromDate.errorMessage}\n
\n ) : (\n \"\"\n )}\n \n
\n
\n
End Date
\n \n this.onDateChange(\"toDate\", e)}\n // onBlur={}\n // openTo={true}\n disabled={!this.state.fromDate.value ? true : false}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n errorMessage={this.state.toDate.errorMessage}\n maxDate={new Date()}\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.toDate.value}\n />\n {!!this.state.toDate.errorMessage ? (\n \n {this.state.toDate.errorMessage}\n
\n ) : (\n \"\"\n )}\n \n
\n
\n\n
\n
\n {\n this.setState({\n showPassword: !this.state.showPassword,\n });\n }}\n image2={\n !!this.state.showPassword ? EYE_ICON : EYE_ICON_HIDDEN\n }\n height={15}\n value={password.value}\n inputRef={(ele) => (this.passwordField = ele)}\n isShowError={password.isError}\n errorMessage={password.errorMessage}\n />\n \n Password should be at least 8 characters in length and\n should contain at least 1 uppercase letter (A-Z), 1 special\n character and 1 numeric value (0-9)\n
\n
\n
\n \n\n
\n \n
\n\n \n \n \n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions }) => {\n const { investorData, userId, token } = authReducer;\n const { fundsList } = transactions;\n return { investorData, userId, token, fundsList };\n },\n {\n getNewPurchaseFundList,\n getInvestorDetails,\n getMailbackList,\n GetDistMailbackRequest,\n }\n)(MailBack);\n","import React, { Component } from \"react\";\nimport Loader from \"react-loader-spinner\";\nimport \"react-loader-spinner/dist/loader/css/react-spinner-loader.css\";\n\nexport default class CustomLoading extends Component {\n render() {\n return (\n \n \n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n getTransactionHistory,\n getTrackDetails,\n RemoveTransactionData,\n} from \"shared/store/actions\";\nimport { Paper } from \"@material-ui/core\";\nimport { Debtbutton, DebtbuttonActive } from \"../../forms/button\";\nimport { NEW_TRANSACTION_URL } from \"../transactions\";\nimport { FormatCurrency } from \"../../home/currencyFormatter\";\nimport { PerformanceModal } from \"../customModal\";\nimport { BUILD_URL } from \"../../forms/appEssentials\";\nimport CustomLoader from \"../../forms/customLoader\";\nimport { convertDateFormat } from \"../transactions/newInvestor/lib/utils\";\nimport CustomLoading from \"../CustomLoader\";\n\nclass HistoryDetail extends Component {\n constructor(props) {\n super(props);\n this.state = {\n transactionList: [],\n showError: false,\n openPerformanceModal: false,\n TrackData: [],\n display: false,\n };\n }\n\n async componentDidMount() {\n const { state } = this.props.location;\n const { isKyc } = state;\n if (!!isKyc) {\n await this.props.RemoveTransactionData();\n this.getTransactions(\"176\");\n } else {\n this.setState({ showError: true });\n }\n }\n\n getTransactions = async () => {\n this.setState({ display: true });\n window.scrollTo({\n top: 0,\n behavior: \"smooth\",\n });\n const { investorData, userId } = this.props;\n const params = {\n Uid: userId,\n pan: investorData.PAN,\n InvdDistFlag: \"S\",\n Fund: \"176\",\n arn: this.props.token,\n };\n await this.props.getTransactionHistory(params);\n this.setState({\n display: false,\n });\n };\n\n closePerformanceModal = () => {\n this.setState({\n openPerformanceModal: false,\n });\n };\n\n gotoTrack = (item) => async () => {\n const reverseDate = !!item && !!item.td_trdt ? item.td_trdt.split (\" \"):\"\"\n \n\n const formattedDateString = `${reverseDate[1]}/${reverseDate[0]}/${reverseDate[2]}`;\n\n const params = {\n Fund: item.td_fund,\n Ihno: item.td_ihno,\n Status: item.Status,\n SchemeDesc: item.td_scheme,\n TrDate: convertDateFormat(reverseDate[0]),\n };\n const response = await this.props.getTrackDetails(params);\n if (!!response && !!response.DtData) {\n this.setState({\n openPerformanceModal: true,\n TrackData: response.DtData,\n });\n } else {\n alert(\"No Data\");\n }\n };\n\n render() {\n const { state } = this.props.location;\n const { isKyc } = state;\n const { showError, display } = this.state;\n const { transactions, investorData, count } = this.props;\n return (\n
\n \n {!!transactions && !!transactions.length ? (\n \n \n {!isKyc && !!showError ? (\n
\n No Investor PAN found. Please submit Investor PAN\n
\n ) : (\n \n {!!display ? (\n \n ) : (\n
\n \n
Transactions:
\n {transactions.map((transaction, index) => (\n
\n
\n
\n {transaction.SchemeDesc}\n
\n
\n {transaction.Status === \"Pending\" ||\n transaction.Status ===\n \"Pending payment confirmation\" ||\n transaction.Status === \"Success\" ? (\n
\n \n
\n ) : (\n
\n )}\n \n {transaction.Status === \"Rejected\" ? (\n \n this.props.history.push(\n NEW_TRANSACTION_URL +\n \"/transction-types\"\n )\n }\n />\n ) : (\n \n this.props.history.push(\n NEW_TRANSACTION_URL +\n \"/transction-types\"\n )\n }\n />\n )}\n
\n
\n
\n\n
\n \n \n
\n
\n ))}\n
\n )}\n \n )}\n \n ) : !!display ? (\n \n ) : (\n
No Data Found
\n )}\n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactionHistory, loading }) => {\n const { investorData, userId, token } = authReducer;\n const { count } = loading;\n const { fundsList, transactions } = transactionHistory;\n return { investorData, userId, fundsList, transactions, token, count };\n },\n { getTransactionHistory, getTrackDetails, RemoveTransactionData }\n)(HistoryDetail);\n\nexport class SingleAmcheader extends Component {\n render() {\n const { invname, PAN } = this.props.investorData;\n return (\n
\n
\n
\n \n
\n
\n
{invname}
\n
PAN: {PAN}
\n
\n
\n
\n );\n }\n}\n\nexport class TransactionSubContainer extends Component {\n render() {\n const { list } = this.props;\n return (\n <>\n {list.map((ele, index) => (\n
\n
{ele.key}
\n \n {!!ele.value ? ele.value : \"-\"}\n
\n \n ))}\n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport { Route, Switch } from \"react-router-dom\";\nimport Investors from \"../investors/InvestorMain\";\nimport HistoryDetail from \"./historyDetail\";\n\nexport default class HistoryRouter extends Component {\n render() {\n const { history, location } = this.props;\n return (\n \n \n \n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport CommonBreadCrumb from \"../breadCrumbs\";\nimport HistoryRouter from \"./historyRouter\";\nexport const HISTORY_URL = `/transaction-history`;\n\nconst breadcrumbNameMap = {\n \"/transaction-history\": {\n title: \"Transaction History\",\n to: HISTORY_URL,\n },\n \"/transaction-history/details\": {\n title: \"Transactions List\",\n to: HISTORY_URL + \"/details\",\n },\n};\n\nexport default class TransactionHistory extends Component {\n render() {\n const { location } = this.props;\n const pathnames = location.pathname.includes(\"/details\")\n ? location.pathname\n .split(\"/\")\n .filter((name) => name)\n .slice(0, 2)\n : location.pathname.split(\"/\").filter((name) => name);\n return (\n
\n \n \n
\n );\n }\n}\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport Table from \"@material-ui/core/Table\";\nimport TableBody from \"@material-ui/core/TableBody\";\nimport TablePagination from \"@material-ui/core/TablePagination\";\nimport TableCell from \"@material-ui/core/TableCell\";\nimport TableHead from \"@material-ui/core/TableHead\";\nimport TableRow from \"@material-ui/core/TableRow\";\nimport { connect } from \"react-redux\";\nimport {\n getInvestorDetails,\n checkKyc,\n userPan,\n storeKYCData,\n clearingFirstTimeInvestorJourney,\n nctTrack,\n storeCurrentPage\n} from \"shared/store/actions\";\nimport { REQ_BY } from \"shared/store/types\";\nimport { INVESTOR_URL } from \"./investors\";\nimport { NEW_TRANSACTION_URL } from \"./transactions\";\nimport { MAILBACK_URL } from \"./mailBackRequest\";\nimport { HISTORY_URL } from \"./transactionHistory\";\nimport { BUILD_URL } from \"./home\";\nimport CustomLoading from \"../home/CustomLoader\";\nimport CustomLoader from \"../forms/customLoader\";\nimport {\n newTransactionActive,\n transactionHistoryActive,\n} from \"../forms/appEssentials\";\n\nclass TableData extends Component {\n constructor(props) {\n super(props);\n this.state = {\n currentPage: 1,\n totalPages: Math.ceil(this.props.investors?.length/ 20),\n isLoading: false,\n };\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.investors !== this.props.investors) {\n this.setState({\n totalPages: Math.ceil(this.props.investors?.length / 20),\n currentPage: this.props?.currentPage,\n });\n }\n }\n\n goToTransaction = (PAN, Email, mailBackName) => async () => {\n this.props.storeCurrentPage(this.state.currentPage);\n if (Email === \"\" || Email === undefined) {\n alert(\"Email ID not available. Transaction could not be initiated\");\n return;\n }\n await this.props.userPan(PAN);\n await this.props.storeKYCData({});\n await this.props.clearingFirstTimeInvestorJourney();\n const response = await this.getInvestorDetails(PAN);\n if (response) {\n this.props.history.push({\n pathname: `/investors` + \"/transction-types\",\n });\n } else {\n const kycResponse = await this.getKycDetails(PAN);\n if (kycResponse) {\n const {\n DtData: [info],\n } = kycResponse;\n if (info.KYCBlock === \"N\") {\n this.props.history.push({\n pathname: `/investors` + \"/transction-types\",\n });\n }\n }\n }\n };\n\n getInvestorDetails = async (pan) => {\n const params = { PAN: pan, Uid: this.props.userId, ReqBy: REQ_BY };\n const response = await this.props.getInvestorDetails(params);\n return response;\n };\n\n getKycDetails = async (pan) => {\n const params = {\n i_pan: pan,\n fund: \"176\",\n userid: this.props.userId,\n };\n const kycResponse = await this.props.checkKyc(params);\n return kycResponse;\n };\n gotoNctTransaction = (PAN, NAME) => async (e) => {\n const params = { pan: PAN, distributor_id: this.props.token, offSet: 3 };\n this.setState({ isLoading: true });\n const response = await this.props.nctTrack(params);\n if (response) {\n this.props.history.push({\n pathname: `nct-transaction/details/${PAN}`,\n state: { transactions: response, name: NAME, pan: PAN },\n });\n this.setState({ isLoading: false });\n return;\n }\n this.setState({ isLoading: false });\n return;\n };\n\n goToMailBack = (PAN, mailBackName) => async () => {\n const response = await this.getInvestorDetails(PAN);\n if (response) {\n if (mailBackName === \"mailBackSoa\") {\n this.props.history.push({\n pathname: MAILBACK_URL + \"/investor/investor-selection/mail-back-soa\",\n });\n } else if (mailBackName === \"ELSS\") {\n this.props.history.push({\n pathname: MAILBACK_URL + \"/investor/investor-selection/ELSS\",\n });\n } else if (mailBackName === \"CAN\") {\n this.props.history.push({\n pathname: MAILBACK_URL + \"/investor/investor-selection/CAN\",\n });\n } else if (mailBackName === \"CGS\") {\n this.props.history.push({\n pathname: MAILBACK_URL + \"/investor/investor-selection/CGS\",\n });\n } else if (mailBackName === \"GAS\") {\n this.props.history.push({\n pathname: MAILBACK_URL + \"/investor/investor-selection/GAS\",\n });\n } else if (mailBackName === \"Networth\") {\n this.props.history.push({\n pathname: MAILBACK_URL + \"/investor/investor-selection/Networth\",\n });\n } else {\n this.props.history.push({\n pathname:\n MAILBACK_URL +\n \"/investor/investor-selection/consolidated-account-statement\",\n });\n }\n } else {\n const kycResponse = await this.getKycDetails(PAN);\n const {\n DtData: [info],\n } = kycResponse;\n if (info.KYCBlock === \"N\") {\n if (mailBackName === \"mailBackSoa\") {\n this.props.history.push({\n pathname:\n MAILBACK_URL + \"/investor/investor-selection/mail-back-soa\",\n });\n } else if (mailBackName === \"ELSS\") {\n this.props.history.push({\n pathname: MAILBACK_URL + \"/investor/investor-selection/ELSS\",\n });\n } else if (mailBackName === \"CAN\") {\n this.props.history.push({\n pathname: MAILBACK_URL + \"/investor/investor-selection/CAN\",\n });\n } else {\n this.props.history.push({\n pathname:\n MAILBACK_URL +\n \"/investor/investor-selection/consolidated-account-statement\",\n });\n }\n }\n }\n };\n\n goToTransactionHistory = (PAN) => async () => {\n const response = await this.getInvestorDetails(PAN);\n if (response) {\n this.props.history.push({\n pathname: `${HISTORY_URL}/details/xxxxxxxxxxx`,\n state: { isKyc: true },\n });\n } else {\n const kycResponse = await this.getKycDetails(PAN);\n const {\n DtData: [info],\n } = kycResponse;\n if (info.KYCBlock === \"N\") {\n this.props.history.push({\n pathname: `${HISTORY_URL}/details/xxxxxxxxxxx`,\n state: { isKyc: false },\n });\n }\n }\n };\n previous = () => {\n if (this.state.currentPage > 1) {\n this.setState((pre) => ({ currentPage: pre.currentPage - 1 }));\n }\n };\n next = () => {\n if (this.state.currentPage < this.state.totalPages) {\n this.setState((pre) => ({ currentPage: pre.currentPage + 1 }));\n }\n };\n render() {\n const pathname = this.props.location.pathname;\n const { investors, count, loading,nctInvestors } = this.props;\n const TableHeaders = [\n \"Name\",\n \"PAN\",\n \"KYC/FATCA\",\n \"Email\",\n \"Mobile\",\n `${\n pathname.includes(\"transaction-history\") ||\n pathname.includes(\"nct-transaction\")\n ? \"View Transactions\"\n : \"Action\"\n }`,\n ];\n const sortedData = [...this.props.investors].filter((value, index, self) => {\n return index === self.findIndex((t) => (\n t.Pan === value.Pan\n ));\n }).sort((a, b) => {\n return a.Name.localeCompare(b.Name);\n });\n const isNct =pathname.includes(\"nct\")\n const investorsData = isNct ?nctInvestors :this.props.activeTab === \"R\"?this.props.investors:sortedData\n return (\n
\n {count > 0 || this.state.isLoading || loading ? (\n \n ) : !investors.length ? (\n \n No data Found\n
\n ) : (\n ((this.props.tran_enable_flag === \"Y\" &&\n investors.length !== this.props.investorsCount) ||\n this.props.tran_enable_flag === \"N\") && (\n \n {this.props.activeTab === \"R\" && (\n \n Note: Investors who have done transactions for the last 30\n days are displayed in this screen.\n \n )}\n\n \n \n \n \n {TableHeaders.filter((ele) => ele !== null).map(\n (ele, index) => (\n \n {ele}\n \n )\n )}\n \n \n \n {investorsData\n .slice(\n (this.state.currentPage - 1) * 20,\n this.state.currentPage * 20\n )\n .map((investor, index) => (\n \n \n {pathname.includes(\"/new-transaction\") ||\n pathname.includes(\"/mailBackRequest\") ||\n pathname.includes(\"/transaction-history\") ? (\n \n {investor.Name}\n \n ) : (\n {\n this.props.storeCurrentPage(this.state.currentPage);\n this.props.history.push({\n pathname: `${INVESTOR_URL}/details/xxxxxxxxxx`,\n state: { PAN: investor.Pan },\n })\n } }\n style={{\n borderBottom: \"2px solid #80bce3\",\n paddingBottom: 3,\n fontFamily: \"Ubuntu-Medium\",\n }}\n >\n {investor.Name}\n \n )}\n \n \n {investor.Pan}\n \n \n \n \n KYC\n \n FATCA\n \n \n \n {investor.Email}\n \n \n {investor.Mobile}\n \n\n \n \n {pathname.includes(\"/investors\") ||\n pathname.includes(\"/transaction-history\") ||\n pathname.includes(\"/nct-transaction\") ? (\n \n {pathname.includes(\"/investors\") ? (\n \n ) : (\n \n )}\n \n ) : (\n \n Select\n \n )}\n \n \n \n ))}\n \n
\n {investorsData.length > 20 && (\n
\n {`<`}\n {`>`}\n {`${this.state.currentPage} of ${this.state.totalPages}`}\n
\n )}\n \n
\n {investorsData.map((investor, index) => (\n \n
\n \n {pathname.includes(\"/new-transaction\") ||\n pathname.includes(\"/mailBackRequest\") ||\n pathname.includes(\"/transaction-history\") ? (\n {investor.Name}\n ) : (\n \n this.props.history.push({\n pathname: `${INVESTOR_URL}/details/${investor.Pan}`,\n state: { PAN: investor.Pan },\n })\n }\n style={{\n borderBottom: \"2px solid #80bce3\",\n paddingBottom: 3,\n fontFamily: \"Ubuntu-Medium\",\n }}\n >\n {investor.Name}\n \n )}\n
\n \n \n {pathname.includes(\"/investors\") ||\n pathname.includes(\"/transaction-history\") ? (\n \n {pathname.includes(\"/investors\") && (\n \n )}\n {pathname.includes(\"/investors\")\n ? \"New Transaction\"\n : \"View Transactions\"}\n \n ) : (\n \n Select\n \n )}\n
\n \n \n \n \n \n \n KYC\n \n FATCA\n \n \n \n
\n
{investor.Mobile}
\n \n \n PAN :\n {investor.Pan}\n \n \n \n ))}\n \n
\n )\n )}\n \n );\n }\n}\n\nexport default connect(\n ({ investor, authReducer, loading }) => {\n const { userId, token, tran_enable_flag } = authReducer;\n const {\n investors,\n nctInvestors,\n loaderDisplay,\n count: investorsCount,\n loading: listLoading,\n currentPage\n } = investor;\n const { count } = loading;\n return {\n investors,\n nctInvestors,\n userId,\n token,\n loaderDisplay,\n count,\n tran_enable_flag,\n investorsCount,\n loading: listLoading,\n currentPage\n };\n },\n {\n getInvestorDetails,\n checkKyc,\n userPan,\n storeKYCData,\n clearingFirstTimeInvestorJourney,\n nctTrack,\n storeCurrentPage\n }\n)(TableData);\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport InputBase from \"@material-ui/core/InputBase\";\nimport { connect } from \"react-redux\";\nimport {\n getInvestorDetails,\n checkKyc,\n clearingFirstTimeInvestorJourney,\n storeKYCData,\n userPan,\n} from \"shared/store/actions\";\nimport { REQ_BY } from \"shared/store/types\";\nimport { NEW_TRANSACTION_URL } from \".\";\nimport { KycNotDoneDialog } from \"../customModal\";\nimport CustomLoader from \"../../forms/customLoader\";\nclass NewInvestorSearch extends Component {\n constructor(props) {\n super(props);\n this.state = {\n inputValue: \"\",\n openModal: false,\n errorMessage: \"\",\n };\n }\n\n changeInput = (event) => {\n // if (\n // !!event.target.value.charAt(3) &&\n // (event.target.value.charAt(3) === \"p\" ||\n // event.target.value.charAt(3) === \"P\")\n // ) {\n this.setState({\n inputValue: event.target.value.toUpperCase(),\n errorMessage: \"\",\n });\n // } else {\n // this.search({\n // errorMessage: \"\"\n // });\n // }\n };\n\n keyPress = (e) => {\n if (e.key === \"Enter\") {\n this.search();\n }\n };\n\n closeModal = () => {\n this.setState({\n openModal: false,\n });\n };\n\n continue = () => {\n this.closeModal();\n this.props.history.push({\n pathname:\n NEW_TRANSACTION_URL + `/new-investor/ekyc/${this.state.inputValue}`,\n });\n };\n\n search = async () => {\n const regpan = /^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/;\n if (!this.state.inputValue || !regpan.test(this.state.inputValue)) {\n this.setState({ errorMessage: \"Please enter valid PAN\" });\n } else if ((this.state.inputValue.charAt(3) !== \"P\") && (this.state.inputValue.charAt(3) !== \"H\")) {\n this.setState({\n errorMessage: \"Non Indivdual PAN is not allowed to transact\",\n });\n } else {\n const params = {\n Uid: this.props.userId,\n ReqBy: REQ_BY,\n PAN: this.state.inputValue.toUpperCase(),\n };\n await this.props.userPan(this.state.inputValue);\n const response = await this.props.getInvestorDetails(params);\n if (!!response && !response.error) {\n this.props.history.push({\n pathname: NEW_TRANSACTION_URL + \"/transction-types\",\n pan: this.state.inputValue,\n });\n } else {\n const kycResponse = await this.props.checkKyc({\n fund: \"176\",\n userid: this.props.userId,\n i_pan: this.state.inputValue,\n });\n const {\n DtData: [info],\n } = kycResponse;\n await this.props.storeKYCData(info)\n if (info.KYCBlock === \"N\") {\n await this.props.userPan(this.state.inputValue);\n this.props.history.push({\n pathname: \"/new-investor-transaction/investor-details\",\n state: {\n pan: !!this.state.inputValue ? this.state.inputValue : \"\",\n },\n });\n\n } else {\n this.setState({ openModal: true });\n }\n }\n }\n };\n\n render() {\n return (\n
\n \n \n
\n \n \n
\n
\n Search\n
\n \n {!!this.state.errorMessage && (\n \n {this.state.errorMessage}\n
\n )}\n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, loading }) => {\n const { userId } = authReducer;\n const { count } = loading;\n return { userId, count };\n },\n { getInvestorDetails, checkKyc,clearingFirstTimeInvestorJourney,storeKYCData,userPan }\n)(NewInvestorSearch);\n","import React, { Component } from \"react\";\nimport Search from \"../searchComponent\";\nimport TableData from \"../tableData\";\nimport { connect } from \"react-redux\";\nimport { getInvestors } from \"shared/store/actions\";\nimport { ALL, EXISTING, NEW } from \"shared/store/types\";\nimport TabHeader from \"../../forms/tabHeader\";\nimport NewInvestorSearch from \"./newInvestorSearch\";\nclass Transactions extends Component {\n constructor(props) {\n super(props);\n this.state = {\n active: NEW\n };\n }\n\n onClick = active => () => {\n this.setState({ active });\n };\n\n componentDidMount() {\n this.props.getInvestors({ ARN: this.props.token, AllFavFlag: ALL });\n }\n\n render() {\n return (\n
\n
New Transaction
\n\n {/* \n \n\n \n
*/}\n {this.state.active === NEW ? (\n \n ) : (\n
\n \n \n
\n )}\n\n {/*
\n {this.props.investors.length > 0 && (\n \n this.props.history.push(\"/newTransaction/transction-types\")\n }\n >\n Next\n
\n )}\n */}\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, investor }) => {\n const { token } = authReducer;\n const { investors } = investor;\n return { investors, token };\n },\n { getInvestors }\n)(Transactions);\n","import React, { useEffect } from \"react\";\nimport Image from \"../../../../Image\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\nconst VerticalStepper = (props) => {\n useEffect(() => {\n console.log(props)\n } , [props]);\n const steps = [\n {\n name: \"investor-details\",\n value: \"Investor Details\",\n image: \"/images/home.png\",\n url: \"/new-investor-transaction/investor-details\",\n data: !!props.applicantparams?.i_dob,\n },\n {\n name: \"fatca-details\",\n value: \"FATCA Details\",\n image: \"/images/ekyc.svg\",\n url: \"/new-investor-transaction/fatca-details\",\n data: (!props.changeMode && !!props.fatcaDetails?.i_income),\n },\n {\n name: \"nominee-details\",\n value: \"Nominee Details\",\n image: \"/images/investor.png\",\n url: \"/new-investor-transaction/nominee-details\",\n data: (!props.changeMode && (!!props.nomineDetails?.i_nominee || !!props.noNominee)),\n },\n {\n name: \"bank-details\",\n value: \"Bank Details\",\n image: \"/images/newtransaction.png\",\n url: \"/new-investor-transaction/bank-details\",\n data: (!props.changeMode &&!!props?.bankDetails)\n },\n {\n name: \"scheme-details\",\n value: \"Scheme Details\",\n image: \"/images/connect.png\",\n url: \"/new-investor-transaction/scheme-details\",\n data: (!props.changeMode && !!props?.schemeDetailsClick)\n },\n ];\n const { active, hide } = props;\n return (\n
\n {!hide && (\n <>\n
\n {steps.map((step, index) => (\n \n
\n \n \n
\n \n \n Step {index + 1}\n \n \n {step.value}\n \n
\n
\n \n ))}\n \n
Note: Please click the \"Submit/Proceed\" button to save the changes. Otherwise, the changes will NOT be saved.
\n \n )}\n \n );\n};\nexport default connect(({ newinvestor }) => {\n const {\n applicantparams,\n schemeDetails,\n fatcaDetails,\n investmentparams,\n nomineDetails,\n noNominee,\n bankDetails,\n schemeDetailsClick,\n changeMode\n } = newinvestor;\n return {\n applicantparams,\n schemeDetails,\n fatcaDetails,\n applicantparams,\n investmentparams,\n nomineDetails,\n noNominee,\n bankDetails,\n schemeDetailsClick,\n changeMode\n };\n})(VerticalStepper);\n","import React from \"react\";\n\nconst CardComponent = (props) => {\n return (\n
\n
\n {props.title.toUpperCase()}\n
\n \n {props.children}\n
\n \n );\n};\nconst SummaryCard = (props) => {\n return (\n <>\n
\n
{props.title}
\n
{props.children}
\n
\n \n );\n};\n\nexport default CardComponent;\nexport { SummaryCard };\n","import React,{Component} from \"react\";\nimport { BUILD_URL } from \"../home/home\";\nimport { Loader_icon } from \"./appEssentials\";\n\n\nexport default class CustomLoader extends Component {\n render () {\n const {display} = this.props\n return (\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n )\n }\n}\n","import Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControl from \"@material-ui/core/FormControl\";\nimport * as React from \"react\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nexport const RadioButton = (props) => {\n return (\n <>\n
\n
\n
\n {props.Heading}\n
\n \n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
YES
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
NO
\n
\n \n
\n
\n
\n \n );\n};\n","import React, { useState, useEffect } from \"react\";\nimport CardComponent from \"./lib/CardComponent\";\nimport { format } from \"date-fns\";\nimport { connect } from \"react-redux\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport { Occupations, Gross_Annual_income } from \".\";\nimport {\n getCountriesList,\n getStatesList,\n storeFatcaDetails,\n storeApplicantParams,\n getKycDetails,\n checkKyc,\n getCitiesList as getCitiesByState,\n getRelationShipList,\n storeAddress,\n changeInMode\n} from \"shared/store/actions\";\nimport { panRegex } from \".\";\nimport CustomLoader from \"../../../forms/Loader\";\nimport { KycNotDoneDialog } from \"../../customModal\";\nimport CustomizedSelect from \"../customizedSelect\";\nimport { Input } from \"../../../forms/input\";\nimport { NEW_TRANSACTION_URL } from \"..\";\nimport { RadioButton } from \"./lib/Radiobutton\";\n\nconst FatcaDetails = (props) => {\n const [isLoading, setIsLoading] = useState(false);\n const [categoryoccupation, setCategoryOccupation] = useState({\n categoryoccupationprimary: { value: \"\" },\n categoryoccupationjoint1: { value: \"\" },\n categoryoccupationjoint2: { value: \"\" },\n });\n const [gross_annual_income, setGross_Annual_Income] = useState({\n gross_annual_incomeprimary: { value: \"\" },\n gross_annual_incomejoint1: { value: \"\" },\n gross_annual_incomejoint2: { value: \"\" },\n });\n const [countriesList, setcountriesList] = useState([]);\n const [foreigncountriesList, setforeigncountriesList] = useState([]);\n const [countryselected, setcountryselected] = useState({\n countryofbirth: { value: \"\" },\n nationality: { value: \"\" },\n countryofbirthjoint1: { value: \"\" },\n nationalityjoint1: { value: \"\" },\n countryofbirthjoint2: { value: \"\" },\n nationalityjoint2: { value: \"\" },\n });\n const [tax_resident, setTax_resident] = useState({\n primary: props.applicantparams.i_category === \"20\" ? \"yes\" : \"no\",\n joint1: props.applicantparams.i_category2 === \"20\" ? \"yes\" : \"no\",\n joint2: props.applicantparams.i_category3 === \"20\" ? \"yes\" : \"no\",\n });\n const [politically_exposed_applicant, setPolitically_Exposed_Applicant] =\n useState({ primary: \"no\", joint1: \"no\", joint2: \"no\" });\n const [politically_exposed_relative, setPolitically_Exposed_Relative] =\n useState({ primary: \"no\", joint1: \"no\", joint2: \"no\" });\n const [tax_resident_option, settax_resident_option] = useState({\n primary: { value: \"\" },\n joint1: { value: \"\" },\n joint2: { value: \"\" },\n });\n const [foreign_tax_id_no, setforeign_tax_id_no] = useState({\n primary: { value: \"\" },\n joint1: { value: \"\" },\n joint2: { value: \"\" },\n });\n const [openModal, setOpenModal] = useState(false);\n const [panverification, setPanverification] = useState(false);\n const checkReduxStore = () => {\n if (props.fatcaDetails.i_Occpn) {\n const { fatcaDetails } = props;\n const {\n i_Occpn,\n i_income,\n FCountryofBirth,\n FNationality,\n i_invpin,\n FPEP,\n FPREP,\n FTaxResident,\n FForeignTaxType,\n FForeignTaxId,\n i_SOccpn,\n i_Sincome,\n SCountryofBirth,\n SNationality,\n i_invpin2,\n SForeignTaxType,\n STaxResident,\n SForeignTaxId,\n SPEP,\n SPREP,\n i_TOccpn,\n i_Tincome,\n TCountryofBirth,\n TNationality,\n i_invpin3,\n TForeignTaxType,\n TTaxResident,\n TForeignTaxId,\n TPEP,\n TPREP,\n } = fatcaDetails;\n setCategoryOccupation((prev) => {\n return {\n ...prev,\n categoryoccupationprimary: { value: i_Occpn },\n };\n });\n setGross_Annual_Income((prev) => {\n return {\n ...prev,\n gross_annual_incomeprimary: { value: i_income },\n };\n });\n setcountryselected((prev) => {\n return {\n ...prev,\n countryofbirth: { value: FCountryofBirth },\n nationality: { value: FNationality },\n };\n });\n\n setPolitically_Exposed_Applicant((prev) => {\n return {\n ...prev,\n primary: FPEP,\n };\n });\n setPolitically_Exposed_Relative((prev) => {\n return {\n ...prev,\n primary: FPREP,\n };\n });\n setTax_resident((prev) => {\n return {\n ...prev,\n primary: FTaxResident,\n };\n });\n if (FTaxResident === \"yes\") {\n setforeign_tax_id_no((prev) => {\n return {\n ...prev,\n primary: { value: FForeignTaxId },\n };\n });\n settax_resident_option((prev) => {\n return {\n ...prev,\n primary: { value: FForeignTaxType },\n };\n });\n }\n\n if (!!props.applicantparams && !!props.applicantparams.i_pangno2) {\n setCategoryOccupation((prev) => {\n return {\n ...prev,\n categoryoccupationjoint1: { value: i_SOccpn },\n };\n });\n setGross_Annual_Income((prev) => {\n return {\n ...prev,\n gross_annual_incomejoint1: { value: i_Sincome },\n };\n });\n setcountryselected((prev) => {\n return {\n ...prev,\n countryofbirthjoint1: { value: SCountryofBirth },\n nationalityjoint1: { value: SNationality },\n };\n });\n setPolitically_Exposed_Applicant((prev) => {\n return {\n ...prev,\n joint1: SPEP,\n };\n });\n setPolitically_Exposed_Relative((prev) => {\n return {\n ...prev,\n joint1: SPREP,\n };\n });\n setTax_resident((prev) => {\n return {\n ...prev,\n joint1: STaxResident,\n };\n });\n if (STaxResident === \"yes\") {\n setforeign_tax_id_no((prev) => {\n return {\n ...prev,\n joint1: { value: SForeignTaxId },\n };\n });\n settax_resident_option((prev) => {\n return {\n ...prev,\n joint1: { value: SForeignTaxType },\n };\n });\n }\n }\n if (!!props.applicantparams && !!props.applicantparams.i_pangno3) {\n setCategoryOccupation((prev) => {\n return {\n ...prev,\n categoryoccupationjoint2: { value: i_TOccpn },\n };\n });\n setGross_Annual_Income((prev) => {\n return {\n ...prev,\n gross_annual_incomejoint2: { value: i_Tincome },\n };\n });\n setcountryselected((prev) => {\n return {\n ...prev,\n countryofbirthjoint2: { value: TCountryofBirth },\n nationalityjoint2: { value: TNationality },\n };\n });\n setPolitically_Exposed_Applicant((prev) => {\n return {\n ...prev,\n joint2: TPEP,\n };\n });\n setPolitically_Exposed_Relative((prev) => {\n return {\n ...prev,\n joint2: TPREP,\n };\n });\n setTax_resident((prev) => {\n return {\n ...prev,\n joint2: TTaxResident,\n };\n });\n if (TTaxResident === \"yes\") {\n setforeign_tax_id_no((prev) => {\n return {\n ...prev,\n joint2: { value: TForeignTaxId },\n };\n });\n settax_resident_option((prev) => {\n return {\n ...prev,\n joint2: { value: TForeignTaxType },\n };\n });\n }\n }\n }\n };\n \n useEffect(() => {\n window.scrollTo({\n top: 0,\n behavior: \"smooth\",\n });\n firstRender();\n console.log(\"fatca render\",tax_resident);\n }, []);\n const firstRender = async () => {\n await getLists();\n \n await prefillFormValues();\n checkReduxStore();\n };\n const getLists = async () => {\n setIsLoading(true);\n const countriesResponse = await props.getCountriesList();\n const Countries = countriesResponse.Dtinformation;\n const countriesList = Countries.map((country) => {\n return { label: country.country_name, value: country.country_name };\n });\n const ForeignCountrires = Countries.map((country) => {\n return { label: country.country_name, value: country.country_name };\n });\n setcountriesList(\n countriesList.length > 0\n ? countriesList\n : [{ label: \"India\", value: \"India\" }]\n );\n const RemomovingIndia = { label: \"India\", value: \"India\" };\n ForeignCountrires.splice(\n ForeignCountrires.findIndex((a) => a.value === RemomovingIndia.value),\n 1\n );\n setforeigncountriesList(ForeignCountrires);\n setIsLoading(false);\n };\n const prefillFormValues = async () => {\n if (!props.fatcaDetails.i_invpin) {\n if (\n (!!props.store_pan && props.store_pan.length > 0) ||\n props.applicantparams.typeofinvestor === \"M\"\n ) {\n const kycResponse = await props.getKycDetails({ pan: props.store_pan });\n if (!!kycResponse && kycResponse.DtData.length > 0) {\n const {\n country,\n pin,\n GrossAnnualIncome,\n app_occ,\n add1,\n add2,\n add3,\n state,\n city,\n } = kycResponse.DtData[0];\n setCategoryOccupation((prev) => {\n return {\n ...prev,\n categoryoccupationprimary: { value: app_occ },\n };\n });\n setGross_Annual_Income((prev) => {\n return {\n ...prev,\n gross_annual_incomeprimary: {\n value: /^[a-zA-Z]+$/.test(GrossAnnualIncome) ? GrossAnnualIncome : \"\",\n },\n };\n });\n \n const countryvalue =\n country.charAt(0).toUpperCase() + country.slice(1).toLowerCase();\n setcountryselected((prev) => {\n return {\n ...prev,\n nationality: { value: countryvalue },\n countryofbirth: { value: countryvalue },\n };\n });\n const address = add1 + add2 + add3;\n const convertingcountry = country.toLowerCase();\n const restOfGreeting = convertingcountry.slice(1);\n const convertcountry = convertingcountry[0]?.toUpperCase();\n const newGreeting = convertcountry + restOfGreeting;\n const Address = {\n state: state,\n city: city,\n country: newGreeting,\n pincode: pin,\n address: address,\n };\n props.storeAddress(Address);\n setcountryselected({\n ...countryselected,\n nationality: { value: countryvalue },\n countryofbirth: { value: countryvalue },\n });\n }\n }\n }\n // setIsLoading(true)\n if (\n !!props.applicantparams.i_pangno2 &&\n props.applicantparams.i_pangno2.length > 0\n ) {\n const kycResponse = await props.getKycDetails({\n pan: props.applicantparams.i_pangno2,\n });\n // const { DtData } = !!kycResponse ?kycResponse :[]\n // const kycDetails = !!DtData[0] ?DtData[0] :{} ;\n if (!!kycResponse) {\n const { country, pin, GrossAnnualIncome, app_occ } =\n kycResponse.DtData[0];\n setCategoryOccupation((prev) => {\n return {\n ...prev,\n categoryoccupationjoint1: { value: app_occ },\n };\n });\n // setGross_Annual_Income((prev) => {\n // return {\n // ...prev,\n // gross_annual_incomejoint1: { value: GrossAnnualIncome },\n // };\n // });\n const countryvalue =\n country.charAt(0).toUpperCase() + country.slice(1).toLowerCase();\n setcountryselected((prev) => {\n return {\n ...prev,\n nationalityjoint1: { value: countryvalue },\n countryofbirthjoint1: { value: countryvalue },\n };\n });\n }\n }\n if (\n !!props.applicantparams.i_pangno3 &&\n props.applicantparams.i_pangno3.length > 0\n ) {\n const kycResponse = await props.getKycDetails({\n pan: props.applicantparams.i_pangno3,\n });\n if (!!kycResponse) {\n const { country, pin, GrossAnnualIncome, app_occ } =\n kycResponse.DtData[0];\n setCategoryOccupation((prev) => {\n return {\n ...prev,\n categoryoccupationjoint2: { value: app_occ },\n };\n });\n setGross_Annual_Income((prev) => {\n return {\n ...prev,\n gross_annual_incomejoint2: { value: GrossAnnualIncome },\n };\n });\n const countryvalue =\n country.charAt(0).toUpperCase() + country.slice(1).toLowerCase();\n setcountryselected((prev) => {\n return {\n ...prev,\n nationalityjoint2: { value: countryvalue },\n countryofbirthjoint2: { value: countryvalue },\n };\n });\n }\n }\n };\n const handleRadioButton = (label) => (event) => {\n if (label === \"TaxresidentPrimary\") {\n setTax_resident((prev) => {\n return {\n ...prev,\n primary: event.target.value,\n };\n });\n }\n if (label === \"PoliticallyExposedPersonPrimary\") {\n setPolitically_Exposed_Applicant((prev) => {\n return {\n ...prev,\n primary: event.target.value,\n };\n });\n }\n if (label === \"PoliticallyExposedRelativePrimary\") {\n setPolitically_Exposed_Relative((prev) => {\n return {\n ...prev,\n primary: event.target.value,\n };\n });\n }\n if (label === \"TaxresidentPrimaryjoint1\") {\n setTax_resident((prev) => {\n return {\n ...prev,\n joint1: event.target.value,\n };\n });\n }\n if (label === \"PoliticallyExposedPersonJoint1\") {\n setPolitically_Exposed_Applicant((prev) => {\n return {\n ...prev,\n joint1: event.target.value,\n };\n });\n }\n if (label === \"PoliticallyExposedRelativeJoint1\") {\n setPolitically_Exposed_Relative((prev) => {\n return {\n ...prev,\n joint1: event.target.value,\n };\n });\n }\n if (label === \"TaxresidentPrimaryjoint2\") {\n setTax_resident((prev) => {\n return {\n ...prev,\n joint2: event.target.value,\n };\n });\n }\n if (label === \"PoliticallyExposedPersonJoint2\") {\n setPolitically_Exposed_Applicant((prev) => {\n return {\n ...prev,\n joint2: event.target.value,\n };\n });\n }\n if (label === \"PoliticallyExposedRelativeJoint2\") {\n setPolitically_Exposed_Relative((prev) => {\n return {\n ...prev,\n joint2: event.target.value,\n };\n });\n }\n };\n const submit = async () => {\n if (categoryoccupation.categoryoccupationprimary.value == \"\") {\n setCategoryOccupation({\n ...categoryoccupation,\n categoryoccupationprimary: {\n value:'',\n isError: true,\n errorMessage: \"Select the occupation\",\n },\n });\n return;\n }\n if (gross_annual_income.gross_annual_incomeprimary.value == \"\") {\n setGross_Annual_Income({\n ...gross_annual_income,\n gross_annual_incomeprimary: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the Annual Income\",\n },\n });\n return;\n }\n if (countryselected.countryofbirth.value == \"\") {\n setcountryselected({\n ...countryselected,\n ...countryselected,\n countryofbirth: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the Country of Birth\",\n },\n });\n return;\n }\n if (countryselected.nationality.value == \"\") {\n setcountryselected({\n ...countryselected,\n nationality: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the Nationality\",\n },\n });\n return;\n }\n if (\n tax_resident.primary == \"yes\" &&\n tax_resident_option.primary.value == \"\"\n ) {\n settax_resident_option({\n ...tax_resident_option,\n primary: {\n isError: true,\n errorMessage: \"Select the Tax Resident\",\n },\n });\n return;\n }\n if (\n tax_resident.primary == \"yes\" &&\n foreign_tax_id_no.primary.value == \"\"\n ) {\n setforeign_tax_id_no({\n ...foreign_tax_id_no,\n primary: {\n isError: true,\n errorMessage: \"Enter the Foreign Tax ID No\",\n },\n });\n return;\n }\n if (!!props.applicantparams && !!props.applicantparams?.i_pangno2) {\n if (!categoryoccupation.categoryoccupationjoint1.value) {\n setCategoryOccupation({\n ...categoryoccupation,\n categoryoccupationjoint1: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the occupation\",\n },\n });\n return;\n }\n if (!gross_annual_income.gross_annual_incomejoint1.value) {\n setGross_Annual_Income({\n ...gross_annual_income,\n gross_annual_incomejoint1: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the Annual Income\",\n },\n });\n return;\n }\n if (!countryselected.countryofbirthjoint1.value) {\n setcountryselected({\n ...countryselected,\n countryofbirthjoint1: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the Country of Birth\",\n },\n });\n return;\n }\n if (!countryselected.nationalityjoint1.value) {\n setcountryselected({\n ...countryselected,\n nationalityjoint1: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the Nationality\",\n },\n });\n return;\n }\n if (\n tax_resident.joint1 == \"yes\" &&\n !tax_resident_option.joint1.value\n ) {\n settax_resident_option({\n ...tax_resident_option,\n joint1: {\n isError: true,\n errorMessage: \"Select the Tax Resident\",\n },\n });\n return;\n }\n if (\n tax_resident.joint1 == \"yes\" &&\n !foreign_tax_id_no.joint1.value\n ) {\n setforeign_tax_id_no({\n ...foreign_tax_id_no,\n joint1: {\n isError: true,\n errorMessage: \"Enter the Foreign Tax ID No\",\n },\n });\n return;\n }\n }\n if (!!props.applicantparams && !!props.applicantparams?.i_pangno3) {\n if (!categoryoccupation.categoryoccupationjoint2.value) {\n setCategoryOccupation({\n ...categoryoccupation,\n categoryoccupationjoint2: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the occupation\",\n },\n });\n return;\n }\n if (!gross_annual_income.gross_annual_incomejoint2.value) {\n setGross_Annual_Income({\n ...gross_annual_income,\n gross_annual_incomejoint2: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the Annual Income\",\n },\n });\n return;\n }\n if (!countryselected.countryofbirthjoint2.value) {\n setcountryselected({\n ...countryselected,\n countryofbirthjoint2: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the Country of Birth\",\n },\n });\n return;\n }\n if (!countryselected.nationalityjoint2.value) {\n setcountryselected({\n ...countryselected,\n nationalityjoint2: {\n value:\"\",\n isError: true,\n errorMessage: \"Select the Nationality\",\n },\n });\n return;\n }\n if (\n tax_resident.joint2 == \"yes\" &&\n !tax_resident_option.joint2.value\n ) {\n settax_resident_option({\n ...tax_resident_option,\n joint2: {\n isError: true,\n errorMessage: \"Select the Tax Resident\",\n },\n });\n return;\n }\n if (\n tax_resident.joint2 == \"yes\" &&\n !foreign_tax_id_no.joint2.value\n ) {\n setforeign_tax_id_no({\n ...foreign_tax_id_no,\n joint2: {\n isError: true,\n errorMessage: \"Enter the Foreign Tax ID No\",\n },\n });\n return;\n }\n }\n if (panverification) {\n setOpenModal(!openModal);\n return;\n }\n setIsLoading(true);\n const fatcaDetails = {\n i_Occpn: categoryoccupation.categoryoccupationprimary.value,\n i_income: gross_annual_income.gross_annual_incomeprimary.value,\n FCountryofBirth: countryselected.countryofbirth.value,\n FNationality: countryselected.nationality.value,\n FPEP: politically_exposed_applicant.primary,\n FPREP: politically_exposed_relative.primary,\n FTaxResident: tax_resident.primary,\n FForeignTaxType:\n tax_resident.primary == \"yes\" ? tax_resident_option.primary.value : \"\",\n FForeignTaxId:\n tax_resident.primary == \"yes\" ? foreign_tax_id_no.primary.value : \"\",\n ...(props.applicantparams.i_genMOH === \"4\" &&\n props.applicantparams.i_pangno2 && {\n i_SOccpn: categoryoccupation.categoryoccupationjoint1.value,\n i_Sincome: gross_annual_income.gross_annual_incomejoint1.value,\n SCountryofBirth: countryselected.countryofbirthjoint1.value,\n SNationality: countryselected.nationalityjoint1.value,\n SForeignTaxType:\n tax_resident.joint1 == \"yes\"\n ? tax_resident_option.joint1.value\n : \"\",\n STaxResident: tax_resident.joint1,\n SForeignTaxId:\n tax_resident.joint1 == \"yes\" ? foreign_tax_id_no.joint1.value : \"\",\n SPEP: politically_exposed_applicant.joint1,\n SPREP: politically_exposed_relative.joint1,\n }),\n ...(props.applicantparams.i_genMOH === \"4\" &&\n props.applicantparams.i_pangno3 && {\n i_TOccpn: categoryoccupation.categoryoccupationjoint2.value,\n i_Tincome: gross_annual_income.gross_annual_incomejoint2.value,\n TCountryofBirth: countryselected.countryofbirthjoint2.value,\n TNationality: countryselected.nationalityjoint2.value,\n TForeignTaxType:\n tax_resident.joint2 == \"yes\"\n ? tax_resident_option.joint2.value\n : \"\",\n TTaxResident: tax_resident.joint2,\n TForeignTaxId:\n tax_resident.joint2 == \"yes\" ? foreign_tax_id_no.joint2.value : \"\",\n TPEP: politically_exposed_applicant.joint2,\n TPREP: politically_exposed_relative.joint2,\n }),\n };\n props.storeFatcaDetails(fatcaDetails);\n props.changeInMode(false)\n setIsLoading(false);\n props.history.replace(\"/new-investor-transaction/nominee-details\");\n };\n\n return (\n <>\n \n \n
\n
Primary Holder : {props.applicantparams?.i_pangno}/{props.applicantparams?.i_fname}
\n \n
\n \n setCategoryOccupation({\n ...categoryoccupation,\n categoryoccupationprimary: { value: event.target.value },\n })\n }\n isError={categoryoccupation.categoryoccupationprimary.isError}\n errorMessage={\n categoryoccupation.categoryoccupationprimary.errorMessage\n }\n\n >\n {Occupations.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
{\" \"}\n
\n \n setGross_Annual_Income({\n ...gross_annual_income,\n gross_annual_incomeprimary: { value: event.target.value },\n })\n }\n isError={gross_annual_income.gross_annual_incomeprimary.isError}\n errorMessage={\n gross_annual_income.gross_annual_incomeprimary.errorMessage\n }\n\n >\n {Gross_Annual_income.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n
\n \n setcountryselected({\n ...countryselected,\n countryofbirth: { value: event.target.value },\n })\n }\n isError={countryselected.countryofbirth.isError}\n errorMessage={countryselected.countryofbirth.errorMessage}\n >\n {countriesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n
\n \n setcountryselected({\n ...countryselected,\n nationality: { value: event.target.value },\n })\n }\n // isError={countryselected.nationality.isError}\n // errorMessage={countryselected.nationality.errorMessage}\n isError={countryselected.nationality.isError}\n errorMessage={countryselected.nationality.errorMessage}\n >\n {countriesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n \n {tax_resident.primary == \"yes\" && (\n \n
\n \n settax_resident_option({\n ...tax_resident_option,\n primary: { value: event.target.value },\n })\n }\n fatcawidth={\"true\"}\n \n isError={tax_resident_option.primary.isError}\n errorMessage={tax_resident_option.primary.errorMessage}\n >\n {foreigncountriesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n
\n \n setforeign_tax_id_no({\n ...foreign_tax_id_no,\n primary: { value: event.target.value },\n })\n }\n fatcawidth={\"true\"}\n isShowError={foreign_tax_id_no.primary.isError}\n errorMessage={tax_resident_option.primary.errorMessage}\n />\n
\n
\n )}\n \n \n \n \n {!!props.applicantparams.i_pangno2 &&\n props.applicantparams.i_pangno2.length > 0 && (\n
\n
First Joint Holder : {props.applicantparams?.i_pangno2}/{props.applicantparams?.i_jholder1}
\n \n
\n \n setCategoryOccupation({\n ...categoryoccupation,\n categoryoccupationjoint1: { value: event.target.value },\n })\n }\n isError={\n categoryoccupation.categoryoccupationjoint1.isError\n }\n errorMessage={\n categoryoccupation.categoryoccupationjoint1.errorMessage\n }\n >\n {Occupations.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
{\" \"}\n
\n \n setGross_Annual_Income({\n ...gross_annual_income,\n gross_annual_incomejoint1: {\n value: event.target.value,\n },\n })\n }\n isError={\n gross_annual_income.gross_annual_incomejoint1.isError\n }\n errorMessage={\n gross_annual_income.gross_annual_incomejoint1.errorMessage\n }\n >\n {Gross_Annual_income.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n
\n \n setcountryselected({\n ...countryselected,\n countryofbirthjoint1: { value: event.target.value },\n })\n }\n isError={countryselected.countryofbirthjoint1.isError}\n errorMessage={\n countryselected.countryofbirthjoint1.errorMessage\n }\n >\n {countriesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n
\n ({\n label: item.label,\n value: item.value,\n }))}\n value={\n countryselected.nationalityjoint1.value\n ? countryselected.nationalityjoint1.value\n : \"\"\n }\n handleChange={(event) =>\n setcountryselected({\n ...countryselected,\n nationalityjoint1: { value: event.target.value },\n })\n }\n isError={countryselected.nationalityjoint1.isError}\n errorMessage={\n countryselected.nationalityjoint1.errorMessage\n }\n >\n {countriesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n \n {tax_resident.joint1 == \"yes\" && (\n \n
\n \n settax_resident_option({\n ...tax_resident_option,\n joint1: { value: event.target.value },\n })\n }\n fatcawidth={\"true\"}\n isError={tax_resident_option.joint1.isError}\n errorMessage={tax_resident_option.joint1.errorMessage}\n >\n {foreigncountriesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n
\n \n setforeign_tax_id_no({\n ...foreign_tax_id_no,\n joint1: { value: event.target.value },\n })\n }\n fatcawidth={\"true\"}\n isShowError={foreign_tax_id_no.joint1.isError}\n errorMessage={tax_resident_option.joint1.errorMessage}\n />\n
\n
\n )}\n \n \n \n \n )}\n\n {!!props.applicantparams.i_pangno3 &&\n props.applicantparams.i_pangno3.length > 0 && (\n
\n
Second Joint Holder : {props.applicantparams?.i_pangno3}/{props.applicantparams?.i_jholder2}
\n \n
\n \n setCategoryOccupation({\n ...categoryoccupation,\n categoryoccupationjoint2: { value: event.target.value },\n })\n }\n isError={\n categoryoccupation.categoryoccupationjoint2.isError\n }\n errorMessage={\n categoryoccupation.categoryoccupationjoint2.errorMessage\n }\n >\n {Occupations.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
{\" \"}\n
\n \n setGross_Annual_Income({\n ...gross_annual_income,\n gross_annual_incomejoint2: {\n value: event.target.value,\n },\n })\n }\n isError={\n gross_annual_income.gross_annual_incomejoint2.isError\n }\n errorMessage={\n gross_annual_income.gross_annual_incomejoint2.errorMessage\n }\n \n >\n {Gross_Annual_income.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n
\n \n setcountryselected({\n ...countryselected,\n countryofbirthjoint2: { value: event.target.value },\n })\n }\n isError={countryselected.countryofbirthjoint2.isError}\n errorMessage={\n countryselected.countryofbirthjoint2.errorMessage\n }\n >\n {countriesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n
\n ({\n label: item.label,\n value: item.value,\n }))}\n value={\n countryselected.nationalityjoint2.value\n ? countryselected.nationalityjoint2.value\n : \"\"\n }\n handleChange={(event) =>\n setcountryselected({\n ...countryselected,\n nationalityjoint2: { value: event.target.value },\n })\n }\n isError={countryselected.nationalityjoint2.isError}\n errorMessage={\n countryselected.nationalityjoint2.errorMessage\n }\n >\n {countriesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n \n {tax_resident.joint2 == \"yes\" && (\n \n
\n \n settax_resident_option({\n ...tax_resident_option,\n joint2: { value: event.target.value },\n })\n }\n fatcawidth={\"true\"}\n isError={tax_resident_option.joint2.isError}\n errorMessage={tax_resident_option.joint2.errorMessage}\n >\n {foreigncountriesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n
\n \n setforeign_tax_id_no({\n ...foreign_tax_id_no,\n joint2: { value: event.target.value },\n })\n }\n fatcawidth={\"true\"}\n isShowError={foreign_tax_id_no.joint2.isError}\n errorMessage={tax_resident_option.joint2.errorMessage}\n />\n
\n
\n )}\n \n \n \n \n )}\n
\n
\n \n props.history.replace(\"/new-investor-transaction/investor-details\")\n }\n >\n BACK\n \n \n PROCEED\n \n
\n \n );\n};\nexport default connect(\n ({ newinvestor,dashboard }) => {\n const { applicantparams, fatcaDetails, store_pan } = newinvestor;\n const { ReinitiateData } = dashboard;\n\n return {\n applicantparams,\n fatcaDetails,\n store_pan,\n ReinitiateData\n };\n },\n {\n storeFatcaDetails,\n getCountriesList,\n getStatesList,\n storeApplicantParams,\n getKycDetails,\n checkKyc,\n getCitiesByState,\n getRelationShipList,\n storeAddress,\n changeInMode\n }\n)(FatcaDetails);\n","import * as React from \"react\";\nexport const Termsandconditions = () => {\n return (\n <>\n

\n The ARN holder has disclosed to me/us all the commissions in the form\n of trail commission or any other mode, payable to him for the\n different competing Schemes of various Mutual Funds from amongst which\n the Scheme is being recommended to me/us.\n

\n

\n Disclaimer: The Registrar of the AMC will allot the number of units\n for the total investment amount. The number of Units allotted by the\n Registrar will reflect in your online account statement within 2\n working days.\n

\n \n );\n};\n","import { MenuItem, Checkbox } from \"@material-ui/core\";\nimport Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport CustomizedDialogs from \"../../customModal\";\nimport { Input } from \"../../../forms/input\";\nimport React, { useState, useEffect, useReducer } from \"react\";\nimport { connect, useDispatch } from \"react-redux\";\nimport { Termsandconditions } from \"./lib/Termsandconditions\";\nimport {\n getNewPurchaseFundList,\n validateSubBroker,\n submitLumpsumDetails,\n storeSchemeDetails,\n clearingFirstTimeInvestorJourney,\n storeLumpsum,\n storeLumpsumDetails,\n} from \"shared/store/actions\";\nimport {\n GET_CATEGORY_LIST,\n GET_CATEGORY_LIST_SUCCESS,\n GET_CATEGORY_LIST_FAILED,\n REGULAR,\n STORE_LUMPSUM,\n} from \"shared/store/types\";\nimport IntegrationReactSelect from \"../../../forms/autoCompleteInput\";\nimport { RadioButton } from \"./lib/Radiobutton\";\nimport CustomLoader from \"../../../forms/Loader\";\nimport { format } from \"date-fns\";\nimport CustomizedSelect from \"../customizedSelect\";\nimport CardComponent from \"./lib/CardComponent\";\nconst Lumpsum = (props) => {\n const initialState = {\n Scheme: { value: \"\" },\n Category: { value: \"\" },\n \"Scheme Plan\": \"\",\n \"Scheme Option\": \"\",\n Combo: false,\n comboDisclaimer: \"\",\n comboLabel:\"\",\n Amount: { value: \"\" },\n \"Sub Broker Code\": { value: \"\" },\n planValue: \"\",\n optionValue: \"\",\n schemeValue: \"\",\n EUIN: \"\",\n EUINNO: { value: \"no\" },\n schemeList: [],\n euinList: [],\n CategoryList: [],\n multiples: \"\",\n };\n const [formValues, setFormValues] = useReducer(\n (preValues, newValues) => ({ ...preValues, ...newValues }),\n initialState\n );\n const InputFields = [\n [\n {\n name: \"Category\",\n type: \"select\",\n placeholder: \"Select Category\",\n isMandatory: true,\n listName: \"CategoryList\",\n },\n\n {\n name: \"Scheme\",\n type: \"Searchselect\",\n placeholder: \"Select Scheme\",\n isMandatory: true,\n listName: \"schemeList\",\n },\n {\n name: \"Scheme Plan\",\n type: \"text\",\n placeholder: \"Select Scheme Plan\",\n isMandatory: true,\n listName: \"schemePlanList\",\n disabled: true,\n display: \"none\",\n },\n ],\n [\n {\n name: \"Scheme Option\",\n type: \"text\",\n placeholder: \"Select Scheme Option\",\n isMandatory: true,\n listName: \"schemeOptionList\",\n disabled: true,\n display: \"none\",\n },\n {\n name: \"Do you want to intentionally leave the EUIN box blank?\",\n type: \"radio\",\n },\n {\n name: \"EUIN\",\n type: \"Searchselect\",\n placeholder: \"Select EUIN\",\n isMandatory: true,\n listName: \"euinList\",\n },\n ],\n [\n {\n name: \"Amount\",\n type: \"number\",\n placeholder: \"Enter Amount\",\n isMandatory: true,\n },\n ],\n [\n {\n name: \"Combo\",\n type: \"combo\",\n },\n ],\n ];\n const [dialog, setDialog] = useState({ open: false, appno: \"\" });\n const [isLoading, setIsLoading] = useState(false);\n const [isChecked, setIsChecked] = useState(false);\n const fetchSchemeList = async () => {\n try {\n const params = {\n plntype: \"Regular\",\n opt: \"S\",\n schemetype: props.lumpsum.Category?.value || formValues.Category?.value,\n fund: \"176\",\n };\n const response = await props.getNewPurchaseFundList(params);\n const { Dtinformation } = response;\n const schemeList = Dtinformation.map((item) => ({\n value: item.Scheme_Plan,\n label: item.Scheme_Desc,\n plan: item.PlanDesc,\n option: item.fm_optiondesc,\n planValue: item.Scheme_Plan.split(\"~\")[2],\n optionValue: item.Scheme_Plan.split(\"~\")[3],\n schemeValue: item.Scheme_Plan.split(\"~\")[1],\n minAmt: item.MinAmt,\n multiples: item.multiples,\n combo: item.combo_flag,\n comboDisclaimer: item.combo_disclaimer,\n comboLabel:item.combo_lable,\n\n }));\n setFormValues({\n schemeList: schemeList.filter((item) => {\n return (\n item.plan.toLowerCase() === \"regular\" && item.schemeValue !== \"EB\"\n );\n }),\n });\n if (!!props.lumpsum.Scheme) {\n setFormValues({ multiples: schemeList.find((item) => item.value === props.lumpsum?.Scheme?.value)?.multiples || 1 });\n }\n } catch (e) {\n setFormValues({ schemeList: [] });\n console.log(e);\n } finally {\n setIsLoading(false);\n }\n };\n const fetchEuinList = async () => {\n try {\n setIsLoading(true);\n const response = await props.validateSubBroker({\n Fund: \"176\",\n SubAgentCd: \"\",\n AgentCd: props.token,\n });\n const { DtData } = response;\n const euinList = DtData.map((item) => ({\n value: item.abm_name,\n label: item.abm_agent,\n }));\n setFormValues({ euinList: euinList });\n } catch (e) {\n console.log(e);\n } finally {\n setIsLoading(false);\n }\n };\n const fetchCategoryList = async () => {\n try {\n setIsLoading(true);\n let params = { plntype: REGULAR };\n params = { ...params, opt: \"AT\", fund: \"176\", customfund: \"176\" };\n const types = [\n GET_CATEGORY_LIST,\n GET_CATEGORY_LIST_SUCCESS,\n GET_CATEGORY_LIST_FAILED,\n ];\n const response = await props.getNewPurchaseFundList(params, types);\n const { Dtinformation } = response;\n const categoryList = Dtinformation.map((item) => ({\n value: item.fm_subcategory,\n label: item.fm_subcategory,\n }));\n setFormValues({ CategoryList: categoryList });\n } catch (e) {\n console.log(e);\n } finally {\n setIsLoading(false);\n }\n };\n useEffect(() => {\n fetchCategoryList();\n fetchEuinList();\n if (!!props.lumpsum.Scheme) {\n fetchSchemeList();\n }\n fetchFromstore();\n }, []);\n useEffect(() => {\n if(!!formValues.Category.value){\n fetchSchemeList();\n }\n }, [formValues.Category.value]);\n useEffect(() => {\n props.storeLumpsum({\n ...formValues,\n type: \"lumpsum\",\n // ct: formValues.Category.value ? formValues.Category.value : \"\",\n })\n } , [formValues.EUINNO.value, formValues.EUIN.value , formValues.Scheme.value , formValues.Category.value , formValues.Amount.value,formValues.Combo,formValues.comboDisclaimer]);\n\n const fetchFromstore = () => {\n \n const { Category, Scheme, Amount, EUINNO, multiples, minimumAmount, EUIN, schemeList,Combo,comboDisclaimer,comboLabel } = props.lumpsum;\n if (!!props.lumpsum?.type && props.lumpsum.type !== \"lumpsum\") {\n return\n }\n const scheme = schemeList ? schemeList.find((item) => item.value === Scheme?.value?.value) : {};\n setFormValues({\n ...formValues,\n Category: { value: Category?.value },\n Scheme: { value: Scheme?.value },\n Amount: { value: Amount?.value || Amount},\n EUINNO: { value: EUINNO?.value ? EUINNO.value : \"no\" },\n multiples: multiples || 1,\n EUIN: EUIN?.value ? { value: EUIN.value } : { value: \"\" },\n schemeList: schemeList ? schemeList : [],\n \"Scheme Plan\": { value: scheme?.plan },\n \"Scheme Option\": { value: scheme?.option },\n planValue: scheme?.planValue,\n optionValue: scheme?.optionValue,\n schemeValue: scheme?.schemeValue,\n minimumAmount: scheme?.minAmt,\n multiples: scheme?.multiples || 1,\n Combo:Combo,\n comboDisclaimer:!!comboDisclaimer?comboDisclaimer:\"\",\n comboLabel:!!comboLabel?comboLabel:\"\",\n });\n }\n\n const handleScheme = (label) => (event) => {\n const { schemeList } = formValues;\n if (label === \"Scheme\") {\n const scheme = schemeList.find((item) => item.value === event.value);\n props.storeLumpsum ({[label]:event,multiples:scheme.multiples})\n const commonValues = {\n Scheme: { value: event },\n \"Scheme Plan\": { value: scheme.plan },\n \"Scheme Option\": { value: scheme.option },\n planValue: scheme.planValue,\n optionValue: scheme.optionValue,\n schemeValue: scheme.schemeValue,\n minimumAmount: scheme.minAmt,\n multiples: scheme.multiples || 1,\n };\n \n setFormValues({\n ...commonValues,\n ...(scheme.combo === \"Y\" && !!scheme.comboDisclaimer\n ? { Combo: false, comboDisclaimer: scheme.comboDisclaimer,comboLabel:scheme.comboLabel }\n : { comboDisclaimer: \"\",comboLabel:\"\" }\n\n ),\n });\n }\n if (label === \"EUIN\") {\n setFormValues({\n EUIN: { value: event },\n });\n }\n };\n const handleChange = (label) => (event) => {\n const value = label !== \"Scheme\" ? event.target.value : event.value;\n props.storeLumpsum({ [label]: value })\n switch (label) {\n case \"Category\":\n setFormValues({\n [label]: { value },\n Scheme: { value: \"\" },\n \"Scheme Plan\": \"\",\n \"Scheme Option\": \"\",\n Amount: { value: \"\" },\n EUIN: \"\",\n Combo:false,\n comboDisclaimer:\"\",\n comboLabel:\"\"\n });\n break;\n case \"radioValue\": \n setFormValues({\n EUINNO : {value: formValues.EUINNO.value === \"no\" ? \"yes\" : \"no\"}\n })\n break;\n case \"Combo\": \n setFormValues({\n Combo : !formValues.Combo\n })\n break;\n case \"Amount\":\n if (parseInt(value) < parseInt(formValues.minimumAmount)) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage:\n \" Amount should be greater than or equal to \" +\n formValues.minimumAmount,\n },\n });\n } else if (parseInt(value) % parseInt(formValues.multiples) !== 0) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage:\n \"Amount should be multiple of \" + formValues.multiples,\n },\n });\n } else {\n setFormValues({ [label]: { value } });\n }\n break;\n default:\n setFormValues({ [label]: { value } });\n }\n };\n const handleBlur = (label) => (event) => {\n const value = event.target.value;\n props.storeLumpsum({ [label]: value })\n }\n const closeModel = () => {\n props.history.push(\"/new-transaction\");\n };\n const gotoTransactionTypes = () => {\n props.history.push(\"/\");\n };\n const dispatch = useDispatch();\n const submit = async () => {\n if (!formValues.Category.value) {\n setFormValues({\n Category: {\n value: \"\",\n isError: true,\n errorMessage: \" Category is Mandatory\",\n },\n });\n return;\n } else if (!formValues.Scheme.value) {\n setFormValues({\n Scheme: {\n value: \"\",\n isError: true,\n errorMessage: \" Scheme is Mandatory\",\n },\n });\n return;\n } else if (formValues.EUINNO.value === \"no\" && !formValues.EUIN.value) {\n setFormValues({\n EUIN: {\n value: \"\",\n isError: true,\n errorMessage: \" EUIN is Mandatory\",\n },\n });\n return;\n } else if (!formValues.Amount.value) {\n setFormValues({\n Amount: {\n value: \"\",\n isError: true,\n errorMessage: \" Amount is Mandatory\",\n },\n });\n return;\n } else if (!isChecked) {\n alert(\"Please accept the terms and conditions to proceed\");\n return;\n } else if (formValues.Amount.value < formValues.minimumAmount) {\n setFormValues({\n Amount: {\n value: formValues.Amount.value,\n isError: true,\n errorMessage:\n \" Amount should be greater than or equal to \" +\n formValues.minimumAmount,\n },\n });\n return;\n } else if (formValues.Amount.value % formValues.multiples !== 0) {\n setFormValues({\n Amount: {\n value: formValues.Amount.value,\n isError: true,\n errorMessage:\n \"Amount should be a multiple of \" + formValues.multiples,\n },\n });\n return;\n } else {\n if (!!formValues.Combo) {\n if (window.confirm(\"You have opted to do a Purchase cum Switch. Do you want to proceed?\")) {\n } else {\n return;\n }\n }\n setIsLoading(true);\n const schemedetails = {\n category: formValues.Category.value,\n i_scheme: formValues.schemeValue,\n schemevalue: formValues.Scheme.value.label,\n i_plan: formValues.planValue,\n i_option: formValues.optionValue,\n i_EUINno: formValues.EUINNO.value === \"no\" ? formValues.EUIN.value.value : \"\",\n i_amount: formValues.Amount.value,\n i_disitributorid: props.token,\n };\n props.storeSchemeDetails({\n ...formValues,\n type: \"lumpsum\",\n ct: formValues.Category.value,\n });\n const paramsLumpsum = {\n ...props.applicantparams,\n ...props.fatcaDetails,\n ...props.investmentparams,\n ...props.nomineDetails,\n ...schemedetails,\n i_trtype: \"NEW\",\n i_appldt: format(new Date(), \"MM/dd/yyyy\"),\n i_chqdt: format(new Date(), \"MM/dd/yyyy\"),\n i_entby: props.userId,\n i_bankadd2: \" -\",\n i_bankadd3: \" -\",\n Invdistflag: \"S\",\n CustomFund: \"176\",\n i_fund: \"176\",\n combo_flag:!!formValues.Combo?\"Y\":\"N\",\n };\n props.storeLumpsumDetails(paramsLumpsum)\n props.history.replace(\"/new-investor-transaction/confirmation\", {\n type: \"lumpsum\"\n });\n setIsLoading(false);\n }\n };\n return (\n <>\n \n \n <>\n {InputFields.map((section, index) => (\n
\n {section.map((field) => (\n \n {field.type === \"select\" ? (\n \n {formValues[field.listName].map((i, index) => (\n \n {i.label}\n \n ))}\n \n ) :field.type === \"combo\" ? (\n
\n {!!formValues.comboDisclaimer && (\n \n \n \n {formValues.comboLabel}\n
\n
\n )}\n {!!formValues.comboDisclaimer && (\n \n {\" \"}\n {formValues.comboDisclaimer}\n \n )}\n \n ) :\n field.type === \"Searchselect\" || field.type === \"radio\" ? (\n <>\n
\n
\n {field.name === \"Scheme\"\n ? \"Scheme\"\n : (field.name === \"EUIN\" && formValues.EUINNO.value === \"no\")\n ? \"EUIN Declaration\" : (field.name === \"EUIN\" && formValues.EUINNO.value !== \"no\") ? \"\" : \"Do you want to intentionally leave the EUIN box blank?\"}\n
\n {field.name ===\n \"Do you want to intentionally leave the EUIN box blank?\" && (\n <>\n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
YES
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
NO
\n
\n \n \n )}\n {(field.type !== \"radio\") && ((field.name !== \"EUIN\" || formValues.EUINNO.value === \"no\") ? (\n ({\n label: i.label,\n value: i.value,\n }))}\n value={formValues[field.name].value}\n placeholder={`Select ${field.name}`}\n handleChange={handleScheme(field.name)}\n onBlur={handleBlur(field.name)}\n disabled={field.disabled}\n isError={formValues[field.name].isError}\n errorMessage={formValues[field.name].errorMessage}\n />\n ) : (\n
\n I/We hereby confirm that the EUIN box has been intentionally left\n the blank by me/us as this is an 'execution-only' transaction\n without any interaction or advice by any personnel of the above\n distributor or notwithstanding the advice of in-appropriateness,if\n any provided by any personnel of the distributor and the distributor\n has not charged any advisory fees on this transaction\n
\n ))}\n
\n {field.name === \"Amount\" && (\n Minimum Amount : ₹ {formValues.minimumAmount}\n )}\n \n )\n : (\n <>\n
\n \n
\n {field.name === \"Amount\" && (\n \n Minimum Amount : ₹ {formValues.minimumAmount}\n \n )}\n \n )}\n \n ))}\n \n ))}\n <>\n setIsChecked((p) => !p)}\n checked={isChecked}\n />\n \n I/We have read and understood the contents of the Offer Document(s),\n Load Structure(s) of the respective Scheme(s) and agree to abide by\n the terms, conditions, rules and regulations of the respective\n Scheme(s).\n \n \n \n
\n
\n \n props.history.push(\"/new-investor-transaction/bank-details\")\n }\n >\n BACK\n \n \n SUBMIT\n \n \n
\n \n );\n};\nexport default connect(\n ({ authReducer, transactions, newinvestor, dashboard }) => {\n const { token, userId } = authReducer;\n const { euinList } = transactions;\n const {\n schemeDetails,\n fatcaDetails,\n applicantparams,\n investmentparams,\n nomineDetails,\n lumpsum,\n } = newinvestor;\n return {\n schemeDetails,\n token,\n userId,\n euinList,\n fatcaDetails,\n applicantparams,\n investmentparams,\n nomineDetails,\n lumpsum,\n };\n },\n {\n getNewPurchaseFundList,\n validateSubBroker,\n submitLumpsumDetails,\n storeSchemeDetails,\n clearingFirstTimeInvestorJourney,\n storeLumpsum,\n storeLumpsumDetails,\n }\n)(Lumpsum);\n","import React, { Component } from \"react\";\nimport { withStyles } from \"@material-ui/core/styles\";\nimport { dashboardStyles } from \"../appCss\";\nimport PropTypes from \"prop-types\";\nimport Card from \"@material-ui/core/Card\";\nimport CardContent from \"@material-ui/core/CardContent\";\nimport { BUILD_URL } from \"../home\";\nimport { connect } from \"react-redux\";\nimport CustomLoading from \"../CustomLoader\";\n\nclass DisplayCards extends Component {\n render() {\n const { classes } = this.props;\n return (\n \n
\n \n
\n
\n \n
\n {this.props.name}\n
\n {!!this.props.values ? (\n
{this.props.values}
\n ) : (\n 0 ? \"ThreeDots\" : \"\"}\n width={this.props.count > 0 ? 25 : 0}\n height={this.props.count > 0 ? 25 : 0}\n />\n )}\n
\n
\n \n );\n }\n}\n\nDisplayCards.propTypes = {\n classes: PropTypes.object.isRequired,\n};\nexport default connect(({ loading }) => {\n const { count } = loading;\n return { count };\n})(withStyles(dashboardStyles)(DisplayCards));\n","const drawerWidth = 254;\n\nexport const drawerStyles = (theme) => ({\n root: {\n display: \"flex\",\n },\n toolbar: {\n height: 65,\n minHeight: 65,\n display: \"flex\",\n alignItems: \"center\",\n paddingLeft: 20,\n borderBottom: \"1px solid #E8EFF6\",\n },\n appBar: {\n width: `100%`,\n minHeight: 65,\n maxHeight:65,\n marginLeft: drawerWidth,\n background: \"white\",\n boxShadow: \"0px 0px 1px -1px lavender\",\n },\n drawer: {\n width: drawerWidth,\n flexShrink: 0,\n overflow: \"hidden\",\n },\n drawerPaper: {\n width: drawerWidth,\n boxShadow: \"0px 0px 3px -1px lavender\",\n border: 0,\n overflow: \"hidden\",\n },\n content: {\n flexGrow: 1,\n margin:\"100px 30px 100px 30px\",\n backgroundColor: theme.palette.background.default,\n },\n appbaricons: {\n display: \"flex\",\n width: \"100%\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n appabarlastlogin: {\n height: 20,\n },\n appabarring: {\n height: 20,\n marginLeft: 20,\n marginRight: 20,\n },\n appabarlogout: {\n cursor: \"pointer\",\n height: 35,\n marginLeft: 5,\n marginRight: 20,\n },\n lastlogindiv: {\n display: \"flex\",\n marginRight: 20,\n },\n lastloginmain: {\n color: \"gray\",\n fontSize: 12,\n marginLeft: 5,\n fontFamily: \"Ubuntu-Regular\",\n },\n lastloginsub: {\n color: \"#003d7b\",\n },\n profile: {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n marginTop: 5,\n },\n profileimage: {\n background: \"#C8F0ED\",\n display: \"flex\",\n color: \"#20225B\",\n fontSize: 22,\n fontFamily: \"Ubuntu-Medium\",\n alignItems: \"center\",\n justifyContent: \"center\",\n height: 60,\n width: 60,\n marginRight: 25,\n borderRadius: \"50%\",\n },\n profileRole: {\n // backgroundColor: \"#e5f2f9\",\n padding: \"5px 20px 5px 10px\",\n borderTopRightRadius: 30,\n borderBottomRightRadius: 30,\n },\n profileRoletext: {\n color: \"#586a82\",\n fontFamily: \"Ubuntu-Regular\",\n fontSize: 12,\n },\n profileRolesubtext: {\n color: \"#137ebf\",\n fontFamily: \"Ubuntu-Bold\",\n fontSize: 12,\n },\n profileSettings: {\n display: \"flex\",\n alignItems: \"center\",\n padding: 10,\n marginRight: 5,\n border: \"1px solid rgba(0, 0, 0, 0.5px)\",\n borderRadius: 5,\n boxShadow: \"0px 0px 0px 1px lavender\",\n },\n profileSettingsicon: {\n height: 30,\n width: 35,\n marginRight: 10,\n },\n profileName: {\n color: \"#4E4E4E\",\n fontSize: 15,\n marginTop: 10,\n fontFamily: \"Ubuntu-Medium\",\n textAlign: \"center\",\n },\n profilenametext: {\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n },\n profilenameMaintext: {\n display: \"flex\",\n justifyContent: \"flex-end\",\n fontSize: 13,\n fontFamily: \"Ubuntu-Regular\",\n color: \"rgba(24, 42, 70, 0.8)\",\n textAlign: \"center\",\n marginTop: 2,\n },\n profilediv: {\n paddingBottom: 15,\n },\n profilenamesubtext: {\n color: \"rgba(24, 42, 70, 0.8)\",\n fontSize: 13,\n marginLeft: 5,\n marginTop: 2,\n fontFamily: \"Ubuntu-Regular\",\n },\n combined: {\n margin: \"10px 0px\",\n },\n list: {\n margin: \"0px 4px 0px 0px\",\n\n padding: \"20px 0px\",\n paddingBottom:120,\n overflow: \"scroll\",\n },\n listImage: {\n marginLeft: 12,\n height: 15,\n },\n listTextActive: {\n fontSize: 14,\n marginLeft: 15,\n color: \"#00579B\",\n fontFamily: \"Ubuntu-Medium\",\n },\n\n listText: {\n fontSize: 15,\n marginLeft: 12,\n color: \"#586a82\",\n fontFamily: \"Ubuntu-Regular\",\n },\n});\n\nexport const dashboardStyles = (theme) => ({\n card: {\n display: \"flex\",\n width: \"33%\",\n maxWidth:\"33%\",\n height: 100,\n margin: \"0px 10px\",\n },\n details: {\n display: \"flex\",\n flexDirection: \"column\",\n },\n content: {\n flex: \"1 0 auto\",\n display: \"flex\",\n paddingBottom: 0,\n flexDirection: \"column\",\n justifyContent: \"center\",\n },\n cover: {\n width: 151,\n },\n controls: {\n display: \"flex\",\n alignItems: \"center\",\n paddingLeft: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n },\n playIcon: {\n height: 38,\n width: 38,\n },\n});\n\nexport const simpleCardsStyles = (theme) => ({\n card: {\n display: \"flex\",\n alignItems: \"center\",\n width: \"33.33%\",\n marginTop: 1,\n padding: \"16px 15px\",\n boxShadow: \"0px 0px 3px 1px lavender\",\n margin: \"0px 10px\",\n flexGrow: 1,\n },\n\n content: {\n display: \"flex\",\n flexDirection: \"column\",\n justifyContent: \"center\",\n padding: 0,\n },\n displaySimpleCard: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n },\n simpletwo: {\n display: \"flex\",\n alignItems: \"center\",\n },\n details: {\n margin: \"0px 20px\",\n },\n name: {\n fontSize: 14,\n fontFamily: \"Ubuntu-Regular\",\n },\n count: {\n fontFamily: \"Ubuntu-Bold\",\n fontSize: 18,\n },\n});\n","import { Checkbox, MenuItem } from \"@material-ui/core\";\nimport Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport {\n KeyboardDatePicker,\n MuiPickersUtilsProvider,\n} from \"@material-ui/pickers\";\nimport { Termsandconditions } from \"./lib/Termsandconditions\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nimport React, { useEffect, useReducer, useState } from \"react\";\nimport CustomizedSelect from \"../customizedSelect\";\nimport { Input } from \"../../../forms/input\";\nimport CardComponent from \"./lib/CardComponent\";\nimport CustomizedDialogs from \"../../customModal\";\nimport { connect, useDispatch } from \"react-redux\";\nimport IntegrationReactSelect from \"../../../forms/autoCompleteInput\";\nimport { RadioButton } from \"./lib/Radiobutton\";\nimport { addDays } from 'date-fns';\n\nimport {\n getNewPurchaseFundList,\n validateSubBroker,\n swpOptions,\n getMinimumAmount,\n CalcSIPEnddt,\n storeSchemeDetails,\n getNav,\n getOtherSchemes,\n storeSchemeParams,\n submitSipDetails,\n clearingFirstTimeInvestorJourney,\n storeSipDetails,\n storeSip,\n getCheckPanKotm,\n getCheckPanAotm,\n getSIPTenures\n\n} from \"shared/store/actions\";\nimport {\n GET_CATEGORY_LIST,\n GET_CATEGORY_LIST_SUCCESS,\n GET_CATEGORY_LIST_FAILED,\n REGULAR,\n} from \"shared/store/types\";\nimport {\n INVESTMENT_FREQUENCY,\n SIP_DAY,\n PAYMENT_MODE,\n} from \"shared/store/types\";\nimport CustomLoader from \"../../../forms/Loader\";\nimport { format } from \"date-fns\";\nimport { getStoredState } from \"redux-persist\";\nimport displaycards from \"../../dashboard/displaycards\";\nimport { addOneMonthAndTwentyYears,addFifteenDays, convertDateFormat } from \"./lib/utils\";\nconst LummpsumSip = (props) => {\n const initialState = {\n Scheme: { value: \"\" },\n EUIN: { value: \"\" },\n Category: { value: \"\" },\n \"SWP Category\": { value: \"EQUITY\" },\n \"SWP Scheme\": { value: \"\" },\n \"SIP Day\": { value: \"\" },\n Frequency: { value: \"\" },\n \"SIP Period From\": { value: \"\" },\n \"SWP Period To\": { value: \"\" },\n \"SWP Period From\": { value: \"\" },\n \"SIP Period To\": { value: \"\" },\n \"No of Installments\": { value: \"\" },\n MinimumAmount: \"\",\n MinimumLumpsumAmount: \"\",\n MinimumWithdrawalAmount:\"\",\n Amount: { value: \"\" },\n \"Flexi Max Installment Amount\": { value: \"\" },\n \"Withdrawal Amount\": { value: \"\" },\n \"SIP Tenure\": { value: \"\" },\n transactionType: { value: \"Normal SIP\" },\n \"Lumpsum Amount\": { value: \"\" },\n MinimumInstallements: \"\",\n schemeList: [],\n swpSchemeList: [],\n euinList: [],\n sipDateList: [],\n frequencyList: [],\n tenureList: [],\n EUINNO: { value: \"no\" },\n CategoryList: [],\n planValue: \"\",\n optionValue: \"\",\n schemeValue: \"\",\n swpPlanValue: \"\",\n swpOptionValue: \"\",\n swpSchemeValue: \"\",\n multiple: \"\",\n perpetualSip: false,\n isFlexiOrFreedomCanBeEnabled: false,\n isFlexi: false,\n isFreedom: false,\n showFlexi: false,\n showFreedom: false,\n umrnList: [],\n UMRN: { value: \"\" },\n \"Mode of Registration\": { value: \"\" },\n modeList: [],\n };\n const [formValues, setFormValues] = useReducer(\n (preValues, newValues) => ({ ...preValues, ...newValues }),\n initialState\n );\n const InputFields = [\n [\n {\n name: \"Category\",\n type: \"select\",\n placeholder: \"Select Category\",\n isMandatory: true,\n listName: \"CategoryList\",\n },\n ],\n [\n {\n name: \"Scheme\",\n type: \"Searchselect\",\n placeholder: \"Select Scheme\",\n isMandatory: true,\n listName: \"schemeList\",\n },\n ],\n [\n {\n name: \"Do you want to intentionally leave the EUIN box blank?\",\n type: \"radio\",\n },\n ],\n [\n {\n name: \"EUIN\",\n type: \"Searchselect\",\n placeholder: \"Select EUIN\",\n isMandatory: true,\n listName: \"euinList\",\n },\n ],\n [\n {\n name: \"Frequency\",\n type: \"select\",\n placeholder: \"Select Frequency\",\n isMandatory: true,\n listName: \"frequencyList\",\n },\n {\n name: \"SIP Transaction Type\",\n type: \"radio\",\n display: !formValues.showFlexi\n },\n\n ],\n [\n {\n name: \"Perpetual SIP\",\n type: \"Perpetual\",\n display:!!(formValues[\"SIP Period From\"].value && formValues.isFreedom)\n },\n ],\n [\n {\n name: \"No of Installments\",\n type: \"number\",\n placeholder: !formValues.perpetualSip ? \"\" : \"Perpetual SIP\",\n isMandatory: true,\n disabled: !formValues.perpetualSip ? false : true,\n display: !!formValues.isFreedom\n },\n ],\n [\n {\n name: \"SIP Tenure\",\n type: \"select\",\n placeholder: \"Select Tenure\",\n isMandatory: true,\n listName: \"tenureList\",\n display: !formValues.isFreedom\n },\n ],\n [\n {\n name: \"SWP Category\",\n type: \"select\",\n placeholder: \"Select Category\",\n isMandatory: true,\n listName: \"CategoryList\",\n disabled: true,\n display: !formValues.isFreedom\n\n },\n ],\n [\n {\n name: \"SWP Scheme\",\n type: \"Searchselect\",\n placeholder: \"Select Scheme\",\n isMandatory: true,\n listName: \"swpSchemeList\",\n display: !formValues.isFreedom\n\n },\n ],\n [\n {\n name: \"SIP Day\",\n type: \"select\",\n placeholder: \"Select SIP Day\",\n isMandatory: true,\n listName: \"sipDateList\",\n disabled: !((!!formValues[\"No of Installments\"].value && !!formValues.Frequency.value) || formValues.isFreedom)\n },\n ],\n [\n {\n name: \"SIP Period From\",\n type: \"date\",\n placeholder: \"Start Date\",\n isMandatory: true,\n disabled: true,\n },\n {\n name: \"SIP Period To\",\n type: \"date\",\n placeholder: \"End Date\",\n isMandatory: true,\n disabled: true,\n },\n ],\n [\n {\n name: \"SWP Period From\",\n type: \"date\",\n placeholder: \"Start Date\",\n isMandatory: true,\n disabled: true,\n display: !formValues.isFreedom,\n },\n {\n name: \"SWP Period To\",\n type: \"date\",\n placeholder: \"End Date\",\n isMandatory: true,\n display: !formValues.isFreedom,\n disabled: true,\n },\n ],\n [\n {\n name: \"Amount\",\n type: \"number\",\n isMandatory: true,\n },\n {\n name: \"Flexi Max Installment Amount\",\n type: \"number\",\n isMandatory: true,\n display: !formValues.isFlexi\n },\n ],\n [\n {\n name: \"Withdrawal Amount\",\n type: \"number\",\n isMandatory: true,\n display: !formValues.isFreedom,\n },\n {\n name: \"Lumpsum Amount\",\n type: \"number\",\n display: props.type === \"Lumpsum + SIP\" ? false : true,\n isMandatory: true,\n },\n ],\n [\n {\n name: \"Mode of Registration\",\n type: \"select\",\n placeholder: \"Select Mode\",\n isMandatory: true,\n listName: \"modeList\",\n },\n ],\n [\n {\n name: \"UMRN\",\n type: \"select\",\n placeholder: \"Select UMRN\",\n listName: \"umrnList\",\n display:\n formValues[\"Mode of Registration\"].value === \"KOTM\" ||\n formValues[\"Mode of Registration\"].value === \"AOTM\"\n ? false\n : true,\n disabled: formValues.umrnList.length === 1 ? true : false,\n },\n ],\n\n ];\n const [dialog, setDialog] = useState({ open: false, appno: \"\" });\n const [isChecked, setIsChecked] = useState(false);\n const [isLoading, setIsLoading] = useState(false);\n const SIP_Date = formValues[\"SIP Day\"].value;\n const Frequency = formValues[\"Frequency\"].value;\n const setFrequencyList = async () => {\n const euinParams = { opt: INVESTMENT_FREQUENCY, fund: \"176\" };\n const euinResponse = await props.swpOptions(euinParams);\n const { Dtinformation } = euinResponse;\n const frequencyList = Dtinformation.map((item) => ({\n label: item.FrequencyID,\n value: item.FrequencyID,\n min: item.Minimum_Instalment,\n }));\n setFormValues({ frequencyList });\n };\n const handleScheme = (label) => async(event) => {\n const { schemeList, swpSchemeList } = formValues;\n if (label === \"Scheme\") {\n const scheme = schemeList.find((item) => item.label === event.label);\n setFormValues({\n Scheme: { value: event },\n planValue: scheme.planValue,\n optionValue: scheme.optionValue,\n schemeValue: scheme.schemeValue,\n MinimumAmount: scheme.MinimumAmount,\n multiple: scheme.multiples || 1,\n MinimumLumpsumAmount: scheme.MinimumLumpsumAmount,\n isFlexiOrFreedomCanBeEnabled: scheme.optionValue === \"G\" && scheme.schemeValue !== \"TF\" && scheme.schemeValue !== \"GA\" && scheme.schemeValue !== \"NH\" && formValues.Category.value === \"EQUITY\" ? true : false,\n Amount: { value: \"\" },\n EUIN: \"\",\n \"SIP Day\": { value: \"\" },\n Frequency: { value: \"\" },\n \"Lumpsum Amount\": { value: \"\" },\n \"SIP Period From\": { value: \"\" },\n \"SIP Period To\": { value: \"\" },\n \"No of Installments\": { value: \"\" },\n isFlexi: false,\n isFreedom: false,\n showFlexi: false,\n showFreedom: false,\n transactionType: { value: \"Normal SIP\" },\n });\n setFrequencyList();\n }\n if (label === \"SWP Scheme\") {\n const swpScheme = swpSchemeList.find((item) => item.label === event.label);\n const minParams = {\n Fund: \"176\",\n Scheme: swpScheme.schemeValue,\n Trtype: \"SWP\",\n Frequency: 'Monthly',\n };\n const response = await props.getMinimumAmount(minParams);\n if(!!response){\n setFormValues({\n \"SWP Scheme\": { value: event },\n swpPlanValue: swpScheme.planValue,\n swpOptionValue: swpScheme.optionValue,\n swpSchemeValue: swpScheme.schemeValue,\n MinimumWithdrawalAmount:response.DtData[0].minamt,\n });\n }\n }\n if (label === \"EUIN\") {\n setFormValues({\n EUIN: { value: event },\n });\n }\n };\n const getFreedomSIPTenures=async()=>{\n const params = { \n fund :\"102\",\n frequency:formValues.Frequency.value,\n scheme: formValues.schemeValue,\n trType:\"SIP\"\n }\n const response = await props.getSIPTenures(params)\n if(!!response.Table2.length>0){\n const filterTenures = response.Table2\n .filter((ele) => ele.Stepup_flag === \"Y\")\n .map((ele) => ({\n label: `${ele.SIPTen} years`,\n value: ele.SIPTen,\n multiplier:ele.SWPAMTPER\n }));\n setFormValues({\n tenureList:filterTenures\n })\n }\n }\n const handleChange = (label) => async (event) => {\n const value = event.target.value;\n if (!value) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage: `${label} is Mandatory`,\n },\n });\n return;\n }\n setFormValues({ [label]: { value } });\n switch (label) {\n case \"Category\":\n setFormValues({\n [label]: { value },\n Scheme: { value: \"\" },\n Amount: { value: \"\" },\n EUIN: \"\",\n \"SIP Day\": { value: \"\" },\n Frequency: { value: \"\" },\n \"Lumpsum Amount\": { value: \"\" },\n \"SIP Period From\": { value: \"\" },\n \"SIP Period To\": { value: \"\" },\n \"No of Installments\": { value: \"\" },\n isFlexiOrFreedomCanBeEnabled: false,\n isFlexi: false,\n isFreedom: false,\n showFlexi: false,\n showFreedom: false,\n transactionType: { value: \"Normal SIP\" },\n });\n break;\n\n case \"SIP Day\":\n getSipDates(value)\n setFormValues({\n [label]: { value },\n \"SIP Period From\": { disabled: false, value: \"\" },\n \"SIP Period To\": { disabled: false, value: \"\" },\n });\n break;\n case \"radioValue\":\n setFormValues({\n EUINNO: { value: formValues.EUINNO.value === \"no\" ? \"yes\" : \"no\" },\n });\n break;\n case \"transactionType\":\n const isMonthly = formValues.Frequency.value === \"Monthly\";\n const isQuarterly = formValues.Frequency.value === \"Quarterly\";\n if (value === \"Flexi\") {\n setFormValues({\n MinimumInstallements: isMonthly ? 12 : 4,\n MinimumAmount: isMonthly ? 1000 : 3000,\n isFlexi: ((isMonthly || isQuarterly) && formValues.isFlexiOrFreedomCanBeEnabled),\n isFreedom: false,\n Amount: { value: \"\" },\n \"SIP Day\": { value: \"\" },\n \"Lumpsum Amount\": { value: \"\" },\n \"SIP Period From\": { value: \"\" },\n \"SIP Period To\": { value: \"\" },\n });\n }\n if (value === \"Freedom\") {\n fetchSchemeList(\"SWP\")\n getFreedomSIPTenures()\n setFormValues({\n isFreedom: ((isMonthly) && formValues.isFlexiOrFreedomCanBeEnabled),\n isFlexi: false\n });\n }\n if (value === \"Normal SIP\") {\n fetchSchemeList(\"SWP\")\n setFormValues({\n isFreedom: false,\n isFlexi: false\n });\n }\n setFormValues({\n transactionType: { value },\n });\n break;\n case \"No of Installments\":\n if (\n !!value && formValues.Frequency.value !== \"Daily\" &&\n parseInt(value) < parseInt(formValues.MinimumInstallements)\n ) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage:\n \"Number of installments should be greater than or equal to the minimum number of installments \",\n },\n });\n }\n break;\n case \"Mode of Registration\":\n if (value === \"KOTM\") {\n fetchUMRNList(\"KOTM\");\n } else {\n setFormValues({\n UMRN: { value: \"\" },\n });\n }\n if (value === \"AOTM\") {\n fetchUMRNList(\"AOTM\");\n } else {\n setFormValues({\n UMRN: { value: \"\" },\n });\n }\n setFormValues({ [label]: { value } });\n break;\n case \"Flexi Max Installment Amount\":\n if (parseInt(value) < parseInt(formValues.Amount.value)) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage:\n \"Amount should be greater than\" +\n parseInt(formValues.Amount.value),\n },\n });\n }\n break;\n case \"SIP Tenure\":\n\n if(!!formValues.Amount.value){\n const tenureMuliplier =formValues.tenureList.find((ele)=>ele.value === value)\n setFormValues({\n [label]: {\n value,\n },\n \"Withdrawal Amount\": { value: Number(formValues.Amount.value)*Number(tenureMuliplier.multiplier) },\n \"SIP Period From\": { value: \"\" },\n \"SWP Period To\": { value: \"\" },\n \"SWP Period From\": { value: \"\" },\n \"SIP Period To\": { value: \"\" },\n });\n } else {\n setFormValues({\n [label]: {\n value,\n },\n \"Amount\": { value: \"\" },\n \"Withdrawal Amount\": { value: \"\" },\n \"SIP Period From\": { value: \"\" },\n \"SWP Period To\": { value: \"\" },\n \"SWP Period From\": { value: \"\" },\n \"SIP Period To\": { value: \"\" },\n });\n }\n break;\n case \"UMRN\":\n setFormValues({\n [label]: {\n value,\n },\n \"Amount\": { value: \"\" },\n \"Withdrawal Amount\": { value: \"\" },\n \"SIP Period To\": { value: formValues[\"SIP Period To\"].value, isError: false, errorMessage: \"\" },\n });\n break;\n case \"Amount\":\n if (!!value && parseInt(value) < parseInt(formValues.MinimumAmount)) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage:\n \" Amount should be greater than or equal to \" +\n formValues.MinimumAmount,\n },\n });\n } else if (parseInt(value) % parseInt(formValues.multiple) !== 0) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage:\n \"Amount should be multiple of \" + formValues.multiple,\n },\n });\n } else {\n setFormValues({ [label]: { value } });\n }\n if (formValues.isFreedom) {\n const tenure = formValues[\"SIP Tenure\"].value;\n const findMultiplier =formValues.tenureList.find((ele)=>Number(ele.value)===Number(tenure))\n const amount = findMultiplier.multiplier ? Number(value) *Number(findMultiplier.multiplier) : null;\n setFormValues({\n [\"Withdrawal Amount\"]: {\n value: amount,\n },\n });\n\n\n }\n break;\n case \"Lumpsum Amount\":\n if (\n !!value &&\n parseInt(formValues.MinimumLumpsumAmount) > parseInt(value)\n ) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage:\n \" Amount should be greater than or equal to \" +\n formValues.MinimumLumpsumAmount,\n },\n });\n } else if (parseInt(value) % parseInt(formValues.multiple) !== 0) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage:\n \"Amount should be multiple of \" + formValues.multiple,\n },\n });\n } else {\n setFormValues({ [label]: { value } });\n }\n break;\n default:\n setFormValues({ [label]: { value } });\n break;\n }\n };\n\n const getSipDates = async (value) => {\n const sipDateParams = {\n fund: \"176\",\n trtype: \"SIP\",\n StartDate: value,\n Installments: !formValues.isFreedom ? formValues[\"No of Installments\"].value : Number(formValues[\"SIP Tenure\"].value) * 12,\n Frequency: formValues.Frequency.value,\n };\n try {\n setIsLoading(true);\n const sipDateResponse = await props.CalcSIPEnddt(sipDateParams);\n const isFreedom = formValues.isFreedom\n let res =\"\" \n\n const {\n DtData: [dates],\n } = sipDateResponse;\n console.log(\"sipDateResponse\",sipDateResponse)\n const { SIP_EndDate, SIP_StartDate } = dates;\n if(isFreedom){\n res = addOneMonthAndTwentyYears(SIP_EndDate,2099)\n \n }\n const End_dt = !!SIP_EndDate ? SIP_EndDate.split(\"/\") : [];\n const Start_dt = !!SIP_StartDate ? SIP_StartDate.split(\"/\") : [];\n const Swp_End_dt = !!res?.twentyYearsLaterDate ? res.twentyYearsLaterDate.split(\"/\") : [];\n const Swp_Start_dt = !!res?.nextMonthDate ? res.nextMonthDate.split(\"/\") : [];\n\n setFormValues({\n \"SIP Period From\": {\n value: !!End_dt\n ? new Date().setFullYear(Start_dt[2], Start_dt[1] - 1, Start_dt[0])\n : \"\",\n },\n \"SIP Period To\": {\n value: !!Start_dt\n ? new Date().setFullYear(End_dt[2], End_dt[1] - 1, End_dt[0])\n : \"\",\n },\n \"No of Installments\": { value: formValues.isFreedom ? Number(formValues[\"SIP Tenure\"].value) * 12 : formValues[\"No of Installments\"].value },\n \"SWP Period From\":{value:isFreedom? new Date().setFullYear(Swp_Start_dt[2], Swp_Start_dt[1] - 1, Swp_Start_dt[0]):\"\"},\n \"SWP Period To\":{value:isFreedom?new Date().setFullYear(Swp_End_dt[2], Swp_End_dt[1] - 1, Swp_End_dt[0]):\"\"}\n });\n console.log(\"res\",res,new Date().setFullYear(Start_dt[2], Start_dt[1] - 1, Start_dt[0]),new Date().setFullYear(End_dt[2], End_dt[1] - 1, End_dt[0]))\n\n } catch (e) {\n console.log(\"error\", e);\n setFormValues({\n \"No of Installments\": {\n value: \"\",\n isError: true,\n errorMessage: \"Enter valid number of installments\",\n },\n \"SIP Period From\": { value: \"\" },\n \"SIP Period To\": { value: \"\" },\n });\n } finally {\n setIsLoading(false);\n }\n };\n const validate = (label) => async (event) => {\n const selectedFrequency = formValues[\"Frequency\"].value;\n let startDate = new Date();\n let daysToNextYear = Math.ceil((new Date(new Date().getFullYear() + 1, new Date().getMonth(), new Date().getDate()) - new Date()) / (1000 * 60 * 60 * 24));\n let endDate = new Date(\"2099-12-31\");\n let monthsDifference =\n (endDate.getFullYear() - startDate.getFullYear()) * 12 +\n (endDate.getMonth() - startDate.getMonth());\n let noofFrequency =\n selectedFrequency == \"Monthly\"\n ? monthsDifference - 1\n : selectedFrequency == \"Daily\"\n ? Math.floor(daysToNextYear)\n : selectedFrequency == \"Weekly\"\n ? Math.floor((endDate - startDate) / (1000 * 60 * 60 * 24) / 7)\n : selectedFrequency == \"Quarterly\"\n ? Math.floor(monthsDifference / 3)\n : selectedFrequency == \"Yearly\"\n ? Math.floor(monthsDifference / 12)\n : \"\";\n const value = event.target.value;\n switch (label) {\n case \"Amount\":\n if (!!value && parseInt(value) < parseInt(formValues.MinimumAmount)) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage:\n \" Amount should be greater than or equal to Minimum Amount \",\n },\n });\n }\n break;\n case \"No of Installments\":\n if (!value && formValues.perpetualSip) {\n setFormValues({\n [label]: {\n value,\n isError: true,\n errorMessage: `${label} is Mandatory`,\n },\n });\n return;\n } else if (value && value > noofFrequency) {\n setFormValues({\n [label]: {\n value: \"\",\n isError: true,\n errorMessage: `No. of installments should not be more than the ${noofFrequency} installments`,\n }\n })\n return\n }\n break;\n default:\n break;\n }\n };\n\n const getMinInstallment = async (event) => {\n const value = event.target.value;\n // const { frequencyList } = formValues;\n\n // const installment = frequencyList.find((item) => item.value === value);\n const minParams = {\n Fund: \"176\",\n Scheme: formValues.Scheme.value.value,\n Trtype: \"SIP\",\n Frequency: event.target.value,\n };\n const response = await props.getMinimumAmount(minParams);\n if(!response.error){\n const { DtData } = response;\n const frequencyParams = {\n opt: SIP_DAY,\n fund: \"176\",\n astscheme: value,\n };\n const frequencyResponse = await props.swpOptions(frequencyParams);\n const frequencyData = frequencyResponse.Dtinformation;\n const sipDateList = frequencyData.map((item) => ({\n label: item.sip_cycleid,\n value: item.sip_cycleid,\n }));\n setFormValues({\n sipDateList,\n MinimumInstallements: DtData[0].mininst,\n MinimumAmount: DtData[0].minamt,\n MinimumLumpsumAmount: DtData[0].minamt,\n perpetualSip: false,\n showFlexi: ((value === \"Monthly\" || value === \"Quarterly\") && formValues.isFlexiOrFreedomCanBeEnabled),\n showFreedom: ((value === \"Monthly\") && formValues.isFlexiOrFreedomCanBeEnabled),\n Frequency: { value },\n transactionType: { value: \"Normal SIP\" },\n isFreedom: false,\n isFlexi: false,\n \"No of Installments\": { value: \"\" },\n \"SIP Day\": { value: \"\" },\n \"SIP Period From\": { value: \"\" },\n \"SIP Period To\": { value: \"\" },\n });\n } else {\n alert(response.error)\n }\n };\n const fetchSchemeList = async (label) => {\n try {\n setIsLoading(true);\n const schemeParams = {\n schtype: \"Regular\",\n category: label === \"SIP\" ? formValues.Category.value : \"EQUITY\",\n acno: \"0\",\n fundCode: \"176\",\n trantype: \"I\",\n };\n const schemeResponse = await props.getOtherSchemes(schemeParams);\n const { DtData } = schemeResponse;\n const schemeList = DtData.map((item) => {\n return {\n label: item.fm_schdesc,\n value: item.fm_scheme,\n planValue: item.fm_plan,\n optionValue: item.fm_option,\n schemeValue: item.fm_scheme,\n MinimumAmount: item.SIPminamt,\n multiples: item.multiples || 1,\n MinimumLumpsumAmount: item.fm_newpur,\n };\n });\n if (label === \"SIP\") {\n setFormValues({\n schemeList,\n });\n } else {\n setFormValues({\n swpSchemeList: schemeList.filter((ele) => ele.schemeValue !== \"TF\" && ele.optionValue === \"G\" && ele.schemeValue !== \"GA\" && ele.schemeValue !== \"NH\"),\n MinimumAmount:2000\n });\n }\n } catch (e) {\n console.log(e);\n setFormValues({ schemeList: [] });\n } finally {\n setIsLoading(false);\n }\n };\n const fetchEuinList = async () => {\n try {\n setIsLoading(true);\n const response = await props.validateSubBroker({\n Fund: \"176\",\n SubAgentCd: \"\",\n AgentCd: props.token,\n });\n const { DtData } = response;\n const euinList = DtData.map((item) => ({\n value: item.abm_name,\n label: item.abm_agent,\n }));\n setFormValues({ euinList: euinList });\n } catch (e) {\n alert(e);\n } finally {\n setIsLoading(false);\n }\n };\n const fetchModelist = async () => {\n try {\n setIsLoading(true);\n const params = {\n opt: PAYMENT_MODE,\n Fund: \"176\",\n astscheme: props.applicantparams.i_pangno,\n };\n const response = await props.swpOptions(params);\n if (!!response) {\n setFormValues({\n modeList: response.Dtinformation.map((item) => {\n return { label: item.Pay_Mode, value: item.Pay_Mode_Val };\n }),\n });\n }\n } catch (e) {\n console.log(e);\n } finally {\n setIsLoading(false);\n }\n };\n const fetchUMRNList = async (type) => {\n setIsLoading(true);\n\n const { AMC } = formValues;\n try {\n const params = {\n Fund: \"176\",\n PAN: props.applicantparams.i_pangno,\n Acno: 0,\n };\n const response =\n type === \"KOTM\"\n ? await props.getCheckPanKotm(params)\n : await props.getCheckPanAotm(params);\n const { Table1 } = response;\n const umrnList = Table1.map((item) => ({\n value: item,\n label: item.UMRNNO,\n }));\n if (umrnList.length > 1) {\n const maxAmt = Table1.reduce(\n (max, obj) => (obj.Amt > max ? obj.Amt : max),\n 0\n );\n const filteredData = Table1.filter((obj) => obj.Amt === maxAmt);\n setFormValues({ UMRN: { value: filteredData[0] } });\n }\n if (umrnList.length === 1) {\n setFormValues({ UMRN: { value: umrnList[0].value } });\n }\n setFormValues({ umrnList: umrnList });\n } catch (err) {\n setIsLoading(false);\n }\n setIsLoading(false);\n };\n\n const fetchCategoryList = async () => {\n try {\n setIsLoading(true);\n let params = { plntype: REGULAR };\n params = { ...params, opt: \"AT\", fund: \"176\" };\n const types = [\n GET_CATEGORY_LIST,\n GET_CATEGORY_LIST_SUCCESS,\n GET_CATEGORY_LIST_FAILED,\n ];\n const response = await props.getNewPurchaseFundList(params, types);\n const { Dtinformation } = response;\n const categoryList = Dtinformation.map((item) => ({\n value: item.fm_subcategory,\n label: item.fm_subcategory,\n }));\n setFormValues({ CategoryList: categoryList });\n } catch (e) {\n console.log(e);\n } finally {\n setIsLoading(false);\n }\n };\n useEffect(() => {\n fetchCategoryList();\n fetchEuinList();\n fetchModelist();\n setFrequencyList();\n fetchFromstore();\n }, []);\n useEffect(() => {\n if (!!formValues.Category.value) {\n fetchSchemeList(\"SIP\");\n }\n }, [formValues.Category.value]);\n useEffect(() => {\n props.storeSip({\n ...formValues,\n type: \"SIP\",\n // ct: formValues.Category.value ? formValues.Category.value : \"\",\n })\n }, [SIP_Date, Frequency, formValues[\"No of Installments\"].value, formValues.Category.value, formValues.EUINNO.value, formValues.EUIN.value, formValues.Scheme.value, formValues.Category.value, formValues.Amount.value, formValues[\"SIP Period To\"].value, formValues[\"SIP Period From\"].value, formValues[\"Lumpsum Amount\"].value, formValues[\"Mode of Registration\"].value, formValues.perpetualSip, isChecked,formValues.transactionType.value]);\n useEffect(() => {\n props.storeSip({\n ...formValues,\n type: \"SIP\",\n })\n }, [formValues.UMRN.value,formValues.umrnList]);\n function formatNumber(number) {\n if (number < 10) {\n return number.toString().substring(1);\n } else {\n return number.toString();\n }\n }\n const fetchFromstore = async () => {\n const { Category, Scheme, Amount, radioValue, Frequency, EUIN, frequencyList, schemeList } = props.sip;\n setFormValues({\n ...formValues,\n // Category: { value: Category?.value },\n // Scheme: { value: Scheme?.value },\n // Amount: { value: Amount ? Amount : 0 },\n // EUIN: { value: EUIN?.value ? EUIN.value : \"\" },\n // radioValue: { value: radioValue ? radioValue : \"no\" },\n // frequencyList: frequencyList || [],\n // schemeList: schemeList || [],\n // \"SIP Period To\": { value: props.sip[\"SIP Period To\"] ? props.sip[\"SIP Period To\"]?.value : \"\" },\n // \"SIP Period From\": { value: props.sip[\"SIP Period From\"] ? props.sip[\"SIP Period From\"]?.value : \"\" },\n // \"No of Installments\": { value: props.sip[\"No of Installments\"] ? props.sip[\"No of Installments\"]?.value : \"\" },\n // \"SIP Day\": { value: props.sip[\"SIP Day\"]?.value ? props.sip[\"SIP Day\"]?.value : \"\" },\n // Frequency: { value: Frequency?.value },\n ...props.sip\n });\n if (!!props.sip.Category?.value) {\n try {\n setIsLoading(true);\n const schemeParams = {\n schtype: \"Regular\",\n category: Category.value,\n acno: \"0\",\n fundCode: \"176\",\n trantype: \"I\",\n };\n const schemeResponse = await props.getOtherSchemes(schemeParams);\n const { DtData } = schemeResponse;\n const schemeList = DtData.map((item) => {\n return {\n label: item.fm_schdesc,\n value: item.fm_scheme,\n planValue: item.fm_plan,\n optionValue: item.fm_option,\n schemeValue: item.fm_scheme,\n MinimumAmount: item.SIPminamt,\n multiples: item.multiples || 1,\n MinimumLumpsumAmount: item.fm_newpur,\n };\n });\n setFormValues({\n schemeList,\n });\n } catch (e) {\n console.log(e);\n setFormValues({ schemeList: [] });\n } finally {\n setIsLoading(false);\n }\n };\n if (!!props.sip[\"SIP Day\"]?.value) {\n // const { frequencyList } = formValues;\n const installment = frequencyList.find((item) => item.value === Frequency.value);\n const frequencyParams = {\n opt: SIP_DAY,\n fund: \"176\",\n astscheme: Frequency.value,\n };\n const frequencyResponse = await props.swpOptions(frequencyParams);\n const frequencyData = frequencyResponse.Dtinformation;\n const sipDateList = frequencyData.map((item) => ({\n label: item.sip_cycleid,\n value: item.sip_cycleid,\n }));\n setFormValues({\n sipDateList,\n MinimumInstallements: installment.min,\n });\n return\n }\n if(!!formValues[\"Mode of Registration\"].value){\n fetchUMRNList(formValues[\"Mode of Registration\"].value);\n }\n }\n const handlechangeSIPEndDateChange = () => {\n const { perpetualSip } = formValues;\n let Umrn_endDate;\n const URMN_enddate =\n formValues[\"UMRN\"]?.value[\"MANDATE END DATE\"]?.split(\"/\");\n const day = formValues[\"SIP Day\"].value;\n const End_date = `31/12/2099`\n const End_dt = End_date.split(\"/\");\n const endDate = new Date().setFullYear(End_dt[2], End_dt[1] - 1, End_dt[0]);\n if (formValues[\"UMRN\"]?.value[\"MANDATE END DATE\"]) {\n Umrn_endDate = new Date().setFullYear(\n URMN_enddate[2],\n URMN_enddate[1] - 1,\n URMN_enddate[0]\n );\n }\n let daysToNextYear = Math.ceil((new Date(new Date().getFullYear() + 1, new Date().getMonth(), new Date().getDate()) - new Date()) / (1000 * 60 * 60 * 24));\n let selectedFrequency = formValues[\"Frequency\"].value;\n let startDateSplitting = formValues[\"SIP Period From\"].value\n let dateFromTimestamp = new Date(startDateSplitting);\n\n// Extract the year, month, and day from the Date object\nlet Year = dateFromTimestamp.getFullYear();\nlet Month = dateFromTimestamp.getMonth() + 1; // getMonth() returns 0-11\nlet Day = dateFromTimestamp.getDate();\n const startDate = new Date(Year, Month - 1, Day);\n let EndDate =\n formValues[\"Mode of Registration\"].value === \"KOTM\" ||\n formValues[\"Mode of Registration\"].value === \"AOTM\"\n ? new Date(Umrn_endDate)\n : new Date(endDate);\n\n \n \n // Calculate the difference in time (in milliseconds)\n let timeDifference = EndDate - startDate;\n \n // Calculate the number of months between startDate and endDate\n let monthsDifference = (EndDate.getFullYear() - startDate.getFullYear()) * 12 + (EndDate.getMonth() - startDate.getMonth());\n console.log(\"EndDate\",EndDate,startDate,monthsDifference)\n\n let noofFrequency;\n if (selectedFrequency === \"Monthly\") {\n noofFrequency = monthsDifference+1;\n } else if (selectedFrequency === \"Daily\") {\n noofFrequency = Math.floor(daysToNextYear);\n } else if (selectedFrequency === \"Weekly\") {\n noofFrequency = Math.floor((timeDifference / (1000 * 60 * 60 * 24 * 7))-1);\n } else if (selectedFrequency === \"Quarterly\") {\n noofFrequency = Math.floor(monthsDifference / 3);\n } else if (selectedFrequency === \"Yearly\") {\n noofFrequency = Math.floor(monthsDifference / 12);\n } else {\n noofFrequency = \"\";\n }\n if (!perpetualSip && selectedFrequency !== \"Daily\") {\n setFormValues({\n perpetualSip: !perpetualSip,\n \"SIP Period To\": {\n value:\n formValues[\"Mode of Registration\"].value === \"KOTM\" || formValues[\"Mode of Registration\"].value === \"AOTM\"\n ? Umrn_endDate\n : endDate,\n },\n \"No of Installments\": {\n value: Math.floor(noofFrequency),\n },\n });\n } else if (!perpetualSip && selectedFrequency === \"Daily\") {\n const timestamp = parseInt(formValues[\"SIP Period From\"].value);\n const startDate = new Date(timestamp);\n\n startDate.setFullYear(startDate.getFullYear() + 1);\n startDate.setDate(startDate.getDate() - 1);\n const dailyEndDate = new Date(startDate);\n\n // const formattedDate = startDate.toLocaleDateString('en-IN', { month: '2-digit', day: '2-digit', year: 'numeric' });\n // const parts = formattedDate.split('/');\n // const conversion = `${parts[1]}/${parts[0]}/${parts[2]}`;\n\n setFormValues({\n perpetualSip: !perpetualSip,\n \"SIP Period To\": {\n value: dailyEndDate.getTime(),\n },\n \"No of Installments\": {\n value: Math.floor(noofFrequency),\n },\n });\n } else if (!perpetualSip) {\n setFormValues({\n perpetualSip: !perpetualSip,\n \"SIP Period To\": {\n value: endDate,\n },\n \"No of Installments\": {\n value: Math.floor(noofFrequency),\n },\n });\n } else if (!!perpetualSip) {\n setFormValues({\n perpetualSip: !perpetualSip,\n });\n }\n };\n\n\n const gotoTransactionTypes = () => {\n props.history.push(\"/\");\n };\n const dispatch = useDispatch();\nconsole.log(\"formvalues\",formValues)\n const submit = async () => {\n const {\n schemeList,\n euinList,\n CategoryList,\n modeList,\n sipDateList,\n frequencyList,\n MinimumInstallements,\n umrnList,\n MinimumAmount,\n MinimumLumpsumAmount,\n MinimumWithdrawalAmount,\n planValue,\n optionValue,\n schemeValue,\n type,\n ct,\n perpetualSip,\n multiple,\n EUIN,\n swpSchemeList,\n tenureList,\n swpPlanValue,\n swpOptionValue,\n swpSchemeValue,\n isFlexiOrFreedomCanBeEnabled,\n isFlexi,\n isFreedom,\n showFlexi,\n showFreedom,\n transactionType,\n ...others\n } = formValues;\n let d1, d2;\n const split_enddate = format(\n formValues[\"SIP Period To\"].value,\n \"MM/dd/yyyy\"\n ).split(\"/\");\n const split_mandatedate =\n formValues[\"UMRN\"].value[\"MANDATE END DATE\"]?.split(\"/\");\n d1 = new Date(\n Number(split_enddate[2]),\n Number(split_enddate[0]) - 1,\n Number(split_enddate[1])\n );\n if (formValues[\"UMRN\"].value[\"MANDATE END DATE\"]?.split(\"/\")) {\n d2 = new Date(\n Number(split_mandatedate[2]),\n Number(split_mandatedate[1]) - 1,\n Number(split_mandatedate[0])\n );\n }\n const umrn = [\"UMRN\"];\n\n\n const noof = [\"No of Installments\"];\n const lumpsumAmount = [\"Lumpsum Amount\"]\n const flexiKeys = [\"Flexi Max Installment Amount\", \"No of Installments\"]\n const freedomKeys = [\"SWP Category\", \"SWP Scheme\", \"Withdrawal Amount\", \"SIP Tenure\", \"SWP Period To\",\"SWP Period From\"]\n const BothFlexiandFreedomKeys = [\"SWP Category\", \"SWP Scheme\", \"Withdrawal Amount\", \"SIP Tenure\", \"Flexi Max Installment Amount\",\"SWP Period To\",\"SWP Period From\"]\n let Minschemewisewithdrawalamount=\"\"\n if(formValues.isFreedom){\n let findMultiplier = formValues.tenureList.find((ele) => ele.value === Number(formValues[\"SIP Tenure\"].value))\n Minschemewisewithdrawalamount = findMultiplier.multiplier ? Number(formValues.Amount.value) * findMultiplier.multiplier : null;\n }\n\n const values = Object.keys(others);\n const keys = formValues.perpetualSip\n ? values.filter((ele) => !noof.includes(ele))\n : values;\n const finalKeys = type !== \"Lumpsum + SIP\"\n ? values.filter((ele) => !lumpsumAmount.includes(ele))\n : values;\n const final_keys_for_validation =\n formValues[\"Mode of Registration\"].value === \"KOTM\" || formValues[\"Mode of Registration\"].value === \"AOTM\"\n ? finalKeys\n : finalKeys.filter((ele) => !umrn.includes(ele));\n\n const afterFlexiandFreedomFinalKeys = formValues.isFlexi ? final_keys_for_validation.filter((ele) => !freedomKeys.includes(ele)) : formValues.isFreedom ? final_keys_for_validation.filter((ele) => !flexiKeys.includes(ele)) : final_keys_for_validation.filter((ele) => !BothFlexiandFreedomKeys.includes(ele))\n const findError = afterFlexiandFreedomFinalKeys.every((key) => !!others[key].value);\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n setFormValues({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage: `${key === \"sipType\"\n ? \"SIP Type\"\n : key === \"Scheme\"\n ? \"Scheme\"\n : key === \"investmentFrequency\"\n ? \"Investment frequency\"\n : key === \"installments\"\n ? \"Installments\"\n : key === \"sipDay\"\n ? \"SIP day\"\n : key === \"sip_start_date\"\n ? \"SIP Start date\"\n : key === \"sip_end_date\"\n ? \"SIP end date\"\n : key === \"installmentAmount\"\n ? \"Installment Amount\"\n : key\n } is Mandatory`,\n },\n });\n });\n\n return;\n } else if (\n others[\"No of Installments\"].value < MinimumInstallements && !formValues.isFreedom &&\n !formValues.perpetualSip\n ) {\n setFormValues({\n \"No of Installments\": {\n ...others[\"No of Installments\"],\n isError: true,\n errorMessage: `Number of installments should be greater than or equal to the minimum number of installments`,\n },\n });\n\n return;\n } else if ((parseInt(formValues[\"Flexi Max Installment Amount\"].value) <= parseInt(formValues.Amount.value) ) && formValues.isFlexi ) {\n setFormValues({\n [\"Flexi Max Installment Amount\"]: {\n value: \"\",\n isError: true,\n errorMessage:\n \"Amount should be greater than\" +\n parseInt(formValues.Amount.value),\n },\n });\n } \n // else if ((Number(formValues[\"Withdrawal Amount\"].value) > Number(Minschemewisewithdrawalamount)) && !!formValues.isFreedom) {\n // setFormValues({\n // [\"Withdrawal Amount\"]: {\n // value: \"\",\n // isError: true,\n // errorMessage: `Withdrawal amount should be less than ${Minschemewisewithdrawalamount}`\n // },\n // });\n // return;\n // } \n else if ((Number(formValues[\"Withdrawal Amount\"].value) < Number(formValues.MinimumWithdrawalAmount)) && !!formValues.isFreedom) {\n setFormValues({\n [\"Withdrawal Amount\"]: {\n value: \"\",\n isError: true,\n errorMessage: `Withdrawal amount should be greater than ${formValues.MinimumWithdrawalAmount} `\n },\n });\n return;\n } else if (parseInt(others[\"Amount\"].value) < parseInt(MinimumAmount)) {\n setFormValues({\n Amount: {\n ...others[\"Amount\"],\n isError: true,\n errorMessage: `Amount should be greater than or equal to Minimum Amount`,\n },\n });\n\n return;\n } else if (\n (formValues[\"Mode of Registration\"].value === \"KOTM\" ||\n formValues[\"Mode of Registration\"].value === \"AOTM\") &&\n formValues[\"UMRN\"].value.Amt < formValues.Amount.value\n ) {\n setFormValues({\n Amount: {\n value: formValues.Amount.value,\n isError: true,\n errorMessage: `SIP installment amount cannot exceed\n mandate registration limit of ${formValues[\"UMRN\"]?.value?.Amt}.`,\n },\n });\n } else if (d1 > d2 && formValues[\"UMRN\"]?.value) {\n setFormValues({\n \"SIP Period To\": {\n value: formValues[\"SIP Period To\"].value,\n isError: true,\n errorMessage: `SIP end date cannot exceed mandate validity\n date of ${formValues[\"UMRN\"].value[\"MANDATE END DATE\"]}.`,\n },\n });\n return;\n } else if (+others[\"Amount\"].value > 1000000) {\n setFormValues({\n Amount: {\n ...others[\"Amount\"],\n isError: true,\n errorMessage: `Amount should be less than or equal to 1,000,000`,\n },\n });\n return;\n }\n else if (+others[\"Flexi Max Installment Amount\"].value > 1000000 && formValues.isFlexi) {\n setFormValues({\n \"Flexi Max Installment Amount\": {\n ...others[\"Flexi Max Installment Amount\"],\n isError: true,\n errorMessage: `Amount should be less than or equal to 1,000,000`,\n },\n });\n return;\n } else if (formValues.Amount.value % formValues.multiple !== 0) {\n setFormValues({\n Amount: {\n value: formValues.Amount.value,\n isError: true,\n errorMessage: \"Amount should be a multiple of \" + formValues.multiple,\n },\n });\n return;\n } else if (\n parseInt(others[\"Lumpsum Amount\"].value) <\n parseInt(formValues.MinimumLumpsumAmount)\n ) {\n setFormValues({\n \"Lumpsum Amount\": {\n ...others[\"Lumpsum Amount\"],\n isError: true,\n errorMessage: `Amount should be greater than or equal to Minimum Amount`,\n },\n });\n\n return;\n } else if (\n (parseInt(others[\"Lumpsum Amount\"].value) <\n parseInt(others.Amount.value)) && !formValues.isFreedom\n ) {\n setFormValues({\n \"Lumpsum Amount\": {\n ...others[\"Lumpsum Amount\"],\n isError: true,\n errorMessage: `Lumpsum Amount should be greater than SIP Amount`,\n },\n });\n\n return;\n } else if (others[\"Lumpsum Amount\"].value % formValues.multiple !== 0) {\n setFormValues({\n \"Lumpsum Amount\": {\n value: formValues[\"Lumpsum Amount\"].value,\n isError: true,\n errorMessage: \"Amount should be a multiple of \" + formValues.multiple,\n },\n });\n return;\n } else if (!isChecked) {\n alert(\"Please accept the terms and conditions to proceed\");\n\n return;\n }\n else if (formValues.EUINNO.value === \"no\" && !EUIN.value) {\n setFormValues({\n EUIN: {\n value: \"\",\n isError: true,\n errorMessage: `Please select EUIN`,\n },\n });\n }\n else {\n setIsLoading(true);\n\n const schemedetails = {\n category: formValues.Category.value,\n schemevalue: formValues.Scheme.value.label,\n sipday: formValues[\"SIP Day\"].value,\n i_scheme: schemeValue,\n i_plan: planValue,\n i_option: optionValue,\n sip_amt: others.Amount.value,\n i_disitributorid: props.token,\n i_EUINno: formValues.EUINNO.value === \"no\" ? EUIN.value.value : \"\",\n i_frequency: others.Frequency.value,\n i_noofinst: others[\"No of Installments\"].value,\n i_sipstartdt: format(others[\"SIP Period From\"].value, \"MM/dd/yyyy\"),\n i_sipenddt: format(others[\"SIP Period To\"].value, \"MM/dd/yyyy\"),\n i_amount:\n props?.type === \"Lumpsum + SIP\" ? formValues[\"Lumpsum Amount\"].value : 0,\n i_paymode: formValues[\"Mode of Registration\"].value,\n i_umrno: formValues[\"UMRN\"]?.value?.UMRNNO,\n SWPStartdate: !!formValues.isFreedom ? format(others[\"SWP Period From\"].value, \"MM/dd/yyyy\") : \"\",\n SWPEnddate: !!formValues.isFreedom ? format(others[\"SWP Period To\"].value, \"MM/dd/yyyy\") : \"\",\n AdvanceSwitchDate:!!formValues.isFreedom ?convertDateFormat(addFifteenDays(new Date(others[\"SIP Period To\"].value).toLocaleDateString('en-GB'))):\"\",\n\n };\n const paramsSip = {\n ...props.applicantparams,\n ...props.investmentparams,\n ...props.fatcaDetails,\n ...schemedetails,\n ...props.nomineDetails,\n i_trtype: props?.type === \"Lumpsum + SIP\" ? \"SIN\" : \"SINI\",\n i_appldt: format(new Date(), \"MM/dd/yyyy\"),\n i_chqdt: format(new Date(), \"MM/dd/yyyy\"),\n i_entby: props.userId,\n i_sipflag: \"Y\",\n Invdistflag: \"S\",\n CustomFund: \"176\",\n i_fund: \"176\",\n subtrtype: { Flexi: \"fsip\", Freedom: \"FreedomSIP\" }[formValues.transactionType?.value] || \"\",\n FlexiMaxAmount: !!formValues.isFlexi ? formValues[\"Flexi Max Installment Amount\"].value :!!formValues.isFreedom ? formValues[\"Withdrawal Amount\"].value: 0,\n isFlexi: formValues.isFlexi,\n isFreedom: formValues.isFreedom,\n Freedom_category: \"EQUITY\",\n Freedom_scheme_name: formValues[\"SWP Scheme\"].value.label,\n Freedom_scheme: !!formValues.isFreedom ? formValues.swpSchemeValue : \"\",\n Freedom_Plan: !!formValues.isFreedom ? formValues.swpPlanValue : \"\",\n Freedom_option: !!formValues.isFreedom ? formValues.swpOptionValue : \"\",\n Freedom_tenure: !!formValues.isFreedom ? formValues[\"SIP Tenure\"].value : \"\",\n Freedom_amount: !!formValues.isFreedom ? formValues[\"Flexi Max Installment Amount\"].value : \"\",\n };\n props.storeSipDetails(paramsSip)\n props.history.replace(\"/new-investor-transaction/confirmation\", {\n type: \"sip\"\n });\n setIsLoading(false);\n\n }\n };\n return (\n <>\n \n \n <>\n {InputFields.map((section, index) => (\n
\n {section.map((field) => (\n \n {field.type === \"select\" ? (\n <>\n \n {formValues[field.listName].map((i, index) => (\n \n {i.label}\n \n ))}\n \n \n {!!formValues.Frequency && field.name === \"Frequency\" &&\n formValues?.Frequency?.value === \"Weekly\" &&\n \"For 'weekly' frequency, the SIP start date will be on Wednesday falling on or after the cooling period (currently 30 days) from the date of transaction.\"}\n
\n \n ) :\n field.type === \"Searchselect\" || field.type === \"radio\" ? (\n <>\n
\n
\n {field.name === \"Scheme\"\n ? \"Scheme\"\n : field.name === \"EUIN\" &&\n formValues.EUINNO.value === \"no\"\n ? \"EUIN Declaration\"\n : field.name === \"SIP Transaction Type\"\n ? field.name\n : field.name === \"SWP Scheme\"\n ? field.name\n : field.name === \"EUIN\" &&\n formValues.EUINNO.value !== \"no\"\n ? \"\"\n : \"Do you want to intentionally leave the EUIN box blank?\"}\n
\n {field.name ===\n \"Do you want to intentionally leave the EUIN box blank?\" && (\n <>\n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
YES
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
NO
\n
\n \n \n )}\n {field.name ===\n \"SIP Transaction Type\" && (\n <>\n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Normal SIP
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Flexi
\n
\n {formValues.showFreedom && (\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Prosperity SIP
\n
\n )}\n \n \n )}\n {field.type !== \"radio\" &&\n (field.name !== \"EUIN\" ||\n formValues.EUINNO.value === \"no\" ? (\n ({\n label: i.label,\n value: i.value,\n })\n )}\n value={formValues[field.name].value}\n placeholder={`Select ${field.name}`}\n handleChange={handleScheme(field.name)}\n disabled={field.disabled}\n isError={formValues[field.name].isError}\n errorMessage={formValues[field.name].errorMessage}\n />\n ) : (\n
\n I/We hereby confirm that the EUIN box has been\n intentionally left the blank by me/us as this is an\n 'execution-only' transaction without any interaction\n or advice by any personnel of the above distributor\n or notwithstanding the advice of\n in-appropriateness,if any provided by any personnel\n of the distributor and the distributor has not\n charged any advisory fees on this transaction\n
\n ))}\n
\n {field.name === \"Amount\" && (\n Minimum Amount : ₹ {formValues.minimumAmount}\n )}\n \n )\n : field.type === \"date\" ? (\n <>\n \n {field.name}\n \n \n \n {!!formValues[field.name].errorMessage && (\n
\n {\" \"}\n {formValues[field.name].errorMessage}\n
\n )}\n
\n \n ) : field.type === \"Perpetual\" ? (\n
\n {!!formValues[\"SIP Period From\"].value && (\n \n \n \n Perpetual SIP\n
\n \n )}\n \n ) : (\n
\n e.key === \".\" && e.preventDefault()}\n />\n \n {field.name === \"No of Installments\"\n ? `Minimum number of installments : ${formValues.MinimumInstallements}`\n : field.name === \"Amount\"\n ? `Minimum Amount : ${formValues.MinimumAmount}`\n : field.name === \"Lumpsum Amount\"\n ? `Minimum Lumpsum Amount : ${formValues.MinimumLumpsumAmount}`\n : null}\n \n
\n )}\n {formValues[\"UMRN\"]?.value && field.name === \"UMRN\" && (\n
\n
\n
Mandate amount limit
\n
Start Date
\n
End Date
\n
Bank Name
\n
Bank Account No
\n
\n
\n
\n {formValues[\"UMRN\"].value\n ? formValues[\"UMRN\"].value.Amt\n : \"\"}\n (INR)\n
\n
\n {formValues[\"UMRN\"].value\n ? formValues[\"UMRN\"].value[\"MANDATE START DATE\"]\n : \"\"}{\" \"}\n
\n
\n {formValues[\"UMRN\"].value\n ? formValues[\"UMRN\"].value[\"MANDATE END DATE\"]\n : \"\"}\n
\n
\n {formValues[\"UMRN\"].value\n ? formValues[\"UMRN\"].value[\"BANK NAME\"]\n : \"\"}\n
{\" \"}\n
\n {formValues[\"UMRN\"].value\n ? formValues[\"UMRN\"].value[\"BANK A/C NO\"]\n : \"\"}\n
\n
\n
\n )}\n {formValues[\"UMRN\"]?.value &&\n field.name === \"UMRN\" &&\n formValues?.umrnList.length === 1 && (\n \n The investor has only one active mandate.\n \n )}\n\n \n ))}\n \n ))}\n {formValues.isFreedom && (\n\n
NOTE: On completion of the chosen SIP period, the units accumulated through Prosperity SIP shall be transferred to the selected target scheme (the scheme from which the SWP will get processed). If the target scheme is different, the switch shall take place on the T + 15th day or the subsequent business day, if T + 15th day is a non-business day (T being the last SIP instalment date).
\n )}\n <>\n setIsChecked((p) => !p)}\n checked={isChecked}\n />\n \n I/We have read and understood the contents of the Offer Document(s),\n Load Structure(s) of the respective Scheme(s) and agree to abide by\n the terms, conditions, rules and regulations of the respective\n Scheme(s).\n \n \n \n
\n
\n \n props.history.replace(\"/new-investor-transaction/bank-details\")\n }\n >\n BACK\n \n \n SUBMIT\n \n
\n \n );\n};\n\nexport default connect(\n ({ authReducer, transactions, newinvestor }) => {\n const { token, userId } = authReducer;\n const { euinList } = transactions;\n const {\n schemeparams,\n schemeDetails,\n applicantparams,\n fatcaDetails,\n investmentparams,\n nomineDetails,\n sip\n } = newinvestor;\n return {\n token,\n userId,\n euinList,\n schemeparams,\n schemeDetails,\n applicantparams,\n investmentparams,\n fatcaDetails,\n nomineDetails,\n sip\n };\n },\n {\n getNewPurchaseFundList,\n validateSubBroker,\n swpOptions,\n getCheckPanKotm,\n getCheckPanAotm,\n getSIPTenures,\n getMinimumAmount,\n CalcSIPEnddt,\n submitSipDetails,\n storeSchemeDetails,\n storeSchemeParams,\n getOtherSchemes,\n getNav,\n clearingFirstTimeInvestorJourney,\n storeSipDetails,\n storeSip\n }\n)(LummpsumSip);\n","import React, { useEffect, useState } from \"react\";\nimport Lumpsum from \"./Lumpsum\";\nimport LumpsumSip from \"./LumpsumSip\";\nimport {\n getNewPurchaseFundList,\n storeSchemeDetails,\n storeSchemeDetailsClick,\n storeSchemeDetailsScheme,\n} from \"shared/store/actions\";\nimport {\n FormControl,\n RadioGroup,\n Radio,\n FormControlLabel,\n} from \"@material-ui/core\";\nimport { connect } from \"react-redux\";\n\nconst SchemeDetails = (props) => {\n const schemes = [\"Lumpsum\", \"SIP\", \"Lumpsum + SIP\"];\n const [scheme, setScheme] = useState(\"Lumpsum\");\n const {schemeDetailsScheme} = props;\n // console.log(\"props\",props)\n useEffect(() => {\n window.scrollTo({\n top: 0,\n behavior: \"smooth\",\n });\n // console.log(props)\n setScheme((schemeDetailsScheme || \"Lumpsum\"))\n props.storeSchemeDetailsClick(true);\n }, []);\n return (\n <>\n
\n \n Mode of Transaction *\n \n \n { \n const selectedValue = e.target.value;\n setScheme(selectedValue);\n props.storeSchemeDetailsScheme(selectedValue);\n }}\n >\n {schemes.map((mode) => (\n \n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
\n {mode === \"SIP\" ? \"SIP(Without Payment)\" : mode}\n
\n
\n ))}\n \n \n \n {scheme === \"Lumpsum\" ? : \"\"}\n {scheme === \"SIP\" ? : \"\"}\n {scheme === \"Lumpsum + SIP\" ? : \"\"}\n \n );\n};\nexport default connect(\n ({ newinvestor: { schemeDetailsScheme }}) => ({ schemeDetailsScheme }),\n { getNewPurchaseFundList, storeSchemeDetails , storeSchemeDetailsClick , storeSchemeDetailsScheme})(\n SchemeDetails\n);\n","import { Checkbox, MenuItem, Select, TextField } from \"@material-ui/core\";\nimport {\n KeyboardDatePicker,\n MuiPickersUtilsProvider,\n} from \"@material-ui/pickers\";\nimport React from \"react\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nconst YES = \"Yes\";\nconst NO = \"No\";\nconst AutoField = ({\n field,\n value,\n onChange,\n style,\n error,\n disabled,\n investorType,\n ...props\n}) => {\n const commonProps = {\n value,\n onChange,\n disabled,\n id: `${field.key}Field`,\n name: field.name || field.key,\n errorMessage: error,\n variant: \"outlined\",\n size: \"small\",\n onBlur: props.onBlur,\n };\n\n if ([\"number\", \"email\", \"password\"].includes(field.type)) {\n commonProps.type = field.type;\n }\n if (field.type === \"countrycode\") {\n commonProps.onKeyDown = (e) => {\n const keys = [\"Backspace\", \"Delete\", \"ArrowLeft\", \"ArrowRight\", \"+\"];\n if (isNaN(e.key) && !keys.includes(e.key)) {\n e.preventDefault();\n }\n };\n }\n\n let inputField;\n\n switch (field.type) {\n case \"select\":\n const optionsList =\n typeof field.options === \"function\"\n ? field.options(field.key)\n : field.options;\n inputField = (\n <>\n \n \n Select One\n \n {optionsList.map((option, index) => (\n \n {option.name || option.label}\n \n ))}\n \n \n );\n\n break;\n\n case \"date\":\n inputField = (\n <>\n \n \n \n \n );\n break;\n\n case \"choice\":\n inputField = ;\n\n break;\n\n default:\n inputField = (\n \n );\n }\n\n return (\n \n \n {field.name} {field.isRequired ? \"*\" : \"\"}\n

\n {inputField}\n\n {!!error && (\n

\n {error}\n

\n )}\n \n );\n};\n\nconst defaultChoiceOptions = [\n { name: \"Yes\", value: YES },\n { name: \"No\", value: NO },\n];\n\nexport const ChoiceField = ({\n value,\n onChange,\n options = defaultChoiceOptions,\n disabled,\n}) => {\n return (\n
\n {options.map((o) => (\n
\n {\n const newValue = o.value;\n onChange({ target: { value: newValue } });\n }}\n />\n

\n {o.name}\n

\n
\n ))}\n
\n );\n};\n\nexport default AutoField;\n","import { default as React, useEffect, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { format } from \"date-fns\";\n\nimport {\n Radio,\n RadioGroup,\n FormControl,\n FormControlLabel,\n} from \"@material-ui/core\";\nimport { KycNotDoneDialog } from \"../../customModal\";\nimport { NEW_TRANSACTION_URL } from \"..\";\nimport {\n getCountriesList,\n getStatesList,\n storeApplicantParams,\n getKycDetails,\n checkKyc,\n getCitiesList as getCitiesByState,\n getRelationShipList,\n storePan,\n changeInMode,\n checkPAN,\n} from \"shared/store/actions\";\nimport {\n getFieldsFromMap,\n getFieldList,\n $wait,\n checkIfMinor,\n} from \"./lib/utils\";\n\nimport CardComponent from \"./lib/CardComponent\";\nimport CustomLoader from \"../../../forms/Loader\";\nimport AutoField from \"./lib/AutoField\";\nimport {\n countryCodeRegex,\n emailRegex,\n mobileRegex,\n nameRegex,\n panRegex,\n categoryOptions,\n genderOptions,\n familyDescriptionOptions,\n relationshipOptions,\n} from \".\";\n\nconst YES = \"Yes\";\nconst INDIVIDUAL = \"individual\";\n\nconst investorOptions = [\n { name: \"Individual\", value: INDIVIDUAL },\n { name: \"Minor\", value: \"minor\" },\n];\n\nconst InvestorDetails = (props) => {\n const SINGLE_APPLICANT = \"single\";\n\n const [investortype, setInvestorType] = useState({\n investorType: INDIVIDUAL,\n });\n\n const MAX_APPLICANTS = 3;\n\n const [disabledFields, setDisabledFields] = useState({});\n\n const validateSecondPan = (secondPan) => {\n const firstPan = formValues.pan_1;\n const thirdPan = formValues.pan_3;\n const { i_nompan1, i_nompan2, i_nompan3, i_nomguardianpan1, i_nomguardianpan2, i_nomguardianpan3 } = props.nomineDetails;\n\n let error;\n if (firstPan === secondPan) {\n setFieldValue(\"pan_2\", \"\");\n error = \"PAN of the First Joint Holder should not be same as PAN 1\";\n const id = document.getElementById(\"pan_2Field\");\n id.focus();\n } else if (secondPan.length > 3 && secondPan[3] !== \"P\") {\n // setFieldValue(\"pan_2\", \"\");\n error =\n \"Entered PAN Number is not related to Individual PAN Number, So please Enter Individual PAN Number\";\n const id = document.getElementById(\"pan_2Field\");\n id.focus();\n } else if (secondPan === thirdPan) {\n setFieldValue(\"pan_3\", \"\");\n } else if (\n (i_nompan1 && i_nompan1.length > 0 && i_nompan1 === secondPan) ||\n (i_nompan2 && i_nompan2.length > 0 && i_nompan2 === secondPan) ||\n (i_nompan3 && i_nompan3.length > 0 && i_nompan3 === secondPan) ||\n (i_nomguardianpan1 && i_nomguardianpan1.length > 0 && i_nomguardianpan1 === secondPan) ||\n (i_nomguardianpan2 && i_nomguardianpan2.length > 0 && i_nomguardianpan2 === secondPan) ||\n (i_nomguardianpan3 && i_nomguardianpan3.length > 0 && i_nomguardianpan3 === secondPan)\n ) {\n error = \"Joint holder PAN cannot be the same as the nominee PAN or the guardian PAN\";\n }else {\n const isValid = panRegex.test(secondPan || \"\");\n if (!isValid) {\n error = \"Please enter a valid PAN\";\n }\n }\n return error;\n };\n\n const validateThirdPan = (thirdPan) => {\n const firstPan = formValues.pan_1;\n const secondPan = formValues.pan_2;\n const { i_nompan1, i_nompan2, i_nompan3, i_nomguardianpan1, i_nomguardianpan2, i_nomguardianpan3 } = props.nomineDetails;\n let error;\n if (firstPan === thirdPan) {\n setFieldValue(\"pan_3\", \"\");\n error = \"PAN of the Second Joint Holder should not be same as PAN 1\";\n const id = document.getElementById(\"pan_3Field\");\n id.focus();\n } else if (secondPan === thirdPan) {\n setFieldValue(\"pan_3\", \"\");\n error =\n \"PAN of the Second Joint Holder should not be same as First Joint Holder\";\n const id = document.getElementById(\"pan_3Field\");\n id.focus();\n } else if (\n (i_nompan1 && i_nompan1.length > 0 && i_nompan1 === thirdPan) ||\n (i_nompan2 && i_nompan2.length > 0 && i_nompan2 === thirdPan) ||\n (i_nompan3 && i_nompan3.length > 0 && i_nompan3 === thirdPan) ||\n (i_nomguardianpan1 && i_nomguardianpan1.length > 0 && i_nomguardianpan1 === thirdPan) ||\n (i_nomguardianpan2 && i_nomguardianpan2.length > 0 && i_nomguardianpan2 === thirdPan) ||\n (i_nomguardianpan3 && i_nomguardianpan3.length > 0 && i_nomguardianpan3 === thirdPan)\n ) {\n error = \"Joint holder PAN cannot be the same as the nominee PAN or the guardian PAN\";\n }else if (thirdPan.length > 3 && thirdPan[3] !== \"P\") {\n // setFieldValue(\"pan_3\", \"\");\n error =\n \"Entered PAN Number is not related to Individual PAN Number, So please Enter Individual PAN Number\";\n const id = document.getElementById(\"pan_3Field\");\n id.focus();\n }\n if (!!thirdPan && !panRegex.test(thirdPan)) {\n error = \"Please enter a valid PAN\";\n }\n return error;\n };\n\n const applicantSchema = {\n pan: {\n name:\n investortype.investorType != \"minor\"\n ? \"PAN of Primary Holder\"\n : \"Minor PAN\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n placeholder: \"Enter PAN of First Applicant\",\n validate: panRegex,\n },\n name: {\n name:\n investortype.investorType != \"minor\"\n ? \"Name (As per PAN)\"\n : \"Minor Name\",\n isRequired: true,\n placeholder: \"Enter Name\",\n validate: nameRegex,\n },\n dob: {\n name: \"Date of Birth (As per PAN)\",\n type: \"date\",\n isRequired: true,\n },\n\n emailFamily: {\n name: \"Email Family Description\",\n type: \"select\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n default: \"SE\",\n options: familyDescriptionOptions,\n },\n email: {\n name: \"Email ID\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n placeholder: \"Enter Email ID\",\n validate: emailRegex,\n },\n gender: {\n name: \"Gender\",\n type: \"select\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n options: genderOptions,\n },\n category: {\n name: \"Category\",\n type: \"select\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n options: categoryOptions,\n },\n countrycode: {\n name: \"Country Code\",\n validate: countryCodeRegex,\n isRequired: investortype.investorType === \"minor\" ? false : true,\n placeholder: \"Enter Country Code\",\n default: \"+91\",\n type: \"countrycode\",\n },\n mobileFamily: {\n name: \"Mobile Family Description\",\n type: \"select\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n default: \"SE\",\n options: familyDescriptionOptions,\n },\n mobile: {\n name: \"Mobile Number\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n placeholder: \"Enter Mobile Number\",\n validate: mobileRegex,\n },\n guardianname: {\n name: \"Guardian Name\",\n isRequired: true,\n placeholder: \"Enter Guardian Name\",\n validate: nameRegex,\n hidden: true,\n },\n guardianpan: {\n name: \"Guardian PAN\",\n isRequired: true,\n placeholder: \"Enter PAN of First Applicant\",\n validate: panRegex,\n hidden: true,\n },\n guardiandob: {\n name: \"Guardian Date of Birth\",\n type: \"date\",\n isRequired: true,\n hidden: true,\n },\n guardianemailFamily: {\n name: \"Guardian Email Family Description\",\n type: \"select\",\n isRequired: true,\n default: \"SE\",\n options: familyDescriptionOptions,\n hidden: true,\n },\n guardianemail: {\n name: \"Guardian Email ID\",\n isRequired: true,\n placeholder: \"Enter Guardian Email ID\",\n validate: emailRegex,\n hidden: true,\n },\n guardianmobileFamily: {\n name: \"Guardian Mobile Family Description\",\n type: \"select\",\n isRequired: true,\n default: \"SE\",\n options: familyDescriptionOptions,\n hidden: true,\n },\n guardianmobile: {\n name: \"Guardian Mobile Number\",\n isRequired: true,\n placeholder: \"Enter Guardian Mobile Number\",\n validate: mobileRegex,\n hidden: true,\n },\n guardianRelationship: {\n name: \"Guardian Relationship with Minor\",\n type: \"select\",\n isRequired: true,\n options: relationshipOptions,\n hidden: true,\n },\n address1: {\n name: \"Address1\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n placeholder: \"Enter Address\",\n hidden: true,\n },\n address2: {\n name: \"Address2\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n placeholder: \"Enter Address\",\n hidden: true,\n },\n city: {\n name: \"City\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n placeholder: \"Enter City\",\n validate: nameRegex,\n hidden: true,\n },\n state: {\n name: \"State\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n placeholder: \"Enter State\",\n validate: nameRegex,\n hidden: true,\n },\n country: {\n name: \"Country\",\n isRequired: investortype.investorType === \"minor\" ? false : true,\n placeholder: \"Enter Country\",\n validate: nameRegex,\n hidden: true,\n },\n };\n\n const initialFormValues = {\n modeOfHolding: SINGLE_APPLICANT,\n kycCompleted_1: YES,\n };\n\n const allFieldsMax = getFieldList({\n ...getFieldsFromMap(\"\", applicantSchema, MAX_APPLICANTS),\n });\n\n for (let f of allFieldsMax) {\n initialFormValues[f.key] = initialFormValues[f.key] || f.default || \"\";\n }\n\n const [formValues, setFormValues] = useState(initialFormValues);\n const [errors, setErrors] = useState({});\n\n const showJointHolders = formValues.modeOfHolding !== SINGLE_APPLICANT;\n const noOfApplicants = showJointHolders ? 3 : 1;\n\n const applicantFields = getFieldsFromMap(\n \"\",\n applicantSchema,\n noOfApplicants,\n (field, i, k) => {\n if (i > 1) {\n const pan2 = formValues[`pan_${i}`];\n const panNotFilled = !pan2 || errors[`pan_${i}`];\n if (k === \"pan\") {\n field.name =\n i === 2 ? \"PAN of Joint Holder 1\" : \"PAN of Joint Holder 2\";\n field.validate = validateSecondPan;\n } else if (panNotFilled) {\n field.hidden = true;\n }\n if (i > 2) {\n if (k == \"pan\") {\n if (formValues.pan_2 && !errors.pan_2) {\n field.hidden = false;\n field.validate = validateThirdPan;\n } else {\n field.hidden = true;\n field.validate = null;\n }\n field.isRequired = false;\n }\n }\n }\n const category = formValues[`category_${i}`];\n const nriFields = [\"address1\", \"address2\", \"state\", \"country\", \"city\"];\n const minorFields = [\n \"guardianname\",\n \"guardianpan\",\n \"guardiandob\",\n \"guardianemailFamily\",\n \"guardianemail\",\n \"guardianmobileFamily\",\n \"guardianmobile\",\n \"guardianmobileFamily\",\n \"guardianRelationship\",\n ];\n if (category === \"20\" && i===1) {\n const isNriField = nriFields.some((fieldName) => fieldName === k);\n if (!!isNriField) field.hidden = false;\n }\n if (investortype.investorType === \"minor\") {\n const isMinorFields = minorFields.some((fieldName) => fieldName === k);\n if (!!isMinorFields) field.hidden = false;\n }\n }\n );\n\n const validateField = async (field, value) => {\n const isMinorInvestor = investortype.investorType == \"minor\"\n const currentDate = new Date();\n const minAgeDate = new Date();\n minAgeDate.setFullYear(currentDate.getFullYear() - 18);\n const formattedDate = new Date(`${minAgeDate.getMonth() + 1}/${minAgeDate.getDate()}/${minAgeDate.getFullYear()}`);\n\n\n\n\n\n const validate = field.validate;\n let isValid = true;\n let forDifferentMessage1 = true;\n let forDifferentMessage2 = true;\n let errorMessage = \"\";\n if (!value && field.isRequired && !field.hidden) {\n errorMessage = `${field.name} is required to proceed.`;\n } else if (typeof validate == \"function\") {\n field.key.includes(\"nom_email\")\n ? (errorMessage = validate(field, value))\n : (errorMessage = validate(value));\n } else if (typeof validate == \"object\" && field.isRequired) {\n const validationRegex = validate;\n isValid = validationRegex.test(value || \"\");\n if (isValid && field.key == \"email_1\") {\n isValid = value.includes(\".\");\n }\n if (isValid && field.key === \"countrycode_1\" && formValues.category_1===\"20\" && value === \"+91\") {\n isValid=false;\n }\n } else if (typeof validate == \"object\" && !!value) {\n const validationRegex = validate;\n isValid = validationRegex.test(value);\n }\n if (field.name===\"Minor PAN\" && value.length===10 && value.charAt(3)!=='P') {\n isValid=false;\n }\n if (\n field.name === \"Minor PAN\" &&\n (\n [props.nomineDetails?.i_nompan1, props.nomineDetails?.i_nompan2, props.nomineDetails?.i_nompan3].includes(value) ||\n [props.nomineDetails?.i_nomguardianpan1, props.nomineDetails?.i_nomguardianpan2, props.nomineDetails?.i_nomguardianpan3].includes(value)\n )\n ) {\n errorMessage = value === props.nomineDetails?.i_nompan1 ? \"Entered pan cannot be same as nominee pan\" : \"Entered pan cannot be same as guardian pan\";\n } \n if (field.name === \"Guardian Date of Birth\" && isMinorInvestor) {\n const enteredDateObj = new Date(value);\n if (enteredDateObj > formattedDate) {\n isValid=false;\n }\n }\n if(field.name===\"Date of Birth (As per PAN)\" && !isMinorInvestor){\n const enteredDateObj = new Date(value);\n if (enteredDateObj > formattedDate) {\n isValid=false;\n }\n }\n if (field.name===\"Date of Birth (As per PAN)\" && isMinorInvestor) {\n const enteredDateObj = new Date(value);\n if (enteredDateObj > currentDate || enteredDateObj < formattedDate) {\n isValid = false;\n }\n }\n if (\n (field.key === \"guardianpan_1\" && formValues.pan_1 === value) ||\n (field.key === \"pan_1\" && formValues.guardianpan_1 === value)\n ) {\n forDifferentMessage1 = false;\n errorMessage = `Minor PAN and Guardian PAN should not be the same`;\n }\n if (\n (field.key === \"guardianname_1\" && formValues.name_1 === value) ||\n (field.key === \"name_1\" && formValues.guardianname_1 === value)\n ) {\n forDifferentMessage2 = false;\n errorMessage = `Minor Name and Guardian Name should not be the same`;\n }\n\n if (!isValid) {\n errorMessage = `Please enter a valid ${field.name}`;\n }\n setFieldError(field.key, errorMessage);\n await $wait(10);\n if (errorMessage) {\n return { [field.key]: errorMessage };\n }\n\n if (!value && field.isRequired && !field.hidden) {\n errorMessage = `${field.name} is required to proceed.`;\n }\n if (typeof validate == \"function\") {\n field.key.includes(\"nom_email\")\n ? (errorMessage = validate(field, value))\n : (errorMessage = validate(value));\n } else if (typeof validate == \"object\" && field.isRequired) {\n const validationRegex = validate;\n isValid = validationRegex.test(value || \"\");\n } else if (typeof validate == \"object\" && !!value) {\n const validationRegex = validate;\n isValid = validationRegex.test(value);\n }\n if (!isValid) {\n errorMessage = `Please enter a valid ${field.name}`;\n }\n setFieldError(field.key, errorMessage);\n await $wait(10);\n if (errorMessage) {\n return { [field.key]: errorMessage };\n }\n };\n\n const [isLoading, setIsLoading] = useState(false);\n const [displayModal1, setDisplayModal1] = useState(false);\n const [displayModal2, setDisplayModal2] = useState(false);\n\n const [previouslyCheckedPAN, setPreviouslyCheckedPAN] = useState({\n pan_2: \"\",\n pan_3: \"\",\n });\n\n const applicantFieldList = getFieldList(applicantFields);\n\n const allFields = [...applicantFieldList];\n\n const removeJointHolderDetails = () => {\n try {\n const newFormValues = formValues;\n const jointHoldersFields = [...applicantFieldList];\n for (let f of jointHoldersFields) {\n if ([\"_2\", \"_3\"].some((num) => f.key.includes(num))) {\n delete newFormValues[f.key];\n }\n }\n setFormValues(newFormValues);\n } catch (error) {\n console.error(error);\n }\n };\n\n const prefillFormValues = async () => {\n const { location } = props;\n const { state } = location;\n\n if (!!state && !!state.pan && !props.applicantparams.i_fname) {\n setIsLoading(true);\n const { pan } = state;\n try {\n const kycResponse = await props.getKycDetails({ pan });\n const { DtData } = kycResponse;\n const kycDetails = DtData[0];\n for (let key in kycDetails) {\n const val = kycDetails[key];\n if (!val) {\n key === \"country\"\n ? (kycDetails[key] = \"India\")\n : (kycDetails[key] = \"\");\n }\n }\n\n const { name1, gender, dob, email, mobile, app_cat } = kycDetails;\n let validDate=\"\"\n if(!!dob){\n const currentDate = new Date();\n let minYear = currentDate.getFullYear() - 18;\n const dateValue = format(new Date(parseInt(dob.substr(6))), \"MM/dd/yyyy\");\n const splitdate = dateValue.split(\"/\");\n const year = splitdate[2];\n validDate = (investortype.investorType !== \"minor\" && year <= minYear) ? dateValue : (investortype.investorType === \"minor\" && year <= minYear) ? \"\" : dateValue;\n }\n let kycName =\"\"\n if(name1.length===0){\n const response = await props.checkKyc({\n fund: \"176\",\n userid: props.userId,\n i_pan: pan,\n });\n const {\n DtData: [info],\n } = response;\n if(!!response?.DtData?.[0]?.invname){\n console.log(\"response\",response)\n \n console.log(\"response?.DtData?.[0]?.invname\",response?.DtData?.[0]?.invname)\n kycName=response?.DtData?.[0]?.invname\n }\n }\n const kycFormValues = {\n name_1: name1.length>0?name1:kycName,\n pan_1: pan,\n dob_1: !!validDate?validDate:\"\",\n email_1: email,\n gender_1: gender,\n mobile_1: mobile.trim(),\n category_1: app_cat === \"22\" ? \"20\" : app_cat,\n status_1: +app_cat === 11 ? \"I\" : +app_cat > 20 ? \"N\" : \"\",\n };\n setFormValues((prev) => {\n return { ...prev, ...kycFormValues };\n });\n setDisabledFields((prev) => {\n return {\n ...prev,\n pan_1: investortype.investorType != \"minor\" ? true : false,\n kycCompleted_1: true,\n status_1: true,\n name_1: false,\n };\n });\n } catch (err) {\n setFormValues((prev) => {\n return {\n ...prev,\n pan_1: pan,\n };\n });\n const response = await props.checkKyc({\n fund: \"176\",\n userid: props.userId,\n i_pan: pan,\n });\n const {\n DtData: [info],\n } = response;\n if(!!response?.DtData?.[0]?.invname){\n setFormValues((prev) => {\n return {\n ...prev,\n [`name_1`]: response?.DtData?.[0]?.invname,\n };\n });\n setDisabledFields((prev) => {\n return {\n ...prev,\n [`name_1`]: false,\n };\n });\n }\n setDisabledFields((prev) => {\n return {\n ...prev,\n pan_1: true,\n kycCompleted_1: true,\n status_1: true,\n };\n });\n } finally {\n setIsLoading(false);\n }\n }\n };\n const gotoEkyc = () => {\n props.history.replace(\n NEW_TRANSACTION_URL + `/new-investor/ekyc/${formValues.pan_2}`\n );\n };\n const checkReduxStore = async () => {\n const { applicantparams } = props;\n const {\n i_category,\n country_code,\n i_dob,\n i_email,\n i_email3,\n i_fname,\n i_invgender,\n i_mobileno,\n i_pangno,\n fEmailFlag,\n fMobileFlag,\n typeofinvestor,\n JHfEmailFlag1,\n JHfMobileFlag1,\n JHfEmailFlag2,\n JHfMobileFlag2,\n i_genMOH,\n i_pangno2,\n i_jholder1,\n i_invgender2,\n i_jh1dob,\n i_category2,\n JHcountry_code1,\n JHcountry_code2,\n i_mobileno2,\n i_pangno3,\n i_jholder2,\n i_email2,\n i_invgender3,\n i_jh2dob,\n i_category3,\n i_mobileno3,\n i_shnriadd1,\n i_shnriadd2,\n i_shnricity,\n i_shnristate,\n i_shnricountry,\n i_jhnriadd1,\n i_jhnriadd2,\n i_jhnricity,\n i_jhnristate,\n i_jhnricountry,\n i_nriadd1,\n i_nriadd2,\n i_nricity,\n i_nristate,\n i_nricountry,\n i_guardianname,\n i_guardianpan,\n i_guadianmobile,\n i_guardianemail,\n i_guardianEmailFlag,\n i_guardianMobileFlag,\n i_guardianrelationship,\n i_guardiandob,\n } = applicantparams;\n if (!!props.applicantparams.i_fname) {\n setFormValues({\n ...formValues,\n [`name_1`]: i_fname,\n [`pan_1`]: i_pangno,\n [`dob_1`]: i_dob,\n [`gender_1`]: i_invgender,\n [`email_1`]: i_email,\n [`mobile_1`]: i_mobileno,\n [`category_1`]: i_category,\n [`countrycode_1`]: country_code,\n [`emailFamily_1`]: fEmailFlag,\n [`mobileFamily_1`]: fMobileFlag,\n [`modeOfHolding`]: i_genMOH === \"1\" ? \"single\" : \"anyone\",\n ...(!!i_pangno2 && {\n [`name_2`]: i_jholder1,\n [`pan_2`]: i_pangno2,\n [`dob_2`]: i_jh1dob,\n [`gender_2`]: i_invgender2,\n [`email_2`]: i_email2,\n [`mobile_2`]: i_mobileno2,\n [`countrycode_2`]: JHcountry_code1,\n [`category_2`]: i_category2,\n [`emailFamily_2`]: JHfEmailFlag1,\n [`mobileFamily_2`]: JHfMobileFlag1,\n }),\n ...(!!i_pangno3 && {\n [`name_3`]: i_jholder2,\n [`pan_3`]: i_pangno3,\n [`dob_3`]: i_jh2dob,\n [`gender_3`]: i_invgender3,\n [`email_3`]: i_email3,\n [`mobile_3`]: i_mobileno3,\n [`countrycode_3`]: JHcountry_code2,\n [`category_3`]: i_category3,\n [`emailFamily_3`]: JHfEmailFlag2,\n [`mobileFamily_3`]: JHfMobileFlag2,\n }),\n ...(i_category === \"20\" && {\n [`address1_1`]: i_nriadd1,\n [`address2_1`]: i_nriadd2,\n [`city_1`]: i_nricity,\n [`state_1`]: i_nristate,\n [`country_1`]: i_nricountry,\n }),\n // ...(i_category2 === \"20\" && {\n // [`address1_2`]: i_jhnriadd1,\n // [`address2_2`]: i_jhnriadd2,\n // [`city_2`]: i_jhnricity,\n // [`state_2`]: i_jhnristate,\n // [`country_2`]: i_jhnricountry,\n // }),\n // ...(i_category3 === \"20\" && {\n // [`address1_3`]: i_shnriadd1,\n // [`address2_3`]: i_shnriadd2,\n // [`city_3`]: i_shnricity,\n // [`state_3`]: i_shnristate,\n // [`country_3`]: i_shnricountry,\n // }),\n ...(typeofinvestor === \"M\" && {\n [`guardianname_1`]: i_guardianname,\n [`guardianpan_1`]: i_guardianpan,\n [`guardiandob_1`]: i_guardiandob,\n [`guardianmobile_1`]: i_guadianmobile,\n [`guardianemail_1`]: i_guardianemail,\n [`guardianemailFamily_1`]: i_guardianEmailFlag,\n [`guardianmobileFamily_1`]: i_guardianMobileFlag,\n [`guardianRelationship_1`]: i_guardianrelationship,\n }),\n });\n setInvestorType({\n investorType: typeofinvestor === \"M\" ? \"minor\" : \"individual\",\n });\n }\n setDisabledFields((prev) => {\n return {\n ...prev,\n pan_1: true,\n name_1:false,\n name_2: !!props.applicantparams.i_jholder1 || !!formValues.name_2 !== \"\",\n name_3: !!props.applicantparams.i_jholder2 || !!formValues.name_3 !== \"\",\n }; } )\n };\n const firstRender = async () => {\n window.scrollTo({\n top: 0,\n behavior: \"smooth\",\n });\n if (!!props.location.state) {\n props.storePan(props.location.state.pan);\n }\n await prefillFormValues();\n await checkReduxStore();\n };\n\n useEffect(() => {\n firstRender();\n }, []);\n const handleInvestor = async (e) => {\n setInvestorType({ investorType: e.target.value });\n if (e.target.value === \"minor\") {\n setFormValues((prev) => {\n return {\n ...prev,\n [\"guardianpan_1\"]: formValues.pan_1,\n [\"guardianname_1\"]: formValues.name_1,\n [\"guardiandob_1\"]: formValues.dob_1,\n [\"guardianemail_1\"]: formValues.email_1,\n [\"guardianmobile_1\"]: formValues.mobile_1,\n [`modeOfHolding`]: SINGLE_APPLICANT,\n [`name_1`]: \"\",\n [`pan_1`]: \"\",\n [`dob_1`]: \"\",\n [`gender_1`]: \"\",\n [`email_1`]: \"\",\n [`mobile_1`]: \"\",\n [`category_1`]: \"\",\n [`emailFamily_1`]: \"\",\n [`mobileFamily_1`]: \"\",\n };\n });\n }\n setDisabledFields((prev) => {\n return {\n ...prev,\n name_1:false ,\n pan_1:\n e.target.value === \"individual\" && formValues.pan_1.length === 10\n ? true\n : false,\n };\n });\n setDisabledFields((prev) => {\n return {\n ...prev,\n guardianpan_1: true,\n };\n });\n\n };\n const submit = async () => {\n setIsLoading(true);\n const errors = [];\n\n for (let field of allFields) {\n const error = await validateField(field, formValues[field.key]);\n if (error) {\n errors.push(error);\n }\n }\n const isValid = errors.filter((e) => !!e).length === 0;\n const getStatus = (category) => category === \"20\" ? \"NRI\" : \"RI\";\n const getInvStatus = (category) => !!category ? getStatus(category) : \"\";\n\n try {\n if (!!isValid) {\n const payload = {\n pan: formValues.pan_1,\n PanName: formValues.name_1,\n PanDOB: !!formValues.dob_1\n ? convertDateFormat(formValues.dob_1)\n : formValues.dob_1,\n folio: \"\",\n trType: \"New\",\n fund: formValues.fund_1,\n scheme: \"\",\n plan: \"\",\n guardianPan: formValues.guardianpan_1,\n guardianPanDOB: !!formValues.guardiandob_1\n ? convertDateFormat(formValues.guardiandob_1)\n : formValues.guardiandob_1,\n guardianPanName: formValues.guardianname_1,\n jointHolder1Pan: formValues.pan_2,\n jointHolder1PanName: formValues.name_2,\n jointHolder1PanDOB: !!formValues.dob_2\n ? convertDateFormat(formValues.dob_2)\n : formValues.dob_2,\n jointHolder2Pan: formValues.pan_3,\n jointHolder2PanName: formValues.name_3,\n jointHolder2PanDOB: !!formValues.dob_3\n ? convertDateFormat(formValues.dob_3)\n : formValues.dob_3,\n invStatus: getInvStatus(formValues.category_1),\n JH1_invStatus:getInvStatus(formValues.category_2),\n JH2_invStatus:getInvStatus(formValues.category_3), \n };\n const panCheckResponse = await props.checkPAN(payload);\n validateResponse(panCheckResponse);\n const ApplicantDetails = {\n i_Ckyc1: formValues.kycCompleted_1,\n i_category: formValues.category_1,\n i_dob: formValues.dob_1,\n i_email: formValues.email_1,\n i_fname: formValues.name_1,\n i_invgender: formValues.gender_1,\n i_mobileno: formValues.mobile_1,\n i_pangno: formValues.pan_1,\n fEmailFlag: formValues.emailFamily_1,\n fMobileFlag: formValues.mobileFamily_1,\n typeofinvestor: investortype.investorType === \"individual\" ? \"I\" : \"M\",\n i_genMOH: formValues.modeOfHolding === \"single\" ? \"1\" : \"4\",\n country_code: formValues.countrycode_1,\n ...(formValues.category_1 === \"20\" && {\n i_nriadd1: formValues.address1_1,\n i_nriadd2: formValues.address2_1,\n i_nricity: formValues.city_1,\n i_nristate: formValues.state_1,\n i_nricountry: formValues.country_1,\n }),\n // ...(formValues.category_2 === \"20\" && {\n // i_jhnriadd1: formValues.address1_2,\n // i_jhnriadd2: formValues.address2_2,\n // i_jhnricity: formValues.city_2,\n // i_jhnristate: formValues.state_2,\n // i_jhnricountry: formValues.country_2,\n // }),\n // ...(formValues.category_3 === \"20\" && {\n // i_shnriadd1: formValues.address1_3,\n // i_shnriadd2: formValues.address2_3,\n // i_shnricity: formValues.city_3,\n // i_shnristate: formValues.state_3,\n // i_shnricountry: formValues.country_3,\n // }),\n\n ...(formValues.modeOfHolding === \"anyone\" &&\n formValues.pan_2.length === 10 && {\n i_pangno2: formValues.pan_2,\n i_jholder1: formValues.name_2,\n i_email2: formValues.email_2,\n JHfEmailFlag1: formValues.emailFamily_2,\n JHfMobileFlag1: formValues.mobileFamily_2,\n i_invgender2: formValues.gender_2,\n i_jh1dob: formValues.dob_2,\n i_category2: formValues.category_2===\"20\"?\"21\":formValues.category_2,\n i_mobileno2: formValues.mobile_2,\n JHcountry_code1: formValues.countrycode_2,\n }),\n ...(formValues.modeOfHolding === \"anyone\" &&\n formValues.pan_3.length === 10 && {\n i_pangno3: formValues.pan_3,\n i_jholder2: formValues.name_3,\n i_email3: formValues.email_3,\n JHfEmailFlag2: formValues.emailFamily_3,\n JHfMobileFlag2: formValues.mobileFamily_3,\n i_invgender3: formValues.gender_3,\n i_jh2dob: formValues.dob_3,\n i_category3: formValues.category_3===\"20\"?\"21\":formValues.category_3,\n i_mobileno3: formValues.mobile_3,\n JHcountry_code2: formValues.countrycode_3,\n }),\n ...(investortype.investorType === \"minor\" && {\n i_guardianname: formValues.guardianname_1,\n guard_dob: formValues.guardiandob_1,\n i_guardianpan: formValues.guardianpan_1,\n i_guadianmobile: formValues.guardianmobile_1,\n i_guardianemail: formValues.guardianemail_1,\n i_guardianEmailFlag: formValues.guardianemailFamily_1,\n i_guardianMobileFlag: formValues.guardianmobileFamily_1,\n i_guardianrelationship: formValues.guardianRelationship_1,\n }),\n };\n if (isValid) {\n props.storeApplicantParams(ApplicantDetails);\n props.history.push({\n pathname: \"/new-investor-transaction/fatca-details\",\n state: { formValues: formValues },\n });\n } else {\n const id = Object.keys(errors[0])[0] + \"Field\";\n const element = document.getElementById(id);\n element.focus();\n setIsLoading(false);\n }\n } else {\n setIsLoading(false);\n }\n } catch (error) {\n setIsLoading(false);\n alert(error.message);\n }\n\n // End of Sumbit, thank you, visit again.\n function validateResponse(response) {\n setIsLoading(false);\n if (response.Transaction_allow === \"N\") {\n if (response.PASFlag === \"N\") {\n throw new Error(response.PASRemarks);\n }\n if (response.PANFlag === \"N\") {\n throw new Error(response.PANRemarks);\n }\n if (response.PANNameMatch === \"N\") {\n throw new Error(\"Entered Primary name does not match with PAN record\");\n }\n if (response.JH1_panFlag === \"N\") {\n throw new Error(response.JH1_panRemarks);\n }\n if (response.JH2_panFlag === \"N\") {\n throw new Error(response.JH2_panRemarks);\n }\n if (response.G_panFlag === \"N\") {\n throw new Error(response.G_panRemarks);\n }\n if (response.JH1_PANNameMatch === \"N\") {\n throw new Error(\n \"Entered Joint Holder 1 name does not match with PAN record\"\n );\n }\n if (response.JH2_PANNameMatch === \"N\") {\n throw new Error(\n \"Entered Joint Holder 2 name name does not match with PAN record\"\n );\n }\n if (response.G_PANNameMatch === \"N\") {\n throw new Error(\n \"Entered Guardian name does not match with PAN record\"\n );\n }\n if (response.PanDOBMatch === \"N\") {\n throw new Error(\"Entered Primary DOB does not match with PAN record\");\n }\n if (response.JH1_PanDOBMatch === \"N\") {\n throw new Error(\n \"Entered Joint Holder 1 DOB does not match with PAN record\"\n );\n }\n if (response.JH2_PanDOBMatch === \"N\") {\n throw new Error(\n \"Entered Joint Holder 2 DOB name does not match with PAN record\"\n );\n }\n if (response.G_PanDOBMatch === \"N\") {\n throw new Error(\"Entered Guadian DOB does not match with PAN record\");\n }\n }\n }\n };\n\n const convertDateFormat = (originalDate) => {\n const [month, day, year] = originalDate.split(\"/\");\n\n const convertedDate = `${day}/${month}/${year}`;\n\n return convertedDate;\n };\n\n const setFieldValue = (field_key, value) => {\n setFormValues((values) => ({\n ...values,\n [field_key]: value,\n }));\n };\n\n const setFieldError = (field_key, errorMessage) => {\n setErrors((errors) => ({\n ...errors,\n [field_key]: errorMessage,\n }));\n };\n\n const handleChange = (field) => {\n return (e) => {\n if(field.type === 'date' && isNaN(Date.parse(e))) {\n setErrors(errors => ({\n ...errors,\n [field.key]: 'Please enter valid date'\n }))\n return;\n }\n const value =\n typeof e == \"string\"\n ? e\n : field.type === \"date\"\n ? format(new Date(e), \"MM/dd/yyyy\")\n : field.key.includes(\"pan\")\n ? e.target.value.toUpperCase()\n : (e.target && e.target.value) || \"\";\n if (field.key.includes(\"category\")) {\n let countryCode = \"+91\";\n const status = +value === 11 ? \"I\" : +value === 20 ? \"N\" : \"\";\n const key = field.key.replace(\"category\", \"status\");\n setFieldValue(key, status);\n if (String(value) === \"20\") {\n countryCode = \"\";\n }\n const countryCodeKey = field.key.replace(\"category\", \"countrycode\");\n setFieldValue(countryCodeKey, countryCode);\n }\n setFieldValue(field.key, value);\n validateField(field, value)\n .then((error) => {\n if (\n field.key.includes(\"pan\") &&\n value &&\n value.length == 10 &&\n !error\n ) {\n const id = field.key + \"Field\";\n const element = document.getElementById(id);\n element.blur();\n getKycStatus(field)({ target: { value } });\n setDisabledFields((prev) => ({\n ...prev,\n [id === \"pan_1Field\" && investortype.investorType === \"minor\" ? \"pan_1\" : id === \"pan_2Field\" ? \"pan_2\" : id === \"pan_3Field\" ? \"pan_3\" : \"\"]: true,\n }));\n }\n })\n .catch((err) => {\n console.error(err);\n setFieldValue(field.key, \"\");\n });\n };\n };\n\n const handleBlur = (field) => {\n return async (e) => {\n const parts = e.target.value.split('/')\n const value =\n typeof e == \"string\" ? e : (e.target && e.target.value) || \"\";\n const error = await validateField(field, value);\n if (error) {\n setFieldValue(field.key, \"\");\n }\n }\n };\n\n const getKycStatus = (field) => async (e) => {\n const value = e.target.value;\n const n = field.key.split(\"_\")[1];\n if (field.key != \"guardianpan_1\") {\n setIsLoading(true);\n try {\n const error = await validateField(field, value);\n\n if (error) {\n return;\n }\n\n const response = await props.checkKyc({\n fund: \"176\",\n userid: props.userId,\n i_pan: value,\n });\n const {\n DtData: [info],\n } = response;\n if(!!response?.DtData?.[0]?.invname){\n setFormValues((prev) => {\n return {\n ...prev,\n [`name_${n}`]: response?.DtData?.[0]?.invname,\n };\n });\n setDisabledFields((prev) => {\n return {\n ...prev,\n [`name_${n}`]: false,\n };\n });\n }\n if (info.KYCBlock !== \"N\") {\n +n === 2 ? setDisplayModal1(true) : setDisplayModal2(true);\n setPreviouslyCheckedPAN((val) => ({ ...val, [field.key]: \"\" }));\n return;\n }\n const kycDetails = await props.getKycDetails({ pan: value });\n const { DtData } = kycDetails;\n const {\n name1,\n gender,\n app_pangno,\n app_occ,\n dob,\n email,\n mobile,\n app_cat,\n } = DtData[0];\n let validDate=\"\"\n if(!!dob && investortype.investorType !== \"minor\"){\n const currentDate =new Date()\n let minYear = currentDate.getFullYear() - 18\n const dateValue = format(new Date(parseInt(dob.substr(6))), \"MM/dd/yyyy\")\n const splitdate = dateValue.split(\"/\")\n const year = splitdate[2]\n if(year>minYear){\n validDate=\"\" \n } else {\n validDate=dateValue\n }\n } else {\n const currentDate =new Date()\n let minYear = currentDate.getFullYear() - 18\n const dateValue = format(new Date(parseInt(dob.substr(6))), \"MM/dd/yyyy\")\n const splitdate = dateValue.split(\"/\")\n const year = splitdate[2]\n if(year>minYear){\n validDate=dateValue\n } else {\n validDate=\"\"\n }\n }\n const kycFormValues = {\n [`name_${n}`]: name1,\n [`pan_${n}`]: app_pangno,\n [`dob_${n}`]: validDate,\n [`gender_${n}`]: gender,\n [`email_${n}`]: email,\n [`mobile_${n}`]: mobile,\n [`kyc_occupation_${n}`]: app_occ,\n [`category_${n}`]: app_cat,\n [`status_${n}`]: +app_cat === 11 ? \"I\" : +app_cat > 20 ? \"N\" : \"\",\n };\n if(kycDetails.Dtinformation[0]?.Error_Message !== \"No Data Found\"){\n setFormValues((prev) => {\n return {\n ...prev,\n ...kycFormValues,\n };\n });\n }\n setDisabledFields((prev) => {\n return {\n ...prev,\n [`kycCompleted_${n}`]: true,\n [`status_${n}`]: true,\n [`name_${n}`]: false,\n };\n });\n } catch (error) {\n setFormValues((prev) => {\n return {\n ...prev,\n [`dob_${n}`]: \"\",\n [`email_${n}`]: \"\",\n [`mobile_${n}`]: \"\",\n [`kyc_occupation_${n}`]: \"\",\n [`category_${n}`]: \"\",\n [`status_${n}`]: \"\",\n };\n });\n\n setDisabledFields((prev) => {\n return {\n ...prev,\n [`kycCompleted_${n}`]: true,\n [`status_${n}`]: true,\n };\n });\n } finally {\n setIsLoading(false);\n }\n }\n };\n\n const isMinor = investortype.investorType == \"minor\";\n\n return (\n <>\n \n
\n
\n {/*

Type of Investor:

\n
\n handleInvestor(e)}\n />\n
*/}\n\n {!isMinor && (\n <>\n
\n
\n Mode of Holding*\n
\n \n {\n if (formValues.modeOfHolding !== e.target.value) {\n removeJointHolderDetails();\n }\n setFieldValue(\"modeOfHolding\", e.target.value);\n setDisabledFields((prev) => ({\n ...prev,\n pan_2: false,\n pan_3: false,\n }));\n\n props.changeInMode(true)\n }}\n >\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Single
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
\n Anyone (or) Surviour\n
\n
\n \n
\n
\n \n )}\n
\n
\n \n
\n {applicantFieldList.map((field) => {\n return (\n \n \n {!!field.nextEmpty &&
}\n \n );\n })}\n
\n {\n setFieldValue(\"pan_2\", \"\");\n setDisplayModal1(false);\n }}\n continue={gotoEkyc}\n />\n {\n setFieldValue(\"pan_3\", \"\");\n setDisplayModal2(false);\n }}\n continue={gotoEkyc}\n />\n \n\n
\n \n Back\n \n \n Proceed\n \n
\n \n );\n};\n\nexport default connect(\n ({ newinvestor,authReducer,dashboard }) => {\n const { applicantparams, nomineDetails } = newinvestor;\n const { userId} = authReducer \n return {\n applicantparams,\n nomineDetails,\n userId,\n };\n },\n {\n getCountriesList,\n getStatesList,\n storeApplicantParams,\n getKycDetails,\n checkKyc,\n getCitiesByState,\n getRelationShipList,\n storePan,\n changeInMode,\n checkPAN,\n }\n)(InvestorDetails);\n\nfunction ChoiceFieldforinvestor({ value, options, onChange }) {\n return (\n
\n {options.map((o, i) => {\n const isActive = o.value == value;\n const handleClick = () => {\n const newValue = o.value;\n onChange({ target: { value: newValue } });\n };\n const isFirst = i == 0;\n const isLast = i == options.length - 1;\n const radius = \"6px\";\n return (\n
\n \n {o.name}\n
\n
\n );\n })}\n
\n );\n}\n","import React, { useState, useEffect } from \"react\";\nimport CardComponent from \"./lib/CardComponent\";\nimport { connect } from \"react-redux\";\nimport CustomizedSelect from \"../customizedSelect\";\nimport { Input } from \"../../../forms/input\";\nimport { Checkbox } from \"@material-ui/core\";\nimport {\n MuiPickersUtilsProvider,\n KeyboardDatePicker,\n} from \"@material-ui/pickers\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport {\n genderOptions,\n NomineesList,\n panRegex,\n emailRegex,\n nameRegex,\n} from \".\";\nimport { $wait, checkIfMinor } from \"./lib/utils\";\nimport CustomLoader from \"../../../forms/Loader\";\nimport {\n getCountriesList,\n storeNomineeDetails,\n storeNonomineeDetails,\n getStatesList,\n storeApplicantParams,\n getKycDetails,\n checkKyc,\n getCitiesList as getCitiesByState,\n getRelationShipList,\n getNomineeDetails,\n} from \"shared/store/actions\";\nimport { format } from \"date-fns\";\n\nimport DateFnsUtils from \"@date-io/date-fns\";\n\nconst NomineeDetails = (props) => {\n const first_nominee_details = {\n name: { value: \"\" },\n pan: { value: \"\" },\n relationship: { value: \"\" },\n otherrelationship: { value: \"\" },\n dob: { value: null },\n gender: { value: \"\" },\n percentage: { value: \"100\" },\n email: { value: \"\" },\n address: { value: \"\" },\n country: { value: \"\" },\n state: { value: \"\" },\n city: { value: \"\" },\n pincode: { value: \"\" },\n guardianname: { value: \"\" },\n guardianpan: { value: \"\" },\n gaurdianrelationship: { value: \"\" },\n };\n const second_nominee_details = {\n name: { value: \"\" },\n pan: { value: \"\" },\n relationship: { value: \"\" },\n otherrelationship: { value: \"\" },\n dob: { value: null },\n gender: { value: \"\" },\n percentage: { value: \"\" },\n email: { value: \"\" },\n address: { value: \"\" },\n country: { value: \"\" },\n state: { value: \"\" },\n city: { value: \"\" },\n pincode: { value: \"\" },\n guardianname: { value: \"\" },\n guardianpan: { value: \"\" },\n gaurdianrelationship: { value: \"\" },\n };\n const third_nominee_details = {\n name: { value: \"\" },\n pan: { value: \"\" },\n relationship: { value: \"\" },\n otherrelationship: { value: \"\" },\n dob: { value: null },\n gender: { value: \"\" },\n percentage: { value: \"\" },\n email: { value: \"\" },\n address: { value: \"\" },\n country: { value: \"\" },\n state: { value: \"\" },\n city: { value: \"\" },\n pincode: { value: \"\" },\n guardianname: { value: \"\" },\n guardianpan: { value: \"\" },\n gaurdianrelationship: { value: \"\" },\n };\n const [isLoading, setIsLoading] = useState(false);\n const [NomineeListShow, setIsNomineeListShow] = useState(true);\n\n const [nominate_yes_or_no, setnominate_yes_or_no] = useState(false);\n const [countriesList, setcountriesList] = useState([]);\n const [nominees_selected, setnomineeSelected] = useState({\n nominee_selected1: \"\",\n nominee_selected2: \"\",\n nominee_selected3: \"\",\n });\n const [nomineeList, setnomineeList] = useState([]);\n const [relationshipList, setrelationshipList] = useState([]);\n const [same_as_first_appicant_address, setsame_as_first_appicant_address] =\n useState({ nom1 : false, nom2: false, nom3: false });\n const list = \"1\";\n const [nominee_dateofbirth, setnominee_dateofbirth] = useState({\n first_nominee_dateofbirth: false,\n second_nominee_dateofbirth: false,\n third_nominee_dateofbirth: false,\n });\n const [nominee_list, setnominee_list] = useState(list);\n const [first_nomineeDetails, setfirst_nomineeDetails] = useState(\n first_nominee_details\n );\n const [second_nomineeDetails, setsecond_nomineeDetails] = useState(\n second_nominee_details\n );\n const [third_nomineeDetails, setthird_nomineeDetails] = useState(\n third_nominee_details\n );\n const prefillFormValues = async () => {\n setIsLoading(true);\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n address: { value: props.address.address ? props.address.address : \"\" },\n country: { value: !!props.address.country ? props.address.country : \"\" },\n state: { value: !!props.address.state ? props.address.state : \"\" },\n pincode: { value: !!props.address.pincode ? props.address.pincode : \"\" },\n city: { value: !!props.address.city ? props.address.city : \"\" },\n });\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n address: { value: props.address.address ? props.address.address : \"\" },\n country: { value: !!props.address.country ? props.address.country : \"\" },\n state: { value: !!props.address.state ? props.address.state : \"\" },\n pincode: { value: !!props.address.pincode ? props.address.pincode : \"\" },\n city: { value: !!props.address.city ? props.address.city : \"\" },\n });\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n address: { value: props.address.address ? props.address.address : \"\" },\n country: { value: !!props.address.country ? props.address.country : \"\" },\n state: { value: !!props.address.state ? props.address.state : \"\" },\n pincode: { value: !!props.address.pincode ? props.address.pincode : \"\" },\n city: { value: !!props.address.city ? props.address.city : \"\" },\n });\n setIsLoading(false);\n };\n const handleAddress = async (nom) => {\n setsame_as_first_appicant_address({\n ...same_as_first_appicant_address,\n [nom]: !same_as_first_appicant_address[nom],\n });\n // await prefillFormValues();\n if(nom === \"nom1\") {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n address: { value: props.address.address ? props.address.address : \"\" },\n country: {\n value: !!props.address.country ? props.address.country : \"\",\n },\n state: { value: !!props.address.state ? props.address.state : \"\" },\n pincode: {\n value: !!props.address.pincode ? props.address.pincode : \"\",\n },\n city: { value: !!props.address.city ? props.address.city : \"\" },\n });\n }\n if(nom === \"nom2\") {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n address: { value: props.address.address ? props.address.address : \"\" },\n country: {\n value: !!props.address.country ? props.address.country : \"\",\n },\n state: { value: !!props.address.state ? props.address.state : \"\" },\n pincode: {\n value: !!props.address.pincode ? props.address.pincode : \"\",\n },\n city: { value: !!props.address.city ? props.address.city : \"\" },\n }); }\n if(nom === \"nom3\") {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n address: { value: props.address.address ? props.address.address : \"\" },\n country: {\n value: !!props.address.country ? props.address.country : \"\",\n },\n state: { value: !!props.address.state ? props.address.state : \"\" },\n pincode: {\n value: !!props.address.pincode ? props.address.pincode : \"\",\n },\n city: { value: !!props.address.city ? props.address.city : \"\" },\n }); }\n // else {\n // setfirst_nomineeDetails({\n // ...first_nomineeDetails,\n // address: { value: \"\" },\n // country: { value: \"\" },\n // state: { value: \"\" },\n // pincode: { value: \"\" },\n // city: { value: \"\" },\n // });\n // setsecond_nomineeDetails({\n // ...second_nomineeDetails,\n // address: { value: \"\" },\n // country: { value: \"\" },\n // state: { value: \"\" },\n // pincode: { value: \"\" },\n // city: { value: \"\" },\n // });\n // setthird_nomineeDetails({\n // ...third_nomineeDetails,\n // address: { value: \"\" },\n // country: { value: \"\" },\n // state: { value: \"\" },\n // pincode: { value: \"\" },\n // city: { value: \"\" },\n // });\n // }\n };\n const handleChangeNomineeList = async (event) => {\n const value = event.target.value;\n setnominee_list(event.target.value);\n if (value == \"1\") {\n setIsLoading(true);\n await $wait(10);\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n percentage: { value: \"100\" },\n });\n setIsLoading(false);\n }\n if (value == \"2\") {\n setIsLoading(true);\n await $wait(10);\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n percentage: { value: \"50\" },\n });\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n percentage: { value: \"50\" },\n });\n setthird_nomineeDetails({\n ...third_nominee_details,\n percentage: { value: \"\" },\n });\n setIsLoading(false);\n }\n if (value == \"3\") {\n setIsLoading(true);\n await $wait(10);\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n percentage: { value: \"33\" },\n });\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n percentage: { value: \"33\" },\n });\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n percentage: { value: \"34\" },\n });\n setIsLoading(false);\n }\n };\n useEffect(() => {\n firstRender();\n setnominate_yes_or_no(props.noNominee);\n }, []);\n const firstRender = async () => {\n await getLists();\n // await prefillFormValues();\n checkReduxStore();\n };\n\n useEffect(() => {\n nomineelist();\n }, [nomineeList.length === 0]);\n const nomineelist = async () => {\n await NomineeDetails();\n };\n const checkReduxStore = () => {\n if (!!props.nomineDetails && !!props.nomineDetails.i_nominee) {\n const { nomineDetails } = props;\n const {\n i_nominee,\n i_nominee2,\n i_nominee3,\n i_nompan1,\n i_nompan2,\n i_nompan3,\n i_NomRelation,\n i_NomRelation2,\n i_NomRelation3,\n i_NomDOB,\n i_NomDOB2,\n i_NomDOB3,\n nom1gender,\n nom2gender,\n nom3gender,\n i_Nominee1percentage,\n i_Nominee2percentage,\n i_Nominee3percentage,\n nom1email,\n nom2email,\n nom3email,\n i_nomadd1,\n i_nomadd21,\n i_nomadd31,\n i_nomcountry,\n i_nom2country,\n i_nom3country,\n i_nomstate,\n i_nomstate2,\n i_nomstate3,\n i_nomcity,\n i_nomcity2,\n i_nomcity3,\n i_nompin,\n i_nompin2,\n i_nompin3,\n i_nomguardianname1,\n i_nomguardianname3,\n i_nomguardianpan1,\n i_nomguardianpan3,\n i_nomguardianname2,\n i_namguardianrelationship1,\n i_namguardianrelationship3,\n i_namguardianrelationship2,\n i_nomguardianpan2,\n i_sameaddress1,\n i_sameaddress2,\n i_sameaddress3,\n } = nomineDetails;\n setnominate_yes_or_no(props.noNominee);\n setnominee_list(\n !!i_nominee3 ? \"3\" : !!i_nominee2 ? \"2\" : !!i_nominee ? \"1\" : \"\"\n );\n setsame_as_first_appicant_address({ nom1 : !!i_sameaddress1 , nom2 : !!i_sameaddress2, nom3 : !!i_sameaddress3 });\n if (!!i_nominee) {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n name: { value: i_nominee },\n pan: { value: i_nompan1 },\n relationship: { value: i_NomRelation },\n dob: { value: i_NomDOB },\n gender: { value: nom1gender },\n percentage: { value: i_Nominee1percentage },\n email: { value: nom1email },\n address: { value: i_nomadd1 },\n country: { value: i_nomcountry },\n state: { value: i_nomstate },\n city: { value: i_nomcity },\n pincode: { value: i_nompin },\n });\n }\n if (!!i_nominee2) {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n name: { value: i_nominee2 },\n pan: { value: i_nompan2 },\n relationship: { value: i_NomRelation2 },\n dob: { value: i_NomDOB2 },\n gender: { value: nom2gender },\n percentage: { value: i_Nominee2percentage },\n email: { value: nom2email },\n address: { value: i_nomadd21 },\n country: { value: i_nom2country },\n state: { value: i_nomstate2 },\n city: { value: i_nomcity2 },\n pincode: { value: i_nompin2 },\n });\n \n\n }\n if (!!i_nominee3) {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n name: { value: i_nominee3 },\n pan: { value: i_nompan3 },\n relationship: { value: i_NomRelation3 },\n dob: { value: i_NomDOB3 },\n gender: { value: nom3gender },\n percentage: { value: i_Nominee3percentage },\n email: { value: nom3email },\n address: { value: i_nomadd31 },\n country: { value: i_nom3country },\n state: { value: i_nomstate3 },\n city: { value: i_nomcity3 },\n pincode: { value: i_nompin3 },\n });\n }\n let new_nominee_dateofbirth = nominee_dateofbirth;\n if (!!i_NomDOB && checkIfMinor(i_NomDOB)) {\n new_nominee_dateofbirth.first_nominee_dateofbirth = true;\n\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n name: { value: i_nominee },\n pan: { value: i_nompan1 },\n relationship: { value: i_NomRelation },\n dob: { value: i_NomDOB },\n gender: { value: nom1gender },\n percentage: { value: i_Nominee1percentage },\n email: { value: nom1email },\n address: { value: i_nomadd1 },\n country: { value: i_nomcountry },\n state: { value: i_nomstate },\n city: { value: i_nomcity },\n pincode: { value: i_nompin },\n guardianname: { value: i_nomguardianname1 },\n guardianpan: { value: i_nomguardianpan1 },\n gaurdianrelationship: { value: i_namguardianrelationship1 },\n });\n }\n if (!!i_NomDOB2 && checkIfMinor(i_NomDOB2)) {\n new_nominee_dateofbirth.second_nominee_dateofbirth = true;\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n name: { value: i_nominee2 },\n pan: { value: i_nompan2 },\n relationship: { value: i_NomRelation2 },\n dob: { value: i_NomDOB2 },\n gender: { value: nom2gender },\n percentage: { value: i_Nominee2percentage },\n email: { value: nom2email },\n address: { value: i_nomadd21 },\n country: { value: i_nom2country },\n state: { value: i_nomstate2 },\n city: { value: i_nomcity2 },\n pincode: { value: i_nompin2 },\n guardianname: { value: i_nomguardianname2 },\n guardianpan: { value: i_nomguardianpan2 },\n gaurdianrelationship: { value: i_namguardianrelationship2 },\n });\n }\n if (!!i_NomDOB3 && checkIfMinor(i_NomDOB3)) {\n new_nominee_dateofbirth.third_nominee_dateofbirth = true;\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n name: { value: i_nominee3 },\n pan: { value: i_nompan3 },\n relationship: { value: i_NomRelation3 },\n dob: { value: i_NomDOB3 },\n gender: { value: nom3gender },\n percentage: { value: i_Nominee3percentage },\n email: { value: nom3email },\n address: { value: i_nomadd31 },\n country: { value: i_nom3country },\n state: { value: i_nomstate3 },\n city: { value: i_nomcity3 },\n pincode: { value: i_nompin3 },\n guardianname: { value: i_nomguardianname3 },\n guardianpan: { value: i_nomguardianpan3 },\n gaurdianrelationship: { value: i_namguardianrelationship3 },\n });\n }\n setnominee_dateofbirth(new_nominee_dateofbirth);\n }\n };\n\n const NomineeDetails = async () => {\n setIsLoading(true);\n const params = {\n pan: props.store_pan,\n };\n const response = await props.getNomineeDetails(params);\n const nomineevalues = !!response.Dtinformation\n ? response.Dtinformation\n : [];\n if (response.Dtinformation.length === 0) {\n setIsNomineeListShow(false);\n }\n const nomineeList = nomineevalues.map((nominee) => {\n return { label: nominee.Nom1.trim(), value: nominee.Nom1.trim() };\n });\n nomineeList.push({ label: \"Add New Nominee\", value: \"Add New Nominee\" });\n setnomineeList(nomineeList);\n setIsLoading(false);\n };\n const getLists = async () => {\n const relationShipResponse = await props.getRelationShipList();\n const { Dtinformation } = relationShipResponse;\n const relationShipList = Dtinformation.map((item) => ({\n label: item.rm_relation,\n value: item.rm_relation,\n }));\n const countriesResponse = await props.getCountriesList();\n const Countries = countriesResponse.Dtinformation;\n const countriesList = Countries.map((country) => {\n return { label: country.country_name, value: country.country_name };\n });\n setcountriesList(\n countriesList.length > 0\n ? countriesList\n : [{ label: \"India\", value: \"India\" }]\n );\n setrelationshipList(relationShipList);\n };\n const handleDateofBirth = (label) => (event) => {\n if (isNaN(Date.parse(event))) {\n if (label === \"dob1\") {\n setfirst_nomineeDetails((form) => ({\n ...form,\n dob: {\n value: \"\",\n isError: true,\n errorMessage: \"Please enter valid date of birth\",\n },\n }));\n } else if (label === \"dob2\") {\n setsecond_nomineeDetails((form) => ({\n ...form,\n dob: {\n value: \"\",\n isError: true,\n errorMessage: \"Please enter valid date of birth\",\n },\n }));\n } else if (label === \"dob3\") {\n setthird_nomineeDetails((form) => ({\n ...form,\n dob: {\n value: \"\",\n isError: true,\n errorMessage: \"Please enter valid date of birth\",\n },\n }));\n }\n return;\n } else if (new Date(event) > new Date()) {\n if (label === \"dob1\") {\n setfirst_nomineeDetails((form) => ({\n ...form,\n dob: {\n value: \"\",\n isError: true,\n errorMessage: \"Please enter valid date of birth\",\n },\n }));\n } else if (label === \"dob2\") {\n setsecond_nomineeDetails((form) => ({\n ...form,\n dob: {\n value: \"\",\n isError: true,\n errorMessage: \"Please enter valid date of birth\",\n },\n }));\n } else if (label === \"dob3\") {\n setthird_nomineeDetails((form) => ({\n ...form,\n dob: {\n value: \"\",\n isError: true,\n errorMessage: \"Please enter valid date of birth\",\n },\n }));\n }\n return;\n }\n const dobarr = [\n { dob: third_nomineeDetails.dob.value },\n { dob: second_nomineeDetails.dob.value },\n { dob: first_nomineeDetails.dob.value },\n ];\n const value = format(new Date(event), \"MM/dd/yyyy\");\n\n const search = dobarr.find((ele) => !!ele.dob && ele.dob === value);\n const oneday = 86400000;\n const today = new Date();\n const datevalue = new Date(value);\n if (isNaN(Date.parse(event))) {\n alert(\"enter\");\n }\n if (label == \"dob1\") {\n if (!!search) {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n dob: { value: \"\" },\n });\n alert(\"Nominee Date of Birth cannot be same\");\n return;\n }\n const min18yersletnew = new Date(today.getTime() - oneday * 365 * 18);\n if (datevalue.getTime() > min18yersletnew) {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n first_nominee_dateofbirth: true,\n });\n } else {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n first_nominee_dateofbirth: false,\n });\n }\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n dob: { value: value },\n });\n }\n if (label == \"dob2\") {\n if (!!search) {\n setfirst_nomineeDetails({\n ...second_nomineeDetails,\n dob: { value: \"\" },\n });\n alert(\"Nominee Date of Birth cannot be same\");\n return;\n }\n const min18yersletnew = new Date(today.getTime() - oneday * 365 * 18);\n if (datevalue.getTime() > min18yersletnew) {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n second_nominee_dateofbirth: true,\n });\n } else {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n second_nominee_dateofbirth: false,\n });\n }\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n dob: { value: value },\n });\n }\n if (label == \"dob3\") {\n if (!!search) {\n setfirst_nomineeDetails({\n ...third_nomineeDetails,\n dob: { value: \"\" },\n });\n alert(\"Nominee Date of Birth cannot be same\");\n return;\n }\n const min18yersletnew = new Date(today.getTime() - oneday * 365 * 18);\n if (datevalue.getTime() > min18yersletnew) {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n third_nominee_dateofbirth: true,\n });\n } else {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n third_nominee_dateofbirth: false,\n });\n }\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n dob: { value: value },\n });\n }\n };\n const handleNomineeList = (label) => async (event) => {\n const RemovingTheNomineeMember = { value: event.target.value };\n if (nominee_list === \"1\") {\n if (RemovingTheNomineeMember.value === \"Add New Nominee\") {\n setfirst_nomineeDetails({ ...first_nominee_details , name : { value: \"\" }});\n setnomineeSelected({\n ...nominees_selected,\n nominee_selected1: event.target.value,\n });\n return;\n }\n if (\n (RemovingTheNomineeMember.value !== \"Add New Nominee\" &&\n RemovingTheNomineeMember.value ===\n nominees_selected.nominee_selected3) ||\n nominees_selected.nominee_selected2\n ) {\n alert(\"Already this nominee has been selected\");\n return;\n }\n }\n if (nominee_list === \"2\") {\n if (\n label === \"nominee1\" &&\n RemovingTheNomineeMember.value === \"Add New Nominee\"\n ) {\n setfirst_nomineeDetails({ ...first_nominee_details });\n setnomineeSelected({\n ...nominees_selected,\n nominee_selected1: event.target.value,\n });\n return;\n }\n if (\n label === \"nominee2\" &&\n RemovingTheNomineeMember.value === \"Add New Nominee\"\n ) {\n setsecond_nomineeDetails({ ...second_nominee_details });\n setnomineeSelected({\n ...nominees_selected,\n nominee_selected2: event.target.value,\n });\n return;\n }\n if (\n (RemovingTheNomineeMember.value !== \"Add New Nominee\" &&\n RemovingTheNomineeMember.value ===\n nominees_selected.nominee_selected1) ||\n RemovingTheNomineeMember.value === nominees_selected.nominee_selected1\n ) {\n alert(\"Already this nominee has been selected\");\n return;\n }\n }\n if (nominee_list === \"3\") {\n if (label == \"nominee1\" && RemovingTheNomineeMember.value === \"Add New Nominee\") {\n setfirst_nomineeDetails({ ...first_nominee_details });\n setnomineeSelected({\n ...nominees_selected,\n nominee_selected1: event.target.value,\n });\n return;\n }\n if (label == \"nominee2\" && RemovingTheNomineeMember.value === \"Add New Nominee\") {\n setsecond_nomineeDetails({ ...second_nominee_details });\n setnomineeSelected({\n ...nominees_selected,\n nominee_selected2: event.target.value,\n });\n return;\n }\n if (label == \"nominee3\" && RemovingTheNomineeMember.value === \"Add New Nominee\") {\n setthird_nomineeDetails({ ...third_nominee_details });\n setnomineeSelected({\n ...nominees_selected,\n nominee_selected3: event.target.value,\n });\n return;\n }\n if (\n label == \"nominee1\" &&\n RemovingTheNomineeMember.value !== \"Add New Nominee\" &&\n ( RemovingTheNomineeMember.value ===\n nominees_selected.nominee_selected3 ||\n RemovingTheNomineeMember.value === nominees_selected.nominee_selected2 )\n ) {\n alert(\"Already this nominee has been selected\");\n return;\n }\n\n if (\n label == \"nominee2\" &&\n RemovingTheNomineeMember.value !== \"Add New Nominee\" &&\n (RemovingTheNomineeMember.value ===\n nominees_selected.nominee_selected3 ||\n RemovingTheNomineeMember.value === nominees_selected.nominee_selected1)\n ) {\n alert(\"Already this nominee has been selected\");\n return;\n }\n\n if (\n (label == \"nominee3\" &&\n RemovingTheNomineeMember.value !== \"Add New Nominee\" &&\n RemovingTheNomineeMember.value ===\n nominees_selected.nominee_selected2) ||\n RemovingTheNomineeMember.value === nominees_selected.nominee_selected1\n ) {\n alert(\"Already this nominee has been selected\");\n return;\n }\n }\n const nomineedetails =\n !!props.getnomineeDetails &&\n props.getnomineeDetails.Dtinformation.find(\n (ele) => ele.Nom1.trim() === event.target.value.trim()\n );\n const oneday = 86400000;\n const today = new Date();\n if (!!nomineedetails && label === \"nominee1\") {\n if (!!nomineedetails.Nom1_Dob) {\n const value = new Date(nomineedetails.Nom1_Dob);\n const min18yersletnew = new Date(today.getTime() - oneday * 365 * 18);\n if (value.getTime() > min18yersletnew) {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n first_nominee_dateofbirth: true,\n });\n } else {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n first_nominee_dateofbirth: false,\n });\n }\n }\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n name: { value: nomineedetails?.Nom1 },\n relationship: {\n value:\n nomineedetails.Nom1Relation.charAt(0).toUpperCase() +\n nomineedetails.Nom1Relation.substr(1).toLowerCase(),\n },\n dob: { value: nomineedetails?.Nom1_Dob },\n gender: { value: nomineedetails.Nom1_Gender === \"Male\" ? \"M\" : \"F\" },\n address: {\n value:\n nomineedetails?.Nom1_Add1 +\n nomineedetails?.Nom1_Add2 +\n nomineedetails?.Nom1_Add3,\n },\n country: { value: nomineedetails?.Nom1_Country },\n state: { value: nomineedetails?.Nom1_state },\n pincode: { value: nomineedetails?.Nom1_pin },\n city: { value: nomineedetails?.Nom1_City },\n });\n setnomineeSelected({\n ...nominees_selected,\n nominee_selected1: event.target.value,\n });\n }\n\n if (!!nomineedetails && label === \"nominee2\") {\n if (!!nomineedetails.Nom2_Dob) {\n const value = new Date(nomineedetails.Nom2_Dob);\n const min18yersletnew = new Date(today.getTime() - oneday * 365 * 18);\n if (value.getTime() > min18yersletnew) {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n second_nominee_dateofbirth: true,\n });\n } else {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n second_nominee_dateofbirth: false,\n });\n }\n }\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n name: { value: nomineedetails?.Nom1 },\n relationship: {\n value:\n nomineedetails.Nom1Relation.charAt(0).toUpperCase() +\n nomineedetails.Nom1Relation.substr(1).toLowerCase(),\n },\n dob: { value: nomineedetails?.Nom1_Dob },\n gender: { value: nomineedetails.Nom1_Gender === \"Male\" ? \"M\" : \"F\" },\n address: {\n value:\n nomineedetails?.Nom1_Add1 +\n nomineedetails?.Nom1_Add2 +\n nomineedetails?.Nom1_Add3,\n },\n country: { value: nomineedetails?.Nom1_Country },\n state: { value: nomineedetails?.Nom1_state },\n pincode: { value: nomineedetails?.Nom1_pin },\n city: { value: nomineedetails?.Nom1_City },\n });\n setnomineeSelected({\n ...nominees_selected,\n nominee_selected2: event.target.value,\n });\n }\n if (!!nomineedetails && label === \"nominee3\") {\n if (!!nomineedetails.Nom3_Dob) {\n const value = new Date(nomineedetails.Nom3_Dob);\n const min18yersletnew = new Date(today.getTime() - oneday * 365 * 18);\n if (value.getTime() > min18yersletnew) {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n third_nominee_dateofbirth: true,\n });\n } else {\n setnominee_dateofbirth({\n ...nominee_dateofbirth,\n third_nominee_dateofbirth: false,\n });\n }\n }\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n name: { value: nomineedetails?.Nom1 },\n relationship: {\n value:\n nomineedetails.Nom1Relation.charAt(0).toUpperCase() +\n nomineedetails.Nom1Relation.substr(1).toLowerCase(),\n },\n dob: { value: nomineedetails?.Nom1_Dob },\n gender: { value: nomineedetails.Nom1_Gender === \"Male\" ? \"M\" : \"F\" },\n address: {\n value:\n nomineedetails?.Nom1_Add1 +\n nomineedetails?.Nom1_Add2 +\n nomineedetails?.Nom1_Add3,\n },\n country: { value: nomineedetails?.Nom1_Country },\n state: { value: nomineedetails?.Nom1_state },\n pincode: { value: nomineedetails?.Nom1_pin },\n city: { value: nomineedetails?.Nom1_City },\n });\n setnomineeSelected({\n ...nominees_selected,\n nominee_selected3: event.target.value,\n });\n }\n };\n const showError = (label) => (event) => {\n const regpan = /^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/;\n if (\n label === \"firstNomineePan\" &&\n event.target.value.charAt(3) !== \"P\" &&\n event.target.value.length === 10\n ) {\n alert(\n \"Entered PAN Number is not related to Individual PAN Number, So please Enter Individual PAN Number\"\n );\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n pan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"firstNomineePan\" &&\n !regpan.test(event.target.value) &&\n event.target.value.length === 10\n ) {\n alert(\"Enter valid pan\");\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n pan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"secondNomineePan\" &&\n event.target.value.charAt(3) !== \"P\" &&\n event.target.value.length === 10\n ) {\n alert(\n \"Entered PAN Number is not related to Individual PAN Number, So please Enter Individual PAN Number\"\n );\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n pan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"secondNomineePan\" &&\n !regpan.test(event.target.value) &&\n event.target.value.length === 10\n ) {\n alert(\"Enter valid pan\");\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n pan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"thirdNomineePan\" &&\n event.target.value.charAt(3) !== \"P\" &&\n event.target.value.length === 10\n ) {\n alert(\n \"Entered PAN Number is not related to Individual PAN Number, So please Enter Individual PAN Number\"\n );\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n pan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"thirdNomineePan\" &&\n !regpan.test(event.target.value) &&\n event.target.value.length === 10\n ) {\n alert(\"Enter valid pan\");\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n pan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"firstNomineeGuardianPan\" &&\n event.target.value.charAt(3) !== \"P\" &&\n event.target.value.length === 10\n ) {\n alert(\n \"Entered PAN Number is not related to Individual PAN Number, So please Enter Individual PAN Number\"\n );\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n guardianpan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"firstNomineeGuardianPan\" &&\n !regpan.test(event.target.value) &&\n event.target.value.length === 10\n ) {\n alert(\"Enter valid pan\");\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n guardianpan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"secondNomineeGuardianPan\" &&\n event.target.value.charAt(3) !== \"P\" &&\n event.target.value.length === 10\n ) {\n alert(\n \"Entered PAN Number is not related to Individual PAN Number, So please Enter Individual PAN Number\"\n );\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n guardianpan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"secondNomineeGuardianPan\" &&\n !regpan.test(event.target.value) &&\n event.target.value.length === 10\n ) {\n alert(\"Enter valid pan\");\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n guardianpan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"thirdNomineeGuardianPan\" &&\n event.target.value.charAt(3) !== \"P\" &&\n event.target.value.length === 10\n ) {\n alert(\n \"Entered PAN Number is not related to Individual PAN Number, So please Enter Individual PAN Number\"\n );\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n guardianpan: { value: \"\" },\n });\n return;\n }\n if (\n label === \"thirdNomineeGuardianPan\" &&\n !regpan.test(event.target.value) &&\n event.target.value.length === 10\n ) {\n alert(\"Enter valid pan\");\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n guardianpan: { value: \"\" },\n });\n return;\n }\n };\n\n const handlePanChange = (details, setDetails, value,label) => {\n const primaryPans = [\n { pan: props.applicantparams.i_pangno },\n ];\n const investorGuardianPan=[\n { pan: props?.applicantparams?.i_guardianpan },\n ]\n const jointHolderPans = [\n { pan: props.applicantparams.i_pangno2 },\n { pan: props.applicantparams.i_pangno3 },\n ];\n \n const nomnieePans = [\n { pan: first_nomineeDetails.pan.value },\n { pan: second_nomineeDetails.pan.value },\n { pan: third_nomineeDetails.pan.value },\n ];\n const gaurdianPans = [\n { pan: first_nomineeDetails.guardianpan.value },\n { pan: second_nomineeDetails.guardianpan.value },\n { pan: third_nomineeDetails.guardianpan.value },\n ];\n \n if (value.length <= 10) {\n let errorMessage = \"\";\n if(label===\"guardianpan\"){\n if (nomnieePans.some((ele) => !!ele.pan && ele.pan === value)) {\n errorMessage = \"Entered PAN cannot be same as other Nominee PAN\";\n }\n if (primaryPans.some((ele) => !!ele.pan && ele.pan === value)) {\n errorMessage = `Entered PAN cannot be same as ${!!props?.applicantparams?.i_guardianpan?.length?\"Minor pan\":\"Primary Holder pan\"}`;\n }\n } else {\n if (investorGuardianPan.some((ele) => !!ele.pan && ele.pan === value && !!props?.applicantparams?.i_guardianpan?.length)) {\n errorMessage = `Entered PAN cannot be same as Primary Guardian pan`;\n }\n if (primaryPans.some((ele) => !!ele.pan && ele.pan === value)) {\n errorMessage = \"Entered PAN cannot be same as Primary Holder PAN\";\n } else if (jointHolderPans.some((ele) => !!ele.pan && ele.pan === value)) {\n errorMessage = \"Entered PAN cannot be same as Joint Holders PAN\";\n }else if (nomnieePans.some((ele) => !!ele.pan && ele.pan === value)) {\n errorMessage = \"Entered PAN cannot be same as other Nominee PAN\";\n } else if (gaurdianPans.some((ele) => !!ele.pan && ele.pan === value)) {\n errorMessage = \"Entered PAN cannot be same as other Guardian PAN\";\n }\n }\n \n if (errorMessage) {\n alert(errorMessage);\n if(label===\"pan\"){\n setDetails({\n ...details,\n pan: { value: \"\" },\n });\n } else {\n setDetails({\n ...details,\n guardianpan: { value: \"\" },\n });\n }\n return;\n }\n if(label===\"pan\"){\n setDetails({\n ...details,\n pan: { value: value },\n });\n } else {\n setDetails({\n ...details,\n guardianpan: { value: value },\n });\n }\n }\n };\n \n const handleChangePan = (label) => (event) => {\n const value = event.target.value.toUpperCase();\n switch (label) {\n case \"firstNomineePan\":\n handlePanChange(first_nomineeDetails, setfirst_nomineeDetails, value,\"pan\");\n break;\n case \"secondNomineePan\":\n handlePanChange(second_nomineeDetails, setsecond_nomineeDetails, value,\"pan\");\n break;\n case \"thirdNomineePan\":\n handlePanChange(third_nomineeDetails, setthird_nomineeDetails, value,\"pan\");\n break;\n case \"firstNomineeGuardianPan\":\n handlePanChange(first_nomineeDetails, setfirst_nomineeDetails, value,\"guardianpan\");\n break;\n case \"secondNomineeGuardianPan\":\n handlePanChange(second_nomineeDetails, setsecond_nomineeDetails, value,\"guardianpan\");\n break;\n case \"thirdNomineeGuardianPan\":\n handlePanChange(third_nomineeDetails, setthird_nomineeDetails, value,\"guardianpan\");\n break;\n default:\n break;\n }\n };\n const handleName = (label) => (event) => {\n const value = event.target.value;\n switch (label) {\n case \"nominee1\":\n handleNameChange(first_nomineeDetails, setfirst_nomineeDetails, value,\"name\");\n break;\n case \"nominee2\":\n handleNameChange(second_nomineeDetails, setsecond_nomineeDetails, value,\"name\");\n break;\n case \"nominee3\":\n handleNameChange(third_nomineeDetails, setthird_nomineeDetails, value,\"name\");\n break;\n case \"guardianname1\":\n handleNameChange(first_nomineeDetails, setfirst_nomineeDetails, value,\"guardianname\");\n break;\n case \"guardianname2\":\n handleNameChange(second_nomineeDetails, setsecond_nomineeDetails, value,\"guardianname\");\n break;\n case \"guardianname3\":\n handleNameChange(third_nomineeDetails, setthird_nomineeDetails, value,\"guardianname\");\n break;\n default:\n break;\n }\n };\n const handleNameChange = (details, setDetails, value,label) => {\n const primaryName = [\n { name: props.applicantparams.i_fname },\n ];\n const investorGuardianName=[\n { name: props?.applicantparams?.i_guardianname },\n ]\n const jointHolderNames = [\n { name: props.applicantparams.i_pangno2 },\n { name: props.applicantparams.i_pangno3 },\n ];\n \n const nomnieeNames = [\n { name: first_nomineeDetails.name.value },\n { name: second_nomineeDetails.name.value },\n { name: third_nomineeDetails.name.value },\n ];\n const guardianNames = [\n { name: first_nomineeDetails.guardianname.value },\n { name: second_nomineeDetails.guardianname.value },\n { name: third_nomineeDetails.guardianname.value },\n ];\n let errorMessage = \"\"; \n \n if (primaryName.some((ele) => !!ele.name && ele.name.toLowerCase() === value.toLowerCase())) {\n errorMessage = \"Entered Name cannot be same as Primary Holder Name\";\n } else if (investorGuardianName.some((ele) => !!ele.name && ele.name.toLowerCase() === value.toLowerCase())) {\n errorMessage = \"Entered Name cannot be same as Guardian Name\";\n } else if (nomnieeNames.some((ele) => !!ele.name && ele.name.toLowerCase() === value.toLowerCase())) {\n errorMessage = \"Entered Name cannot be same as other Nominee Name\";\n } else if (guardianNames.some((ele) => !!ele.name && ele.name.toLowerCase() === value.toLowerCase())) {\n errorMessage = \"Entered Name cannot be same as other Guardian Name\";\n }\n \n if (errorMessage) {\n alert(errorMessage);\n if(label===\"name\"){\n setDetails({\n ...details,\n name: { value: \"\" },\n });\n } else {\n setDetails({\n ...details,\n guardianname: { value: \"\" },\n });\n }\n return;\n }\n if(label===\"name\"){\n setDetails({\n ...details,\n name: { value: value },\n });\n } else {\n setDetails({\n ...details,\n guardianname: { value: value },\n });\n }\n };\n \n const handleState = (label) => (event) => {\n if (/^[a-zA-Z ]*$/.test(event.target.value) && label === \"firstState\") {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n state: { value: event.target.value },\n });\n }\n if (/^[a-zA-Z ]*$/.test(event.target.value) && label === \"secondState\") {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n state: { value: event.target.value },\n });\n }\n if (/^[a-zA-Z ]*$/.test(event.target.value) && label === \"thirdState\") {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n state: { value: event.target.value },\n });\n }\n };\n const handleCity = (label) => (event) => {\n if (/^[a-zA-Z ]*$/.test(event.target.value) && label === \"firstCity\") {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n city: { value: event.target.value },\n });\n }\n if (/^[a-zA-Z ]*$/.test(event.target.value) && label === \"secondCity\") {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n city: { value: event.target.value },\n });\n }\n if (/^[a-zA-Z ]*$/.test(event.target.value) && label === \"thirdCity\") {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n city: { value: event.target.value },\n });\n }\n };\n const handlePercentage = (label) => (event) => {\n const value = event.target.value.replace(/[^\\d]/g, \"\");\n if (event.target.value <= 100) {\n if (label === \"first\" && nominee_list === \"1\") {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n percentage: { value: value },\n });\n }\n if (nominee_list === \"2\" && (label === \"second\" || label === \"first\")) {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n percentage:\n label === \"second\"\n ? { value: value }\n : { value: Math.abs(value - 100) },\n });\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n percentage:\n label === \"first\"\n ? { value: value }\n : { value: Math.abs(value - 100) },\n });\n }\n if (\n nominee_list === \"3\" &&\n (label === \"first\" || label === \"second\" || label === \"third\")\n ) {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n percentage:\n label === \"first\"\n ? { value: value }\n : { value: Math.abs(value - 100) / 2 },\n });\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n percentage:\n label === \"second\"\n ? { value: value }\n : { value: Math.abs(value - 100) / 2 },\n });\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n percentage:\n label === \"third\"\n ? { value: value }\n : { value: Math.abs(value - 100) / 2 },\n });\n }\n }\n };\n const handleNominees = () => {\n setnominate_yes_or_no(!nominate_yes_or_no);\n setfirst_nomineeDetails(first_nominee_details);\n setsecond_nomineeDetails(second_nominee_details);\n setthird_nomineeDetails(third_nominee_details);\n };\n const handlePincode = (label) => (event) => {\n const value = event.target.value;\n if (value.length <= 6) {\n if (label === \"nominee1\") {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n pincode: { value: event.target.value },\n });\n }\n if (label === \"nominee2\") {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n pincode: { value: event.target.value },\n });\n }\n\n if (label === \"nominee3\") {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n pincode: { value: event.target.value },\n });\n }\n }\n };\n // const handleName = (label) => (event) => {\n // const value = event.target.value;\n // const arr = [\n // { name: third_nomineeDetails.name.value },\n // { name: second_nomineeDetails.name.value },\n // { name: first_nomineeDetails.name.value },\n // ];\n\n // if (label === \"nominee1\") {\n // const search = arr.find(\n // (ele) => !!ele.name && ele.name.toLowerCase() === value.toLowerCase()\n // );\n // if (!!search) {\n // setfirst_nomineeDetails({\n // ...first_nomineeDetails,\n // name: { value: \"\" },\n // });\n // alert(\"Nominee Names cannot be same\");\n // return;\n // }\n // setfirst_nomineeDetails({\n // ...first_nomineeDetails,\n // name: { value: value },\n // });\n // }\n // if (label === \"nominee2\") {\n // const search = arr.find(\n // (ele) => !!ele.name && ele.name.toLowerCase() === value.toLowerCase()\n // );\n // if (!!search) {\n // setsecond_nomineeDetails({\n // ...second_nomineeDetails,\n // name: { value: \"\" },\n // });\n // alert(\"Nominee Names cannot be same\");\n // return;\n // }\n // setsecond_nomineeDetails({\n // ...second_nomineeDetails,\n // name: { value: value },\n // });\n // }\n // if (label === \"nominee3\") {\n // const search = arr.find(\n // (ele) => !!ele.name && ele.name.toLowerCase() === value.toLowerCase()\n // );\n // if (!!search) {\n // setthird_nomineeDetails({\n // ...third_nomineeDetails,\n // name: { value: \"\" },\n // });\n // alert(\"Nominee Names cannot be same\");\n // return;\n // }\n // setthird_nomineeDetails({\n // ...third_nomineeDetails,\n // name: { value: value },\n // });\n // }\n // };\n const submit = async () => {\n if (!nominate_yes_or_no) {\n if (nominee_list >= 1) {\n if ((first_nomineeDetails.percentage.value===\"0\" || first_nomineeDetails.percentage.value===\"\" || first_nomineeDetails.percentage.value===null)) {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n percentage: {\n value:\"\",\n isError: true,\n errorMessage: \"Please enter a valid percentage\",\n },\n });\n return;\n }\n if (nominee_list === \"1\" && first_nomineeDetails.percentage.value!==\"100\") {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n percentage: {\n value:\"\",\n isError: true,\n errorMessage: \"Please enter a valid percentage\",\n },\n });\n return;\n }\n if (!nameRegex.test(first_nomineeDetails.name.value)) {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n name: {\n value: \"\",\n isError: true,\n errorMessage: \"Name is mandatory\",\n },\n });\n return;\n }\n if (!first_nomineeDetails.relationship.value) {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n relationship: {\n isError: true,\n errorMessage: \"Select the Relationship\",\n },\n });\n return;\n }\n // if (!first_nomineeDetails.dob.value) {\n // setfirst_nomineeDetails({\n // ...first_nomineeDetails,\n // dob: {\n // value: \"\",\n // isError: true,\n // errorMessage: \"Select the Date of Birth\",\n // },\n // });\n // return;\n // }\n if (\n !!nominee_dateofbirth.first_nominee_dateofbirth &&\n first_nomineeDetails.guardianname.value == \"\"\n ) {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n guardianname: {\n isError: true,\n errorMessage: \"Enter the Guardian Name\",\n },\n });\n return;\n }\n if (\n !!nominee_dateofbirth.first_nominee_dateofbirth &&\n !panRegex.test(first_nomineeDetails.guardianpan.value)\n ) {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n guardianpan: {\n isError: true,\n errorMessage: \"Enter valid Guardian PAN\",\n },\n });\n return;\n }\n if (!first_nomineeDetails.gender.value) {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n gender: {\n isError: true,\n errorMessage: \"Select the gender\",\n },\n });\n return;\n }\n if (\n first_nomineeDetails.email.value.length > 0 &&\n (!emailRegex.test(first_nomineeDetails.email.value) ||\n !first_nomineeDetails.email.value.includes(\".\"))\n ) {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n email: {\n value: first_nomineeDetails.email.value,\n isError: true,\n errorMessage: \"Enter valid Email id\",\n },\n });\n return;\n }\n if (nominee_list >= 2) {\n if ((Number(third_nomineeDetails.percentage.value)+Number(first_nomineeDetails.percentage.value)+Number(second_nomineeDetails.percentage.value))!==100) {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n percentage: {\n value:\"\",\n isError: true,\n errorMessage: \"Please enter a valid percentage\",\n },\n });\n return;\n }\n if ((second_nomineeDetails.percentage.value===\"0\" || second_nomineeDetails.percentage.value===\"\" || second_nomineeDetails.percentage.value===null || second_nomineeDetails.percentage.value===0)) {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n percentage: {\n value:\"\",\n isError: true,\n errorMessage: \"Please enter a valid percentage\",\n },\n });\n return;\n }\n if (!nameRegex.test(second_nomineeDetails.name.value)) {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n name: {\n value: \"\",\n isError: true,\n errorMessage: \"Name is mandatory\",\n },\n });\n return;\n }\n if (!second_nomineeDetails.relationship.value) {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n relationship: {\n isError: true,\n errorMessage: \"Select the Relationship\",\n },\n });\n return;\n }\n // if (!second_nomineeDetails.dob.value) {\n // setsecond_nomineeDetails({\n // ...second_nomineeDetails,\n // dob: {\n // value: \"\",\n // isError: true,\n // errorMessage: \"Select the Date of Birth\",\n // },\n // });\n // return;\n // }\n if (\n !!nominee_dateofbirth.second_nominee_dateofbirth &&\n second_nomineeDetails.guardianname.value == \"\"\n ) {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n guardianname: {\n isError: true,\n errorMessage: \"Enter the Guardian Name\",\n },\n });\n return;\n }\n if (\n !!nominee_dateofbirth.second_nominee_dateofbirth &&\n !panRegex.test(second_nomineeDetails.guardianpan.value)\n ) {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n guardianpan: {\n isError: true,\n errorMessage: \"Enter valid Guardian PAN\",\n },\n });\n return;\n }\n if (!second_nomineeDetails.gender.value) {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n gender: {\n isError: true,\n errorMessage: \"Select the gender\",\n },\n });\n return;\n }\n if (\n second_nomineeDetails.email.value.length > 0 &&\n (!emailRegex.test(second_nomineeDetails.email.value) ||\n !second_nomineeDetails.email.value.includes(\".\"))\n ) {\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n email: {\n value: second_nomineeDetails.email.value,\n isError: true,\n errorMessage: \"Enter valid Email id\",\n },\n });\n return;\n }\n }\n }\n if (nominee_list >= 3) {\n if ((Number(third_nomineeDetails.percentage.value)+Number(first_nomineeDetails.percentage.value)+Number(second_nomineeDetails.percentage.value))!==100) {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n percentage: {\n value:\"\",\n isError: true,\n errorMessage: \"Please enter a valid percentage\",\n },\n });\n return;\n }\n if ((third_nomineeDetails.percentage.value===\"0\" || third_nomineeDetails.percentage.value===\"\" || third_nomineeDetails.percentage.value===null || third_nomineeDetails.percentage.value===0)) {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n percentage: {\n value:\"\",\n isError: true,\n errorMessage: \"Please enter a valid percentage\",\n },\n });\n return;\n }\n if (!nameRegex.test(third_nomineeDetails.name.value)) {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n name: {\n value: \"\",\n isError: true,\n errorMessage: \"Name is mandatory\",\n },\n });\n return;\n }\n if (!third_nomineeDetails.relationship.value) {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n relationship: {\n isError: true,\n errorMessage: \"Select the Relationship\",\n },\n });\n return;\n }\n // if (!third_nomineeDetails.dob.value) {\n // setthird_nomineeDetails({\n // ...third_nomineeDetails,\n // dob: {\n // value: \"\",\n // isError: true,\n // errorMessage: \"Select the Date of Birth\",\n // },\n // });\n // return;\n // }\n if (\n !!nominee_dateofbirth.third_nominee_dateofbirth &&\n third_nomineeDetails.guardianname.value == \"\"\n ) {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n guardianname: {\n isError: true,\n errorMessage: \"Enter the Guardian Name\",\n },\n });\n return;\n }\n if (\n !!nominee_dateofbirth.third_nominee_dateofbirth &&\n !panRegex.test(third_nomineeDetails.guardianpan.value)\n ) {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n guardianpan: {\n isError: true,\n errorMessage: \"Enter valid Guardian PAN\",\n },\n });\n return;\n }\n if (!third_nomineeDetails.gender.value) {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n gender: {\n isError: true,\n errorMessage: \"Select the gender\",\n },\n });\n return;\n }\n if (\n third_nomineeDetails.email.value.length > 0 &&\n !emailRegex.test(\n third_nomineeDetails.email.value ||\n !third_nomineeDetails.email.value.includes(\".\")\n )\n ) {\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n email: {\n value: third_nomineeDetails.email.value,\n isError: true,\n errorMessage: \"Enter valid Email Id\",\n },\n });\n return;\n }\n }\n }\n\n setIsLoading(true);\n const NomineeDetails = {\n ...(!nominate_yes_or_no && {\n i_nominee: first_nomineeDetails.name.value,\n i_nompan1: first_nomineeDetails.pan.value,\n i_NomRelation:\n first_nomineeDetails.relationship.value === \"Other\"\n ? first_nomineeDetails.otherrelationship.value\n : first_nomineeDetails.relationship.value,\n i_NomDOB: first_nomineeDetails.dob.value,\n nom1gender: first_nomineeDetails.gender.value,\n i_Nominee1percentage: first_nomineeDetails.percentage.value,\n nom1email: first_nomineeDetails.email.value,\n i_nomadd1: first_nomineeDetails.address.value,\n i_nomcountry: first_nomineeDetails.country.value,\n i_nomstate: first_nomineeDetails.state.value,\n i_nomcity: first_nomineeDetails.city.value,\n i_nompin: first_nomineeDetails.pincode.value,\n i_nomguardianname1: first_nomineeDetails.guardianname.value,\n i_nomguardianpan1: first_nomineeDetails.guardianpan.value,\n i_namguardianrelationship1:\n first_nomineeDetails.gaurdianrelationship.value,\n i_sameaddress1: same_as_first_appicant_address[\"nom1\"],\n }),\n ...(!nominate_yes_or_no && nominee_list > 1\n ? {\n i_nominee2: second_nomineeDetails.name.value,\n i_nompan2: second_nomineeDetails.pan.value,\n i_NomRelation2:\n second_nomineeDetails.relationship.value === \"Other\"\n ? second_nomineeDetails.otherrelationship.value\n : second_nomineeDetails.relationship.value,\n i_NomDOB2: second_nomineeDetails.dob.value,\n nom2gender: second_nomineeDetails.gender.value,\n i_Nominee2percentage: second_nomineeDetails.percentage.value,\n nom2email: second_nomineeDetails.email.value,\n i_nomadd21: second_nomineeDetails.address.value,\n i_nom2country: second_nomineeDetails.country.value,\n i_nomstate2: second_nomineeDetails.state.value,\n i_nomcity2: second_nomineeDetails.city.value,\n i_nompin2: second_nomineeDetails.pincode.value,\n i_nomguardianname2: second_nomineeDetails.guardianname.value,\n i_nomguardianpan2: second_nomineeDetails.guardianpan.value,\n i_namguardianrelationship2:\n second_nomineeDetails.gaurdianrelationship.value,\n i_sameaddress2: same_as_first_appicant_address[\"nom2\"],\n }\n : {}),\n ...(!nominate_yes_or_no && nominee_list > 2\n ? {\n i_nominee3: third_nomineeDetails.name.value,\n i_nompan3: third_nomineeDetails.pan.value,\n i_NomRelation3:\n third_nomineeDetails.relationship.value === \"Other\"\n ? third_nomineeDetails.otherrelationship.value\n : third_nomineeDetails.relationship.value,\n i_NomDOB3: third_nomineeDetails.dob.value,\n nom3gender: third_nomineeDetails.gender.value,\n i_Nominee3percentage: third_nomineeDetails.percentage.value,\n nom3email: third_nomineeDetails.email.value,\n i_nomadd31: third_nomineeDetails.address.value,\n i_nom3country: third_nomineeDetails.country.value,\n i_nomstate3: third_nomineeDetails.state.value,\n i_nomcity3: third_nomineeDetails.city.value,\n i_nompin3: third_nomineeDetails.pincode.value,\n i_nomguardianname3: third_nomineeDetails.guardianname.value,\n i_nomguardianpan3: third_nomineeDetails.guardianpan.value,\n i_namguardianrelationship3:\n third_nomineeDetails.gaurdianrelationship.value,\n i_sameaddress3: same_as_first_appicant_address[\"nom3\"],\n }\n : {}),\n };\n console.log(\"NomineeDetails\",NomineeDetails)\n setIsLoading(false);\n props.storeNomineeDetails(NomineeDetails);\n props.storeNonomineeDetails(nominate_yes_or_no);\n props.history.replace(\"/new-investor-transaction/bank-details\");\n };\n return (\n <>\n \n \n \n
\n \n I DO NOT Wish to nominate\n
\n {/* {!nominate_yes_or_no && (\n
\n \n Same as First Applicant Address\n
\n )} */}\n \n {!nominate_yes_or_no && (\n
\n
\n \n {NomineesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n {nominee_list >= 1 && (\n
\n
Nominee 1:
\n \n {NomineeListShow && (\n
\n \n {nomineeList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n )}\n\n
\n = 1? false : true\n }\n\n isShowError={first_nomineeDetails.name.isError}\n errorMessage={first_nomineeDetails.name.errorMessage}\n />\n
\n
\n \n
\n
\n \n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n relationship: { value: event.target.value },\n })\n }\n >\n {relationshipList.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
\n {first_nomineeDetails.relationship.value == \"Other\" && (\n
\n \n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n otherrelationship: { value: event.target.value },\n })\n }\n />\n
\n )}\n
\n
Date of Birth
\n \n {/* */}\n \n \n {!!first_nomineeDetails.dob.errorMessage && (\n
\n {\" \"}\n {first_nomineeDetails.dob.errorMessage}\n
\n )}\n
\n {nominee_dateofbirth.first_nominee_dateofbirth && (\n
\n \n // setfirst_nomineeDetails({\n // ...first_nomineeDetails,\n // guardianname: { value: event.target.value },\n // })\n // }\n onChange={handleName(\"guardianname1\")}\n\n isShowError={first_nomineeDetails.guardianname.isError}\n errorMessage={\n first_nomineeDetails.guardianname.errorMessage\n }\n />\n
\n )}\n {nominee_dateofbirth.first_nominee_dateofbirth && (\n
\n setfirst_nomineeDetails({ ...first_nomineeDetails, guardianpan:{value:event.target.value}})}\n isShowError={first_nomineeDetails.guardianpan.isError}\n errorMessage={\n first_nomineeDetails.guardianpan.errorMessage\n }\n onBlur={showError(\"firstNomineeGuardianPan\")}\n />\n
\n )}\n {nominee_dateofbirth.first_nominee_dateofbirth && (\n
\n \n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n gaurdianrelationship: {\n value: event.target.value,\n },\n })\n }\n >\n {relationshipList.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
\n )}\n
\n \n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n gender: { value: event.target.value },\n })\n }\n >\n {genderOptions.map((item, index) => (\n \n {item.name}\n \n ))}\n \n
\n
\n \n
\n
\n {\n if(!emailRegex.test(event.target.value)){\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n email: {\n value: event.target.value,\n isError: true,\n errorMessage: \"Email is not valid\",\n }\n })\n } else {\n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n email: { value: event.target.value },\n }) }}\n }\n isShowError={first_nomineeDetails.email.isError}\n errorMessage={first_nomineeDetails.email.errorMessage}\n />\n
\n
\n
\n handleAddress(\"nom1\")}\n />\n Same as First Applicant Address\n
\n
\n {!same_as_first_appicant_address.nom1 && (\n \n
\n \n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n address: { value: event.target.value },\n })\n }\n />\n
\n
\n \n setfirst_nomineeDetails({\n ...first_nomineeDetails,\n country: { value: event.target.value },\n })\n }\n >\n {countriesList.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
\n
\n \n
\n
\n {\" \"}\n
\n
\n \n
\n
\n )}\n
\n\n \n \n )}\n {nominee_list >= 2 && (\n
\n
Nominee 2:
\n\n \n {NomineeListShow && (\n
\n \n {nomineeList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n )}\n
\n = 2? false : true\n }\n\n isShowError={second_nomineeDetails.name.isError}\n errorMessage={second_nomineeDetails.name.errorMessage}\n />\n
\n
\n \n
\n
\n \n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n relationship: { value: event.target.value },\n })\n }\n >\n {relationshipList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n {second_nomineeDetails.relationship.value == \"Other\" && (\n
\n \n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n otherrelationship: { value: event.target.value },\n })\n }\n />\n
\n )}\n
\n
Date of Birth
\n \n \n \n {!!second_nomineeDetails.dob.errorMessage && (\n
\n {\" \"}\n {second_nomineeDetails.dob.errorMessage}\n
\n )}\n
\n {nominee_dateofbirth.second_nominee_dateofbirth && (\n
\n \n // setsecond_nomineeDetails({\n // ...second_nomineeDetails,\n // guardianname: { value: event.target.value },\n // })\n // }\n onChange={handleName(\"guardianname2\")}\n\n isShowError={second_nomineeDetails.guardianname.isError}\n errorMessage={\n second_nomineeDetails.guardianname.errorMessage\n }\n />\n
\n )}\n {nominee_dateofbirth.second_nominee_dateofbirth && (\n
\n \n
\n )}\n {nominee_dateofbirth.second_nominee_dateofbirth && (\n
\n \n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n gaurdianrelationship: {\n value: event.target.value,\n },\n })\n }\n >\n {relationshipList.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
\n )}\n
\n \n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n gender: { value: event.target.value },\n })\n }\n >\n {genderOptions.map((item, index) => (\n \n {item.name}\n \n ))}\n \n
{\" \"}\n
\n \n
\n
\n {\n if(!emailRegex.test(event.target.value)){\n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n email: {\n value: event.target.value,\n isError: true,\n errorMessage: \"Email is not valid\",\n }\n })\n } else {\n setsecond_nomineeDetails({\n ...first_nomineeDetails,\n email: { value: event.target.value },\n }) }}\n }\n isShowError={second_nomineeDetails.email.isError}\n errorMessage={second_nomineeDetails.email.errorMessage}\n />\n
\n
\n
\n handleAddress(\"nom2\")}\n />\n Same as First Applicant Address\n
\n
\n {!same_as_first_appicant_address.nom2 && (\n \n
\n \n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n address: { value: event.target.value },\n })\n }\n />\n
\n
\n \n setsecond_nomineeDetails({\n ...second_nomineeDetails,\n country: { value: event.target.value },\n })\n }\n >\n {countriesList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n )}\n \n \n \n )}\n {nominee_list >= 3 && (\n
\n
Nominee 3:
\n \n {NomineeListShow && (\n
\n \n {nomineeList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n )}\n
\n =3 ? false : true\n }\n value={third_nomineeDetails.name.value}\n isShowError={third_nomineeDetails.name.isError}\n errorMessage={third_nomineeDetails.name.errorMessage}\n />\n
\n
\n \n
\n
\n \n setthird_nomineeDetails({\n ...third_nomineeDetails,\n relationship: { value: event.target.value },\n })\n }\n >\n {relationshipList.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
\n {third_nomineeDetails.relationship.value == \"Other\" && (\n
\n \n setthird_nomineeDetails({\n ...third_nomineeDetails,\n otherrelationship: { value: event.target.value },\n })\n }\n />\n
\n )}\n
\n
Date of Birth
\n \n \n \n {!!third_nomineeDetails.dob.errorMessage && (\n
\n {\" \"}\n {third_nomineeDetails.dob.errorMessage}\n
\n )}\n
\n {nominee_dateofbirth.third_nominee_dateofbirth && (\n
\n \n // setthird_nomineeDetails({\n // ...third_nomineeDetails,\n // guardianname: { value: event.target.value },\n // })\n // }\n onChange={handleName(\"guardianname3\")}\n\n isShowError={third_nomineeDetails.guardianname.isError}\n errorMessage={\n third_nomineeDetails.guardianname.errorMessage\n }\n />\n
\n )}\n {nominee_dateofbirth.third_nominee_dateofbirth && (\n
\n \n
\n )}\n {nominee_dateofbirth.third_nominee_dateofbirth && (\n
\n \n setthird_nomineeDetails({\n ...third_nomineeDetails,\n gaurdianrelationship: {\n value: event.target.value,\n },\n })\n }\n >\n {relationshipList.map((item, index) => (\n \n {item.label}\n \n ))}\n \n
\n )}\n
\n \n setthird_nomineeDetails({\n ...third_nomineeDetails,\n gender: { value: event.target.value },\n })\n }\n >\n {genderOptions.map((item, index) => (\n \n {item.name}\n \n ))}\n \n
\n
\n \n
\n
\n {\n if(!emailRegex.test(event.target.value)){\n setthird_nomineeDetails({\n ...third_nomineeDetails,\n email: {\n value: event.target.value,\n isError: true,\n errorMessage: \"Email is not valid\",\n }\n })\n } else {\n setthird_nomineeDetails({\n ...first_nomineeDetails,\n email: { value: event.target.value },\n }) }}\n }\n isShowError={third_nomineeDetails.email.isError}\n errorMessage={third_nomineeDetails.email.errorMessage}\n />\n
\n
\n
\n handleAddress(\"nom3\")}\n />\n Same as First Applicant Address\n
\n
\n {!same_as_first_appicant_address.nom3 && (\n \n
\n \n setthird_nomineeDetails({\n ...third_nomineeDetails,\n address: { value: event.target.value },\n })\n }\n fatcawidth={true}\n />\n
{\" \"}\n
\n \n setthird_nomineeDetails({\n ...third_nomineeDetails,\n country: { value: event.target.value },\n })\n }\n >\n {countriesList.map((item, index) => (\n \n {item.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 \n props.history.replace(\"/new-investor-transaction/fatca-details\")\n }\n >\n BACK\n \n \n PROCEED\n \n
\n \n );\n};\nexport default connect(\n ({ newinvestor,dashboard }) => {\n const {\n applicantparams,\n fatcaDetails,\n getnomineeDetails,\n nomineDetails,\n address,\n store_pan,\n noNominee,\n } = newinvestor;\n return {\n fatcaDetails,\n applicantparams,\n getnomineeDetails,\n nomineDetails,\n address,\n store_pan,\n noNominee,\n };\n },\n {\n getCountriesList,\n getStatesList,\n storeApplicantParams,\n getKycDetails,\n checkKyc,\n getCitiesByState,\n getRelationShipList,\n storeNomineeDetails,\n storeNonomineeDetails,\n getNomineeDetails,\n }\n)(NomineeDetails);\n","import React, { useEffect, useReducer, useState } from \"react\";\n\nimport {\n ifscRegex,\n bankAccountRegex,\n pincodeRegex,\n nameRegex,\n accountRegex,\n} from \".\";\n\nimport CustomizedSelect from \"../customizedSelect\";\nimport { Input } from \"../../../forms/input\";\nimport CustomLoader from \"../../../forms/Loader\";\nimport CardComponent from \"./lib/CardComponent\";\nimport { MenuItem } from \"@material-ui/core\";\n// import { getBankDetails } from \"../../../../store/actions/newinvestor\";\nimport { getBankDetails } from \"shared/store/actions/newinvestor\";\nimport {\n getBankList,\n storeInvestmentDetails,\n storeInvestmentParams,\n NewinvestorBankDetails,\n bankAccountTypes,\n storeBankClick,\n getAccountTypes,\n storeApplicantParams\n} from \"shared/store/actions/newinvestor\";\nimport { connect } from \"react-redux\";\nimport { validatePennyDrop } from \"shared/store/actions/newinvestor\";\n\nconst BankDetails = (props) => {\n // const ValidAccountTypes = {\n // 11: [\"Savings\"],\n // 12: [\"Current\"],\n // 21: [\"NRE\"],\n // 22: [\"NRO\"],\n // };\n\n const [bankselected, setbankseleected] = useState(\"\");\n const [bankList, setBankList] = useState([]);\n\n const initialState = {\n IFSC: { value: \"\" },\n // \"MICR Code\": { value: \"\" },\n \"Bank Name\": { value: \"\" },\n \"Branch Address\": { value: \"\" },\n \"Branch City\": { value: \"\" },\n \"Branch Pincode\": { value: \"\" },\n \"Account Type\": { value: \"\" },\n \"Account Number\": { value: \"\" },\n \"Confirm Account Number\": { value: \"\" },\n AccountTypes: [],\n isLoading: false,\n BanksListShow: true,\n DisablingBankDetails: false,\n };\n\n const [formValues, setFormValues] = useReducer(\n (preValues, newValues) => ({ ...preValues, ...newValues }),\n initialState\n );\n const InputFields = [\n [\n { name: \"IFSC\", isMandatory: true, type: \"text\" },\n { name: \"Account Type\", isMandatory: true },\n ],\n [\n // { name: \"MICR Code\", isMandatory: false, type: \"text\" },\n {\n name: \"Bank Name\",\n isMandatory: true,\n type: \"text\",\n disabled: !!formValues.DisablingBankDetails ? true : false,\n },\n {\n name: \"Branch Address\",\n isMandatory: true,\n type: \"text\",\n disabled: !!formValues.DisablingBankDetails ? true : false,\n },\n ],\n [\n {\n name: \"Branch City\",\n isMandatory: true,\n type: \"text\",\n disabled: !!formValues.DisablingBankDetails ? true : false,\n },\n {\n name: \"Branch Pincode\",\n isMandatory: true,\n type: \"number\",\n disabled: !!formValues.DisablingBankDetails ? true : false,\n },\n ],\n [\n { name: \"Account Number\", isMandatory: true, type: \"password\" },\n { name: \"Confirm Account Number\", isMandatory: true, type: \"number\" },\n ],\n ];\n\n useEffect(() => {\n window.scrollTo({\n top: 0,\n behavior: \"smooth\",\n });\n props.storeBankClick(true)\n NewinvestorBankDetails();\n const { investmentDetails } = props;\n if (investmentDetails.IFSC) {\n setFormValues({ ...investmentDetails });\n return;\n }\n // setFormValues({\n // AccountTypes: ValidAccountTypes[props.applicantparams.i_category],\n // \"Account Type\": {\n // value: ValidAccountTypes[props.applicantparams.i_category]\n // },\n // });\n }, []);\n const NewinvestorBankDetails = async () => {\n const response = await props.NewinvestorBankDetails({\n pan: props.applicantparams.i_pangno,\n // pan:\"ABAPM0703H\"\n });\n const banks = !!response.Dtinformation ? response.Dtinformation : [];\n if (response.Dtinformation.length === 0) {\n setFormValues({ BanksListShow: false });\n }\n const uniqueBankAcnos = banks.filter((item, index, self) =>\n index === self.findIndex((t) => (\n t.BankAcno === item.BankAcno\n ))\n)\n const bankList = uniqueBankAcnos.map((bank) => {\n return { label: bank.BankName, value: bank.BankName };\n });\n setBankList([...bankList, { label: \"Add New Bank\", value: \"Add New Bank\" }]);\n if (!!response && response.Dtinformation.length>0) {\n const bankDetails = banks[0];\n if(!!props.investmentDetails.bankselected){\n setbankseleected(props.investmentDetails.bankselected);\n } else {\n setbankseleected(banks[0].BankName);\n }\n \n const formValues = {\n bankadd1: bankDetails.BankAdd1,\n bankadd2: bankDetails.BankAdd2,\n bankadd3: bankDetails.BankAdd3,\n IFSC: { value: bankDetails.ifsccode },\n \"Bank Name\": { value: bankDetails.BankName },\n \"Branch Address\": {\n value: bankDetails.BankAdd1 + \", \" + bankDetails.BankAdd2 + \" ,\" + bankDetails.BankAdd3,\n },\n \"Branch City\": { value: bankDetails.BankCity },\n \"Branch Pincode\": { value: bankDetails.BankPIN },\n \"Account Number\": { value: bankDetails.BankAcno },\n \"Confirm Account Number\": { value: bankDetails.BankAcno },\n \"Account Type\": { value: bankDetails.BnkAcType },\n };\n if (props.investmentDetails.IFSC) {\n setFormValues({ ...formValues,...props.investmentDetails });\n } else {\n setFormValues(formValues);\n }\n}\n const params = {\n opt: \"AC\",\n SchemeType: props.applicantparams.i_category === \"20\" ? \"Y\" : \"\",\n };\n const res = await props.getAccountTypes(params);\n if (res) {\n const typeList = res.Dtinformation.map((type) => {\n return { label: type.Account_Type, value: type.Account_Type };\n });\n setFormValues({ AccountTypes: typeList });\n }\n };\n\n const handleChange = (label) => (event) => {\n const value = event.target.value;\n switch (label) {\n case \"IFSC\":\n setFormValues({\n [label]: {\n value: value.toUpperCase(),\n isError: !ifscRegex.test(value),\n errorMessage: !value\n ? \"IFSC Number is Mandatory\"\n : !ifscRegex.test(value)\n ? \"Enter a valid IFSC Number\"\n : \"\",\n },\n });\n break;\n case \"Account Type\":\n setFormValues({\n [label]: {\n value: value,\n isError: value ? false : true,\n errorMessage: value ? \"\" : \"Enter a valid Account Typ\",\n },\n });\n break;\n case \"Branch Pincode\":\n setFormValues({\n [label]: {\n value,\n isError: !pincodeRegex.test(value),\n errorMessage: !value\n ? \"Pincode is Mandatory\"\n : !pincodeRegex.test(value)\n ? \"Enter a valid Pincode\"\n : \"\",\n },\n });\n break;\n case \"Account Number\":\n setFormValues({\n [label]: {\n value,\n isError: !bankAccountRegex.test(value),\n errorMessage: !value\n ? \"Account Number is Mandatory\"\n : !bankAccountRegex.test(value)\n ? \"Enter a valid Account Number\"\n : \"\",\n },\n });\n break;\n case \"Confirm Account Number\":\n setFormValues({\n [label]: {\n value,\n isError: !(formValues[\"Account Number\"].value === value),\n errorMessage: !value\n ? \"Account Number is Mandatory\"\n : !(formValues[\"Account Number\"].value === value)\n ? \"Account Numbers does not match\"\n : \"\",\n },\n });\n break;\n default:\n setFormValues({ [label]: { value } });\n break;\n }\n };\n const getBankDetails = async () => {\n const { IFSC } = formValues;\n if (ifscRegex.test(IFSC.value)) {\n setFormValues({ isLoading: true });\n try {\n const response = await props.getBankDetails({ ifsc: IFSC.value });\n const { DtData } = response;\n const {\n BankName,\n BankAdd1,\n BankAdd2,\n BankAdd3,\n BankCity,\n BankPin,\n MicrNo,\n } = DtData[0];\n setFormValues({\n bankadd1: BankAdd1,\n bankadd2: BankAdd2,\n bankadd3: BankAdd3,\n \"Bank Name\": { value: BankName },\n \"Branch Address\": {\n value: BankAdd1 + \", \" + BankAdd2 + \" ,\" + BankAdd3,\n },\n \"Branch City\": { value: BankCity },\n \"Branch Pincode\": { value: BankPin },\n DisablingBankDetails: true,\n \"Account Number\": { value: \"\" },\n // \"MICR Code\": { value: MicrNo },\n });\n } catch (error) {\n console.log(error);\n setFormValues({\n ...initialState,\n // AccountTypes: ValidAccountTypes[props.category_1],\n // \"Account Type\": {\n // value: ValidAccountTypes[props.category_1],\n // },\n IFSC: {\n value: \"\",\n isError: true,\n errorMessage: \"IFSC Not Found, Enter a valid IFSC Number\",\n },\n });\n } finally {\n setFormValues({ isLoading: false });\n }\n } else {\n setFormValues({\n IFSC: {\n value: IFSC.value,\n isError: true,\n errorMessage: !IFSC.value\n ? \"IFSC Number is Mandatory\"\n : \"Enter a valid IFSC Number\",\n },\n });\n }\n };\n const handleBankDetails = async (event) => {\n if(event.target.value === \"Add New Bank\"){ {\n setbankseleected(event.target.value)\n const params = {\n opt: \"AC\",\n SchemeType: props.applicantparams.i_category === \"20\" ? \"Y\" : \"\",\n };\n const res = await props.getAccountTypes(params);\n if (res) {\n const typeList = res.Dtinformation.map((type) => {\n return { label: type.Account_Type, value: type.Account_Type };\n });\n setFormValues({...initialState, AccountTypes: typeList });\n } else {\n setFormValues({\n ...initialState,\n }); }\n } }else if(event.target.value !== \"Add New Bank\") { setbankseleected(event.target.value);\n const bankDetails =\n !!props.getbankDetails.Dtinformation &&\n props.getbankDetails.Dtinformation.find(\n (ele) => ele.BankName === event.target.value\n );\n setFormValues({\n bankadd1: bankDetails.BankAdd1,\n bankadd2: bankDetails.BankAdd2,\n bankadd3: bankDetails.BankAdd3,\n IFSC: { value: bankDetails.ifsccode },\n \"Bank Name\": { value: bankDetails.BankName },\n \"Branch Address\": {\n value:\n bankDetails.BankAdd1 +\n \", \" +\n bankDetails.BankAdd2 +\n \" ,\" +\n bankDetails.BankAdd3,\n },\n \"Branch City\": { value: bankDetails.BankCity },\n \"Branch Pincode\": { value: bankDetails.BankPIN },\n \"Account Number\": { value: bankDetails.BankAcno },\n \"Confirm Account Number\": { value: bankDetails.BankAcno },\n \"Account Type\": {\n value: bankDetails.BnkAcType,\n },\n // value: ValidAccountTypes[bankDetails.BnkAcType]\n }); }\n };\n\n const submit = async () => {\n const accountNumber = formValues[\"Account Number\"].value;\n const confirmAccountNumber = formValues[\"Confirm Account Number\"].value;\n const isIFSCProvided = !!formValues.IFSC.value;\n const isAccountTypeProvided = !!formValues[\"Account Type\"].value;\n console.log(\"props.applicantparams\",props.applicantparams,formValues)\n\n if (!!formValues.IFSC.value && !formValues[\"Account Type\"].value) {\n setFormValues({\n ...formValues,\n \"Account Type\": {\n value: \"\",\n isError: true,\n errorMessage: \"Account Type is mandatory\",\n },\n });\n return;\n }\n if (\n props.applicantparams.i_category === \"20\" &&\n [\"SAVING\", \"Savings\", \"Saving\", \"SAVINGS\",''].includes(\n formValues[\"Account Type\"].value\n )\n ) {\n setFormValues({\n ...formValues,\n \"Account Type\": {\n value: \"\",\n isError: true,\n errorMessage: \"Select account type\",\n },\n });\n return;\n }\n\n if (\n accountNumber &&\n confirmAccountNumber &&\n accountNumber !== confirmAccountNumber\n ) {\n setFormValues({\n \"Confirm Account Number\": {\n value: \"\",\n isError: true,\n errorMessage: \"Account Numbers does not match\",\n },\n });\n return;\n }\n if (isIFSCProvided && (!isAccountTypeProvided || !accountNumber || !confirmAccountNumber || formValues[\"Bank Name\"].value === \"\" || formValues[\"Branch City\"].value === \"\" || formValues[\"Branch Pincode\"].value === \"\")) {\n const confirmation = window.confirm(\n \"You have not provided all the details. Do you want to proceed?\"\n );\n if (!confirmation) return;\n }\n if (formValues[\"Account Type\"].value === \"NRE\") {\n props.applicantparams[\"i_category\"] = \"21\";\n props.storeApplicantParams(props.applicantparams);\n }\n if (formValues[\"Account Type\"].value === \"NRO\") {\n props.applicantparams[\"i_category\"] = \"22\";\n props.storeApplicantParams(props.applicantparams);\n }\n\n const { AccountTypes, isLoading, bankadd1, bankadd2, bankadd3, ...others } =\n formValues;\n const invdetails = {\n i_ifsccode: formValues.IFSC.value,\n // i_micrcode: formValues[\"MICR Code\"].value,\n i_bnkacname: formValues[\"Bank Name\"].value,\n i_bnkadd1: formValues.bankadd1,\n i_bnkadd3: formValues.bankadd3,\n i_bnkadd2: formValues.bankadd2,\n i_bnkcity: formValues[\"Branch City\"].value,\n i_bnkpin: formValues[\"Branch Pincode\"].value,\n i_bnkacctype: formValues[\"Account Type\"].value,\n i_bnkacno: formValues[\"Account Number\"].value,\n };\n props.storeInvestmentDetails({ ...formValues , bankselected });\n props.storeInvestmentParams({ ...invdetails });\n props.history.replace(\"/new-investor-transaction/scheme-details\");\n };\n const { AccountTypes, isLoading } = formValues;\n return (\n <>\n \n BANK Details\n \n \n \n {formValues.BanksListShow && (\n
\n \n {bankList.map((item, index) => (\n \n {item.value}\n \n ))}\n \n
\n )}\n\n {InputFields.map((section) => (\n
\n {section.map((field) => (\n console.log(field)}\n >\n {!!field.type ? (\n \n ) : (\n \n {AccountTypes.map((i, index) => (\n \n {i.label}\n \n ))}\n \n )}\n
\n ))}\n \n ))}\n <>\n
\n\n
\n \n props.history.replace(\"/new-investor-transaction/nominee-details\")\n }\n >\n BACK\n \n \n PROCEED\n \n
\n \n );\n};\nexport default connect(\n ({ newinvestor,dashboard }) => {\n const { investmentDetails, applicantparams, getbankDetails } = newinvestor;\n return {\n investmentDetails,\n applicantparams,\n getbankDetails,\n };\n },\n {\n getBankDetails,\n storeInvestmentDetails,\n storeBankClick,\n storeInvestmentParams,\n validatePennyDrop,\n getBankList,\n NewinvestorBankDetails,\n bankAccountTypes,\n getAccountTypes,\n storeApplicantParams\n }\n)(BankDetails);\n","import React, { useState } from \"react\";\nimport CardComponent from \"./lib/CardComponent\";\nimport { connect, useDispatch } from \"react-redux\";\nimport { DetailsGroup } from \"../newPurchaseConfirm\";\nimport CustomizedDialogs from \"../../customModal\";\nimport { convertDateFormat } from \"./lib/utils\";\nimport {\n submitLumpsumDetails,\n submitSipDetails,\n clearingFirstTimeInvestorJourney,\n} from \"shared/store/actions\";\nimport CustomLoader from \"../../../forms/customLoader\";\nimport { Checkbox } from \"@material-ui/core\";\n\nconst Confirmation = ({\n location,\n storeLumpsum,\n storeSip,\n history,\n submitLumpsumDetails,\n submitSipDetails,\n noNominee,\n investmentparams\n}) => {\n const dispatch = useDispatch();\n const [dialog, setDialog] = useState({ open: false, appno: \"\" });\n const [type, setType] = useState(\"\");\n const [loader, setLoader] = useState(false);\n\n const data = location.state.type === \"lumpsum\" ? storeLumpsum : storeSip;\n\n const submit = async () => {\n setLoader(true);\n try {\n const response = await (location.state.type === \"lumpsum\"\n ? submitLumpsumDetails(data)\n : submitSipDetails(data));\n const { DtData } = response;\n const { appno, TrType } = DtData[0];\n setType(TrType);\n dispatch(clearingFirstTimeInvestorJourney());\n setLoader(false);\n setDialog({ appno, open: true });\n } catch (e) {\n setLoader(false);\n alert(e)\n }\n\n };\n const confirmationMessage = data.i_trtype === \"NEW\"\n ? data.combo_flag === \"Y\"\n ? \"Lumpsum Confirmation (Purchase cum Switch)\"\n : \"Lumpsum Confirmation\"\n : type === \"SIN\"\n ? \"Lumpsum + SIP Confirmation\"\n : \"SIP(Without Payment) Confirmation\";\n console.log(\"data\",data)\n return (\n <>\n \n \n
\n \n \n {location.state.type === \"lumpsum\" && (\n \n )}\n\n {location.state.type !== \"lumpsum\" && (\n
\n \n \n {(data?.i_paymode ===\"AOTM\")||(data?.i_paymode ===\"KOTM\") &&\n \n }\n \n \n \n {data?.isFlexi &&\n\n \n }\n {data?.isFreedom &&\n
\n \n \n \n \n\n
\n }\n
\n )}\n
\n \n Investor Details\n
\n
\n \n FATCA Details\n
\n
\n \n Nominee Details\n
\n
\n \n Bank Account Details\n
\n
\n
\n
\n \n history.push(\"/new-investor-transaction/scheme-details\")\n }\n >\n BACK\n \n \n SUBMIT\n \n history.push(\"/\")}\n Transaction={true}\n transactionStatus={() => history.push(\"/new-transaction\")}\n />\n
\n \n );\n};\n\nexport default connect(\n ({ newinvestor }) => {\n const { storeLumpsum, storeSip, noNominee, investmentparams } = newinvestor;\n return {\n storeLumpsum,\n storeSip,\n noNominee,\n investmentparams\n };\n },\n {\n submitLumpsumDetails,\n submitSipDetails,\n }\n)(Confirmation);\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { Route, Switch } from \"react-router\";\n\nimport VerticalStepper from \"./lib/VerticalStepper\";\nimport FatcaDetails from \"./FatcaDetails\";\nimport SchemeDetails from \"./SchemeDetails\";\nimport InvestorDetails from \"./InvestorDetails\";\nimport Signbutton from \"../../../forms/button\";\nimport { NEW_TRANSACTION_URL } from \"..\";\nimport NomineeDetails from \"./NomineeDetails\";\nimport BankDetails from \"./BankDetails\";\nimport Confirmation from \"./Confirmation\";\nconst NewInvestorRegistration = (props) => {\n const { location ,history} = props;\n const { pathname } = location;\n const activestep = pathname.split(\"/\").slice(-1)[0];\n const hide = pathname.includes(\"first-time-new-investor-journey\");\n return (\n
\n
\n \n
\n
\n \n \n \n \n \n \n \n \n
\n
\n );\n};\n\nexport default connect(null)(NewInvestorRegistration);\n","import React from \"react\";\nimport { Button } from \"@material-ui/core\";\n// import { ActionHeader } from '.';\nimport en from \"../../../lang/en-us.js\";\nconst { dashboard } = en;\n\nexport default function SuccessScreen({\n heading = \"\",\n infospan2 = \"\",\n successMessage = \"\",\n note = \"\",\n info3 = \"\",\n list = [] ,\n handleClick = () => {},\n backNavigation = () => {},\n showTrackStatusButton = true,\n ...props\n}) {\n return (\n <>\n {/* */}\n
\n
\n
\n {/* */}\n

{dashboard.Success.subHeading}

\n

{successMessage}

\n

{note}

\n
\n
\n {/*
    \n {list.map((_childProps: any, index: any) => (\n \n ))}\n
*/}\n {/* {showTrackStatusButton && (\n \n )} */}\n\n \n
\n
\n
\n \n );\n}\n","import React from \"react\";\nimport { Button } from \"@material-ui/core\";\nimport { useEffect } from \"react\";\nimport en from \"../../../lang/en-us.js\";\nimport SuccessScreen from \"./SuccessScreen\";\nconst { dashboard } = en;\n\nexport default function UpdateNomineeSuccess(props) {\n // const { reqId } = props.location.state || {};\n // useEffect(() => {\n // if (!props.location.state) {\n // props.history.push(\"/\");\n // return;\n // }\n // }, []);\n const { succesMessage } = props.location.state.state;\n return (\n
\n props.history.push(\"/new-transaction\")}\n backNavigation={() => props.history.push(\"/portal/nct\")}\n />\n
\n );\n}\n","import React, { Component } from \"react\";\nimport { Route, Switch } from \"react-router-dom\";\nimport Transactions from \"./TransactionMain\";\nimport TransactionType from \"./TransactionTypes\";\nimport TransactionMode from \"./TransactionModes\";\nimport NFOAndNewPurchaseDigital from \"./nfoAndNewPurchase\";\nimport EKYC from \"./ekycForm\";\nimport NctTypes from \"./NctTypes\";\nimport NewInvestorRegistration from \"./newInvestor/NewInvestorRegistration\";\nimport SelectedFolios from \"../UpdateNominee/SelectedFolios\";\nimport UpdateNomineeEdit from \"../UpdateNominee/update-nominee-edit\";\nimport UpdateNomineeSuccess from \"../UpdateNominee/update-nominee-success\";\n\nexport default class TransactionRouter extends Component {\n render() {\n const { history, location } = this.props;\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n\n \n \n\n \n \n \n \n \n \n\t\t\t\t\n\t\t\t\t\n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport TransactionRouter from \"./TransactionRoutes\";\nimport CommonBreadCrumb from \"../breadCrumbs\";\n\nexport const NEW_TRANSACTION_URL = `/new-transaction`;\n\nconst breadcrumbNameMap = {\n \"/new-transaction\": { title: \"New Transaction\", to: NEW_TRANSACTION_URL },\n \"/new-transaction/new-investor/ekyc\": {\n title: \"EKYC\",\n to: NEW_TRANSACTION_URL + \"/new-investor/ekyc\",\n },\n \"/new-transaction/new-investor\": {\n title: \"New Investor\",\n to: NEW_TRANSACTION_URL,\n },\n \"/new-transaction/nct-types\": {\n title: \"NCT\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/transction-types\": {\n title: \"Transaction Type\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/nfo-new-purchase\": {\n title: \"New Purchase\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n // \"/new-transaction/nfo-new-purchase/transaction-modes\": {\n // title: \"Mode of Transaction\",\n // to: NEW_TRANSACTION_URL + \"/nfo-new-purchase/transaction-modes\"\n // },\n \"/new-transaction/nfo-new-purchase/physical\": {\n title: \"Phygital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n // to: NEW_TRANSACTION_URL + \"/nfo-new-purchase/transaction-modes\"\n },\n \"/new-transaction/nfo-new-purchase/physical/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/nfo-new-purchase/physical/transact\",\n },\n \"/new-transaction/additional-purchase/physical\": {\n title: \"Phygital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n // to: NEW_TRANSACTION_URL + \"/additional-purchase/transaction-modes\"\n },\n \"/new-transaction/additional-purchase/physical/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/additional-purchase/physical/transact\",\n },\n\n \"/new-transaction/redemption/physical\": {\n title: \"Phygital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n // to: NEW_TRANSACTION_URL + \"/redemption/transaction-modes\"\n },\n \"/new-transaction/redemption/physical/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/redemption/physical/transact\",\n },\n \"/new-transaction/switch/physical\": {\n title: \"Phygital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n // to: NEW_TRANSACTION_URL + \"/switch/transaction-modes\"\n },\n \"/new-transaction/switch/physical/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/switch/physical/transact\",\n },\n \"/new-transaction/sip/physical\": {\n title: \"Phygital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n // to: NEW_TRANSACTION_URL + \"/sip/transaction-modes\"\n },\n \"/new-transaction/sip/physical/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/sip/physical/transact\",\n },\n\n \"/new-transaction/nfo-new-purchase/digital\": {\n title: \"Digital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/nfo-new-purchase/digital/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/nfo-new-purchase/digital/transact\",\n },\n \"/new-transaction/nfo-new-purchase/digital/transact/confirm\": {\n title: \"Confirm\",\n to: NEW_TRANSACTION_URL + \"/nfo-new-purchase/digital/transact/confirm\",\n },\n\n \"/new-transaction/additional-purchase\": {\n title: \"Additional Purchase\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/additional-purchase/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: NEW_TRANSACTION_URL + \"/additional-purchase/transaction-modes\",\n },\n \"/new-transaction/additional-purchase/digital\": {\n title: \"Digital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/additional-purchase/digital/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/additional-purchase/digital/transact\",\n },\n \"/new-transaction/additional-purchase/digital/transact/confirm\": {\n title: \"Confirm\",\n to: NEW_TRANSACTION_URL + \"/additional-purchase/digital/transact/confirm\",\n },\n\n \"/new-transaction/redemption\": {\n title: \"Redemption\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/redemption/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: NEW_TRANSACTION_URL + \"/redemption/transaction-modes\",\n },\n \"/new-transaction/redemption/digital\": {\n title: \"Digital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/redemption/digital/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/redemption/digital/transact\",\n },\n \"/new-transaction/redemption/digital/transact/confirm\": {\n title: \"Confirm\",\n to: NEW_TRANSACTION_URL + \"/redemption/digital/transact/confirm\",\n },\n\n \"/new-transaction/switch\": {\n title: \"SWITCH\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/switch/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: NEW_TRANSACTION_URL + \"/switch/transaction-modes\",\n },\n \"/new-transaction/switch/digital\": {\n title: \"Digital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/switch/digital/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/switch/digital/transact\",\n },\n \"/new-transaction/switch/digital/transact/confirm\": {\n title: \"Confirm\",\n to: NEW_TRANSACTION_URL + \"/switch/digital/transact/confirm\",\n },\n\n \"/new-transaction/sip\": {\n title: \"SIP\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/sip/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: NEW_TRANSACTION_URL + \"/sip/transaction-modes\",\n },\n \"/new-transaction/sip/digital\": {\n title: \"Digital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/sip/digital/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/sip/digital/transact\",\n },\n \"/new-transaction/sip/digital/transact/confirm\": {\n title: \"Confirm\",\n to: NEW_TRANSACTION_URL + \"/sip/digital/transact/confirm\",\n },\n\n \"/new-transaction/swp\": {\n title: \"SWP\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/swp/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: NEW_TRANSACTION_URL + \"/swp/transaction-modes\",\n },\n \"/new-transaction/swp/digital\": {\n title: \"Digital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/swp/digital/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/swp/digital/transact\",\n },\n \"/new-transaction/swp/digital/transact/confirm\": {\n title: \"Confirm\",\n to: NEW_TRANSACTION_URL + \"/swp/digital/transact/confirm\",\n },\n\n \"/new-transaction/stp\": {\n title: \"STP\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/stp/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/stp/digital\": {\n title: \"Digital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/stp/digital/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/stp/digital/transact\",\n },\n \"/new-transaction/stp/digital/transact/confirm\": {\n title: \"Confirm\",\n to: NEW_TRANSACTION_URL + \"/stp/digital/transact/confirm\",\n },\n\n \"/new-transaction/sip-cancellation\": {\n title: \"SIP Cancellation\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/sip-cancellation/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/sip-cancellation/digital\": {\n title: \"Digital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/sip-cancellation/digital/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/sip-cancellation/digital/transact\",\n },\n \"/new-transaction/sip-cancellation/digital/transact/confirm\": {\n title: \"Confirm\",\n to: NEW_TRANSACTION_URL + \"/sip-cancellation/digital/transact/confirm\",\n },\n \"/new-transaction/nct-type\": {\n title: \"NCT\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/nct-type/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/eNACH\": {\n title: \"eNACH\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/eNACH/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/eNACH/digital\": {\n title: \"Digital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/eNACH/digital/transact\": {\n title: \"Transact\",\n to: NEW_TRANSACTION_URL + \"/eNACH/digital/transact\",\n },\n \"/new-transaction/eNACH/digital/transact/confirm\": {\n title: \"Confirm\",\n to: NEW_TRANSACTION_URL + \"/eNACH/digital/transact/confirm\",\n },\n \"/new-transaction/nct-type\": {\n title: \"NCT\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/nct-type/transaction-modes\": {\n title: \"Mode of Transaction\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/nct-type/digital\": {\n title: \"Digital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/nct-type/phygital\": {\n title: \"Phygital Mode\",\n to: NEW_TRANSACTION_URL + \"/transction-types\",\n },\n \"/new-transaction/nct-type/digital/transact\": {\n title: \"Transact\", \n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n },\n \"/new-transaction/nct-type/digital/transact/confirm\": {\n title: \"Confirm\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact/confirm\",\n },\n \"/new-transaction/nct-type/digital/change-email\": {\n title: \"Change Email\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n },\n \"/new-transaction/nct-type/digital/updateNominee\": {\n title: \"Update Nominee\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n },\n \"/new-transaction/nct-type/phygital/change-email\": {\n title: \"Change Email\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n },\n \"/new-transaction/nct-type/update-ind-nominee\": {\n title: \"Update nominee\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n },\n \"/new-transaction/nct-type/success\": {\n title: \"success\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n },\n \"/new-transaction/nct-type/digital/change-mobile\": {\n title: \"Change Mobile\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n },\n \"/new-transaction/nct-type/phygital/change-mobile\": {\n title: \"Change Mobile\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n },\n \"/new-transaction/nct-type/digital/change-email-list\": {\n title: \"Change Email\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n }, \n \"/new-transaction/nct-type/digital/change-mobile-list\": {\n title: \"Change Mobile\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n }, \n \"/new-transaction/nct-type/phygital/change-mobile-document\": {\n title: \"Change Mobile\",\n to: NEW_TRANSACTION_URL + \"/nct-type/digital/transact\",\n }, \n};\n\nexport default class Transactions extends Component {\n render() {\n const { location } = this.props;\n const pathnames = location.pathname.includes(\"/ekyc\")\n ? location.pathname\n .split(\"/\")\n .filter((name) => name)\n .slice(0, 2)\n : location.pathname.split(\"/\").filter((name) => name);\n return (\n
\n \n \n
\n );\n }\n}\n","import _defineProperty from \"/Users/mac/kfin-projects/dit-react/packages/web/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport React, { Component } from \"react\";\nimport { ALL, GET_FUNDS_LIST, GET_FUNDS_LIST_SUCCESS, GET_FUNDS_LIST_FAILED, GET_CATEGORY_LIST, GET_CATEGORY_LIST_SUCCESS, GET_CATEGORY_LIST_FAILED, GET_SCHEME_LIST, GET_SCHEME_LIST_SUCCESS, GET_SCHEME_LIST_FAILED, REGULAR, PURCHASE, YES, NO } from \"../../store/types\";\nimport { sendNotification } from \"../utils\";\nexport default class CommonNewPurchaseForm extends Component {\n constructor(props) {\n var _this;\n super(props);\n _this = this;\n _defineProperty(this, \"handleChangeValue\", function (label, event) {\n if (label === \"minAmount\" && event.length <= 10) {\n _this.setState({\n [label]: {\n value: event.replace(/^0+/, \"\")\n }\n });\n } else if (label === \"mobile\" && event.length <= 10) {\n _this.setState({\n [label]: {\n value: event\n }\n });\n } else if ((label === \"subArnCode\" || label === \"subBrokerCode\") && event.length <= 15) {\n _this.setState({\n [label]: {\n value: event\n }\n });\n return;\n } else if (label !== \"mobile\" && label !== \"minAmount\" && label !== \"subArnCode\" && label !== \"subBrokerCode\") {\n _this.setState({\n [label]: {\n value: event\n }\n });\n }\n });\n // handleFundChange = async (value) => {\n // this.setState({ fund: { value: value } });\n // if (!value) {\n // this.setState({\n // fund: { value: \"\" },\n // category: { value: \"\" },\n // scheme: { value: \"\" },\n // minCost: \"\",\n // euinNo: { value: \"\" },\n // showSmart: false,\n // });\n // } else if (!!value.value && value.value === this.state.fund.value.value) {\n // return;\n // } else {\n // let params = { plntype: REGULAR };\n // params = { ...params, opt: \"AT\", fund: value.value };\n // const types = [\n // GET_CATEGORY_LIST,\n // GET_CATEGORY_LIST_SUCCESS,\n // GET_CATEGORY_LIST_FAILED,\n // ];\n // const response = await this.props.getNewPurchaseFundList(params, types);\n // if (!!response && !!response.Dtinformation) {\n // this.setState({\n // category: { value: \"\" },\n // scheme: { value: \"\" },\n // minCost: \"\",\n // minAmount: { value: \"\" },\n // euinNo: { value: \"\" },\n // showSmart: false,\n // });\n // }\n // }\n // };\n _defineProperty(this, \"handleCategoryChange\", async function (event) {\n _this.setState({\n category: {\n value: event\n }\n });\n if (!!event) {\n let params = {\n plntype: REGULAR\n };\n params = {\n ...params,\n opt: \"S\",\n schemetype: event.value,\n fund: \"176\"\n };\n const types = [GET_SCHEME_LIST, GET_SCHEME_LIST_SUCCESS, GET_SCHEME_LIST_FAILED];\n const response = await _this.props.getNewPurchaseFundList(params, types);\n if (response) {\n _this.setState({\n category: {\n value: event\n },\n scheme: {\n value: \"\"\n },\n minCost: \"\",\n minAmount: {\n value: \"\"\n },\n showSmart: false\n });\n }\n } else {\n _this.setState({\n category: {\n value: event\n },\n scheme: {\n value: \"\"\n },\n minCost: \"\",\n minAmount: {\n value: \"\"\n },\n showSmart: false\n });\n }\n });\n _defineProperty(this, \"changeScheme\", function (value) {\n const comboScheme = !!value && !!value.value && _this.props.schemeList.find(function (ele) {\n return ele.Scheme_Plan === value.value;\n });\n if (comboScheme.combo_flag === \"Y\") {\n _this.setState({\n combo_purchase_enable: true,\n combo_disclaimer: {\n value: comboScheme.combo_disclaimer\n },\n combo_lable: {\n value: comboScheme.combo_lable\n }\n });\n } else {\n _this.setState({\n combo_purchase_enable: false,\n combo_disclaimer: {\n value: \"\"\n },\n combo_lable: {\n value: \"\"\n }\n });\n }\n _this.setState({\n scheme: {\n value: value,\n isError: false,\n errorMessage: \"\"\n },\n minAmount: {\n value: \"\"\n },\n minCost: !!comboScheme && !!comboScheme.MinAmt ? comboScheme.MinAmt : \"\",\n multiples: !!comboScheme && !!comboScheme.multiples ? comboScheme.multiples : \"\"\n });\n if (!!value) {\n _this.validateBrokerCode();\n }\n });\n _defineProperty(this, \"validateBrokerCode\", async function () {\n if (!!_this.state.subArnCode.value && _this.state.subArnCode.value === _this.state.arnCode.value.split(\"-\")[1]) {\n _this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: \"ARN and Sub ARN Code should not be the same\"\n }\n });\n return;\n }\n const {\n subArnCode,\n arnCode\n } = _this.state;\n const params = {\n Fund: \"176\",\n SubAgentCd: !!subArnCode.value ? `ARN-${subArnCode.value}` : \"\",\n AgentCd: arnCode.value\n };\n const response = await _this.props.validateSubBroker(params);\n if (!!response && !response.DtData) {\n _this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `Please enter a valid sub ARN code`\n }\n });\n }\n });\n _defineProperty(this, \"ComboChange\", function () {\n _this.setState({\n isCombo: !_this.state.isCombo\n });\n });\n _defineProperty(this, \"handleChangeEuin\", async function (ele) {\n _this.setState({\n euinNo: {\n value: ele\n }\n });\n });\n _defineProperty(this, \"FamilyDescriptionEmail\", function (event) {\n _this.setState({\n Family_Code_Email: {\n value: event\n }\n });\n });\n _defineProperty(this, \"FamilyDescriptionPhone\", function (event) {\n _this.setState({\n Family_Code_Phone: {\n value: event\n }\n });\n });\n _defineProperty(this, \"onSubmit\", async function () {\n const {\n arnCode,\n combo,\n subArnCode,\n isCombo,\n radioValue,\n fund,\n invName,\n euinNo,\n minCost,\n subBrokerCode,\n showSmart,\n multiples,\n smart,\n Family_Code_Email,\n Family_Code_Phone,\n code,\n combo_purchase_enable,\n combo_purchase_flag,\n combo_disclaimer,\n combo_lable,\n ...others\n } = _this.state;\n const arn = _this.state.arnCode.value.split(\"-\");\n if (_this.state.euinNo.value === \"\") {\n _this.setState({\n euinNo: {\n value: \"\",\n isError: true,\n errorMessage: \"EUIN Declaration is mandatory*\"\n }\n });\n }\n if (_this.state.invName.value === \"\") {\n _this.setState({\n invName: {\n value: \"\",\n isError: true,\n errorMessage: \"Investor Name is mandatory*\"\n }\n });\n }\n if (!_this.state.code.value) {\n _this.setState({\n code: {\n value: \"\",\n isError: true,\n errorMessage: \"Country Code is mandatory*\"\n }\n });\n return;\n }\n if (!/^[+][0-9]{1,3}$/.test(_this.state.code.value)) {\n _this.setState({\n code: {\n value: \"\",\n isError: true,\n errorMessage: \"Enter Valid Country Code*\"\n }\n });\n return;\n }\n const keys = Object.keys(others);\n const findError = keys.every(function (key) {\n return !!others[key].value;\n });\n if (!findError) {\n keys.forEach(function (key) {\n !others[key].value && _this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage: `${key === \"category\" ? \"Category\" : key === \"scheme\" ? \"Scheme\" : key === \"minAmount\" ? \"Investment amount\" : key} is mandatory*`\n }\n });\n });\n } else if (invName.value === \"\") {\n _this.setState({\n invName: {\n value: \"\",\n isError: true,\n errorMessage: \"Investor name is mandatory*\"\n }\n });\n } else if (radioValue.value === \"no\" && !euinNo.value) {\n _this.setState({\n euinNo: {\n ...euinNo,\n isError: true\n }\n });\n // this.euinField.focus();\n return;\n } else if (minCost > others.minAmount.value) {\n _this.setState({\n minAmount: {\n ...others[\"minAmount\"],\n isError: true,\n errorMessage: `Minimum amount is ${minCost}`\n }\n });\n // this.minAmountField.focus();\n } else if (/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(_this.state.emailId.value) === false) {\n _this.setState({\n emailId: {\n ...others[\"emailId\"],\n isError: true,\n errorMessage: `Enter an vaild Email ID`\n }\n });\n return;\n } else if (/^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[789]\\d{9}$/.test(_this.state.mobile.value) === false) {\n _this.setState({\n mobile: {\n ...others[\"mobile\"],\n isError: true,\n errorMessage: `Enter an vaild Mobile No.`\n }\n });\n return;\n } else if (arn[1] === _this.state.subArnCode.value) {\n _this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `and ARN code should not match`\n }\n });\n } else {\n const plan = _this.state.scheme.value.value.split(\"~\");\n const params = {\n InvestorName: _this.state.invName.value,\n i_entby: _this.props.userId,\n trtype: PURCHASE,\n Desci: \"Yes~S~\",\n SubbrokerArn: !!_this.state.subArnCode.value ? `ARN-${subArnCode.value}` : \"\",\n ARNCode: _this.state.arnCode.value,\n EuinCode: _this.state.radioValue.value === \"no\" ? _this.state.euinNo.value.value : \"\",\n i_Userid: _this.props.userId,\n Mobile: _this.state.mobile.value,\n PanNo: !!_this.props.investorData.PAN ? _this.props.investorData.PAN : !!_this.props.pan ? _this.props.pan : \"\",\n Email: _this.state.emailId.value,\n countrycode: _this.state.code.value,\n fEmailFlag: _this.state.Family_Code_Email.value,\n fMobileFlag: _this.state.Family_Code_Phone.value,\n i_Acno: \"0\",\n Subbroker: _this.state.subBrokerCode.value,\n i_Fund: \"176\",\n i_UntAmtValue: _this.state.minAmount.value,\n EUINFlag: _this.state.radioValue.value === \"no\" ? NO : YES,\n EuinValid: _this.state.radioValue.value === \"no\" ? NO : YES,\n i_Scheme: plan[1],\n i_Plan: plan[2],\n i_Option: plan[3],\n i_oldihno: \"0\",\n i_InvDistFlag: \"S\",\n ModuleName: \"Webile\",\n comboswitch: !_this.state.combo_purchase_flag\n };\n const response = await _this.props.submitPurchaseData(params);\n if (!!response && !response.error) {\n const {\n DtData: [purchaseData]\n } = response;\n const confirmationParams = {\n Trtype: PURCHASE,\n fund: _this.state.fund.value.value,\n Refno: purchaseData.refno,\n ModuleName: \"Webile\"\n };\n const confirmationResponse = await _this.props.showPurchaseConfirmation(confirmationParams);\n if (!!confirmationResponse && !confirmationResponse.response) {\n _this.routing();\n } else if (!!confirmationResponse && !!confirmationResponse.error) {\n sendNotification(`${confirmationResponse.error}`);\n }\n }\n }\n });\n const {\n investorData,\n communicationDetails = [],\n token\n } = this.props;\n const revCD = !!communicationDetails && communicationDetails.length > 0 ? communicationDetails.reverse() : \"\";\n const Xmobile = (revCD || []).find(function (detail) {\n return detail.PAN === investorData.PAN && !!detail.Mobile && !!detail.Fund && detail.Fund.toString().trim() === \"176\";\n });\n const Xemail = (revCD || []).find(function (detail) {\n return detail.PAN === investorData.PAN && !!detail.Fund && detail.Fund.toString().trim() === \"176\" && (!!detail.email || !!detail.Email);\n });\n const Email = !!Xemail && (!!Xemail.email || !!Xemail.Email) ? Xemail.email || Xemail.Email : \"\";\n const Mobile = !!Xmobile && !!Xmobile.Mobile ? Xmobile.Mobile : \"\";\n this.state = {\n emailId: {\n value: Email || \"\"\n },\n mobile: {\n value: Mobile || \"\"\n },\n arnCode: {\n value: token\n },\n invName: {\n value: !!investorData ? investorData.invname : \"\"\n },\n fund: {\n value: \"176\"\n },\n category: {\n value: \"\"\n },\n scheme: {\n value: \"\"\n },\n minAmount: {\n value: \"\"\n },\n subArnCode: {\n value: \"\"\n },\n euinNo: {\n value: \"\"\n },\n radioValue: {\n value: \"no\"\n },\n subBrokerCode: {\n value: \"\"\n },\n isCombo: false,\n combo: {\n flag: \"\",\n disclamier: \"\",\n label: \"\"\n },\n showSmart: false,\n smart: {\n flag: \"yes\"\n },\n Family_Code_Email: {\n value: \"\"\n },\n Family_Code_Phone: {\n value: \"\"\n },\n code: {\n value: \"+91\"\n },\n combo_purchase_enable: false,\n combo_purchase_flag: true,\n combo_disclaimer: {\n value: \"\"\n },\n combo_lable: {\n value: \"\"\n }\n };\n }\n async componentDidMount() {\n const params = {\n opt: \"AT\",\n plntype: REGULAR,\n fund: \"176\"\n };\n const types = [GET_CATEGORY_LIST, GET_CATEGORY_LIST_SUCCESS, GET_CATEGORY_LIST_FAILED];\n await this.props.getNewPurchaseFundList(params, types);\n }\n}\nexport const family_description_codes = [{\n family_description: \"Self\",\n family_code: \"SE\"\n}, {\n family_description: \"Spouse\",\n family_code: \"SP\"\n}, {\n family_description: \"Dependent Children\",\n family_code: \"DC\"\n}, {\n family_description: \"Dependent Siblings\",\n family_code: \"DS\"\n}, {\n family_description: \"Dependent Parents\",\n family_code: \"DP\"\n}, {\n family_description: \"Guardian\",\n family_code: \"GD\"\n}];","import React, { Component } from \"react\";\nimport { Input } from \"../../forms/input\";\nimport Signbutton from \"../../forms/button\";\nimport { connect } from \"react-redux\";\nimport CustomizedSelect from \"./customizedSelect\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport {\n getNewPurchaseFundList,\n validateSubBroker,\n getInvestorDetails,\n submitPurchaseData,\n showPurchaseConfirmation,\n} from \"shared/store/actions\";\nimport {\n GET_CATEGORY_LIST,\n GET_CATEGORY_LIST_SUCCESS,\n GET_SCHEME_LIST,\n GET_SCHEME_LIST_SUCCESS,\n GET_CATEGORY_LIST_FAILED,\n GET_SCHEME_LIST_FAILED,\n PURCHASE,\n ALL,\n REGULAR,\n NO,\n YES,\n NEW_PURCHASE,\n} from \"shared/store/types\";\nimport { Checkbox } from \"@material-ui/core\";\nimport Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControl from \"@material-ui/core/FormControl\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\nimport { NEW_TRANSACTION_URL } from \".\";\nimport { INVESTOR_URL } from \"../investors\";\nimport { family_description_codes } from \"shared/components/Transactions/newPurchaseForm\";\n\n\nclass NewPurchase extends Component {\n constructor(props) {\n super(props);\n const { investorData, communicationDetails = [], token,location } = this.props;\n const revCD =\n !!communicationDetails && communicationDetails.length > 0\n ? communicationDetails.reverse()\n : \"\";\n const Xmobile = (revCD || []).find(\n (detail) => detail.PAN === investorData.PAN && !!detail.Mobile\n );\n const Xemail = (revCD || []).find(\n (detail) => detail.PAN === investorData.PAN && !!detail.email\n );\n const Email = !!Xemail && !!Xemail.email ? Xemail.email : \"\";\n const Mobile = !!Xmobile && !!Xmobile.Mobile ? Xmobile.Mobile : \"\";\n const { state } = location;\n const { transaction } = state || {};\n this.state = {\n emailId: { value: !!transaction ? transaction.Email : Email || \"\" },\n mobile: { value: !!transaction ? transaction.mobile : Mobile || \"\" },\n arnCode: { value: token },\n invName: {\n value: !!transaction\n ? transaction.InvName\n : this.props.investorData.invname || this.props.kycData.invname,\n }, \n fund: { value: \"176\" },\n category: { value: !!transaction ? transaction.category : \"\" },\n scheme: {\n value: !!transaction\n ? {\n label: transaction.schemename,\n value: transaction.scheme_code,\n }\n : \"\",\n }, \n minAmount: { value: !!transaction ? transaction.amount : \"\" },\n subArnCode: { value: !!transaction ? transaction.Sub_ARN_code : \"\" },\n euinNo: {\n value:\n !!transaction && transaction.euinopt == \"N\"\n ? transaction.euincode\n : \"\",\n }, \n radioValue: {\n value: !!transaction && transaction.euinopt === \"Y\" ? \"yes\" : \"no\",\n }, \n subBrokerCode: { value: !!transaction ? transaction.subbroker : \"\" },\n isCombo: false,\n combo: { flag: \"\", disclamier: \"\", label: \"\" },\n showSmart: false,\n smart: { flag: \"yes\" },\n code: { value: \"+91\" },\n Family_Code_Email: { value: \"\" },\n Family_Code_Phone: { value: \"\" },\n combo_purchase_enable:false,\n combo_purchase_flag: false,\n combo_disclaimer: { value: \"\" },\n combo_lable: { value: \"\" }\n };\n }\n\n async componentDidMount() {\n const params = {\n opt: \"AT\",\n plntype: REGULAR,\n fund: \"176\",\n };\n\n const types = [\n GET_CATEGORY_LIST,\n GET_CATEGORY_LIST_SUCCESS,\n GET_CATEGORY_LIST_FAILED,\n ];\n await this.props.getNewPurchaseFundList(params, types);\n if (this.props?.location?.state?.transaction) {\n let params1 = {\n plntype: REGULAR,\n opt: \"S\",\n schemetype: this.state.category.value,\n fund: \"176\",\n };\n const types1 = [\n GET_SCHEME_LIST,\n GET_SCHEME_LIST_SUCCESS,\n GET_SCHEME_LIST_FAILED,\n ];\n await this.props.getNewPurchaseFundList(params1, types1);\n const params2 = {\n Fund: \"176\",\n SubAgentCd: !!this.state.subArnCode.value\n ? `ARN-${this.state.subArnCode.value}`\n : \"\",\n AgentCd: this.state.arnCode.value,\n };\n await this.props.validateSubBroker(params2);\n }\n }\n\n handleChange = (label) => async (value) => {\n this.setState({ [label]: { value } });\n if (!value) {\n this.setState({\n [label]: { value: \"\" },\n category: { value: \"\" },\n scheme: { value: \"\" },\n minCost: \"\",\n euinNo: { value: \"\" },\n showSmart: false,\n });\n } else if (value.value === this.state.fund.value.value) {\n return;\n } else {\n let params = { plntype: REGULAR };\n params = { ...params, opt: \"AT\", fund: value.value };\n const types = [\n GET_CATEGORY_LIST,\n GET_CATEGORY_LIST_SUCCESS,\n GET_CATEGORY_LIST_FAILED,\n ];\n const response = await this.props.getNewPurchaseFundList(params, types);\n if (response) {\n this.setState({\n [label]: { value },\n category: { value: \"\" },\n scheme: { value: \"\" },\n minCost: \"\",\n euinNo: { value: \"\" },\n showSmart: false,\n });\n }\n }\n };\n\n validateBrokerCode = async () => {\n if (\n !!this.state.subArnCode.value &&\n this.state.subArnCode.value === this.state.arnCode.value.split(\"-\")[1]\n ) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: \"ARN and Sub ARN Code should not be the same\",\n },\n });\n return;\n }\n\n const { fund, subArnCode, arnCode } = this.state;\n const params = {\n Fund: \"176\",\n SubAgentCd: !!subArnCode.value ? `ARN-${subArnCode.value}` : \"\",\n AgentCd: arnCode.value,\n };\n const response = await this.props.validateSubBroker(params);\n // if (!response) {\n // alert(`${response}`);\n // // this.setState({\n // // subArnCode: {\n // // value: \"\",\n // // isError: true,\n // // errorMessage: ``,\n // // },\n // // });\n // }\n };\n\n handleCategoryChange = (label) => async (event) => {\n this.setState({ [label]: { value: event.target.value } });\n if (!!event.target.value) {\n let params = { plntype: REGULAR };\n params = {\n ...params,\n opt: \"S\",\n schemetype: event.target.value,\n fund: \"176\",\n };\n const types = [\n GET_SCHEME_LIST,\n GET_SCHEME_LIST_SUCCESS,\n GET_SCHEME_LIST_FAILED,\n ];\n const response = await this.props.getNewPurchaseFundList(params, types);\n if (response) {\n this.setState({\n [label]: { value: event.target.value },\n scheme: { value: \"\" },\n minCost: \"\",\n\n });\n }\n } else {\n this.setState({\n [label]: { value: event.target.value },\n scheme: { value: \"\" },\n minCost: \"\",\n });\n }\n };\n\n changeScheme = (value) => {\n const comboScheme = !!value && !!value.value && this.props.schemeList.find(\n (ele) => ele.Scheme_Plan === value.value\n );\n if (comboScheme.combo_flag === \"Y\") {\n this.setState({\n combo_purchase_enable: true,\n combo_disclaimer: { value: comboScheme.combo_disclaimer },\n combo_lable: { value: comboScheme.combo_lable }\n })\n }\n else{\n this.setState({\n combo_purchase_enable: false,\n combo_disclaimer: { value: \"\"},\n combo_lable: { value: \"\" }\n })\n }\n this.setState({\n scheme: { value: value, isError: false, errorMessage: \"\" },\n minAmount: { value: \"\", isError: false, errorMessage: \"\" },\n minCost: !!comboScheme && !!comboScheme.MinAmt ? comboScheme.MinAmt : \"\",\n multiples: !!comboScheme && !!comboScheme.multiples ? comboScheme.multiples : \"\"\n });\n if (!!value) {\n this.validateBrokerCode();\n }\n };\n\n changeValue = (label) => (event) => {\n if (label === \"minAmount\" && event.target.value.length <= 10) {\n this.setState({\n [label]: { value: event.target.value.replace(/^0+/, \"\") },\n });\n } else if (label === \"code\") {\n if (!/^[+]\\d{1,3}/.test(event.target.value)) {\n this.setState({\n [label]: {\n value: event.target.value,\n isError: true,\n errorMessage: \"Enter a valid Country Code\",\n },\n });\n } else {\n this.setState({ [label]: { value: event.target.value } });\n }\n } else if (label === \"mobile\" && event.target.value.length <= 10) {\n this.setState({\n [label]: { value: event.target.value },\n });\n } else if (\n (label === \"subArnCode\" || label === \"subBrokerCode\") &&\n event.target.value.length <= 20\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n return;\n } else if (\n label !== \"mobile\" &&\n label !== \"minAmount\" &&\n label !== \"subArnCode\" &&\n label !== \"subBrokerCode\"\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n }\n };\n\n changeEuin = (label) => (value) => {\n this.setState({\n [label]: { value },\n });\n };\n\n showError = (label) => (event) => {\n const {\n [label]: { value },\n } = this.state;\n if (label === \"minAmount\") {\n if (this.state.minCost > this.state.minAmount.value) {\n this.setState({\n [label]: {\n value,\n isError:\n this.state.minCost > this.state.minAmount.value ? true : !value,\n errorMessage:\n this.state.minCost > this.state.minAmount.value\n ? `(Amount should be ${this.state.minCost})`\n : \"\",\n },\n });\n }\n } else if (label === \"emailId\") {\n this.setState({\n [label]: {\n value,\n isError:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.emailId.value\n ) === false\n ? true\n : !value,\n errorMessage:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.emailId.value\n ) === false\n ? `( *enter an vaild email address )`\n : \"\",\n },\n });\n } else if (label === \"code\") {\n if (!/^[+]\\d{1,3}/.test(event.target.value)) {\n this.setState({\n [label]: {\n value: \"\",\n isError: true,\n errorMessage: \"Enter a valid Country Code\",\n },\n });\n }\n } else if (label === \"mobile\") {\n this.setState({\n [label]: {\n value,\n isError:\n /^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[6-9]\\d{9}$/.test(\n this.state.mobile.value\n ) === false\n ? true\n : !value,\n errorMessage:\n /^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[6-9]\\d{9}$/.test(\n this.state.mobile.value\n ) === false\n ? `(* Enter a valid Phone Number)`\n : !value,\n },\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n\n submit = async () => {\n const { location } = this.props;\n const { state } = location;\n const {\n arnCode,\n combo,\n subArnCode,\n isCombo,\n radioValue,\n invName,\n euinNo,\n minCost,\n code,\n subBrokerCode,\n showSmart,\n fund, multiples,\n smart,\n combo_purchase_enable,\n combo_purchase_flag,\n combo_disclaimer,\n combo_lable,\n ...others\n } = this.state;\n const arn = this.state.arnCode.value.split(\"-\");\n if (!/^[+]\\d{1,3}/.test(this.state.code.value)) {\n this.setState({\n code: {\n value: \"\",\n isError: true,\n errorMessage: !code.value\n ? \"Country Code is Mandatory\"\n : \"Enter a valid Country Code\",\n },\n });\n return;\n }\n if (this.state.euinNo.value === \"\") {\n this.setState({\n euinNo: {\n value: \"\",\n isError: true,\n },\n });\n }\n\n if (this.state.invName.value === \"\") {\n this.setState({\n invName: {\n value: \"\",\n isError: true,\n errorMessage: \"Investor Name is mandatory*\",\n },\n });\n }\n\n const keys = Object.keys(others);\n const findError = keys.every((key) => !!others[key].value);\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage: `${key} is mandatory*`,\n },\n });\n });\n const firstErroredKey = keys.find((key) => !others[key].value);\n console.log(\"firstErroredKey\",firstErroredKey)\n switch (firstErroredKey) {\n case \"emailId\": {\n this.emailIdField.focus();\n break;\n }\n case \"mobile\": {\n this.mobileField.focus();\n break;\n }\n // case \"fund\": {\n // this.fundField.focus();\n // break;\n // }\n case \"category\": {\n this.categoryField.focus();\n break;\n }\n case \"scheme\": {\n this.schemeField.focus();\n break;\n }\n case \"minAmount\": {\n this.minAmountField.focus();\n break;\n }\n }\n } else if (invName.value === \"\") {\n this.setState({\n invName: {\n value: \"\",\n isError: true,\n errorMessage: \"Investor Name is mandatory*\",\n },\n });\n } else if (radioValue.value === \"no\" && !euinNo.value) {\n this.setState({\n euinNo: { ...euinNo, isError: true },\n });\n this.euinField.focus();\n return;\n } else if (minCost > others.minAmount.value) {\n this.setState({\n minAmount: {\n ...others[\"minAmount\"],\n isError: true,\n errorMessage: `Minimum amount should be ${minCost} `\n ,\n },\n });\n this.minAmountField.focus();\n } else if (\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.emailId.value\n ) === false\n ) {\n this.setState({\n emailId: {\n ...others[\"emailId\"],\n isError: true,\n errorMessage: `Enter an Vaild Email address`,\n },\n });\n return;\n } else if (\n /^(?:(?:\\+|0{0,2})91(\\s*[\\-]\\s*)?|[0]?)?[6-9]\\d{9}$/.test(\n this.state.mobile.value\n ) === false\n ) {\n this.setState({\n mobile: {\n ...others[\"mobile\"],\n isError: true,\n errorMessage: `Enter an Vaild phone Number`,\n },\n });\n return;\n } else if (arn[1] === this.state.subArnCode.value) {\n this.setState({\n subArnCode: {\n value: \"\",\n isError: true,\n errorMessage: `and ARN code should not match `,\n },\n });\n } else {\n const plan = this.state.scheme.value.value.split(\"~\");\n\n const params = {\n InvestorName: this.state.invName.value,\n i_entby: this.props.userId,\n trtype: PURCHASE,\n Desci: \"Yes~A~\",\n SubbrokerArn: !!this.state.subArnCode.value\n ? `ARN-${subArnCode.value}`\n : \"\",\n ARNCode: this.state.arnCode.value,\n EuinCode:\n this.state.radioValue.value === \"no\"\n ? this.state.euinNo.value.value\n : \"\",\n i_Userid: this.props.userId,\n Mobile: this.state.mobile.value,\n PanNo: this.props.investorData.PAN || state.pan,\n Email: this.state.emailId.value,\n i_Acno: \"0\",\n Subbroker: this.state.subBrokerCode.value,\n i_Fund: \"176\",\n i_UntAmtValue: this.state.minAmount.value,\n EUINFlag: this.state.radioValue.value === \"no\" ? NO : YES,\n EuinValid: this.state.radioValue.value === \"no\" ? NO : YES,\n i_Scheme: plan[1],\n i_Plan: plan[2],\n i_Option: plan[3],\n i_oldihno: \"0\",\n i_InvDistFlag: \"S\",\n ModuleName: \"Webile\",\n countrycode: this.state.code.value,\n fEmailFlag: this.state.Family_Code_Email.value.value,\n fMobileFlag: this.state.Family_Code_Phone.value.value,\n comboswitch:!this.state.combo_purchase_flag\n };\n\n const response = await this.props.submitPurchaseData(params);\n\n if (!!response && !response.error) {\n const {\n DtData: [purchaseData],\n } = response;\n const confirmationParams = {\n Trtype: PURCHASE,\n fund: \"176\",\n Refno: purchaseData.refno,\n ModuleName: \"Webile\",\n };\n const confirmationResponse = await this.props.showPurchaseConfirmation(\n confirmationParams\n );\n\n\n if (!!confirmationResponse && !confirmationResponse.error) {\n this.props.history.push({\n pathname:\n INVESTOR_URL +\n \"/nfo-new-purchase/digital/transact/confirm\",\n state: {\n title: \"NEW PURCHASE SUMMARY\",\n pan: !!state && !!state.pan ? state.pan : \"\",\n InvestorEmail: this.state.emailId.value,\n orginalScheme: this.state.scheme.value.label,\n InvestorMobile: this.state.mobile.value,\n scheme: { Fund: \"176\" },\n type: NEW_PURCHASE,\n arnCode: this.state.arnCode.value,\n fEmailFlag: this.state.Family_Code_Email.value,\n fMobileFlag: this.state.Family_Code_Phone.value,\n },\n });\n } else if (!!confirmationResponse.error) {\n alert(`${confirmationResponse.error}`)\n }\n } else if (!!response && !!response.error) {\n alert(`${response.error}`)\n }\n }\n };\n\n ComboChange = () => {\n this.setState({\n isCombo: !this.state.isCombo,\n });\n };\n\n changeSmart = (event) => {\n this.setState({\n smart: { flag: event.target.value },\n });\n };\n FamilyDescriptionEmail = (event) => {\n this.setState({\n Family_Code_Email: { value: event }\n })\n }\n FamilyDescriptionPhone = (event) => {\n this.setState({\n Family_Code_Phone: { value: event }\n })\n }\n ComboFlagChange = (value) => {\n this.setState({\n combo_purchase_flag: !this.state.combo_purchase_flag\n })\n }\n\n\n render() {\n const { fundsList, schemeList, categoryList, euinList } = this.props;\n const {\n emailId,\n mobile,\n arnCode,\n fund,\n invName,\n category,\n combo,\n scheme,\n subArnCode,\n radioValue,\n euinNo,\n minAmount,\n subBrokerCode,\n smart,\n showSmart,\n isCombo,\n Family_Code_Email,\n Family_Code_Phone,\n } = this.state;\n const { location } = this.props;\n const { state } = location;\n return (\n \n
\n
New Purchase
\n\n {/*
\n
AMC
\n \n
*/}\n\n {/* {!!state && !!state.pan && ( */}\n
\n (this.invNameField = ele)}\n disabled={true}\n />\n
\n\n
\n
Email Family Description
\n ({\n label: item.family_description,\n value: item.family_code,\n }))}\n value={Family_Code_Email.value}\n placeholder=\"Select Family Description\"\n handleChange={this.FamilyDescriptionEmail}\n inputRef={(ele) => (this.emailfamilyField = ele)}\n isError={Family_Code_Email.isError}\n errorMessage={Family_Code_Email.errorMessage}\n\n />\n
\n {/* )} */}\n
\n (this.emailIdField = ele)}\n errorMessage={this.state.emailId.errorMessage}\n />\n
\n\n
\n
Mobile Family Description
\n ({\n label: item.family_description,\n value: item.family_code,\n }))}\n value={Family_Code_Phone.value}\n placeholder=\"Select Phone Description\"\n handleChange={this.FamilyDescriptionPhone}\n inputRef={(ele) => (this.mobilefamilyField = ele)}\n isError={Family_Code_Phone.isError}\n errorMessage={Family_Code_Phone.errorMessage}\n />\n
\n\n
\n (this.codeField = ele)}\n />\n
\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n value={mobile.value}\n onChange={this.changeValue(\"mobile\")}\n onBlur={this.showError(\"mobile\")}\n isShowError={mobile.isError}\n errorMessage={mobile.errorMessage}\n inputref={(ele) => (this.mobileField = ele)}\n />\n
\n\n\n
\n (this.categoryField = ele)}\n isError={category.isError}\n errorMessage={category.errorMessage}\n >\n {categoryList.map((item, index) => (\n \n {item.fm_subcategory}\n \n ))}\n \n
\n\n
\n
Scheme
\n ({\n label: item.Scheme_Desc,\n value: item.Scheme_Plan,\n }))}\n value={scheme.value}\n placeholder=\"Select Scheme\"\n handleChange={this.changeScheme}\n disabled={!category.value}\n inputRef={(ele) => (this.schemeField = ele)}\n isError={scheme.isError}\n errorMessage={scheme.errorMessage}\n />\n
\n\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n placeholder=\"Amount\"\n step=\"1\"\n type=\"number\"\n value={minAmount.value}\n onChange={this.changeValue(\"minAmount\")}\n onBlur={this.showError(\"minAmount\")}\n errorMessage={minAmount.errorMessage}\n isShowError={minAmount.isError}\n inputref={(ele) => (this.minAmountField = ele)}\n />\n
\n\n
\n \n
\n\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n type=\"number\"\n value={subArnCode.value}\n isShowError={subArnCode.isError}\n errorMessage={subArnCode.errorMessage}\n onBlur={this.validateBrokerCode}\n onChange={this.changeValue(\"subArnCode\")}\n inputref={(ele) => (this.subArnField = ele)}\n />\n
\n\n
\n \n (evt.key === \"e\" || evt.key === \".\" || evt.key === \"-\") &&\n evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n value={subBrokerCode.value}\n onChange={this.changeValue(\"subBrokerCode\")}\n inputref={(ele) => (this.subBrokerField = ele)}\n />\n
\n
\n
EUIN
\n\n \n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
YES
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
NO
\n
\n \n
\n
\n {radioValue.value === \"no\" ? (\n
\n ({\n label: item.abm_agent,\n value: item.abm_agent,\n }))}\n value={euinNo.value}\n placeholder=\"Select EUIN\"\n handleChange={this.changeEuin(\"euinNo\")}\n disabled={!euinList.length}\n inputRef={(ele) => (this.euinField = ele)}\n isError={euinNo.isError}\n />\n
\n ) : (\n
\n I/We hereby confirm that the EUIN box has been intentionally left\n the blank by me/us as this is an 'execution-only' transaction\n without any interaction or advice by any personnel of the above\n distributor or notwithstanding the advice of in-appropriateness,if\n any provided by any personnel of the distributor and the\n distributor has not charged any advisory fees on this transaction\n
\n )}\n {this.state.combo_purchase_enable &&\n
\n
\n {this.state.combo_lable.value}\n
\n
{this.state.combo_disclaimer.value}
\n
\n }\n
\n \n
\n
\n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions ,investor}) => {\n const { investorData, communicationDetails, token, userId } = authReducer;\n const { fundsList, schemeList, categoryList, euinList } = transactions;\n const {kycData}= investor\n return {\n investorData,\n communicationDetails,\n token,\n fundsList,\n schemeList,\n categoryList,\n euinList,\n userId,\n kycData\n };\n },\n {\n getNewPurchaseFundList,\n getInvestorDetails,\n validateSubBroker,\n submitPurchaseData,\n showPurchaseConfirmation,\n }\n)(NewPurchase);\n\nexport class SundaramMutualFund extends Component {\n render() {\n return (\n \n \n Sundaram Mutual\n \n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport NavData from \"./navData\";\nimport {\n ALL,\n GET_CATEGORY_LIST,\n GET_CATEGORY_LIST_SUCCESS,\n GET_CATEGORY_LIST_FAILED,\n GET_SCHEME_LIST,\n GET_SCHEME_LIST_SUCCESS,\n GET_SCHEME_LIST_FAILED,\n REGULAR,\n} from \"shared/store/types\";\nimport {\n getNewPurchaseFundList,\n getNavData,\n removeNavData,\n} from \"shared/store/actions\";\nimport { connect } from \"react-redux\";\nimport CustomizedSelect from \"../transactions/customizedSelect\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\nimport { SundaramMutualFund } from \"../transactions/newPurchaseForm\";\nexport const NAV_URL = `/nav`;\nclass Nav extends Component {\n constructor(props) {\n super(props);\n this.state = {\n fund: { value: \"\" },\n category: { value: \"\" },\n scheme: { value: \"\" },\n time: \"1D\",\n };\n }\n\n componentDidMount() {\n const params = {\n opt: ALL,\n plntype: REGULAR,\n opt: \"AT\",\n fund: \"176\",\n };\n const types = [\n GET_CATEGORY_LIST,\n GET_CATEGORY_LIST_SUCCESS,\n GET_CATEGORY_LIST_FAILED,\n ];\n this.props.getNewPurchaseFundList(params, types);\n this.props.removeNavData();\n this.setState({\n category: { value: \"\" },\n scheme: { value: \"\" },\n time: \"1D\",\n });\n this.props.removeNavData();\n }\n\n handleChange = (label) => async (event) => {\n this.setState({ [label]: { value: event.target.value } });\n if (!!event.target.value) {\n const params = {\n plntype: REGULAR,\n opt: \"S\",\n schemetype: event.target.value,\n fund: \"176\",\n };\n const types = [\n GET_SCHEME_LIST,\n GET_SCHEME_LIST_SUCCESS,\n GET_SCHEME_LIST_FAILED,\n ];\n await this.props.getNewPurchaseFundList(params, types);\n }\n this.setState({\n category: { value: event.target.value },\n scheme: { value: \"\" },\n });\n this.props.removeNavData();\n };\n\n changeScheme = (value) => {\n this.setState({\n scheme: { value },\n });\n if (!!value) {\n const plan = value.value.split(\"~\");\n const params = {\n Plan: plan[2],\n flag: this.state.time,\n Fund: \"176\",\n Scheme: plan[1],\n };\n this.props.getNavData(params);\n }\n if (!value) {\n this.props.removeNavData();\n }\n };\n\n changeTime = (value) => () => {\n this.setState({\n time: value,\n });\n const { scheme } = this.state;\n if (!!scheme.value) {\n const plan = scheme.value.value.split(\"~\");\n const params = {\n Plan: plan[2],\n flag: value,\n Fund: \"176\",\n Scheme: plan[1],\n };\n this.props.getNavData(params);\n }\n };\n\n render() {\n const { fundsList, schemeList, categoryList } = this.props;\n const { fund, category, scheme, time } = this.state;\n return (\n
\n
\n NAV Details\n
\n \n
\n {/*
\n
AMC
\n \n
*/}\n
\n \n {categoryList.map((item, index) => (\n \n {item.fm_subcategory}\n \n ))}\n \n
\n
\n
Scheme
\n ({\n label: item.Scheme_Desc,\n value: item.Scheme_Plan,\n }))}\n value={scheme.value}\n placeholder=\"Select Scheme\"\n handleChange={this.changeScheme}\n disabled={!category.value}\n />\n
\n
\n \n 1 W\n
\n \n 1 M\n
\n \n 3 M\n
\n \n 1 Yr\n \n\n \n 3 Yr\n \n \n 5 Yr\n \n \n \n
\n \n {/* */}\n
\n \n \n );\n }\n}\n\nexport default connect(\n ({ transactions }) => {\n const { fundsList, schemeList, categoryList } = transactions;\n return { fundsList, schemeList, categoryList };\n },\n { getNewPurchaseFundList, getNavData, removeNavData }\n)(Nav);\n","import React, { Component } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n getTransactionHistory,\n getTrackDetails,\n RemoveTransactionData,\n} from \"shared/store/actions\";\nimport {\n Table,\n TableHead,\n TableCell,\n TableBody,\n Paper,\n TableRow,\n} from \"@material-ui/core\";\nimport { BUILD_URL } from \"../../forms/appEssentials\";\nimport CustomLoader from \"../../forms/customLoader\";\n\nclass NctDetails extends Component {\n constructor(props) {\n super(props);\n this.state = {\n transactionList: [],\n showError: false,\n openPerformanceModal: false,\n TrackData: [],\n display: false,\n };\n }\n render() {\n const RequestTypes = {\n \"nominee_update\": \"NOMINEE UPDATE\",\n \"email_update\": \"EMAIL UPDATE\",\n \"mobile_update\": \"MOBILE UPDATE\",\n \"dataEntry_update\": \"DATAENTRY UPDATE\",\n \"folio_consolidation\": \"FOLIO CONSOLIDATION\",\n \"idcw_update\": \"IDCWOPTION UPDATE\",\n \"ifsc_update\": \"IFSC UPDATE\",\n \"fatca_update\": \"FATCA UPDATE\",\n \"update_Minor_To_Major\": \"MINOR TO MAJOR UPDATE\",\n \"form15GH_update\": \"FORM15GH UPDATE\",\n \"multibank_update\": \"MULTIBANK UPDATE\",\n \"update_bank_details\": \"BANK DETAILS UPDATE\"\n };\n const { state } = this.props.location;\n const { transactions } = state;\n const { display } = this.state;\n // const finalTransactions = Object.keys(transactions).map(key => transactions[key].length > 0 ? transactions[key][0] : null).filter(item => item !== null);\n const finalTransactions = Object.keys(transactions)\n .flatMap((key) => transactions[key])\n .filter((item) => item !== null);\n return (\n
\n {!!finalTransactions && !!finalTransactions.length ? (\n \n \n {!!display ? (\n \n ) : (\n
\n \n
NCT Transactions
\n \n \n \n \n \n {\" \"}\n Folio Number{\" \"}\n \n \n {\" \"}\n REQUEST TYPE{\" \"}\n \n \n REQUEST ID\n \n \n STATUS\n \n \n \n \n {finalTransactions.map((transaction, index) => (\n <>\n \n \n {transaction.folio}\n \n \n {RequestTypes[transaction.req_type]}\n \n \n {transaction?.item_req_id.split(\"-\")[0]}\n \n \n {transaction.amcStatus?.message}\n \n \n \n ))}\n \n
\n \n
\n )}\n
\n
\n ) : (\n
No Data Found
\n )}\n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactionHistory }) => {\n const { investorData, userId, token } = authReducer;\n const { fundsList, transactions } = transactionHistory;\n return { investorData, userId, fundsList, transactions, token };\n },\n { getTransactionHistory, getTrackDetails, RemoveTransactionData }\n)(NctDetails);\n\nexport class SingleAmcheader extends Component {\n render() {\n const { name, pan } = this.props.investorData;\n return (\n
\n
\n
\n \n
\n
\n
{name}
\n
PAN: {pan}
\n
\n
\n
\n );\n }\n}\n\n","import React, { Component } from \"react\";\nimport { Route, Switch } from \"react-router-dom\";\nimport Investors from \"../investors/InvestorMain\";\nimport NctDetails from \"./nctDetails\";\n\nexport default class NctRouter extends Component {\n render() {\n const { history, location } = this.props;\n return (\n \n \n \n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport CommonBreadCrumb from \"../breadCrumbs\";\nimport NctRouter from \"./nctRouter\";\nexport const NCTHISTORY_URL = `/nct-transaction`;\n\nconst breadcrumbNameMap = {\n \"/nct-transaction\": {\n title: \"Request History\",\n to: NCTHISTORY_URL,\n },\n \"/nct-transaction/details\": {\n title: \"Request List\",\n to: NCTHISTORY_URL + \"/details\",\n },\n};\n\nexport default class TransactionHistory extends Component {\n render() {\n const { location } = this.props;\n const pathnames = location.pathname.includes(\"/details\")\n ? location.pathname\n .split(\"/\")\n .filter((name) => name)\n .slice(0, 2)\n : location.pathname.split(\"/\").filter((name) => name);\n return (\n
\n \n \n
\n );\n }\n}\n","import React, { Component } from \"react\";\n\nexport default class Social extends Component {\n render() {\n return
Social
;\n }\n}\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport { Input } from \"../../forms/input\";\nimport CustomizedSelect from \"../../home/transactions/customizedSelect\";\nimport TextField from \"@material-ui/core/TextField\";\nimport { connect } from \"react-redux\";\nimport { SucesssPopUp } from \"../../home/customModal\";\nimport Signbutton from \"../../forms/button\";\nimport { getDistPostQuery, getComplaint } from \"shared/store/actions/support\";\nconst BUILD_URL = process.env.PUBLIC_URL;\nexport class Support extends Component {\n constructor(props) {\n super(props);\n this.state = {\n supportQueries: { value: \"\" },\n comments: { value: \"\" },\n open: false,\n response: \"\"\n };\n }\n\n componentDidMount() {\n this.props.getDistPostQuery();\n }\n\n handleChangeSupportQueries = event => {\n this.setState({\n supportQueries: { value: event.target.value }\n });\n };\n handleChangeCommentsChange = event => {\n this.setState({\n comments: { value: event.target.value }\n });\n };\n closeModal() {\n this.setState({\n open: false\n });\n this.props.history.push(\"/\");\n }\n\n submit = async () => {\n const {\n supportQueries: { value }\n } = this.state;\n if (!value) {\n this.setState({\n supportQueries: {\n value,\n isError: true,\n errorMessage: \"Please select support query\"\n }\n });\n return;\n }\n if (!this.state.comments.value) {\n this.setState({\n comments: {\n value: \"\",\n isError: true,\n errorMessage: \"Please enter a query message\"\n }\n });\n return;\n }\n \n const body = {\n APKVer: \"Mi43Ljc5\\n\",\n AcNo: \"MA==\",\n Agent: \"\",\n AppNo: \"MA==\",\n ChqNo: \"MA==\",\n Comments: btoa(this.state.comments.value),\n EmailID: \"AA==\",\n Fund: \"MA==\",\n IMEI: \"MzU4MTg4MDcyNjA3MDE0\\n\",\n InvName: \"AA==\",\n OS: \"QW5kcm9pZA==\\n\",\n QrySub: \"AA==\",\n ReqBy: \"QQ==\\n\",\n Selqry: btoa(this.state.supportQueries.value),\n TrnDate: \"AA==\",\n convenience: \"\",\n transaction: \"\",\n experience: \"\"\n };\n const response = await this.props.getComplaint(body);\n if (response) {\n const {\n Dtinformation: [info]\n } = response;\n\n this.setState({\n supportQueries: { value: \"\" },\n open: true,\n response: response.Dtinformation[0].Error_Message,\n comments: { value: \"\" }\n });\n }\n };\n\n render() {\n const { supportQueries } = this.state;\n return (\n
\n \n
\n \n
Raise a Query
\n
\n\n
\n \n
\n
\n
Query Option
\n \n {this.props.supportQueries.map((item, index) => (\n \n {item.MenuItem}\n \n ))}\n \n
\n
\n
Query Message (optional)
\n \n {!!this.state.comments.errorMessage ? (\n \n {this.state.comments.errorMessage}\n
\n ) : (\n \"\"\n )}\n
\n
\n \n
\n \n this.closeModal()}\n />\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, dashboard, investor, support }) => {\n const { token, userId } = authReducer;\n const { supportQueries } = support;\n\n return {\n token,\n userId,\n supportQueries\n };\n },\n { getDistPostQuery, getComplaint }\n)(Support);\n","import React, { Component } from \"react\";\nimport { DebtbuttonNowidth } from \"../../forms/button\";\nimport { Input } from \"../../forms/input\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { connect } from \"react-redux\";\nimport { PasswordDialog } from \"../customModal\";\nimport {\n getProfileData,\n resetPassword,\n KARVY_STOCK_BROKING_LIMITED,\n SAMCO_STOCK\n} from \"shared/store/actions/profile\";\nimport { BUILD_URL } from \"../home\";\n\nclass Settings extends Component {\n constructor(props) {\n super(props);\n this.state = {\n openPasswordModal: false\n };\n }\n PasswordModal() {\n this.setState({\n openPasswordModal: true\n });\n }\n closeModal() {\n this.setState({\n openPasswordModal: false\n });\n }\n\n componentDidMount() {\n this.props.getProfileData({\n Agent: this.props.token,\n UserId: this.props.userId\n });\n }\n render() {\n const { profileData, reviewList, token } = this.props;\n const {\n Distributor_Name = \"\",\n City = \"\",\n MobileNo = \"\",\n PAN = \"\",\n Email = \"\"\n } = profileData;\n\n return (\n
\n \n
Profile Settings
\n this.PasswordModal()}\n />\n
\n this.closeModal()}\n history={this.props.history}\n />\n \n
\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n
\n
\n
Review
\n
\n \n Year\n
\n \n Status\n
\n \n {reviewList.slice(0, 9).map((item, index) => (\n \n \n {index !== reviewList.length - 1 && index < 8 && }\n \n ))}\n \n
\n \n );\n }\n}\n\nexport class SubmitList extends Component {\n render() {\n const { fromYear, toYear, confirmation } = this.props;\n return (\n
\n
\n \n
\n
\n {fromYear} - {toYear}\n
\n\n
\n \n\n \n {confirmation}\n
\n
\n \n );\n }\n}\n\nexport class BlueLine extends Component {\n render() {\n return (\n \n );\n }\n}\n\nconst MapStatetoProps = ({ authReducer, profileReducer }) => {\n const { token, userId } = authReducer;\n const { profileData, reviewList } = profileReducer;\n return { token, userId, profileData, reviewList };\n};\n\nexport default connect(MapStatetoProps, { getProfileData, resetPassword })(\n Settings\n);\n","import React, { Component } from \"react\";\nimport Icon from \"@material-ui/core/Icon\";\nimport Rating from \"material-ui-rating\";\n\nexport default class StarRating extends Component {\n constructor(props) {\n super(props);\n const { value } = this.props;\n this.state = {\n value\n };\n }\n\n changeValue = value => {\n this.setState({ value });\n };\n\n render() {\n const { value } = this.state;\n const style = { color: this.props.color };\n return (\n {\n // this.setState({ value });\n // this.props.onSubmit(value);\n // }}\n iconFilled={star}\n iconHovered={star_border}\n iconNormal={star_border}\n readOnly={this.props.readOnly}\n />\n );\n }\n}\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport StarRating from \"../../../../src/starRating\";\nimport TextField from \"@material-ui/core/TextField\";\nimport { loadCSS } from \"fg-loadcss/src/loadCSS\";\nimport { connect } from \"react-redux\";\nimport { DebtbuttonActive } from \"../../forms/button\";\nimport { getComplaint } from \"shared/store/actions/support\";\n\nconst numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];\nclass Feedback extends Component {\n componentDidMount() {\n loadCSS(\n \"https://use.fontawesome.com/releases/v5.1.0/css/all.css\",\n document.querySelector(\"#insertion-point-jss\")\n );\n }\n constructor(props) {\n super(props);\n this.state = {\n active: { value: \"\", errorMessage: \"\" },\n selected: false,\n comments: \"\"\n };\n }\n\n changeValue = value => () => {\n this.setState({\n active: { value: value },\n selected: true\n });\n };\n handleChangeComments = event => {\n this.setState({\n comments: event.target.value\n });\n };\n submit = async () => {\n if (this.state.active.value === \"\") {\n this.setState({\n active: {\n value: \"\",\n errorMessage:\n \"please give us rating. we improve to reach your standards\"\n }\n });\n } else {\n\n const body = {\n APKVer: \"Mi43Ljc5\\n\",\n AcNo: \"MA==\",\n Agent: \"\",\n AppNo: \"MA==\",\n ChqNo: \"MA==\",\n Comments: btoa(this.state.comments.value),\n EmailID: \"AA==\",\n Fund: \"MA==\",\n IMEI: \"MzU4MTg4MDcyNjA3MDE0\\n\",\n InvName: \"AA==\",\n OS: \"QW5kcm9pZA==\\n\",\n QrySub: \"AA==\",\n ReqBy: \"QQ==\\n\",\n Selqry: \"MA==\",\n TrnDate: \"AA==\",\n convenience: btoa(this.state.active.value),\n transaction: \"\",\n experience: \"\"\n };\n const response = await this.props.getComplaint(body);\n\n this.setState({\n supportQueries: { value: \"\" },\n comments: { value: \"\" }\n });\n }\n };\n\n render() {\n return (\n
\n
Feedback
\n \n \n Your Feedback is important to us. This way we can keep improving our\n Website\n
\n\n \n \n
\n \n Convenience\n
\n this.setState({ agentRating: val })}\n value={0}\n color=\"gold\"\n />\n \n\n
\n \n Transaction\n
\n this.setState({ agentRating: val })}\n value={0}\n color=\"gold\"\n />\n \n \n
\n \n Overall Experience\n
\n\n
\n \n {numbers.map((item, index) => (\n \n {item}\n
\n ))}\n \n \n
Not Satisfied
\n
Really Satisfied
\n \n \n {!!this.state.active.errorMessage\n ? `(*${this.state.active.errorMessage})`\n : \"\"}\n \n \n \n\n \n \n Please Leave your Feedback below\n \n
\n \n
\n \n
\n \n
\n \n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { token, userId } = authReducer;\n return {\n token,\n userId\n };\n },\n { getComplaint }\n)(Feedback);\n","import React, { Component } from \"react\";\nimport { withStyles } from \"@material-ui/core/styles\";\nimport { simpleCardsStyles } from \"../appCss\";\nimport PropTypes from \"prop-types\";\nimport Card from \"@material-ui/core/Card\";\nimport CardContent from \"@material-ui/core/CardContent\";\nimport { BUILD_URL } from \"../home\";\nimport CustomLoading from \"../CustomLoader\";\nimport {\n NEW_INVESTORS,\n INACTIVE_INVESTORS,\n ACTIVE_INVESTORS,\n EXPIRING_NEXT_MONTH,\n CLOSED_THIS_MONTH,\n SIP_INVESTMENTS,\n} from \"shared/store/types\";\n\nclass DisplaySimpleCards extends Component {\n render() {\n const { classes } = this.props;\n const x = this.props.count + \"\";\n const nameArray = [\n \"Authorization Expired\",\n \"Authorization Approved\",\n \"Authorization Pending\",\n \"New Investors\",\n \"Active Investors\",\n \"Inactive Investors\",\n NEW_INVESTORS,\n INACTIVE_INVESTORS,\n ACTIVE_INVESTORS,\n EXPIRING_NEXT_MONTH,\n CLOSED_THIS_MONTH,\n SIP_INVESTMENTS,\n \"FMP Dashboard\",\n \"SIP Dashboard\",\n ];\n\n return (\n \n \n \n
\n
\n \n
\n
\n \n {this.props.name}\n
\n\n {this.props.count >= 0 ? (\n
\n {!!x && x.length === 1 && x !== \"0\" ? \"0\" + x : x}\n
\n ) : (\n \n )}\n
\n \n\n {nameArray.includes(this.props.name) ? (\n
\n \n
\n ) : (\n \"\"\n )}\n \n \n
\n );\n }\n}\n\nDisplaySimpleCards.propTypes = {\n classes: PropTypes.object.isRequired,\n};\nexport default withStyles(simpleCardsStyles)(DisplaySimpleCards);\n","import React, { Component } from \"react\";\nimport DisplayCards from \"./displaycards\";\nimport DisplaySimpleCards from \"./displaySimpleCards\";\nimport TabHeader from \"../../forms/tabHeader\";\nimport PieDiagram from \"./piechart\";\nimport { ALL, SIPS, FMP } from \"shared/store/types\";\nimport { Paper } from \"@material-ui/core\";\nimport \"react-loader-spinner/dist/loader/css/react-spinner-loader.css\";\nimport moment from \"moment\";\nimport { FormatCurrency } from \"../currencyFormatter\";\nimport {\n getDashboardData,\n getAumData,\n getInvestors,\n getFrequentMailBackRequest,\n getInvestorDetails,\n getDashboardDataAum,\n getSipSummary,\n PosterOpen,\n} from \"shared/store/actions\";\nimport { getMailbackList } from \"shared/store/actions/mailback\";\nimport {\n getProfileData,\n KARVY_STOCK_BROKING_LIMITED,\n SAMCO_STOCK,\n} from \"shared/store/actions/profile\";\nimport { connect } from \"react-redux\";\nimport {\n AUTHORIZATION_PENDING,\n AUTHORIZATION_APPROVED,\n AUTHORIZATION_EXPIRED,\n INACTIVE_INVESTORS,\n ACTIVE_INVESTORS,\n NEW_INVESTORS,\n EXPIRING_NEXT_MONTH,\n CLOSED_THIS_MONTH,\n SIP_INVESTMENTS,\n} from \"shared/store/types\";\nimport { BUILD_URL } from \"../home\";\nimport { PosterDialog } from \"../customModal\";\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n date: new Date().toLocaleDateString(),\n reports: [],\n report: { value: \"\" },\n Tab: \"AUM_SUMMARY\",\n PosterOpen:true,\n };\n }\n\n goToRoute = (path) => () => {\n if (path === SIPS) {\n this.props.history.push({\n pathname: \"/dashboard/sip-transactions\",\n state: {\n active: path,\n },\n });\n } else if (path === FMP) {\n this.props.history.push({\n pathname: \"/dashboard/fmp-transactions\",\n state: {\n active: path,\n },\n });\n } else {\n this.props.history.push({\n pathname: \"/dashboard/transaction-summary\",\n state: {\n active: path,\n },\n });\n }\n };\n\n goToSIPRoute = (path) => () => {\n this.props.history.push({\n pathname:\"/dashboard/SipSummaryTypes\",\n state: {\n active: path,\n },\n });\n };\n\n async componentDidMount() {\n this.props.getProfileData({\n Agent: this.props.token,\n UserId: this.props.userId,\n });\n\n const body = {\n AgentCode: this.props.token,\n UserId: this.props.userId,\n DateVal: moment(new Date()).format(\"MM-DD-YYYY\"),\n };\n this.props.getDashboardDataAum(body);\n\n this.props.getDashboardData({\n AgentCode: this.props.token,\n });\n\n this.props.getInvestors({\n ARN: this.props.token,\n AllFavFlag: ALL,\n });\n\n const sipParams = {\n Uid: this.props.userId,\n AgentCode: this.props.token,\n DateVal: moment(new Date()).format(\"MM-DD-YYYY\"),\n };\n const api =\n this.props.token === \"ARN-0018\"\n ? \"\"\n : this.props.getSipSummary(sipParams);\n\n const response = await this.props.getMailbackList();\n if (response) {\n this.setState({\n reports: response.DtData,\n });\n }\n }\n handleChangeSubReports = (value) => () => {\n this.props.history.push({\n pathname: `/mailBackRequest`,\n state: {\n value: value,\n },\n });\n };\n\n currencyConverter = (value) => {\n if (Math.abs(Number(value)) >= 1.0e5) {\n return `${parseInt(Math.abs(Number(value)) / 1.0e5)} Lacs`;\n } else if (Math.abs(Number(value)) >= 1.0e7) {\n return `${parseInt(Math.abs(Number(value)) / 1.0e7)} Cr`;\n } else if (Math.abs(Number(value)) >= 1.0e3) {\n return `${parseInt(Math.abs(Number(value)) / 1.0e3)} K`;\n } else {\n return Math.abs(Number(value));\n }\n };\n\n handleChangeTab = (label) => () => {\n this.setState({\n Tab: label,\n });\n };\n\n gotoNfo = () => {\n this.props.history.push(`/dashboard/nfo-funds`);\n }; closePoster = async () => {\n this.setState({\n PosterOpen: false,\n });\n await this.props.PosterOpen(1);\n };\n\n\n //transaction-summary // kebab case // route names , css class names\n //transactionSummary // camel case // variables, function names.\n //transaction_summary // snake case //\n //TransactionSummary // PascalCase //Class names\n\n render() {\n const {\n transactionSummary,\n my_aum,\n numberofschemes,\n profileData,\n dashboardAUMData,\n sipSummaryData,\n } = this.props;\n const AmcAumList =\n !!dashboardAUMData && dashboardAUMData.Table4\n ? dashboardAUMData.Table2\n : [];\n\n const SipAumList =\n !!sipSummaryData && !!sipSummaryData.DtData ? sipSummaryData.DtData : [];\n const SipInvestmentsCount = !!sipSummaryData && !!sipSummaryData.Table7 ? sipSummaryData.Table7 : [];\n\n const AUMDetails =\n !!dashboardAUMData && dashboardAUMData.Table3\n ? dashboardAUMData.Table3\n : [];\n const AUMPieData =\n !!dashboardAUMData && dashboardAUMData.DtData\n ? dashboardAUMData.DtData.map((ele) => ({\n name: ele.category,\n value: ele.aum_percent,\n ruppess: ele.aum,\n }))\n : [];\n return (\n
\n {this.props.posterStatus === 0 && (\n \n )}\n\n \n
\n {profileData.Distributor_Name} Portfolio\n
\n {!!this.props.tran_enable_flag &&\n this.props.tran_enable_flag === \"N\" && (\n
\n this.props.history.push(`/my-earnings`)}\n />\n
\n )}\n
\n \n
\n
\n\n
\n My AUM\n \n (as on{\" \"}\n \n {moment(new Date(), \"DD/MM/YYYY\").format(\"MMM DD, YYYY\")})\n \n \n
\n\n
\n
\n
\n \n \n \n
\n
\n
\n
\n {!!AUMPieData.length && (\n \n
\n Asset Class Wise Investment Break Up\n
\n \n
\n )}\n
\n
\n\n
\n
\n Transaction Summary\n \n (as on{\" \"}\n \n {moment(new Date(), \"DD/MM/YYYY\").format(\"MMM DD, YYYY\")})\n \n \n
\n
\n (Transactions done via InvWise Application)\n
\n
\n
\n
\n
\n \n \n \n {/* */}\n \n \n
\n
\n
\n\n \n \n \n {this.props.token !== \"ARN-0018\" && (\n \n )}\n
\n {this.state.Tab === \"FREQUENT_REPORTS\" && (\n
\n \n {!!this.state.reports &&\n this.state.reports.map((item) => (\n \n ))}\n \n
\n )}\n\n {this.state.Tab === \"SIP_SUMMARY\" && (\n
\n
\n
\n \n\n \n \n
\n
\n {SipAumList.map((item, index) => (\n \n ))}\n
\n )}\n\n {this.state.Tab === \"AUM_SUMMARY\" && (\n
\n {!!AmcAumList && AmcAumList.length > 0 ? (\n AmcAumList.map((item, index) => (\n \n ))\n ) : (\n \n No Data Found\n
\n )}\n \n )}\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, dashboard, investor, profileReducer }) => {\n const { token, userId, tran_enable_flag,posterStatus } = authReducer;\n const { count } = investor;\n const { profileData } = profileReducer;\n const {\n transactionSummary = {},\n my_aum,\n numberofschemes,\n aumData,\n fundData,\n totalAum,\n sipSummaryData,\n dashboardAUMData,\n } = dashboard;\n return {\n token,\n dashboardAUMData,\n posterStatus,\n userId,\n transactionSummary,\n sipSummaryData,\n my_aum,\n count,\n profileData,\n totalAum,\n numberofschemes,\n aumData,\n fundData,\n tran_enable_flag,\n };\n },\n {\n getDashboardData,\n getDashboardDataAum,\n PosterOpen,\n getSipSummary,\n getAumData,\n getInvestors,\n getInvestorDetails,\n getFrequentMailBackRequest,\n getProfileData,\n PosterOpen,\n getMailbackList,\n }\n)(Dashboard);\n\nexport class SubReports extends Component {\n render() {\n return (\n \n {this.props.subtitle}\n \n );\n }\n}\n\nexport class MyAmcAum extends Component {\n goToRoute = (path, value) => () => {\n this.props.history.push({\n pathname: \"/dashboard/investorType\",\n state: {\n active: path,\n value: value,\n Type: !!this.props.sipSummary ? \"SIP_SUMMARY\" : \"AUM_SUMMARY\",\n },\n });\n };\n\n render() {\n const { value, dashboardAUMData, sipSummaryData, sipSummary } = this.props;\n\n const totalArray =\n !sipSummary &&\n !!dashboardAUMData &&\n dashboardAUMData.Table2 &&\n dashboardAUMData.Table2.reduce((prev, curr) => {\n const findItem = dashboardAUMData.Table4.find(\n (ele) => !!ele.Fund && String(ele.Fund).trim() === curr.fund_code\n );\n\n const data = !!findItem ? { ...curr, ...findItem } : { ...curr };\n prev = [...prev, data];\n return prev;\n }, []);\n\n // const totalArray =\n // !sipSummary &&\n // !!dashboardAUMData &&\n // dashboardAUMData.Table2 &&\n // dashboardAUMData.Table4 &&\n // dashboardAUMData.Table4[0] &&\n // !dashboardAUMData.Table4[0] === \"1\"\n // ? dashboardAUMData.Table2.reduce((prev, curr) => {\n // const findItem =\n // !!dashboardAUMData &&\n // dashboardAUMData.Table4.find(\n // (ele) => ele.Fund.trim() === curr.fund.trim()\n // );\n // const data = !!findItem ? { ...curr, ...findItem } : { ...curr };\n // prev = [...prev, data];\n // return prev;\n // }, [])\n // : [];\n\n let item = !!sipSummary\n ? !!sipSummaryData &&\n sipSummaryData.Table3.length > 0 &&\n sipSummaryData.Table3.find(\n (ele) => ele.Fund.trim() === value.fund.trim()\n )\n : totalArray.find(\n (ele) => !!ele.Fund && String(ele.Fund).trim() === value.fund_code\n );\n\n return (\n <>\n {!!value && value.fund_code && value.fund_code === \"176\" && (\n
\n
\n
Investors
\n
\n \n\n \n \n
\n
\n Brokerage Details{\" \"}\n \n \n
\n \n \n \n \n \n \n\n \n \n \n \n )}\n \n );\n }\n}\n\nexport const AmcAum = connect(({ dashboard }) => {\n const { dashboardAUMData, sipSummaryData } = dashboard;\n\n return { dashboardAUMData, sipSummaryData };\n})(MyAmcAum);\n\nexport class SubAUMClass extends Component {\n currencyConverter = (value) => {\n if (Math.abs(Number(value)) >= 1.0e5) {\n return `${parseFloat(Math.abs(Number(value)) / 1.0e5)} Lacs`;\n } else if (Math.abs(Number(value)) >= 1.0e7) {\n return `${parseFloat(Math.abs(Number(value)) / 1.0e7)} Cr`;\n } else if (Math.abs(Number(value)) >= 1.0e3) {\n return `${parseFloat(Math.abs(Number(value)) / 1.0e3)} K`;\n } else {\n return Math.abs(Number(value));\n }\n };\n\n render() {\n const { title, date } = this.props;\n return (\n \n \n {date}\n \n
\n {!!title ? : \"\"}\n
\n \n );\n }\n}\n\n// NFO CODE\n\n// \n// \n// \n// NFO\n// \n// \n\n","import React, { Component } from \"react\";\nimport TabHeader from \"../../forms/tabHeader\";\nimport {\n AUTHORIZATION_PENDING,\n AUTHORIZATION_APPROVED,\n FMPS_MATURITY,\n SIPS,\n PHYSICAL_TRANSACTIONS,\n AUTHORIZATION_EXPIRED\n} from \"shared/store/types\";\n\nexport default class TransactionSummary extends Component {\n render() {\n const { active } = this.props;\n return (\n \n \n \n \n {/* \n \n */}\n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport Table from \"@material-ui/core/Table\";\nimport TableBody from \"@material-ui/core/TableBody\";\nimport TableCell from \"@material-ui/core/TableCell\";\nimport TableHead from \"@material-ui/core/TableHead\";\nimport TableRow from \"@material-ui/core/TableRow\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { connect } from \"react-redux\";\nimport CustomLoading from \"../CustomLoader\";\nimport { FormatCurrency } from \"../currencyFormatter\";\nimport { FileCopyOutlined, Replay } from \"@material-ui/icons\";\nimport {\n AUTHORIZATION_PENDING,\n AUTHORIZATION_APPROVED,\n AUTHORIZATION_EXPIRED,\n} from \"shared/store/types\";\nimport { getInvestorDetails } from \"shared/store/actions\";\n\nclass TableContainer extends Component {\n async copyTransactionLink(transaction) {\n if (!!transaction.Link) {\n const link = transaction.Link || \"\";\n await navigator.clipboard.writeText(link);\n alert(\"Link copied to clipboard!\");\n } else {\n alert(\"Failed to copy the link\");\n }\n }\n handleReInitiate(item) {\n // this.setState({ transaction: item })\n this.props.history.push({\n pathname: `/dashboard/re-initiate-transaction`,\n state: { transaction: item },\n });\n }\n modifyTranscation = async (item) => {\n this.setState({\n isLoading: true,\n });\n const params = {\n Uid: this.props.userId,\n ReqBy: \"a\",\n PAN: item.pan,\n };\n await this.props.getInvestorDetails(params);\n if (!!item && item.trtype === \"New Purchase\") {\n this.props.history.push({\n pathname: \"/new-investor-transaction/investor-details\",\n state: { pan: item.pan },\n });\n }\n if (!!item && item.trtype === \"SIP\" && (item.sip_trtype===\"NEWP\"|| item.sip_trtype===\"NEW\")) {\n this.props.history.push({\n pathname: \"/new-investor-transaction/investor-details\",\n state: { pan: item.pan },\n });\n }\n if (!!item && item.trtype === \"Purchase\") {\n this.props.history.push({\n pathname: \"/investors/additional-purchase/digital/transact\",\n state: { transaction: item, pan: item.pan },\n });\n }\n if (!!item && item.trtype === \"SIP\" && (item.sip_trtype===\"EXISTINGP\"|| item.sip_trtype===\"EXISTING\")) {\n this.props.history.push({\n pathname: \"/investors/sip/digital/transact\",\n state: { transaction: item, Pan: item.pan },\n });\n }\n if (!!item && item.trtype === \"Switch\") {\n this.props.history.push({\n pathname: \"/investors/switch/digital/transact\",\n state: { transaction: item, pan: item.pan },\n });\n }\n if (!!item && item.trtype === \"Redemption\") {\n this.props.history.push({\n pathname: \"/investors/redemption/digital/transact\",\n state: { transaction: item, pan: item.pan },\n });\n }\n if (!!item && item.trtype === \"STP\") {\n this.props.history.push({\n pathname: \"/investors/stp/digital/transact\",\n state: { transaction: item, pan: item.pan },\n });\n }\n if (!!item && item.trtype === \"SWP\") {\n this.props.history.push({\n pathname: \"/investors/swp/digital/transact\",\n state: { transaction: item, pan: item.pan },\n });\n }\n this.setState({\n isLoading: false,\n });\n };\n render() {\n const { summaryData } = this.props;\n const active = this.props.active;\n const showCopyButton = [AUTHORIZATION_PENDING].includes(active);\n const showReinitiate = [\n AUTHORIZATION_EXPIRED,\n AUTHORIZATION_APPROVED,\n ].includes(active);\n const tableColumns = [\n \"Investor\",\n \"Contact\",\n \"Scheme\",\n \"Type\",\n \"Date\",\n \"Amount/Units\",\n ];\n return (\n \n {!!summaryData.length ? (\n \n \n \n \n \n {tableColumns.map((ele) => (\n \n {ele === \"Amount/Units\" ? (\n <>\n Amount(₹)/\n
\n Units\n \n ) : (\n ele\n )}\n
\n ))}\n {/* \n {!!showCopyButton ? \"Copy Link\" : \"Re-initiate\"}\n */}\n \n
\n
\n \n {summaryData.map((item, index) => (\n \n {[\"InvName\", \"mobile\", \"scheme\", \"trtype\", \"Entdate\"].map(\n (field, i) => (\n \n {field === \"Entdate\" ? item[field] : item[field]}\n \n )\n )}\n \n {!!item.sipamount || !!item.amount ? (\n \n ) : (\n item.units\n )}\n \n \n
\n {!!showCopyButton && (\n this.copyTransactionLink(item)}\n style={{\n cursor: \"pointer\",\n width: \"70px\",\n margin: 0,\n }}\n >\n \n \n Copy\n

\n
\n )}\n {/* {showReinitiate && (\n this.modifyTranscation(item)}\n >\n \n \n Re-initiate\n

\n \n )} */}\n \n \n
\n ))}\n
\n
\n
\n ) : (this.props.count > 0 || this.props.isLoading )? (\n \n ) : (\n \n No Data Found\n \n )}\n
\n );\n }\n}\n\nexport default connect(\n ({ dashboard, loading, authReducer }) => {\n const { userId } = authReducer;\n const { summaryData } = dashboard;\n const { count } = loading;\n return { summaryData, count, userId };\n },\n {\n getInvestorDetails\n }\n)(TableContainer);\n","import React, { Component } from \"react\";\nimport TransactionSummary from \"./transactionSummary\";\nimport TableContainer from \"./table\";\nimport { AUTHORIZATION_PENDING } from \"shared/store/types\";\nimport { connect } from \"react-redux\";\nimport { getTransactionData } from \"shared/store/actions\";\n\nclass TabContainer extends Component {\n constructor(props) {\n super(props);\n const { active } = this.props.location.state;\n this.state = {\n active: active || AUTHORIZATION_PENDING,\n isLoading: false,\n };\n }\n\n async componentDidMount() {\n this.setState({ isLoading: true });\n await this.props.getTransactionData({\n transflag: this.state.active,\n Arn: this.props.token\n });\n this.setState({ isLoading: false });\n }\n\n onChangeActive = active => () => {\n this.setState({\n active\n });\n this.props.getTransactionData({ transflag: active, Arn: this.props.token });\n };\n\n render() {\n return (\n
\n \n
Note: Only the last 6 months transactions will be displayed here.
\n \n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { token } = authReducer;\n return { token };\n },\n { getTransactionData }\n)(TabContainer);\n","import React, { Component } from \"react\";\nimport TabHeader from \"../../forms/tabHeader\";\nimport {\n INACTIVE_INVESTORS,\n NEW_INVESTORS,\n ACTIVE_INVESTORS\n} from \"shared/store/types\";\n\nexport default class ListOfInvestors extends Component {\n render() {\n const { active } = this.props;\n return (\n \n \n \n \n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport ListOfInvestors from \"./ListofInvestors\";\n// import TableContainer from \"./table\";\nimport { BUILD_URL } from \"../home\";\nimport {\n INACTIVE_INVESTORS,\n NEW_INVESTORS,\n ACTIVE_INVESTORS,\n} from \"shared/store/types\";\nimport { connect } from \"react-redux\";\nclass ListOfInvestorsTabs extends Component {\n constructor(props) {\n super(props);\n const { active, value } = this.props.location.state;\n this.state = {\n active: active || INACTIVE_INVESTORS,\n value,\n tableData: [],\n showButton: false\n };\n }\n componentDidMount() {\n const handlescrollButtionVisibility = () => {\n window.scrollY > 300 ? this.setState({ showButton: true }) : this.setState({ showButton: false });\n }\n window.addEventListener('scroll', handlescrollButtionVisibility);\n return () => window.removeEventListener('scroll', handlescrollButtionVisibility);\n }\n componentWillMount() {\n this.getData();\n }\n\n getData = () => {\n const { active, value } = this.state;\n const { dashboardAUMData, sipSummaryData } = this.props;\n const data = !!dashboardAUMData\n ? active === NEW_INVESTORS\n ? dashboardAUMData.Table7\n : active === ACTIVE_INVESTORS\n ? dashboardAUMData.Table5\n : dashboardAUMData.Table6\n : [];\n const { Type } = this.props.location.state;\n const SipData = !!sipSummaryData\n ? active === NEW_INVESTORS\n ? sipSummaryData.Table6\n : active === ACTIVE_INVESTORS\n ? sipSummaryData.Table4\n : sipSummaryData.Table5\n : [];\n const tableData =\n Type === \"SIP_SUMMARY\"\n ? SipData.filter((item) => {\n return item.fund.trim() === value.Fund.trim();\n })\n : data.filter((item) => {\n return item.fund.trim() === value.fund_code.trim();\n });\n this.setState({\n tableData,\n });\n };\n\n componentDidUpdate(prevProps, prevState) {\n const { active } = prevState;\n if (active !== this.state.active) {\n this.getData();\n }\n }\n handleScrollToTop = () => {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n };\n\n onChangeActive = (active) => () => {\n this.setState({\n active,\n });\n };\n\n render() {\n const { tableData } = this.state;\n console.log(\"tableData\", tableData);\n const tablearray = [\n \"Investor Name\",\n \"PAN\",\n \"Mobile Number\",\n \"Email ID\",\n \"AUM VALUE(₹)\",\n ];\n const totalAUM = tableData.reduce((accumulator, currentObject) => {\n const { AUM } = currentObject;\n if (!isNaN(AUM)) {\n return accumulator + parseFloat(AUM);\n }\n return accumulator;\n }, 0);\n return (\n
\n \n {this.state.showButton && (\n
\n \n
\n )}\n
\n
{this.state.active===NEW_INVESTORS?\"Note: Investors who are registered afresh within last one month will be displayed here.\":null}
\n {!!tableData.length && (\n \n {tablearray.map((ele, index) => (\n \n {ele}\n
\n ))}\n
\n )}\n\n {tableData.length > 0 ? tableData.map((ele, index) => (\n \n
\n {ele.name}\n
\n
\n {ele.pangir}\n
\n\n
\n {ele.mobile}\n
\n\n
\n {ele.email}\n
\n
\n {ele.AUM.toLocaleString(undefined, {\n minimumFractionDigits: 2,\n maximumFractionDigits: 2,})}\n
\n \n )): \n No Data Found\n }\n {tableData.length > 0 && (\n
TOTAL AUM(₹) : {totalAUM.toLocaleString(undefined, {\n minimumFractionDigits: 2,\n maximumFractionDigits: 2,})}
\n )}\n \n
\n {tableData.length > 0 ? (\n tableData.map((ele, index) => (\n \n ))\n ) : (\n \n {\" \"}\n No Data Found\n
\n )}\n \n \n );\n }\n}\n\nexport default connect(({ dashboard }) => {\n const { dashboardAUMData, sipSummaryData } = dashboard;\n return { dashboardAUMData, sipSummaryData };\n}, null)(ListOfInvestorsTabs);\n\n\nexport class InvestorTableCard extends Component {\n render() {\n const { invName, pan, mobile, email } = this.props;\n return (\n \n \n {invName}\n \n\n
\n
\n
\n PAN\n
\n \n {!!pan ? pan : \"NA\"}\n
\n
\n
\n
\n Mobile\n
\n \n {!!mobile ? mobile : \"NA\"}\n
\n \n \n
\n
\n Email\n
\n \n {!!email ? email : \"NA\"}\n
\n \n \n );\n }\n}\n\n","import React, { Component } from \"react\";\nimport TabHeader from \"../../forms/tabHeader\";\nimport {\n EXPIRING_NEXT_MONTH,\n CLOSED_THIS_MONTH,\n SIP_INVESTMENTS,\n} from \"shared/store/types\";\n\nexport default class SipSummaryMainTabs extends Component {\n render() {\n const { active } = this.props;\n return (\n \n \n \n \n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport {\n EXPIRING_NEXT_MONTH,\n CLOSED_THIS_MONTH,\n SIP_INVESTMENTS,\n CWS,\n CWOS,\n} from \"shared/store/types\";\nimport Table from \"@material-ui/core/Table\";\nimport TableBody from \"@material-ui/core/TableBody\";\nimport TableCell from \"@material-ui/core/TableCell\";\nimport TableHead from \"@material-ui/core/TableHead\";\nimport TableRow from \"@material-ui/core/TableRow\";\nimport { REQ_BY } from \"shared/store/types/index\";\nimport { connect } from \"react-redux\";\nimport SipSummaryMainTabs from \"./sipMainTabs\";\nimport { getSipSummary } from \"shared/store/actions/dashboard\";\nimport moment from \"moment\";\nimport Signbutton, { Debtbutton, DebtbuttonActive } from \"../../forms/button\";\nimport { NEW_TRANSACTION_URL } from \"../searchComponent\";\nimport { getInvestorDetails, checkKyc } from \"shared/store/actions/investors\";\nimport { INVESTOR_URL } from \"../investors\";\nimport tableData from \"../tableData\";\nimport { Input } from \"../../forms/input\";\nimport CustomizedSelect from \"../transactions/customizedSelect\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport { newTransactionActive , transactionHistoryActive } from \"../../forms/appEssentials\";\n\nclass SipSummaryTabContainer extends Component {\n constructor(props) {\n super(props);\n const { active } = this.props.location.state;\n this.state = {\n active: active || EXPIRING_NEXT_MONTH,\n tableData: [],\n Investmentsbutton: CWS,\n filter: \"\",\n searchText: \"\",\n filtered: false,\n filteredTableData: [],\n };\n }\n\n async componentDidMount() {\n // const sipParams = {\n // Uid: this.props.userId,\n // AgentCode: this.props.token,\n // DateVal: moment(new Date()).format(\"MM-DD-YYYY\"),\n // };\n // await this.props.getSipSummary(sipParams);\n this.setTableData(this.state.active, this.state.Investmentsbutton);\n }\n\n getKycDetails = async (pan) => {\n const params = {\n i_pan: pan,\n fund: \"176\",\n userid: this.props.userId,\n };\n const kycResponse = await this.props.checkKyc(params);\n return kycResponse;\n };\n getInvestorDetails = async (pan) => {\n const params = { PAN: pan, Uid: this.props.userId, ReqBy: REQ_BY };\n const response = await this.props.getInvestorDetails(params);\n return response;\n };\n handleSearch = () => {\n const { filter } = this.state;\n const filteredTableData = this.state.tableData.filter((ele) => {\n switch (filter) {\n case \"name\":\n return ele?.invname\n ?.toLowerCase()\n .includes(this.state.searchText?.toLowerCase());\n case \"pan\":\n return ele?.pan\n ?.toLowerCase()\n .includes(this.state.searchText?.toLowerCase());\n case \"email\":\n return ele?.email\n ?.toLowerCase()\n .includes(this.state.searchText?.toLowerCase());\n default:\n return true;\n }\n });\n this.setState({ filteredTableData: filteredTableData , filtered: true});\n };\n\n setTableData = (active, button) => {\n if (\n active === EXPIRING_NEXT_MONTH &&\n !!this.props.sipSummaryData &&\n !!this.props.sipSummaryData.Table9 &&\n this.props.sipSummaryData.Table9.length > 0\n ) {\n this.setState({\n tableData: this.props.sipSummaryData.Table9,\n });\n } else if (\n active === CLOSED_THIS_MONTH &&\n !!this.props.sipSummaryData &&\n !!this.props.sipSummaryData.Table10 &&\n this.props.sipSummaryData.Table10.length > 0\n ) {\n this.setState({\n tableData: this.props.sipSummaryData.Table10,\n });\n } else if (\n active === SIP_INVESTMENTS &&\n !!this.props.sipSummaryData &&\n button === CWOS &&\n !!this.props.sipSummaryData.Table8 &&\n this.props.sipSummaryData.Table8.length > 0\n ) {\n this.setState({\n tableData: this.props.sipSummaryData.Table8,\n });\n } else if (\n active === SIP_INVESTMENTS &&\n !!this.props.sipSummaryData &&\n button === CWS &&\n !!this.props.sipSummaryData.Table7 &&\n this.props.sipSummaryData.Table7.length > 0\n ) {\n this.setState({\n tableData: this.props.sipSummaryData.Table7,\n });\n } else {\n this.setState({\n tableData: [],\n });\n }\n };\n\n onChangeActive = (active) => () => {\n this.setState({\n active,\n });\n this.setTableData(active, CWS);\n // this.props.getTransactionData({ transflag: active, Arn: this.props.token });\n };\n changeDateOn = (value) => () => {\n this.setState({\n Investmentsbutton: value,\n });\n this.setTableData(SIP_INVESTMENTS, value);\n };\n\n goToTransaction = (PAN, name, mailBackName) => async () => {\n const response = await this.getInvestorDetails(PAN);\n\n if (response) {\n this.props.history.push({\n pathname: NEW_TRANSACTION_URL + \"/transction-types\",\n });\n } else {\n const kycResponse = await this.getKycDetails(PAN);\n if (kycResponse) {\n const {\n DtData: [info],\n } = kycResponse;\n if (info.KYCBlock === \"N\") {\n this.props.history.push({\n pathname: NEW_TRANSACTION_URL + \"/transction-types\",\n });\n }\n }\n }\n };\n filterOptions = [\n { value: \"\", label: \"Filter by\" },\n { value: \"name\", label: \"Name\" },\n { value: \"pan\", label: \"PAN\" },\n { value: \"email\", label: \"Email\" },\n ];\n render() {\n const { tableData, Investmentsbutton,filteredTableData, filtered} = this.state;\n const dataToUse = filtered ? filteredTableData : tableData;\n const countMap = dataToUse.reduce((accumulator, currentInvestor) => {\n const { pan } = currentInvestor;\n const existingInvestor = accumulator.find((item) => item.pan === pan);\n if (existingInvestor) {\n existingInvestor.count += 1;\n } else {\n accumulator.push({ ...currentInvestor, pan, count: 1 });\n }\n return accumulator;\n }, []);\n return (\n
\n \n \n {this.state.active === SIP_INVESTMENTS && (\n \n \n \n
\n )}\n {this.state.tableData.length > 0 && \n
\n {this.setState({ filter: e.target.value });\n console.log(this.state.filter,e.target.value)}}\n value={this.state.filter.value}\n style={{ borderRadius: 5, width: \"80px\", height: \"34px\",marginTop: \"30px\" }}\n >\n {this.filterOptions.map((item, index) => (\n \n ))}\n \n this.setState({ searchText: e.target.value })}\n />\n
\n \n this.setState({ filtered: false , searchText: \"\" })}\n style={{\n borderRadius: 5,\n backgroundColor: \"rgba(0, 118, 203, 0.2)\",\n padding: \"20px 0px 0px 10px\",\n }}\n width={50}\n buttontitle=\"Reset\"\n active={true}\n />\n
\n
}\n \n \n \n \n \n Investor\n \n \n PAN\n \n \n Mobile\n \n \n Email\n \n {Investmentsbutton !== CWOS && (\n \n No.of SIP's({dataToUse.length})\n \n )}\n \n Options\n \n \n \n {!!countMap && countMap.length > 0 && (\n \n {countMap.map((ele, index) => (\n \n \n \n
{ele.invname}
\n
\n \n
{ele.pan}
\n
\n \n
\n {ele.mobile}\n
\n
\n \n
{ele.email}
\n
\n {Investmentsbutton !== CWOS && (\n \n
\n {ele.count}\n
\n
\n )}\n \n \n
\n \n \n this.props.history.push({\n pathname: `${INVESTOR_URL}/details/${ele.pan}`,\n state: { PAN: ele.pan, from: \"view history\", active: this.state.active },\n })\n }\n style={{cursor:\"pointer\"}}\n /> \n
\n \n
\n
\n
\n ))}\n
\n )}\n
\n {!countMap.length && (\n \n No data Found\n \n )}\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, dashboard, loading }) => {\n const { token, userId } = authReducer;\n const { count } = loading;\n const { sipSummaryData } = dashboard;\n return { token, sipSummaryData, userId };\n },\n { getSipSummary, getInvestorDetails, checkKyc }\n)(SipSummaryTabContainer);\n","import React, { Component } from \"react\";\nimport { connect } from \"react-redux\";\nimport { getNfoSchemes } from \"shared/store/actions/dashboard\";\nimport Signbutton from \"../../forms/button\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport copy from \"copy-to-clipboard\";\nimport {\n EmailShareButton,\n FacebookIcon,\n FacebookShareButton,\n WhatsappIcon,\n TwitterShareButton,\n EmailIcon,\n TwitterIcon,\n WhatsappShareButton,\n} from \"react-share\";\nimport { BUILD_URL } from \"../home\";\n\nclass NfoFunds extends Component {\n async componentDidMount() {\n const response = await this.props.getNfoSchemes();\n }\n gotoTransact = (fund) => () => {\n this.props.history.push({\n pathname: `/dashboard/nfo-funds/nfo-transact`,\n fund: fund,\n });\n };\n render() {\n const { location } = this.props;\n\n const checkParam = !!location && !!location.fund;\n\n return (\n
\n {!!this.props.nfoSchemes &&\n !!this.props.nfoSchemes.DtData &&\n this.props.nfoSchemes.DtData.length > 0 ? (\n this.props.nfoSchemes.DtData.map((ele, index) => (\n
\n \n
\n ))\n ) : (\n \n Currently there are no active NFO's available.\n
\n )}\n \n );\n }\n}\n\nexport default connect(\n ({ dashboard }) => {\n const { nfoSchemes } = dashboard;\n return {\n nfoSchemes,\n };\n },\n { getNfoSchemes }\n)(NfoFunds);\n\nexport class NfoFundCard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n openShare: false,\n };\n }\n\n copyCodeToClipboard = () => {\n this.setState({\n openShare: false,\n });\n copy(this.props.link);\n alert(\"Link copied successfully\");\n };\n OpenShareOptions = () => {\n this.setState({\n openShare: !this.state.openShare,\n });\n };\n\n closeShare = () => {\n this.setState({\n openShare: false,\n });\n };\n\n render() {\n const { fund, OpeningDate, closingDate, scheme, link, LocationScheme } =\n this.props;\n console.log(link, LocationScheme, \"sldfjkldsf\");\n return (\n \n \n \n {fund}\n \n\n \n \n
\n \n Scheme\n
\n \n {scheme}\n \n \n
\n
\n \n Opening Date\n
\n \n {OpeningDate}\n
\n \n
\n \n Closing Date\n
\n \n {closingDate}\n \n \n \n\n {!!this.props.LocationScheme && (\n \n \n {this.props.LocationScheme} - NFO Prefilled Link\n \n \n \n \n\n
\n \n \n \n {/* */}\n\n \n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n \n \n
\n\n
\n \n \n \n
\n
\n \n \n )}\n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { Input } from \"../../forms/input\";\nimport Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControl from \"@material-ui/core/FormControl\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\nimport { connect } from \"react-redux\";\nimport { LocalActivityOutlined } from \"@material-ui/icons\";\nimport Signbutton from \"../../forms/button\";\nimport {\n validateSubBroker,\n NfoSchemesSubmission,\n getNfoSchemes,\n} from \"shared/store/actions\";\nimport { NO, YES } from \"shared/store/types\";\nimport CustomizedDialogs from \"../customModal\";\n\nclass NfoTransact extends Component {\n constructor(props) {\n super(props);\n this.state = {\n subArnCode: { value: \"\" },\n subBrokerCode: { value: \"\" },\n radioValue: { value: \"no\" },\n euinNo: { value: \"\" },\n open: false,\n FundSchemes: [],\n scheme: { value: \"\" },\n nfoLink: \"\",\n refno: \"\",\n };\n }\n async componentDidMount() {\n const { location, nfoSchemes } = this.props;\n if (!!location && !!location.fund) {\n const params = {\n Fund: location.fund,\n SubAgentCd: \"\",\n AgentCd: this.props.token,\n };\n const Euinresponse = await this.props.validateSubBroker(params);\n if (!!nfoSchemes && !!nfoSchemes.Table2 && nfoSchemes.Table2.length > 0) {\n const filteredSchemes = nfoSchemes.Table2.filter(\n (ele) => ele.fund === location.fund\n );\n this.setState({\n FundSchemes: filteredSchemes,\n });\n } else {\n const params = { fund: location.fund };\n const response = await this.props.getNfoSchemes(params);\n\n if (!!response && !!response.Table2 && response.Table2.length > 0) {\n const filteredSchemes = response.Table2.filter(\n (ele) => ele.fund === location.fund\n );\n this.setState({\n FundSchemes: filteredSchemes,\n });\n }\n }\n } else {\n this.props.history.push(`/dashboard/nfo-funds`);\n }\n }\n changeValue = (label) => (event) => {\n if (label === \"radioValue\" && event.target.value === \"no\") {\n if (!this.state.euinNo.value) {\n this.setState({\n radioValue: { value: event.target.value },\n });\n } else {\n this.setState({\n [label]: { value: event.target.value },\n euinNo: { value: \"\" },\n });\n }\n return;\n } else if (label === \"radioValue\" && event.target.value === \"yes\") {\n this.setState({\n radioValue: { value: event.target.value },\n });\n return;\n } else if (\n (label === \"subArnCode\" || label === \"subBrokerCode\") &&\n event.target.value.length <= 20\n ) {\n this.setState({\n [label]: { value: event.target.value },\n });\n return;\n }\n };\n\n changeEuin = (value) => {\n this.setState({\n euinNo: { value },\n });\n };\n\n submit = async () => {\n const {\n subArnCode,\n radioValue,\n euinNo,\n subBrokerCode,\n nfoLink,\n refno,\n open,\n FundSchemes,\n ...others\n } = this.state;\n const keys = Object.keys(others);\n if (this.state.euinNo.value === \"\" && radioValue.value === \"no\") {\n this.setState({\n euinNo: {\n value: \"\",\n isError: true,\n errorMessage: \"Euin Declartion is mandatory*\",\n },\n });\n }\n\n const findError = keys.every((key) => !!others[key].value);\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({\n [key]: {\n ...others[key],\n isError: true,\n errorMessage: `${key} is mandatory*`,\n },\n });\n });\n const firstErroredKey = keys.find((key) => !others[key].value);\n switch (firstErroredKey) {\n case \"scheme\": {\n this.schemeField.focus();\n break;\n }\n }\n } else if (this.state.euinNo.value === \"\" && radioValue.value === \"no\") {\n this.setState({\n euinNo: {\n value: \"\",\n isError: true,\n errorMessage: \"Euin Declartion is mandatory*\",\n },\n });\n } else {\n const params = {\n euincode: this.state.euinNo.value.value,\n euinflag: this.state.radioValue.value === \"no\" ? NO : YES,\n fund: this.props.location.fund,\n scheme: this.state.scheme.value.value,\n userid: this.props.userId,\n invdistflag: \"S\",\n arncode: this.props.token,\n subarn: this.state.subArnCode.value,\n subbroker: this.state.subBrokerCode.value,\n };\n const response = await this.props.NfoSchemesSubmission(params);\n if (\n !!response &&\n !!response.DtData &&\n !!response.DtData[0] &&\n !!response.DtData[0].refno\n ) {\n this.setState({\n open: true,\n refno: response.DtData[0].refno,\n nfoLink: response.DtData[0].nfo_link,\n });\n }\n }\n };\n\n closeModal = () => {\n const { location } = this.props;\n\n this.setState({\n open: false,\n });\n this.props.history.push({\n pathname: `/dashboard/nfo-funds`,\n link: this.state.nfoLink,\n fund: location.fund,\n scheme: this.state.scheme.value.label,\n });\n };\n\n handleSchemeChange = (value) => {\n if (!value) {\n this.setState({\n scheme: { value: \"\" },\n });\n return;\n } else if (\n !!value.value &&\n !!this.state.scheme.value.value &&\n value.value.scheme_desc === this.state.scheme.value.value.scheme_desc\n ) {\n return;\n } else {\n const scheme = value.value;\n\n this.setState({\n scheme: { value },\n });\n }\n };\n\n render() {\n const { radioValue, scheme, subBrokerCode, subArnCode, euinNo } =\n this.state;\n const { euinList } = this.props;\n return (\n
\n \n \n
\n
\n
\n
\n \n
\n
\n
\n
\n \n (evt.key === \"e\" ||\n evt.key === \".\" ||\n evt.key === \"-\") &&\n evt.preventDefault()\n }\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n type=\"number\"\n onBlur={this.validateBrokerCode}\n onChange={this.changeValue(\"subArnCode\")}\n inputref={(ele) => (this.subArnField = ele)}\n />\n
\n
\n
\n\n
\n \n
Scheme
\n 0\n ? this.state.FundSchemes.map((item) => ({\n label: item.scheme_desc,\n value: item.scheme,\n }))\n : []\n }\n label=\"AMC\"\n handleChange={this.handleSchemeChange}\n value={scheme.value}\n placeholder=\"Select Scheme\"\n inputRef={(ele) => (this.schemeField = ele)}\n isError={scheme.isError}\n errorMessage={scheme.errorMessage}\n />\n
\n
\n
\n \n (evt.key === \"e\" ||\n evt.key === \".\" ||\n evt.key === \"-\") &&\n evt.preventDefault()\n }\n type=\"number\"\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n value={subBrokerCode.value}\n onChange={this.changeValue(\"subBrokerCode\")}\n inputref={(ele) => (this.subBrokerField = ele)}\n />\n
\n
\n
\n\n
\n
\n
\n
EUIN Declaration
\n \n \n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
YES
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
NO
\n
\n \n
\n
\n {radioValue.value === \"no\" ? (\n
\n ({\n label: item.abm_agent,\n value: item.abm_agent,\n }))}\n label=\"Euin\"\n handleChange={this.changeEuin}\n value={euinNo.value}\n disabled={!euinList.length}\n placeholder=\"Select EUIN\"\n inputRef={(ele) => (this.euinField = ele)}\n isError={euinNo.isError}\n errorMessage={euinNo.errorMessage}\n />\n
\n ) : (\n
\n I/We hereby confirm that the EUIN box has been\n intentionally left the blank by me/us as this is an\n 'execution-only' transaction without any interaction or\n advice by any personnel of the above distributor or\n notwithstanding the advice of in-appropriateness,if any\n provided by any personnel of the distributor and the\n distributor has not charged any advisory fees on this\n transaction\n
\n )}{\" \"}\n
\n\n
\n
\n
\n \n
\n \n
\n \n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, dashboard, transactions }) => {\n const { token, userId } = authReducer;\n const { nfoSchemes } = dashboard;\n const { euinList } = transactions;\n return {\n token,\n euinList,\n userId,\n nfoSchemes,\n };\n },\n { validateSubBroker, NfoSchemesSubmission, getNfoSchemes }\n)(NfoTransact);\n\n{\n /* \n\n Logged as{\" \"}\n \n {this.props.userId}\n \n\n\n {this.props.token}\n\n */\n}\n","import { CircularProgress } from \"@material-ui/core\";\nimport { Close } from \"@material-ui/icons\";\nimport React, { Component, Fragment } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n reInitiateTransaction,\n showPurchaseConfirmationReinitiate,\n} from \"shared/store/actions\";\nimport { PURCHASE } from \"shared/store/types\";\nimport { DetailsGroup } from \"./newPurchaseConfirm\";\nimport { CustomizedDialogsforReintitate } from \"../customModal\";\nimport CustomLoader from \"../../forms/customLoader\";\n\nclass ReinitiateConfirm extends Component {\n constructor(props) {\n super(props);\n const locState = !!this.props.location\n ? this.props.location.state\n : this.props.transaction;\n this.standalone = this.props.standalone || true;\n this.transaction =\n this.props.transaction || (locState && locState.transaction) || {};\n // this.transaction = this.props.transaction || {}\n\n this.state = {\n confirmationData: this.transaction, //sample_additional_purchase,//null,\n loading: false,\n saving: false,\n success: false,\n open: true,\n modal_open: true,\n ReferenceNO: \"\",\n isLoading: false,\n };\n }\n\n async fetchConfirmationData(transaction) {\n const fund =\n transaction.fund_code || transaction.fund || transaction.td_fund;\n const ihno = transaction.Refno || transaction.ihno || transaction.td_ihno;\n\n const confirmationParams = {\n // ModuleName: \"Webile\",\n // Trtype: \"STP\",\n ModuleName: \"Webile\",\n\n // Trtype: transaction.trtype,\n\n // Refno: ihno,\n // ihno,\n // fund,\n\n Ihno: ihno,\n Fund: fund.trim(),\n\n // Trtype: 'STP',\n // Refno: transaction.ihno,\n // i_ihno: transaction.ihno,\n };\n try {\n // fetchTempConfirmData({fund,ihno})\n // return\n this.setState({ loading: true });\n const confirmationResponse =\n await this.props.showPurchaseConfirmationReinitiate(confirmationParams);\n const dtData = confirmationResponse && confirmationResponse.Dtinformation;\n const conData = dtData && dtData[0];\n\n if (conData) {\n this.setState({ confirmationData: conData });\n }\n this.setState({ loading: false });\n if (!conData) {\n this.setState({\n open: false,\n });\n }\n } catch (error) {\n console.error(error);\n } finally {\n this.setState({ loading: false });\n }\n }\n\n componentDidMount() {\n this.fetchConfirmationData(this.transaction); // Will be used once the API is ready\n }\n\n async confirmReinitiation() {\n try {\n // console.log('re-initiating!')\n\n const transaction = this.transaction;\n // console.log(transaction)\n\n const ihno = transaction.ihno || transaction.td_ihno;\n const reInitiateProps = {\n // Trtype: ' ',\n\n ihno,\n fund: transaction.fund_code.trim() || transaction.fund || transaction.td_fund,\n Invdistflag: \"W\",\n };\n\n if (!ihno) {\n return alert(\"Cannot proceed because IHNO is missing!\");\n }\n\n this.setState({ saving: true });\n\n const txn = await this.props.reInitiateTransaction(reInitiateProps);\n // alert('Re-initiated transaction!')\n this.setState({\n ReferenceNO: txn.Table1[0].appno,\n });\n\n this.setState({ success: true, modal_open: true });\n\n // const onClose = this.props.onClose\n // if(onClose){onClose()}\n\n // console.log('Re-initiated!!!')\n } catch (error) {\n console.error(error);\n } finally {\n this.setState({ saving: false });\n }\n }\n closeModal = () => {\n this.setState({\n modal_open: !this.state.modal_open,\n });\n };\n confirmation = () => {\n this.props.history.push(`/dashboard`);\n };\n render() {\n const transaction = this.transaction || {};\n\n const confirmationDataNotFetched =\n Object.keys(this.props.confirmationData || {}).length == 0;\n\n let confirmationData = this.props.confirmationData;\n if (confirmationDataNotFetched) {\n confirmationData = transaction;\n }\n confirmationData = { ...confirmationData, ...transaction };\n\n // trSchema = transactionTypes.additional_purchase\n\n // console.log('transaction type = ')\n // console.log(transaction)\n\n const transactionSchema = getTransactionSchema(transaction);\n const { fields: schemaFields, name: transactionTypeDesc } =\n transactionSchema;\n\n // console.log(transactionSchema)\n\n const transactionFields = confirmationDataNotFetched\n ? fallbackFields\n : schemaFields;\n\n // Add extra fields for now\n // transactionFields['Fund'] = {label:'AMC',altKeys:['FundDesc','fund']}\n\n const rawFields = Object.keys(transactionFields).map((k) => {\n const field = transactionFields[k];\n return {\n key: k,\n name: field.label,\n label: field.label,\n ...field,\n };\n });\n\n const getFieldValue = (field) => {\n let value = confirmationData[field.key];\n\n const altKeys =\n [...(field.altKeys || []), ...(altKeyMap[field.key] || [])] || [];\n // console.log(`key = ${field.key}`)\n // console.log(confirmationData)\n // console.log(altKeys)\n for (let key of altKeys) {\n if (value) {\n break;\n }\n value = confirmationData[key];\n }\n\n return value || \"--\";\n };\n\n const fields = [];\n for (let f of rawFields) {\n // Showing only values that are not null.\n const value = getFieldValue(f);\n if (value && value != \"--\") {\n fields.push(f);\n if (f.isDoubleCol) {\n fields.push(null);\n }\n }\n }\n\n const rows = [];\n\n const numRows = Math.ceil(fields.length / 2);\n for (let i = 0; i < numRows; i++) {\n const field1 = fields[i * 2];\n const field2 = fields[i * 2 + 1];\n\n rows.push({ field1, field2 });\n // const isDoubleCol = field1 && field1.isDoubleCol\n // if(isDoubleCol && field2){\n // }\n }\n // console.log(Object.keys(transactionFields))\n // console.log(rawFields,fields,rows)\n\n // Add fields that aren't there\n if (!confirmationData.arnCode) {\n confirmationData.arnCode = (this.props.arnCode || \"\").split(\"-\")[1] || \"\";\n }\n // console.log(this.state.confirmationData)\n return (\n \n \n
\n

\n Confirm re-initiation of transaction{\" \"}\n {transactionTypeDesc ? `(${transactionTypeDesc})` : \"\"}\n

\n\n {!this.standalone && (\n this.props.onClose && this.props.onClose()}\n className={`mouse-pointer`}\n >\n \n
\n )}\n \n\n {this.state.loading ? (\n \n ) : (\n //

\n // Transaction re-initiated successfully with the Reference No:{!!this.state.ReferenceNO?this.state.ReferenceNO:\"\"}\n //

\n\n \n {this.state.open &&\n rows.map((r) => {\n const { field1, field2 } = r;\n return (\n \n );\n })}\n {this.state.open && (\n this.confirmReinitiation()}\n >\n \n Confirm\n {this.state.saving && (\n \n )}\n \n \n )}\n\n {/* */}\n \n )}\n {this.state.success && (\n \n )}\n \n \n );\n }\n}\n\nconst isDoubleCol = true;\n\nconst fallbackFields = {\n fund: { label: \"AMC\", altKeys: [\"FundDesc\"] },\n SchemeDesc: { label: \"Scheme\", altKeys: [\"scheme\"] },\n ARNCode: { label: \"ARN Code\", altKeys: [\"arnCode\", \"Arn_no\"] },\n\n Mobile: { label: \"Phone No\", altKeys: [\"mobile\", \"Mobile_no\"] },\n i_UntAmtValue: {\n label: \"Amount (INR)\",\n altKeys: [\"td_amt\", \"amount\", \"sipamount\", \"Amount\"],\n },\n};\n\n// Map alternative keys to the props\nconst amountKeys = [\"Amount\"];\nconst altKeyMap = {\n i_UntAmtValue: amountKeys,\n installmentAmount: amountKeys,\n ARNCode: [\"Arn_no\"],\n Mobile: [\"Mobile_no\", \"mobile\"],\n mobile: [\"Mobile_no\", \"Mobile\"],\n\n i_Acno: [\"Folio_no\"],\n frequency: [\"Frequency\"],\n sip_freq: [\"Frequency\"],\n pan: [\"Pan_no\"],\n};\n\nconst firstTwoFields = {\n Name: { label: \"Investor Name\" },\n\n Email: { label: \"Email Id\" },\n Mobile: { label: \"Phone No\" },\n};\n\nconst secondTwoFields = {\n Fdesc: { label: \"AMC\" },\n i_Acno: { label: \"Folio\" },\n};\n\nconst firstFourFields = {\n ...firstTwoFields,\n ...secondTwoFields,\n};\nconst firstFiveFields = {\n ...firstFourFields,\n Schdesc: { label: \"Scheme\", isDoubleCol },\n};\n\nconst newPurchaseFields = {\n ...firstFiveFields,\n\n ARNCode: { label: \"ARN Code\" },\n subarn: { label: \"Sub ARN Code\" },\n\n EUINCode: { label: \"EUIN No\" },\n i_UntAmtValue: { label: \"Investment Amount (INR)\" },\n};\n\nconst sipFields = {\n ...firstFiveFields,\n\n redemptionType: { label: \"No of installments\" },\n sip_freq: { label: \"SIP Frequency\" },\n sip_day: { label: \"SIP Day\" },\n sip_strtdate: { label: \"Start Date\" },\n sip_enddt: { label: \"End Date\" },\n EUINCode: { label: \"EUIN No\" },\n i_Fname: { label: \"Investor Name\" },\n sip_mode: { label: \"Mode of registration\" },\n i_UntAmtValue: { label: \"Lumpsum Investment Amount(INR)\" },\n sip_amt: { label: \"Installment Payment Amount(INR)\" },\n ARNCode: { label: \"ARN Code\" },\n subarn: { label: \"Sub ARN Code\" },\n};\n\nconst redemptionFields = {\n ...firstFiveFields,\n\n redemptionType: { label: \"Redemption Type\" },\n redemptionMode: { label: \"Redemption Mode\" },\n redemptionMode: { label: \"Redemption Value(INR/UNITS)\" },\n pan: { label: \"PAN\" },\n};\n\nconst swpFields = {\n ...firstFiveFields,\n\n swpOption: { label: \"SWP Option\" },\n noWithdrawals: { label: \"No of withdrawals\" },\n frequency: { label: \"Frequency\" },\n swpDay: { label: \"SWP Day\" },\n startDate: { label: \"Start Date\" },\n endDate: { label: \"End Date\" },\n swpAmount: { label: \"SWP Amount(INR)\" },\n pan: { label: \"PAN\" },\n};\n\nconst switchFields = {\n ...firstFourFields,\n\n switchOutScheme: { label: \"Switch Out Scheme\", isDoubleCol },\n switchType: { label: \"Switch Type\" },\n switchInScheme: { label: \"Switch In Scheme\" },\n switchMode: { label: \"Switch Mode\" },\n ARNCode: { label: \"ARN Code\" },\n subARNCode: { label: \"Sub ARN Code\" },\n EUINCode: { label: \"EUIN No\" },\n paymentUnits: { label: \"Payment Units\" },\n};\n\nconst stpFields = {\n ...firstFourFields,\n\n switchOutScheme: { label: \"Switch Out Scheme\", isDoubleCol },\n stpOption: { label: \"STP Option\" },\n noTransfers: { label: \"No of transfers\" },\n frequency: { label: \"Frequency\" },\n stpDay: { label: \"STP Day\" },\n startDate: { label: \"Start Date\" },\n endDate: { label: \"End Date\" },\n switchInScheme: { label: \"Switch In Scheme\" },\n installmentAmount: { label: \"Installment amount(INR)\" },\n pan: { label: \"PAN\" },\n ARNCode: { label: \"ARN Code\" },\n subARNCode: { label: \"Sub ARN Code\" },\n euin: { label: \"EUIN No\" },\n};\n\nconst trTypes = [\"newPurchase\", \"sip\", \"redemption\", \"stp\", \"swp\", \"switch\"];\n\nconst keyList = {};\n\nconst localScope = {\n newPurchaseFields,\n sipFields,\n redemptionFields,\n stpFields,\n switchFields,\n swpFields,\n};\nfor (let ttype of trTypes) {\n const all_keys = localScope[ttype + \"Fields\"];\n const fieldObj = all_keys;\n\n keyList[ttype] = Object.keys(fieldObj);\n}\n\n// console.log(keyList)\nexport const transactionTypes = {\n \"New purchase\": {\n fields: newPurchaseFields,\n keys: [\"NEW\", \"NEW_PURCHASE\", \"NEWP\", \"P\", \"N\", \"New Purchase\", \"LTOF\"],\n },\n\n \"Additional Purchase\": {\n fields: newPurchaseFields,\n keys: [\"ADD\", \"A\", \"ADDITIONAL_PURCHASE\", \"Additional Purchase\"],\n },\n SIP: {\n fields: sipFields,\n keys: [\"SIP\", \"ISIP\", \"sini\", \"SIN\"],\n },\n\n Redemption: {\n fields: redemptionFields,\n keys: [\"REDEMPTION\", \"RED\", \"FUL\", \"Redemption\", \"Fulfill\", \"Fulfillment\"],\n },\n SWP: {\n fields: swpFields,\n keys: [\"SWP\"],\n },\n\n Switch: {\n fields: switchFields,\n keys: [\"SWITCH\", \"LTOF\", \"LTOP\", \"SWOF\", \"Switch\"],\n },\n STP: {\n fields: stpFields,\n keys: [\"STP\"],\n },\n};\n\nconst transactionTypeList = Object.keys(transactionTypes).map((k) => {\n return { ...transactionTypes[k], name: k };\n});\n\nfunction getTransactionSchema(transaction) {\n let trtype = transaction.td_trtype || transaction.trtype;\n // console.log(transaction)\n // console.log('trtype === ')\n // console.log(trtype)\n const schema = transactionTypeList.find(\n (t) => t.keys && t.keys.includes(trtype)\n );\n\n // console.log(schema)\n\n return (\n schema || {\n fields: fallbackFields,\n name: \"\",\n }\n );\n}\n\nexport default connect(\n ({ transactions, authReducer }) => ({\n arnCode: authReducer.token,\n confirmationData: transactions.confirmationData,\n }),\n {\n showPurchaseConfirmationReinitiate,\n reInitiateTransaction,\n }\n)(ReinitiateConfirm);\n","const active_columns = [\n { key: \"Investor\", name: \"Investor\" },\n { key: \"Scheme\", name: \"Scheme\" },\n { key: \"FolioNumber\", name: \"Folio Number\" },\n {\n key: \"No of Installments\",\n name: \"No of Installments\",\n subtitle: \"(Total)\",\n },\n { key: \"Start Date of SIP\", name: \"Start Date of SIP\" },\n { key: \"End Date of SIP\", name: \"End Date of SIP\" },\n { key: \"Amount\", name: \"Amount\" ,subtitle: \"(₹)\" },\n {\n key: \"Mode_of_Registration\",\n name: `Mode of Registration`,\n subtitle: \"(OTM/ISIP/Others)\",\n },\n {\n key: \"Biller_ID /OTM_(UMR)_Number\",\n name: `Biller ID/ Number`,\n subtitle: \"(URN)/OTM (UMR)\",\n },\n // { key: 'SIP_Registration_Status', name: `SIP Registration`, subtitle: '(Authorized/Pending)' },\n ];\n const pending_columns = [\n { key: \"Investor\", name: \"Investor\" },\n { key: \"Scheme\", name: \"Scheme\" },\n { key: \"FolioNumber\", name: \"Folio Number\" },\n { key: \"Amount\", name: \"Amount\" },\n {\n key: \"Mode_of_Registration\",\n name: `Mode of Registration`,\n subtitle: \"(OTM/ISIP/Others)\",\n },\n { key: \"Rejection Reason\", name: \"Rejection Reason\" },\n {\n key: \"Biller_ID /OTM_(UMR)_Number\",\n name: `Biller ID/ Number`,\n subtitle: \"(URN)/OTM (UMR)\",\n },\n // { key: 'SIP_Registration_Status', name: `SIP Registration`, subtitle: '(Authorized/Pending)' },\n { key: \"Status\", name: \"Status\" },\n ];\n const fmp_columns = [\n { key: \"Investor\", name: \"Investor\" },\n { key: \"Scheme\", name: \"Scheme\" },\n { key: \"FolioNumber\", name: \"Folio Number\" },\n { key: \"Maturity Date\", name: \"Maturity Date\" },\n { key: \"NAV\", name: \"NAV\" },\n { key: \"Units\", name: \"Units\" },\n { key: \"Amount\", name: \"Amount(₹)\" },\n ];\n \n export {\n active_columns,\n pending_columns,\n fmp_columns,\n };","import {\n CircularProgress,\n Table,\n TableBody,\n TableCell,\n TableRow,\n } from \"@material-ui/core\";\n import React, { Component, Fragment } from \"react\";\n import { connect } from \"react-redux\";\n import { getSipvalues } from \"shared/store/actions\";\n import DisplaySimpleCards from \"./displaySimpleCards\";\n import Card from \"@material-ui/core/Card\";\n import CardContent from \"@material-ui/core/CardContent\";\n import CustomLoading from \"../CustomLoader\";\n import CustomLoader from \"../../forms/customLoader\";\n import {\n FlashAutoOutlined,\n SignalCellularNullOutlined,\n SignalCellularNullRounded,\n } from \"@material-ui/icons\";\n import Paper from \"@material-ui/core/Paper\";\n import { active_columns, pending_columns } from \"../../forms/content\";\n import { FormatCurrency } from \"../currencyFormatter\";\n export class SipTransactions extends Component {\n constructor(props) {\n super(props);\n this.state = {\n isLoading: false,\n open: { active: true, pending: false },\n sipvalues: {\n sipvalue: \"\",\n currentsips: \"\",\n monthlyI: \"\",\n USM: \"\",\n USMA: \"\",\n },\n };\n }\n async componentDidMount() {\n const params = {\n arn: this.props.token,\n Tran_flag: \"D\",\n fund:\"176\"\n\n };\n const response = await this.props.getSipvalues(params);\n const {\n sip_value,\n current_sips,\n monthly_installments,\n upcoming_sips,\n upcoming_sip_maturity_amount,\n } = response.DtData[0];\n this.setState({\n sipvalues: {\n sipvalue: sip_value,\n currentsips: current_sips,\n monthlyI: monthly_installments,\n USM: upcoming_sips,\n USMA: upcoming_sip_maturity_amount,\n },\n });\n if (this.state.open.active) {\n const params = {\n arn: this.props.token,\n Tran_flag: \"A\",\n fund:\"176\"\n\n };\n await this.props.getSipvalues(params);\n }\n if (this.state.open.pending) {\n const params = {\n arn: this.props.token,\n Tran_flag: \"P\",\n fund:\"176\"\n\n };\n await this.props.getSipvalues(params);\n }\n }\n Active = async () => {\n this.setState({\n open: { active: true, pending: false },\n });\n const params = {\n arn: this.props.token,\n Tran_flag: \"A\",\n fund:\"176\"\n\n };\n await this.props.getSipvalues(params);\n };\n PendingAndRejected = async () => {\n this.setState({\n open: { active: false, pending: true },\n });\n const params = {\n arn: this.props.token,\n Tran_flag: \"P\",\n fund:\"176\"\n };\n await this.props.getSipvalues(params);\n };\n \n render() {\n return (\n <>\n
\n
\n \n \n \n \n \n
\n
\n \n \n Active\n
\n \n Pending/Rejected\n
\n \n \n {this.props.count > 0 && this.state.open.active ? (\n \n ) : this.props.sipTransactions.length >= 1 &&\n this.state.open.active ? (\n
\n \n \n \n {/* */}\n \n {active_columns.map((c) => (\n \n \n {c.name}\n

\n \n {c.subtitle}\n

\n \n ))}\n
\n {/*
*/}\n \n {this.props.sipTransactions.map((item, index) => (\n \n \n {item.invname}\n \n \n \n {item.Scheme}\n \n \n {item.folio_number}\n \n \n {item.Number_of_Installments}\n \n \n {item.Start_Date_of_SIP}\n \n \n {item.End_Date_of_SIP}\n \n \n {!!item.amount ? (\n \n ) : (\n 0\n )}\n \n \n {item.Mode_of_Registration}\n \n \n {item.URN_UMRNumber}\n \n {/* \n {item.Status_of_Registration}\n */}\n \n ))}\n \n
\n
\n
\n {this.props.sipTransactions.map((item, index) => (\n \n ))}\n
\n
\n ) : (\n this.props.count == 0 &&\n this.props.sipTransactions.length == 0 &&\n this.state.open.active && (\n
No Data Found
\n )\n )}\n {this.props.count > 0 && this.state.open.pending ? (\n \n ) : this.props.sipTransactions.length >= 1 &&\n this.state.open.pending ? (\n
\n \n \n \n \n {pending_columns.map((c) => (\n \n \n {c.name}\n

\n

{c.subtitle}

\n \n ))}\n
\n \n {this.props.sipTransactions.map((item, index) => (\n \n \n {item.invname}\n \n \n \n {item.Scheme}\n \n \n {item.folio_number}\n \n \n {!!item.amount ? (\n \n ) : (\n 0\n )}\n \n \n {item.Mode_of_Registration}\n \n \n {item.Rejection_Reason}\n \n \n {item.URN_UMRNumber}\n \n {/* \n {item.Status_of_Registration}\n */}\n \n {item.status}\n \n \n ))}\n \n
\n
\n
\n {this.props.sipTransactions.map((item, index) => (\n \n ))}\n
\n
\n ) : (\n this.props.count == 0 &&\n this.props.sipTransactions.length == 0 &&\n this.state.open.pending && (\n
No Data Found
\n )\n )}\n \n \n );\n }\n }\n \n export default connect(\n ({ authReducer, transactions, loading }) => {\n const { token } = authReducer;\n const { sipTransactions } = transactions;\n const { count } = loading;\n return {\n token,\n sipTransactions,\n count,\n };\n },\n {\n getSipvalues,\n }\n )(SipTransactions);\n var CurrencyFormat = require(\"react-currency-format\");\n export class DisplaySIPCards extends Component {\n render() {\n return (\n \n \n
\n {/* */}\n
\n
\n
\n {this.props.name}\n
\n {this.props.count >= 0 && this.props.currencyformat ? (\n
\n \n
\n ) : this.props.count >= 0 ? (\n
\n \n
\n ) : (\n \n )}\n
\n \n \n );\n }\n }\n export class InvestorTableCardActive extends Component {\n render() {\n const {\n invName,\n Scheme,\n folio_number,\n Number_of_Installments,\n Start_Date_of_SIP,\n End_Date_of_SIP,\n amount,\n Mode_of_Registration,\n URN_UMRNumber,\n Rejection_Reason,\n status,\n active,\n pending,\n Maturity_Date,\n fmp,\n } = this.props;\n return (\n
\n
\n

{invName}

\n
\n
\n
\n
\n

Scheme

\n :\n

{!!Scheme ? Scheme : \"NA\"}

\n
\n
\n
\n
\n

Folio Number

\n :\n

{folio_number}

\n
\n
\n {fmp && (\n
\n
\n

Maturity Date

\n :\n

{Maturity_Date}

\n
\n
\n )}\n {active && (\n <>\n
\n
\n

Number of Installments

\n :\n

{Number_of_Installments}

\n
\n
\n
\n
\n

Start Date of SIP

\n :\n

{Start_Date_of_SIP}

\n
\n
\n
\n
\n

End Date of SIP

\n :\n

{End_Date_of_SIP}

\n
\n
\n
\n
\n

Mode of Registration

\n :\n

{Mode_of_Registration}

\n
\n
\n
\n
\n

Bill Id Number

\n :\n

{URN_UMRNumber}

\n
\n
\n \n )}\n
\n
\n

\n Amount :\n

\n

\n \n

\n
\n
\n {pending && (\n <>\n
\n
\n

Mode of Registration

\n :\n

{Mode_of_Registration}

\n
\n
\n
\n
\n

Rejection Reason

\n :\n

{Rejection_Reason}

\n
\n
\n
\n
\n

Bill Id Number

\n :\n

{URN_UMRNumber}

\n
\n
\n
\n
\n

Status

\n :\n

{status}

\n
\n
\n \n )}\n
\n
\n );\n }\n }\n ","import React, { Component } from \"react\";\nimport { connect } from \"react-redux\";\nimport Card from \"@material-ui/core/Card\";\nimport CustomLoading from \"../CustomLoader\";\nimport { getFMPdata } from \"shared/store/actions\";\nimport { fmp_columns } from \"../../forms/content\";\nimport { Table, TableBody, TableCell, TableRow } from \"@material-ui/core\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { FormatCurrency } from \"../currencyFormatter\";\nimport { DisplaySIPCards } from \"./SipTransactions\";\nimport { InvestorTableCardActive } from \"./SipTransactions\";\n\nexport class FmpTransactions extends Component {\n constructor(props) {\n super(props);\n this.state = {\n fmpvalues: { totalFMPs: \"\", totalvalueofFMPS: \"\" },\n };\n }\n async componentDidMount() {\n const params = {\n agentcode: this.props.token,\n };\n const response = await this.props.getFMPdata(params);\n const data = !!response.DtData[0] ? response.DtData[0] : \"\";\n const { Total_fmp, Total_value } = data;\n this.setState({\n fmpvalues: {\n totalFMPs: !!Total_fmp ? Total_fmp : \"\",\n totalvalueofFMPS: !!Total_value ? Total_value : \"\",\n },\n });\n }\n render() {\n const data = this.props.fmpTransactions || [];\n const sortedData = data.slice().sort((a, b) => {\n if (a.amount === b.amount) {\n // If amount is the same, sort by invname\n return a.invname.localeCompare(b.invname);\n } else {\n // Otherwise, sort by amount\n return b.amount - a.amount;\n }\n });\n const totalAUM = data.reduce((accumulator, currentObject) => {\n const { amount } = currentObject;\n if (!isNaN(amount)) {\n return accumulator + parseFloat(amount);\n }\n return accumulator;\n }, 0);\n return (\n
\n \n \n \n
\n {this.props.count > 0 ? (\n \n ) : !!this.props.fmpTransactions &&\n this.props.fmpTransactions.length &&\n this.props.fmpTransactions.length >= 1 ? (\n
\n \n \n \n {/* */}\n \n {fmp_columns.map((c) => (\n \n

{c.name}

\n

{c.subtitle}

\n \n ))}\n
\n \n {sortedData.map((item, index) => (\n \n \n {item.invname}\n \n\n \n {item.scheme}\n \n \n {item.acno}\n \n \n {item.MaturityDate}\n \n \n {!!item.Nav ? Number(item.Nav).toFixed(4) : \"0.0000\"}\n \n \n {!!item.Units\n ? Number.isInteger(item.Units)\n ? item.Units.toString()\n : item.Units.toFixed(3)\n : \"0.000\"}\n \n \n {!!item.amount\n ? Number.isInteger(item.amount)\n ? item.amount.toString()\n : item.amount.toFixed(2)\n : \"0.00\"}\n \n \n ))}\n \n
\n {data.length > 0 && (\n \n \n TOTAL Amount(₹) :{\" \"}\n {totalAUM.toLocaleString(undefined, {\n minimumFractionDigits: 2,\n maximumFractionDigits: 2,\n })}\n \n
\n )}\n \n
\n {this.props.fmpTransactions.map((item, index) => (\n \n ))}\n
\n \n ) : (\n !!this.props.fmpTransactions &&\n this.props.fmpTransactions.length === 0 &&\n this.props.count === 0 && (\n
No Data Found
\n )\n )}\n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, loading, transactions }) => {\n const { token } = authReducer;\n const { fmpTransactions } = transactions;\n const { count } = loading;\n return {\n token,\n count,\n fmpTransactions,\n };\n },\n {\n getFMPdata,\n }\n)(FmpTransactions);\n","import React, { Component } from \"react\";\nimport { Route, Switch } from \"react-router-dom\";\nimport Dashboard from \"./dashboardmain\";\nimport TabContainer from \"./tabs\";\nimport ListOfInvestorsTabs from \"./listofInvestorTabs\";\nimport SipSummaryTabContainer from \"./SipSummaryTabContainer\";\nimport NfoFunds from \"./nfoFunds\";\nimport NfoTransact from \"./NfoTransaction\";\nimport ReinitiateConfirm from \"../transactions/ReinitiateConfirm\";\n\nimport SipTransactions from \"./SipTransactions\";\nimport FmpTransactions from \"./FmpTransactions\";\n\nexport default class DashboardRouter extends Component {\n render() {\n const { history, location } = this.props;\n return (\n \n \n \n\n \n \n \n \n \n \n \n {/* \n \n */}\n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport CommonBreadCrumb from \"../breadCrumbs\";\nimport DashboardRouter from \"./dashboardroutes\";\n\nexport const DASHBOARD_URL = `/dashboard`;\n\nconst breadcrumbNameMap = {\n \"/dashboard\": { title: \"Dashboard\", to: DASHBOARD_URL },\n \"/dashboard/transaction-summary\": {\n title: \"Transaction Summary\",\n to: `${DASHBOARD_URL}/transaction-summary`,\n },\n \"/dashboard/investorType\": {\n title: \"Types of Investors\",\n to: `${DASHBOARD_URL}/investorType`,\n },\n \"/dashboard/SipSummaryTypes\": {\n title: \"SIP Summary Types\",\n to: `${DASHBOARD_URL}/SipSummaryTypes`,\n },\n \"/dashboard/nfo-funds\": {\n title: \"NFO\",\n to: `${DASHBOARD_URL}/nfo-funds`,\n },\n \"/dashboard/nfo-funds/nfo-transact\": {\n title: \"NFO TRANSACT\",\n to: `${DASHBOARD_URL}/nfo-funds/nfo-transact`,\n },\n \"/dashboard/sip-transactions\": {\n title: \"SIP Transactions\",\n to: `${DASHBOARD_URL}/sip-transactions`,\n },\n \"/dashboard/fmp-transactions\": {\n title: \"FMP Transactions\",\n to: `${DASHBOARD_URL}/fmp-transactions`,\n },\n \"/dashboard/re-initiate-transaction\": {\n title: \"Reinitiate\",\n to: `${DASHBOARD_URL}/re-initiate-transaction`,\n },\n};\n\nexport default class DashboardComponent extends Component {\n render() {\n const { location } = this.props;\n const pathnames = location.pathname.split(\"/\").filter((name) => name);\n return (\n
\n \n \n
\n );\n }\n}\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\n// import mailBackSoa from \"./mailBackSoa\";\nimport { MAILBACK_URL } from \".\";\nimport { BUILD_URL } from \"../home\";\nimport {MailBackSoaIcon,CASIcon,ELSSIcon,CANIcon,CGSIcon,GASIcon,networthIcon,mailbackRightarrow} from \"../../forms/appEssentials\";\n\nexport default class MailBackInvestor extends Component {\n render() {\n return (\n
\n
Mail Back Request – Investor
\n
\n \n this.props.history.push({\n pathname:\n this.props.location.state &&\n this.props.location.state.investorData\n ? MAILBACK_URL +\n \"/investor/investor-selection/mail-back-soa\"\n : MAILBACK_URL + \"/investor/investor-selection\",\n\n state:\n this.props.location.state &&\n this.props.location.state.investorData\n ? {\n name: \"mailBackSoa\",\n investorData: this.props.location.state.investorData\n }\n : { name: \"mailBackSoa\" }\n })\n }\n />\n \n this.props.history.push({\n pathname:\n this.props.location.state &&\n this.props.location.state.investorData\n ? MAILBACK_URL +\n \"/investor/investor-selection/consolidated-account-statement\"\n : MAILBACK_URL + \"/investor/investor-selection\",\n state:\n this.props.location.state &&\n this.props.location.state.investorData\n ? {\n name: \"consolidated\",\n investorData: this.props.location.state.investorData\n }\n : {\n name: \"consolidated\"\n }\n })\n }\n />\n \n this.props.history.push({\n pathname:\n this.props.location.state &&\n this.props.location.state.investorData\n ? MAILBACK_URL + \"/investor/investor-selection/ELSS\"\n : MAILBACK_URL + \"/investor/investor-selection\",\n state:\n this.props.location.state &&\n this.props.location.state.investorData\n ? {\n name: \"ELSS\",\n investorData: this.props.location.state.investorData\n }\n : {\n name: \"ELSS\"\n }\n })\n }\n />\n \n this.props.history.push({\n pathname:\n this.props.location.state &&\n this.props.location.state.investorData\n ? MAILBACK_URL + \"/investor/investor-selection/CAN\"\n : MAILBACK_URL + \"/investor/investor-selection\",\n state:\n this.props.location.state &&\n this.props.location.state.investorData\n ? {\n name: \"CAN\",\n investorData: this.props.location.state.investorData\n }\n : {\n name: \"CAN\"\n }\n })\n }\n />\n \n this.props.history.push({\n pathname:\n this.props.location.state &&\n this.props.location.state.investorData\n ? MAILBACK_URL + \"/investor/investor-selection/CGS\"\n : MAILBACK_URL + \"/investor/investor-selection\",\n state:\n this.props.location.state &&\n this.props.location.state.investorData\n ? {\n name: \"CGS\",\n investorData: this.props.location.state.investorData\n }\n : {\n name: \"CGS\"\n }\n })\n }\n />\n \n this.props.history.push({\n pathname:\n this.props.location.state &&\n this.props.location.state.investorData\n ? MAILBACK_URL + \"/investor/investor-selection/GAS\"\n : MAILBACK_URL + \"/investor/investor-selection\",\n state:\n this.props.location.state &&\n this.props.location.state.investorData\n ? {\n name: \"GAS\",\n investorData: this.props.location.state.investorData\n }\n : {\n name: \"GAS\"\n }\n })\n }\n />\n\n \n this.props.history.push({\n pathname:\n this.props.location.state &&\n this.props.location.state.investorData\n ? MAILBACK_URL + \"/investor/investor-selection/GAS\"\n : MAILBACK_URL + \"/investor/investor-selection\",\n state:\n this.props.location.state &&\n this.props.location.state.investorData\n ? {\n name: \"Networth\",\n investorData: this.props.location.state.investorData\n }\n : {\n name: \"Networth\"\n }\n })\n }\n />\n
\n
\n );\n }\n}\n\nexport class RequestModes extends Component {\n render() {\n return (\n \n
\n \n
\n \n
\n {this.props.name}\n
\n
\n \n
\n \n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport TableData from \"../tableData\";\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\nimport NavigateNextIcon from \"@material-ui/icons/NavigateNext\";\nimport Search from \"../searchComponent\";\nimport { ALL } from \"shared/store/types\";\nimport { connect } from \"react-redux\";\nimport { getInvestors } from \"shared/store/actions\";\nimport { MAILBACK_URL } from \".\";\nimport { BUILD_URL } from \"../home\";\nimport { dashboardActive } from \"../../forms/appEssentials\";\n\nclass InvestorSelection extends Component {\n componentDidMount() {\n this.props.getInvestors({ ARN: this.props.token, AllFavFlag: \"S\" });\n }\n\n render() {\n return (\n
\n
\n }\n aria-label=\"Breadcrumb\"\n >\n
\n \n\n this.props.history.push(MAILBACK_URL + \"/investor\")}\n className=\"breadcrumbs-unselect-label\"\n style={{cursor:\"pointer\"}}\n >\n Mail Back Types\n \n
\n\n\n
Investors Selection
\n \n
\n \n \n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { token } = authReducer;\n return { token };\n },\n { getInvestors }\n)(InvestorSelection);\n","import React, { Component } from \"react\";\n\nexport default class SubmitRequest extends Component {\n render() {\n return
sumbit process
;\n }\n}\n","export const ASON = \"ASON\";\nexport const BETWEEN = \"BETWEEN\";\nexport const SINGLESOA = \"SINGLESSOA\";\nexport const MULTISOA = \"MULTISOA\";\nexport const SUMMARY = \"SUMMARY\";\nexport const DETAILED = \"DETAILED\";\nexport const CURRENTFINANCIALYEAR = \"CURRENTFINANCIALYEAR\";\nexport const PREVIOUSFINANCIALYEAR = \"PREVIOUSFINANCIALYEAR\";\nexport const SPECIFICPERIOD = \"SPECIFICPERIOD\";","import React, { Component } from \"react\";\nimport MailbackRouter from \"./mailBackRoutes\";\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\nimport NavigateNextIcon from \"@material-ui/icons/NavigateNext\";\nimport { BUILD_URL } from \"../home\";\nimport { dashboardActive } from \"../../forms/appEssentials\";\n\nconst MAILBACK_URL = `/mailBackRequest`;\n\nexport default class MailBackComponent extends Component {\n render() {\n return (\n
\n \n
\n );\n }\n}\n\nexport class MailBackBreadCrumb extends Component {\n render() {\n const { name } = this.props;\n return (\n
\n }\n aria-label=\"Breadcrumb\"\n >\n
\n \n \n this.props.history.push(MAILBACK_URL + \"/investor\")\n }\n className=\"breadcrumbs-unselect-label\"\n style={{ cursor: \"pointer\" }}\n >\n Mail Back Types\n \n
\n\n \n this.props.history.push({\n pathname: MAILBACK_URL + \"/investor/investor-selection\",\n state: !!this.props.investorData\n ? {\n name:\n !!name && name === \"Mail Back SOA\"\n ? \"mailBackSoa\"\n : name === \"Consolidated Account Statment\"\n ? \"consolidated\"\n : name === \"ELSS Account Statement\"\n ? \"ELSS\"\n : name === \"CAN Based Account Statement\"\n ? \"CAN\"\n : name === \"Capital Gains Account Statement\"\n ? \"CGS\"\n : name === \"Grandfathering Account Statement\"\n ? \"GAS\"\n : name === \"Networth Report\"\n ? \"Networth\"\n : \"Networth\",\n investorData: this.props.investorData,\n }\n : {\n name:\n !!name && name === \"Mail Back SOA\"\n ? \"mailBackSoa\"\n : name === \"Consolidated Account Statment\"\n ? \"consolidated\"\n : name === \"ELSS Account Statement\"\n ? \"ELSS\"\n : name === \"CAN Based Account Statement\"\n ? \"CAN\"\n : name === \"Capital Gains Account Statement\"\n ? \"CGS\"\n : name === \"Grandfathering Account Statement\"\n ? \"GAS\"\n : name === \"Networth Report\"\n ? \"Networth\"\n : \"Networth\",\n },\n })\n }\n >\n Investors Selection\n \n
\n {this.props.name === \"Mailback SOA\"\n ? \"Mail Back SOA\"\n : this.props.name}\n
\n \n
\n );\n }\n}\n","import React, { Component } from \"react\";\nimport { List } from \"../transactions/nfoAndNewPurchase\";\nimport Paper from \"@material-ui/core/Paper\";\nimport Radio from \"@material-ui/core/Radio\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControl from \"@material-ui/core/FormControl\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport { connect } from \"react-redux\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport { Input } from \"../../forms/input\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nimport CustomizedDialogs from \"../../home/customModal\";\nimport IntegrationReactSelect from \"../../forms/autoCompleteInput\";\nimport moment from \"moment\";\nimport CustomLoader from \"../../forms/customLoader\";\nimport {\n MuiPickersUtilsProvider,\n KeyboardDatePicker,\n} from \"@material-ui/pickers\";\nimport {\n ASON,\n BETWEEN,\n SINGLESOA,\n MULTISOA,\n} from \"shared/store/types/mailBack\";\nimport {\n GET_FUNDS_LIST,\n GET_FUNDS_LIST_SUCCESS,\n GET_FUNDS_LIST_FAILED,\n ALL,\n} from \"shared/store/types\";\nimport {\n getInvestorDetails,\n getNewPurchaseFundList,\n} from \"shared/store/actions\";\nimport {\n getDistFoliobyPan,\n getMailbackSoaStatus,\n downloadInvestorProfile\n} from \"shared/store/actions/mailback\";\nimport {\n Select,\n Checkbox,\n ListItemText,\n Input as MaterialInput,\n} from \"@material-ui/core\";\nimport { DASHBOARD_URL } from \"../dashboard\";\nimport { MailBackBreadCrumb } from \"./mailback\";\nimport { SundaramMutualFund } from \"../transactions/newPurchaseForm\";\nimport { EYE_ICON, EYE_ICON_HIDDEN } from \"../../forms/appEssentials\";\nclass MailBackSoa extends Component {\n constructor(props) {\n super(props);\n this.state = {\n names: [\"sai\", \"anil\", \"ravi\"],\n selectedNames: [],\n asDate: { value: null, error: false },\n DateON: ASON,\n fromDate: { value: null, error: false, errorMessage: \"\" },\n toDate: { value: null, error: false, errorMessage: \"\" },\n funds: [],\n fund: { value: \"\" },\n folios: [],\n schemes: [],\n selectedSchemesNames: [],\n folioCheck: false,\n schemeCheck: false,\n folio: { value: \"\" },\n soaValue: SINGLESOA,\n soaType: { value: \"Download\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n open: false,\n showPassword: false,\n confirmShowPassword: false,\n display: false,\n };\n }\n\n async componentDidMount() {\n const params = {\n PAN: this.props.investorData.PAN,\n Fund: \"176\",\n Agent: this.props.token,\n };\n const response = await this.props.getDistFoliobyPan(params);\n if (response) {\n this.setState({\n folios: response.DtData.reduce((prev, curr) => {\n const alreadyExist = prev.find((item) => item === curr.acno);\n if (alreadyExist) {\n return prev;\n }\n return [...prev, curr.acno];\n }, []),\n });\n }\n }\n changeDateOn = (event) => () => {\n this.setState({\n DateON: event,\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n fund: { value: \"\" },\n selectedNames: [],\n selectedSchemesNames: [],\n schemes: []\n });\n };\n changeSoaValue = (event) => () => {\n this.setState({\n soaValue: event,\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n };\n\n handlechange = (event) => {\n const { selectedNames } = this.state;\n const { value } = event.target;\n if (selectedNames.includes(value)) {\n let newSchemes = this.schemes(Number(value));\n this.setState({\n selectedSchemesNames: this.state.selectedSchemesNames.filter(\n (item) => !newSchemes.some((scheme) => scheme.SchDesc === item.value)\n ),\n\n selectedNames: selectedNames.filter((item) => item !== value),\n\n });\n } else {\n let newSchemes = this.schemes(Number(value));\n this.setState((prevState) => ({\n selectedSchemesNames: [\n ...prevState.selectedSchemesNames,\n ...newSchemes.map((ele) => ({\n value: `${ele.SchDesc} - ${ele.Acno}`,\n label: `${ele.SchDesc} - ${ele.Acno}`\n }))\n\n ],\n selectedNames: [...prevState.selectedNames, value],\n }));\n }\n };\n handleschemenamechange = (value) => {\n const { schemes } = this.state;\n // const { value } = event.target;\n if (schemes.includes(value)) {\n this.setState({\n schemes: schemes.filter((item) => item !== value),\n });\n } else {\n this.setState({\n schemes: [...schemes, value],\n });\n }\n };\n schemes = (folio) => {\n return this.props.fundList.reduce((prev, curr) => {\n if (\n curr.Acno === folio &&\n !!curr.BalUnits\n ) {\n return [...prev, curr];\n }\n return prev;\n }, []);\n };\n\n handleChangeFunds = async (value) => {\n if (value.value === this.state.fund.value.value) {\n return;\n } else {\n this.setState({\n fund: { value },\n selectedNames: [],\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n if (!!value) {\n const params = {\n PAN: this.props.investorData.PAN,\n Fund: value.value,\n Agent: this.props.token,\n };\n const response = await this.props.getDistFoliobyPan(params);\n if (response) {\n this.setState({\n folios: response.DtData.reduce((prev, curr) => {\n const alreadyExist = prev.find((item) => item === curr.acno);\n if (alreadyExist) {\n return prev;\n }\n return [...prev, curr.acno];\n }, []),\n });\n }\n }\n }\n };\n handleChangefolio = (event) => {\n const folio = event.target.value;\n if (this.state.fund.value === \"\") {\n this.setState({\n selectedNames: [],\n });\n } else {\n this.setState({\n folio: { value: folio },\n soaValue: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n }\n };\n handleChangeSelfextractPassWord = (event) => {\n this.setState({\n selfExtract: { value: event.target.value },\n });\n };\n handleChangeConfirmSelfextractPassWord = (event) => {\n this.setState({\n confirmSelfExtract: { value: event.target.value },\n });\n };\n\n handleChangeSelfPassword = (event) => {\n this.setState({\n selfPassword: { value: event.target.value },\n });\n };\n handleChangeConfirmSelfPassword = (event) => {\n this.setState({\n ConfirmSelfPassword: { value: event.target.value },\n });\n };\n\n submit = (label) => async () => {\n let {\n selectedNames,\n selectedSchemesNames,\n schemes,\n asDate,\n DateON,\n fromDate,\n toDate,\n funds,\n fund,\n folios,\n folio,\n soaValue,\n soaType,\n showPassword,\n confirmShowPassword,\n names,\n open,\n folioCheck,\n schemeCheck,\n display,\n ConfirmSelfPassword,\n selfPassword,\n ...others\n } = this.state;\n const isDownload = this.state.soaType.value === \"Download\"\n others = isDownload\n ? { ...others }\n : { ...others, ConfirmSelfPassword, selfPassword };\n const keys = Object.keys(others);\n const d2 = new Date(this.state.fromDate.value).setHours(12, 0, 0, 0);\n const d3 = new Date(this.state.toDate.value).setHours(12, 0, 0, 0);\n const findError = keys.every((key) => !!others[key].value);\n if (selectedNames.length === 0) {\n this.setState({ folioCheck: true });\n } else {\n this.setState({ folioCheck: false });\n }\n if (selectedSchemesNames.length === 0) {\n this.setState({ schemeCheck: true });\n } else {\n this.setState({ schemeCheck: false });\n }\n if (\n this.state.fromDate.value === null &&\n this.state.DateON !== ASON\n ) {\n this.setState({\n fromDate: {\n value: null,\n error: true,\n errorMessage: \"Start Date is mandatory\",\n },\n });\n }\n if (\n this.state.toDate.value === null &&\n this.state.DateON !== ASON\n ) {\n this.setState({\n toDate: {\n value: null,\n error: true,\n errorMessage: \"End Date is mandatory\",\n },\n });\n }\n if (!findError) {\n keys.forEach((key) => {\n !others[key].value &&\n this.setState({ [key]: { ...others[key], isError: true, errorMessage: `${key === \"selfPassword\" ? \"Self-Password\" : key === \"ConfirmSelfPassword\" ? \"Confirm Self-Password\" : key === \"scheme\" ? \"Scheme\" : key === \"folio\" ? \"Folio\" : key} is mandatory` } });\n });\n return;\n } else if (this.state.selectedNames === []) {\n this.setState({\n password: {\n ...others[\"folio\"],\n isError: true,\n },\n });\n return;\n } else if (!isDownload &&\n (others.selfPassword.value === \"\" ||\n others.selfPassword.value !== others.ConfirmSelfPassword.value)\n ) {\n if (others.selfPassword.value === \"\") {\n this.setState({\n password: {\n ...others[\"selfPassword\"],\n isError: true,\n errorMessage: `password is mandatory`,\n },\n });\n } else if (!isDownload && (\n others.selfPassword.value !== others.ConfirmSelfPassword.value)\n ) {\n this.setState({\n password: {\n ...others[\"ConfirmSelfPassword\"],\n isError: true,\n errorMessage: `Password Mismatch`,\n },\n });\n }\n return;\n } else if (!isDownload && !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)) {\n this.setState({\n selfPassword: {\n value: this.state.selfPassword.value,\n isError: true,\n errorMessage: `Password should be at least 8 characters in length and should contain at least 1 Upper Case alphabet(A-Z).1 Special Character and 1 Numeric Value (0-9)`,\n },\n });\n return;\n } else if (!isDownload && !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.ConfirmSelfPassword.value)) {\n this.setState({\n ConfirmSelfPassword: {\n value: this.state.ConfirmSelfPassword.value,\n isError: true,\n errorMessage: `Confirm Password should be at least 8 characters in length and should contain at least 1 Upper Case alphabet(A-Z).1 Special Character and 1 Numeric Value (0-9)`,\n },\n });\n return;\n } else if (!isDownload && others.ConfirmSelfPassword.value === \"\") {\n this.setState({\n password: {\n ...others[\"ConfirmSelfPassword\"],\n isError: true,\n errorMessage: `password is mandatory`,\n },\n });\n return;\n } else if (\n !!d2 &&\n !!d3 &&\n (d2 > d3 || d2 === d3) &&\n this.state.DateON !== ASON\n ) {\n this.setState({\n toDate: {\n value: null,\n error: true,\n errorMessage: \"(*From Date Should less than to Date)\",\n },\n });\n } else if (\n (this.state.fromDate.value === null ||\n this.state.toDate.value === null) &&\n this.state.DateON !== ASON\n ) {\n if (this.state.fromDate.value === null) {\n this.setState({\n fromDate: { error: true },\n });\n }\n if (this.state.toDate.value === null) {\n this.setState({\n toDate: { error: true },\n });\n }\n } else {\n this.setState({ folioCheck: selectedNames.length === 0, schemeCheck: schemes.length === 0 });\n if (selectedNames.length === 0) {\n return;\n }\n if (schemes.length === 0) {\n return;\n }\n if (label === \"submit\") {\n const params = {\n UserId: this.props.userId,\n Zippwd: this.state.selfPassword.value,\n RepType: \"SOA\",\n Arn: this.props.token,\n Pan: this.props.investorData.PAN,\n Acno: this.state.selectedNames.join(),\n Freq: this.state.soaValue === SINGLESOA ? \"S\" : \"M\",\n Fund: \"176\",\n stdt:\n this.state.DateON === ASON\n ? \"\"\n : this.state.fromDate.value\n ? this.state.fromDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n })\n : \"\",\n EndDt:\n this.state.DateON === ASON\n ? \"\"\n : this.state.toDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n }),\n };\n\n\n\n const response = await this.props.getMailbackSoaStatus(params);\n if (response) {\n this.setState({\n open: true,\n });\n }\n } else {\n let startDateValue, endDateValue;\n if (!!this.state.fromDate.value) {\n startDateValue = this.state.fromDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n });\n }\n if (!!this.state.toDate.value) {\n endDateValue = this.state.toDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n });\n }\n const queryParams = {\n fund: \"176\",\n acno: this.folioFormat(this.state),\n scheme: this.gettingSchemeCodes(this.state.selectedSchemesNames),\n agent: this.props.token,\n agentname: this.props.userId,\n flag:this.state.soaValue === SINGLESOA ? \"S\" : \"M\",\n Fromdate:\n this.state.DateON === ASON\n ? \"01/01/1970\"\n : endDateValue,\n Todate:\n this.state.DateON === ASON ? moment(new Date()).format(\"MM/DD/YYYY\") : startDateValue,\n };\n this.setState({\n display: true\n })\n const response = await this.props.downloadInvestorProfile(queryParams);\n if (!!response && !response.error) {\n window.open(`${response.Table2[0].Fdata}`);\n } else {\n this.setState({\n display: false\n })\n alert(`${response.error}`);\n }\n this.setState({\n display: false\n })\n }\n }\n\n };\n folioFormat = (state) => {\n const selectedFolios = state.selectedNames;\n const selectedSchemeNames = state.selectedSchemesNames;\n const schemesResult = selectedSchemeNames.map(item => ({\n value: item.value.replace(/\\s-\\s\\d+$/, \"\").trim(),\n label: item.label.replace(/\\s-\\s\\d+$/, \"\").trim()\n }));\n let result = {};\n\n this.props.fundList.forEach((ele) => {\n if (\n selectedFolios.includes(ele.Acno.toString()) &&\n !!ele.BalUnits &&\n schemesResult.some((scheme) => scheme.value.includes(ele.SchDesc))\n ) {\n if (!result[ele.Acno]) {\n result[ele.Acno] = [];\n }\n result[ele.Acno].push(`${ele.Sch}${ele.Pln}`); // Collect scheme and plan names\n }\n });\n\n // Format the result\n let formattedResults = [];\n for (let acno in result) {\n formattedResults.push(`${acno}-${result[acno].join(',')}`);\n }\n\n return formattedResults.join(';');\n }\n gettingSchemeCodes = (desc) => {\n let result = [];\n const schemesResult = desc.map(item => ({\n value: item.value.replace(/\\s-\\s\\d+$/, \"\").trim(),\n label: item.label.replace(/\\s-\\s\\d+$/, \"\").trim()\n }));\n schemesResult.forEach((item) => { \n this.props.fundList.forEach((ele) => {\n if (item.value === ele.SchDesc) { \n result.push(ele.Sch + ele.Pln); \n }\n });\n });\n return result.join(''); \n };\n\n\n\n showError = (label) => (event) => {\n const {\n [label]: { value },\n } = this.state;\n\n if (label === \"selfPassword\") {\n if (this.state.selfPassword.value === \"\" || !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)) {\n if (!/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)) {\n this.setState({\n selfPassword: {\n value: this.state.selfPassword.value,\n isError: true,\n errorMessage: `Password should be at least 8 characters in length and should contain at least 1 Upper Case alphabet(A-Z).1 Special Character and 1 Numeric Value (0-9)`,\n },\n });\n return;\n }\n } else if (this.state.selfPassword.value === \"\") {\n this.setState({\n selfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `Password is mandatory`,\n },\n });\n return;\n }\n\n } else if (label === \"email\") {\n this.setState({\n [label]: {\n value,\n isError:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? true\n : !value,\n errorMessage:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? `(enter an vaild email address )`\n : \"\",\n },\n });\n } else if (label === \"ConfirmSelfPassword\") {\n this.setState({\n [label]: {\n value,\n isError:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? true\n : !value,\n errorMessage:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? `The Password and Confirm Password do not match`\n : \"\",\n },\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n\n closeModal = () => {\n this.setState({\n open: false,\n });\n this.props.history.replace(DASHBOARD_URL);\n };\n\n onDateChange = (label, event) => {\n if (label === \"toDate\" && !!this.state.fromDate.value && !!event) {\n const reformtStDt = this.state.fromDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeEndDt = event.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeEndDt).setHours(12, 0, 0, 0);\n if (d2 > d3 || d2 === d3) {\n this.setState({\n [label]: {\n value: null,\n error: true,\n errorMessage: \"Start date should be earlier than End date\",\n },\n });\n } else {\n this.setState({\n [label]: { value: event, errorMessage: \"\", error: false },\n });\n }\n } else if (label === \"fromDate\") {\n this.setState({\n [label]: { value: event },\n toDate: { value: null, error: \"\", errorMessage: \"\" },\n });\n }\n // this.setState({ [label]: { value: event } });\n };\n changeValue = () => (event) => {\n const value = event.target.value;\n this.setState({\n soaType: { value: value },\n\n })\n }\n render() {\n const { investorData, fundsList } = this.props;\n const {\n selectedNames,\n DateON,\n fund,\n folios,\n soaType,\n soaValue,\n ConfirmSelfPassword,\n selfPassword,\n schemes\n } = this.state;\n return (\n
\n \n \n \n
\n \n
\n\n
\n
\n
Mail Back SOA
\n
\n \n \n
\n {DateON === ASON ? (\n
\n
As on Date
\n \n this.onDateChange(\"toDate\", e)}\n // openTo={true}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n maxDate={new Date()}\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n disabled={true}\n value={new Date()}\n />\n \n
\n ) : (\n
\n
Start Date
\n \n this.onDateChange(\"fromDate\", e)}\n // openTo={true}\n style={{\n border:\n this.state.fromDate.error === true\n ? \"1px solid red\"\n : \"1px solid rgba(211, 211, 211)\",\n\n borderRadius:\n this.state.fromDate.error === true ? 7 : 7,\n marginTop: 0,\n marginBottom: 10\n }}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n maxDate={new Date()}\n margin=\"normal\"\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.fromDate.value}\n />\n \n {!!this.state.fromDate.errorMessage ? (\n \n {this.state.fromDate.errorMessage}\n
\n ) : (\n \"\"\n )}\n
\n
End Date
\n \n this.onDateChange(\"toDate\", e)}\n disabled={!this.state.fromDate.value}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n maxDate={new Date()}\n margin=\"normal\"\n id=\"mui-pickers-date\"\n value={this.state.toDate.value}\n />\n \n {!!this.state.toDate.errorMessage ? (\n \n {this.state.toDate.errorMessage}\n
\n ) : (\n \"\"\n )}\n
\n
\n )}\n\n\n
\n
Folio
\n }\n renderValue={(selected) => selected.join(\", \")}\n >\n {folios.map((item, index) => (\n \n -1}\n />\n \n \n ))}\n \n {this.state.folioCheck && this.state.selectedNames.length === 0 &&\n
\n Select atleast one folio\n
\n }\n\n
\n\n
\n
Schemes
\n }\n renderValue={(selected) => selected.join(\", \")}\n >\n {this.state.selectedSchemesNames.map((item, index) => (\n \n this.handleschemenamechange(item.value)}\n value={item.value}\n checked={this.state.schemes.indexOf(item.value.toString()) > -1}\n />\n \n \n ))}\n \n {this.state.schemeCheck && this.state.schemes.length === 0 &&\n
\n Select atleast one scheme\n
\n }\n
\n
\n
SOA Type
\n
\n \n \n
\n
\n
\n \n \n
\n\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Download(PDF)
\n
\n
\n \n }\n className=\"investor-formcontrol-label\"\n style={{ margin: 0 }}\n />\n
Trigerring Email
\n
\n \n
\n
\n {this.state.soaType.value === \"Email\" && (\n
\n
\n \n this.setState({\n showPassword: !this.state.showPassword,\n })\n }\n onBlur={this.showError(\"selfPassword\")}\n isShowError={selfPassword.isError}\n errorMessage={selfPassword.errorMessage}\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n inputref={(ele) => (this.selfPasswordField = ele)}\n />\n
\n Password should be at least 8 characters in length and should contain at least 1 uppercase letter (A-Z), 1 special character and 1 numeric value (0-9)\n
\n
\n
\n \n this.setState({\n confirmShowPassword: !this.state.confirmShowPassword,\n })\n }\n type={!!this.state.confirmShowPassword ? \"text\" : \"password\"}\n height={15}\n onChange={this.handleChangeConfirmSelfPassword}\n value={ConfirmSelfPassword.value}\n onBlur={this.showError(\"ConfirmSelfPassword\")}\n isShowError={ConfirmSelfPassword.isError}\n errorMessage={ConfirmSelfPassword.errorMessage}\n\n bordercolor=\"rgba(0, 0, 0, 0.5)\"\n inputref={(ele) => (this.ConfirmSelfPasswordField = ele)}\n />\n
\n
\n )}\n\n
\n {this.state.soaType.value === \"Download\" && (\n\n \n )}\n\n {this.state.soaType.value === \"Email\" && (\n\n \n )}\n\n
\n \n\n
\n \n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer, transactions }) => {\n const { investorData, userId, token, fundList } = authReducer;\n const { fundsList } = transactions;\n return { investorData, userId, token, fundsList, fundList };\n },\n {\n getInvestorDetails,\n getNewPurchaseFundList,\n getDistFoliobyPan,\n getMailbackSoaStatus,\n downloadInvestorProfile\n }\n)(MailBackSoa);\n","import React, { Component } from \"react\";\nimport { List } from \"../transactions/nfoAndNewPurchase\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { connect } from \"react-redux\";\nimport { Input } from \"../../forms/input\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nimport { BUILD_URL } from \"../home\";\nimport {\n MuiPickersUtilsProvider,\n KeyboardDatePicker,\n} from \"@material-ui/pickers\";\nimport { getAccountStatement } from \"shared/store/actions/mailback\";\nimport {\n SUMMARY,\n DETAILED,\n CURRENTFINANCIALYEAR,\n PREVIOUSFINANCIALYEAR,\n SPECIFICPERIOD,\n} from \"shared/store/types/mailBack\";\nimport CustomizedDialogs from \"../../home/customModal\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport { NEW_TRANSACTION_URL } from \"../transactions\";\nimport { MAILBACK_URL } from \".\";\nimport moment from \"moment\";\nimport { MailBackBreadCrumb } from \"./mailback\";\nimport { EYE_ICON, EYE_ICON_HIDDEN } from \"../../forms/appEssentials\";\n\nclass Cas extends Component {\n constructor(props) {\n super(props);\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n this.state = {\n summaryData: SUMMARY,\n DetailedData: CURRENTFINANCIALYEAR,\n AsDate: new Date(),\n startDate: {\n value:d2 > d3? new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear(), 3, 1)\n ),\n error: \"\",\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n showPassword: false,\n confirmShowPassword: false,\n };\n }\n componentDidMount() {\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n this.setState({\n summaryData: SUMMARY,\n DetailedData: CURRENTFINANCIALYEAR,\n AsDate: new Date(),\n startDate: {\n value: d2 > d3? new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear(), 3, 1)\n ),\n error: \"\",\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n });\n }\n onDateChange = (label, event) => {\n if (label === \"endDate\" && !!this.state.startDate.value && !!event ) {\n const reformtStDt = this.state.startDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeEndDt = event.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeEndDt).setHours(12, 0, 0, 0);\n if ( d2>d3|| d2 === d3) {\n this.setState({\n [label]: {\n value: null,\n error: true,\n errorMessage: \"Start Date should be earlier than End Date\",\n },\n });\n } else {\n this.setState({\n [label]: { value: event, errorMessage: \"\", error: false },\n });\n }\n } else if (label === \"startDate\") {\n this.setState({\n [label]: { value: event },\n endDate: { value: null, error: \"\", errorMessage: \"\" },\n });\n }\n // this.setState({ [label]: { value: event } });\n };\n changesummaryData = (event) => () => {\n this.setState({\n summaryData: event,\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n };\n\n ChangeDetailedData = (event) => () => {\n if (event === PREVIOUSFINANCIALYEAR) {\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear() - 1, 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n\n const reformtEndDt = new Date(\n new Date().setFullYear(new Date().getFullYear(), 2, 31)\n ).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeEndDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d4 = new Date(reformtEndDt).setHours(12, 0, 0, 0);\n const d5 = new Date(changeEndDt).setHours(12, 0, 0, 0);\n\n\n this.setState({\n DetailedData: event,\n startDate: {\n value: d2 > d3 ? new Date(\n new Date().setFullYear(new Date().getFullYear() - 1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear() - 2, 3, 1)\n ),\n },\n endDate: {\n value:d4>d5?new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 2, 31)\n ) :new Date(\n new Date().setFullYear(new Date().getFullYear(), 2, 31)\n ),\n },\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n } else if (event === SPECIFICPERIOD) {\n this.setState({\n DetailedData: event,\n startDate: { value: null },\n endDate: { value: null },\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n } else if (event === CURRENTFINANCIALYEAR) {\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n this.setState({\n DetailedData: event,\n startDate: {\n value:d2 > d3? new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear(), 3, 1)\n ),\n },\n endDate: { value: new Date() },\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n }\n };\n\n handleChangeSelfPassword = (event) => {\n this.setState({\n selfPassword: { value: event.target.value },\n });\n };\n handleChangeConfirmSelfPassword = (event) => {\n this.setState({\n ConfirmSelfPassword: { value: event.target.value },\n });\n };\n handleChangeEmail = (event) => {\n this.setState({\n email: { value: event.target.value },\n });\n };\n showError = (label) => (event) => {\n const {\n [label]: { value },\n } = this.state;\n\n if (label === \"selfPassword\") {\n if (this.state.selfPassword.value === \"\" || !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)) {\n if(!/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)){\n this.setState({\n selfPassword: {\n\n isError: true,\n errorMessage: `Password should be atleast 8 characters in length and should contain at least 1 Upper Case alphabet(A-Z).1 Special Character and 1 Numeric Value (0-9)`,\n },\n });\n return;\n }\n }else if(this.state.selfPassword.value === \"\") {\n this.setState({\n selfPassword: {\n value:\"\",\n isError: true,\n errorMessage: `Password is mandatory`,\n },\n });\n return;\n }\n\n } else if (label === \"email\") {\n this.setState({\n [label]: {\n value,\n isError:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? true\n : !value,\n errorMessage:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? `Enter a valid email address`\n : \"\",\n },\n });\n } else if (label === \"ConfirmSelfPassword\") {\n this.setState({\n [label]: {\n value,\n isError:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? true\n : !value,\n errorMessage:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? `The Password and Confirm Password do not match`\n : \"\",\n },\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n closeYesModal = () => {\n\n this.setState({\n summaryData: SUMMARY,\n DetailedData: CURRENTFINANCIALYEAR,\n AsDate: new Date(),\n startDate: {\n value: new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)),\n error: \"\",\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n });\n this.props.history.replace(\n MAILBACK_URL +\n \"/investor/investor-selection/consolidated-account-statement\"\n );\n };\n closeNoModal = () => {\n this.setState({\n open: false,\n });\n this.props.history.replace(\"/\");\n };\n submit = async () => {\n let asDateValue, startDateValue, endDateValue;\n if (this.state.AsDate.value) {\n asDateValue = this.state.AsDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n });\n }\n if (this.state.startDate.value) {\n startDateValue = this.state.startDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n });\n }\n if (this.state.endDate.value) {\n endDateValue = this.state.endDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n });\n }\n\n const {\n AsDate,\n startDate,\n endDate,\n ConfirmSelfPassword,\n selfPassword,\n email,\n showPassword,\n confirmShowPassword,\n ...others\n } = this.state;\n\n if (\n !this.state.selfPassword.value ||\n !this.state.ConfirmSelfPassword.value ||\n !this.state.email.value ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n ) ||\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n )\n ) {\n this.setState({\n selfPassword: {\n value: \"\",\n isShowPasswordError: true,\n },\n });\n }\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n )\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isShowPasswordError: true,\n },\n });\n }\n if (!this.state.selfPassword.value) {\n this.setState({\n selfPassword: {\n ...others[\"selfPassword\"],\n isError: true,\n errorMessage: `(password is mandatory)`,\n },\n });\n }\n if (!this.state.ConfirmSelfPassword.value) {\n this.setState({\n ConfirmSelfPassword: {\n ...others[\"ConfirmSelfPassword\"],\n isError: true,\n errorMessage: `(ConfirmSelfPassword is mandatory)`,\n },\n });\n }\n if (\n !this.state.email.value ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n )\n ) {\n if (!this.state.email.value) {\n this.setState({\n email: {\n ...others[\"email\"],\n isError: true,\n errorMessage: `(email is mandatory)`,\n },\n });\n } else {\n this.setState({\n email: {\n ...others[\"email\"],\n isError: true,\n errorMessage: `Enter a valid email address`,\n },\n });\n }\n }\n if (\n !!this.state.ConfirmSelfPassword &&\n !!this.state.selfPassword &&\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `(Password does not match )`,\n },\n });\n }\n } else {\n const {investorData} = this.props;\n\n const params = {\n Soapwd: this.state.selfPassword.value,\n ToDate:\n this.state.summaryData === SUMMARY ? moment(new Date()).format(\"MM/DD/YYYY\") :endDateValue ,\n FromDate:\n this.state.summaryData === SUMMARY ? \"01/01/1970\" :startDateValue ,\n userid: this.state.email.value,\n Brokermail: this.state.email.value,\n Soaflag: \"C\",\n Pan:!!investorData && !!investorData.PAN ? investorData.PAN :\"\" ,\n Fund: \"176\",\n EmailId: this.state.email.value,\n Folio: \"0\",\n ReqBy: \"a\",\n LoginFlag: \"Y\",\n StmtFlag: this.state.summaryData === SUMMARY ? \"Summary\" : \"Detailed\",\n Broker: \"\",\n };\n\n const response = await this.props.getAccountStatement(params);\n if (response) {\n this.setState({\n open: true,\n });\n }\n }\n };\n\n render() {\n const { investorData } = this.props;\n const {\n summaryData,\n DetailedData,\n selfPassword,\n ConfirmSelfPassword,\n email,\n } = this.state;\n return (\n
\n \n \n
\n \n
\n
\n
\n
Consolidated Account Statement
\n
Statement Type
\n
\n \n \n
\n {summaryData === SUMMARY ? (\n
\n
As on Date
\n \n this.onDateChange(\"AsDate\", e)}\n // openTo={true}\n disabled={true}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n // minDate={new Date(new Date().setFullYear(1980, 0, 1))}\n maxDate={new Date()}\n margin=\"normal\"\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.AsDate}\n />\n \n
\n ) : (\n
\n
Detailed Options
\n
\n \n \n \n
\n
\n
Start Date
\n \n this.onDateChange(\"startDate\", e)}\n // openTo={true}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n disabled={\n DetailedData === SPECIFICPERIOD ? false : true\n }\n\n minDate={\n DetailedData === CURRENTFINANCIALYEAR\n ? new Date(\n new Date().setFullYear(\n new Date().getFullYear(),\n 3,\n 1\n )\n )\n : DetailedData === SPECIFICPERIOD\n ? new Date(new Date().setFullYear(1970, 0, 1))\n : \"\"\n }\n style={{\n marginTop:0,\n marginBottom:10\n }}\n maxDate={new Date()}\n margin=\"normal\"\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.startDate.value}\n />\n \n
\n
\n End Date\n
\n \n this.onDateChange(\"endDate\", e)}\n disableFuture={true}\n disabled={\n DetailedData === SPECIFICPERIOD&&!!this.state.startDate.value ? false : true\n }\n format=\"dd/MM/yyyy\"\n maxDate={\n DetailedData === CURRENTFINANCIALYEAR ||\n DetailedData === SPECIFICPERIOD\n ? new Date()\n : DetailedData === PREVIOUSFINANCIALYEAR\n ? \"\"\n : \"\"\n }\n id=\"mui-pickers-date\"\n value={this.state.endDate.value}\n errorMessage={this.state.endDate.errorMessage}\n />\n \n {!!this.state.endDate.errorMessage ? (\n \n {this.state.endDate.errorMessage}\n
\n ) : (\n \"\"\n )}\n
\n
\n
\n )}\n
\n \n
\n
\n \n this.setState({\n showPassword: !this.state.showPassword,\n })\n }\n onChange={this.handleChangeSelfPassword}\n value={selfPassword.value}\n onBlur={this.showError(\"selfPassword\")}\n isShowError={selfPassword.isError}\n errorMessage={selfPassword.errorMessage}\n\n />\n
\n Password should be at least 8 characters in length and should contain at least 1 uppercase letter (A-Z), 1 special character and 1 numeric value (0-9)\n
\n
\n
\n \n this.setState({\n confirmShowPassword: !this.state.confirmShowPassword,\n })\n }\n type={!!this.state.confirmShowPassword ? \"text\" : \"password\"}\n height={15}\n onChange={this.handleChangeConfirmSelfPassword}\n value={ConfirmSelfPassword.value}\n onBlur={this.showError(\"ConfirmSelfPassword\")}\n isShowError={ConfirmSelfPassword.isError}\n errorMessage={ConfirmSelfPassword.errorMessage}\n\n />\n
\n
\n \n
\n  \n \n
\n
\n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { investorData, userId } = authReducer;\n // const userid = authReducer.userId;\n return { investorData, userId };\n },\n { getAccountStatement }\n)(Cas);\n","import React, { Component } from \"react\";\nimport { List } from \"../transactions/nfoAndNewPurchase\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { connect } from \"react-redux\";\nimport { Input } from \"../../forms/input\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nimport { BUILD_URL } from \"../home\";\nimport moment from \"moment\";\nimport {\n MuiPickersUtilsProvider,\n KeyboardDatePicker,\n} from \"@material-ui/pickers\";\nimport { getElssStatment } from \"shared/store/actions/mailback\";\nimport {\n SUMMARY,\n DETAILED,\n CURRENTFINANCIALYEAR,\n PREVIOUSFINANCIALYEAR,\n SPECIFICPERIOD,\n} from \"shared/store/types/mailBack\";\nimport CustomizedDialogs from \"../../home/customModal\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport { NEW_TRANSACTION_URL } from \"../transactions\";\nimport { MAILBACK_URL } from \".\";\nimport { MailBackBreadCrumb } from \"./mailback\";\nimport { EYE_ICON, EYE_ICON_HIDDEN } from \"../../forms/appEssentials\";\n\nclass ELSS extends Component {\n constructor(props) {\n super(props);\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n this.state = {\n summaryData: SUMMARY,\n DetailedData: CURRENTFINANCIALYEAR,\n AsDate: new Date(),\n startDate: {\n value:d2 > d3? new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear(), 3, 1)\n ),\n error: \"\",\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n showPassword: false,\n confirmShowPassword: false,\n };\n }\n componentDidMount() {\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n this.setState({\n summaryData: SUMMARY,\n DetailedData: CURRENTFINANCIALYEAR,\n AsDate: new Date(),\n startDate: {\n value: d2 > d3? new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear(), 3, 1)\n ),\n error: \"\",\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n });\n }\n onDateChange = (label, event) => {\n if (label === \"endDate\" && !!this.state.startDate.value && !!event ) {\n const reformtStDt = this.state.startDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeEndDt = event.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeEndDt).setHours(12, 0, 0, 0);\n if ( d2>d3|| d2 === d3) {\n this.setState({\n [label]: {\n value: null,\n error: true,\n errorMessage: \"Start Date should be earlier than End Date\",\n },\n });\n } else {\n this.setState({\n [label]: { value: event, errorMessage: \"\", error: false },\n });\n }\n } else if (label === \"startDate\") {\n this.setState({\n [label]: { value: event },\n endDate: { value: null, error: \"\", errorMessage: \"\" },\n });\n }\n };\n changesummaryData = (event) => () => {\n this.setState({\n summaryData: event,\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n };\n\n ChangeDetailedData = (event) => () => {\n if (event === PREVIOUSFINANCIALYEAR) {\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear() - 1, 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n\n const reformtEndDt = new Date(\n new Date().setFullYear(new Date().getFullYear(), 2, 31)\n ).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeEndDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d4 = new Date(reformtEndDt).setHours(12, 0, 0, 0);\n const d5 = new Date(changeEndDt).setHours(12, 0, 0, 0);\n\n this.setState({\n DetailedData: event,\n startDate: {\n value: d2 > d3 ? new Date(\n new Date().setFullYear(new Date().getFullYear() - 1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear() - 2, 3, 1)\n ),\n },\n endDate: {\n value:d4>d5?new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 2, 31)\n ) :new Date(\n new Date().setFullYear(new Date().getFullYear(), 2, 31)\n ),\n },\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n } else if (event === SPECIFICPERIOD) {\n this.setState({\n DetailedData: event,\n startDate: { value: null },\n endDate: { value: new Date() },\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n } else if (event === CURRENTFINANCIALYEAR) {\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n this.setState({\n DetailedData: event,\n startDate: {\n value: d2 > d3? new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear(), 3, 1)),\n },\n endDate: { value: new Date() },\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n });\n }\n };\n\n handleChangeSelfPassword = (event) => {\n this.setState({\n selfPassword: { value: event.target.value },\n });\n };\n handleChangeConfirmSelfPassword = (event) => {\n this.setState({\n ConfirmSelfPassword: { value: event.target.value },\n });\n };\n handleChangeEmail = (event) => {\n this.setState({\n email: { value: event.target.value },\n });\n };\n showError = (label) => (event) => {\n const {\n [label]: { value },\n } = this.state;\n\n if (label === \"selfPassword\") {\n if (this.state.selfPassword.value === \"\" || !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)) {\n if(!/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)){\n this.setState({\n selfPassword: {\n\n isError: true,\n errorMessage: `Password should be atleast 8 characters in length and should contain at least 1 Upper Case alphabet(A-Z).1 Special Character and 1 Numeric Value (0-9)`,\n },\n });\n return;\n }\n }else if(this.state.selfPassword.value === \"\") {\n this.setState({\n selfPassword: {\n value:\"\",\n isError: true,\n errorMessage: `Password is Mandatory`,\n },\n });\n return;\n }\n } else if (label === \"email\") {\n this.setState({\n [label]: {\n value,\n isError:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? true\n : !value,\n errorMessage:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? `Enter a valid email address`\n : \"\",\n },\n });\n } else if (label === \"ConfirmSelfPassword\") {\n this.setState({\n [label]: {\n value,\n isError:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? true\n : !value,\n errorMessage:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? `The Password and Confirm Password do not match`\n : \"\",\n },\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n closeYesModal = () => {\n this.setState({\n summaryData: SUMMARY,\n DetailedData: CURRENTFINANCIALYEAR,\n AsDate: new Date(),\n startDate: {\n value: new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)),\n error: \"\",\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n });\n this.props.history.replace(\n MAILBACK_URL + \"/investor/investor-selection/ELSS\"\n );\n };\n closeNoModal = () => {\n this.setState({\n open: false,\n });\n this.props.history.replace(\"/\");\n };\n submit = async () => {\n let asDateValue, startDateValue, endDateValue;\n if (this.state.AsDate.value) {\n asDateValue = this.state.AsDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n });\n }\n if (this.state.startDate.value) {\n startDateValue = this.state.startDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n });\n }\n if (this.state.endDate.value) {\n endDateValue = this.state.endDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n });\n }\n\n const {\n AsDate,\n startDate,\n endDate,\n ConfirmSelfPassword,\n selfPassword,\n showPassword,\n confirmShowPassword,\n email,\n ...others\n } = this.state;\n\n if (\n !this.state.selfPassword.value ||\n !this.state.ConfirmSelfPassword.value ||\n !this.state.email.value ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n ) ||\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n )\n ) {\n this.setState({\n selfPassword: {\n value: \"\",\n isShowPasswordError: true,\n },\n });\n }\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n )\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isShowPasswordError: true,\n },\n });\n }\n if (!this.state.selfPassword.value) {\n this.setState({\n selfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `Password is Mandatory`,\n },\n });\n }\n if (!this.state.ConfirmSelfPassword.value) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `ConfirmSelfPassword is Mandatory`,\n },\n });\n }\n if (\n !this.state.email.value ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n )\n ) {\n if (!this.state.email.value) {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: `Email is Mandatory`,\n },\n });\n } else {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: `Enter a valid email address`,\n },\n });\n }\n }\n if (\n !!this.state.ConfirmSelfPassword &&\n !!this.state.selfPassword &&\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `Password does not match`,\n },\n });\n }\n } else {\n const {investorData} = this.props;\n const params = {\n Soapwd: this.state.selfPassword.value,\n ToDate:\n this.state.summaryData === SUMMARY ? moment(new Date()).format(\"MM/DD/YYYY\") :endDateValue ,\n FromDate:\n this.state.summaryData === SUMMARY ? \"01/01/1970\" :startDateValue ,\n userid: this.state.email.value,\n Brokermail: this.state.email.value,\n Soaflag: \"C\",\n Pan: !!investorData && !!investorData.PAN ?investorData.PAN:\"\",\n Fund: \"176\",\n EmailId: this.state.email.value,\n Folio: \"0\",\n ReqBy: \"a\",\n LoginFlag: \"Y\",\n StmtFlag: this.state.summaryData === SUMMARY ? \"Summary\" : \"Detailed\",\n Broker: \"\",\n };\n const response = await this.props.getElssStatment(params);\n if (response) {\n this.setState({\n open: true,\n });\n }\n }\n };\n\n render() {\n const { investorData } = this.props;\n const {\n summaryData,\n DetailedData,\n selfPassword,\n ConfirmSelfPassword,\n email,\n } = this.state;\n return (\n
\n \n \n
\n \n
\n
\n
\n
ELSS Account Statement
\n
Statement Type
\n
\n \n \n
\n {summaryData === SUMMARY ? (\n
\n
As on Date
\n \n this.onDateChange(\"AsDate\", e)}\n // openTo={true}\n disabled={true}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n // minDate={new Date(new Date().setFullYear(1980, 0, 1))}\n maxDate={new Date()}\n margin=\"normal\"\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.AsDate}\n />\n \n
\n ) : (\n
\n
Detailed Options
\n
\n \n \n \n
\n
\n
Start Date
\n \n this.onDateChange(\"startDate\", e)}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n disabled={\n DetailedData === SPECIFICPERIOD ? false : true\n }\n minDate={\n DetailedData === CURRENTFINANCIALYEAR\n ? new Date(\n new Date().setFullYear(\n new Date().getFullYear(),\n 3,\n 1\n )\n )\n : DetailedData === SPECIFICPERIOD\n ? new Date(new Date().setFullYear(1970, 0, 1))\n : \"\"\n }\n style={{\n marginTop:0,\n marginBottom:10\n }}\n maxDate={new Date()}\n margin=\"normal\"\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.startDate.value}\n />\n \n
\n
\n End Date\n
\n \n this.onDateChange(\"endDate\", e)}\n // openTo={true}\n disableFuture={true}\n disabled={\n DetailedData === SPECIFICPERIOD ? false : true\n }\n format=\"dd/MM/yyyy\"\n maxDate={\n DetailedData === CURRENTFINANCIALYEAR ||\n DetailedData === SPECIFICPERIOD\n ? new Date()\n : DetailedData === PREVIOUSFINANCIALYEAR\n ? \"\"\n : \"\"\n }\n // margin=\"normal\"\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.endDate.value}\n />\n \n {!!this.state.endDate.errorMessage ? (\n \n {this.state.endDate.errorMessage}\n
\n ) : (\n \"\"\n )}\n
\n
\n
\n )}\n
\n \n
\n
\n \n this.setState({\n showPassword: !this.state.showPassword,\n })\n }\n onChange={this.handleChangeSelfPassword}\n value={selfPassword.value}\n onBlur={this.showError(\"selfPassword\")}\n isShowError={selfPassword.isError}\n errorMessage={selfPassword.errorMessage}\n />\n
\n Password should be at least 8 characters in length and should contain at least 1 uppercase letter (A-Z), 1 special character and 1 numeric value (0-9)\n
\n
\n
\n \n this.setState({\n confirmShowPassword: !this.state.confirmShowPassword,\n })\n }\n type={!!this.state.confirmShowPassword ? \"text\" : \"password\"}\n height={15}\n onChange={this.handleChangeConfirmSelfPassword}\n value={ConfirmSelfPassword.value}\n onBlur={this.showError(\"ConfirmSelfPassword\")}\n isShowError={ConfirmSelfPassword.isError}\n errorMessage={ConfirmSelfPassword.errorMessage}\n />\n
\n
\n \n
\n  \n \n
\n
\n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { investorData, userId } = authReducer;\n // const userid = authReducer.userId;\n return { investorData, userId };\n },\n { getElssStatment }\n)(ELSS);\n","import React, { Component } from \"react\";\nimport { List } from \"../transactions/nfoAndNewPurchase\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { connect } from \"react-redux\";\nimport { Input } from \"../../forms/input\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nimport { BUILD_URL } from \"../home\";\nimport {\n MuiPickersUtilsProvider,\n KeyboardDatePicker\n} from \"@material-ui/pickers\";\nimport { getcaptialgainStatment } from \"shared/store/actions/mailback\";\nimport {\n SUMMARY,\n DETAILED,\n CURRENTFINANCIALYEAR,\n PREVIOUSFINANCIALYEAR,\n SPECIFICPERIOD\n} from \"shared/store/types/mailBack\";\nimport CustomizedDialogs from \"../../home/customModal\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport { formatDate } from \"../../forms/captalize\";\nimport { MAILBACK_URL } from \".\";\nimport { MailBackBreadCrumb } from \"./mailback\";\nimport { EYE_ICON, EYE_ICON_HIDDEN } from \"../../forms/appEssentials\";\n\nclass CAN extends Component {\n constructor(props) {\n super(props);\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n this.state = {\n summaryData: SUMMARY,\n DetailedData: CURRENTFINANCIALYEAR,\n AsDate: new Date(),\n startDate: {\n value:d2 > d3? new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear(), 3, 1)\n ),\n error: \"\",\n isError: \"\",\n errorMessage: \"\"\n },\n endDate: { value: new Date(), error: \"\", isError: \"\", errorMessage: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n showPassword: false,\n confirmShowPassword: false,\n };\n }\n componentDidMount() {\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n this.setState({\n summaryData: SUMMARY,\n DetailedData: CURRENTFINANCIALYEAR,\n AsDate: new Date(),\n startDate: {\n value: d2 > d3? new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear(), 3, 1)\n ),\n error: \"\"\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n showPassword: false,\n confirmShowPassword: false,\n });\n }\n onDateChange = (label, event) => {\n if (label === \"endDate\" && !!this.state.startDate.value && !!event ) {\n const reformtStDt = this.state.startDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeEndDt = event.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeEndDt).setHours(12, 0, 0, 0);\n if ( d2>d3|| d2 === d3) {\n this.setState({\n [label]: {\n value: null,\n error: true,\n errorMessage: \"Start Date should be earlier than End Date\",\n },\n });\n } else {\n this.setState({\n [label]: { value: event, errorMessage: \"\", error: false },\n });\n }\n } else if (label === \"startDate\") {\n this.setState({\n [label]: { value: event },\n endDate: { value: null, error: \"\", errorMessage: \"\" },\n });\n }\n // this.setState({ [label]: event });\n };\n changesummaryData = event => () => {\n this.setState({\n summaryData: event,\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" }\n });\n };\n\n ChangeDetailedData = event => () => {\n if (event === PREVIOUSFINANCIALYEAR) {\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear() - 1, 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n\n const reformtEndDt = new Date(\n new Date().setFullYear(new Date().getFullYear(), 2, 31)\n ).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeEndDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d4 = new Date(reformtEndDt).setHours(12, 0, 0, 0);\n const d5 = new Date(changeEndDt).setHours(12, 0, 0, 0);\n this.setState({\n DetailedData: event,\n startDate: {\n value: d2 > d3 ? new Date(\n new Date().setFullYear(new Date().getFullYear() - 1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear() - 2, 3, 1)\n ),\n },\n endDate: {\n value:d4>d5?new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 2, 31)\n ) :new Date(\n new Date().setFullYear(new Date().getFullYear(), 2, 31)\n ),\n },\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" }\n });\n } else if (event === SPECIFICPERIOD) {\n this.setState({\n DetailedData: event,\n startDate: { value: null },\n endDate: { value: null },\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" }\n });\n } else if (event === CURRENTFINANCIALYEAR) {\n const reformtStDt = new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)).toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeStDt = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeStDt).setHours(12, 0, 0, 0);\n this.setState({\n DetailedData: event,\n startDate: {\n value: d2 > d3? new Date(\n new Date().setFullYear(new Date().getFullYear()-1, 3, 1)\n ):new Date(\n new Date().setFullYear(new Date().getFullYear(), 3, 1)\n ),\n },\n endDate: { value: new Date() },\n email: { value: \"\" },\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" }\n });\n }\n };\n\n handleChangeSelfPassword = event => {\n this.setState({\n selfPassword: { value: event.target.value }\n });\n };\n handleChangeConfirmSelfPassword = event => {\n this.setState({\n ConfirmSelfPassword: { value: event.target.value }\n });\n };\n handleChangeEmail = event => {\n this.setState({\n email: { value: event.target.value }\n });\n };\n showError = label => event => {\n const {\n [label]: { value }\n } = this.state;\n\n if (label === \"selfPassword\") {\n if (this.state.selfPassword.value === \"\" || !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)) {\n if(!/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)){\n this.setState({\n selfPassword: {\n\n isError: true,\n errorMessage: `Password should be atleast 8 characters in length and should contain at least 1 Upper Case alphabet(A-Z).1 Special Character and 1 Numeric Value (0-9)`,\n },\n });\n return;\n }\n }else if(this.state.selfPassword.value === \"\") {\n this.setState({\n selfPassword: {\n value:\"\",\n isError: true,\n errorMessage: `Password is Mandatory`,\n },\n });\n return;\n }\n }\n // else if (label === \"email\") {\n // this.setState({\n // [label]: {\n // value,\n // isError:\n // /^\\w+([\\.-]?\\w+)@\\w+([\\.-]?\\w+)(\\.\\w{2,3})+$/.test(\n // this.state.email.value\n // ) === false\n // ? true\n // : !value,\n // errorMessage:\n // /^\\w+([\\.-]?\\w+)@\\w+([\\.-]?\\w+)(\\.\\w{2,3})+$/.test(\n // this.state.email.value\n // ) === false\n // ? `(enter an vaild email address )`\n // : \"\"\n // }\n // });\n // }\n else if (label === \"ConfirmSelfPassword\") {\n this.setState({\n [label]: {\n value,\n isError:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? true\n : !value,\n errorMessage:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? `The Password and Confirm Password do not match`\n : \"\"\n }\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value\n }\n });\n }\n };\n // onDateChange = (label, event) => {\n // this.setState({ [label]: { value: event } });\n // };\n closeYesModal = () => {\n this.setState({\n summaryData: SUMMARY,\n DetailedData: CURRENTFINANCIALYEAR,\n AsDate: new Date(),\n startDate: {\n value: new Date(new Date().setFullYear(new Date().getFullYear(), 3, 1)),\n error: \"\"\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false\n });\n this.props.history.replace(\n MAILBACK_URL + \"/investor/investor-selection/CAN\"\n );\n };\n closeNoModal = () => {\n this.setState({\n open: false\n });\n this.props.history.replace(\"/\");\n };\n submit = async () => {\n let asDateValue, startDateValue, endDateValue;\n if (this.state.AsDate.value) {\n asDateValue = this.state.AsDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\"\n });\n }\n if (this.state.startDate.value) {\n startDateValue = this.state.startDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\"\n });\n }\n if (this.state.endDate.value) {\n endDateValue = this.state.endDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\"\n });\n }\n const d2 = !!this.state.startDate.value\n ? new Date(this.state.startDate.value).setHours(12, 0, 0, 0)\n : \"\";\n const d3 = !!this.state.endDate.value\n ? new Date(this.state.endDate.value).setHours(12, 0, 0, 0)\n : \"\";\n\n const {\n AsDate,\n startDate,\n endDate,\n ConfirmSelfPassword,\n selfPassword,\n email,\n showPassword,\n confirmShowPassword,\n ...others\n } = this.state;\n\n if (\n !this.state.selfPassword.value ||\n !this.state.ConfirmSelfPassword.value ||\n !this.state.email.value ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n ) ||\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n )\n ) {\n this.setState({\n selfPassword: {\n value: \"\",\n isShowPasswordError: true\n }\n });\n }\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n )\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isShowPasswordError: true\n }\n });\n }\n if (!this.state.selfPassword.value) {\n this.setState({\n selfPassword: {\n ...others[\"selfPassword\"],\n isError: true,\n errorMessage: `Password is Mandatory`\n }\n });\n }\n if (!this.state.ConfirmSelfPassword.value) {\n this.setState({\n ConfirmSelfPassword: {\n ...others[\"ConfirmSelfPassword\"],\n isError: true,\n errorMessage: `ConfirmSelfPassword is Mandatory`\n }\n });\n }\n if (!this.state.email.value) {\n if (!this.state.email.value) {\n this.setState({\n email: {\n ...others[\"email\"],\n isError: true,\n errorMessage: `CAN is Mandatory`\n }\n });\n }\n }\n if (\n !!this.state.ConfirmSelfPassword &&\n !!this.state.selfPassword &&\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `Password does not match`\n }\n });\n }\n } else if (!this.state.startDate.value || !this.state.endDate.value) {\n if (!this.state.startDate.value) {\n this.setState({\n startDate: {\n value: null,\n isError: true,\n errorMessage: \"From Date is Mandatory\"\n }\n });\n }\n if (!this.state.endDate.value) {\n this.setState({\n endDate: {\n value: null,\n isError: true,\n errorMessage: \"To Date is Mandatory\"\n }\n });\n }\n } else if (!!d2 && !!d3 && (d2 > d3 || d2 === d3)) {\n this.setState({\n endDate: {\n value: null,\n isError: true,\n errorMessage: \"*From Date Should less than to Date\"\n }\n });\n } else {\n const params = {\n fromdt: formatDate(this.state.startDate.value),\n todate: formatDate(this.state.endDate.value),\n trtype: \"CAN\",\n PAN: \"\",\n Email: this.state.email.value,\n distCode: this.props.token,\n Password: this.state.selfPassword.value,\n distUid: this.props.userId,\n StmtFlag: this.state.summaryData === SUMMARY ? \"Summary\" : \"Detailed\"\n };\n const response = await this.props.getcaptialgainStatment(params);\n\n if (response) {\n this.setState({\n open: true\n });\n } else {\n this.setState({\n email: {\n value: \"\",\n errorMessage: \"NO Email ID for this CAN\",\n isError: true\n }\n });\n }\n }\n };\n\n render() {\n const { investorData } = this.props;\n const {\n summaryData,\n DetailedData,\n selfPassword,\n ConfirmSelfPassword,\n email\n } = this.state;\n return (\n
\n \n \n
\n \n
\n
\n
\n
CAN Based Account Statement
\n
Statement Type
\n
\n \n \n
\n {summaryData === SUMMARY ? (\n
\n
As on Date
\n \n this.onDateChange(\"AsDate\", e)}\n // openTo={true}\n disabled={true}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n // minDate={new Date(new Date().setFullYear(1980, 0, 1))}\n maxDate={new Date()}\n margin=\"normal\"\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.AsDate}\n />\n \n
\n ) : (\n
\n
Detailed Options
\n
\n \n \n \n
\n
\n
Start Date
\n \n this.onDateChange(\"startDate\", e)}\n // openTo={true}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n disabled={\n DetailedData === SPECIFICPERIOD ? false : true\n }\n style={{marginTop:0,marginBottom:10}}\n minDate={\n DetailedData === CURRENTFINANCIALYEAR\n ? new Date(\n new Date().setFullYear(\n new Date().getFullYear(),\n 3,\n 1\n )\n )\n : DetailedData === SPECIFICPERIOD\n ? new Date(new Date().setFullYear(1970, 0, 1))\n : \"\"\n }\n maxDate={new Date()}\n margin=\"normal\"\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.startDate.value}\n />\n \n\n\n
\n
\n End Date\n
\n \n this.onDateChange(\"endDate\", e)}\n // openTo={true}\n disableFuture={true}\n disabled={\n DetailedData === SPECIFICPERIOD ? false : true\n }\n format=\"dd/MM/yyyy\"\n maxDate={\n DetailedData === CURRENTFINANCIALYEAR ||\n DetailedData === SPECIFICPERIOD\n ? new Date()\n : DetailedData === PREVIOUSFINANCIALYEAR\n ? \"\"\n : \"\"\n }\n // margin=\"normal\"\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.endDate.value}\n />\n \n {\n !!this.state.endDate.errorMessage ? (\n \n {this.state.endDate.errorMessage}\n
\n ) : (\n \"\"\n )}\n
\n
\n
\n )}\n
\n \n
\n
\n \n this.setState({\n showPassword: !this.state.showPassword,\n })\n }\n onChange={this.handleChangeSelfPassword}\n value={selfPassword.value}\n onBlur={this.showError(\"selfPassword\")}\n isShowError={selfPassword.isError}\n errorMessage={selfPassword.errorMessage}\n />\n
\n Password should be at least 8 characters in length and should contain at least 1 uppercase letter (A-Z), 1 special character and 1 numeric value (0-9)\n
\n
\n
\n \n this.setState({\n confirmShowPassword: !this.state.confirmShowPassword,\n })\n }\n type={!!this.state.confirmShowPassword ? \"text\" : \"password\"}\n height={15}\n onChange={this.handleChangeConfirmSelfPassword}\n value={ConfirmSelfPassword.value}\n onBlur={this.showError(\"ConfirmSelfPassword\")}\n isShowError={ConfirmSelfPassword.isError}\n errorMessage={ConfirmSelfPassword.errorMessage}\n\n />\n
\n
\n \n
\n  \n \n
\n
\n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { investorData, userId } = authReducer;\n // const userid = authReducer.userId;\n return { investorData, userId };\n },\n { getcaptialgainStatment }\n)(CAN);\n","import React, { Component } from \"react\";\nimport { List } from \"../transactions/nfoAndNewPurchase\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { connect } from \"react-redux\";\nimport { Input } from \"../../forms/input\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nimport { BUILD_URL } from \"../home\";\nimport {\n MuiPickersUtilsProvider,\n KeyboardDatePicker,\n} from \"@material-ui/pickers\";\nimport { getcaptialgainStatment } from \"shared/store/actions/mailback\";\nimport {\n SUMMARY,\n DETAILED,\n CURRENTFINANCIALYEAR,\n PREVIOUSFINANCIALYEAR,\n SPECIFICPERIOD,\n} from \"shared/store/types/mailBack\";\nimport CustomizedDialogs from \"../../home/customModal\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport { NEW_TRANSACTION_URL } from \"../transactions\";\nimport { MAILBACK_URL } from \".\";\nimport { formatDate } from \"../../forms/captalize\";\nimport { MailBackBreadCrumb } from \"./mailback\";\nimport { EYE_ICON, EYE_ICON_HIDDEN } from \"../../forms/appEssentials\";\n\nclass CGS extends Component {\n constructor(props) {\n super(props);\n this.state = {\n startDate: {\n value: null,\n error: \"\",\n },\n endDate: { value: null, error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n showPassword: false,\n confirmShowPassword: false,\n };\n }\n\n handleChangeSelfPassword = (event) => {\n this.setState({\n selfPassword: { value: event.target.value },\n });\n };\n handleChangeConfirmSelfPassword = (event) => {\n this.setState({\n ConfirmSelfPassword: { value: event.target.value },\n });\n };\n handleChangeEmail = (event) => {\n this.setState({\n email: { value: event.target.value },\n });\n };\n\n showError = (label) => (event) => {\n const {\n [label]: { value },\n } = this.state;\n\n if (label === \"selfPassword\") {\n if (this.state.selfPassword.value === \"\" || !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)) {\n if(!/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)){\n this.setState({\n selfPassword: {\n isError: true,\n errorMessage: `Password should be atleast 8 characters in length and should contain at least 1 Upper Case alphabet(A-Z).1 Special Character and 1 Numeric Value (0-9)`,\n },\n });\n return;\n }\n }else if(this.state.selfPassword.value === \"\") {\n this.setState({\n selfPassword: {\n value:\"\",\n isError: true,\n errorMessage: `Password is Mandatory`,\n },\n });\n return;\n }\n } else if (label === \"email\") {\n this.setState({\n [label]: {\n value,\n isError:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? true\n : !value,\n errorMessage:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? `Enter a valid email address`\n : \"\",\n },\n });\n } else if (label === \"ConfirmSelfPassword\") {\n this.setState({\n [label]: {\n value,\n isError:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? true\n : !value,\n errorMessage:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? `The Password and Confirm Password do not match`\n : \"\",\n },\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n closeYesModal = () => {\n this.setState({\n startDate: {\n value: new Date(),\n error: \"\",\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n });\n this.props.history.replace(\n MAILBACK_URL + \"/investor/investor-selection/CGS\"\n );\n };\n closeNoModal = () => {\n this.setState({\n open: false,\n });\n this.props.history.replace( \"/\");\n };\n\n onDateChange = (label, event) => {\n if (label === \"endDate\" && !!this.state.startDate.value && !!event ) {\n const reformtStDt = this.state.startDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n const changeEndDt = event.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n\n\n const d2 = new Date(reformtStDt).setHours(12, 0, 0, 0);\n const d3 = new Date(changeEndDt).setHours(12, 0, 0, 0);\n if ( d2>d3|| d2 === d3) {\n this.setState({\n [label]: {\n value: null,\n error: true,\n errorMessage: \"Start Date should be earlier than End Date\",\n },\n });\n } else {\n this.setState({\n [label]: { value: event, errorMessage: \"\", error: false },\n });\n }\n } else if (label === \"startDate\") {\n this.setState({\n [label]: { value: event },\n endDate: { value: null, error: \"\", errorMessage: \"\" },\n });\n }\n // this.setState({ [label]: { value: event } });\n };\n\n submit = async () => {\n let startDateValue, endDateValue;\n\n if (this.state.startDate.value) {\n startDateValue = this.state.startDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n }\n if (this.state.endDate.value) {\n endDateValue = this.state.endDate.value.toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"2-digit\",\n });\n }\n\n const d2 = new Date(this.state.startDate.value).setHours(12, 0, 0, 0);\n const d3 = new Date(this.state.endDate.value).setHours(12, 0, 0, 0);\n\n const {\n AsDate,\n startDate,\n endDate,\n ConfirmSelfPassword,\n selfPassword,\n showPassword,\n confirmShowPassword,\n email,\n ...others\n } = this.state;\n\n if (\n !this.state.selfPassword.value ||\n !this.state.ConfirmSelfPassword.value ||\n !this.state.email.value ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n ) ||\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n )\n ) {\n this.setState({\n selfPassword: {\n value: \"\",\n isShowPasswordError: true,\n },\n });\n }\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n )\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isShowPasswordError: true,\n },\n });\n }\n if (!this.state.selfPassword.value) {\n this.setState({\n selfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `Password is Mandatory`,\n },\n });\n }\n if (!this.state.ConfirmSelfPassword.value) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `ConfirmSelfPassword is Mandatory`,\n },\n });\n }\n if (\n !this.state.email.value ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n )\n ) {\n if (!this.state.email.value) {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: `Email is Mandatory`,\n },\n });\n } else {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: `Enter a valid email address`,\n },\n });\n }\n }\n if (\n !!this.state.ConfirmSelfPassword &&\n !!this.state.selfPassword &&\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `Password does not match`,\n },\n });\n }\n } else if (!this.state.startDate.value) {\n this.setState({\n startDate: {\n value: null,\n error: true,\n errorMessage: \"*From Date is Mandatory\",\n },\n });\n return;\n } else if (!this.state.endDate.value) {\n this.setState({\n startDate: {\n value: null,\n error: true,\n errorMessage: \"*To Date is Mandatory\",\n },\n });\n return;\n } else if (d2 > d3 || d2 === d3) {\n this.setState({\n startDate: {\n value: null,\n error: true,\n errorMessage: \"(*From Date Should less than to Date)\",\n },\n });\n } else {\n const {investorData} = this.props;\n const params = {\n fromdt: formatDate(this.state.startDate.value),\n todate: formatDate(this.state.endDate.value),\n trtype: \"WBCAP\",\n PAN: !!investorData && !!investorData.PAN ?investorData.PAN:\"\",\n Email: this.state.email.value,\n distCode: this.props.token,\n Password: this.state.selfPassword.value,\n distUid: this.props.userId,\n };\n const response = await this.props.getcaptialgainStatment(params);\n\n if (response) {\n this.setState({\n open: true,\n });\n }\n }\n };\n\n render() {\n const { investorData } = this.props;\n const { selfPassword, ConfirmSelfPassword, email } = this.state;\n return (\n
\n \n \n
\n \n
\n
\n
\n
Capital Gains Account Statement
\n
\n \n
\n
\n \n this.setState({\n showPassword: !this.state.showPassword,\n })\n }\n onChange={this.handleChangeSelfPassword}\n value={selfPassword.value}\n onBlur={this.showError(\"selfPassword\")}\n isShowError={selfPassword.isError}\n errorMessage={selfPassword.errorMessage}\n\n />\n
\n Password should be at least 8 characters in length and should contain at least 1 uppercase letter (A-Z), 1 special character and 1 numeric value (0-9)\n
\n
\n
\n \n this.setState({\n confirmShowPassword: !this.state.confirmShowPassword,\n })\n }\n type={!!this.state.confirmShowPassword ? \"text\" : \"password\"}\n height={15}\n onChange={this.handleChangeConfirmSelfPassword}\n value={ConfirmSelfPassword.value}\n onBlur={this.showError(\"ConfirmSelfPassword\")}\n isShowError={ConfirmSelfPassword.isError}\n errorMessage={ConfirmSelfPassword.errorMessage}\n\n />\n
\n
\n
Start Date
\n \n this.onDateChange(\"startDate\", e)}\n // openTo={true}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n maxDate={new Date()}\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.startDate.value}\n />\n {!!this.state.startDate.errorMessage ? (\n \n {this.state.startDate.errorMessage}\n
\n ) : (\n \"\"\n )}\n \n
\n
\n
End Date
\n \n this.onDateChange(\"endDate\", e)}\n // openTo={true}\n disabled={!this.state.startDate.value ? true : false}\n disableFuture={true}\n format=\"dd/MM/yyyy\"\n errorMessage={this.state.endDate.errorMessage}\n maxDate={new Date()}\n // animateYearScrolling={true}\n id=\"mui-pickers-date\"\n value={this.state.endDate.value}\n />\n {!!this.state.endDate.errorMessage ? (\n \n {this.state.endDate.errorMessage}\n
\n ) : (\n \"\"\n )}\n \n
\n
\n \n
\n  \n \n
\n \n \n \n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { investorData, userId, token } = authReducer;\n return { investorData, userId, token };\n },\n { getcaptialgainStatment }\n)(CGS);\n","import React, { Component } from \"react\";\nimport { List } from \"../transactions/nfoAndNewPurchase\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { connect } from \"react-redux\";\nimport { Input } from \"../../forms/input\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nimport { BUILD_URL } from \"../home\";\nimport {\n MuiPickersUtilsProvider,\n KeyboardDatePicker,\n} from \"@material-ui/pickers\";\nimport { getcaptialgainStatment } from \"shared/store/actions/mailback\";\nimport CustomizedDialogs from \"../../home/customModal\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport { MAILBACK_URL } from \".\";\nimport { MailBackBreadCrumb } from \"./mailback\";\nimport { EYE_ICON, EYE_ICON_HIDDEN } from \"../../forms/appEssentials\";\n\nclass GAS extends Component {\n constructor(props) {\n super(props);\n this.state = {\n startDate: {\n value: new Date(),\n error: \"\",\n },\n pan: {\n value: \"\",\n isError: false,\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n showPassword: false,\n confirmShowPassword: false,\n };\n }\n\n handleChangeSelfPassword = (event) => {\n this.setState({\n selfPassword: { value: event.target.value },\n });\n };\n handleChangeConfirmSelfPassword = (event) => {\n this.setState({\n ConfirmSelfPassword: { value: event.target.value },\n });\n };\n handleChangeEmail = (event) => {\n this.setState({\n email: { value: event.target.value },\n });\n };\n\n handleChangePan = (event) => {\n if (event.target.value.length <= 10) {\n this.setState({\n pan: {\n value: event.target.value.toUpperCase(),\n },\n });\n }\n };\n\n panvadilation = (event) => {\n if (/[A-Za-z]{5}\\d{4}[A-Za-z]{1}/.test(event.target.value) === false) {\n this.setState({\n pan: {\n value: \"\",\n isError: true,\n errorMessage: \"Enter a vaild pan\",\n },\n });\n }\n };\n\n showError = (label) => (event) => {\n const {\n [label]: { value },\n } = this.state;\n\n if (label === \"selfPassword\") {\n if (this.state.selfPassword.value === \"\" || !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)) {\n if(!/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)){\n this.setState({\n selfPassword: {\n\n isError: true,\n errorMessage: `Password should be atleast 8 characters in length and should contain at least 1 Upper Case alphabet(A-Z).1 Special Character and 1 Numeric Value (0-9)`,\n },\n });\n return;\n }\n }else if(this.state.selfPassword.value === \"\") {\n this.setState({\n selfPassword: {\n value:\"\",\n isError: true,\n errorMessage: `Password is Mandatory`,\n },\n });\n return;\n }\n } else if (label === \"email\") {\n this.setState({\n [label]: {\n value,\n isError:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? true\n : !value,\n errorMessage:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? `Enter a valid email address`\n : \"\",\n },\n });\n } else if (label === \"ConfirmSelfPassword\") {\n this.setState({\n [label]: {\n value,\n isError:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? true\n : !value,\n errorMessage:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? `The Password and Confirm Password do not match`\n : \"\",\n },\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n\n closeYesModal = () => {\n this.setState({\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n });\n this.props.history.replace(\n MAILBACK_URL + \"/investor/investor-selection/GAS\"\n );\n };\n closeNoModal = () => {\n this.setState({\n open: false,\n });\n this.props.history.replace( \"/\");\n };\n\n onDateChange = (label, event) => {\n this.setState({ [label]: { value: event } });\n };\n\n submit = async () => {\n const { ConfirmSelfPassword, selfPassword, email, showPassword,\n confirmShowPassword, ...others } = this.state;\n\n if (\n !this.state.selfPassword.value ||\n !this.state.ConfirmSelfPassword.value ||\n !this.state.email.value ||\n !this.state.pan.value ||\n !/[A-Za-z]{5}\\d{4}[A-Za-z]{1}/.test(this.state.pan.value) ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n ) ||\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n if (!/[A-Za-z]{5}\\d{4}[A-Za-z]{1}/.test(this.state.pan.value)) {\n this.setState({\n pan: {\n value: \"\",\n isError: true,\n errorMessage: \"enter a vaild pan\",\n },\n });\n }\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n )\n ) {\n this.setState({\n selfPassword: {\n value: \"\",\n isShowPasswordError: true,\n },\n });\n }\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n )\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isShowPasswordError: true,\n },\n });\n }\n if (!this.state.selfPassword.value) {\n this.setState({\n selfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `Password is Mandatory`,\n },\n });\n }\n if (!this.state.ConfirmSelfPassword.value) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `ConfirmSelfPassword is Mandatory`,\n },\n });\n }\n if (\n !this.state.email.value ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n )\n ) {\n if (!this.state.email.value) {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: `Email is Mandatory`,\n },\n });\n } else {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: `Enter a valid email address`,\n },\n });\n }\n }\n if (\n !!this.state.ConfirmSelfPassword &&\n !!this.state.selfPassword &&\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `Password does not match`,\n },\n });\n }\n } else {\n const params = {\n fromdt: \"\",\n todate: \"\",\n trtype: \"GF\",\n PAN: this.state.pan.value,\n Email: this.state.email.value,\n distCode: this.props.token,\n Password: this.state.selfPassword.value,\n distUid: this.props.userId,\n };\n const response = await this.props.getcaptialgainStatment(params);\n\n if (response) {\n this.setState({\n open: true,\n });\n } else {\n this.setState({\n open: true,\n error: \"NO records found\",\n });\n }\n }\n };\n\n render() {\n const { investorData } = this.props;\n const { selfPassword, ConfirmSelfPassword, email, pan } = this.state;\n return (\n
\n \n \n
\n \n
\n
\n
\n
Grandfathering Account Statement
\n
\n \n
\n
\n \n
\n
\n \n this.setState({\n showPassword: !this.state.showPassword,\n })\n }\n onChange={this.handleChangeSelfPassword}\n value={selfPassword.value}\n onBlur={this.showError(\"selfPassword\")}\n isShowError={selfPassword.isError}\n errorMessage={selfPassword.errorMessage}\n\n />\n
\n Password should be at least 8 characters in length and should contain at least 1 uppercase letter (A-Z), 1 special character and 1 numeric value (0-9)\n
\n
\n
\n \n this.setState({\n confirmShowPassword: !this.state.confirmShowPassword,\n })\n }\n type={!!this.state.confirmShowPassword ? \"text\" : \"password\"}\n height={15}\n onChange={this.handleChangeConfirmSelfPassword}\n value={ConfirmSelfPassword.value}\n onBlur={this.showError(\"ConfirmSelfPassword\")}\n isShowError={ConfirmSelfPassword.isError}\n errorMessage={ConfirmSelfPassword.errorMessage}\n\n />\n
\n
\n \n
\n  \n \n
\n
\n \n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { investorData, userId, token } = authReducer;\n return { investorData, userId, token };\n },\n { getcaptialgainStatment }\n)(GAS);\n","import React, { Component } from \"react\";\nimport { List } from \"../transactions/nfoAndNewPurchase\";\nimport Signbutton, { Debtbutton } from \"../../forms/button\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { connect } from \"react-redux\";\nimport { Input } from \"../../forms/input\";\nimport { BUILD_URL } from \"../home\";\nimport { getNetworthPortfolio } from \"shared/store/actions/mailback\";\nimport CustomizedDialogs from \"../../home/customModal\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport { MAILBACK_URL } from \".\";\nimport { formatDate } from \"../../forms/captalize\";\nimport { MailBackBreadCrumb } from \"./mailback\";\nimport { EYE_ICON, EYE_ICON_HIDDEN } from \"../../forms/appEssentials\";\n\nclass Networth extends Component {\n constructor(props) {\n super(props);\n this.state = {\n startDate: {\n value: new Date(),\n error: \"\",\n },\n pan: {\n value: \"\",\n isError: false,\n },\n endDate: { value: new Date(), error: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n Mode: \"Email\",\n showPassword: false,\n confirmShowPassword: false,\n };\n }\n\n handleChangeSelfPassword = (event) => {\n this.setState({\n selfPassword: { value: event.target.value },\n });\n };\n handleChangeConfirmSelfPassword = (event) => {\n this.setState({\n ConfirmSelfPassword: { value: event.target.value },\n });\n };\n handleChangeEmail = (event) => {\n this.setState({\n email: { value: event.target.value },\n });\n };\n\n handleChangePan = (event) => {\n if (event.target.value.length <= 10) {\n this.setState({\n pan: {\n value: event.target.value.toUpperCase(),\n },\n });\n }\n };\n\n panvadilation = (event) => {\n if (/[A-Za-z]{5}\\d{4}[A-Za-z]{1}/.test(event.target.value) === false) {\n this.setState({\n pan: {\n value: \"\",\n isError: true,\n errorMessage: \"enter a vaild pan\",\n },\n });\n }\n };\n\n showError = (label) => (event) => {\n const {\n [label]: { value },\n } = this.state;\n\n if (label === \"selfPassword\") {\n if (this.state.selfPassword.value === \"\" || !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)) {\n if(!/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(this.state.selfPassword.value)){\n this.setState({\n selfPassword: {\n\n isError: true,\n errorMessage: `Password should be atleast 8 characters in length and should contain at least 1 Upper Case alphabet(A-Z).1 Special Character and 1 Numeric Value (0-9)`,\n },\n });\n return;\n }\n }else if(this.state.selfPassword.value === \"\") {\n this.setState({\n selfPassword: {\n value:\"\",\n isError: true,\n errorMessage: `Password is Mandatory`,\n },\n });\n return;\n }\n } else if (label === \"email\") {\n this.setState({\n [label]: {\n value,\n isError:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? true\n : !value,\n errorMessage:\n /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) === false\n ? `Enter a valid email address`\n : \"\",\n },\n });\n } else if (label === \"ConfirmSelfPassword\") {\n this.setState({\n [label]: {\n value,\n isError:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? true\n : !value,\n errorMessage:\n this.state.selfPassword.value !==\n this.state.ConfirmSelfPassword.value ||\n this.state.ConfirmSelfPassword.value === \"\"\n ? `The Password and Confirm Password do not match`\n : \"\",\n },\n });\n } else {\n this.setState({\n [label]: {\n value,\n isError: !value,\n },\n });\n }\n };\n\n changeDateOn = (event) => () => {\n this.setState({\n Mode: event,\n selfPassword: { value: \"\" },\n ConfirmSelfPassword: { value: \"\" },\n email: { value: \"\" },\n });\n };\n\n closeYesModal = () => {\n this.setState({\n ConfirmSelfPassword: { value: \"\" },\n selfPassword: { value: \"\" },\n email: { value: \"\" },\n open: false,\n });\n this.props.history.replace(\n MAILBACK_URL + \"/investor/investor-selection/Networth\"\n );\n };\n closeNoModal = () => {\n this.setState({\n open: false,\n });\n this.props.history.replace(\"/\");\n };\n\n onDateChange = (label, event) => {\n this.setState({ [label]: { value: event } });\n };\n\n submit = async () => {\n const { ConfirmSelfPassword, selfPassword, email, showPassword,\n confirmShowPassword, ...others } = this.state;\n if (this.state.Mode === \"Email\") {\n if (\n !this.state.selfPassword.value ||\n !this.state.ConfirmSelfPassword.value ||\n !this.state.email.value ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n ) ||\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n ) ||\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.selfPassword.value\n )\n ) {\n this.setState({\n selfPassword: {\n value: \"\",\n isShowPasswordError: true,\n },\n });\n }\n if (\n !/^(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(\n this.state.ConfirmSelfPassword.value\n )\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isShowPasswordError: true,\n },\n });\n }\n if (!this.state.selfPassword.value) {\n this.setState({\n selfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `Password is Mandatory`,\n },\n });\n }\n if (!this.state.ConfirmSelfPassword.value) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `ConfirmSelfPassword is Mandatory`,\n },\n });\n }\n if (\n !this.state.email.value ||\n !/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/.test(\n this.state.email.value\n )\n ) {\n if (!this.state.email.value) {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: `Email is Mandatory`,\n },\n });\n } else {\n this.setState({\n email: {\n value: \"\",\n isError: true,\n errorMessage: `Enter a valid email address`,\n },\n });\n }\n }\n if (\n !!this.state.ConfirmSelfPassword &&\n !!this.state.selfPassword &&\n this.state.selfPassword.value !== this.state.ConfirmSelfPassword.value\n ) {\n this.setState({\n ConfirmSelfPassword: {\n value: \"\",\n isError: true,\n errorMessage: `Password does not match`,\n },\n });\n }\n } else {\n let startDateValue;\n startDateValue = new Date().toLocaleDateString(\"en-US\", {\n month: \"2-digit\",\n year: \"numeric\",\n day: \"numeric\",\n });\n\n const params = {\n fromdate: \"01/01/1970\",\n todate: formatDate(new Date()),\n mylp: \"\",\n emailid: this.state.email.value,\n distCode: this.props.token,\n pswd: this.state.selfPassword.value,\n funds: \"\",\n pagetype: \"Email\",\n distUid: this.props.userId,\n };\n\n const response = await this.props.getNetworthPortfolio(params);\n\n if (response) {\n this.setState({\n open: true,\n });\n }\n }\n } else if (this.state.Mode === \"PAN\") {\n if (\n !this.state.pan.value ||\n !/[A-Za-z]{5}\\d{4}[A-Za-z]{1}/.test(this.state.pan.value)\n ) {\n if (!/[A-Za-z]{5}\\d{4}[A-Za-z]{1}/.test(this.state.pan.value)) {\n this.setState({\n pan: {\n value: \"\",\n isError: true,\n errorMessage: \"Enter a vaild pan\",\n },\n });\n }\n } else {\n let startDateValue;\n const params = {\n fromdate: \"01/01/1970\",\n todate: formatDate(new Date()),\n mylp: \"\",\n emailid: \"\",\n pan: this.state.pan.value,\n distCode: this.props.token,\n pswd: this.state.pan.value,\n funds: \"\",\n pagetype: \"PAN\",\n distUid: this.props.userId,\n };\n\n const response = await this.props.getNetworthPortfolio(params);\n\n if (response) {\n this.setState({\n open: true,\n error: \"Data inserted Successfully\",\n });\n }\n }\n }\n };\n\n render() {\n const { investorData } = this.props;\n const { selfPassword, ConfirmSelfPassword, email, pan, Mode } = this.state;\n return (\n
\n \n \n
\n \n
\n
\n
\n
Networth Report
\n
\n \n \n
\n {Mode === \"PAN\" ? (\n
\n \n
\n \n
\n
\n ) : (\n
\n
\n \n
\n
\n \n this.setState({\n showPassword: !this.state.showPassword,\n })\n }\n onChange={this.handleChangeSelfPassword}\n value={selfPassword.value}\n onBlur={this.showError(\"selfPassword\")}\n isShowError={selfPassword.isError}\n errorMessage={selfPassword.errorMessage}\n\n />\n
\n Password should be at least 8 characters in length and should contain at least 1 uppercase letter (A-Z), 1 special character and 1 numeric value (0-9)\n
\n
\n
\n \n this.setState({\n confirmShowPassword: !this.state.confirmShowPassword,\n })\n }\n type={!!this.state.confirmShowPassword ? \"text\" : \"password\"}\n height={15}\n onChange={this.handleChangeConfirmSelfPassword}\n value={ConfirmSelfPassword.value}\n onBlur={this.showError(\"ConfirmSelfPassword\")}\n isShowError={ConfirmSelfPassword.isError}\n errorMessage={ConfirmSelfPassword.errorMessage}\n\n />\n
\n
\n \n
\n  \n
\n )}\n \n
\n
\n \n
\n );\n }\n}\n\nexport default connect(\n ({ authReducer }) => {\n const { investorData, userId, token } = authReducer;\n return { investorData, userId, token };\n },\n { getNetworthPortfolio }\n)(Networth);\n","import React, { Component } from \"react\";\nimport { Route, Switch } from \"react-router-dom\";\nimport MailBackInvestor from \"./investor\";\nimport InvestorSelection from \"./InvestorSelection\";\nimport SubmitRequest from \"./submitRequest\";\nimport MailBackSoa from \"./mailBackSoa\";\nimport Cas from \"./consolidatedAccountStatement\";\nimport ELSS from \"./ELSS\";\nimport CAN from \"./CAN\";\nimport CGS from \"./CGS\";\nimport GAS from \"./GAS\";\nimport Networth from \"./networth\";\n\nexport default class MailbackRouter extends Component {\n render() {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n );\n }\n}\n","import React, { Component } from \"react\";\nimport { Paper } from \"@material-ui/core\";\nimport { connect } from \"react-redux\";\nimport { getFundWiseEarnings } from \"shared/store/actions\";\nimport { ALL } from \"shared/store/types\";\nimport CustomLoading from \"../CustomLoader\";\nimport { FormatCurrency } from \"../currencyFormatter\";\nimport CustomLoader from \"../../forms/customLoader\";\n\nexport const MyEarnings_URL = `/my-earnings`;\n\nclass MyEarnings extends Component {\n async componentDidMount() {\n this.getEarnings();\n }\n\n getEarnings = async () => {\n window.scrollTo({\n top: 0,\n behavior: \"smooth\",\n });\n const params = {\n ReqBy: ALL,\n Agent: this.props.token,\n Fund: \"176\",\n };\n await this.props.getFundWiseEarnings(params);\n };\n\n get total() {\n const { earnings = [] } = this.props;\n return earnings.reduce((prev, curr) => prev + curr.Amount, 0);\n }\n\n render() {\n const { earnings = [], count } = this.props;\n return (\n
\n
My Earnings
\n {count > 0 && !earnings.length ? (\n 0 && !earnings.length ? true : false}\n display={true}\n />\n ) : (\n \n
\n
\n
\n Brokerage Details(Last 6 Months)\n
\n
\n Total: \n
\n
\n {!!earnings.length ? (\n earnings.map((earning, index) => (\n \n ))\n ) : (\n
No Data Found
\n )}\n
\n
\n )}\n
\n );\n }\n}\n\nexport default connect(\n ({ transactions, authReducer, loading }) => {\n const { earnings } = transactions;\n const { token } = authReducer;\n const { count } = loading;\n return { token, earnings, count };\n },\n { getFundWiseEarnings }\n)(MyEarnings);\n\nexport class EarningsBlock extends Component {\n render() {\n const { earning, index } = this.props;\n return (\n
\n
{earning.BankName}
\n
\n
\n
Period:
\n
\n {earning.Fromdate} to {earning.ToDate}\n
\n
\n
\n
Amount
\n
\n \n
\n
\n
\n\n \n
\n );\n }\n}\n","import React, { Component } from \"react\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { Input } from \"../../forms/input\";\nimport Signbutton from \"../../forms/button\";\nimport { connect } from \"react-redux\";\nimport { getProfileData } from \"shared/store/actions/profile\";\nimport { userLogin } from \"shared/store/actions\";\nimport { useParams } from \"react-router\";\nexport const CobrandingCollaterals_URL = `/Cobranding-Collaterals`;\nclass CobrandingCollaterals extends Component {\n constructor(props) {\n super(props);\n this.state = {\n arnCode: { value: \"\" },\n name: { value: \"\" },\n email: { value: \"\" },\n mobile: { value: \"\" },\n };\n }\n async componentDidMount() {\n await this.props.getProfileData({\n Agent: this.props.token,\n UserId: this.props.userId,\n });\n this.setState({\n arnCode: { value: this.props.token },\n name: { value: this.props.profileData.Distributor_Name },\n email: { value: this.props.profileData.Email },\n mobile: { value: this.props.profileData.MobileNo },\n });\n }\n submit = () => {\n const base_url = \"https://www.sundarammutual.com/Co-BrandedCollaterals?\";\n const params = btoa(\n `Type=INVWISE&ARNCODE=${this.state.arnCode.value}&ARNNAME=${this.state.name.value}&EMAIL=${this.state.email.value}&Mobile=${this.state.mobile.value}&ReqRMID=0`\n );\n const main_url = base_url + params;\n window.open(main_url);\n };\n render() {\n const { name, email, arnCode, mobile } = this.state;\n\n return (\n
\n
Co-branding Collaterals
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nexport default connect(\n ({ profileReducer, authReducer }) => {\n const { profileData } = profileReducer;\n const { token, userId } = authReducer;\n return {\n profileData,\n token,\n userId,\n };\n },\n {\n getProfileData,\n }\n)(CobrandingCollaterals);\n","import React, { Component } from \"react\";\nimport { Route, Switch, Redirect } from \"react-router-dom\";\nimport Amc from \"./amc\";\nimport Nav from \"./nav\";\nimport MailBack from \"./mailBackRequest\";\nimport TransactionHistory from \"./transactionHistory\";\nimport NctTransactionHistory from \"./nctHistory\";\nimport Social from \"./social\";\nimport Support from \"./support\";\nimport Settings from \"./settings\";\nimport FeedBack from \"./feedback\";\nimport DashboardComponent from \"./dashboard/index\";\nimport InvestorComponent from \"./investors/index\";\nimport TransactionComponent from \"./transactions/index\";\nimport MailbackRouter from \"./mailBackRequest/mailBackRoutes\";\nimport MyEarnings from \"./myEarnings/index\";\nimport EKYC from \"../home/transactions/ekycForm\";\nimport { connect } from \"react-redux\";\nimport MailBackComponent from \"./mailBackRequest/mailback\";\nimport CobrandingCollaterals from \"./transactions/CobrandingCollaterals\";\nimport NewInvestorRegistration from \"./transactions/newInvestor/NewInvestorRegistration\";\nclass AppRouter extends Component {\n render() {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n {!!this.props.tran_enable_flag &&\n this.props.tran_enable_flag === \"N\" ? (\n \n ) : (\n \n )}\n \n \n );\n }\n}\n\nexport default connect(({ authReducer }) => {\n const { tran_enable_flag } = authReducer;\n return {\n tran_enable_flag,\n };\n}, null)(AppRouter);\n","import React, { Component } from \"react\";\n\nexport default class Footer extends Component {\n render() {\n return (\n \n
\n Mutual fund investments are subject to market risks, read all scheme related documents carefully.\n
{\" \"}\n
\n © 2021, Sundaram Asset Management Company Private Limited, All rights\n reserved.\n
\n \n );\n }\n}\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { withStyles } from \"@material-ui/core/styles\";\nimport Drawer from \"@material-ui/core/Drawer\";\nimport CssBaseline from \"@material-ui/core/CssBaseline\";\nimport AppBar from \"@material-ui/core/AppBar\";\nimport Toolbar from \"@material-ui/core/Toolbar\";\nimport Divider from \"@material-ui/core/Divider\";\nimport AppRouter from \"./appRoutes\";\nimport { drawerStyles } from \"./appCss\";\nimport List from \"@material-ui/core/List\";\nimport Tooltip from \"@material-ui/core/Tooltip\";\nimport ListItem from \"@material-ui/core/ListItem\";\nimport ListItemText from \"@material-ui/core/ListItemText\";\nimport Collapse from \"@material-ui/core/Collapse\";\nimport ExpandLess from \"@material-ui/icons/ExpandLess\";\nimport ExpandMore from \"@material-ui/icons/ExpandMore\";\nimport { connect } from \"react-redux\";\nimport { userLogout , storeCurrentPage , clearingFirstTimeInvestorJourney} from \"shared/store/actions\";\nimport { getProfileData } from \"shared/store/actions/profile\";\nimport { INVESTOR_URL } from \"./investors\";\nimport { NEW_TRANSACTION_URL } from \"./transactions\";\nimport { MAILBACK_URL } from \"./mailBackRequest\";\nimport { NAV_URL } from \"./nav\";\nimport { HISTORY_URL } from \"./transactionHistory\";\nimport { NCTHISTORY_URL } from \"./nctHistory\";\nimport CustomLoading from \"../home/CustomLoader\";\nimport { MyEarnings_URL } from \"./myEarnings\";\nimport { CobrandingCollaterals_URL } from \"./transactions/CobrandingCollaterals\";\n\nimport {\n dashboardActive,\n investorsActive,\n cobrandingInActive,\n cobrandingActive,\n newTransactionActive,\n navActive,\n mailBackActive,\n transactionHistoryActive,\n ekycActive,\n earningsActive,\n supportActive,\n settingsActive,\n dashboardInActive,\n investorsInActive,\n newTransactionInActive,\n navInActive,\n mailBackInActive,\n transactionHistoryInActive,\n ekycInActive,\n earningsInActive,\n supportInActive,\n settingsInactive,\n LOGOUT_ICON,\n APP_LOGO,\n second_app_logo,\n} from \"../forms/appEssentials\";\nimport Footer from \"../auth/footer\";\n\nexport const BUILD_URL = process.env.PUBLIC_URL;\nexport const EKYC_URL = `/e-KYC`;\nclass PermanentDrawerLeft extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n open: false,\n pathname: \"\",\n responsiveDrawer: false,\n };\n }\n componentDidMount() {\n this.props.getProfileData({\n Agent: this.props.token,\n UserId: this.props.userId,\n });\n }\n handleClick = () => {\n this.setState({\n open: !this.state.open,\n });\n this.props.history.push(MAILBACK_URL);\n };\n\n goToRoute = (path) => () => {\n this.props.history.push(path);\n if (!path.includes(MAILBACK_URL)) {\n this.setState({\n open: false,\n responsiveDrawer: false,\n });\n }\n this.props.clearingFirstTimeInvestorJourney();\n if (path === INVESTOR_URL) {\n this.props.storeCurrentPage(1)\n this.props.clearingFirstTimeInvestorJourney();\n }\n };\n\n logOut = () => {\n this.props.userLogout();\n this.props.history.replace( \"/\");\n };\n\n openResponsiveDrawer = () => {\n this.setState({\n responsiveDrawer: !this.state.responsiveDrawer,\n });\n };\n render() {\n const { classes, location, tran_enable_flag } = this.props;\n const { responsiveDrawer } = this.state;\n const { pathname } = location;\n return (\n
\n \n \n \n \n \"logo\"\n
\n \"logo\"\n {/*
\n \n
\n\n \n Last login time :{\" \"}\n \n {!!this.props.lastLogin ? (\n this.props.lastLogin\n ) : (\n \n )}\n
\n
*/}\n \n \n \n
\n
\n
\n\n \n \n \n \"logo\"\n \n
\n\n
\n
\n
\n
\n {/*
Logged in as
\n
Distributor
*/}\n
\n
\n
\n {!!this.props.userId\n ? this.props.userId\n .split(\" \")\n .reduce(\n (p, c) => p.concat(c.charAt(0).toUpperCase()),\n \"\"\n )\n : \"\"}\n
\n
\n \n
\n
\n
\n {this.props.profileData.Distributor_Name}\n
\n
\n
\n
ARN Code:
\n
\n\n
\n
\n {this.props.token}\n
\n
\n
\n
\n \n {tran_enable_flag === \"N\" ? (\n
\n \n \n \n Dashboard\n
\n \n \n \n \n Investors\n \n \n \n \n \n New Transaction\n \n \n\n \n \n \n NAV\n \n \n \n \n \n Mailback Request\n \n \n {this.state.open ? : }\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Transaction History\n \n \n \n \n \n NCT Request History\n \n \n {!!this.props.profileData.PAN &&\n this.props.profileData.PAN.charAt(3) === \"P\" && (\n \n \n \n Get Co-Branded Creatives\n \n \n )}\n \n \n \n eKYC\n \n \n\n \n \n \n View my Earnings\n \n \n \n ) : (\n
\n \n \n \n New Transaction\n
\n \n \n )}\n \n \n\n \n
\n
\n
\n
\n
\n
\n {!!this.props.userId\n ? this.props.userId\n .split(\" \")\n .reduce((p, c) => p.concat(c.charAt(0).toUpperCase()), \"\")\n : \"\"}\n
\n
\n \n
\n
\n
\n {this.props.profileData.Distributor_Name}\n
\n
\n
\n
ARN Code:
\n
\n\n
\n
\n {this.props.token}\n
\n
\n
\n
\n \n {tran_enable_flag === \"N\" ? (\n
\n \n \n \n Dashboard\n
\n \n \n \n \n Investors\n \n \n \n \n \n New Transaction\n \n \n {/* \n window.open(\n \"https://www.sundarammutual.com/Co-BrandedCollaterals\"\n )\n }\n >\n \n
Co-Branded Creatives
\n */}\n \n \n \n NAV\n \n \n \n \n \n Mailback Request\n \n \n {this.state.open ? : }\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Transaction History\n \n \n \n \n \n NCT Request History\n \n \n {!!this.props.profileData.PAN &&\n this.props.profileData.PAN.charAt(3) === \"P\" && (\n \n \n \n Get Co-Branded Creatives\n \n \n )}\n \n \n \n eKYC\n \n \n\n \n \n \n View my Earnings\n \n \n \n ) : (\n
\n \n \n \n Transact\n
\n \n \n )}\n \n
\n \n
\n