53 lines
1.1 KiB
TypeScript
53 lines
1.1 KiB
TypeScript
"use client";
|
|
|
|
import { ButtonPrimaryConfig } from "./types";
|
|
|
|
/**
|
|
* ButtonPrimary 컴포넌트 기본 설정
|
|
*/
|
|
export const ButtonPrimaryDefaultConfig: ButtonPrimaryConfig = {
|
|
text: "버튼",
|
|
actionType: "button",
|
|
variant: "primary",
|
|
|
|
// 공통 기본값
|
|
disabled: false,
|
|
required: false,
|
|
readonly: false,
|
|
variant: "default",
|
|
size: "md",
|
|
};
|
|
|
|
/**
|
|
* ButtonPrimary 컴포넌트 설정 스키마
|
|
* 유효성 검사 및 타입 체크에 사용
|
|
*/
|
|
export const ButtonPrimaryConfigSchema = {
|
|
text: { type: "string", default: "버튼" },
|
|
actionType: {
|
|
type: "enum",
|
|
values: ["button", "submit", "reset"],
|
|
default: "button"
|
|
},
|
|
variant: {
|
|
type: "enum",
|
|
values: ["primary", "secondary", "danger"],
|
|
default: "primary"
|
|
},
|
|
|
|
// 공통 스키마
|
|
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"
|
|
},
|
|
};
|