@payloadcms/ui 3.29.0 → 3.30.0-canary.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts +1 -0
- package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js +31 -26
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/EditMany/DrawerContent.d.ts +3 -3
- package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +16 -17
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/EditMany/index.d.ts.map +1 -1
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/FieldSelect/index.d.ts +5 -5
- package/dist/elements/FieldSelect/index.d.ts.map +1 -1
- package/dist/elements/FieldSelect/index.js +23 -20
- package/dist/elements/FieldSelect/index.js.map +1 -1
- package/dist/elements/FieldSelect/reduceFieldOptions.d.ts +13 -10
- package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
- package/dist/elements/FieldSelect/reduceFieldOptions.js +23 -6
- package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
- package/dist/exports/client/index.js +11 -11
- package/dist/exports/client/index.js.map +3 -3
- package/dist/forms/RenderFields/index.d.ts.map +1 -1
- package/dist/forms/RenderFields/index.js +12 -5
- package/dist/forms/RenderFields/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/RenderFields/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAKnD,OAAO,cAAc,CAAA;AAIrB,OAAO,EAAE,iBAAiB,IAAI,KAAK,EAAE,CAAA;AAErC,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/RenderFields/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAKnD,OAAO,cAAc,CAAA;AAIrB,OAAO,EAAE,iBAAiB,IAAI,KAAK,EAAE,CAAA;AAErC,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA+FpD,CAAA"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
-
import { fieldIsHiddenOrDisabled, getFieldPaths } from 'payload/shared';
|
|
5
|
+
import { fieldIsHiddenOrDisabled, getFieldPaths, getFieldPermissions } from 'payload/shared';
|
|
6
6
|
import React from 'react';
|
|
7
7
|
import { RenderIfInViewport } from '../../elements/RenderIfInViewport/index.js';
|
|
8
8
|
import { useOperation } from '../../providers/Operation/index.js';
|
|
@@ -45,8 +45,16 @@ export const RenderFields = props => {
|
|
|
45
45
|
if (!field || fieldIsHiddenOrDisabled(field)) {
|
|
46
46
|
return null;
|
|
47
47
|
}
|
|
48
|
-
const
|
|
49
|
-
|
|
48
|
+
const {
|
|
49
|
+
operation: hasOperationPermission,
|
|
50
|
+
permissions: fieldPermissions,
|
|
51
|
+
read: hasReadPermission
|
|
52
|
+
} = getFieldPermissions({
|
|
53
|
+
field,
|
|
54
|
+
operation,
|
|
55
|
+
parentName: parentPath?.includes(".") ? parentPath.split(".")[parentPath.split(".").length - 1] : parentPath,
|
|
56
|
+
permissions
|
|
57
|
+
});
|
|
50
58
|
if ("name" in field && !hasReadPermission) {
|
|
51
59
|
return null;
|
|
52
60
|
}
|
|
@@ -54,7 +62,6 @@ export const RenderFields = props => {
|
|
|
54
62
|
if (isReadOnly && field.admin?.readOnly === false) {
|
|
55
63
|
isReadOnly = false;
|
|
56
64
|
}
|
|
57
|
-
const hasOperationPermission = permissions === true || permissions?.[operation] === true || permissions?.[parentName] === true || "name" in field && typeof permissions === "object" && permissions?.[field.name] && (permissions[field.name] === true || operation in permissions[field.name] && permissions[field.name][operation]);
|
|
58
65
|
if ("name" in field && !hasOperationPermission) {
|
|
59
66
|
isReadOnly = true;
|
|
60
67
|
}
|
|
@@ -76,7 +83,7 @@ export const RenderFields = props => {
|
|
|
76
83
|
parentPath,
|
|
77
84
|
parentSchemaPath,
|
|
78
85
|
path,
|
|
79
|
-
permissions:
|
|
86
|
+
permissions: fieldPermissions,
|
|
80
87
|
readOnly: isReadOnly,
|
|
81
88
|
schemaPath
|
|
82
89
|
}, `${path}-${i}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","fieldIsHiddenOrDisabled","getFieldPaths","React","RenderIfInViewport","useOperation","RenderField","baseClass","RenderFields","props","$","className","fields","forceRender","margins","parentIndexPath","parentPath","parentSchemaPath","permissions","readOnly","readOnlyFromParent","operation","length","t0","t1","t2","filter","Boolean","t3","join","t4","t5","field","i","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","fieldIsHiddenOrDisabled","getFieldPaths","getFieldPermissions","React","RenderIfInViewport","useOperation","RenderField","baseClass","RenderFields","props","$","className","fields","forceRender","margins","parentIndexPath","parentPath","parentSchemaPath","permissions","readOnly","readOnlyFromParent","operation","length","t0","t1","t2","filter","Boolean","t3","join","t4","t5","field","i","hasOperationPermission","fieldPermissions","read","hasReadPermission","parentName","includes","split","isReadOnly","admin","indexPath","path","schemaPath","index","_jsx","clientFieldConfig","children","map"],"sources":["../../../src/forms/RenderFields/index.tsx"],"sourcesContent":["'use client'\n\nimport { fieldIsHiddenOrDisabled, getFieldPaths, getFieldPermissions } from 'payload/shared'\nimport React from 'react'\n\nimport type { RenderFieldsProps } from './types.js'\n\nimport { RenderIfInViewport } from '../../elements/RenderIfInViewport/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { RenderField } from './RenderField.js'\nimport './index.scss'\n\nconst baseClass = 'render-fields'\n\nexport { RenderFieldsProps as Props }\n\nexport const RenderFields: React.FC<RenderFieldsProps> = (props) => {\n const {\n className,\n fields,\n forceRender,\n margins,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n permissions,\n readOnly: readOnlyFromParent,\n } = props\n\n const operation = useOperation()\n\n if (fields && fields.length > 0) {\n return (\n <RenderIfInViewport\n className={[\n baseClass,\n className,\n margins && `${baseClass}--margins-${margins}`,\n margins === false && `${baseClass}--margins-none`,\n ]\n .filter(Boolean)\n .join(' ')}\n forceRender={forceRender}\n >\n {fields.map((field, i) => {\n // For sidebar fields in the main fields array, `field` will be `null`, and visa versa\n // This is to keep the order of the fields consistent and maintain the correct index paths for the main fields (i)\n if (!field || fieldIsHiddenOrDisabled(field)) {\n return null\n }\n\n const {\n operation: hasOperationPermission,\n permissions: fieldPermissions,\n read: hasReadPermission,\n } = getFieldPermissions({\n field,\n operation,\n parentName: parentPath?.includes('.')\n ? parentPath.split('.')[parentPath.split('.').length - 1]\n : parentPath,\n permissions,\n })\n\n // If the user cannot read the field, then filter it out\n // This is different from `admin.readOnly` which is executed based on `operation`\n if ('name' in field && !hasReadPermission) {\n return null\n }\n\n // `admin.readOnly` displays the value but prevents the field from being edited\n let isReadOnly = readOnlyFromParent || field?.admin?.readOnly\n\n // If parent field is `readOnly: true`, but this field is `readOnly: false`, the field should still be editable\n if (isReadOnly && field.admin?.readOnly === false) {\n isReadOnly = false\n }\n\n // If the user does not have access at the operation level, to begin with, force it to be read-only\n if ('name' in field && !hasOperationPermission) {\n isReadOnly = true\n }\n\n const { indexPath, path, schemaPath } = getFieldPaths({\n field,\n index: i,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n })\n\n return (\n <RenderField\n clientFieldConfig={field}\n forceRender={forceRender}\n indexPath={indexPath}\n key={`${path}-${i}`}\n parentPath={parentPath}\n parentSchemaPath={parentSchemaPath}\n path={path}\n permissions={fieldPermissions}\n readOnly={isReadOnly}\n schemaPath={schemaPath}\n />\n )\n })}\n </RenderIfInViewport>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
|