"use client" // prompt-kit `steps` (https://prompt-kit.com/c/steps.json), sitenin paletine // çevrildi: `muted/foreground/popover` token'ları yerine slate ölçeği // (DESIGN.md §2, §2.3 — koyu temada token'lar çevrilir, `dark:` yok). Yapı // aynı: Steps (Collapsible) → StepsTrigger (başlık + ok) → StepsContent // (solda dikey çubuk, sağda adımlar). Danışman sohbetinde araç adımlarını // listeler (features/rapor/components/arac-pilleri.tsx, §4.20). import { Collapsible, CollapsibleContent, CollapsibleTrigger, } from "@/components/ui/collapsible" import { cn } from "@/lib/utils" import { ChevronDown } from "lucide-react" export type StepsItemProps = React.ComponentProps<"div"> export const StepsItem = ({ children, className, ...props }: StepsItemProps) => (
{children}
) export type StepsTriggerProps = React.ComponentProps< typeof CollapsibleTrigger > & { leftIcon?: React.ReactNode swapIconOnHover?: boolean } export const StepsTrigger = ({ children, className, leftIcon, swapIconOnHover = true, ...props }: StepsTriggerProps) => (
{leftIcon ? ( {leftIcon} {swapIconOnHover && ( )} ) : null} {children}
{!leftIcon && ( )}
) export type StepsContentProps = React.ComponentProps< typeof CollapsibleContent > & { bar?: React.ReactNode } export const StepsContent = ({ children, className, bar, ...props }: StepsContentProps) => { return (
{bar ?? }
{children}
) } export type StepsBarProps = React.HTMLAttributes export const StepsBar = ({ className, ...props }: StepsBarProps) => (
) export type StepsProps = React.ComponentProps export function Steps({ defaultOpen = true, className, ...props }: StepsProps) { return ( ) }