import React from 'react'; import NiceModal from '@ebay/nice-modal-react'; import {Dialog} from '@gravity-ui/uikit'; import {BRAND_BUTTON_CLASS} from '../../constants'; import i18n from './i18n'; export const RUNNING_QUERY_DIALOG = 'running-query-dialog'; interface RunningQueryDialogProps { open: boolean; onStopAndClose: () => void; onCancel: () => void; } function RunningQueryDialog({open, onStopAndClose, onCancel}: RunningQueryDialogProps) { return ( {i18n('context_query-will-be-stopped')} ); } const RunningQueryDialogNiceModal = NiceModal.create(() => { const modal = NiceModal.useModal(); const handleClose = React.useCallback(() => { modal.hide(); modal.remove(); }, [modal]); const handleStopAndClose = React.useCallback(() => { modal.resolve(true); handleClose(); }, [modal, handleClose]); const handleCancel = React.useCallback(() => { modal.resolve(false); handleClose(); }, [modal, handleClose]); return ( ); }); NiceModal.register(RUNNING_QUERY_DIALOG, RunningQueryDialogNiceModal); export async function getRunningQueryConfirmation(): Promise { return await NiceModal.show(RUNNING_QUERY_DIALOG, { id: RUNNING_QUERY_DIALOG, }); }