From d63f16da5ec8252f704c951005fe63b4a3de50d0 Mon Sep 17 00:00:00 2001 From: donteatfriedrice Date: Wed, 26 Feb 2025 04:25:24 +0000 Subject: [PATCH] fix(editor): affine preview root style (#10420) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix [BS-2677](https://linear.app/affine-design/issue/BS-2677/linked-doc-embed-view样式错误) 1. Only show the border of embed synced doc block (in note) when hover. 2. Fix affine preview root padding style, set padding only when affine preview root in embed synced doc block (in surface). 3. Only add the footnote config extension to the chat panel and chat block center peek. For footnotes in other page preview scenarios, such as footnote nodes within embed synced doc blocks or embed linked doc blocks, the hover effect should be maintained. --- .../embed-synced-doc-block.ts | 1 + .../src/embed-synced-doc-block/styles.ts | 10 ++++++- .../src/preview/preview-root-block.ts | 1 - .../nodes/footnote-node/footnote-node.ts | 30 ++++++++++--------- .../extensions/entry/enable-preview.ts | 7 ----- .../blocksuite/extensions/footnote-config.ts | 17 +++++++++++ .../core/src/blocksuite/extensions/index.ts | 1 + .../pages/workspace/detail-page/tabs/chat.tsx | 5 +++- .../view/ai-chat-block-peek-view/index.tsx | 5 +++- 9 files changed, 52 insertions(+), 25 deletions(-) create mode 100644 packages/frontend/core/src/blocksuite/extensions/footnote-config.ts diff --git a/blocksuite/affine/block-embed/src/embed-synced-doc-block/embed-synced-doc-block.ts b/blocksuite/affine/block-embed/src/embed-synced-doc-block/embed-synced-doc-block.ts index 5ecc8fd69..0a1588ba8 100644 --- a/blocksuite/affine/block-embed/src/embed-synced-doc-block/embed-synced-doc-block.ts +++ b/blocksuite/affine/block-embed/src/embed-synced-doc-block/embed-synced-doc-block.ts @@ -231,6 +231,7 @@ export class EmbedSyncedDocBlockComponent extends EmbedBlockComponent { - const previewSpecBuilder = SpecProvider._.getSpec('preview:page'); + const previewSpecBuilder = enableFootnoteConfigExtension( + SpecProvider._.getSpec('preview:page') + ); const networkSearchConfig = { visible: searchService.visible, enabled: searchService.enabled,