feat(admin): 관리자 대시보드와 미디어 자산 UI를 추가

This commit is contained in:
2026-03-09 20:09:10 +09:00
parent cceaa6bd82
commit 986b9ba94b
17 changed files with 1413 additions and 10 deletions

View File

@@ -1,15 +1,18 @@
import { getSceneCardBackgroundStyle, type SceneTheme } from '@/entities/scene';
import type { SceneTheme } from '@/entities/scene';
import { getSceneCardBackgroundStyle, type SceneAssetMap } from '@/entities/media';
import { cn } from '@/shared/lib/cn';
interface SceneSelectCarouselProps {
scenes: SceneTheme[];
selectedSceneId: string;
sceneAssetMap?: SceneAssetMap;
onSelect: (sceneId: string) => void;
}
export const SceneSelectCarousel = ({
scenes,
selectedSceneId,
sceneAssetMap,
onSelect,
}: SceneSelectCarouselProps) => {
return (
@@ -29,7 +32,7 @@ export const SceneSelectCarousel = ({
? 'border-sky-200/38 shadow-[0_0_0_1px_rgba(186,230,253,0.2),0_0_10px_rgba(56,189,248,0.12)]'
: 'border-white/16 hover:border-white/24',
)}
style={getSceneCardBackgroundStyle(scene)}
style={getSceneCardBackgroundStyle(scene, sceneAssetMap?.[scene.id])}
aria-label={`${scene.name} 선택`}
>
<span className="absolute inset-x-0 bottom-0 h-[56%] bg-[linear-gradient(180deg,rgba(2,6,23,0)_0%,rgba(2,6,23,0.2)_52%,rgba(2,6,23,0.24)_100%)]" />