From 404c008cede74a13c49c523839ff796440498c77 Mon Sep 17 00:00:00 2001 From: Alireza Hassani Date: Mon, 10 Aug 2026 20:44:35 +0330 Subject: [PATCH] Normalize AI product HTML for the rich text description editor. Sanitize model output to an allowlisted fragment and convert plain/markdown fallbacks so description text stays inside the advanced editor. Co-authored-by: Cursor --- .../components/ProductFieldAiPromptModal.tsx | 10 +++++--- .../src/components/RichTextEditor.module.css | 25 ++++++++++++++++++- .../src/components/RichTextEditor.tsx | 8 ++++-- .../src/pages/AddNewProductPage.module.css | 2 ++ apps/business/src/pages/AddNewProductPage.tsx | 1 + 5 files changed, 39 insertions(+), 7 deletions(-) diff --git a/apps/business/src/components/ProductFieldAiPromptModal.tsx b/apps/business/src/components/ProductFieldAiPromptModal.tsx index b91ad6c..f74f36b 100644 --- a/apps/business/src/components/ProductFieldAiPromptModal.tsx +++ b/apps/business/src/components/ProductFieldAiPromptModal.tsx @@ -60,7 +60,7 @@ export function buildProductDescriptionAiPrompt(ctx: { const category = ctx.categoryName || '—' if (ctx.locale === 'fa') { - return `یک توضیحات فنی محصول به صورت HTML بنویس. + return `یک توضیحات فنی محصول به صورت HTML برای ادیتور متن پیشرفته بنویس. نام محصول (فارسی): ${nameFa} نام محصول (انگلیسی): ${nameEn} @@ -77,10 +77,11 @@ export function buildProductDescriptionAiPrompt(ctx: { - از دعوت به خرید، تخفیف، «بهترین انتخاب»، و جملات بازاریابی مبهم پرهیز کن. - مشخصات ساختگی ننویس؛ اگر جزئیات دقیق نداری، روی تعریف محصول و کاربردهای معمول تمرکز کن. - ۲ تا ۴ پاراگراف کوتاه به فارسی. -- فقط HTML با تگ‌های

،