fix confirm close dialog + add restart confirm dialog (#12761)

Test: 
- On upload > No dialog at modal closing
- On match > Confirm cancel dialog at closing (escape, click outside,
cancel cross)
- On match > Restart dialog at Restart Import
- On validation > Confirm cancel dialog at closing (escape, click
outside, cancel cross)
- On import > Confirm cancel dialog at closing (escape, click outside,
cancel cross)
- On import > No confirm at import end

closes : https://github.com/twentyhq/core-team-issues/issues/1071
This commit is contained in:
Etienne
2025-06-20 15:20:17 +02:00
committed by GitHub
parent 0e669e621d
commit 19fe508ec3
6 changed files with 75 additions and 49 deletions

View File

@ -195,6 +195,7 @@ export type ModalProps = React.PropsWithChildren & {
onEnter?: () => void;
modalVariant?: ModalVariants;
dataGloballyPreventClickOutside?: boolean;
shouldCloseModalOnClickOutsideOrEscape?: boolean;
} & (
| { isClosable: true; onClose?: () => void }
| { isClosable?: false; onClose?: never }
@ -217,6 +218,7 @@ export const Modal = ({
onClose,
modalVariant = 'primary',
dataGloballyPreventClickOutside = false,
shouldCloseModalOnClickOutsideOrEscape = true,
}: ModalProps) => {
const isMobile = useIsMobile();
const modalRef = useRef<HTMLDivElement>(null);
@ -236,7 +238,7 @@ export const Modal = ({
const handleClose = () => {
onClose?.();
closeModal(modalId);
if (shouldCloseModalOnClickOutsideOrEscape) closeModal(modalId);
};
return (