"use client";

import { ImageDisplayConfig } from "./types";

/**
 * ImageDisplay 컴포넌트 기본 설정
 */
export const ImageDisplayDefaultConfig: ImageDisplayConfig = {
  imageUrl: "",
  altText: "이미지",
  objectFit: "contain",
  borderRadius: 8,
  showBorder: true,
  backgroundColor: "#f9fafb",
  placeholder: "이미지 없음",

  disabled: false,
  required: false,
  readonly: false,
  variant: "default",
  size: "md",
};

/**
 * ImageDisplay 컴포넌트 설정 스키마
 */
export const ImageDisplayConfigSchema = {
  imageUrl: { type: "string", default: "" },
  altText: { type: "string", default: "이미지" },
  objectFit: {
    type: "enum",
    values: ["contain", "cover", "fill", "none", "scale-down"],
    default: "contain",
  },
  borderRadius: { type: "number", default: 8 },
  showBorder: { type: "boolean", default: true },
  backgroundColor: { type: "string", default: "#f9fafb" },
  placeholder: { type: "string", default: "이미지 없음" },

  disabled: { type: "boolean", default: false },
  required: { type: "boolean", default: false },
  readonly: { type: "boolean", default: false },
  variant: {
    type: "enum",
    values: ["default", "outlined", "filled"],
    default: "default",
  },
  size: {
    type: "enum",
    values: ["sm", "md", "lg"],
    default: "md",
  },
};
