From cf3f74fc44ef367934d40d9e5cd641a712fd9b04 Mon Sep 17 00:00:00 2001 From: Mino Togna Date: Mon, 7 Oct 2024 13:33:07 +0200 Subject: [PATCH] 3464 - do not pass ODP to useIsEditODPEnabled && useShowReviewIndicator (#4006) --- .../OriginalDataPoint/OriginalDataPoint.tsx | 6 +++--- .../AdditionalComments/AdditionalComments.tsx | 4 ++-- .../components/DataSources/DataSources.tsx | 4 ++-- .../DataSources/MethodsUsed/MethodsUsed.tsx | 4 ++-- .../DataSources/References/References.tsx | 4 ++-- .../DataSources/hooks/useIsDisabled.ts | 10 ++++----- .../components/NationalClass.tsx | 4 ++-- .../components/NationalClassesTable.tsx | 8 +++---- .../YearSelection/YearSelection.tsx | 21 +++++++------------ .../OriginalDataPoint/hooks/useCanEditData.ts | 8 ------- .../hooks/useIsEditODPEnabled.ts | 11 ++++++++++ .../hooks/useShowReviewIndicator.ts | 10 ++++----- 12 files changed, 44 insertions(+), 50 deletions(-) delete mode 100644 src/client/pages/OriginalDataPoint/hooks/useCanEditData.ts create mode 100644 src/client/pages/OriginalDataPoint/hooks/useIsEditODPEnabled.ts diff --git a/src/client/pages/OriginalDataPoint/OriginalDataPoint.tsx b/src/client/pages/OriginalDataPoint/OriginalDataPoint.tsx index 2e8f5759f8..da0413703c 100644 --- a/src/client/pages/OriginalDataPoint/OriginalDataPoint.tsx +++ b/src/client/pages/OriginalDataPoint/OriginalDataPoint.tsx @@ -42,10 +42,10 @@ const OriginalDataPoint: React.FC = () => { - + - - + +
diff --git a/src/client/pages/OriginalDataPoint/components/DataSources/AdditionalComments/AdditionalComments.tsx b/src/client/pages/OriginalDataPoint/components/DataSources/AdditionalComments/AdditionalComments.tsx index e65a79bff7..b9c33bc4e8 100644 --- a/src/client/pages/OriginalDataPoint/components/DataSources/AdditionalComments/AdditionalComments.tsx +++ b/src/client/pages/OriginalDataPoint/components/DataSources/AdditionalComments/AdditionalComments.tsx @@ -19,8 +19,8 @@ const AdditionalComments: React.FC = (props: Props) => { const { originalDataPoint } = props const { t } = useTranslation() - const reviewIndicator = useShowReviewIndicator(originalDataPoint) - const disabled = useIsDisabled(originalDataPoint) + const reviewIndicator = useShowReviewIndicator() + const disabled = useIsDisabled() const updateOriginalDataPoint = useUpdateDataSources() const onChange = useCallback>( diff --git a/src/client/pages/OriginalDataPoint/components/DataSources/DataSources.tsx b/src/client/pages/OriginalDataPoint/components/DataSources/DataSources.tsx index a15df46bf2..1c26461965 100644 --- a/src/client/pages/OriginalDataPoint/components/DataSources/DataSources.tsx +++ b/src/client/pages/OriginalDataPoint/components/DataSources/DataSources.tsx @@ -5,7 +5,7 @@ import { OriginalDataPoint } from 'meta/assessment/originalDataPoint' import { useIsPrintRoute } from 'client/hooks/useIsRoute' import { DataCell, DataGrid } from 'client/components/DataGrid' -import { useCanEditData } from 'client/pages/OriginalDataPoint/hooks/useCanEditData' +import { useIsEditODPEnabled } from 'client/pages/OriginalDataPoint/hooks/useIsEditODPEnabled' import AdditionalComments from './AdditionalComments' import MethodsUsed from './MethodsUsed' @@ -20,7 +20,7 @@ const DataSources: React.FC = (props) => { const { t } = useTranslation() const { print } = useIsPrintRoute() - const canEdit = useCanEditData(originalDataPoint) + const canEdit = useIsEditODPEnabled() return (
diff --git a/src/client/pages/OriginalDataPoint/components/DataSources/MethodsUsed/MethodsUsed.tsx b/src/client/pages/OriginalDataPoint/components/DataSources/MethodsUsed/MethodsUsed.tsx index f2969dfa86..6f42a6f7a9 100644 --- a/src/client/pages/OriginalDataPoint/components/DataSources/MethodsUsed/MethodsUsed.tsx +++ b/src/client/pages/OriginalDataPoint/components/DataSources/MethodsUsed/MethodsUsed.tsx @@ -22,8 +22,8 @@ const MethodsUsed: React.FC = (props: Props) => { const { originalDataPoint } = props const { t } = useTranslation() - const reviewIndicator = useShowReviewIndicator(originalDataPoint) - const disabled = useIsDisabled(originalDataPoint) + const reviewIndicator = useShowReviewIndicator() + const disabled = useIsDisabled() const updateOriginalDataPoint = useUpdateDataSources() const options = useMemo>( diff --git a/src/client/pages/OriginalDataPoint/components/DataSources/References/References.tsx b/src/client/pages/OriginalDataPoint/components/DataSources/References/References.tsx index 54ff537f30..e39536ee0f 100644 --- a/src/client/pages/OriginalDataPoint/components/DataSources/References/References.tsx +++ b/src/client/pages/OriginalDataPoint/components/DataSources/References/References.tsx @@ -23,8 +23,8 @@ const References: React.FC = (props: Props) => { const { originalDataPoint } = props const { t } = useTranslation() - const reviewIndicator = useShowReviewIndicator(originalDataPoint) - const disabled = useIsDisabled(originalDataPoint) + const reviewIndicator = useShowReviewIndicator() + const disabled = useIsDisabled() const updateOriginalDataPoint = useUpdateDataSources() diff --git a/src/client/pages/OriginalDataPoint/components/DataSources/hooks/useIsDisabled.ts b/src/client/pages/OriginalDataPoint/components/DataSources/hooks/useIsDisabled.ts index a00640a362..f65b763900 100644 --- a/src/client/pages/OriginalDataPoint/components/DataSources/hooks/useIsDisabled.ts +++ b/src/client/pages/OriginalDataPoint/components/DataSources/hooks/useIsDisabled.ts @@ -1,11 +1,9 @@ -import { OriginalDataPoint } from 'meta/assessment' - import { useIsPrintRoute } from 'client/hooks/useIsRoute' -import { useCanEditData } from 'client/pages/OriginalDataPoint/hooks/useCanEditData' +import { useIsEditODPEnabled } from 'client/pages/OriginalDataPoint/hooks/useIsEditODPEnabled' -export const useIsDisabled = (originalDataPoint: OriginalDataPoint) => { +export const useIsDisabled = () => { const { print } = useIsPrintRoute() - const canEditData = useCanEditData(originalDataPoint) - return Boolean(print || !canEditData || !originalDataPoint.year) + const canEditData = useIsEditODPEnabled() + return Boolean(print || !canEditData) } diff --git a/src/client/pages/OriginalDataPoint/components/NationalClasses/components/NationalClass.tsx b/src/client/pages/OriginalDataPoint/components/NationalClasses/components/NationalClass.tsx index f86d052925..2709abc355 100644 --- a/src/client/pages/OriginalDataPoint/components/NationalClasses/components/NationalClass.tsx +++ b/src/client/pages/OriginalDataPoint/components/NationalClasses/components/NationalClass.tsx @@ -8,7 +8,7 @@ import { DataCell, DataRow } from 'client/components/DataGrid' import InputText from 'client/components/Inputs/InputText' import TextArea from 'client/components/Inputs/TextArea' // import { useNationalClassNameComments } from 'client/pages/OriginalDataPoint/hooks' -import { useCanEditData } from 'client/pages/OriginalDataPoint/hooks/useCanEditData' +import { useIsEditODPEnabled } from 'client/pages/OriginalDataPoint/hooks/useIsEditODPEnabled' import { useOnChangeNationalClass } from './hooks/onChangeNationalClass' import { useRowActions } from './hooks/useRowActions' @@ -27,7 +27,7 @@ const NationalClass: React.FC = (props) => { const { t } = useTranslation() const { print } = useIsPrintRoute() - const canEditData = useCanEditData(originalDataPoint) + const canEditData = useIsEditODPEnabled() const actions = useRowActions({ canEdit: canEditData && !placeHolder, index, originalDataPoint }) const { onChangeDefinition, onChangeName, onPasteDefinition, onPasteName } = useOnChangeNationalClass({ index }) diff --git a/src/client/pages/OriginalDataPoint/components/NationalClasses/components/NationalClassesTable.tsx b/src/client/pages/OriginalDataPoint/components/NationalClasses/components/NationalClassesTable.tsx index 63bc386f7e..982e35d23d 100644 --- a/src/client/pages/OriginalDataPoint/components/NationalClasses/components/NationalClassesTable.tsx +++ b/src/client/pages/OriginalDataPoint/components/NationalClasses/components/NationalClassesTable.tsx @@ -7,7 +7,7 @@ import { useIsPrintRoute } from 'client/hooks/useIsRoute' import { useCycleRouteParams } from 'client/hooks/useRouteParams' import { DataCell, DataGrid } from 'client/components/DataGrid' import NationalClass from 'client/pages/OriginalDataPoint/components/NationalClasses/components/NationalClass' -import { useCanEditData } from 'client/pages/OriginalDataPoint/hooks/useCanEditData' +import { useIsEditODPEnabled } from 'client/pages/OriginalDataPoint/hooks/useIsEditODPEnabled' type Props = { gridRef: React.MutableRefObject @@ -21,12 +21,12 @@ export const NationalClassesTable = (props: Props) => { const { cycleName } = useCycleRouteParams() const { print } = useIsPrintRoute() - const canEdit = useCanEditData(originalDataPoint) + const canEdit = useIsEditODPEnabled() return ( {print && ( @@ -44,7 +44,7 @@ export const NationalClassesTable = (props: Props) => { {canEdit &&
} {nationalClasses.map((nationalClass, idx) => ( - + ))} ) diff --git a/src/client/pages/OriginalDataPoint/components/YearSelection/YearSelection.tsx b/src/client/pages/OriginalDataPoint/components/YearSelection/YearSelection.tsx index 2b707f20b3..dcc492308d 100644 --- a/src/client/pages/OriginalDataPoint/components/YearSelection/YearSelection.tsx +++ b/src/client/pages/OriginalDataPoint/components/YearSelection/YearSelection.tsx @@ -6,23 +6,18 @@ import classNames from 'classnames' import { ODPs } from 'meta/assessment' import { useODPYears, useOriginalDataPoint } from 'client/store/ui/originalDataPoint' -import { useSectionRouteParams } from 'client/hooks/useRouteParams' +import { useIsEditTableDataEnabled } from 'client/store/user' +import { useOriginalDataPointRouteParams } from 'client/hooks/useRouteParams' import { useOnChange } from './hooks/useOnChange' -type Props = { - canEditData: boolean -} - -const YearSelection: React.FC = (props) => { - const { canEditData } = props - +const YearSelection: React.FC = () => { const { t } = useTranslation() - const { cycleName } = useSectionRouteParams() + const { cycleName, sectionName } = useOriginalDataPointRouteParams() const originalDataPoint = useOriginalDataPoint() + const canEditData = useIsEditTableDataEnabled(sectionName) const onChange = useOnChange() const { years, reservedYears } = useODPYears(cycleName) - const validYear = ODPs.validateYear(originalDataPoint) const disabled = Boolean(!canEditData) @@ -31,13 +26,13 @@ const YearSelection: React.FC = (props) => {

{t('nationalDataPoint.referenceYearData')}