{"version":3,"sources":["images/logoTextLight.png","graphql/mutation.js","helpers/TokenStorage.js","images/sadIcon.png","images/slickRed.png","images/slickGreen.png","images/happyIcon.png","components/MessageNotification.js","pages/LoginPage.js","helpers/CredentialsStorage.js","images/userPhoto.jpg","components/SwitchLightandDark.js","helpers/IsDarkModeStorage.js","helpers/UserProfileStorage.js","components/UserMenu.js","images/arrowLeft.png","components/tour/TourInvestment.js","components/tour/TourHistory.js","helpers/ShowTourStorage.js","components/tour/TourStepCero.js","images/arrowRight.png","components/tour/TourCalendar.js","images/arrowRightSoles.png","components/SwitchSolesTour.js","components/tour/TourSolesDolares.js","components/tour/TourNotification.js","components/tour/Tour.js","components/InprogressInvestmentReport.js","helpers/UserInfoAllInvestmentStorage.js","images/logoSmallLight.png","images/logoSmallDark.png","helpers/IsSolesStorage.js","components/SideBarComponent.js","helpers/SidebarStorage.js","images/logoTextDark.png","components/SwitchSolesComponent.js","graphql/querys.js","helpers/JwtUtils.js","helpers/RefreshToken.js","client.js","components/RevenuePaymentsReport.js","components/PlanInProgressCard.js","components/PlansInProgress.js","images/loading.gift.webp","components/CurveChartComponent.js","pages/HomePage.js","components/CalendarComponent.js","components/CardRentability.js","components/ImportantDayListComponent.js","pages/CalendarPage.js","images/imageunavailable.jpeg","components/ModalComponent.js","components/Transactions.js","components/HistoryChartComponent.js","components/ButtonsComponent.js","components/CircleHistory.js","pages/MyHistory.js","images/googlePlay.png","images/appStore.png","pages/DownloadApp.js","images/padlock.png","pages/WrongPassword.js","images/padlockVerification.png","components/CodeActivationComponent.js","components/CountDownTimer.js","pages/AccountVerificationScreen.js","pages/ChangePassword.js","components/router/RouterPrincipal.js","App.js","index.js"],"names":["LOGIN_USER","gql","_templateObject","_taggedTemplateLiteral","RECOVERY_PASSWORD","_templateObject2","VALIDATE_OTP","_templateObject3","CHANGE_PASSWORD","_templateObject4","REFRESH_TOKEN","_templateObject5","saveToken","token","localStorage","setItem","saveRefreshToken","refreshToken","MessageNotification","_ref","type","message","_jsxs","className","concat","children","_jsx","src","slickRed","slickGreen","alt","sadIcon","happyIcon","width","height","FontAwesomeIcon","icon","faTimes","onClick","handleDismiss","toast","dismiss","messageNotify","_ref2","position","duration","custom","LoginComponent","navigate","useNavigate","emailState","setEmailState","useState","passwordState","setPasswordState","showPasswordState","setShowPasswordState","rememberCredentialsState","setRememberCredentialsState","getItem","useEffect","window","innerWidth","isMobile","credentials","email","password","loginUser","useMutation","handleLogin","async","_loginResponse$tokenA","data","loginResponse","variables","tokenAuth","isChecked","removeItem","error","console","saveCredentials","onSubmit","e","preventDefault","LogoTextLight","placeholder","value","onChange","target","autoComplete","faEye","faEyeSlash","togglePasswordVisibility","id","checked","htmlFor","style","cursor","Toaster","SwitchLightandDark","isDarkModeState","setIsDarkModeState","toggleSwitch","isDark","display","alignItems","justifyContent","flexDirection","fontSize","marginRight","color","whiteSpace","appearance","left","borderRadius","backgroundColor","opacity","transition","zIndex","border","getProfile","userProfileString","JSON","parse","UserMenu","imageProfileUrl","defaultImageUser","UserPhoto","GoBell","TourInvestment","handleContinue","AiOutlineDollar","ArrowLeft","boxShadow","TourHistory","AiOutlineHistory","to","saveShowTourStorage","showTour","getShowTourStorage","TourStepCero","handleCloseTour","handleGetOutClick","fontWeight","textDecoration","TourCalendar","LuCalendarDays","SwitchSolesTour","isSolesTourState","setIsSolesTourState","isSwitchOnState","setSwitchOnState","marginBottom","marginLeft","bottom","newState","top","transform","TourSolesDolares","ArrowRightSoles","TourNotification","TourComponentStyled","styled","div","Tour","setTourVisibleState","currentPage","setCurrentPage","document","body","overflow","pageNumber","getTourStep","InprogressInvestmentReport","isSolesState","dataReport","isSoles","reportSoles","userInfoAllInvestment","reportDollar","userInfoInvestment","stringify","getMoneySymbol","totalBalanceAmmount","parseFloat","totalBalanceRentability","totalBalanceRentabilityIncreased","capitalInCourse","CountUp","start","end","separator","decimals","saveIsSoles","getIsSoles","_localStorage$getItem","SideBarComponent","selectedMenu","setSelectedMenu","isSidebarOpenState","setSidebarOpen","hoverStates","setHoverStates","isOpenStorage","selectedMenuStorage","handleLogout","handleMenuClick","menu","saveSelectedMenuStorage","handleMouseEnter","prev","handleMouseLeave","handleOpenIconClick","isOpen","getContainerMenuStyle","menuID","isHovered","background","gap","getIconStyle","isSelected","logoSmallDark","logoTextlight","logoSmallLight","RiLogoutCircleLine","onMouseEnter","onMouseLeave","Link","location","href","HiMiniComputerDesktop","FaArrowRightToBracket","SwitchSolesComponent","onSwitchChange","switchStyles","beforeStyles","content","padding","USER_PROFILE","USER_INFO_ALL_INVESTMENT","GET_NEXT_PAYMENTS","RENTABILITY_GRAPH","IMPORTANT_DAYS","_templateObject6","_templateObject7","REMAINING_PAYMENT_DAYS","_templateObject8","PAST_PAYMENT_DAYS","_templateObject9","getTokenExpiredDate","decoded","jwtDecode","decodedToken","expTimestamp","exp","Date","httpLink","createHttpLink","uri","authLink","setContext","_","headers","isTokenExpired","Promise","resolve","client","ApolloClient","link","cache","InMemoryCache","log","_refreshTokenResponse","refreshTokenResponse","mutate","mutation","setTimeout","redirect","then","newToken","authorization","RevenuePaymentReport","loading","useQuery","fetchPolicy","nextPayments","paymentInSoles","paymentInDolares","moneySymbol","String","hasDollarPayments","Object","values","length","handleClick","faArrowRight","map","payment","index","_payment$rentability","planName","Number","rentability","paymentDate","PlanInProgressCard","rentabilityIncreased","startDateInvestment","finishDateInvestment","rentabilityPercent","amount","rentabilityAmmount","deadline","rentabilityFloat","amountFloat","currentMoney","name","FiArrowUp","PlansInProgress","dataReportInCourse","invesmentInCourse","plan","CurveChartComponent","selectedValue","setSelectedValue","timeLine","setTimeLine","isLineChart","setIsLineChart","dataValues","rentabilityGraph","rentabilityInPen","rentabilityInUsd","item","month","slice","toUpperCase","toLowerCase","Monto","amountPoint","date","year","sort","a","b","formatYAxis","shouldDisplayChart","faArrowTrendDown","faChartSimple","event","ResponsiveContainer","all_months","quarter_year","mid_year","two_years","three_years","AreaChart","CartesianGrid","horizontal","vertical","XAxis","dataKey","tick","fill","Tooltip","active","payload","label","textAlign","YAxis","tickFormatter","Area","stroke","strokeWidth","dot","r","BarChart","barSize","Bar","isAnimationActive","setAttribute","_ref3","Loading","HomePage","setIsSolesState","tourVisibleState","userName","setUserName","useLocation","forceTour","URLSearchParams","search","get","isDarkModeStorage","fetchData","query","userProfile","firstName","handleSwitchChange","CalendarComponent","setCurrentMonthState","setCurrentYearState","importantDays","pastPaymentDates","pastPaymentDays","day","parts","split","remainingPaymentDates","remainingPaymentDays","importantDates","specialDate","Calendar","tileClassName","view","dateWithoutTime","getFullYear","getMonth","getDate","getTime","some","d","includes","toISOString","formatShortWeekday","locale","toLocaleDateString","weekday","onActiveStartDateChange","_ref4","activeStartDate","selectRange","prev2Label","prevLabel","nextLabel","next2Label","formatMonthYear","formattedDate","capitalizedMonth","charAt","textColor","CardRentability","currentMonthState","currentYearState","showPassRentabilityState","payDay","description","ImportantDayListComponent","CalendarPage","_dataRemaining$remain","_dataPast$pastPayment","handleDaySelect","selectedDateState","setPassRentabilityState","loadingRemaining","errorRemaining","dataRemaining","loadingPast","errorPast","dataPast","getButtonStylesRentability","isSelectedButton","getDarkModeFromLocalStorage","darkModeFromStorage","lenght","onSelectDay","ModalComponent","onClose","voucherImages","selectedImage","setSelectedImage","modalWidth","setModalWidth","modalHeight","setModalHeight","MAX_MODAL_WIDTH","handleClose","img","Image","onload","stopPropagation","handleBack","faArrowLeft","maxWidth","maxHeight","imageSrc","DefaultImage","onError","Transactions","_dataReport$userInfoA","_dataReport$userInfoA2","filterSelectedState","defaultBankLogoUrl","Finniu","modalOpenState","setModalOpenState","setVoucherImages","dataSoles","invesmentInSoles","dataDolar","invesmentInDolares","dataToRender","hasData","toggleModal","_item$deadline","depositBank","bankLogoUrl","operationCode","rentabilityPerMonth","boucherList","boucher","boucherImage","sum_amount_plans","amountList","sum","forEach","HistoryChartComponent","_countInCourse","_countFinished","_countInProcess","userInvestmentData","investmentDataInDollar","investmentDataInSoles","countFinished","countInCourse","countInProcess","countTotal","investmentFinishedList","invesmentFinished","investmentInCourseList","investmentInProcessList","invesmentInProcess","countPlanesActive","totalInvestments","chartData","COLORS","Math","round","PieChart","Pie","cx","cy","innerRadius","outerRadius","paddingAngle","entry","Cell","ButtonsComponent","selectButtonsState","setSelectButtonState","handleButtonClick","buttonState","getButtonStyles","CircleHistory","reportDollars","totalInvestment","investmentData","totalInCourse","totalFinished","totalInProcess","currency","countInvestment","calculateTotal","MyHistory","DownloadApp","logoTextLight","googlePlay","appStore","WrongPassword","setEmail","recoveryPassword","Padlock","trim","success","CodeActivationComponent","codesState","setCodesState","firstInputRef","useRef","current","focus","validOtpUser","otpCode","join","action","handleChange","prevCode","nextFieldName","parseInt","getElementsByName","handlePaste","pastedData","clipboardData","getData","codeInputs","keys","i","prevCodes","gridTemplateColumns","key","ref","lineHeight","maxLength","onPaste","CountDownTimer","onFinish","CountdownCircleTimer","isPlaying","size","colors","colorsTime","remainingTime","currentTime","prevTime","isNewTimeFirstTick","setOneLastRerender","val","isTimeUp","AccountVerificationScreen","code1","code2","code3","code4","showResendButton","setShowResendButton","showTimer","setShowTimer","padlockVerification","handleResendCode","_Fragment","handleTimerFinish","ChangePassword","newPassword","setNewPassword","setRedirect","changePasswordMinimal","onCompleted","timer","clearTimeout","overflowX","RouterPrincipal","Routes","Route","path","element","LoginPage","ReactGA","initialize","App","ApolloProvider","Router","ReactDOM","createRoot","getElementById","render","React","StrictMode"],"mappings":"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","file":"static/js/main.b0060413.chunk.js","sourcesContent":["export default __webpack_public_path__ + \"static/media/logoTextLight.c52cdbf5.png\";","import { gql } from \"@apollo/client\";\nexport const LOGIN_USER = gql`\n mutation TokenAuth($email: String!, $password: String!) {\n tokenAuth(email: $email, password: $password) {\n token\n refreshToken\n }\n }\n`;\n\nexport const RECOVERY_PASSWORD = gql`\n mutation RecoveryPassword($email: String!) {\n recoveryPassword(email: $email) {\n success\n successSendCode\n }\n }\n`;\n\nexport const VALIDATE_OTP = gql`\n mutation validateOtp($email: String!, $otpCode: String!, $action: String!) {\n validOtpUser(input: { otpCode: $otpCode, email: $email, action: $action }) {\n success\n }\n }\n`;\n\nexport const CHANGE_PASSWORD = gql`\n mutation changePasswordMinimal($email: String!, $newPassword: String!) {\n changePasswordMinimal(input: { email: $email, newPassword: $newPassword }) {\n success\n }\n }\n`;\n\nexport const REFRESH_TOKEN = gql`\n mutation RefreshToken($refreshToken: String) {\n refreshToken(refreshToken: $refreshToken) {\n refreshToken\n payload\n token\n refreshExpiresIn\n }\n }\n`;\n","export const saveToken = (token) => {\n localStorage.setItem(\"token\", token);\n};\n\nexport const getToken = () => {\n return localStorage.getItem(\"token\");\n};\n\nexport const removeToken = () => {\n localStorage.removeItem(\"token\");\n};\n\nexport const saveRefreshToken = (refreshToken) => {\n localStorage.setItem(\"refreshToken\", refreshToken);\n};\n\nexport const getRefreshToken = () => {\n return localStorage.getItem(\"refreshToken\");\n};\n\nexport const removeRefreshToken = () => {\n localStorage.removeItem(\"refreshToken\");\n};\n","export default __webpack_public_path__ + \"static/media/sadIcon.14d05116.png\";","export default __webpack_public_path__ + \"static/media/slickRed.eafdcf9c.png\";","export default __webpack_public_path__ + \"static/media/slickGreen.c41951bc.png\";","export default __webpack_public_path__ + \"static/media/happyIcon.0a22447a.png\";","import toast from \"react-hot-toast\";\nimport sadIcon from \"../images/sadIcon.png\";\nimport slickRed from \"../images/slickRed.png\";\nimport { faTimes } from \"@fortawesome/free-solid-svg-icons\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport slickGreen from \"../images/slickGreen.png\";\nimport happyIcon from \"../images/happyIcon.png\";\n\nconst MessageNotification = ({\n type = \"error\",\n message = \"hubo un error \",\n}) => {\n const handleDismiss = () => {\n toast.dismiss();\n };\n\n return (\n \n
\n \n\n \n
\n
\n \n \n {type === \"error\" ? \"Upss, algo salió mal\" : \"Completado con éxito\"}\n \n

{message}

\n
\n \n );\n};\n\nexport const messageNotify = ({\n message = \"hubo un error \",\n type = \"error\",\n position = \"bottom-center\",\n duration = 3000,\n}) => {\n toast.custom(, {\n position: position,\n duration: duration,\n });\n};\n\nexport default MessageNotification;\n","import LogoTextLight from \"../images/logoTextLight.png\";\nimport React, { useState, useEffect } from \"react\";\nimport { useMutation } from \"@apollo/client\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faEye, faEyeSlash } from \"@fortawesome/free-solid-svg-icons\";\nimport { LOGIN_USER } from \"../graphql/mutation\";\nimport { saveToken } from \"../helpers/TokenStorage\";\nimport { saveRefreshToken } from \"../helpers/TokenStorage\";\nimport { isMobile } from \"react-device-detect\";\nimport {\n getCredentials,\n saveCredentials,\n saveRememberPasswordChecked,\n} from \"../helpers/CredentialsStorage\";\nimport { useNavigate } from \"react-router-dom\";\nimport { isRememberPasswordChecked } from \"../helpers/CredentialsStorage\";\nimport { messageNotify } from \"../components/MessageNotification\";\nimport { Toaster } from \"react-hot-toast\";\n\nconst LoginComponent = () => {\n let navigate = useNavigate();\n let [emailState, setEmailState] = useState(\"\");\n\n let [passwordState, setPasswordState] = useState(\"\");\n let [showPasswordState, setShowPasswordState] = useState(false);\n let [rememberCredentialsState, setRememberCredentialsState] = useState(\n isRememberPasswordChecked()\n );\n\n useEffect(() => {\n if ((window.innerWidth <= 375 || window.innerWidth <= 640) && isMobile) {\n navigate(\"/download-app\");\n } else {\n navigate(\"/login\");\n }\n }, [navigate]);\n useEffect(() => {\n const token = localStorage.getItem(\"token\");\n\n if (token) {\n navigate(\"/home\");\n } else {\n const credentials = getCredentials();\n\n if (credentials) {\n setEmailState(credentials.email || \"\");\n setPasswordState(credentials.password || \"\");\n }\n }\n }, [navigate]);\n\n let [loginUser] = useMutation(LOGIN_USER);\n\n let handleLogin = async () => {\n try {\n let { data: loginResponse } = await loginUser({\n variables: { email: emailState, password: passwordState },\n });\n\n if (loginResponse?.tokenAuth?.token) {\n saveToken(loginResponse.tokenAuth.token);\n saveRefreshToken(loginResponse.tokenAuth.refreshToken);\n\n saveRememberPasswordChecked(rememberCredentialsState);\n\n if (rememberCredentialsState === true) {\n saveCredentials(emailState, passwordState);\n } else {\n localStorage.removeItem(\"credentials\");\n }\n\n navigate(\"/home\");\n } else {\n messageNotify({ message: \"Usuario y/o contraseña incorrectos\" });\n }\n } catch (error) {\n console.error(\"failed to login:\", error);\n messageNotify({ message: \"Usuario y/o contraseña incorrectos\" });\n }\n };\n\n let togglePasswordVisibility = () => {\n setShowPasswordState(!showPasswordState);\n };\n\n return (\n {\n e.preventDefault();\n handleLogin();\n }}\n >\n
\n
\n
\n \n

\n Hola, ingresa a tu cuenta\n

\n setEmailState(e.target.value)}\n autoComplete=\"username\"\n />\n
\n setPasswordState(e.target.value)}\n autoComplete=\"current-password\"\n />\n
\n \n
\n
\n\n navigate(\"/wrong-password\")}\n className=\"text-[14px] md:text-[16px] lg:text-[18px] font-normal flex justify-end ml-30 pb-[10px] self-end my-5 mr-[20px] cursor-pointer \"\n >\n ¿Olvidaste tu contraseña?\n

\n\n
\n \n setRememberCredentialsState(!rememberCredentialsState)\n }\n />\n\n \n

\n Guardar mis credenciales para los futuros ingresos\n

\n
\n\n \n Entrar\n \n \n navigate(\"/download-app\")}\n >\n ¿Aún no tienes una cuenta?\n

\n
\n
\n
\n \n );\n};\n\nexport default LoginComponent;\n","export const saveCredentials = (email, password) => {\n localStorage.setItem(\"userEmail\", email);\n localStorage.setItem(\"userPassword\", password);\n};\n\nexport const getCredentials = () => {\n const email = localStorage.getItem(\"userEmail\");\n const password = localStorage.getItem(\"userPassword\");\n return { email, password };\n};\n\nexport const removeCredentials = () => {\n localStorage.removeItem(\"userEmail\");\n localStorage.removeItem(\"userPassword\");\n};\n\nexport const saveRememberPasswordChecked = (isChecked) => {\n localStorage.setItem(\"rememberPassword\", isChecked);\n};\n\nexport let isRememberPasswordChecked = () => {\n return localStorage.getItem(\"rememberPassword\") === \"true\";\n};\n","export default \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEBLAEsAAD/4QCaRXhpZgAASUkqAAgAAAADAA4BAgBQAAAAMgAAABoBBQABAAAAggAAABsBBQABAAAAigAAAAAAAABEZWZhdWx0IEF2YXRhciBQcm9maWxlIEljb24gVmVjdG9yLiBTb2NpYWwgTWVkaWEgVXNlciBJbWFnZS4gVmVjdG9yIElsbHVzdHJhdGlvbiwBAAABAAAALAEAAAEAAAD/4QV3aHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj4KCTxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CgkJPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczpJcHRjNHhtcENvcmU9Imh0dHA6Ly9pcHRjLm9yZy9zdGQvSXB0YzR4bXBDb3JlLzEuMC94bWxucy8iICAgeG1sbnM6R2V0dHlJbWFnZXNHSUZUPSJodHRwOi8veG1wLmdldHR5aW1hZ2VzLmNvbS9naWZ0LzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGx1cz0iaHR0cDovL25zLnVzZXBsdXMub3JnL2xkZi94bXAvMS4wLyIgIHhtbG5zOmlwdGNFeHQ9Imh0dHA6Ly9pcHRjLm9yZy9zdGQvSXB0YzR4bXBFeHQvMjAwOC0wMi0yOS8iIHhtbG5zOnhtcFJpZ2h0cz0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3JpZ2h0cy8iIHBob3Rvc2hvcDpDcmVkaXQ9IkdldHR5IEltYWdlcy9pU3RvY2twaG90byIgR2V0dHlJbWFnZXNHSUZUOkFzc2V0SUQ9IjEzMzcxNDQxNDYiIHhtcFJpZ2h0czpXZWJTdGF0ZW1lbnQ9Imh0dHBzOi8vd3d3LmlzdG9ja3Bob3RvLmNvbS9sZWdhbC9saWNlbnNlLWFncmVlbWVudD91dG1fbWVkaXVtPW9yZ2FuaWMmYW1wO3V0bV9zb3VyY2U9Z29vZ2xlJmFtcDt1dG1fY2FtcGFpZ249aXB0Y3VybCIgPgo8ZGM6Y3JlYXRvcj48cmRmOlNlcT48cmRmOmxpPk1hcmlhIFNoYXBpbG92YTwvcmRmOmxpPjwvcmRmOlNlcT48L2RjOmNyZWF0b3I+PGRjOmRlc2NyaXB0aW9uPjxyZGY6QWx0PjxyZGY6bGkgeG1sOmxhbmc9IngtZGVmYXVsdCI+RGVmYXVsdCBBdmF0YXIgUHJvZmlsZSBJY29uIFZlY3Rvci4gU29jaWFsIE1lZGlhIFVzZXIgSW1hZ2UuIFZlY3RvciBJbGx1c3RyYXRpb248L3JkZjpsaT48L3JkZjpBbHQ+PC9kYzpkZXNjcmlwdGlvbj4KPHBsdXM6TGljZW5zb3I+PHJkZjpTZXE+PHJkZjpsaSByZGY6cGFyc2VUeXBlPSdSZXNvdXJjZSc+PHBsdXM6TGljZW5zb3JVUkw+aHR0cHM6Ly93d3cuaXN0b2NrcGhvdG8uY29tL3Bob3RvL2xpY2Vuc2UtZ20xMzM3MTQ0MTQ2LT91dG1fbWVkaXVtPW9yZ2FuaWMmYW1wO3V0bV9zb3VyY2U9Z29vZ2xlJmFtcDt1dG1fY2FtcGFpZ249aXB0Y3VybDwvcGx1czpMaWNlbnNvclVSTD48L3JkZjpsaT48L3JkZjpTZXE+PC9wbHVzOkxpY2Vuc29yPgoJCTwvcmRmOkRlc2NyaXB0aW9uPgoJPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KPD94cGFja2V0IGVuZD0idyI/Pgr/7QCiUGhvdG9zaG9wIDMuMAA4QklNBAQAAAAAAIYcAlAAD01hcmlhIFNoYXBpbG92YRwCeABQRGVmYXVsdCBBdmF0YXIgUHJvZmlsZSBJY29uIFZlY3Rvci4gU29jaWFsIE1lZGlhIFVzZXIgSW1hZ2UuIFZlY3RvciBJbGx1c3RyYXRpb24cAm4AGEdldHR5IEltYWdlcy9pU3RvY2twaG90b//bAEMACgcHCAcGCggICAsKCgsOGBAODQ0OHRUWERgjHyUkIh8iISYrNy8mKTQpISIwQTE0OTs+Pj4l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\"","import React from \"react\";\nimport { saveIsDarkModeStorage } from \"../helpers/IsDarkModeStorage\";\nconst SwitchLightandDark = ({ isDarkModeState, setIsDarkModeState }) => {\n const toggleSwitch = () => {\n setIsDarkModeState(!isDarkModeState);\n saveIsDarkModeStorage(!isDarkModeState);\n };\n\n return (\n \n \n \n {/* {isDarkModeState ? \"DarkMode\" : \"LightMode\"} */}\n \n \n \n {isDarkModeState ? \"\\u263E\" : \"\\u2600\"}\n \n \n );\n};\n\nexport default SwitchLightandDark;\n","export const saveIsDarkModeStorage = (isDark) => {\n localStorage.setItem(\"isDark\", isDark);\n};\n\nexport const getIsDarkModeStorage = () => {\n return localStorage.getItem(\"isDark\");\n};\n\nexport const removeIsDarkModeStorage = () => {\n localStorage.removeItem(\"isDark\");\n};\n","export const setProfile = (profile) => {\n localStorage.setItem(\"userProfile\", JSON.stringify(profile));\n};\n\nexport const getProfile = () => {\n const userProfileString = localStorage.getItem(\"userProfile\");\n return userProfileString ? JSON.parse(userProfileString) : null;\n};\n\nexport const removeProfile = () => {\n localStorage.removeItem(\"userProfile\");\n};\n","import React from \"react\";\nimport { GoBell } from \"react-icons/go\";\nimport defaultImageUser from \"../images/userPhoto.jpg\";\nimport SwitchLightandDark from \"./SwitchLightandDark\";\nimport { getProfile } from \"../helpers/UserProfileStorage\";\n\nconst UserMenu = ({ isDarkModeState, setIsDarkModeState }) => {\n const { imageProfileUrl } = getProfile() ? getProfile() : defaultImageUser;\n const UserPhoto = imageProfileUrl ? imageProfileUrl : defaultImageUser;\n\n return (\n
\n \n
\n \n
\n\n \"User\"\n
\n );\n};\n\nexport default UserMenu;\n","export default \"data:image/png;base64,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\"","import React from \"react\";\nimport { AiOutlineDollar } from \"react-icons/ai\";\nimport ArrowLeft from \"../../images/arrowLeft.png\";\n\nconst TourInvestment = ({ handleContinue }) => {\n return (\n
\n
\n
\n
\n \n
\n \n\n

\n ¡Ahora puedes ver el detalle de{\" \"}\n

\n

\n tus inversiones desde la web!\n

\n

\n Dale click a este ícono para visualizar tus inversiones{\" \"}\n

\n\n \n Entendido\n \n
\n
\n
\n );\n};\n\nexport default TourInvestment;\n","import React from \"react\";\nimport { AiOutlineHistory } from \"react-icons/ai\";\nimport ArrowLeft from \"../../images/arrowLeft.png\";\n\nconst TourHistory = ({ handleContinue }) => {\n return (\n
\n
\n
\n
\n \n
\n \n

\n ¡Puedes visualizar el historial de tus\n

\n

\n tus inversiones desde la web!\n

\n

\n Dale click a este ícono para visualizar a detalle el historial de\n

\n

\n tus inversiones\n

\n\n \n Entendido\n \n
\n
\n
\n );\n};\n\nexport default TourHistory;\n","export const saveShowTourStorage = (showTour) => {\n localStorage.setItem(\"showTour\", showTour);\n};\n\nexport const getShowTourStorage = () => {\n return localStorage.getItem(\"showTour\");\n};\nexport const removeShowTourStorage = () => {\n localStorage.removeItem(\"showTour\");\n};\n","import React from \"react\";\nimport ArrowRight from \"../../images/arrowRight.png\";\nimport { saveShowTourStorage } from \"../../helpers/ShowTourStorage\";\nimport { useNavigate } from \"react-router-dom\";\n\nconst TourStepCero = ({ handleContinue, handleCloseTour }) => {\n const navigate = useNavigate();\n const handleGetOutClick = () => {\n navigate(\"/home?forceTour=false\");\n handleCloseTour();\n saveShowTourStorage(false);\n };\n\n return (\n
\n
\n
\n

\n ¡Acompáñame a conocer las\n

\n

\n funcionalidades del{\" \"}\n dashboard!\n

\n

\n Conoce que puedes visualizar en cada uno de los iconos{\" \"}\n

\n \n
\n
\n
\n \n\n \n Continuar\n \n
\n
\n );\n};\n\nexport default TourStepCero;\n","export default \"data:image/png;base64,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\"","import React from \"react\";\nimport { LuCalendarDays } from \"react-icons/lu\";\nimport ArrowLeft from \"../../images/arrowLeft.png\";\n\nconst TourCalendar = ({ handleContinue }) => {\n return (\n
\n
\n
\n ;\n
\n \n
\n \n

\n ¡Conoce las novedades que puedes encontrar en tu calendario!\n

\n

\n Dale click a este ícono para visualizar las fechas de tus pagos de\n rentabilidad y las promociones que lanzamos\n

\n \n Entendido\n \n
\n
\n
\n );\n};\n\nexport default TourCalendar;\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAt0AAAERCAYAAACn9RugAAAACXBIWXMAACxLAAAsSwGlPZapAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAACPqSURBVHgB7d3LchRX9u/xtbMu0v/ff8dfPSGCgggXT2AxPCOLJ7A07OgjoXoCYHZmiCcAnkC3dvQQMTpDxOgMXX4Cig5bcnjS1cf2aVRVmfvsnXVBErpU7rxUXr6faFogqrARLuqXK9deSwQAAAAAAAAAgCJTAgBAxnZPddt+bNaGK4GvVkSrFa2ClfAndbCizY/td5Wor6fPUUqbz40/Hz5MpH3FL70y+eaiP/k2o7T5sbr4Oa2lZz96SvV9Hfxr8u9mHuf1lfbMRx0+fiT18HGdu6onACqP0A0AcGbD8zQ4axkHaR3odk15/x1ovTINyucCcluqq/c5xOu+ubDom6/ZRxvYlQ3o5qNX0/3//KPR23ig+gKgVAjdAICZNx/0Sn9ZVmyQ9n1ZtZ+zIdpWnMMArVVbq1k12bWijPn0zJt0z37HfP27tqquPGU+p3qEc6B4CN0AUBHTQF3X/qpt5TgfprUoG7AJ0sXTV7bdxVTPp8HcU7WurZr/16d6l1AO5AehGwBKYtrqEVaodWCq0t43BOrKm4RybSrkXi8Q/6MyodxWyv96p9kVAJkhdANAgdhgHVaqZdT2pPa1lqBNqIYrE8i7s0Cu9I+2dYUKOZAOQjcA5MwNwbotQDb6JiB0bcvKtDpOGAfiIXQDwILYcF2T4dqst1pkVaswWFOxRl7Nwri5EHxve8c37zaOBcCtCN0AkLLL4dr8zbsmVK1RItM2FS36PVVx4GqEbgBIiJ0O8vvyaFVrfzU8xEjlGtXWU6K7gZYfPc87Joij6gjdAOBg2ndtQsW39FwDcwuDOBVxVBGhGwBuMW0P8bT6xoSFVS0ynRYCICbbmmL7xE1F/H2tKV1GGaKsCN0AcE7YIrLkr52rYK8JATsN/ck3mW5d1Hr8Mfy+6I/hzyndF+XNKqF2pN30+yO7Ov2yT9LvOFZOd82fvSxf+rOuDVfqvvr8Oa1W7GKh8feDFa3HPxf26of/vrO7HXb1PZs73fTHIVy/py0FSfv76b/bvq4/CUSvy/juZPjfmw5kf+t+c09SROgGUFmXe7A54OgkDM82OJug3DehtD8LzN44INugPKqZn/Mb/TihuMimgb4uo7b9sfkataehfbwVVCafDz+2BRdMq+FaeW/rqtb9y93PF1/AvA7/cbau62pXrrkQ9kRe/c9W85mkhNANoDIuVrFpE7nBpAqtu2GI1vIv5QU9W3EOA/Skwtwh+KQmDOl/GrZtld0GdDv5xlbZlae/Nn8GK/y3O+kND9RbWlIwj0ngfnPb49IM3oRuAKUV9mLrs3Wq2BeYsCI2SHevCtME6WLZ/XWwej6YT6vmFayYE8Jxre/N68QfyTuZ80JVKfUojfnzhG4ApTH+izUwlWz1bYV7sXthq4cO2z0+2hYPAnV1zUK53XAaeG3Pk29k3G++KuXW87Qc28OZjVrjmHaU6rI93ENd+0EivB+oQF5v3m8+lYQRugEUVkVD9qz1w1T1PtpKtTKBeqRqXUI1orgqkJe4bSUM4bYn/L/OascczKyGSeC2Fe52lOdpHbx9fG95XRJG6AZQGNN2kYqE7B7BGotg+8nrkwPGZQ3jJvwch6vslbxljX05uQZuy/73sdlqPpKEEboB5JY9+Pjb8nBdAvnW/G1lqw6lrMCJrcBNWkH8mnTlj0avihM+kG/nw7iJD9+a0NouSZtKX4k+tv3gtKKUx+HJ4J3573NNHNBeAqD0piP8lJbvtNZrpgpVpr7TXli51vJjGK6lcUzVGmUQtqmMvHYQBGslqYqPW1E8tU8VvJgOT4fPzXvIjjjyVeNBGn8/E7oBLNTnlhHvu5Lcwh4v9ghMuDZVayrXqKISBXGq4AVz+MvgiQ7klThKq8od/toCABk6X80+txGsqOyBRvuG/NFuzqPnGrjeFUF8TQomXNKj1DG94Pk06eP+II7MBdb+ZmtpW1JC6AaQurA3e+lsu+DVbAI2kLDD0+HatEfcfLN/N7SlOGYTUTZb9SPBQsU5ODll/jz3al7jRVp3NAjdAFJh30zNh2/F9mYXr6J1sUWE/msgE7smONV1Y7WI1XBTJT2iDWVxDk/O3mhRSYz56zVU49Ff6OkGkFeX2ka2pVjV7HCCiKjgR7/uHXfYZgfkwnRiShjClR0VWow7ZXbknA5knwCejbgHJy9jZCCA3CnoSL9ZFTtsEzmrHXPIESiOaUtKUdrVbB+4VsF+Qy0dEcCTN1nx/oMkLI1V8IRuAJFMg7Z5I3lckKpT2Ittvr1XqtYdfap3CdlAeRQphBPAk5VEH/d10phiQugGcKtLByHXJN9mIZtWEaB6bAg/146yJjlFAI/vb6eD3UDLtqQgjVXwhG4AVypQ0CZkA7jSrCfc1+ueJ9/mdYMmATy6pPu4LyN0A0hVQVpHwp5sLcFbQjaAKOx0lJrU1kyi+i6vIwrDAK7lNYcwrxd3Hvc8TKB/8fje0o4kiNANVNx06oi5qn9i/kpYkxwGbXuSPDz4WFNH9GQDSMqlfvA1yRmmoHwpzT7u8+jpBpAY+2aT4/F+fdFyJJ689z81jgjZANIWtqIs+WuB+OsqXNaTryr4NIB/NWwcbVT478Q0+7jPo70EQCzhGmZffWdum9mr91wF7fANhZYRADkRHsjMZy943zNFCe2p/aqtoo/Txz1+j5n/boZtY9xsNR9KggjdQMnl+EAk1WwAhTDtBZ+cd1mT/AhX0auGvP5ryYsVceZx2z75kedv1KL1gfe3Ws0/S4II3UBJhWvYtX6epwORYW+21u/tUpqqVWgAlENe21DKfAAzZh93z1eNR/JJ+rWl4T+jPPGrs8afk2zlIXQDJZLH9pFZ28jZ0h7VbABlE7ah6GA7VwFc9JEO1Nut+809Kbjx3dqhrXC3xUUgnenXYf9k8E8V4b3Rr8vDJNsdCd1AweWwfYS2EQCVZAsf3kC2lSffST4CeOHbTw5Ohi9FtNMUkctj/w5PBj9E6s8/F9iTQOgGCipn00f69lQ9I/0AYMwG8NooWDMFkcd5OIhZxPaTmAtwelut5oPzn9g/OdszdyQez/n8xMcGErqBAslZVXsWtOnPBoDrhQcxtVrPSwA31e+9vE8/Ofxl8MS8x7wSN2Efd+fSxcXByScToL2X8/4iSY8NJHQDBZCjqjZBGwBiyFkA70kgL/JW/Y4zqcRSojc2W0tHlz9/eDJa1xK8kfklOsGE0A3kVI6q2gRtAEiBDeCeX3uahx5we/hSpLa/2aofyQJNJpXYwO1UYLppffv4gifa+nhTMX/QSeiChNAN5MxkLfuTBU8gCQ9DKnP7kR5tAEhfeAhzpJ/mYApKTym1V5f6ftbV77gr3u20rM1W89FNj4k6wSTJw5SEbiAnzs3VXpMFCcf7Kdln6ggALE5exhBm2fsdezTgNX3clx2eDN9o0XP3aSd5mJLQDSxQHlpImKMNAPll+5Ani3jmnrqRgtR7vw9PzkwYVq6HFvsmcD+cpw1k/+ezHVPJfy7z+2IKiitCN7AAOWgh6Zt/9ut6Qx2VfXUwAJRBXlbRp1H9jjka8NqDk9f8s9bMP+udRJDUZkpCN5ChBbeQzPq0ORAJAMUVHsAMvG1TsbXV77YswHTud9x+57iB+6aDk1fZNUWvqOvgk+rrJnQDGVhk2KZ9BADK61z/t52Asog7p+HWy5rXeBG19STmLO7IgXv2zz0ZvIv0fmyq+1v3mh2JidANpGTar21uxj2R7CsRtI8AQMUcnA62F9l+EqX15PAfZ+u6rqLMzL5EH221ljbEwf5Pg1fKkycRnpLIvG5CN5CwRfZr26q2KPWC9hEAqK4ctJ+EBy+va8mIO4vb/vr+WeOh691bl75u87V8FPe9ldANJGSBYTusageD5ivaRwAA551rP1nE9JMvWk/izuKWOUcD3sT2dXtLww9R5nW7trKcR+gGYgpXtIt+HGjZlgxR1QYAzGs6/US02HF5bclY2HqivLdagpeywMA9FbWve57FO3P8GgBcLOhw5Liq7TX3OhlvCgMAlMOCq9/O/Lo87CR0Tung5JO5K+29jPKcuCvhCd1ARIsI20wgAQAkbdHV72iCZ1utZedJJ5eFv3dd+xDpSTH/HQjdwJwWE7b1kSjvNS0kAIA05bn6nUQ/9VWybjEhdAO3WEDY5mAkAGAh8lb9TitwWw4r4WNtpyR0A9fIOmyHLSSB7PvDxhFhGwCwaOPResET8w61Lgtg7vbub7aWtiUlLqMD41wEELqBSxYRtplCAgDIq3Dut/Z2lKhvJdvq943zvpNwcDKwfd3teR8fp8WE0A1MZBy2+7aqHdQar5hCAgAoisnWyyfmvXJVstNTnryq68bbvyT8nunSYuK6KIfQjcrLPGzTrw0AKLgFHbz8YtlOXFm2mBC6UVkZh+2eSPCakX8AgDIJW0/82lNTif5OMmw9sct2kgrfUVtMjP5Wq/lniYjQjcqxK2h9qT3PYoMk/doAgCqw760DXfshymr1JCQRvrNqMSF0ozLefNArvy+PnpjbQjuSMsI2AKAq7Pvrb0vDH2SBIwbjhG+XRTkuByoJ3Si9c2H7qaR8BU7YBgBUzeHPgx+0yvRg5bVcw3fURTlW1JndngAldvjL4Im5+v4wqW6nFrht2A5vNZmrXgI3AKAq/nY62M1L4LYCJdtDPfzwt58Hu38/1e15n6cleCsR/d/m4GmUx1PpRilNTiPvStq3uswVtfLUPkEbAFA15r32eRYtm3GY6vKrmmq8vq3yvWvuinumSBelJ908tmuKbQ8jPB4oj8wmkpiw7ZvbV8zYBgBUUdzAbbdNmv//OssJYlut5Vc3PejgZPjGvMFH2r4Z5UAl7SUoBXtqOrzFpfW7VF/ANmyrxoOte80OgRsAUEW2dTNW4NbSHZ01n9qWTF/5D3QYwFPVNpH3pR0NePDTYPu6ByklryUqHTyZ96FUulFo2R2S1Ee+aj4jaAMAquzwH2fruq7eiLuef9Z4eHlnRZar5m1bSF01Nq5qOdk/Gfwz4tjD/ldnjQfzHKik0o3CslerdkRRmockpwckt1pLGwRuAECVff/rYNUE7l1x1zN3ix9dtSSuc/c/eo9bS9s2kJs3346ELSHpsCvsrz1sqXXUavfKvAcqqXSjcLLo22b0HwAAn9k2zqGu2XXpbXEzDtwRClgHp4Ntk5CfS7qV754E8mLrfnPP/sAeqKwtDf8Z5ReY90AloRuFMR6+PzIvPh1pRE8UhG0AAC5KIHD3/bo86txpdsVBFuH7fMuJy8zueQ5UErpRCOGhjUB2JMU2EsI2AAAXJbFtUone2GwtHUlMmdzpVmrHfHhvBzNEep7oI/N73Lj5MUCOhS+wQL9McfD+hdtKAADgs8OTszdaVKQxehcFz24b1RdVBuG7J9EvMm49UEnoRi7ZK+s/locvAy3bko6+uYp9HQyarzoRVrgCAFAVByfDl3FaOs377IvH95Z2JCUZ9XzP7bbfL6EbuZNyKwlhGwCAW8RdfpN24D4vL+H7tgOVhG7kRuqtJGyRBADgVpPil3NLiN02udla2paM5SF833SgktCNhUt7KgmHJAEAmE/c5Td22+TmvdvH56Vp/+ezHfO+/0SlujTvaiqQ15v3m1fmGUI3Fipcx+rJS0nnhdEzV5wdwjYAALebjAa0k0pc35Ov3Da5COc2XD6WbF17oJLQjYWwL+yRru2mdPKYvm0AACJYxPKbLNjwXYv3+3Jw9cQWQjcyl+ZBSXtbZzRs7BC2AQCYTwKzuHMZuM/Lst/btrVutpqPrvg8kI3vfx2sBkPZTeOgJH3bAAC4cdnAeJ5fl4eu2yazlGXLSc18Tf566WtSFyBl04OS/kg/TeEyry+BPNtkuQ0AAJHZWdxa9Jo48gPpFCFwW527/9EzH7ZN1fs47ar3aKjtQqELXxdPgBTZMYDjW1bJTyaxM0D9s8YDtkkCABCdncUdd/lNp4DvwVt3m3v2wKcO5LWkRKkvq+m0lyAVaY4BtK0kI9XoMG8bAAA3cUcDZrn8Jk2HJ6N1LYGdotaWhF2e2U2lG4lLsbptW0k69nACgRsAADd2UokJ3LviyC6/KUPgtjZb9SNf+Y+0+T1JwoIgWDv/YyrdSEyq1W2mkgAAEFvc0YB5WH6TFrtUx1Snn0tCLq+FJ3QjEba6bW412avmtiSIqSQAACSjCqMB40p6rvdXZ40/Txfl0F6CWOwLODz5rHXSg+f7dri8bSUhcAMAEN/4bjSB+yZ2woltN1GXJo+4+q0xXJ9+n9ANZ+n1busj88J+eNU2JwAAEF3cSSV+XTaqcp7KBm/bFpLEdBMT3me7SQjdcGJfvClUt3v2pO9Wa6kyL2wAANJ28NNg27xn74iz4FlRZnEn6fH95lM7pUVi0J58N/0+Pd2IxB7AGAW1N0lvleSgJAAAyZscnLR93CvioCyjAeOIe8By2tdNpRtzO/xl8MS+cBMO3GF1e9NcTRK4AQBIzrlJJU6B2xbEqh64Lfs1iFPxnvZ1E7pxK/uiPTwZvNOB2B5rpxfuVeyL2W6E4qAkAADJG+ma81SxcDSgKYgJQrGCtxeunKe9BDebjAK0G6uSC9vmhTxqSKeK/WEAAGRhcvZqR9xUYlKJi4OTM5OJ1HrU59m7+oRuXCmtRTf0hgEAkC57cNJUV103TvbtBDEC99V2TT6qOcw6t3tHCN34QhqHJaluAwCQvrgHJ5Xojc3W0pHgWpMugHcRnyZ1Ac4JD0sGsmNedYm1k9jq9hbVbQAAUhXepdZD54OTk/drAvctRp/qXVPtlqgI3QjZF+rvS4NdHUjkPqUb9MJh+neWqG4DAJCyOBsn7XCDrfsUyOZhp60dnAx6EvFrzfQSyPe/DlbtZkntcDDgOtPJJLSTAACQPnunOsY5rB6TSqJRoiLnGyrdFWdfpP5Ikly3bududzbvMwYQAIAshH3ctjXUTTipRBBJEOiPKmLpmtBdUWm0k7BVEgCA7MVZgDNuA2VSSVSqJl3RkZ5C6K6isJ1kNLRzJtuSjL4SbarbHL4AACBLByfDlyK6LQ7swUnOXblR2utrCSI9h57uipm0k0SeL3kdO3fSzvNkvBAAANkK53G79nFr2WNvhruRGka+WGFOd0XYdpI/locvAy3bkpjg2VZrOcl+cAAAMIfJPG7bVtKW6HrhsAPaQWM5OBlEajChvaQC7AsznNupk6luy2wU4DK3pAAAWAC7xM6UTtsSXT9c8U7gjk2H7bXz99LTXlJy+6ejx5PNVG1JAKMAAQBYrMPT4XP3rdHBC1a8x2f/DFTEw6tUukssPFyhg6Tmbvb9QJ517jf3BAAALMThP87WtdY74sAWzjbv0xaaBPNnsC0REbpLyLaTjHRtV4tekwQoLd2R19jo3OfKGACARRn3cauX4qZnx/oKYjNV7jUTutsSEaG7ZOw4wOFI3kiC7SRsqQIAYPF8qTmvec9rH7cd9NBflpW6jNp6MvpQB7pdU95/B1qH7Rvq1t513dda9c3zPyql+0rqPVMx7Hs13f9rCu2w2nFEI6G7RCbjAHfEcUD+JczeBgAgJw5PRuuBDrbFQTiPu7WYu9W7p7o9DdQ2TCtRX5tgvKJF2Z70ld9kuFLTcmHPjDIpO7CfmczYu31EiJr8T4XfD+dnmyeZTGQnjNgH2AOPXRvOlXi9QHwTzmtdG8r/849GbyOjixFGBpbEZDh+IhXpWTsJBy0AAMgFEx4/iFOVWx9ttZY2JCU2VDdrwxXfl1VTol4R7X1zLlS3pRj6JvuY6riYirn0phVzUZ4J6Rez0OziQannEhGV7oJLvH+bdhIAAHJlvATHcR63aj4TR9NAHYy8tlbBylWVatEmcI+mz/DCcq4uXk13ZTYN5lzFXMIK/Jd1dluJd0HoLrCE+7eZTgIAQA4pTx5H2sIyMd6pcf1d62k/dU2Ga7MqtciqCaC2TbVtArWMA/W4XWMaNgsYqnOB0F1Qdv62Pwrs2J8k+rd74QELppMAAJAr44klsiYRhX3cd5bCQ4Q2XP+/Pw3btgXE0+obLUHbVqp/k2G7Nkvz0yo10kLoLqBwKL4OdiQBSvT+6Kz5lM1UAADkz1CrdYmub6d/HJ6cvZmGa5m0gIQHFKlULwShu0DslervS4Ndc/Xq8gK8QvBss8WQfAAA8kpJ7Vsdvf68EoTDFQjXeULoLgh7e+k3PXxnXkBtia+nlOps3l0+FgAAkGNuM6GRL3ZQBZdABTDZfGQPTMbu32YcIAAAxXFwMqDNuvh6/lnjIZXunLMLb3SgE2kBYRwgAABApnrTbaCeILfCA5OBJNRzHTwjcAMAUCymzM2gg8LSR7bCPe0uoNKdQwkfmOyN53QudwUAABSKqY52TfBek3LrKXNxoUX3RCu7FfJfonRfeeOwenkr5GV2S6SdM661Whkv7wn3l6zo8R6TJEYrR2J+L8ei1IvNu83j858ndOdMkgcmZ/3bd+jfBgCgiAKt3yul1qTYeiYad22gFhX8aNer+zXpit/op33GbNcUMuVPw3bdVyaU+6s68NrK01+bcG5D+XirZgJs0LZ/VsGg+eq6McwcpMwRu2HST2jDJP3bAAAUnw2N3tLwg1pAxTYCW6numQp1z1SdP9oKdVahOgm7Jn/ZUG4uCkwQH7WnFXP7c5Oq+Yz5/fWn1Xhlfo+2Cj/6VO/Os++E0J0TdsOk0kltmAyebTF/GwCAUjg4+WSKaN5LyZ4Nkv1ZoLZB0wt6WVaqy4TQnQPjDZN6R+Lrm1tQG5t3G8cCAABKY//nsx3zHv9ckjcN1d0LVeo/Gj22VSeL0L1gBydDc+Wqk2gDGY+k4YoTAIBSOjgdbIsWG7zbEt0sXNu+aiX13kjVuuSG7BC6F8ROKPljefgy0LItMdnm/dFZY4MrUgAAym8cvvV3SlR7chhwajwFxFatpz3H2usTrvOB0L0AdkLJKKi90erCC8UJByYBAADyj9CdMRu4h7r2ThKYUMKBSQAAgGIgdGcowZGAHJgEAAAoENbAZ8SOBDSBO4kKtz0w+ZDADQAAUByE7gwc/jJ4onSwJzFncNsNk/5Z4yGHIQAAAIqF9pKUJTWDW4ne32wtbQsAAAAKh0p3ipIK3ObXeEHgBgAAKC4q3Sn52+lgN4kZ3H4gnc795p4AAACgsAjdCbNLb35fGuxqUesSDxNKAAAASoLQnaAwcDeH7xJYesNKdwAAgBKpCRJhl9588vT/JnADAADgMg5SJmC6ZTJu4Da3HY4ZCQgAAFA+tJfElNRad0YCAgAAlBeV7hiSCtyMBAQAACg3Kt2Okgzcj+8t7QgAAABKi9Dt4PtfB6v+SN5IzMAtEjzbai2/EgAAAJQaoTuiSeC2Fe4Vcdf3A3nG0hsAAIBqIHRHkFjgrsujzp1mVwAAAFAJHKScU0KBu0fgBgAAqJ664FaJBW679OYOM7gBAACqhvaSWyQauFl6AwAAUEmE7hsQuAEAAJAEQvc1CNwAAABICgcpr2AX30zmcDsHbqWl6581HhK4AQAAQKX7kiQ2TdrAPRqYCvcD1RcAAABUHqH7HAI3AAAA0kDoniBwAwAAIC2EbiFwAwAAIF01qbg3H/TKv2v6/wiBGwAAACmp9PQSG7h/bw6pcAMAACBVlQ7dfywPX2olq+KIwA0AAIB5VDZ0H5wMXwZatsURgRsAAADzqmRP9+Hp8LmI/l/irucPGv+DwA0AAIB5VK7SbQO31npH3I1XuxO4AQAAMKdKjQzcPx09VjrYE3fjwM1qdwAAAERQmdD9/a+DVX8kdlLJirghcAMAAMBJJdpL7PIbE7jfCIEbAAAAC1CXkktg22Tfr8tG5w6BGwAAAG5KX+keBTVb4W6LIxO4H3XuNLsCAAAAOCp16LazuOMsv/ED6RC4AQAAEFdpQ/dkFvdTcaS1ftG539wTAAAAIKZSTi85/GXwRAfyShzZwP343tKOAAAAAAkoXeieHJz8QRwnlahAXm/ebzpXyAEAAIDLShW6404qMV+M481W85EAAAAACSpVT3fMSSW90VljQwAAAICElSZ0x5xUMl5+80D1BQAAAEhYKUJ3zEklfbZNAgAAIE2F7+n+/tfBqj+SH8SREr2x2Vo6EgAAACAlha5024OTJnC/EUd2NCCBGwAAAGkrdOiOc3DSjgZkFjcAAACyUNjQbfu4XQ9OKi1dZnEDAAAgK4UM3Qc/Dba11jvipjfyGA0IAACA7BTuIGXMjZN2UslDJpUAAAAgS4WrdE82TjqteBcJXhC4AQAAkLVChW67AEccD07aSSVbreVXAgAAAGSsMO0lto/bXCLsigPzmzzebDUfCQAAALAAhah02z5u82/6Utz0RqrREQAAAGBBChG64/Rxs+IdAAAAi5b70G3ncYtjH7dI8IzADQAAgEXLdU+3CdxrWut34kLL3ta9Jm0lAAAAWLjcVrptH7cJ3E4HJ42eP2g8EwAAACAHchu6fak5t5WEfdwPVF8AAACAHMhl6LbjAQMt2+KEPm4AAADkS+56uidr3m0fd1uioo8bAAAAOZS7SneMtpKe7zVeCAAAAJAzuap0x9k66dflYedOsysAAABAzuSm0j3ZOvlcHGitXxC4AQAAkFe5Cd1x2koe31vaEQAAACCnchG6Y0wr6dvxgAIAAADk2MJDd5y2EpHgBeMBAQAAkHcLD93ObSV2PGBr+ZUAAAAAObfQ0B2jrYTxgAAAACiMhYXuNx/0inNbSSC0lQAAAKAwFha6f1saubeV3G/uCQAAAFAQCwnd4eFJ0U8lOtpKAAAAUDgLCd1DXXsnLmgrAQAAQAHVJWPhqneHthIlcrxJWwkAAAAKKNNKd5yZ3CPV6AgAAABQQJmGbteZ3Fpr2koAAABQWEoyYqvcQ137INH1tlrNBwIAAAAUVGaV7pGu7YoDXzUeCQAAAFBgmYRue3hSi6xJVFr2aCsBAABA0WVT6XY7PMlMbgAAAJRC6qH78HTotnmSmdwAAAAoiVQPUk4OT9pFOG2JhsOTAAAAKI1UK92uIwI5PAkAAIAySS102yp3oGVbouLwJAAAAEomtdA9qXJHfx6HJwEAAFAyqYRu1yo3mycBAABQRqmE7qH2Xkp0vcf3lnYEAAAAKJnEQ/fh6XBNRK1LVIHQVgIAAIBSSr7SrbXTIpyt+809AQAAAEoo0dBtq9wu696VeM8EAAAAKKlEQ7fWelciUiLHm636kQAAAAAllVjoPvhpsC0Oi3BGqtERAAAAoMQSC93KkycSFYtwAAAAUAGJhO5JL/eqRMQiHAAAAFRBMpVul4klVLkBAABQEbFDt+vEEqrcAAAAqIr4lW5NLzcAAABwk1ih+++n/25r0ZG3T1LlBgAAQJXECt2+1OjlBgAAAG7hHLptlTvQsi0RUeUGAABA1TiHbqrcAAAAwHycQvekyr0mEVHlBgAAQBU5he6hX1uTiCvflcgxVW4AAABUkVt7iSfRW0uUosoNAACASoocug9+GmxLxCq30du82zgWAAAAoIIih27lyWOJKhCq3AAAAKgsFeXB9gDlUNc+SDS9rVbzgQAAAAAVFanS7TQmkCo3AAAAKm7u0L37Qa/4WqKvfK/Ryw0AAIBqmzt01xrDdSWyIlGwDAcAAACI0F7iMCaQZTgAAADAnKH78HS4JizDAQAAAJzMFbqV6MhjAnUg+wIAAADg9pGB9gCltzT8ELGfmzGBAAAAwET9tgfYA5QS8QCl1poqNwAAADBxa3uJywbKwGvuCQAAAIDQjaHbbqDUImsSgdbBWw5QAgAAAJ/dGLoHgbctESntHQkAAACAmRtDt1IqamtJb+s+rSUAAADAedeGbpfZ3KLlWAAAAABccG3odpnN7TfktQAAAAC44NrQHehoByiVSLdzp9kVAAAAABdcGbpdWkt0QJUbAAAAuMqVoduptaTWOBYAAAAAX7gydPta1iUCJXLMbG4AAADgal+E7sOT0bqKuvY9ENa+AwAAANf4InQrFXwnEX01bLAQBwAAALjGF6E7amuJXfu+8UD1BQAAAMCVLoRuO7UkamsJa98BAACAm10I3S5TS2gtAQAAAG52IXRHXYhDawkAAABwu1nodlmIQ2sJAAAAcLtZ6A58HekApUVrCQAAAHC7Wej2PPlWIrALcWgtAQAAAG43C91aZFUiYCEOAAAAMB9PHPm1xrEAAAAAuNUsdNt2kXmfZB7b7dxVPQEAAABwq88HKbV+P++TdCCvBQAAAMBcPofuQfOV+dCb4zm9rfvNPQEAAAAwl1no7jxQfV/5j+Tm4N3zVeORAAAAAJjb/wehx3jNcqsxZwAAAABJRU5ErkJggg==\"","import React, { useState } from \"react\";\n\nconst SwitchSolesTour = ({ isSolesTourState, setIsSolesTourState }) => {\n const [isSwitchOnState, setSwitchOnState] = useState(isSolesTourState);\n\n const toggleSwitch = () => {\n const newState = !isSwitchOnState;\n setSwitchOnState(newState);\n setIsSolesTourState(newState);\n };\n\n return (\n \n \n \n {isSwitchOnState ? \"Soles\" : \"Dólares\"}\n \n \n \n \n \n );\n};\n\nexport default SwitchSolesTour;\n","import React, { useState } from \"react\";\nimport ArrowRightSoles from \"../../images/arrowRightSoles.png\";\nimport SwitchSolesTour from \"../SwitchSolesTour\";\n\nconst TourSolesDolares = ({ handleContinue }) => {\n const [isSolesTourState, setIsSolesTourState] = useState(true);\n\n return (\n
\n
\n
\n
\n
\n
\n {\" \"}\n {\" \"}\n
\n {\" \"}\n \n
\n
\n\n
\n

\n ¡Cambia con un click y visualiza tus\n

\n

\n inversiones en dólares y soles!\n

\n

\n Dale click al círculo para poder cambiar tu moneda y\n

\n

\n visualizar tus inversiones por cada moneda\n

\n
\n
\n\n \n Entendido\n \n
\n
\n
\n
\n );\n};\n\nexport default TourSolesDolares;\n","import React from \"react\";\nimport { GoBell } from \"react-icons/go\";\nimport ArrowRightSoles from \"../../images/arrowRightSoles.png\";\nimport { useNavigate } from \"react-router-dom\";\n\nconst TourNotification = ({ handleCloseTour }) => {\n const navigate = useNavigate();\n\n const handleGetOutClick = () => {\n navigate(\"/home?forceTour=false\");\n handleCloseTour();\n };\n\n return (\n
\n
\n
\n
\n
\n
\n \"arrow\"\n
\n
\n \n
\n
\n
\n

\n ¡Entérate de todo en tus\n

\n

\n notificaciones\n

\n

\n Dale click a este ícono para visualizar tus notificaciones.\n

\n \n Listo para comenzar\n \n
\n
\n
\n
\n
\n );\n};\n\nexport default TourNotification;\n","import React, { useState, useEffect } from \"react\";\nimport styled from \"styled-components\";\nimport TourInvestment from \"./TourInvestment\";\nimport { useNavigate } from \"react-router-dom\";\nimport TourHistory from \"./TourHistory\";\nimport TourStepCero from \"./TourStepCero\";\nimport TourCalendar from \"./TourCalendar\";\nimport TourSolesDolares from \"./TourSolesDolares\";\nimport TourNotification from \"./TourNotification\";\nimport { faTimes } from \"@fortawesome/free-solid-svg-icons\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport {\n getShowTourStorage,\n saveShowTourStorage,\n} from \"../../helpers/ShowTourStorage\";\n\nconst TourComponentStyled = styled.div`\n overflow-x: hidden;\n overflow-y: hidden;\n height: 100%;\n width: 100%;\n position: absolute;\n z-index: 1000;\n\n .body-tour {\n width: 100%;\n height: 100%;\n background-color: rgba(13, 58, 92, 90%);\n display: flex;\n flex-direction: column;\n justify-content: center;\n }\n\n .body-container {\n display: flex;\n flex-direction: column;\n align-items: start;\n line-height: 1.8;\n width: 100%;\n // height: 100%;\n }\n\n .body-text {\n // width: 657px;\n height: 151px;\n font-size: 25px;\n margin-left: 140px;\n }\n\n .row-buttons {\n display: flex;\n flex-direction: row;\n gap: 20px;\n margin-top: 180px;\n // padding-top: 50px;\n justify-content: start;\n margin-left: 290px;\n // padding-bottom: 380px;\n }\n\n span {\n color: #a2e6fa;\n }\n\n .button1 {\n width: 153px;\n height: 60px;\n background-color: #0d3a5c;\n border-radius: 26px;\n border: none;\n font-size: 24px;\n font-weight: normal;\n color: #ffffff;\n text-decoration: none;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n }\n\n .body-text h1 {\n font-weight: normal;\n color: #ffffff;\n }\n\n .body-text h2 {\n font-weight: normal;\n font-size: 30px;\n color: #ffffff;\n }\n // img {\n // width: 129px;\n // height: 109px;\n // margin-left: 30px;\n // }\n\n .body-tour svg {\n height: 49px;\n // position: fixed;\n top: 40px;\n right: 45px;\n margin: 15px;\n }\n\n .closed {\n position: fixed;\n }\n`;\n\n//Review this part please\nconst Tour = ({ setTourVisibleState }) => {\n const [currentPage, setCurrentPage] = useState(1);\n\n const navigate = useNavigate();\n\n useEffect(() => {\n const showTour = getShowTourStorage();\n if (showTour === \"true\") {\n setTourVisibleState(false);\n }\n document.body.style.overflow = \"hidden\";\n return () => {\n document.body.style.overflow = \"scroll\";\n };\n }, [setTourVisibleState]);\n\n const handleContinue = () => {\n setCurrentPage(currentPage + 1);\n };\n\n const handleCloseTour = () => {\n setTourVisibleState(false);\n saveShowTourStorage(false);\n // estado para ocultar el tour\n };\n\n function getTourStep(pageNumber) {\n switch (pageNumber) {\n case 1:\n return (\n \n );\n case 2:\n return ;\n case 3:\n return ;\n case 4:\n return ;\n case 5:\n return (\n \n );\n case 6:\n return (\n \n );\n\n default:\n return null;\n }\n }\n\n return (\n \n
\n {\n navigate(\"/home?forceTour=false\");\n handleCloseTour();\n saveShowTourStorage(false);\n }}\n style={{ height: \"42px\", color: \"#A2E6FA\" }}\n icon={faTimes}\n position=\"fixed\"\n height={\"42px\"}\n className=\"closed\"\n top={\"38px\"}\n />\n
{getTourStep(currentPage)}
\n
\n
\n );\n};\n\nexport default Tour;\n","import React from \"react\";\nimport CountUp from \"react-countup\";\nimport { saveUserInfoAllInvestment } from \"../helpers/UserInfoAllInvestmentStorage\";\n\nconst InprogressInvestmentReport = ({ isSolesState, dataReport }) => {\n const isSoles = isSolesState;\n\n {\n const reportSoles = dataReport.userInfoAllInvestment[\"invesmentInSoles\"][0];\n\n const reportDollar =\n dataReport.userInfoAllInvestment[\"invesmentInDolares\"][0];\n\n dataReport = isSoles ? reportSoles : reportDollar;\n saveUserInfoAllInvestment(\n \"userInfoInvestment\",\n JSON.stringify(dataReport.userInfoAllInvestment)\n );\n }\n const getMoneySymbol = (isSoles) => (isSoles ? \"S/ \" : \"$ \");\n\n let totalBalanceAmmount = parseFloat(dataReport.totalBalanceAmmount) || 0;\n let totalBalanceRentability =\n parseFloat(dataReport.totalBalanceRentability) || 0;\n let totalBalanceRentabilityIncreased =\n parseFloat(dataReport.totalBalanceRentabilityIncreased) || 0;\n\n // let balanceDifference = totalBalanceAmmount - totalBalanceRentability;\n let capitalInCourse = dataReport.capitalInCourse || 0;\n\n return (\n \n
\n

Mi inversión en curso

\n
\n
\n
\n
\n

Inversión Histórica

\n
\n
\n {\n

\n {getMoneySymbol(isSoles)}\n \n

\n }\n
\n
\n

Intereses Históricos

\n
\n
\n {\n

\n {getMoneySymbol(isSoles)}\n \n

\n }\n
\n
\n\n
\n\n
\n
\n

Inversión en Curso

\n
\n
\n {\n

\n {getMoneySymbol(isSoles)}\n \n

\n }\n
\n\n
\n

Total intereses generados

\n
\n
\n {\n

\n {getMoneySymbol(isSoles)}\n \n

\n }\n
\n
\n \n \n );\n};\nexport default InprogressInvestmentReport;\n","export const saveUserInfoAllInvestment = (userInfoInvestment) => {\n localStorage.setItem(\"userInfoInvestment\", userInfoInvestment);\n};\n\nexport const getInfoAllInvestment = () => {\n return localStorage.getItem(\"userInfoInvestment\");\n};\n\nexport const removeInfoAllInvestment = () => {\n localStorage.removeItem(\"userInfoInvestment\");\n};\n","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,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\"","export const saveIsSoles = (isSoles) => {\n localStorage.setItem(\"isSoles\", isSoles);\n};\n\nexport const getIsSoles = () => {\n return localStorage.getItem(\"isSoles\") ?? \"true\";\n};\n\nexport const removeIsSoles = () => {\n localStorage.removeItem(\"isSoles\");\n};\n","import React, { useState, useEffect } from \"react\";\nimport { AiOutlineDollar, AiOutlineHistory } from \"react-icons/ai\";\nimport { RiLogoutCircleLine } from \"react-icons/ri\";\nimport { LuCalendarDays } from \"react-icons/lu\";\nimport { FaArrowRightToBracket } from \"react-icons/fa6\";\nimport { HiMiniComputerDesktop } from \"react-icons/hi2\";\nimport logoSmallLight from \"../images/logoSmallLight.png\";\nimport { Link } from \"react-router-dom\";\nimport { removeToken } from \"../helpers/TokenStorage\";\nimport { removeRefreshToken } from \"../helpers/TokenStorage\";\nimport { removeProfile } from \"../helpers/UserProfileStorage\";\n\nimport { removeInfoAllInvestment } from \"../helpers/UserInfoAllInvestmentStorage\";\nimport {\n removeIsOpenSidebarStorage,\n removeSelectedMenuStorage,\n} from \"../helpers/SidebarStorage\";\nimport logoTextlight from \"../images/logoTextLight.png\";\nimport logoSmallDark from \"../images/logoSmallDark.png\";\nimport logoTextDark from \"../images/logoTextDark.png\";\nimport {\n getIsOpenSidebarStorage,\n saveIsOpenSidebarStorage,\n saveSelectedMenuStorage,\n getSelectedMenuStorage,\n} from \"../helpers/SidebarStorage\";\nimport { removeIsDarkModeStorage } from \"../helpers/IsDarkModeStorage\";\nimport { removeIsSoles } from \"../helpers/IsSolesStorage\";\n\nconst SideBarComponent = ({ isDarkModeState, currentPage }) => {\n const [selectedMenu, setSelectedMenu] = useState(\"home\");\n const [isSidebarOpenState, setSidebarOpen] = useState(false);\n const [hoverStates, setHoverStates] = useState({});\n\n useEffect(() => {\n const isOpenStorage = getIsOpenSidebarStorage();\n\n if (isOpenStorage !== null) {\n if (isOpenStorage === \"true\") {\n setSidebarOpen(true);\n } else {\n setSidebarOpen(false);\n }\n } else {\n setSidebarOpen(false);\n }\n // check the selected menu stored in local storage\n\n const selectedMenuStorage = getSelectedMenuStorage();\n\n if (selectedMenuStorage !== null) {\n setSelectedMenu(selectedMenuStorage);\n }\n }, []);\n\n useEffect(() => {\n if (currentPage) {\n setSelectedMenu(currentPage);\n }\n }, [currentPage]);\n\n let handleLogout = () => {\n removeToken();\n removeRefreshToken();\n removeProfile();\n removeInfoAllInvestment();\n removeIsOpenSidebarStorage();\n removeSelectedMenuStorage();\n removeIsSoles();\n removeIsDarkModeStorage();\n // removeShowTourStorage();\n };\n\n const handleMenuClick = (menu) => {\n setSelectedMenu(menu);\n saveSelectedMenuStorage(menu);\n };\n const handleMouseEnter = (id) => {\n setHoverStates((prev) => ({ ...prev, [id]: true }));\n };\n const handleMouseLeave = (id) => {\n setHoverStates((prev) => ({ ...prev, [id]: false }));\n };\n\n const handleOpenIconClick = () => {\n setSidebarOpen(!isSidebarOpenState);\n saveIsOpenSidebarStorage(!isSidebarOpenState);\n };\n\n const getContainerMenuStyle = (menuID) => {\n const isHovered = hoverStates[menuID];\n const isSelected = selectedMenu === menuID;\n\n if (isSidebarOpenState) {\n return {\n display: \"flex\",\n width: \"100%\",\n flexDirection: \"row\",\n justifyContent: \"left\",\n alignItems: \"center\",\n height: \"80px\",\n background: isSelected\n ? isDarkModeState\n ? \"#18507b\"\n : \"#A2E6FA\"\n : isHovered\n ? isDarkModeState\n ? \"#18507b\"\n : \"#A2E6FA\"\n : isDarkModeState\n ? \"inherit\"\n : \"inherit\",\n marginBottom: \"30px\",\n };\n } else {\n return {\n display: \"flex\",\n flexDirection: \"column\",\n justifyContent: \"center\",\n alignItems: \"center\",\n width: \"100%\",\n height: \"60px\",\n gap: \"40px\",\n marginBottom: \"50px\",\n };\n }\n };\n\n const getIconStyle = (menuID) => {\n const isSelected = selectedMenu === menuID;\n const isHovered = hoverStates[menuID];\n\n if (isSidebarOpenState) {\n return {\n color: isDarkModeState ? \"#A2E6FA\" : \"#0D3A5C\",\n };\n } else {\n return {\n color:\n isSelected || isHovered\n ? isDarkModeState\n ? \"#0D3A5C\"\n : \"#0D3A5C\"\n : isDarkModeState\n ? \"#A2E6FA\"\n : \"inherit\",\n };\n }\n };\n\n return (\n
\n \n
\n \n
\n
\n handleOpenIconClick()}\n />\n handleMouseEnter(\"home\")}\n onMouseLeave={() => handleMouseLeave(\"home\")}\n id=\"home\"\n >\n {\n handleMenuClick(\"home\");\n }}\n >\n \n \n
\n\n \n Mis Inversiones\n \n \n
\n handleMouseEnter(\"history\")}\n onMouseLeave={() => handleMouseLeave(\"history\")}\n id=\"history\"\n >\n {\n handleMenuClick(\"history\");\n }}\n >\n \n \n \n \n Mi Historial\n \n \n \n handleMouseEnter(\"calendar\")}\n onMouseLeave={() => handleMouseLeave(\"calendar\")}\n id=\"calendar\"\n >\n {\n handleMenuClick(\"calendar\");\n }}\n >\n \n \n \n\n \n Mi Calendario\n \n \n \n handleMouseEnter(\"tour\")}\n onMouseLeave={() => handleMouseLeave(\"tour\")}\n id=\"tour\"\n >\n {\n handleMenuClick(\"tour\");\n window.location.href = \"/home?forceTourVisible=true\";\n }}\n >\n \n \n \n \n Tour\n \n \n \n handleMouseEnter(\"logout\")}\n onMouseLeave={() => handleMouseLeave(\"logout\")}\n id=\"logout\"\n >\n {\n handleMenuClick(\"logout\");\n handleLogout();\n // handleOpenIconClick();\n // resetStates();\n }}\n >\n \n \n \n \n Cerrar sesión\n \n \n \n \n \n \n );\n};\n\nexport default SideBarComponent;\n","export const saveIsOpenSidebarStorage = (isOpen) => {\n localStorage.setItem(\"isOpen\", isOpen);\n};\n\nexport const getIsOpenSidebarStorage = () => {\n return localStorage.getItem(\"isOpen\");\n};\nexport const removeIsOpenSidebarStorage = () => {\n localStorage.removeItem(\"isOpen\");\n};\nexport const saveSelectedMenuStorage = (selectedMenu) => {\n localStorage.setItem(\"selectedMenu\", selectedMenu);\n};\nexport const removeSelectedMenuStorage = () => {\n localStorage.removeItem(\"selectedMenu\");\n};\n\nexport const getSelectedMenuStorage = () => {\n return localStorage.getItem(\"selectedMenu\");\n};\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATwAAAEQCAYAAAAta8hLAAAACXBIWXMAACxLAAAsSwGlPZapAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAACQlSURBVHgB7d0JnCNlnT7w3/u+lb67Z5iDc4QRUMAF5BAEATlEEUW8UBQ8QGE9VhfFA8TdcT1WdBWVBf2DroLrX1lEFle8xWPVRTwYFeU+HM4dZ5izk3RPUu/77vN2upmGmelUuitJJfV8P9OTSlJJKpW3nnrfeusQISIiIiIiIiIiIiIiIiIiIiIiIqLZUkJEbeO91yIb54v0LqhW4yGlZFEUSTT59Eqlhv4glBoGHlGLeL9qSGRwpFLxixBsB2vtD8YiuIdSajGeHcQoffjDOLXAQxheHUXDbxZKTSRE1DQILSxjpX2c80dbq49G0B1ojCzFU2aqvoFxtvFq3SuUKgYeUcoQYD0ild3juHqyteWX4KHdEW4L8Exhm9lGLcHAI0pRtVo+3NrSW5Tyh6OpuidCTig7GHhEc4Qa3RBqcsdg6BwRdxwe0t5z83gWMfCIZqnWdC3vj7A7D3dPxN+gUKYx8IhmAWE3L46L56DZ+nbcXSTUERh4RA0Iva5xXDrOudKFCLv9hctQR+GPRdQA58pnay3no7d1V6GOw8AjSsD7jYusNZejhvdimdiHjjqRFiKakfflJQi7z2Mo7FPHsOtgDDyiGXg/+jdxbK/E0EuFy0vHY5OWaBu8X/9k5/SXlfIHCHUFrrGItiLsY2dtFLbZhbBjM7ZLMPCInsD71cPWFi/CYDhqgmHXRRh4RE9QrQ6chkXjDGHYdR0GHtE01erY0cbI+1DPGxLqOgw8oknerxlRyp6P7XbcqbhLMfCIJsVx71txc6zwTOBdi4FHJKF2V9pJazkXgzzLcBdj4FHuoQnbX63687yXxUJdjYFHuRfHpSNQu3u9UNdj4FGuhdM9KTVxjOx8oa7HwKNcq1ZL+yqlXyiUCww8yjVj1MtRy1silAsMPMotBF3BOQm1O55EIycYeJRb1pafq5Q8RSg3GHiUS6jdaXRWHMNDyPKFgUc5Nbqd9+pYoVxh4FEuVasWHRU8sWfeMPAol9BfsZ+wsyJ3GHiUS1r7Q4Ryh4FHueP92nlKKfbO5hADj3KofzulZCeh3GHgUQ657UTUDkK5w8Cj3IljO+S9XyiUOww8yh2lzDzc9AjlDgOPcsc5u0golxh4RJQbDDzKHaUUTweVUww8yiMeYZFT/OGp64QzoYgU0QurdsTdXeLYFQuFkV8K5R4Djzoaws2IbESva89IHMseWseHW1s+VCn9JDw9gjEWIPhuxvDxQrnHwKOO5P3KwTgePCSOi8crZZ6plD1EKZnnfbiGtsfzm8fFNjsjRMLAow6C2tx8NFWfbq2cEsfqBARcuI5s2KdOTQ84om1h4FHmIeiGrB19ubWl1+Huoci3IaWEqGEMPMos7zcscC46BUF3FrbJ7YFaXNgeJ0SzxcCjzAkdEdZuPCGO9buV8s/GQ4ZNVkoDA48ypVodPRa9rO9C0Xw+wo6dDZQqBh5lQjh7iXOlMzH4LgzvKERNwMCjtqtU1h+MWt0yDJ4sRE3EwKO2iuPRl6FD4lOo1fH4Vmo6Bh61Ra1jovhi9Lp+AcMLhKgFePIAajkEXE8cl96Lmt2XcZdhRy3DwKOWqtXsSqdrLe8OOxQLUQsx8KilrB17KWLvotpOxEStxcCjlvF+7MlKuUuw3W47aSOeADS/GHjUEgi7XeM4RgeFtH0fO549Jb8YeNR02FYXxbE9B0HzHCFqIwYetcD4EVqrVwpRmzHwqKlQu+vz3l3AHYspC7jjMTUVemVfhtg7WogygDU8ahrv187D/2/FYK8QZQADj5rG2gI6KfwRQpQRDDxqCu9XD6NX9mVClCEMPGqS/j3wH3dDoUxh4FFTVKv+KO9lByHKEAYeNYk6UnjFHcoYBh6lbnx8/KnGyP5ClDEMPEpdb6/dEze8LgVlDgOPmkDvj+1384UoYxh4lDpr7VFClEEMPEqdUrKnEGUQA49SFa5XgebsU4Uogxh4lLKxDtj3zvOkGTnFwKNUVas+84GHGihPVZVTDDxKlVKOVyKjzGLgEVFuMPAoVeih5fGzlFkMPEqZ6heijGLgUdoqQpRRDDxKFXpAVwlRRjHwKGU+FqKMYuBRqpTSw0KUUQw8SplfKEQZxcAjotxg4BFRbjDwiCg3GHiUMsUyRZnFwkmp8t4uFqKMYuBRynhoGWUXA4+IcoOBR0S5wcCjXPHeG/xvhHKJgUepQZgorXXGrxdRXKiUGhTKJQYepakXobeLZNrEbjMs9znFH56IcoOBR0S5wcAjotzgBYlzwPu186rVoaVajz9JKbPEOT8fnQs7YXvbiKQA73N1oTD0fQwq/BWEKKMYeF3E+9LOInYPa2V3paIDvXf7oEfyadb6JVqHS03oEE7hymK4dZIWreVO3CDw1vci7zLeaUF5xsDrUGEXENzMExkbstYeoZQ+3jk5GPGzBI9vh0CLJseTFpj+IdzHLSWoibfkx8sTBl6HqQXd2C7OFU/2Xj8HtbUj0ZLc3rdx2cBHr6wNFXpRo9zJczlNhTH6r0KpYuB1CITIQBwXD7F29LVYFJ6LkNsJjxaykS1uw+RAaCwPSaaZPjT7e6QDOPfYfKWUMPAyDkGn43j0WdYW34Ha03HIlO0e34JsPzS9Jmt4ps97u6NkWLVq5xsjA9IBUHt/UChVDLyMQtBFcVw6xvvy27F97mTJsELBrAi3cRwvVaFHJHPU2GNDShbhpiOurOaculMoVQy8DELI7WLt2Hno/TwdtacFkm2xUkMTNTw0wXY2Jnt9Flh53DY1jJXHYnTozJOMQzCvLhTkEaFUMfAyBAtmj7WlVyE43oe7e3fCtn8smPdMDUeR2TWL06yUv2na8D6YxsyXe0zjrSKVslCqGHgZUavVFf8Fi+QLUNjnS4fAtN5bu/Xa2vJeWdu+iCb2A1r7O6buYzoPlQ6A+fpbkfkbhVLFwMsA7zftbW38GSye6H3trMP9UMO7e3JwCE3wxS69/ZlTgen7EybtgWkPHSyZp0pKud8grDM2Nzsfj6Vto3AySu83nuxc5XrcO0E67/eoeK/+XBvcFPYFXCoZgwD+L9yMhuGxsbHdcLNIMg7N7jXGqF8IpY6B10aVSvEU5/SlCI09pTMVESh/rA06dAao3SRbqsZs+gFqShPt7ELBPks6AKb3t+gI4k7HTcDAaxN0Trwfa/EvY1vNk6RDobm4qlAYmAi8atXun72djtXPlFow0ZxF7TMcBXKUZJ7CSsRfK9QU3IbXYqEZi7A7DUF3Pu72SgfDd7gZIVINw8boZ2TskDKLabt+2v1hTPGxknGojN6ltfpvoaZgDa+FJnsy34BifXn2D8GqK0ZN5OdhAN+rH8OZqj2h9vmw1u6aqftxXEIgy96ScZiP1ys1yP3vmoSB11LlE7EG/xAiouMvVh129ygU1K/DMLZF7o6A2Vmyw1vrvzu1QzQCuYD5/hLJOMzTh7Ad9JtCTcPAaxHvSwdh7f1R1DIyfaxpUvgud4kM3h6GsS3yINxkKcRXIoC/vvluZU+ESeabs4i8bxYKg3cINQ0DrwW837gIvZlXIuz2ly6hlL4SIVKp3fMvlmxtD/5xFA09tluHc/HRmPdPlWxbrbX5LObpuFDTMPCaLDSnrDXLcLufdAnUnh4xRv4nDIfD4fDIMZIRmLZRY9zlCI443Pd+3XxM40sl2xym8TKRnruEmoqB12TokT0FN2dJF0Ft6WdowU7sJ4bOgGfjZqFkBKbtG+iQ/c3U/Wq152WIwUzvf4eQ/n0U+X/lkRXNx8BrImzMfzoK87Ju6KSYxmGb3WfC7iih11lrOVGyY6Mx5p+mmtrhpKmoib4vyz3iKB9rvHcfVmrkUaGmY+A1EdLgPR2w7aghWEDRUTHw+9q9YqjZvUiyAbUj/1Wl+qd2NFbWjr0Et5k+igXT93Vjhr8n1BIMvCaJ47HTUZzRnOqqeTyG73Tp1PYxa+UoBPpTJBP8jcb4ZZvvb0TQ2Q9JhiHsfmpM/PHNnT/UbAy8Jqjt9+XO7bKm7MSpoNCEvbY2/MgAFtRM1O7CyTJRofvIVLMQ83/QOfO3eGYPya61UdTzNpH5Dwi1DA8tS9nk0RSvxdBB0l1ifLfPKTW8unZ33j7477nZOP+duiyKBn48dQ/z/xjcvF6yayPqGm9Sqvc2oZZiDS91xb2U8udK11HLCwXzral7zvlTEIBtP7oCG/y/p/XAJzfvhlLcETW+CzG4WLKpjGn9uDH91wm1HAMvZdWqHIum3z7SfS5XauDhMBBCBd/xVJm4LGP7hMPbokjOxe1jZwZ2Tn0QQfw0ySil9KUI6LALihVqOTZpUxSCwFr1Ogx11YoEAfKLKBr8j6n7cezOwILb1nPf1U7dLm/GdruJQ7HCDtDOFc/C7d9KNoWztyzTuv8TU2eYodZjDS9F6LU8DovevtJdqlGkPoiFdOKCMt6vHkbYvVPaWHbQZF2Jpux5IgM/qE1TOOVW+XnouPigZNMmTOMlk01vhl0bMfBShEL9BtwMSvdAj4S/QqmhiQ6B0CHjXN/pGNxe2sZvQLD9gzFDX586MqFaLR+Axy+RbJ6+fSPm20eiaOg93P2k/dikTUmlUj5Ma3dIJ1xaMSnUpG7TOvro5kc2PQXryPe0q2cW07MWlbm3YoP/NVNhNz6+YU8MXoFns3Z6+Ylz8iGc/y6K1v0QvduxUNsx8FJijH8+wq5rancIlDHUTD6mVP/94X6t2Vh8G57ZXdrCr8M0vBE1pcfOF+f92K7WhrCb2IzQ1g6UJ0LY3WGtPrNQ6P+NUoM8RjYj2KRNjXo1/jPSPb5uzOBj11aI4+IRCMFTpS3UbxB2J0XRyLSwKz/LOXsdho6UbIXdekzrxajtH9XTM3ATTwiQLazhpWDTpk17e1/t1CuPbQE11bvj2Hy0r0+N1e6vHkZt5V1YkFu9b1vYwH+NMe4jIsNTvbEmjkcPdc5dhunM0im3wime7lEq+nAU9X2D57XLJgZeCqIofgUWvm6pLYeQeVtfX99j52ZDR8XrETXPlxZCk3C9c3JhFA1+amqn4sDa0ZNw/1LM7yWSHehIcZdFkbkYmwD+VyizGHhz5P3oYmv90dIdnFL+negB/dHUA5VK6UB8yw9jsEdaItSM/P9obd+v9cjyzUdQhAsFld6B5y/AcFZO97QeU/YD5/RFhcLwH9kLm30MvDlTu6A2sk+X9M7+u9ZDV0xduNr7VUNx7C5GT+N8aQlVxCavC7RW6IWdt3Lq0dpKZexTGHwl7rUoeGeEEPbXG6M+JzL08yhi0HUKBt4coXaHbXcqS1fsmq0b0NP83s07GPsh58qfRvY1/fKL4ZTxaL5eE0WhV3h45fTnsL3uVNSgPoDKZ7sP14sxnX/EdP4yitz/U2rkTqGOw8CbI9TswlmNO93vUFs5T6mhiTOhhI4BhN1rcHuaNI2qIEyLmH/fQo3us1oP3DLtTMXYHlreEeHyFgy/DX8tqmE+Dpr3gunz4ZRTy9EB/zVM583G9PN0Th2MgTdHSul9s3GKpFl7AL2gr506JjWwtnwCbtAzKgPSHCsQJNc6p77W0zO4fPoTeDyytngy5uz5uHuItFRoUvuw3+GfnPO3oin/uyga+i2CeI1QV2DgzREWhv9GLeWvkgGYjkdRK0l8eBXCpYhm5JXTww6PjcRx6Vh8r280Y/c259zyQkF/G1m6fqr5/HjFZyNononnQhAul+Zx4XfD992gtX/YGBPOBPMg4n5MZHiT1lLiPnREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREaVIyB96P7RrHslQk1tIxIh9Feq1Iz91KqXEhotyIZBa895G15dc7Z9+hlOyD3DTSMax3zt2P26tx53whotyYVc3MudH3Iugu8V72xd0OCrsJCoG91Ht3nrXFT2K4TxoUAt/78qEI/avwHqvjuOhrf6Vf4e9sPD8iRCmaVt5WTS9v1o7+Pctbcg03acfG1u3W0xP9xHu1u3S+NcZEz1Sq796kL0Dh6kFBO05r+QICf8mWY6iSUv4/tR58M5rMZSGag1DesNQ9A62Sq1ne5q7hGl5PT8+JCLsl0h0WVqvxsxt5QRyPHoqwu3zrhS/wg3jutQjFZbOpPRJNF8obwu4qlrd0NBx4mPk74KZHuoQxfmnSccPaVin9dyhgu9YbF2vbc7Bm3l+IZmkW5e0AoRnNZhvenHp2s8Y5cUnHrVbHDsC2yyOTje37nFMvEqJZarS8WevPFppRB+1O0hwoULcnHRe1wQOxtt0x6fjoGDnI+7XzhGgWtPb7NVLesC3vYJa3meU68BB2K4yp3NjAK5ZKA7vyoACisPazANKsYIX5JGls17ERlreZ5TnwNniv36XUwoekubpqEwBlGeqDLG8zmtWOx0mE2pNkknJYc/4BWf9FY/q/38grsY3kPt3AKgLF71FsiSkK0SxghfwwWgkNvEKtZ3mbWdMCzzl/ZqEw/DPpIugJ+zMK4CMIsp2TjW9+o9TQGiGahUbLm/fqD0qNsLzNIPedFo2Iov6bUfh+knD09VrHVwvRLDVa3oyJvyA0IwZeA7DGrRgjn0Bz/Y7647pPiAzdI0Sz1Hh5G/mD0IwYeA1CE/UWrdXpKIS34a7b8nlZjbXyJ4wZ+SjPxkJzVStv0Yu2Vd5glOUtuaZtw+tuAyiEG1/snD497FyMjoyF4VHv/S3Y0PylKBpoqDOEaCZK9d3j/Yap8nYSytui8Hgob6izXIHy9j2h5qhWR/9p89katv2H8Y4RIqIMYZOWiHKDgUdEucHAI6LcYOARUW4w8IgoNxh4RJQbDDwiyg3ueJxD3vt+kfXbV6uF7Z74nHO22Ns7shaD61Rjp+roGN6vx/fu36FarW5xDYhCwawT6VuJ775JqOsw8GYJoTFobfEEEfNKxES4zocopZdrXfmsyLz7scBYSUntSmnjh2ltz566mAve/16t1Zew4P4uHHM58+tXDYn07mitDtc8OM7a8tOVKiwwRrZY4I0xY3h+VGtZidsbtXbfFxl8AJ+xTtrE+yLCSV6AacK8npjmGNODadNfUqr//plf641IaVGlIjsoJcdp7Y+wVu2qVBy+/xblH4G/0fvyRvy2KzCvf2BMfKNIZZVS27f1tEtT5Q3f+xVTZ0GulTdzhUjP7WmVtzC/UNYOx/w5B58QjuhwePQ2Y/SVSg3eLG1S+x3Hdo5j+yZ810Okdl2dcMW2b2k9dE3S8tnwyQLDkRZ48w/UGw8TeGy3nR5qivdrRqzt/VcMvlqecEEjfO87UU94e6HQ9yNJQQg750pvRSH/F9wtTH8OC/BKPP6uKBr62tZfu24+pvM5GHoNyu2xeMVszoZbxd9yfM61UWSuRsA8IC2EsENQq8sxdJI8fhOMx/e/FQv8C7c2TZhvKNtju8Sxfx3GeyEeeYbM7uJT4XRL4azY1xozeHW7jleN4+KVspXyhul50DnzxjTKW62sjb3Fe/cxkcevDDEPH8bzfx9Fw/8pbVCpFA9AuGEFpw7cytNfMcadq9TIo/Xeh4HXIHwvjQA6JxywLdu4CHmt9jWAH0jNuVYQx6Oo1SisxWVg65/l70HT9AV9fX13T5tGBHIJAaHeiaDbC7fDMmfKodA/4pxD8BU+hxrjPfh+iS+ANFtY0P8NN2/c9hgKQTTwBkzLxqlHEPRL47gQagKn4d4uks7F4jfh/W7FvL3EGPstpeatlRYI5Q017TMxhNBvbnmL440vRq3x31C2F239c+Q2rEBe2ds7fKu0EObBEMrzNRg8QbaaWaqCafsQVkj/XO+92GnRsNJiFIiTZYaFCD/QHiikR8kchTUuKipvkG2EXW0ctVuhEL+kVqOZ2D71ZDR9LkPhv7xWq0kj7CbeWeMzloTLAToXX4sgOkaaLBR0TP+pdUY7UWR84dSdOC6dZG3PVVgA3ot3CJc3TCPsgl5Mz0G4/YK10Ve8H1sqLVFaXKuhN7+84SNO3lbY1T5H9o4i9XxpMfymR+L3DDX0bVTQwnLiwzKwqN57MfAatxNm/t71RkLhOEjmrBx+wHrXJC3gsw7G7QhC6HQsjD9HuXh1LSyaA5+3L2oC30NB/Bw+Z4E0Cb4P5mG97+GxMqge4P3oYrQ+PoL71+PvMGle2cZ2P/8CbOu7OY7Lp4WVkjRXS8obvsd83OxbZzSs9OR4aTFsqz54piAOMI92rFbLS6UOdlo0jSvInOkedFT0+/p9pTuhmX0GfvT3YdwdpCXCRaLVa60dW4CFJTQpy5IyNNcXJNnqgm1Yz8A0vBzf/xXSIpjPC9Ci/zS2eW2Pu5+RtptreSv1Yf711CtrGCfR6ebTpbDSq7sQDNTKy8wYeN1hfxTUQ0W27HVtplot0p9q7eg4ht/ajNBLOCVn4b9QA2hpiwXzHGHnP4zvXzZm+POSC7rZNdrZ0pLg92eTtjuE5khLw+7xzKudK5/XzGb0TGrB066y7Iew+fRCNO9fIJR5DDxKQdhoLO9GT9opkk9o3vqLwi40QpnGJm1O1PajUsu9t7ehw+EWY9z9lYqs6enRPdaq3fH89ta6A7GB+GkYfX+p1RobEDoP1Ae933ijUiN3SaaE3Rb8HQjl252Tm7T2DxmjV1Qqtqh1YbFS8Q5oji/B84dhPuwVOmWkwWUj9GDGsUcnzqrXtXsnZdq2Jl6IWy1tXdd94K1I/2peyGS6MC/8o1gYLzXGf0dkMBwBMrqVEW8J/00elbAYC+5Tax0AKuzoGjYEJ9xf06PzxLwTA2+RTJgoC8vx90WtKzeIbLcyirY4KuWxK4LVelxHl2IFgF5fdTbC/4jaYXgJP03pE+J44FkY/KFQJjWzhneFtakdXZXEBpHif3hf/rBSAw9L7qmi9+6LUVS5SKmFDyZ6Re3wpJXhDwv6L+N49CosxP+I+0n3vSrgdWd4P/5JpfrulbZSD6AX9UKth76I71VN9IraIXqhdnoXvsd1aKKfjkffjyjcUxIJtVy/DK+9afqO0JQd3bQNbx4K59nVqrsoHHcoOYba2UYs7OGQs2VJw27L91CuUBi50ZhyOHYz7HaRdO3VhxXdebXaYlt4/LvJmPhUhN3nk4bdE4XXGTP4ZTSBX4Xv/3NJsF/E5OsOEykfIZRJ3dZpobWWU5wrniH5tdZ7/cbJms2caxlhe1QUDV6A5T0c3pb0ULLjUdveS9oA4fQnY6LTlJp301wPfQtni+npGbw5imLUWv2fEr7MYKV7hlAmdWMvrcH2l1BAc9chg5rdKBbSC4zpvy7Ns7XgvcaMGXo34uTbyV7hd6tW5TnSYpjO/0Xt8uVK9f9FUqTU/L9Y618Z3j/J+Nj29+xKpfh0oczp1t1Swt7gDfYydj6E/He1HvhqmmE3Be+5wZief0CoJlnoUdNWz2vxSgfb3/yn+vrm3SNN0Nc3cife/xKpnT2mnoXGyPOEMof74XUJBNEq9MRenMYZWrat589Y6D+UZExMz75o1tY9BjQtaMr+ROvBi6WJ8P6fDB0SCUYNxzcz8DKoKwMPhTKcFLIlp+/JCixgNyBg/ihNFLZpYRvptaFTpN644egHdNK3JPBCkxu9ybPuoGjgc6r47qGWl6QGvX84tZNQpnTjD2KxUH61FedqyxZ1jVI7N/1YVqWGVyPMrkkw6gBC6G+kJfz9xrhfSQsYo36B0Ls7wajbi4w+VShTui3wYhT+LyHwkiyQXSN0Vhijl0vL+O/jU8fqjuV9SxZ4BDACaHC1tIBSQ+Es079NMq61OoVThFGauibwsNCvxQJ2IdbAy1ALWSW5ou5D1tcNoLQYU7gFMZPg81TCHXbnBrX5PzWjo2YGNyQZCVsAniaUKU3rRevma1pkDeb1OgReU7dfPV7vfciX9fVO/okFfsdwuFa9iwzNlbW+JbW7KcZEv7I2DptM6lQY1G5hO17+Nq9kFzeqUsOwAMfO+bpHcKDphxXqxAkyu4wrYx7UvWCM9yrsGpXV88flEgOPZgXbSe9LMhrisQt3AI/DSRkSXBYwfzu/Zx0Dj2ZrQ4Jx+uK4ukS6zsRZMZJsM10ksr6NJ2alJ2LgUZN1Yw0vGXSksYaXMQw8IsoNBh4R5QYDj4hyg4FHRLnBwCOi3GDgEVFuMPCISGpX/UvCJbyCXTYx8IgIhtZ6n+g8hx19sXEGHhFNXaIzyfkU53m/YYF0KAYeEU1A6K1MMl61Gu0uLeVTC1gGHhFNcM4mOZOzGOOP8N63bFuec24/SQkDj4gmOKdXSIILjiPrjhRZ3ZKL3Xu/clApfaCkhIFHRBN6etRdSkmS014dLzLSks6LOB46Cp+X2hlnGHhENMk/iKbqbQlGnB/H8SnNvu4w3r9Pa32mpIiBR0STJi6EdHuSMbX2bxQZ31WaKI6Lh3nvXiQpYuAR0YRw7Q1j9HVJxsV2vD2rVXshamFD0gTej++FbXcfx2C/pIiBR0TT6NsSXncXtTx1knOlfwwXapIUeb9xIXqML8DQIZIyBh4RTdP3sHP+a8nG9QPey3vjuHRu2N4mKUDYLbJWfQnvdzrupr7rCwOPiB4TrkgXRfINDCa+7CdqhOfF8egHvC/uONv98/C6Xu83PNNajbBVYbudkSZg4BHR4yg1/Gfc/H/8Jb2e7nxsbzvfOfm2teUzG63teT+2u3PFC5yL/gt3nytNqNlN4UVGiGgLzqlL8P/h2E63d9LXoHl7MP7/nHPldyD4vuuc+xlqiytRWVuPpnI4TrciUsT2vmgQj82ztrIPapTHWGtfgrrXIry26RUwBh4RbaGnZ/D31o5eihD7jDSWE2ia+v0QXvuhqftu1Pr+KmJXeV9C6Mk4gm1IKTuCx8IF2rfHuJMhV/cAj1Qw8Ihoq7Qe+qK1xb3Qwny7zI5BYO6M2503P+RDTbBtuA2PiLYKzc1xYyLU8Nx3pK1UwpOT1sfAI6JtUqr/PmP0WWh6/lTa4yH8fV9SMovA06Hnpl6l1EurGuWtF75Xgt4rnbSHa6aPimt/9ahRdJQl3o0gDXEsm5KM570Zl1nC5p1Er8WG9bpn6k2b92q8/jiC366a4Peb+W2kZeVt65QaWhlFUQi9b+LerH/PBj/V4vNuQtieYozcnOAF6BTRdctBw4GnlL9fJnpbZrQBhbUkXclswFx4tN5Y2GD7iMxZ/2rMx7X1xsJvcp/U/01SZYxfnmC0UqHQf6fMUhQNJvkMTEv8Z2mp+aFsP1R/PL9CZHGiFcO2tbK8zfT+/fdF0dAZSrlPSAP76M3y08JK4gprC69RauDX1vq/4H69FceGKNKr6ozTeOAZ476Dtn2dMyqoXxcKpTukK/U94Jz9UZ2R1mPN9EOZI8znTejluhKDM23DWOuc/ybGbWkND9/vl6jBzBRIqHH472G6EpxuaOvw2lCAw7z2M4xzi8hIS8tamNeodVwhMy+EFvPoirn/LqG8xdfXGSmV8lYPvssGY4aX4bOOwt2wXS/tlSzeT6Fc6RONGXhTX1/fveFBY8zPEegzntQANe6fKtV3T70PmEUNb+RRVDUvxgSs3voY/iHv3ceV2r4oXSgcYB1F4dAX+d3Wn5c1GOfTWCM+ICkoFATNCB8K19YWetQ0/Nex5r1RWm4AzRxBOVBb+5095sMtxvR8RuYIhf2jeK/7t/F0yXv7AUxDy5u0+P434L9/l63+LsrVfrOBNFZ6KG/m0m2XN7UpzfKWbJoGfo3APwvxEQ7/wvf0YaU2201YPrwe3y80W9+MlsMr0Cq4IXzvzaP0rcDzoWa5Zqtv4P0dzqmvSLPgA0y1Wnx+HBd/jL8q/nwcl0q4/bb35We18vTP7eL9+J5xPHoVvvO62vcvemtLf8R8OKsJB1MvwmddZm1x5dRn4XNWWDu6rJ0XVMH3LMRx+RR87+WYpnhyukZxe1WlUnqGpKRaLR+O9/02/sqT3x9lrnQT5smrpI3w/edVq6P/jO+/YloZWBEeC7+ZpGhaeVs7vbxZWz4n7fLWqGp17MhqtfQBTNP1KKOPbC6jM/6txt/PkCMfw/w6NpSlmT4jfEd8/1Pxu/9283uMbsD965A5h0pCcwomTMQIatPbIYHxPuMhqdcrtWCD5ETt+5cHsabrrT1SQU1jpIi1U+rb07x/sF9kAea1nizcdkxkcBSfleRKU01TW7kVF9X2np94BM3vNdjmtGQc05Zax1Xt+y/E56jJYywnvv+qND9jdtMVdpwtLtz8/R1++7XrlHrSmKSsleWtUaEShBtMVxkrAdkFrbylmK4lTxxPa7Paucq9hUIB20BjzKPh9ZNXTEv4ORsxrwvDYXh8XFxf3+jabm1NEhERERERERERERERERERERERERERERERERERERERERERUZ79H3KpCnQ6K1oiAAAAAElFTkSuQmCC\"","import React from \"react\";\nconst SwitchSolesComponent = ({\n isSolesState,\n onSwitchChange,\n isDarkModeState,\n}) => {\n const toggleSwitch = () => {\n onSwitchChange();\n };\n\n const switchStyles = {\n appearance: \"none\",\n width: \"80px\",\n height: \"35px\",\n borderRadius: \"15px\",\n backgroundColor: isSolesState ? \"#A2E6FA\" : \"#0d3a5c\",\n position: \"relative\",\n cursor: \"pointer\",\n };\n\n const beforeStyles = {\n content: \"\",\n position: \"absolute\",\n width: \"22px\",\n height: \"22px\",\n borderRadius: \"50%\",\n backgroundColor: isSolesState ? \"#0d3a5c\" : \"#A2E6FA\",\n top: \"5px\",\n left: isSolesState ? \"50px\" : \"10px\",\n transition: \"left 0.1s\",\n };\n\n return (\n
\n \n {isSolesState ? \"Soles\" : \"Dólares\"}\n
\n\n
\n
\n
\n \n );\n};\n\nexport default SwitchSolesComponent;\n","import { gql } from \"@apollo/client\";\nexport const USER_PROFILE = gql`\n query Userprofile {\n userProfile {\n firstName\n nickName\n occupation\n phoneNumber\n email\n imageProfileUrl\n }\n }\n`;\nexport const USER_INFO_ALL_INVESTMENT = gql`\n query UserInfoAllInvestment {\n userInfoAllInvestment {\n invesmentInSoles {\n totalBalanceAmmount\n countPlanesActive\n capitalInCourse\n totalBalanceRentability\n totalBalanceRentabilityIncreased\n invesmentInCourse {\n rentabilityIncreased\n startDateInvestment\n finishDateInvestment\n rentabilityPercent\n rentabilityPerMonth\n operationCode\n depositBank {\n bankLogoUrl\n }\n boucherList {\n boucherImage\n }\n\n planName\n amount\n rentabilityAmmount\n deadline {\n id\n name\n }\n }\n invesmentInProcess {\n startDateInvestment\n rentabilityPercent\n planName\n amount\n rentabilityPerMonth\n rentabilityAmmount\n operationCode\n depositBank {\n bankLogoUrl\n }\n\n boucherList {\n boucherImage\n }\n\n deadline {\n id\n name\n }\n }\n\n invesmentInCourse {\n startDateInvestment\n rentabilityPercent\n planName\n rentabilityPerMonth\n amount\n operationCode\n depositBank {\n bankLogo\n }\n\n boucherList {\n boucherImage\n }\n\n rentabilityAmmount\n deadline {\n id\n name\n }\n }\n\n invesmentFinished {\n startDateInvestment\n rentabilityPercent\n rentabilityPerMonth\n operationCode\n depositBank {\n bankLogo\n }\n\n boucherList {\n boucherImage\n }\n\n planName\n amount\n rentabilityAmmount\n deadline {\n id\n name\n }\n }\n\n invesmentCanceled {\n startDateInvestment\n rentabilityPercent\n operationCode\n rentabilityPerMonth\n depositBank {\n bankLogo\n }\n\n boucherList {\n boucherImage\n }\n\n planName\n amount\n rentabilityAmmount\n deadline {\n id\n name\n }\n }\n }\n invesmentInDolares {\n totalBalanceAmmount\n countPlanesActive\n totalBalanceRentability\n invesmentInCourse {\n startDateInvestment\n rentabilityPerMonth\n rentabilityPercent\n planName\n operationCode\n depositBank {\n bankLogo\n }\n\n boucherList {\n boucherImage\n }\n\n amount\n rentabilityAmmount\n deadline {\n id\n name\n }\n }\n invesmentInProcess {\n startDateInvestment\n rentabilityPerMonth\n rentabilityPercent\n operationCode\n depositBank {\n bankLogo\n }\n\n boucherList {\n boucherImage\n }\n\n planName\n amount\n rentabilityAmmount\n deadline {\n id\n name\n }\n }\n\n invesmentInCourse {\n startDateInvestment\n rentabilityPercent\n planName\n rentabilityPerMonth\n operationCode\n amount\n depositBank {\n bankLogo\n }\n\n boucherList {\n boucherImage\n }\n\n rentabilityAmmount\n deadline {\n id\n name\n }\n }\n\n invesmentFinished {\n startDateInvestment\n rentabilityPercent\n rentabilityPerMonth\n planName\n operationCode\n depositBank {\n bankLogo\n }\n\n boucherList {\n boucherImage\n }\n\n amount\n rentabilityAmmount\n deadline {\n id\n name\n }\n }\n\n invesmentCanceled {\n startDateInvestment\n rentabilityPercent\n rentabilityPerMonth\n planName\n operationCode\n amount\n depositBank {\n bankLogo\n }\n\n boucherList {\n boucherImage\n }\n\n rentabilityAmmount\n deadline {\n id\n name\n }\n }\n }\n }\n }\n`;\nexport const GET_CALENDAR = gql`\n query getImportantDays {\n importantDays {\n month\n date\n description\n }\n }\n`;\nexport const GET_NEXT_PAYMENTS = gql`\n query getNextPayments {\n nextPayments {\n paymentInSoles {\n planName\n amount\n rentability\n totalAmount\n paymentDate\n }\n paymentInDolares {\n planName\n amount\n rentability\n totalAmount\n paymentDate\n }\n }\n }\n`;\n// export const USER_INVESTMENT = gql`\n// query UserInfoAllInvestment {\n// userInfoAllInvestment {\n// invesmentInSoles {\n// invesmentInCourse {\n// amount\n// }\n// invesmentFinished {\n// amount\n// }\n\n// invesmentInProcess {\n// amount\n// }\n// }\n// invesmentInDolares {\n// invesmentInCourse {\n// amount\n// }\n// invesmentFinished {\n// amount\n// }\n\n// invesmentInProcess {\n// amount\n// }\n// }\n// }\n// }\n// `;\n\nexport const RENTABILITY_GRAPH = gql`\n query rentabilityGraph($timeLine: TimeLineEnum) {\n rentabilityGraph(timeLine: $timeLine) {\n rentabilityInPen {\n month\n date\n year\n amountPoint\n details\n }\n rentabilityInUsd {\n month\n date\n year\n amountPoint\n details\n }\n }\n }\n`;\n\nexport const PAYMENT_DAY = gql`\n query getPaymentDays {\n paymentDays {\n month\n date\n description\n }\n }\n`;\n\nexport const IMPORTANT_DAYS = gql`\n query getImportantDays {\n importantDays {\n month\n date\n description\n }\n }\n`;\n\nexport const REMAINING_PAYMENT_DAYS = gql`\n query getRemainingPaymentDays {\n remainingPaymentDays {\n month\n date\n description\n }\n }\n`;\n\nexport const PAST_PAYMENT_DAYS = gql`\n query pastPaymentDays {\n pastPaymentDays {\n month\n date\n description\n }\n }\n`;\n","import { jwtDecode } from \"jwt-decode\";\n\nexport const decodedToken = (token) => {\n const decoded = jwtDecode(token);\n\n return decoded;\n};\n\nexport const getTokenExpiredDate = (token) => {\n const decoded = decodedToken(token);\n const expTimestamp = decoded.exp;\n\n const expirationDate = new Date(expTimestamp * 1000);\n\n return expirationDate;\n};\n\nexport const isTokenExpired = (token) => {\n const expirationDate = getTokenExpiredDate(token);\n const currentDate = new Date();\n const isTokenExpired = expirationDate < currentDate;\n\n return isTokenExpired;\n};\n","import { REFRESH_TOKEN } from \"../graphql/mutation\";\nimport { saveToken, saveRefreshToken } from \"./TokenStorage\";\nimport { ApolloClient, InMemoryCache, createHttpLink } from \"@apollo/client\";\nimport { redirect } from \"react-router-dom\";\n\nexport const refreshToken = async (refreshToken) => {\n return new Promise(async (resolve, _) => {\n const client = new ApolloClient({\n link: createHttpLink({\n uri: \"https://manage.finniu.com/api/v1/graph/finniu/\",\n }),\n cache: new InMemoryCache(),\n });\n console.log(\"refreshToken\", refreshToken);\n try {\n const { data: refreshTokenResponse } = await client.mutate({\n mutation: REFRESH_TOKEN,\n variables: { refreshToken },\n });\n\n if (refreshTokenResponse?.refreshToken?.token) {\n saveToken(refreshTokenResponse.refreshToken.token);\n saveRefreshToken(refreshTokenResponse.refreshToken.refreshToken);\n resolve(refreshTokenResponse.refreshToken.token);\n }\n } catch (error) {\n localStorage.removeItem(\"token\");\n\n setTimeout(() => {\n redirect(\"/login\");\n }, 1000);\n }\n });\n};\n","import { ApolloClient, InMemoryCache, createHttpLink } from \"@apollo/client\";\nimport { setContext } from \"@apollo/client/link/context\";\nimport { getRefreshToken, getToken } from \"./helpers/TokenStorage\";\nimport { isTokenExpired } from \"./helpers/JwtUtils\";\nimport { refreshToken } from \"./helpers/RefreshToken\";\n\nconst httpLink = createHttpLink({\n uri: \"https://manage.finniu.com/api/v1/graph/finniu/\",\n});\n\nconst authLink = setContext((_, { headers }) => {\n let token = getToken();\n\n if (isTokenExpired(token)) {\n const tokenRefresh = getRefreshToken();\n\n return refreshToken(tokenRefresh).then((newToken) => {\n return {\n headers: {\n ...headers,\n authorization: newToken ? `JWT ${newToken}` : \"\",\n },\n };\n });\n } else {\n return {\n headers: {\n ...headers,\n authorization: token ? `JWT ${token}` : \"\",\n },\n };\n }\n});\n\nexport const client = new ApolloClient({\n link: authLink.concat(httpLink),\n cache: new InMemoryCache(),\n});\n\nexport default client;\n","import React from \"react\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faArrowRight } from \"@fortawesome/free-solid-svg-icons\";\nimport { Link } from \"react-router-dom\";\nimport client from \"../client\";\nimport { useQuery } from \"@apollo/client\";\nimport { GET_NEXT_PAYMENTS } from \"../graphql/querys\";\nimport CountUp from \"react-countup\";\n\nconst RevenuePaymentReport = ({ isDarkModeState, isSolesState }) => {\n const isSoles = isSolesState;\n const handleClick = () => {};\n let dataReport = {};\n const { loading, error, data } = useQuery(GET_NEXT_PAYMENTS, {\n client,\n fetchPolicy: \"network-only\",\n });\n\n if (loading) return \"\";\n if (error) return `${error}`;\n\n if (data.nextPayments) {\n const reportSoles = data.nextPayments.paymentInSoles || [];\n const reportDollar = data.nextPayments.paymentInDolares || [];\n dataReport = isSoles ? reportSoles : reportDollar;\n }\n\n let moneySymbol = isSoles ? String(\"S/ \") : String(\"$ \");\n\n const hasDollarPayments = Object.values(dataReport).length !== 0;\n\n return (\n \n
\n
\n
\n \n Mis próximos pagos de intereses\n \n
\n
\n \n \n Ver más\n \n \n \n
\n
\n\n \n {hasDollarPayments ? (\n Object.values(dataReport).map((payment, index) => (\n \n
\n
\n
\n \n {payment.planName}\n \n
\n
\n \n {moneySymbol}\n \n \n
\n
\n \n Fecha de pago\n \n
\n \n {payment.paymentDate}\n \n
\n
\n\n {/*
*/}\n
\n ))\n ) : (\n
\n \n {isSoles\n ? \"Usted no cuenta con planes en soles.\"\n : \"Usted no cuenta con planes en dólares.\"}\n

\n
\n )}\n \n \n \n );\n};\n\nexport default RevenuePaymentReport;\n","import React from \"react\";\nimport { FiArrowUp } from \"react-icons/fi\";\nimport CountUp from \"react-countup\";\n\nconst PlanInProgressCard = ({\n rentabilityIncreased,\n startDateInvestment,\n finishDateInvestment,\n rentabilityPercent,\n planName,\n isDarkModeState,\n amount,\n rentabilityAmmount,\n isSoles,\n deadline,\n}) => {\n const rentabilityFloat = parseFloat(rentabilityAmmount);\n const amountFloat = parseFloat(amount);\n const currentMoney = isSoles\n ? amountFloat + rentabilityFloat\n : amountFloat + rentabilityFloat;\n const moneySymbol = isSoles ? String(\"s/ \") : String(\"$ \");\n\n return (\n
\n
\n \n \n

{planName}

\n
\n
\n \n

En curso

\n
\n
\n
\n \n Plazo de {deadline.name} : {rentabilityPercent}%\n \n
\n
\n

Dinero actualizado

\n\n

\n {moneySymbol}\n \n

\n\n
\n Inicio: {startDateInvestment}\n
\n
\n\n
\n
\n \n
\n
\n

\n +\n \n %\n

\n\n
\n Finaliza: {finishDateInvestment}\n
\n
\n
\n
\n
\n
\n {\" \"}\n
\n
\n \n Dinero Invertido\n \n \n {moneySymbol}\n \n \n
\n
\n
\n \n Intereses Generados\n \n

\n {moneySymbol}\n \n

\n
\n
\n \n \n \n );\n};\n\nexport default PlanInProgressCard;\n","import React from \"react\";\nimport PlanInProgressCard from \"./PlanInProgressCard\";\n\nconst PlansInProgress = ({ isSolesState, isDarkModeState, dataReport }) => {\n const isSoles = isSolesState;\n\n const reportSoles = dataReport.userInfoAllInvestment[\"invesmentInSoles\"][0];\n\n const reportDollar =\n dataReport.userInfoAllInvestment[\"invesmentInDolares\"][0];\n\n dataReport = isSoles ? reportSoles : reportDollar;\n const dataReportInCourse = dataReport.invesmentInCourse;\n\n return (\n
\n \n
\n \n

Mis planes en curso

\n {dataReportInCourse.length > 0 ? (\n
\n {dataReportInCourse.map((plan, index) => (\n \n ))}\n
\n ) : (\n
\n \n {isSoles\n ? \"Usted no cuenta con planes en soles.\"\n : \"Usted no cuenta con planes en dólares.\"}\n

\n
\n )}\n
\n
\n \n \n );\n};\n\nexport default PlansInProgress;\n","export default __webpack_public_path__ + \"static/media/loading.gift.c0846632.webp\";","import React, { useState, useEffect } from \"react\";\nimport { RENTABILITY_GRAPH } from \"../graphql/querys\";\nimport { useQuery } from \"@apollo/client\";\nimport client from \"../client\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport {\n faArrowTrendDown,\n faChartSimple,\n} from \"@fortawesome/free-solid-svg-icons\";\nimport Loading from \"../images/loading.gift.webp\";\n\nimport {\n AreaChart,\n BarChart,\n Bar,\n Area,\n XAxis,\n YAxis,\n CartesianGrid,\n Tooltip,\n ResponsiveContainer,\n} from \"recharts\";\n\nconst CurveChartComponent = ({ isDarkModeState, isSolesState }) => {\n const isSoles = isSolesState;\n const [selectedValue, setSelectedValue] = useState(\"all_months\");\n const [timeLine, setTimeLine] = useState(\"all_months\");\n const [isLineChart, setIsLineChart] = useState(true);\n\n const { loading, data } = useQuery(RENTABILITY_GRAPH, {\n variables: { timeLine },\n client: client,\n fetchPolicy: \"network-only\",\n });\n\n useEffect(() => {\n setTimeLine(selectedValue);\n }, [selectedValue]);\n\n const handleSelectChange = (event) => {\n const value = event.target.value;\n setSelectedValue(value);\n };\n\n let dataValues = [];\n if (!loading && data && data.rentabilityGraph) {\n const reportSoles = data.rentabilityGraph.rentabilityInPen;\n const reportDollar = data.rentabilityGraph.rentabilityInUsd;\n dataValues = isSoles ? reportSoles : reportDollar;\n\n dataValues = dataValues.map((item) => ({\n name:\n item.month.slice(0, 1).toUpperCase() +\n item.month.slice(1, 3).toLowerCase(),\n Monto: parseFloat(item.amountPoint),\n date: new Date(item.date),\n year: item.year,\n }));\n\n dataValues.sort((a, b) => a.date - b.date);\n }\n\n const moneySymbol = isSoles ? \"S/\" : \"$\";\n const formatYAxis = (Monto) => `${moneySymbol}${Monto}`;\n\n const shouldDisplayChart = !loading && dataValues.length > 0;\n\n const chartWidths = {\n all_months: 1200,\n quarter_year: 500,\n mid_year: 500,\n year: 1000,\n two_years: 1200,\n three_years: 1200,\n };\n\n return (\n
\n \n
\n setIsLineChart(true)}\n className={`w-[30px] h-[30px] shadow-md ${\n isLineChart\n ? isDarkModeState\n ? \"bg-custom-blue\"\n : \"bg-custom-light-blue\"\n : isDarkModeState\n ? \"transparent\"\n : \"bg-white\"\n } border-1 border-white rounded-[5px] ml-[10px] relative`}\n >\n \n \n setIsLineChart(false)}\n className={`w-[30px] h-[30px] shadow-md ${\n isLineChart\n ? isDarkModeState\n ? \"transparent \"\n : \"bg-white\"\n : isDarkModeState\n ? \"bg-custom-blue\"\n : \"bg-custom-light-blue\"\n } border-1 border-white rounded-[5px] ml-1 mr-1`}\n >\n \n \n
\n
\n \n Mi rentabilidad\n \n\n \n \n \n \n \n \n \n \n \n
\n
\n\n {shouldDisplayChart ? (\n
\n
\n \n {isLineChart ? (\n \n \n \n {\n if (active && payload && payload.length) {\n return (\n \n

{`${label} - ${payload[0].payload.year}`}

\n

{`${moneySymbol} ${payload[0].value}`}

\n
\n );\n }\n\n return null;\n }}\n />\n\n \n \n \n ) : (\n \n \n \n \n {\n // Aquí puedes agregar el efecto hover\n // Por ejemplo, cambiar el color de la barra\n e.target.setAttribute(\n \"fill\",\n isDarkModeState ? \"#a2e6fa\" : \"#0D3A5C\"\n );\n }}\n onMouseLeave={(data, index, e) => {\n // Aquí puedes revertir el efecto hover\n // Por ejemplo, restaurar el color original de la barra\n e.target.setAttribute(\n \"fill\",\n isDarkModeState ? \"#0D3A5C\" : \"#a2e6fa\"\n );\n }}\n />\n {\n if (active && payload && payload.length) {\n return (\n \n

{`${label} - ${payload[0].payload.year}`}

\n

{`${moneySymbol} ${payload[0].value}`}

\n
\n );\n }\n\n return null;\n }}\n />\n \n )}\n \n \n \n ) : (\n
\n {loading ? (\n \n ) : (\n \n {isSoles\n ? \"Usted no cuenta con planes en soles.\"\n : \"Usted no cuenta con planes en dólares.\"}\n

\n )}\n
\n )}\n \n \n );\n};\n\nexport default CurveChartComponent;\n","import UserMenu from \"../components/UserMenu\";\nimport Tour from \"../components/tour/Tour\";\nimport InprogressInvestmentReport from \"../components/InprogressInvestmentReport\";\nimport SideBarComponent from \"../components/SideBarComponent\";\nimport SwitchSolesComponent from \"../components/SwitchSolesComponent\";\nimport { USER_PROFILE } from \"../graphql/querys\";\nimport React, { useState, useEffect } from \"react\";\nimport RevenuePaymentReport from \"../components/RevenuePaymentsReport\";\nimport PlansInProgress from \"../components/PlansInProgress\";\nimport CurveChartComponent from \"../components/CurveChartComponent\";\nimport { getShowTourStorage } from \"../helpers/ShowTourStorage\";\nimport { getIsDarkModeStorage } from \"../helpers/IsDarkModeStorage\";\nimport { useLocation } from \"react-router-dom\";\nimport { useNavigate } from \"react-router-dom\";\nimport { getIsSoles, saveIsSoles } from \"../helpers/IsSolesStorage\";\nimport { useQuery } from \"@apollo/client\";\nimport client from \"../client\";\nimport { USER_INFO_ALL_INVESTMENT } from \"../graphql/querys\";\n\nconst HomePage = () => {\n const [isSolesState, setIsSolesState] = useState(\n getIsSoles() === \"true\" ? true : false\n );\n\n const [isDarkModeState, setIsDarkModeState] = useState(false);\n const [tourVisibleState, setTourVisibleState] = useState(true);\n\n const [userName, setUserName] = useState(\"Usuario\");\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n\n const forceTour = searchParams.get(\"forceTourVisible\");\n\n const navigate = useNavigate();\n\n const { loading, error, data } = useQuery(USER_INFO_ALL_INVESTMENT, {\n client,\n fetchPolicy: \"network-only\",\n });\n\n useEffect(() => {\n const token = localStorage.getItem(\"token\");\n console.log(\"token home\", token);\n if (!token || token === \"null\" || token === \"\") {\n navigate(\"/login\");\n } else {\n let isDarkModeStorage = getIsDarkModeStorage();\n\n if (isDarkModeStorage === \"true\") {\n setIsDarkModeState(true);\n } else {\n setIsDarkModeState(false);\n }\n\n if (forceTour === true || forceTour === \"true\") {\n setTourVisibleState(true);\n } else {\n let showTour = getShowTourStorage();\n\n if (showTour === \"false\" || showTour === false) {\n setTourVisibleState(false);\n } else {\n setTourVisibleState(true);\n\n //change current select menu to home\n // localStorage.setItem(\"currentSelectMenu\", \"home\");\n }\n }\n\n const fetchData = async () => {\n try {\n const { data } = await client.query({\n query: USER_PROFILE,\n fetchPolicy: \"network-only\",\n });\n\n if (data && data.userProfile) {\n localStorage.setItem(\n \"userProfile\",\n JSON.stringify(data.userProfile)\n );\n setUserName(data.userProfile.firstName);\n }\n } catch (error) {\n console.error(\"Error fetching user profile:\", error);\n }\n };\n\n fetchData();\n }\n }, [navigate, forceTour, tourVisibleState]);\n var dataReport = data;\n\n if (loading) return \"\";\n if (error) return ` ${error}`;\n if (!data.userInfoAllInvestment) return \"\";\n if (data.userInfoAllInvestment) {\n }\n\n const handleSwitchChange = () => {\n setIsSolesState(!isSolesState);\n saveIsSoles(!isSolesState);\n };\n\n return (\n
\n \n
\n {tourVisibleState && (\n \n )}\n \n
\n \n
\n \n Hola {userName}\n

\n \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 HomePage;\n","import React, { useState } from \"react\";\nimport Calendar from \"react-calendar\";\n\nconst CalendarComponent = ({\n isDarkModeState,\n setCurrentMonthState,\n setCurrentYearState,\n importantDays,\n}) => {\n const [date] = useState(new Date());\n\n const pastPaymentDates = importantDays.pastPaymentDays.map((day) => {\n let parts = day.date.split(\"-\");\n return `${parts[2]}-${parts[1]}-${parts[0]}`;\n });\n const remainingPaymentDates = importantDays.remainingPaymentDays.map(\n (day) => {\n let parts = day.date.split(\"-\");\n return `${parts[2]}-${parts[1]}-${parts[0]}`;\n }\n );\n\n //combine the two arrays\n // const markedDates = [...pastPaymentDates, ...remainingPaymentDates];\n const importantDates = [];\n const specialDate = [\"2024-03-27\", \"2025-03-27\", \"2026-03-27\", \"2027-03-27\"];\n\n const tileClassName = ({ date, view }) => {\n const dateWithoutTime = new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate()\n ).getTime();\n if (\n view === \"month\" &&\n importantDates.some((d) => d.getTime() === dateWithoutTime)\n ) {\n return \"important-date\";\n }\n if (pastPaymentDates.includes(date.toISOString().split(\"T\")[0])) {\n return isDarkModeState\n ? \"market-past-date-dark \"\n : \"market-past-date-light\";\n }\n if (remainingPaymentDates.includes(date.toISOString().split(\"T\")[0])) {\n return isDarkModeState ? \"marked-date-dark\" : \"marked-date-light\";\n }\n\n if (specialDate.includes(date.toISOString().split(\"T\")[0])) {\n return isDarkModeState ? \"special-date-dark\" : \"special-date-light\";\n }\n };\n\n const getTileClass = () => {\n return isDarkModeState ? \"dark-mode-tile\" : \"light-mode-tile\";\n };\n\n const formatMonthYear = (locale, date) => {\n const options = { month: \"long\", year: \"numeric\" };\n const formattedDate = date.toLocaleDateString(locale, options);\n const capitalizedMonth =\n formattedDate.charAt(0).toUpperCase() + formattedDate.slice(1);\n const textColor = isDarkModeState ? \"#A2E6FA\" : \"#0D3A5C\";\n return (\n \n {capitalizedMonth}\n {/* {date.toLocaleDateString(locale, options)} */}\n \n );\n };\n\n return (\n \n \n `${getTileClass(date, view)} ${tileClassName({ date, view })}`\n }\n formatShortWeekday={(locale, date) =>\n date.toLocaleDateString(locale, { weekday: \"short\" })[0].toUpperCase()\n }\n onActiveStartDateChange={({ activeStartDate }) => {\n setCurrentMonthState(activeStartDate.getMonth());\n setCurrentYearState(activeStartDate.getFullYear());\n }}\n value={date}\n selectRange={false}\n prev2Label={\n \n «\n \n }\n prevLabel={\n \n ‹\n \n }\n nextLabel={\n \n ›\n \n }\n next2Label={\n \n »\n \n }\n formatMonthYear={formatMonthYear}\n // maxDate={maxDate}\n />\n\n
\n
\n
\n

Fecha de pago

\n
\n\n
\n
\n

Pagos pasados

\n \n
\n
\n

Fechas importantes

\n \n \n \n );\n};\n\nexport default CalendarComponent;\n","import React, { useEffect } from \"react\";\n\nconst CardRentability = ({\n currentMonthState,\n currentYearState,\n importantDays,\n showPassRentabilityState,\n isDarkModeState,\n}) => {\n useEffect(() => {}, [currentMonthState, currentYearState]);\n\n const data = showPassRentabilityState\n ? importantDays.pastPaymentDays\n : importantDays.remainingPaymentDays;\n\n return (\n
\n {data.map((payDay, index) => (\n \n
\n
\n \n {payDay.date}\n \n {/* {showPassRentabilityState && (\n

Ver voucher

\n )} */}\n
\n
\n \n {payDay.description}\n \n {/* {showPassRentabilityState && (\n \n )} */}\n
\n
\n
\n ))}\n \n );\n};\n\nexport default CardRentability;\n","import React from \"react\";\nimport { useQuery } from \"@apollo/client\";\nimport client from \"../client\";\nimport { IMPORTANT_DAYS } from \"../graphql/querys\";\n\nconst ImportantDayListComponent = ({ isDarkModeState }) => {\n const { loading, error, data } = useQuery(IMPORTANT_DAYS, { client });\n\n if (loading) return

Loading...

;\n if (error) return

Error: {error.message}

;\n\n return (\n
\n {data.importantDays.map((day, index) => (\n \n
\n
\n \n {day.date}\n \n
\n
\n \n {day.description}\n \n
\n
\n
\n ))}\n \n );\n};\n\nexport default ImportantDayListComponent;\n","import SideBarComponent from \"../components/SideBarComponent\";\nimport UserMenu from \"../components/UserMenu\";\nimport React, { useState, useEffect } from \"react\";\nimport { useQuery } from \"@apollo/client\";\nimport CalendarComponent from \"../components/CalendarComponent\";\nimport { REMAINING_PAYMENT_DAYS, PAST_PAYMENT_DAYS } from \"../graphql/querys\";\nimport { useNavigate } from \"react-router-dom\";\n\nimport client from \"../client\";\nimport CardRentability from \"../components/CardRentability\";\nimport ImportantDayListComponent from \"../components/ImportantDayListComponent\";\n\nconst CalendarPage = ({ handleDaySelect, selectedDateState }) => {\n const [isDarkModeState, setIsDarkModeState] = useState(false);\n const [currentMonthState, setCurrentMonthState] = useState(\n new Date().getMonth()\n );\n const [currentYearState, setCurrentYearState] = useState(\n new Date().getFullYear()\n );\n const [showPassRentabilityState, setPassRentabilityState] = useState(false);\n\n const {\n loading: loadingRemaining,\n error: errorRemaining,\n data: dataRemaining,\n } = useQuery(REMAINING_PAYMENT_DAYS, { client });\n\n const { loading: loadingPast, error: errorPast, data: dataPast } = useQuery(\n PAST_PAYMENT_DAYS,\n {\n client,\n fetchPolicy: \"network-only\",\n }\n );\n // eslint-disable-next-line no-unused-vars\n const handleButtonClick = (buttonStateRentability) => {\n setPassRentabilityState(buttonStateRentability);\n };\n\n const getButtonStylesRentability = (isSelectedButton, isDarkModeState) => {\n const fontWeight = isSelectedButton ? \"font-bold\" : \"\";\n const textColor = isSelectedButton\n ? isDarkModeState\n ? \"text-custom-lightblue\"\n : \"text-custom-blue\"\n : isDarkModeState\n ? \"text-gray-200\"\n : \"text-gray-700\";\n\n return { fontWeight, textColor };\n };\n let navigate = useNavigate();\n useEffect(() => {\n const token = localStorage.getItem(\"token\");\n if (!token) {\n navigate(\"/login\");\n }\n\n const getDarkModeFromLocalStorage = () => {\n const darkModeFromStorage = localStorage.getItem(\"isDark\");\n if (darkModeFromStorage !== null) {\n setIsDarkModeState(darkModeFromStorage === \"true\");\n }\n };\n\n getDarkModeFromLocalStorage();\n }, [navigate]);\n\n if (loadingRemaining || loadingPast) return

;\n\n if (errorRemaining || errorPast) return

Error: hubo un problema

;\n\n // merge data pastPaymentDays and remainingPaymentDays in one object\n\n const importantDays = {\n remainingPaymentDays: dataRemaining.remainingPaymentDays ?? [],\n pastPaymentDays: dataPast.pastPaymentDays ?? [],\n };\n\n if (\n !importantDays ||\n (importantDays.remainingPaymentDays.lenght === 0 &&\n importantDays.pastPaymentDays.lenght === 0)\n ) {\n return

No hay datos disponibles.

;\n }\n\n return (\n \n
\n \n
\n \n
\n \n Mi calendario\n

\n
\n
\n
\n day.date)}\n setCurrentMonthState={setCurrentMonthState}\n setCurrentYearState={setCurrentYearState}\n isDarkModeState={isDarkModeState}\n importantDays={importantDays}\n />\n
\n
\n \n

Pagos de mi Rentabilidad

\n
\n
\n
\n {\n setPassRentabilityState(false);\n }}\n >\n Próximos\n \n {showPassRentabilityState ? null : (\n
\n )}\n
\n
\n setPassRentabilityState(true)}\n >\n Pasados\n \n {showPassRentabilityState ? (\n
\n ) : null}\n
\n
\n\n \n
\n
\n \n {/* */}\n
\n
\n
\n\n
\n \n Fechas importantes\n

\n \n \n
\n
\n
\n \n \n \n \n );\n};\n\nexport default CalendarPage;\n","export default \"data:image/jpeg;base64,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\"","import React, { useState, useEffect } from \"react\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faArrowLeft } from \"@fortawesome/free-solid-svg-icons\";\nimport DefaultImage from \"../images/imageunavailable.jpeg\";\n\nconst ModalComponent = ({ isOpen, onClose, voucherImages }) => {\n const [selectedImage, setSelectedImage] = useState(null);\n const [modalWidth, setModalWidth] = useState(800);\n const [modalHeight, setModalHeight] = useState(600);\n let MAX_MODAL_WIDTH = window.innerWidth * 0.8;\n let MAX_MODAL_HEIGHT = 940;\n\n const handleClick = (imageSrc) => {\n setSelectedImage(imageSrc);\n };\n\n const handleClose = () => {\n setSelectedImage(null);\n onClose();\n };\n\n const handleBack = () => {\n setSelectedImage(null);\n };\n\n useEffect(() => {\n if (selectedImage) {\n const img = new Image();\n img.src = selectedImage;\n img.onload = () => {\n const newWidth = MAX_MODAL_WIDTH;\n const newHeight = MAX_MODAL_HEIGHT;\n setModalWidth(newWidth);\n setModalHeight(newHeight);\n };\n } else {\n setModalWidth(800);\n setModalHeight(600);\n }\n }, [selectedImage, MAX_MODAL_HEIGHT, MAX_MODAL_WIDTH]);\n\n return (\n
\n {isOpen && (\n \n e.stopPropagation()}\n >\n \n X\n \n {selectedImage && (\n
\n \n \n Atrás\n \n \n
\n )}\n {!selectedImage && (\n
\n {voucherImages.map((imageSrc, index) => (\n \n {\n if (e.target.src !== DefaultImage) {\n handleClick(imageSrc);\n }\n }}\n onError={(e) => {\n e.target.src = DefaultImage;\n }}\n />\n
\n ))}\n
\n )}\n \n \n )}\n \n );\n};\n\nexport default ModalComponent;\n","import React, { useState } from \"react\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faEye } from \"@fortawesome/free-solid-svg-icons\";\nimport Finniu from \"../images/logoSmallLight.png\";\nimport ModalComponent from \"./ModalComponent\";\nimport CountUp from \"react-countup\";\nimport logoSmallDark from \"../images/logoSmallDark.png\";\n\nconst Transactions = ({\n isDarkModeState,\n isSolesState,\n filterSelectedState,\n dataReport,\n}) => {\n const defaultBankLogoUrl = isDarkModeState ? logoSmallDark : Finniu;\n const isSoles = isSolesState;\n const [modalOpenState, setModalOpenState] = useState(false);\n const [voucherImages, setVoucherImages] = useState([]);\n const dataSoles = dataReport.userInfoAllInvestment.invesmentInSoles ?? [];\n const dataDolar = dataReport.userInfoAllInvestment.invesmentInDolares ?? [];\n\n let dataToRender = null;\n if (filterSelectedState === \"inCourse\") {\n dataToRender = isSoles\n ? dataSoles[0][\"invesmentInCourse\"]\n : dataDolar[0][\"invesmentInCourse\"];\n } else if (filterSelectedState === \"toConfirm\") {\n dataToRender = isSoles\n ? dataSoles[0][\"invesmentInProcess\"]\n : dataDolar[0][\"invesmentInProcess\"];\n } else if (filterSelectedState === \"finish\") {\n dataToRender = isSoles\n ? dataSoles[0][\"invesmentFinished\"]\n : dataDolar[0][\"invesmentFinished\"];\n } else if (filterSelectedState === \"rejected\") {\n dataToRender = isSoles\n ? dataSoles[0][\"invesmentCanceled\"]\n : dataDolar[0][\"invesmentCanceled\"];\n }\n\n const hasData = dataToRender && dataToRender.length > 0;\n\n const toggleModal = (voucherImages) => {\n setModalOpenState(!modalOpenState);\n setVoucherImages(voucherImages);\n };\n\n return (\n
\n \n
\n
\n \n {hasData ? (\n \n \n \n \n \n \n \n \n \n {filterSelectedState !== \"rejected\" && }\n \n \n {dataToRender.map((item, index) => (\n \n \n \n \n \n \n \n {filterSelectedState !== \"rejected\" && (\n \n \n toggleModal(\n item.boucherList.map(\n (boucher) => boucher.boucherImage\n )\n )\n }\n >\n {item.boucherList.length !== 0 && (\n \n )}\n \n \n )}\n \n \n ))}\n \n
BancoCódigo de transacciónMontoPlazoRentabilidadIntereses mensualesVoucherInicio
\n \n {item.operationCode}\n {isSoles ? \"S/\" : \"$\"}{\" \"}\n \n {item.deadline?.name}\n \n {\"%\"}\n \n {isSoles ? \"S/\" : \"$\"}\n {item.rentabilityPerMonth !== null ? (\n \n ) : (\n \"-\"\n )}\n \n {new Date(\n item.startDateInvestment.split(\"-\")[0],\n item.startDateInvestment.split(\"-\")[1] - 1,\n item.startDateInvestment.split(\"-\")[2]\n ).toLocaleDateString(\"es-PE\", {\n day: \"2-digit\",\n month: \"2-digit\",\n year: \"numeric\",\n })}\n
\n ) : (\n \n

No encontramos información....

\n
\n )}\n\n \n
\n
\n \n \n \n );\n};\n\nexport default Transactions;\n","import React from \"react\";\nimport CountUp from \"react-countup\";\nimport { PieChart, Pie, Cell, ResponsiveContainer } from \"recharts\";\n\nfunction sum_amount_plans(amountList) {\n if (!amountList) {\n return 0;\n }\n\n let sum = 0;\n amountList.forEach((plan) => {\n sum = sum + parseFloat(plan.amount);\n });\n return sum;\n}\nconst HistoryChartComponent = ({\n isDarkModeState,\n isSolesState,\n dataReport,\n}) => {\n const userInvestmentData = dataReport.userInfoAllInvestment;\n const investmentDataInDollar = userInvestmentData.invesmentInDolares[0];\n\n const investmentDataInSoles = userInvestmentData.invesmentInSoles[0];\n\n let countFinished = 0;\n let countInCourse = 0;\n let countInProcess = 0;\n let countTotal = 0;\n\n const isSoles = isSolesState;\n\n const investmentFinishedList = isSoles\n ? investmentDataInSoles.invesmentFinished\n : investmentDataInDollar.invesmentFinished;\n\n const investmentInCourseList = isSoles\n ? investmentDataInSoles.invesmentInCourse\n : investmentDataInDollar.invesmentInCourse;\n\n const investmentInProcessList = isSoles\n ? investmentDataInSoles.invesmentInProcess\n : investmentDataInDollar.invesmentInProcess;\n\n countTotal = isSoles\n ? investmentDataInSoles.countPlanesActive\n : investmentDataInDollar.countPlanesActive;\n\n countFinished = sum_amount_plans(investmentFinishedList);\n\n countInCourse = sum_amount_plans(investmentInCourseList);\n countInProcess = sum_amount_plans(investmentInProcessList);\n\n const totalInvestments = countInCourse + countFinished;\n\n let chartData = [];\n let COLORS = [];\n if (countTotal === 0) {\n chartData = [\n {\n name: \"Inversiones finalizadas\",\n value: 100,\n },\n ];\n //GRAY\n COLORS = [\"#B9B9B9\"];\n } else {\n chartData = [\n {\n name: \"Inversiones finalizadas\",\n value: Math.round((countFinished / totalInvestments) * 100),\n },\n {\n name: \"Inversiones en curso\",\n value: Math.round((countInCourse / totalInvestments) * 100),\n },\n\n {\n name: \"Inversiones en proceso\",\n value: Math.round((countInProcess / totalInvestments) * 100),\n },\n ];\n COLORS = [\"#9381FF\", \"#0D3A5C\", \"#A2E6FA\"];\n }\n\n return (\n \n
\n
\n {\" \"}\n \n \n \n {chartData.map((entry, index) => (\n \n ))}\n \n \n \n \n Inversiones  \n \n \n \n \n
\n\n
\n
\n
\n\n \n Inversiones en curso\n \n\n \n {isSoles ? \"S/\" : \"$\"}\n \n \n
\n\n
\n
\n\n \n Inversiones finalizadas\n \n \n {isSoles ? \"S/\" : \"$\"}\n \n \n
\n\n
\n
\n \n Inversiones en proceso\n \n \n {isSoles ? \"S/\" : \"$\"}\n \n \n \n \n \n \n );\n};\n\nexport default HistoryChartComponent;\n","import React from \"react\";\n\nconst ButtonsComponent = ({\n selectButtonsState,\n setSelectButtonState,\n isDarkModeState,\n}) => {\n const handleButtonClick = (buttonState) => {\n setSelectButtonState(buttonState);\n };\n\n function getButtonStyles(buttonState, isDarkModeState) {\n const isSelected = selectButtonsState === buttonState;\n const background = isSelected\n ? isDarkModeState\n ? \"#A2E6FA\"\n : \"#18507B\"\n : isDarkModeState\n ? \"#0D3A5C\"\n : \"#dbf7ff\";\n const color = isSelected\n ? isDarkModeState\n ? \"#000000\"\n : \"#FFFFFF\"\n : isDarkModeState\n ? \"#FFFFFF\"\n : \"#000000\";\n const border = isSelected ? background : \"#dbf7ff\";\n\n return { background, color, border };\n }\n\n return (\n
\n
\n handleButtonClick(\"inCourse\")}\n style={getButtonStyles(\"inCourse\", isDarkModeState)}\n >\n En curso\n \n handleButtonClick(\"toConfirm\")}\n style={getButtonStyles(\"toConfirm\", isDarkModeState)}\n >\n En proceso\n \n handleButtonClick(\"finish\")}\n style={getButtonStyles(\"finish\", isDarkModeState)}\n >\n Finalizadas\n \n\n handleButtonClick(\"rejected\")}\n style={getButtonStyles(\"rejected\", isDarkModeState)}\n >\n Rechazadas\n \n
\n
\n );\n};\n\nexport default ButtonsComponent;\n","import React from \"react\";\nimport { PieChart, Pie, Cell, ResponsiveContainer } from \"recharts\";\nimport CountUp from \"react-countup\";\n\nconst CircleHistory = ({ isDarkModeState, isSolesState, dataReport }) => {\n const reportSoles = dataReport.userInfoAllInvestment.invesmentInSoles || [];\n const reportDollars =\n dataReport.userInfoAllInvestment.invesmentInDolares || [];\n\n dataReport = isSolesState ? reportSoles : reportDollars;\n const calculateTotal = (investmentData) => {\n let totalInCourse = 0;\n let totalFinished = 0;\n let totalInProcess = 0;\n\n investmentData.forEach((currency) => {\n totalInCourse += currency.invesmentInCourse.length;\n totalFinished += currency.invesmentFinished.length;\n totalInProcess += currency.invesmentInProcess.length;\n });\n const countInvestment = isSolesState\n ? reportSoles[0].countPlanesActive\n : reportDollars[0].countPlanesActive;\n\n return {\n invesmentInCourse: totalInCourse,\n invesmentFinished: totalFinished,\n invesmentInProcess: totalInProcess,\n countInvestment: countInvestment,\n };\n };\n\n const totalInvestment = calculateTotal(dataReport);\n\n // const percentage = isSolesState\n // ? (dataReport.soles / reportSoles) * 100\n // : (dataReport.dollars / reportDollars) * 100;\n\n let chartData = [];\n let COLORS = [];\n if (totalInvestment.countInvestment === 0) {\n chartData = [\n {\n name: \"Inversiones en soles\",\n value: 100,\n },\n ];\n\n COLORS = [\"#B9B9B9\"];\n } else {\n chartData = [{ name: \"Inversiones en soles\", value: 100 }];\n\n COLORS = totalInvestment.countInvestment === 0 ? [\"#B9B9B9\"] : [\"#A2E6FA\"];\n }\n\n return (\n \n
\n
\n \n \n \n {chartData.map((entry, index) => (\n \n ))}\n \n \n \n \n Inversiones  \n \n \n \n \n
\n\n {/* Mostrar la información de soles */}\n {isSolesState && (\n
\n
\n
\n \n \n \n \n Inversiones en soles\n \n
\n
\n )}\n\n {/* Mostrar la información de dólares */}\n {!isSolesState && (\n
\n
\n
\n\n \n {totalInvestment.countInvestment}\n \n \n Inversiones en dólares\n \n
\n \n )}\n \n \n );\n};\n\nexport default CircleHistory;\n","import React, { useState, useEffect } from \"react\";\nimport { USER_INFO_ALL_INVESTMENT } from \"../graphql/querys\";\nimport { useQuery } from \"@apollo/client\";\nimport client from \"../client\";\nimport SideBarComponent from \"../components/SideBarComponent\";\nimport UserMenu from \"../components/UserMenu\";\nimport Transactions from \"../components/Transactions\";\nimport HistoryChartComponent from \"../components/HistoryChartComponent\";\nimport ButtonsComponent from \"../components/ButtonsComponent\";\nimport CircleHistory from \"../components/CircleHistory\";\nimport { useNavigate } from \"react-router-dom\";\nimport SwitchSolesComponent from \"../components/SwitchSolesComponent\";\nimport { getIsSoles, saveIsSoles } from \"../helpers/IsSolesStorage\";\nconst MyHistory = () => {\n const [isSolesState, setIsSolesState] = useState(\n getIsSoles() === \"true\" ? true : false\n );\n const [isDarkModeState, setIsDarkModeState] = useState(false);\n // const [showSolesState, setShowSolesState] = useState(true);\n const [selectButtonsState, setSelectButtonState] = useState(\"inCourse\");\n let navigate = useNavigate();\n\n const { loading, error, data } = useQuery(USER_INFO_ALL_INVESTMENT, {\n client,\n fetchPolicy: \"network-only\",\n });\n\n useEffect(() => {\n const token = localStorage.getItem(\"token\");\n if (!token) {\n navigate(\"/login\");\n }\n\n const getDarkModeFromLocalStorage = () => {\n const darkModeFromStorage = localStorage.getItem(\"isDark\");\n if (darkModeFromStorage !== null) {\n setIsDarkModeState(darkModeFromStorage === \"true\");\n }\n };\n\n getDarkModeFromLocalStorage();\n }, [navigate]);\n\n if (loading) return \"\";\n if (error) return ` ${error}`;\n if (!data.userInfoAllInvestment) return \"\";\n\n const handleSwitchChange = () => {\n setIsSolesState(!isSolesState);\n saveIsSoles(!isSolesState);\n };\n var dataReport = data;\n\n return (\n \n
\n \n
\n \n\n
\n
\n

\n Mi historial\n

\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n \n {\" \"}\n {/* Ajusta el valor de maxWidth según tus necesidades */}\n {/*
*/}\n {/*
\n {\n setShowSolesState(true);\n }}\n >\n \n Soles\n \n \n
\n
*/}\n {/*
\n {\n setShowSolesState(false);\n }}\n >\n \n Dólares\n \n \n
\n
*/}\n {/*
*/}\n \n
\n
\n
\n

\n Mis operaciones\n

\n
\n\n
\n
\n \n
\n\n
\n \n
\n
\n \n \n \n \n );\n};\n\nexport default MyHistory;\n","export default __webpack_public_path__ + \"static/media/googlePlay.57816687.png\";","export default __webpack_public_path__ + \"static/media/appStore.6b39b15c.png\";","import React from \"react\";\nimport logoTextLight from \"../images/logoTextLight.png\";\nimport googlePlay from \"../images/googlePlay.png\";\nimport appStore from \"../images/appStore.png\";\nconst DownloadApp = () => {\n return (\n
\n
\n
\n
\n

\n Dale una oportunidad a tu dinero que trabaje por ti\n

\n

\n Tu yo del futuro te lo agradecerá mucho.\n

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

\n Descarga la app, crea tu cuenta y comienza a cumplir tus metas\n financieras.\n

\n
\n \n \n \n \n \n \n
\n
\n
\n
\n
\n
\n );\n};\n\nexport default DownloadApp;\n","export default __webpack_public_path__ + \"static/media/padlock.8fca57d1.png\";","import React, { useState } from \"react\";\nimport Padlock from \"../images/padlock.png\";\nimport { useMutation } from \"@apollo/client\";\nimport client from \"../client\";\nimport { RECOVERY_PASSWORD } from \"../graphql/mutation\";\nimport { useNavigate } from \"react-router-dom\";\nimport { messageNotify } from \"../components/MessageNotification\";\nimport { Toaster } from \"react-hot-toast\";\n\nconst WrongPassword = () => {\n let navigate = useNavigate();\n const [email, setEmail] = useState(\"\");\n\n const [recoveryPassword] = useMutation(RECOVERY_PASSWORD, { client });\n\n const handleRecoveryPassword = async () => {\n if (email.trim() === \"\") {\n messageNotify({\n message: \"Por favor ingresa tu correo electrónico\",\n });\n\n return;\n }\n\n let { data } = await recoveryPassword({\n variables: { email },\n });\n\n if (data && data.recoveryPassword && data.recoveryPassword.success) {\n navigate(`/account-verification?email=${email}`);\n }\n if (data && data.recoveryPassword && !data.recoveryPassword.success) {\n messageNotify({ message: \"El correo ingresado no existe\" });\n }\n };\n\n return (\n
\n
\n

\n ¿Olvidaste tu contraseña ?\n

\n

\n No te preocupes es posible recuperarla{\" \"}\n

\n
\n \n

\n Por favor ingresa tu correo electrónico que ingresaste al crear tu\n cuenta en la App, en unos minutos recibirás un correo electrónico\n para recuperar tu contraseña.\n

\n
\n setEmail(e.target.value)}\n />\n\n \n Enviar Correo\n \n \n
\n
\n );\n};\n\nexport default WrongPassword;\n","export default __webpack_public_path__ + \"static/media/padlockVerification.b88c2168.png\";","import React, { useEffect, useRef } from \"react\";\nimport { useMutation } from \"@apollo/client\";\nimport client from \"../client\";\nimport { VALIDATE_OTP } from \"../graphql/mutation\";\nimport { messageNotify } from \"./MessageNotification\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Toaster } from \"react-hot-toast\";\n\nconst CodeActivationComponent = ({ email, codesState, setCodesState }) => {\n const navigate = useNavigate();\n const firstInputRef = useRef(null);\n\n useEffect(() => {\n if (firstInputRef.current) {\n firstInputRef.current.focus();\n }\n }, []);\n\n const [validOtpUser] = useMutation(VALIDATE_OTP, { client });\n\n useEffect(() => {\n async function fetchData() {\n const otpCode = Object.values(codesState).join(\"\");\n if (otpCode.length === 4) {\n try {\n const { data } = await validOtpUser({\n variables: {\n email: email,\n action: \"recovery_password\",\n otpCode: otpCode,\n },\n });\n if (data.validOtpUser.success) {\n navigate(`/change-password?email=${email}`);\n } else {\n messageNotify({\n message: \"No se pudo validar el código de verificación\",\n });\n }\n } catch (error) {\n console.error(\"Error:\", error);\n messageNotify({\n message: \"No se pudo validar el código de verificación\",\n });\n }\n }\n }\n fetchData();\n }, [email, codesState, validOtpUser, navigate]);\n\n const handleChange = (e) => {\n const { name, value } = e.target;\n setCodesState((prevCode) => ({\n ...prevCode,\n [name]: value,\n }));\n const nextFieldName = `code${parseInt(name.charAt(name.length - 1)) + 1}`;\n if (value && name !== \"code4\") {\n const nextInput = document.getElementsByName(nextFieldName)[0];\n nextInput.focus();\n }\n };\n\n const handlePaste = (e) => {\n e.preventDefault();\n const pastedData = e.clipboardData.getData(\"text\").slice(0, 4);\n const codeInputs = Object.keys(codesState);\n for (let i = 0; i < codeInputs.length; i++) {\n if (pastedData[i]) {\n setCodesState((prevCodes) => ({\n ...prevCodes,\n [codeInputs[i]]: pastedData[i],\n }));\n }\n }\n };\n\n return (\n \n \n {Object.keys(codesState).map((key, index) => (\n \n ))}\n \n \n \n );\n};\n\nexport default CodeActivationComponent;\n","import React, { useRef, useState, useEffect } from \"react\";\nimport { CountdownCircleTimer } from \"react-countdown-circle-timer\";\n\nconst CountDownTimer = ({ onFinish }) => {\n const RenderTimeComponent = ({ remainingTime }) => {\n const currentTime = useRef(remainingTime);\n const prevTime = useRef(null);\n const isNewTimeFirstTick = useRef(false);\n const [, setOneLastRerender] = useState(0);\n\n if (currentTime.current !== remainingTime) {\n isNewTimeFirstTick.current = true;\n prevTime.current = currentTime.current;\n currentTime.current = remainingTime;\n } else {\n isNewTimeFirstTick.current = false;\n }\n\n useEffect(() => {\n if (remainingTime === 0 && onFinish) {\n onFinish();\n }\n }, [remainingTime]);\n\n if (remainingTime === 0) {\n setTimeout(() => {\n setOneLastRerender((val) => val + 1);\n }, 20);\n }\n\n const isTimeUp = isNewTimeFirstTick.current;\n\n return (\n
\n
\n {remainingTime}\n
\n {prevTime.current !== null && (\n \n {prevTime.current}\n
\n )}\n \n );\n };\n\n return (\n
\n
\n \n {RenderTimeComponent}\n \n
\n
\n );\n};\n\nexport default CountDownTimer;\n","import padlockVerification from \"../images/padlockVerification.png\";\nimport CodeActivationComponent from \"../components/CodeActivationComponent\";\nimport CountDownTimer from \"../components/CountDownTimer\";\nimport { useState, useEffect } from \"react\";\nimport client from \"../client\";\nimport { useMutation } from \"@apollo/client\";\nimport { RECOVERY_PASSWORD } from \"../graphql/mutation\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\n\nconst AccountVerificationScreen = () => {\n const location = useLocation();\n const navigate = useNavigate();\n const [codesState, setCodesState] = useState({\n code1: \"\",\n code2: \"\",\n code3: \"\",\n code4: \"\",\n });\n const [showResendButton, setShowResendButton] = useState(false);\n const [showTimer, setShowTimer] = useState(true);\n const [recoveryPassword] = useMutation(RECOVERY_PASSWORD, { client });\n\n const emailParams = new URLSearchParams(location.search);\n const email = emailParams.get(\"email\");\n\n useEffect(() => {\n if (!email) {\n navigate(\"/wrong-password\");\n }\n }, [email, navigate]);\n\n const handleTimerFinish = () => {\n setShowTimer(false);\n setShowResendButton(true);\n setCodesState({\n code1: \"\",\n code2: \"\",\n code3: \"\",\n code4: \"\",\n });\n };\n\n const handleResendCode = async () => {\n try {\n await recoveryPassword({ variables: { email } });\n setShowTimer(true);\n setShowResendButton(false);\n } catch (error) {\n console.error(\"Error al reenviar el código:\", error);\n }\n };\n\n const handleResendButtonClick = async () => {\n setCodesState({\n code1: \"\",\n code2: \"\",\n code3: \"\",\n code4: \"\",\n });\n await handleResendCode();\n };\n\n return (\n
\n
\n
\n \"Padlock\"\n
\n

\n Ingresar el código de verificación\n

\n
\n

\n Te hemos enviado un código a tu correo para confirmar la operación\n

\n
\n
\n \n\n {showResendButton && (\n \n Reenviar código\n \n )}\n {showTimer && (\n <>\n

\n Reenviar el código en\n

\n \n \n )}\n
\n
\n );\n};\n\nexport default AccountVerificationScreen;\n","import React, { useState, useEffect } from \"react\";\nimport Padlock from \"../images/padlock.png\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faEye, faEyeSlash } from \"@fortawesome/free-solid-svg-icons\";\nimport { useMutation } from \"@apollo/client\";\nimport { CHANGE_PASSWORD } from \"../graphql/mutation\";\nimport { messageNotify } from \"../components/MessageNotification\";\nimport { Toaster } from \"react-hot-toast\";\nimport { useNavigate } from \"react-router-dom\";\nimport { useLocation } from \"react-router-dom\";\n\nconst ChangePassword = () => {\n const location = useLocation();\n const [showPasswordState, setShowPasswordState] = useState(false);\n const [newPassword, setNewPassword] = useState(\"\");\n const [redirect, setRedirect] = useState(false);\n let navigate = useNavigate();\n\n const togglePasswordVisibility = () => {\n setShowPasswordState(!showPasswordState);\n };\n const emailParams = new URLSearchParams(location.search);\n const email = emailParams.get(\"email\");\n\n useEffect(() => {\n const emailParams = new URLSearchParams(location.search);\n const email = emailParams.get(\"email\");\n\n if (!email) {\n navigate(\"/wrong-password\");\n }\n }, [location.search, navigate]);\n\n const [changePasswordMinimal, { loading }] = useMutation(CHANGE_PASSWORD, {\n onError: (error) => {\n console.error(\"Error:\", error);\n },\n onCompleted: (data) => {\n messageNotify({\n type: \"success\",\n message: \"Contraseña cambiada con éxito\",\n });\n\n setRedirect(true);\n },\n });\n\n const handleChange = (e) => {\n setNewPassword(e.target.value);\n };\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n try {\n await changePasswordMinimal({\n variables: {\n email: email,\n newPassword: newPassword,\n },\n });\n } catch (error) {}\n };\n\n useEffect(() => {\n let timer;\n\n if (redirect) {\n timer = setTimeout(() => {\n navigate(\"/login\");\n }, 5000);\n }\n\n return () => clearTimeout(timer);\n }, [redirect, navigate]);\n\n return (\n
\n
\n \"Padlock\"\n

Cambiar tu contraseña

\n

Ingresa tu nueva contraseña

\n
\n
\n \n
\n \n
\n
\n
\n \n {loading ? \"Cargando...\" : \"Cambiar contraseña\"}\n \n
\n \n \n
\n
\n );\n};\n\nexport default ChangePassword;\n","import React from \"react\";\nimport { Routes, Route } from \"react-router-dom\";\nimport LoginPage from \"../../pages/LoginPage\";\nimport HomePage from \"../../pages/HomePage\";\nimport CalendarPage from \"../../pages/CalendarPage\";\nimport MyHistory from \"../../pages/MyHistory\";\nimport DownloadApp from \"../../pages/DownloadApp\";\nimport Tour from \"../tour/Tour\";\nimport SwitchSolesTour from \"../SwitchSolesTour\";\nimport WrongPassword from \"../../pages/WrongPassword\";\nimport AccountVerificationScreen from \"../../pages/AccountVerificationScreen\";\nimport ChangePassword from \"../../pages/ChangePassword\";\nimport ModalComponent from \"../ModalComponent\";\n\nconst RouterPrincipal = () => {\n return (\n \n } />\n } />\n } />\n } />\n } />\n } />\n } />\n } />\n } />\n }\n />\n } />\n } />\n \n );\n};\n\nexport default RouterPrincipal;\n","import React from \"react\";\nimport \"./App.css\";\nimport \"./output.css\";\nimport { ApolloProvider, ApolloClient, InMemoryCache } from \"@apollo/client\";\nimport RouterPrincipal from \"./components/router/RouterPrincipal\";\nimport { BrowserRouter as Router } from \"react-router-dom\";\nimport ReactGA from \"react-ga\";\n\nconst TRACKING_ID = \"G-D66RJBGHM6\"; // YOUR_OWN_TRACKING_ID\nReactGA.initialize(TRACKING_ID);\n\n// Crear un cliente de Apollo\nconst client = new ApolloClient({\n uri: \"https://manage.finniu.com/api/v1/graph/finniu/\", // Reemplaza con la URL de tu servidor GraphQL\n cache: new InMemoryCache(),\n});\n\nfunction App() {\n // const [isDarkMode, setIsDarkMode] = useState(false);\n return (\n \n \n
\n \n
\n
\n
\n );\n}\nexport default App;\n","import React from \"react\";\nimport ReactDOM from \"react-dom/client\";\nimport \"./index.css\";\nimport App from \"./App\";\n\nconst root = ReactDOM.createRoot(document.getElementById(\"root\"));\nroot.render(\n \n \n \n);\n"],"sourceRoot":""}