@jk-core/components
Version:
components for jk
51 lines (50 loc) • 1.8 kB
TypeScript
interface TableLabelType {
text: string | number;
align?: 'left' | 'center' | 'right';
}
interface TableHeaderType {
label: TableLabelType;
width?: string;
subWidth?: string[];
subLabel?: TableLabelType[];
}
interface TableBodyType {
head?: TableLabelType;
labels: TableLabelType[];
}
interface TableProps {
/**
* 테이블 헤더 설정
* - `label`: 헤더의 라벨 텍스트, text와 align 속성을 포함한 객체
* - `width`: 헤더의 너비, subWidth가 있을 경우 무시됨 (선택적)
* - `subWidth`: 서브 헤더의 너비 배열 (선택적)
* - `subLabel`: 서브 헤더의 라벨, text와 align 속성을 포함한 객체 배열 (선택적)
*/
header: TableHeaderType[];
/**
* 테이블 바디 설정
* - `head`: 바디의 헤더 텍스트, text와 align 속성을 포함한 객체 (선택적)
* - `labels`: 각 행의 라벨 배열, text와 align 속성을 포함한 객체 배열
*/
body: TableBodyType[];
/**
* 테이블의 모서리를 둥글게 처리할지 여부
* - `rounded`: true일 경우 모서리가 둥글게 처리됨
*/
rounded?: boolean;
/**
* 테이블의 테두리 표시 여부
* - `border`: true일 경우 테이블에 테두리가 표시됨
*/
border?: boolean;
}
/**
* 테이블 컴포넌트
* 헤더와 바디를 설정하여 테이블을 렌더링합니다.
* - `header`: 테이블의 헤더 설정
* - `body`: 테이블의 바디 설정
* - `rounded`: 테이블의 모서리를 둥글게 처리할지 여부
* - `border`: 테이블에 테두리를 표시할지 여부
*/
export default function Table({ header, body, rounded, border }: TableProps): import("react/jsx-runtime").JSX.Element;
export {};