"use client"; import { ChevronDown, ChevronRight, Trash2 } from "lucide-react"; import { Button } from "@/components/ui/button"; import { VariantConditionEditor } from "./VariantConditionEditor"; import { VariantOverridesEditor } from "./VariantOverridesEditor"; import type { VariantPanelProps } from "./types"; import { ensureCondition } from "./utils"; /** * Панель управления одним вариантом экрана * Включает условия показа и переопределения настроек */ export function VariantPanel({ variant, index, isExpanded, baseScreen, allScreens, onToggle, onChange, onDelete, }: VariantPanelProps) { const condition = ensureCondition(variant, allScreens[0]?.id ?? ""); return (
{/* Header */}
{isExpanded ? ( ) : ( )} Вариант {index + 1}
{/* Body */} {isExpanded && (
{/* Условие */}

Условие показа

onChange({ ...variant, conditions: [newCondition] }) } />
{/* Переопределения */}

Переопределения настроек

onChange({ ...variant, overrides: newOverrides }) } />
)}
); }