From db4728d292e0d3100f441eab63ba8267dab6f11a Mon Sep 17 00:00:00 2001 From: Domagoj Kriskovic Date: Fri, 21 Feb 2025 12:44:24 +0100 Subject: [PATCH] Convert track changes to proper format when reviewer role is enabled (#23683) GitOrigin-RevId: 2ac696804491f61e52b4645dff7f64339c47afc5 --- .../Collaborators/CollaboratorsHandler.js | 1 + .../context/track-changes-state-context.tsx | 47 +++++++++++++------ 2 files changed, 34 insertions(+), 14 deletions(-) diff --git a/services/web/app/src/Features/Collaborators/CollaboratorsHandler.js b/services/web/app/src/Features/Collaborators/CollaboratorsHandler.js index 5a70d2a621..00ec34022c 100644 --- a/services/web/app/src/Features/Collaborators/CollaboratorsHandler.js +++ b/services/web/app/src/Features/Collaborators/CollaboratorsHandler.js @@ -25,6 +25,7 @@ module.exports = { addUserIdToProject, transferProjects, setCollaboratorPrivilegeLevel, + convertTrackChangesToExplicitFormat, }, } diff --git a/services/web/frontend/js/features/review-panel-new/context/track-changes-state-context.tsx b/services/web/frontend/js/features/review-panel-new/context/track-changes-state-context.tsx index d47da8c10a..b9eb61c7a5 100644 --- a/services/web/frontend/js/features/review-panel-new/context/track-changes-state-context.tsx +++ b/services/web/frontend/js/features/review-panel-new/context/track-changes-state-context.tsx @@ -17,6 +17,7 @@ import { postJSON } from '@/infrastructure/fetch-json' import useEventListener from '@/shared/hooks/use-event-listener' import { ProjectContextValue } from '@/shared/context/types/project-context' import { usePermissionsContext } from '@/features/ide-react/context/permissions-context' +import getMeta from '@/utils/meta' export type TrackChangesState = { onForEveryone: boolean @@ -96,13 +97,22 @@ export const TrackChangesStateProvider: FC = ({ children }) => { const saveTrackChangesForCurrentUser = useCallback( async (trackChanges: boolean) => { if (user.id) { - saveTrackChanges({ - on_for: { - ...onForMembers, - [user.id]: trackChanges, - }, - on_for_guests: onForGuests, - }) + if (getMeta('ol-isReviewerRoleEnabled')) { + saveTrackChanges({ + on_for: { + ...onForMembers, + [user.id]: trackChanges, + }, + }) + } else { + saveTrackChanges({ + on_for: { + ...onForMembers, + [user.id]: trackChanges, + }, + on_for_guests: onForGuests, + }) + } } }, [onForMembers, onForGuests, user.id, saveTrackChanges] @@ -126,13 +136,22 @@ export const TrackChangesStateProvider: FC = ({ children }) => { !onForEveryone ) { const value = onForMembers[user.id] - actions.saveTrackChanges({ - on_for: { - ...onForMembers, - [user.id]: !value, - }, - on_for_guests: onForGuests, - }) + if (getMeta('ol-isReviewerRoleEnabled')) { + actions.saveTrackChanges({ + on_for: { + ...onForMembers, + [user.id]: !value, + }, + }) + } else { + actions.saveTrackChanges({ + on_for: { + ...onForMembers, + [user.id]: !value, + }, + on_for_guests: onForGuests, + }) + } } }, [ actions,