fix(ui): properly sanitizes functional labels from field map

This commit is contained in:
Jacob Fletcher
2024-04-04 10:53:04 -04:00
parent 7894a54a0e
commit b8d1aec1e5
2 changed files with 9 additions and 6 deletions

View File

@@ -117,7 +117,10 @@ export const mapFields = (args: {
null null
const labelProps: LabelProps = { const labelProps: LabelProps = {
label: 'label' in field && !isReactComponent(field.label) ? field.label : undefined, label:
'label' in field && !isPlainFunction(field.label) && !isReactComponent(field.label)
? field.label
: undefined,
required: 'required' in field ? field.required : undefined, required: 'required' in field ? field.required : undefined,
} }
@@ -232,7 +235,7 @@ export const mapFields = (args: {
parentPath: path, parentPath: path,
readOnly: readOnlyOverride, readOnly: readOnlyOverride,
}), }),
label: field?.label || undefined, label: field?.label,
labels: field.labels, labels: field.labels,
maxRows: field.maxRows, maxRows: field.maxRows,
minRows: field.minRows, minRows: field.minRows,
@@ -272,7 +275,7 @@ export const mapFields = (args: {
blocks, blocks,
className: field.admin?.className, className: field.admin?.className,
disabled: field.admin?.disabled, disabled: field.admin?.disabled,
label: field?.label || undefined, label: field?.label,
labels: field.labels, labels: field.labels,
maxRows: field.maxRows, maxRows: field.maxRows,
minRows: field.minRows, minRows: field.minRows,
@@ -328,7 +331,7 @@ export const mapFields = (args: {
case 'collapsible': { case 'collapsible': {
let CustomCollapsibleLabel: React.ReactNode let CustomCollapsibleLabel: React.ReactNode
if (isReactComponent(field.label)) { if (isReactComponent(field.label) || isPlainFunction(field.label)) {
const CustomCollapsibleLabelComponent = field.label as RowLabelComponent const CustomCollapsibleLabelComponent = field.label as RowLabelComponent
CustomCollapsibleLabel = <CustomCollapsibleLabelComponent /> CustomCollapsibleLabel = <CustomCollapsibleLabelComponent />
} }

View File

@@ -37,7 +37,7 @@
], ],
"paths": { "paths": {
"@payload-config": [ "@payload-config": [
"./test/_community/config.ts" "./test/fields/config.ts"
], ],
"@payloadcms/live-preview": [ "@payloadcms/live-preview": [
"./packages/live-preview/src" "./packages/live-preview/src"
@@ -160,4 +160,4 @@
".next/types/**/*.ts", ".next/types/**/*.ts",
"scripts/**/*.ts" "scripts/**/*.ts"
] ]
} }