mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-23 09:09:36 +02:00
Merge pull request #25804 from overleaf/dp-on-for-guests
Remove references to removed track changes onForGuests option GitOrigin-RevId: c251ad41633df33f0d963dbc3c2e5cb62920a5e1
This commit is contained in:
@@ -20,7 +20,6 @@ import { usePermissionsContext } from '@/features/ide-react/context/permissions-
|
||||
|
||||
export type TrackChangesState = {
|
||||
onForEveryone: boolean
|
||||
onForGuests: boolean
|
||||
onForMembers: Record<UserId, boolean | undefined>
|
||||
}
|
||||
|
||||
@@ -31,7 +30,6 @@ export const TrackChangesStateContext = createContext<
|
||||
type SaveTrackChangesRequestBody = {
|
||||
on?: boolean
|
||||
on_for?: Record<UserId, boolean | undefined>
|
||||
on_for_guests?: boolean
|
||||
}
|
||||
|
||||
type TrackChangesStateActions = {
|
||||
@@ -62,22 +60,20 @@ export const TrackChangesStateProvider: FC<React.PropsWithChildren> = ({
|
||||
useEffect(() => {
|
||||
setWantTrackChanges(
|
||||
trackChangesValue === true ||
|
||||
(trackChangesValue !== false &&
|
||||
trackChangesValue[user.id ?? '__guests__'])
|
||||
(trackChangesValue !== false && !!user.id && trackChangesValue[user.id])
|
||||
)
|
||||
}, [setWantTrackChanges, trackChangesValue, user.id])
|
||||
|
||||
const trackChangesIsObject =
|
||||
trackChangesValue !== true && trackChangesValue !== false
|
||||
const onForEveryone = trackChangesValue === true
|
||||
const onForGuests =
|
||||
onForEveryone ||
|
||||
(trackChangesIsObject && trackChangesValue.__guests__ === true)
|
||||
|
||||
const onForMembers = useMemo(() => {
|
||||
const onForMembers: Record<UserId, boolean | undefined> = {}
|
||||
if (trackChangesIsObject) {
|
||||
for (const key of Object.keys(trackChangesValue)) {
|
||||
// TODO: Remove this check when we have converted
|
||||
// all projects to the current format.
|
||||
if (key !== '__guests__') {
|
||||
onForMembers[key as UserId] = trackChangesValue[key as UserId]
|
||||
}
|
||||
@@ -145,8 +141,8 @@ export const TrackChangesStateProvider: FC<React.PropsWithChildren> = ({
|
||||
)
|
||||
|
||||
const value = useMemo(
|
||||
() => ({ onForEveryone, onForGuests, onForMembers }),
|
||||
[onForEveryone, onForGuests, onForMembers]
|
||||
() => ({ onForEveryone, onForMembers }),
|
||||
[onForEveryone, onForMembers]
|
||||
)
|
||||
|
||||
return (
|
||||
|
||||
@@ -45,6 +45,8 @@ export type ProjectContextValue = {
|
||||
signUpDate: string
|
||||
}
|
||||
tags: Tag[]
|
||||
// TODO: Remove __guests__ and boolean options when we have converted
|
||||
// all projects to the current format.
|
||||
trackChangesState: boolean | Record<UserId | '__guests__', boolean>
|
||||
projectSnapshot: ProjectSnapshot
|
||||
joinedOnce: boolean
|
||||
|
||||
Reference in New Issue
Block a user