zzz / frontend /src /components /shared /modals /exit-project-confirmation-modal.tsx
ar08's picture
Upload 1040 files
246d201 verified
import { useDispatch } from "react-redux";
import { useEndSession } from "#/hooks/use-end-session";
import { setCurrentAgentState } from "#/state/agent-slice";
import { AgentState } from "#/types/agent-state";
import { DangerModal } from "./confirmation-modals/danger-modal";
import { ModalBackdrop } from "./modal-backdrop";
interface ExitProjectConfirmationModalProps {
onClose: () => void;
}
export function ExitProjectConfirmationModal({
onClose,
}: ExitProjectConfirmationModalProps) {
const dispatch = useDispatch();
const endSession = useEndSession();
const handleEndSession = () => {
onClose();
dispatch(setCurrentAgentState(AgentState.LOADING));
endSession();
};
return (
<ModalBackdrop onClose={onClose}>
<DangerModal
title="Are you sure you want to exit?"
description="You will lose any unsaved information."
buttons={{
danger: {
text: "Exit Project",
onClick: handleEndSession,
},
cancel: {
text: "Cancel",
onClick: onClose,
},
}}
/>
</ModalBackdrop>
);
}