// @flow import React from 'react'; import type { Node } from 'react'; import Button from 'component/button'; import Card from 'component/common/card'; import Spinner from 'component/spinner'; import { Modal } from 'modal/modal'; type Props = { title: string, subtitle?: string | Node, body?: string | Node, labelOk?: string, labelCancel?: string, onConfirm: (closeModal: () => void, setIsBusy: (boolean) => void) => void, hideCancel?: boolean, // --- perform --- doHideModal: () => void, }; export default function ModalConfirm(props: Props) { const { title, subtitle, body, labelOk, labelCancel, onConfirm, hideCancel, doHideModal } = props; const [isBusy, setIsBusy] = React.useState(false); function handleOnClick() { if (onConfirm) { onConfirm(doHideModal, setIsBusy); } } function getOkLabel() { return isBusy ? : labelOk || __('OK'); } function getCancelLabel() { return labelCancel || __('Cancel'); } return (
} />
); }