Files
payloadcms/packages/richtext-lexical/src/features/align/client/toolbarAlignGroup.ts
Alessio Gravili ebd43c7763 feat: pre-compile ui and richtext-lexical with react compiler (#7688)
This noticeably improves performance in the admin panel, for example
when there are multiple richtext editors on one page (& likely
performance in other areas too, though I mainly tested rich text).

The babel plugin currently only optimizes files with a 'use client'
directive at the top - thus we have to make sure to add use client
wherever possible, even if it's imported by a parent client component.

There's one single component that broke when it was compiled using the
React compiler (it stopped being reactive and failed one of our admin
e2e tests):
150808f608
opting out of it completely fixed that issue

Fixes https://github.com/payloadcms/payload/issues/7366
2024-08-19 17:31:36 -04:00

15 lines
377 B
TypeScript

'use client'
import type { ToolbarGroup, ToolbarGroupItem } from '../../toolbars/types.js'
import { AlignLeftIcon } from '../../../lexical/ui/icons/AlignLeft/index.js'
export const toolbarAlignGroupWithItems = (items: ToolbarGroupItem[]): ToolbarGroup => {
return {
type: 'dropdown',
ChildComponent: AlignLeftIcon,
items,
key: 'align',
order: 30,
}
}