"use client"; import { FoxInput, FoxInputState, FoxSelect, FoxSelectItem, FoxSelectOption, FoxSelectOptionItem } from "@/@fox/core/components"; import { useState, type CSSProperties, type ReactNode } from "react"; import { FoxButton } from "../core/components/fox-button"; import { FoxButtonGroup } from "../core/components/fox-button-group"; import { FoxButtonPanel } from "../core/components/fox-button-panel"; import { FoxIconButton } from "../core/components/fox-icon-button"; import { FoxLinkButton } from "../core/components/fox-link-button"; import { FoxTextButton } from "../core/components/fox-text-button"; import styles from "./dev-test.module.scss"; export interface ComponentExample { /** 해시 링크에 쓰이는 kebab-case 식별자. */ id: string; name: string; description?: string; /** 눈으로 비교해야 하는 조합을 빠짐없이 넣는다 — 예제가 곧 회귀 확인 수단이다. */ variants: { label: string; node: ReactNode }[]; } // 자리 확인용 도형. `currentColor`로 그려야 계열별 색이 입혀진다. style은 FoxSelect // 힌트 아이콘처럼 크기를 줄여 써야 하는 자리에 쓴다. function DemoIcon({ style }: { style?: CSSProperties } = {}) { return ( ); } function DemoStar() { return ( ); } // overlay 계열은 어두운 반투명 배경이라 밝은 바탕 위에서는 대비를 볼 수 없다. function OnPhoto({ children }: { children: ReactNode }) { return ( {children} ); } // 입력 예제는 폭이 있어야 시안(360px)처럼 보인다. function InputStage({ children }: { children: ReactNode }) { return