diff --git a/packages/frontend/core/src/blocksuite/ai/widgets/block-diff/block.ts b/packages/frontend/core/src/blocksuite/ai/widgets/block-diff/block.ts index c0987028c..4654ce606 100644 --- a/packages/frontend/core/src/blocksuite/ai/widgets/block-diff/block.ts +++ b/packages/frontend/core/src/blocksuite/ai/widgets/block-diff/block.ts @@ -2,6 +2,7 @@ import { WidgetComponent, WidgetViewExtension } from '@blocksuite/affine/std'; import { ThemeProvider } from '@blocksuite/affine-shared/services'; import { unsafeCSSVarV2 } from '@blocksuite/affine-shared/theme'; import { css, html, nothing, type TemplateResult } from 'lit'; +import { repeat } from 'lit/directives/repeat.js'; import { literal, unsafeStatic } from 'lit/static-html.js'; import { BlockDiffProvider } from '../../services/block-diff'; @@ -91,11 +92,13 @@ export class AffineBlockDiffWidgetForBlock extends WidgetComponent { } private _renderInsert(from: string, blocks: Block[]) { - return blocks - .map((block, offset) => { + return html`${repeat( + blocks, + block => block.id, + (block, offset) => { const diffId = `insert-${block.id}-${offset}`; return this.diffService.isRejected('insert', `${from}:${offset}`) - ? null + ? nothing : html`