diff --git a/packages/payload/src/admin/components/elements/FieldSelect/index.tsx b/packages/payload/src/admin/components/elements/FieldSelect/index.tsx index 512a3b4b5c..bf3c05c88b 100644 --- a/packages/payload/src/admin/components/elements/FieldSelect/index.tsx +++ b/packages/payload/src/admin/components/elements/FieldSelect/index.tsx @@ -38,6 +38,9 @@ const reduceFields = ( ) { return fieldsToUse } + if (field.type === 'collapsible') { + return [...fieldsToUse, ...reduceFields(field.fields, i18n, path, labelPrefix)] + } if (!(field.type === 'array' || field.type === 'blocks') && fieldHasSubFields(field)) { return [ ...fieldsToUse, diff --git a/test/fields/e2e.spec.ts b/test/fields/e2e.spec.ts index 47de77f8e8..ecc7e72563 100644 --- a/test/fields/e2e.spec.ts +++ b/test/fields/e2e.spec.ts @@ -612,6 +612,20 @@ describe('fields', () => { ) await expect(customCollapsibleLabel).toHaveCSS('text-transform', 'uppercase') }) + + test('should not render collapsible label in bulk update field select', async () => { + await page.goto(url.list) + + await page.locator('input#select-all').check() + await page.locator('.edit-many__toggle').click() + await page.locator('.field-select .rs__control').click() + + const firstCollapsibleOption = page.locator('.rs__option', { + hasText: exactText('Text'), + }) + + await expect(firstCollapsibleOption).toBeVisible() + }) }) describe('blocks', () => {