feat: add media upload to news editor with drag-drop, paste, and file picker

Upload images/videos directly to server from editor. DOMPurify video
sanitization, XSS protection, upload cancellation on unmount.
This commit is contained in:
Fringg
2026-03-23 11:58:18 +03:00
parent 8d994f75d9
commit 723591e5c3
8 changed files with 324 additions and 23 deletions

View File

@@ -4509,6 +4509,11 @@
"saved": "Article saved",
"deleted": "Article deleted",
"selectColor": "Select color {{color}}",
"uploading": "Uploading...",
"dropMedia": "Drop image or video here",
"uploadError": "Upload failed",
"fileTooLarge": "File is too large",
"uploadFeaturedImage": "Upload image",
"toolbar": {
"bold": "Bold",
"italic": "Italic",

View File

@@ -3957,6 +3957,11 @@
"saved": "مقاله ذخیره شد",
"deleted": "مقاله حذف شد",
"selectColor": "انتخاب رنگ {{color}}",
"uploading": "در حال آپلود...",
"dropMedia": "تصویر یا ویدیو را اینجا رها کنید",
"uploadError": "آپلود ناموفق بود",
"fileTooLarge": "فایل خیلی بزرگ است",
"uploadFeaturedImage": "آپلود تصویر",
"toolbar": {
"bold": "پررنگ",
"italic": "کج",

View File

@@ -5076,6 +5076,11 @@
"saved": "Новость сохранена",
"deleted": "Новость удалена",
"selectColor": "Выбрать цвет {{color}}",
"uploading": "Загрузка...",
"dropMedia": "Перетащите изображение или видео сюда",
"uploadError": "Ошибка загрузки",
"fileTooLarge": "Файл слишком большой",
"uploadFeaturedImage": "Загрузить изображение",
"toolbar": {
"bold": "Жирный",
"italic": "Курсив",

View File

@@ -3956,6 +3956,11 @@
"saved": "文章已保存",
"deleted": "文章已删除",
"selectColor": "选择颜色 {{color}}",
"uploading": "上传中...",
"dropMedia": "将图片或视频拖到这里",
"uploadError": "上传失败",
"fileTooLarge": "文件太大",
"uploadFeaturedImage": "上传图片",
"toolbar": {
"bold": "粗体",
"italic": "斜体",