feat: design system overhaul — sidebar, AI chats, settings, brainstorm, color cleanup
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 12s
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 12s
- Sidebar: dynamic brand-accent colors, brainstorm section restyled - AI chat general: popup panel with expand/collapse, hides when contextual AI open - AI chat contextual: tabs reordered (Actions first), X close button, height fix - Settings: all tabs restyled, 6 new color presets (sage, terracotta, iron, etc.) - Global color cleanup: emerald/orange hardcoded → brand-accent dynamic - Brainstorm page: orange → brand-accent throughout - PageEntry animation component added to key pages - Floating AI button: bg-brand-accent instead of hardcoded black - i18n: all 15 locales updated with new AI/billing keys - Billing: freemium quota tracking, BYOK, stripe subscription scaffolding - Admin: integrated into new design - AGENTS.md + CLAUDE.md project rules added
This commit is contained in:
@@ -73,6 +73,27 @@ const TOOL_PRESETS: Record<string, string[]> = {
|
||||
'task-extractor': ['note_search', 'note_read', 'task_extract', 'note_create'],
|
||||
}
|
||||
|
||||
const SLIDE_GENERATOR_THEME_VALUES = [
|
||||
'modern_wellness',
|
||||
'business_authority',
|
||||
'nature_outdoors',
|
||||
'vintage_academic',
|
||||
'soft_creative',
|
||||
'bohemian',
|
||||
'vibrant_tech',
|
||||
'craft_artisan',
|
||||
'tech_night',
|
||||
'education_charts',
|
||||
'forest_eco',
|
||||
'elegant_fashion',
|
||||
'art_food',
|
||||
'luxury_mystery',
|
||||
'pure_tech_blue',
|
||||
'coastal_coral',
|
||||
'vibrant_orange_mint',
|
||||
'platinum_white_gold',
|
||||
] as const
|
||||
|
||||
interface AgentDetailViewProps {
|
||||
agent?: {
|
||||
id: string
|
||||
@@ -539,24 +560,9 @@ export function AgentDetailView({
|
||||
<label className={labelCls}>{t('agents.form.slideTheme')}<FieldHelp tooltip={t('agents.help.tooltips.slideTheme')} /></label>
|
||||
<select value={slideTheme} onChange={e => setSlideTheme(e.target.value)} className={selectCls}>
|
||||
<option value="">{t('agents.form.slideThemeDefault')}</option>
|
||||
<option value="modern_wellness">Modern & Wellness</option>
|
||||
<option value="business_authority">Business & Authority</option>
|
||||
<option value="nature_outdoors">Nature & Outdoors</option>
|
||||
<option value="vintage_academic">Vintage & Academic</option>
|
||||
<option value="soft_creative">Soft & Creative</option>
|
||||
<option value="bohemian">Bohemian</option>
|
||||
<option value="vibrant_tech">Vibrant & Tech</option>
|
||||
<option value="craft_artisan">Craft & Artisan</option>
|
||||
<option value="tech_night">Tech & Night (dark)</option>
|
||||
<option value="education_charts">Education & Charts</option>
|
||||
<option value="forest_eco">Forest & Eco</option>
|
||||
<option value="elegant_fashion">Elegant & Fashion</option>
|
||||
<option value="art_food">Art & Food</option>
|
||||
<option value="luxury_mystery">Luxury & Mystery</option>
|
||||
<option value="pure_tech_blue">Pure Tech Blue</option>
|
||||
<option value="coastal_coral">Coastal Coral</option>
|
||||
<option value="vibrant_orange_mint">Vibrant Orange Mint</option>
|
||||
<option value="platinum_white_gold">Platinum White Gold</option>
|
||||
{SLIDE_GENERATOR_THEME_VALUES.map(themeId => (
|
||||
<option key={themeId} value={themeId}>{t(`agents.form.slideThemes.${themeId}`)}</option>
|
||||
))}
|
||||
</select>
|
||||
</div>
|
||||
<div className="space-y-4">
|
||||
|
||||
Reference in New Issue
Block a user