feat: 버튼 컴포넌트의 성공 메시지 표시 로직 개선

- 성공 메시지를 표시하는 액션을 'save', 'delete', 'submit'으로 제한하여 불필요한 토스트 메시지를 방지하도록 수정하였습니다.
- 조용히 처리되는 액션에 대한 주석을 업데이트하여 코드 가독성을 향상시켰습니다.
This commit is contained in:
kjs 2026-02-04 09:40:02 +09:00
parent b2cb7922c2
commit dff27c522f
2 changed files with 9 additions and 14 deletions

View File

@ -641,19 +641,17 @@ export const ButtonPrimaryComponent: React.FC<ButtonPrimaryComponentProps> = ({
}
// 성공한 경우에만 성공 토스트 표시
// edit, modal, navigate, excel_upload, barcode_scan 액션은 조용히 처리
// (UI 전환만 하거나 모달 내부에서 자체적으로 메시지 표시)
const silentSuccessActions = ["edit", "modal", "navigate", "excel_upload", "barcode_scan"];
if (!silentSuccessActions.includes(actionConfig.type)) {
// save, delete, submit 액션에서만 성공 메시지 표시
// 그 외 액션은 조용히 처리 (불필요한 "완료되었습니다" 토스트 방지)
const successToastActions = ["save", "delete", "submit"];
if (successToastActions.includes(actionConfig.type)) {
// 기본 성공 메시지 결정
const defaultSuccessMessage =
actionConfig.type === "save"
? "저장되었습니다."
: actionConfig.type === "delete"
? "삭제되었습니다."
: actionConfig.type === "submit"
? "제출되었습니다."
: "완료되었습니다.";
: "제출되었습니다.";
// 커스텀 메시지 사용 조건:
// 1. 커스텀 메시지가 있고

View File

@ -3063,10 +3063,8 @@ export class ButtonActionExecutor {
window.dispatchEvent(modalEvent);
// 성공 메시지 (autoDetectDataSource 모드에서만)
if (autoDetectDataSource && config.successMessage) {
toast.success(config.successMessage);
}
// 모달 열기는 UI 전환이므로 성공 토스트를 표시하지 않음
// (저장 등 실제 액션 완료 시에만 토스트 표시)
return true;
}
@ -3255,8 +3253,7 @@ export class ButtonActionExecutor {
window.dispatchEvent(modalEvent);
// 성공 메시지 (간단하게)
toast.success(config.successMessage || "다음 단계로 진행합니다.");
// 모달 열기는 UI 전환이므로 성공 토스트를 표시하지 않음
return true;
} else {
@ -7122,7 +7119,7 @@ export const DEFAULT_BUTTON_ACTIONS: Record<ButtonActionType, Partial<ButtonActi
modalSize: "md",
passSelectedData: true,
autoDetectDataSource: true,
successMessage: "다음 단계로 진행합니다.",
// 모달 열기는 UI 전환이므로 successMessage 제거
},
modal: {
type: "modal",