chore(next): remove deep copying of docPermissions in the Version View (#9491)
Removes unnecessary `deepCopyObject(docPermissions)` in the Version View
which slows down loading speed.
The comment seems to be resolved, I'm not getting this error and here
for example in the same case
3c0e832a9a/packages/next/src/views/Document/index.tsx (L327)
we don't do deep copying.
This commit is contained in:
@@ -8,7 +8,6 @@ import type {
|
|||||||
} from 'payload'
|
} from 'payload'
|
||||||
|
|
||||||
import { notFound } from 'next/navigation.js'
|
import { notFound } from 'next/navigation.js'
|
||||||
import { deepCopyObjectSimple } from 'payload'
|
|
||||||
import React from 'react'
|
import React from 'react'
|
||||||
|
|
||||||
import { getLatestVersion } from '../Versions/getLatestVersion.js'
|
import { getLatestVersion } from '../Versions/getLatestVersion.js'
|
||||||
@@ -140,14 +139,7 @@ export const VersionView: PayloadServerReactComponent<EditViewComponent> = async
|
|||||||
return (
|
return (
|
||||||
<DefaultVersionView
|
<DefaultVersionView
|
||||||
doc={doc}
|
doc={doc}
|
||||||
/**
|
docPermissions={docPermissions}
|
||||||
* After bumping the Next.js canary to 104, and React to 19.0.0-rc-06d0b89e-20240801" we have to deepCopy the permissions object (https://github.com/payloadcms/payload/pull/7541).
|
|
||||||
* If both HydrateClientUser and RenderCustomComponent receive the same permissions object (same object reference), we get a
|
|
||||||
* "TypeError: Cannot read properties of undefined (reading '$$typeof')" error
|
|
||||||
*
|
|
||||||
* // TODO: Revisit this in the future and figure out why this is happening. Might be a React/Next.js bug. We don't know why it happens, and a future React/Next version might unbreak this (keep an eye on this and remove deepCopyObjectSimple if that's the case)
|
|
||||||
*/
|
|
||||||
docPermissions={deepCopyObjectSimple(docPermissions)}
|
|
||||||
initialComparisonDoc={latestVersion}
|
initialComparisonDoc={latestVersion}
|
||||||
latestDraftVersion={latestDraftVersion?.id}
|
latestDraftVersion={latestDraftVersion?.id}
|
||||||
latestPublishedVersion={latestPublishedVersion?.id}
|
latestPublishedVersion={latestPublishedVersion?.id}
|
||||||
|
|||||||
@@ -60,9 +60,9 @@ export interface Config {
|
|||||||
user: User & {
|
user: User & {
|
||||||
collection: 'users';
|
collection: 'users';
|
||||||
};
|
};
|
||||||
jobs?: {
|
jobs: {
|
||||||
tasks: unknown;
|
tasks: unknown;
|
||||||
workflows?: unknown;
|
workflows: unknown;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
export interface UserAuthOperations {
|
export interface UserAuthOperations {
|
||||||
|
|||||||
Reference in New Issue
Block a user