From 634b25be6b1863c13dac6ba28432024afe91a79e Mon Sep 17 00:00:00 2001 From: swve Date: Wed, 9 Jul 2025 16:11:20 +0200 Subject: [PATCH] feat: add error notification for incomplete metadata in web preview component --- .../Extensions/WebPreview/WebPreviewComponent.tsx | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/apps/web/components/Objects/Editor/Extensions/WebPreview/WebPreviewComponent.tsx b/apps/web/components/Objects/Editor/Extensions/WebPreview/WebPreviewComponent.tsx index 2290d7af..98610e12 100644 --- a/apps/web/components/Objects/Editor/Extensions/WebPreview/WebPreviewComponent.tsx +++ b/apps/web/components/Objects/Editor/Extensions/WebPreview/WebPreviewComponent.tsx @@ -8,6 +8,7 @@ import { Input } from '@components/ui/input'; import { Label } from '@components/ui/label'; import { Checkbox } from '@components/ui/checkbox'; import { Button } from '@components/ui/button'; +import toast from 'react-hot-toast'; interface EditorContext { isEditable: boolean; @@ -62,6 +63,16 @@ const WebPreviewComponent: React.FC = ({ node, updateAttributes const res = await getUrlPreview(url); if (!res) throw new Error('Failed to fetch preview'); const data = res; + + // Check if metadata is insufficient (only has basic fields like favicon/url but no title/description) + const hasMinimalMetadata = !data.title && !data.description && !data.og_image; + + if (hasMinimalMetadata) { + toast.error("Unable to get metadata from this website. The preview card may appear incomplete.", { + duration: 4000, + }); + } + updateAttributes({ ...data, url }); setEditing(false); } catch (err: any) {