diff --git a/frontend/src/components/admin/ThemeCustomizerEnhanced.tsx b/frontend/src/components/admin/ThemeCustomizerEnhanced.tsx index 29d49837..37d90279 100644 --- a/frontend/src/components/admin/ThemeCustomizerEnhanced.tsx +++ b/frontend/src/components/admin/ThemeCustomizerEnhanced.tsx @@ -1,5 +1,5 @@ import React, { useState, useEffect } from 'react'; -import { Palette, RotateCcw, Check, Layout, Type, Sparkles, Grid3X3, Layers, Play, Clock, Image, LayoutGrid, ChevronDown, Code, Info, FileCode, ImageIcon, Minimize2, EyeOff } from 'lucide-react'; +import { Palette, RotateCcw, Check, Layout, Type, Sparkles, Grid3X3, Layers, Play, Clock, Image, LayoutGrid, ChevronDown, Code, Info, FileCode, ImageIcon, Minimize2, EyeOff, Menu, SlidersHorizontal, Columns, Film } from 'lucide-react'; import { Button, Card, Input } from '../common'; import { ThemeConfig, GALLERY_THEME_PRESETS, GalleryLayoutType, HeaderStyleType, HeroDividerStyle } from '../../types/theme.types'; import type { EnabledTemplate } from '../../services/cssTemplates.service'; @@ -28,7 +28,9 @@ const layoutIcons: Record = { masonry: , carousel: , timeline: , - mosaic: + mosaic: , + 'gallery-premium': , + 'gallery-story': }; const headerStyleIcons: Record = { @@ -178,7 +180,7 @@ export const ThemeCustomizerEnhanced: React.FC = (
{/* Preset Themes */} -

+

{t('branding.themePresets')}

@@ -189,15 +191,15 @@ export const ThemeCustomizerEnhanced: React.FC = ( onClick={() => handlePresetSelect(key)} className={`relative p-4 rounded-lg border-2 transition-all text-left ${ selectedPreset === key - ? 'border-primary-600 bg-primary-50' - : 'border-neutral-200 hover:border-neutral-300' + ? 'border-primary-600 bg-primary-50 dark:bg-primary-900/30' + : 'border-neutral-200 dark:border-neutral-700 hover:border-neutral-300 dark:hover:border-neutral-600' }`} >
- {theme.name} + {theme.name} {theme.description && ( - {theme.description} + {theme.description} )}
{selectedPreset === key && ( @@ -207,15 +209,15 @@ export const ThemeCustomizerEnhanced: React.FC = (
@@ -233,7 +235,7 @@ export const ThemeCustomizerEnhanced: React.FC = ( {/* Gallery Layout */} {showGalleryLayouts && ( -

+

{t('branding.galleryLayout')}

@@ -244,16 +246,21 @@ export const ThemeCustomizerEnhanced: React.FC = ( onClick={() => handleChange('galleryLayout', layout)} className={`relative p-4 rounded-lg border-2 transition-all ${ localTheme.galleryLayout === layout - ? 'border-primary-600 bg-primary-50' - : 'border-neutral-200 hover:border-neutral-300' + ? 'border-primary-600 bg-primary-50 dark:bg-primary-900/30' + : 'border-neutral-200 dark:border-neutral-700 hover:border-neutral-300 dark:hover:border-neutral-600' }`} >
-
+
{layoutIcons[layout]}
- {layout} - + + {layout} + {(layout === 'gallery-premium' || layout === 'gallery-story') && ( + (Beta) + )} + + {t(`branding.layoutDescriptions.${layout}`)}
@@ -266,19 +273,19 @@ export const ThemeCustomizerEnhanced: React.FC = ( {/* Layout-specific settings */} {localTheme.galleryLayout && ( -
-

{t('branding.layoutSettings')}

+
+

{t('branding.layoutSettings')}

{/* Common settings */}
-