import type { FormInput, JsonPrimitive } from '@yaakapp-internal/plugins'; import type { FormEvent } from 'react'; import { useCallback, useRef, useState } from 'react'; import { generateId } from '../../lib/generateId'; import { DynamicForm } from '../DynamicForm'; import { Button } from './Button'; import { HStack } from './Stacks'; export interface PromptProps { inputs: FormInput[]; onCancel: () => void; onResult: (value: Record | null) => void; confirmText?: string; cancelText?: string; } export function Prompt({ onCancel, inputs, onResult, confirmText = 'Confirm', cancelText = 'Cancel', }: PromptProps) { const [value, setValue] = useState>({}); const handleSubmit = useCallback( (e: FormEvent) => { e.preventDefault(); onResult(value); }, [onResult, value], ); const id = `prompt.form.${useRef(generateId()).current}`; return (
); }