From c6ac426b4c66a15db60dd8da5df5600182499cdb Mon Sep 17 00:00:00 2001 From: akumatus Date: Thu, 21 Nov 2024 06:56:26 +0000 Subject: [PATCH] fix: ai ppt preview with toolbar widget (#8882) Fix issue [AF-1716](https://linear.app/affine-design/issue/AF-1716). --- .../src/blocksuite/presets/ai/messages/slides-renderer.ts | 5 +++-- .../blocksuite/block-suite-editor/ai/setup-provider.tsx | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/frontend/core/src/blocksuite/presets/ai/messages/slides-renderer.ts b/packages/frontend/core/src/blocksuite/presets/ai/messages/slides-renderer.ts index 5cf4834b0c..24b980318f 100644 --- a/packages/frontend/core/src/blocksuite/presets/ai/messages/slides-renderer.ts +++ b/packages/frontend/core/src/blocksuite/presets/ai/messages/slides-renderer.ts @@ -1,7 +1,7 @@ import { BlockStdScope, type EditorHost } from '@blocksuite/affine/block-std'; import { type AffineAIPanelWidgetConfig, - EdgelessEditorBlockSpecs, + SpecProvider, } from '@blocksuite/affine/blocks'; import { AffineSchemas } from '@blocksuite/affine/blocks/schemas'; import { WithDisposable } from '@blocksuite/affine/global/utils'; @@ -208,7 +208,8 @@ export class AISlidesRenderer extends WithDisposable(LitElement) { > ${new BlockStdScope({ doc: this._doc, - extensions: EdgelessEditorBlockSpecs, + extensions: + SpecProvider.getInstance().getSpec('edgeless:preview').value, }).render()}
diff --git a/packages/frontend/core/src/components/blocksuite/block-suite-editor/ai/setup-provider.tsx b/packages/frontend/core/src/components/blocksuite/block-suite-editor/ai/setup-provider.tsx index c1bbe7f0cb..1a2dc3b37b 100644 --- a/packages/frontend/core/src/components/blocksuite/block-suite-editor/ai/setup-provider.tsx +++ b/packages/frontend/core/src/components/blocksuite/block-suite-editor/ai/setup-provider.tsx @@ -438,12 +438,13 @@ Could you make a new website based on these notes and send back just the html fi const url = new URL(getBaseUrl() + '/api/copilot/unsplash/photos'); url.searchParams.set('query', options.query); const result: { - results: { + results?: { urls: { regular: string; }; }[]; } = await fetch(url.toString()).then(res => res.json()); + if (!result.results) return []; return result.results.map(r => { const url = new URL(r.urls.regular); url.searchParams.set('fit', 'crop');