import React from 'react';
/**
* Бейдж статуса публикации проекта (умная лента — RUBLOX_SMART_FEED_PLAN.md).
* Показывается рядом с названием игры в редакторе и в «Мои игры».
*
* Premoderации больше нет. Статусы:
* draft — черновик, не опубликована;
* published — в ленте, видна всем;
* review — на быстрой автопроверке (скрипты ушли к админу);
* blocked — заблокирована администрацией.
*
* Props:
* status — 'draft' | 'published' | 'review' | 'blocked'
* comment — комментарий администрации (для blocked)
*/
// Самописные inline-SVG вместо эмодзи (правило проекта — никаких смайлов в UI).
const ICONS = {
// Лист бумаги — черновик
draft: (
),
// Галочка — опубликовано
published: (
),
// Лупа — на проверке
review: (
<>
>
),
// Перечёркнутый круг — заблокировано
blocked: (
<>
>
),
};
const STATUS_META = {
draft: {
label: 'Черновик',
bg: 'linear-gradient(135deg, #94a3b8 0%, #64748b 100%)',
glow: 'rgba(100, 116, 139, 0.40)',
},
published: {
label: 'В ленте',
bg: 'linear-gradient(135deg, #10b981 0%, #0f9d56 100%)',
glow: 'rgba(16, 185, 129, 0.45)',
},
review: {
label: 'На проверке',
bg: 'linear-gradient(135deg, #f59e0b 0%, #d97706 100%)',
glow: 'rgba(245, 158, 11, 0.45)',
},
blocked: {
label: 'Заблокировано',
bg: 'linear-gradient(135deg, #ff6f7a 0%, #c0303f 100%)',
glow: 'rgba(239, 68, 68, 0.45)',
},
};
const PublishStatusBadge = ({ status, comment }) => {
const meta = STATUS_META[status] || STATUS_META.draft;
const icon = ICONS[status] || ICONS.draft;
const tip = comment
? `${meta.label}\n\nКомментарий администрации:\n${comment}`
: meta.label;
return (
{meta.label}
);
};
export default PublishStatusBadge;