forked from admin/zeropost-tool
feat(postcast-tool): AutogenTab — категории, темы, ротация
Новая вкладка «Автогенерация» в ChannelView:
Настройки:
- Включить/выключить автогенерацию
- posts_per_day: 1-20 (каждый пользователь настраивает сам)
- Час и минута запуска генерации
Планируется сегодня:
- Черновики сегодняшней генерации с кнопкой «Открыть»
- Пустое состояние с временем следующей генерации
Категории контента:
- Список с бейджами «сегодня» / «не сегодня» (ротация)
- Форма создания: иконка, название, slug, описание, цвет
- Каждая категория раскрывается с панелью тем:
· Список тем с жанровыми бейджами [ТУТОРИАЛ][СРАВНЕНИЕ][МНЕНИЕ][ДАЙДЖЕСТ][КЕЙС]
· Toggle is_used (✓ / ○)
· Добавить тему вручную (Enter или кнопка)
· AI-генерация N тем (5/10/15/20/30/50)
· Удалить тему
Ротация на 7 дней:
- Preview скользящего окна — видно что выйдет в каждый день
- Подпись «X из Y категорий» с объяснением алгоритма
API proxy:
/api/engine/channels/:channelId/[[...path]] — catch-all к engine :3035
This commit is contained in:
@@ -15,6 +15,7 @@ import FromUrlModal from './FromUrlModal';
|
||||
import PollModal from './PollModal';
|
||||
import HashtagSuggest from './HashtagSuggest';
|
||||
import InboxTab from './InboxTab';
|
||||
import AutogenTab from './AutogenTab';
|
||||
|
||||
const GOAL_LABELS = {
|
||||
educational: 'Обучение', news: 'Новости',
|
||||
@@ -364,7 +365,7 @@ export default function ChannelView({ channel }) {
|
||||
|
||||
{/* Вкладки */}
|
||||
<div className="flex items-center gap-0.5 rounded-lg p-0.5 bg-surface2 border border-border self-start mb-2">
|
||||
{[['generate','Создать пост'],['analytics','Аналитика'],['inbox','Inbox']].map(([id,label]) => (
|
||||
{[['generate','Создать пост'],['autogen','Автогенерация'],['analytics','Аналитика'],['inbox','Inbox']].map(([id,label]) => (
|
||||
<button key={id} onClick={() => setActiveTab(id)}
|
||||
className={`px-4 py-1.5 rounded-md text-sm font-medium transition-colors
|
||||
${activeTab===id ? 'bg-surface text-text shadow-sm' : 'text-text-soft hover:text-text'}`}>
|
||||
@@ -377,6 +378,10 @@ export default function ChannelView({ channel }) {
|
||||
<ChannelAnalytics channelId={channel.id} channelName={channel.tg_username} />
|
||||
)}
|
||||
|
||||
{activeTab === 'autogen' && (
|
||||
<AutogenTab channel={channel} />
|
||||
)}
|
||||
|
||||
{activeTab === 'inbox' && (
|
||||
<InboxTab channel={channel} />
|
||||
)}
|
||||
|
||||
Reference in New Issue
Block a user