diff --git a/src/components/Consumption/ConsumptionView.tsx b/src/components/Consumption/ConsumptionView.tsx index 4515ce4d4e729eb89fcc3fe5595aaff218bded43..a4f19def0cade308dfb53d0597f1b755ae28729e 100644 --- a/src/components/Consumption/ConsumptionView.tsx +++ b/src/components/Consumption/ConsumptionView.tsx @@ -13,7 +13,6 @@ import { useClient } from 'cozy-client' import { FluidState, FluidType, TimeStep } from 'enums' import { DateTime } from 'luxon' import React, { useCallback, useEffect, useMemo, useState } from 'react' -import { useNavigate } from 'react-router-dom' import DateChartService from 'services/dateChart.service' import ProfileService from 'services/profile.service' import { @@ -22,7 +21,6 @@ import { setSelectedDate, setShowOfflineData, } from 'store/chart/chart.slice' -import { showReleaseNotes } from 'store/global/global.slice' import { useAppDispatch, useAppSelector } from 'store/hooks' import { openPartnersModal, setCustomPopup } from 'store/modal/modal.slice' import { isLastDateReached } from 'utils/date' @@ -37,7 +35,6 @@ import ConsumptionDetails from './ConsumptionDetails/ConsumptionDetails' import FluidButtons from './FluidButtons/FluidButtons' const ConsumptionView = ({ fluidType }: { fluidType: FluidType }) => { - const navigate = useNavigate() const client = useClient() const dispatch = useAppDispatch() const { @@ -56,9 +53,6 @@ const ConsumptionView = ({ fluidType }: { fluidType: FluidType }) => { currentFluidStatus.status === FluidState.CHALLENGE_ASKED const [openExpiredConsentModal, setOpenExpiredConsentModal] = useState(true) - const [openReleaseNoteModal, setOpenReleaseNoteModal] = useState<boolean>( - releaseNotes.show - ) const [consentExpiredFluids, setConsentExpiredFluids] = useState<FluidType[]>( [] ) @@ -81,20 +75,6 @@ const ConsumptionView = ({ fluidType }: { fluidType: FluidType }) => { return `common.title_consumption_${getFluidName(fluidType)}` } - const handleCloseReleaseNoteModal = useCallback(() => { - setOpenReleaseNoteModal(false) - dispatch( - showReleaseNotes({ - show: false, - notes: releaseNotes.notes, - redirectLink: releaseNotes.redirectLink, - }) - ) - if (releaseNotes.redirectLink) { - navigate(releaseNotes.redirectLink) - } - }, [dispatch, navigate, releaseNotes.notes, releaseNotes.redirectLink]) - const handleClosePartnerIssueModal = useCallback(async () => { const profileValues = await profileService.getProfile() if (profileValues) { @@ -230,12 +210,7 @@ const ConsumptionView = ({ fluidType }: { fluidType: FluidType }) => { </Content> {/* MODALS */} - {openReleaseNoteModal && ( - <ReleaseNotesModal - open={openReleaseNoteModal} - handleCloseClick={handleCloseReleaseNoteModal} - /> - )} + {releaseNotes.show && <ReleaseNotesModal open={releaseNotes.show} />} {/* Partner issue modals for individual fluids */} {fluidStatus .filter(fluid => fluid.maintenance) diff --git a/src/components/ReleaseNotesModal/ReleaseNotesModal.tsx b/src/components/ReleaseNotesModal/ReleaseNotesModal.tsx index d6c0ac583c54beb4f24437b35bce4ab8f9a8e3e2..ac6cd2f5c309d3e17fdab8639259995a18921ec6 100644 --- a/src/components/ReleaseNotesModal/ReleaseNotesModal.tsx +++ b/src/components/ReleaseNotesModal/ReleaseNotesModal.tsx @@ -2,21 +2,30 @@ import Button from '@material-ui/core/Button' import Dialog from '@material-ui/core/Dialog' import { useI18n } from 'cozy-ui/transpiled/react/I18n' import React from 'react' -import { useAppSelector } from 'store/hooks' +import { useNavigate } from 'react-router-dom' +import { showReleaseNotes } from 'store/global/global.slice' +import { useAppDispatch, useAppSelector } from 'store/hooks' import './ReleaseNotesModal.scss' -interface ReleaseNotesModalProps { - open: boolean - handleCloseClick: () => void -} - -const ReleaseNotesModal = ({ - open, - handleCloseClick, -}: ReleaseNotesModalProps) => { +const ReleaseNotesModal = ({ open }: { open: boolean }) => { const { t } = useI18n() + const navigate = useNavigate() + const dispatch = useAppDispatch() const { releaseNotes } = useAppSelector(state => state.ecolyo.global) + const handleCloseClick = () => { + dispatch( + showReleaseNotes({ + show: false, + notes: releaseNotes.notes, + redirectLink: releaseNotes.redirectLink, + }) + ) + if (releaseNotes.redirectLink) { + navigate(releaseNotes.redirectLink) + } + } + return ( <Dialog open={open}