From 3c2f95d5295ce9b540982f61a1827f8b1b73a1ae Mon Sep 17 00:00:00 2001 From: Thomas Date: Fri, 21 Aug 2026 16:17:42 +0200 Subject: [PATCH] perf(board): stabilize edit mode layout (#6650) --- .../app/[locale]/boards/(content)/_client.tsx | 3 +- .../components/board/items/item-content.tsx | 15 +- .../board/sections/container-section.tsx | 6 +- .../grid/board-grid-editor-boundary.tsx | 55 +-- .../board/sections/grid/fixed-grid-item.tsx | 53 +-- .../board/sections/grid/grid-editor-loader.ts | 16 +- .../sections/grid/grid-editor-registry.tsx | 117 +++++++ .../board/sections/grid/grid-editor.css | 24 +- .../board/sections/grid/grid-editor.tsx | 123 +++---- .../board/sections/grid/grid-entry-memo.ts | 4 +- .../board/sections/grid/grid-portal-host.tsx | 221 +------------ .../sections/grid/section-grid.module.css | 39 +-- .../board/sections/grid/section-grid.tsx | 313 +++++++++++------- .../grid/test/fixed-grid-item.spec.ts | 12 + .../grid/test/grid-entry-memo.spec.tsx | 13 +- .../grid/test/grid-import-boundary.spec.ts | 18 +- .../grid/test/grid-portal-host.spec.ts | 104 ------ .../board/sections/section-collapse.tsx | 67 +++- .../board/sections/section-context.ts | 5 + .../board/sections/use-section-items.ts | 88 ++--- 20 files changed, 616 insertions(+), 680 deletions(-) create mode 100644 apps/nextjs/src/components/board/sections/grid/grid-editor-registry.tsx delete mode 100644 apps/nextjs/src/components/board/sections/grid/test/grid-portal-host.spec.ts diff --git a/apps/nextjs/src/app/[locale]/boards/(content)/_client.tsx b/apps/nextjs/src/app/[locale]/boards/(content)/_client.tsx index 9fa4b7c5d..efd9be8fb 100644 --- a/apps/nextjs/src/app/[locale]/boards/(content)/_client.tsx +++ b/apps/nextjs/src/app/[locale]/boards/(content)/_client.tsx @@ -20,7 +20,7 @@ import { import { ScaledBoardCanvas } from "~/components/board/layout/scaled-board-canvas"; import { BoardEmptySection } from "~/components/board/sections/empty-section"; import { BoardGridEditorBoundary } from "~/components/board/sections/grid/board-grid-editor-boundary"; -import { BoardGridPortalHost, BoardGridPortalRenderer } from "~/components/board/sections/grid/grid-portal-host"; +import { BoardGridPortalHost } from "~/components/board/sections/grid/grid-portal-host"; import { BoardSectionCollapseProvider } from "~/components/board/sections/section-collapse"; import { BoardBackgroundVideo } from "~/components/layout/background"; import { BoardSelectionProvider } from "~/components/board/selection/board-selection-context"; @@ -80,7 +80,6 @@ export const ClientBoard = () => { label={board.name} > -
{leftColumnCount > 0 && leftSection && (