import { css } from '@emotion/css'; import React, { useState } from 'react'; import { selectors } from '@grafana/e2e-selectors'; import { Button, Form, Modal, VerticalGroup, TextArea } from '@grafana/ui'; import { WorkflowID } from '../../storage/types'; import { SavedQuery } from '../api/SavedQueriesApi'; interface FormDTO { message: string; } export interface SaveQueryOptions { savedQuery: SavedQuery; workflow: WorkflowID; message?: string; } export type SaveProps = { onCancel: () => void; onSuccess: () => void; onSubmit?: (options: SaveQueryOptions) => Promise<{ success: boolean }>; options: SaveQueryOptions; onOptionsChange: (opts: SaveQueryOptions) => void; }; export const SaveQueryWorkflowModal = ({ options, onSubmit, onCancel, onSuccess }: SaveProps) => { const [saving, setSaving] = useState(false); return (
{ console.log('hello submitting!'); if (!onSubmit) { return; } setSaving(true); options = { ...options, message: data.message }; const result = await onSubmit(options); if (result.success) { onSuccess(); } else { setSaving(false); } }} > {({ register, errors }) => (