From 00376202fdbc699f6e7ee5078b1559ec9da7cd7b Mon Sep 17 00:00:00 2001 From: SeongHyun Kim Date: Mon, 29 Dec 2025 09:06:07 +0900 Subject: [PATCH] =?UTF-8?q?feat(universal-form-modal):=20=EC=A1=B0?= =?UTF-8?q?=EA=B1=B4=EB=B6=80=20=ED=85=8C=EC=9D=B4=EB=B8=94,=20=EB=8F=99?= =?UTF-8?q?=EC=A0=81=20Select=20=EC=98=B5=EC=85=98,=20=EC=84=9C=EB=B8=8C?= =?UTF-8?q?=20=ED=85=8C=EC=9D=B4=EB=B8=94=20=EC=88=98=EC=A0=95=20=EB=A1=9C?= =?UTF-8?q?=EB=93=9C=20=EA=B8=B0=EB=8A=A5=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 조건부 테이블: 체크박스/탭으로 조건 선택 시 다른 테이블 데이터 관리 - 동적 Select 옵션: 소스 테이블에서 드롭다운 옵션 동적 로드 - 행 선택 모드: Select 값 변경 시 같은 소스 행의 연관 컬럼 자동 채움 - 수정 모드 서브 테이블 로드: loadOnEdit 옵션으로 반복 섹션 데이터 자동 로드 - SplitPanelLayout2 메인 테이블 병합: 서브 테이블 수정 시 메인 데이터 함께 조회 - 연결 필드 그룹 표시 형식: subDisplayColumn 추가로 메인/서브 컬럼 분리 설정 - UX 개선: 컬럼 선택 UI를 검색 가능한 Combobox로 전환 - saveMainAsFirst 로직 개선: items 없어도 메인 데이터 저장 가능 --- .../ActionButtonConfigModal.tsx | 1 + .../split-panel-layout2/ColumnConfigModal.tsx | 1 + .../components/split-panel-layout2/README.md | 1 + .../SplitPanelLayout2Renderer.tsx | 1 + .../components/SearchableColumnSelect.tsx | 1 + .../components/SortableColumnItem.tsx | 1 + .../modals/SectionLayoutModal.tsx | 1 + .../modals/TableSectionSettingsModal.tsx | 32 +++++++++++++++++-- 8 files changed, 36 insertions(+), 3 deletions(-) diff --git a/frontend/lib/registry/components/split-panel-layout2/ActionButtonConfigModal.tsx b/frontend/lib/registry/components/split-panel-layout2/ActionButtonConfigModal.tsx index aeff27c2..5efd59b8 100644 --- a/frontend/lib/registry/components/split-panel-layout2/ActionButtonConfigModal.tsx +++ b/frontend/lib/registry/components/split-panel-layout2/ActionButtonConfigModal.tsx @@ -672,3 +672,4 @@ export const ActionButtonConfigModal: React.FC = ( export default ActionButtonConfigModal; + diff --git a/frontend/lib/registry/components/split-panel-layout2/ColumnConfigModal.tsx b/frontend/lib/registry/components/split-panel-layout2/ColumnConfigModal.tsx index 89866651..ae6c4093 100644 --- a/frontend/lib/registry/components/split-panel-layout2/ColumnConfigModal.tsx +++ b/frontend/lib/registry/components/split-panel-layout2/ColumnConfigModal.tsx @@ -803,3 +803,4 @@ export const ColumnConfigModal: React.FC = ({ export default ColumnConfigModal; + diff --git a/frontend/lib/registry/components/split-panel-layout2/README.md b/frontend/lib/registry/components/split-panel-layout2/README.md index 26d2a669..aafdc38d 100644 --- a/frontend/lib/registry/components/split-panel-layout2/README.md +++ b/frontend/lib/registry/components/split-panel-layout2/README.md @@ -102,3 +102,4 @@ + diff --git a/frontend/lib/registry/components/split-panel-layout2/SplitPanelLayout2Renderer.tsx b/frontend/lib/registry/components/split-panel-layout2/SplitPanelLayout2Renderer.tsx index 642de9a2..57979869 100644 --- a/frontend/lib/registry/components/split-panel-layout2/SplitPanelLayout2Renderer.tsx +++ b/frontend/lib/registry/components/split-panel-layout2/SplitPanelLayout2Renderer.tsx @@ -42,3 +42,4 @@ SplitPanelLayout2Renderer.registerSelf(); + diff --git a/frontend/lib/registry/components/split-panel-layout2/components/SearchableColumnSelect.tsx b/frontend/lib/registry/components/split-panel-layout2/components/SearchableColumnSelect.tsx index 24602860..da160f3e 100644 --- a/frontend/lib/registry/components/split-panel-layout2/components/SearchableColumnSelect.tsx +++ b/frontend/lib/registry/components/split-panel-layout2/components/SearchableColumnSelect.tsx @@ -161,3 +161,4 @@ export const SearchableColumnSelect: React.FC = ({ export default SearchableColumnSelect; + diff --git a/frontend/lib/registry/components/split-panel-layout2/components/SortableColumnItem.tsx b/frontend/lib/registry/components/split-panel-layout2/components/SortableColumnItem.tsx index 8e3cef91..4a188983 100644 --- a/frontend/lib/registry/components/split-panel-layout2/components/SortableColumnItem.tsx +++ b/frontend/lib/registry/components/split-panel-layout2/components/SortableColumnItem.tsx @@ -116,3 +116,4 @@ export const SortableColumnItem: React.FC = ({ export default SortableColumnItem; + diff --git a/frontend/lib/registry/components/universal-form-modal/modals/SectionLayoutModal.tsx b/frontend/lib/registry/components/universal-form-modal/modals/SectionLayoutModal.tsx index b47c2424..0031e5d0 100644 --- a/frontend/lib/registry/components/universal-form-modal/modals/SectionLayoutModal.tsx +++ b/frontend/lib/registry/components/universal-form-modal/modals/SectionLayoutModal.tsx @@ -1125,3 +1125,4 @@ export function SectionLayoutModal({ } + diff --git a/frontend/lib/registry/components/universal-form-modal/modals/TableSectionSettingsModal.tsx b/frontend/lib/registry/components/universal-form-modal/modals/TableSectionSettingsModal.tsx index 535be447..f8b77aba 100644 --- a/frontend/lib/registry/components/universal-form-modal/modals/TableSectionSettingsModal.tsx +++ b/frontend/lib/registry/components/universal-form-modal/modals/TableSectionSettingsModal.tsx @@ -1538,12 +1538,12 @@ function ColumnSettingItem({

{sourceTableColumns.length > 0 ? (