1
1
import type {
2
2
AdminViewProps ,
3
- CollectionPermission ,
4
- GlobalPermission ,
5
3
PayloadComponent ,
6
4
SanitizedCollectionConfig ,
5
+ SanitizedCollectionPermission ,
7
6
SanitizedConfig ,
8
7
SanitizedGlobalConfig ,
8
+ SanitizedGlobalPermission ,
9
9
ServerSideEditViewProps ,
10
10
} from 'payload'
11
11
import type React from 'react'
@@ -38,7 +38,7 @@ export const getViewsFromConfig = ({
38
38
routeSegments : string [ ]
39
39
} & (
40
40
| {
41
- docPermissions : CollectionPermission | GlobalPermission
41
+ docPermissions : SanitizedCollectionPermission | SanitizedGlobalPermission
42
42
overrideDocPermissions ?: false | undefined
43
43
}
44
44
| {
@@ -78,19 +78,15 @@ export const getViewsFromConfig = ({
78
78
const [ collectionEntity , collectionSlug , segment3 , segment4 , segment5 , ...remainingSegments ] =
79
79
routeSegments
80
80
81
- if ( ! overrideDocPermissions && ! docPermissions ?. read ?. permission ) {
81
+ if ( ! overrideDocPermissions && ! docPermissions ?. read ) {
82
82
throw new Error ( 'not-found' )
83
83
} else {
84
84
// `../:id`, or `../create`
85
85
switch ( routeSegments . length ) {
86
86
case 3 : {
87
87
switch ( segment3 ) {
88
88
case 'create' : {
89
- if (
90
- ! overrideDocPermissions &&
91
- 'create' in docPermissions &&
92
- docPermissions ?. create ?. permission
93
- ) {
89
+ if ( ! overrideDocPermissions && 'create' in docPermissions && docPermissions . create ) {
94
90
CustomView = {
95
91
ComponentConfig : getCustomViewByKey ( views , 'default' ) ,
96
92
}
@@ -176,7 +172,7 @@ export const getViewsFromConfig = ({
176
172
}
177
173
178
174
case 'versions' : {
179
- if ( ! overrideDocPermissions && docPermissions ?. readVersions ?. permission ) {
175
+ if ( ! overrideDocPermissions && docPermissions ?. readVersions ) {
180
176
CustomView = {
181
177
ComponentConfig : getCustomViewByKey ( views , 'versions' ) ,
182
178
}
@@ -229,7 +225,7 @@ export const getViewsFromConfig = ({
229
225
// `../:id/versions/:version`, etc
230
226
default : {
231
227
if ( segment4 === 'versions' ) {
232
- if ( ! overrideDocPermissions && docPermissions ?. readVersions ?. permission ) {
228
+ if ( ! overrideDocPermissions && docPermissions ?. readVersions ) {
233
229
CustomView = {
234
230
ComponentConfig : getCustomViewByKey ( views , 'version' ) ,
235
231
}
@@ -281,7 +277,7 @@ export const getViewsFromConfig = ({
281
277
if ( globalConfig ) {
282
278
const [ globalEntity , globalSlug , segment3 , ...remainingSegments ] = routeSegments
283
279
284
- if ( ! overrideDocPermissions && ! docPermissions ?. read ?. permission ) {
280
+ if ( ! overrideDocPermissions && ! docPermissions ?. read ) {
285
281
throw new Error ( 'not-found' )
286
282
} else {
287
283
switch ( routeSegments . length ) {
@@ -323,7 +319,7 @@ export const getViewsFromConfig = ({
323
319
}
324
320
325
321
case 'versions' : {
326
- if ( ! overrideDocPermissions && docPermissions ?. readVersions ?. permission ) {
322
+ if ( ! overrideDocPermissions && docPermissions ?. readVersions ) {
327
323
CustomView = {
328
324
ComponentConfig : getCustomViewByKey ( views , 'versions' ) ,
329
325
}
@@ -340,7 +336,7 @@ export const getViewsFromConfig = ({
340
336
}
341
337
342
338
default : {
343
- if ( ! overrideDocPermissions && docPermissions ?. read ?. permission ) {
339
+ if ( ! overrideDocPermissions && docPermissions ?. read ) {
344
340
const baseRoute = [ adminRoute , globalEntity , globalSlug , segment3 ]
345
341
. filter ( Boolean )
346
342
. join ( '/' )
@@ -381,7 +377,7 @@ export const getViewsFromConfig = ({
381
377
default : {
382
378
// `../:slug/versions/:version`, etc
383
379
if ( segment3 === 'versions' ) {
384
- if ( ! overrideDocPermissions && docPermissions ?. readVersions ?. permission ) {
380
+ if ( ! overrideDocPermissions && docPermissions ?. readVersions ) {
385
381
CustomView = {
386
382
ComponentConfig : getCustomViewByKey ( views , 'version' ) ,
387
383
}
0 commit comments