feat: add news section with admin editor and public article view

- NewsSection with animated grid background, category filters, featured cards
- AdminNews list page with toggle publish/featured, pagination
- AdminNewsCreate with TipTap rich text editor, URL validation
- NewsArticle detail page with DOMPurify sanitization, Telegram back button
- Toggle component with WCAG 44px touch targets, role=switch
- Prose styles for highlight marks and responsive iframes
- i18n translations (en, ru, zh, fa)
This commit is contained in:
Fringg
2026-03-23 10:49:46 +03:00
parent 5b12784ab8
commit 99fc33625e
17 changed files with 7750 additions and 70 deletions

View File

@@ -3920,5 +3920,59 @@
"warning": {
"telegram_unresolvable": "无法验证此 Telegram 用户名。收件人可能不会收到礼物通知。"
}
},
"news": {
"title": "新闻与更新",
"filterAll": "全部",
"readMore": "阅读更多",
"readTime": "分钟阅读",
"loadMore": "加载更多",
"noNews": "暂无新闻",
"backToHome": "返回",
"views": "浏览量",
"admin": {
"title": "新闻管理",
"create": "创建文章",
"edit": "编辑",
"delete": "删除",
"confirmDelete": "删除这篇文章?",
"published": "已发布",
"draft": "草稿",
"featured": "精选",
"titleLabel": "标题",
"slugLabel": "URL标识",
"categoryLabel": "分类",
"categoryColorLabel": "分类颜色",
"tagLabel": "标签",
"excerptLabel": "简短描述",
"contentLabel": "内容",
"imageLabel": "特色图片",
"readTimeLabel": "阅读时间(分钟)",
"save": "保存",
"saving": "保存中...",
"saveError": "保存文章失败,请重试。",
"saved": "文章已保存",
"deleted": "文章已删除",
"toolbar": {
"bold": "粗体",
"italic": "斜体",
"underline": "下划线",
"strikethrough": "删除线",
"heading1": "标题 1",
"heading2": "标题 2",
"heading3": "标题 3",
"bulletList": "无序列表",
"orderedList": "有序列表",
"blockquote": "引用",
"codeBlock": "代码块",
"alignLeft": "左对齐",
"alignCenter": "居中",
"highlight": "高亮",
"link": "链接",
"image": "图片",
"imageUrlPrompt": "图片URL",
"linkUrlPrompt": "URL"
}
}
}
}