feat: AdminContent — content defaults UI

AdminContent.js: настройки дефолтов по 4 группам
  Контент: язык, стиль, цель, длина (select)
  Форматирование: изображения, эмодзи, хештеги (toggle)
  Авто-черновики: кол-во в день, время генерации
  AI-инструкции: базовый промт (textarea)
Инлайн сохранение — кнопка Сохранить появляется только при изменении
Подсказка: изменения применяются только к новым каналам
AdminPanel: раздел Контент-дефолты с Sliders иконкой
This commit is contained in:
Ник (Claude)
2026-06-13 11:22:56 +03:00
parent 06340ab24e
commit 2e9f099b95
2 changed files with 306 additions and 1 deletions
+4 -1
View File
@@ -1,6 +1,6 @@
'use client';
import { useState } from 'react';
import { Settings2, CreditCard, TrendingUp, Users, ChevronRight, Loader2, Eye, EyeOff, Save, RefreshCw, Check, AlertCircle, BarChart3, ArrowLeft, Zap, Tag, AlertTriangle, BookOpen } from 'lucide-react';
import { Settings2, CreditCard, TrendingUp, Users, ChevronRight, Loader2, Eye, EyeOff, Save, RefreshCw, Check, AlertCircle, BarChart3, ArrowLeft, Zap, Tag, AlertTriangle, BookOpen, Sliders } from 'lucide-react';
import Link from 'next/link';
import AdminBilling from './admin/AdminBilling';
import AdminUsers from './admin/AdminUsers';
@@ -8,6 +8,7 @@ import AdminPromos from './admin/AdminPromos';
import AdminQueue from './admin/AdminQueue';
import AdminLogs from './admin/AdminLogs';
import AdminAutogen from './admin/AdminAutogen';
import AdminContent from './admin/AdminContent';
// ──────────────────────────────────────────────────────────────
// Sidebar navigation
@@ -21,6 +22,7 @@ const SECTIONS = [
{ id: 'queue', label: 'Очередь', icon: Zap, desc: 'Задачи генерации, ошибки' },
{ id: 'logs', label: 'Логи ошибок', icon: AlertTriangle, desc: 'Последние сбои и проблемы' },
{ id: 'autogen', label: 'Автогенерация', icon: BookOpen, desc: 'Расписание статей блога' },
{ id: 'content', label: 'Контент-дефолты', icon: Sliders, desc: 'Настройки для новых каналов' },
{ id: 'plans', label: 'Тарифы', icon: BarChart3, desc: 'Планы, кредиты, операции' },
{ id: 'promos', label: 'Промокоды', icon: Tag, desc: 'Коды для кредитов и скидок' },
{ id: 'billing', label: 'Пользователи', icon: Users, desc: 'Балансы и кредиты' },
@@ -74,6 +76,7 @@ export default function AdminPanel({ initialSection = 'settings' }) {
{section === 'queue' && <AdminQueue />}
{section === 'logs' && <AdminLogs />}
{section === 'autogen' && <AdminAutogen />}
{section === 'content' && <AdminContent />}
{section === 'plans' && <PlansSection />}
{section === 'promos' && <AdminPromos />}
{section === 'billing' && <AdminUsers />}