feat(button-actions): 저장 후 노드 플로우 실행 기능 추가 및 RepeatScreenModal props 수신 개선
- dataflowConfig.flowConfig 설정 시 저장 완료 후 노드 플로우 자동 실행 - executeNodeFlow API 동적 import로 번들 최적화 - RepeatScreenModal에서 _groupedData props 수신 지원 추가 - tiptap 라이브러리 버전 업그레이드 (2.11.5 → 2.27.1)
This commit is contained in:
@@ -55,7 +55,8 @@ export function RepeatScreenModalComponent({
|
||||
...props
|
||||
}: RepeatScreenModalComponentProps) {
|
||||
// props에서도 groupedData를 추출 (DynamicWebTypeRenderer에서 전달될 수 있음)
|
||||
const groupedData = propsGroupedData || (props as any).groupedData;
|
||||
// DynamicComponentRenderer에서는 _groupedData로 전달됨
|
||||
const groupedData = propsGroupedData || (props as any).groupedData || (props as any)._groupedData;
|
||||
const componentConfig = {
|
||||
...config,
|
||||
...component?.config,
|
||||
@@ -691,7 +692,7 @@ export function RepeatScreenModalComponent({
|
||||
|
||||
for (const tableRow of tableRowsWithExternalSource) {
|
||||
const key = `${card._cardId}-${tableRow.id}`;
|
||||
// 🆕 v3.7: 삭제된 행은 집계에서 제외
|
||||
// 🆕 v3.7: 삭제된 행은 집계에서 제외
|
||||
const rows = (extData[key] || []).filter((row) => !row._isDeleted);
|
||||
externalRowsByTableId[tableRow.id] = rows;
|
||||
allExternalRows.push(...rows);
|
||||
@@ -1183,19 +1184,19 @@ export function RepeatScreenModalComponent({
|
||||
console.log(`[RepeatScreenModal] DELETE 성공: ${targetTable}, id=${targetRow._originalData.id}`);
|
||||
|
||||
// 성공 시 UI에서 완전히 제거
|
||||
setExternalTableData((prev) => {
|
||||
const newData = {
|
||||
...prev,
|
||||
setExternalTableData((prev) => {
|
||||
const newData = {
|
||||
...prev,
|
||||
[key]: prev[key].filter((row) => row._rowId !== rowId),
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
// 행 삭제 시 집계 재계산
|
||||
setTimeout(() => {
|
||||
recalculateAggregationsWithExternalData(newData);
|
||||
}, 0);
|
||||
|
||||
return newData;
|
||||
});
|
||||
setTimeout(() => {
|
||||
recalculateAggregationsWithExternalData(newData);
|
||||
}, 0);
|
||||
|
||||
return newData;
|
||||
});
|
||||
} catch (error: any) {
|
||||
console.error(`[RepeatScreenModal] DELETE 실패:`, error.response?.data || error.message);
|
||||
// 에러 시에도 다이얼로그 닫기
|
||||
|
||||
Reference in New Issue
Block a user