feat(editor): add embed doc block extension (#12090)

Closes: BS-3393

<!-- This is an auto-generated comment: release notes by coderabbit.ai -->

## Summary by CodeRabbit

- **New Features**
  - Introduced a new "Embed Doc" block, enabling embedding and rendering of linked and synced documents within cards, including support for banners and note previews.
  - Added new toolbar and quick search options for inserting embedded linked and synced documents.

- **Improvements**
  - Updated dependencies and internal references to support the new embed doc functionality across related blocks and components.
  - Enhanced support for edgeless environments with new clipboard and configuration options for embedded docs.

- **Refactor**
  - Streamlined and reorganized embed-related code, moving linked and synced doc logic into a dedicated embed doc module.
  - Removed obsolete adapter and utility files to simplify maintenance.

- **Chores**
  - Updated project and TypeScript configuration files to include the new embed doc module in builds and references.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
Saul-Mirone
2025-04-30 09:16:17 +00:00
parent 4660b41d20
commit 04531508cb
77 changed files with 496 additions and 586 deletions
@@ -20,18 +20,10 @@ import {
EdgelessClipboardEmbedIframeConfig,
EmbedIframeViewExtensions,
} from './embed-iframe-block';
import {
EdgelessClipboardEmbedLinkedDocConfig,
EmbedLinkedDocViewExtensions,
} from './embed-linked-doc-block';
import {
EdgelessClipboardEmbedLoomConfig,
EmbedLoomViewExtensions,
} from './embed-loom-block';
import {
EdgelessClipboardEmbedSyncedDocConfig,
EmbedSyncedDocViewExtensions,
} from './embed-synced-doc-block';
import {
EdgelessClipboardEmbedYoutubeConfig,
EmbedYoutubeViewExtensions,
@@ -52,8 +44,6 @@ export class EmbedViewExtension extends ViewExtensionProvider {
context.register(EmbedLoomViewExtensions);
context.register(EmbedYoutubeViewExtensions);
context.register(EmbedHtmlViewExtensions);
context.register(EmbedLinkedDocViewExtensions);
context.register(EmbedSyncedDocViewExtensions);
context.register(EmbedIframeViewExtensions);
const isEdgeless = this.isEdgeless(context.scope);
if (isEdgeless) {
@@ -64,8 +54,6 @@ export class EmbedViewExtension extends ViewExtensionProvider {
EdgelessClipboardEmbedLoomConfig,
EdgelessClipboardEmbedYoutubeConfig,
EdgelessClipboardEmbedIframeConfig,
EdgelessClipboardEmbedLinkedDocConfig,
EdgelessClipboardEmbedSyncedDocConfig,
]);
}
}