좌측 패널(마스터)-우측 패널(디테일) 분할 레이아웃 컴포넌트 추가 EditModal에 isCreateMode 플래그 추가하여 INSERT/UPDATE 분기 처리 dataFilter 기반 정확한 조인 필터링 구현 좌측 패널 선택 데이터를 모달로 자동 전달하는 dataTransferFields 설정 지원 ConfigPanel에서 테이블, 컬럼, 조인 설정 가능
58 lines
1.3 KiB
TypeScript
58 lines
1.3 KiB
TypeScript
/**
|
|
* SplitPanelLayout2 기본 설정
|
|
*/
|
|
|
|
import { SplitPanelLayout2Config } from "./types";
|
|
|
|
/**
|
|
* 기본 설정값
|
|
*/
|
|
export const defaultConfig: Partial<SplitPanelLayout2Config> = {
|
|
leftPanel: {
|
|
title: "목록",
|
|
tableName: "",
|
|
displayColumns: [],
|
|
showSearch: true,
|
|
showAddButton: false,
|
|
},
|
|
rightPanel: {
|
|
title: "상세",
|
|
tableName: "",
|
|
displayColumns: [],
|
|
showSearch: true,
|
|
showAddButton: true,
|
|
addButtonLabel: "추가",
|
|
showEditButton: true,
|
|
showDeleteButton: true,
|
|
displayMode: "card",
|
|
emptyMessage: "좌측에서 항목을 선택해주세요",
|
|
},
|
|
joinConfig: {
|
|
leftColumn: "",
|
|
rightColumn: "",
|
|
},
|
|
dataTransferFields: [],
|
|
splitRatio: 30,
|
|
resizable: true,
|
|
minLeftWidth: 250,
|
|
minRightWidth: 400,
|
|
autoLoad: true,
|
|
};
|
|
|
|
/**
|
|
* 컴포넌트 메타데이터
|
|
*/
|
|
export const componentMeta = {
|
|
id: "split-panel-layout2",
|
|
name: "분할 패널 레이아웃 v2",
|
|
nameEng: "Split Panel Layout v2",
|
|
description: "마스터-디테일 패턴의 좌우 분할 레이아웃 (데이터 전달 기능 포함)",
|
|
category: "layout",
|
|
webType: "container",
|
|
icon: "LayoutPanelLeft",
|
|
tags: ["레이아웃", "분할", "마스터", "디테일", "패널", "부서", "사원"],
|
|
version: "2.0.0",
|
|
author: "개발팀",
|
|
};
|
|
|