import React, { useState, useEffect, useCallback } from "react"; import Button from "antd/lib/button"; import Modal from "antd/lib/modal"; import Alert from "antd/lib/alert"; import DynamicForm from "@/components/dynamic-form/DynamicForm"; import { wrap as wrapDialog, DialogPropType } from "@/components/DialogWrapper"; import recordEvent from "@/services/recordEvent"; import { useUniqueId } from "@/lib/hooks/useUniqueId"; const formFields = [ { required: true, name: "name", title: "Name", type: "text", autoFocus: true }, { required: true, name: "email", title: "Email", type: "email" }, ]; function CreateUserDialog({ dialog }) { const [error, setError] = useState(null); useEffect(() => { recordEvent("view", "page", "users/new"); }, []); const handleSubmit = useCallback(values => dialog.close(values).catch(setError), [dialog]); const formId = useUniqueId("userForm"); return ( Cancel , , ]} wrapProps={{ "data-test": "CreateUserDialog", }}> {error && } ); } CreateUserDialog.propTypes = { dialog: DialogPropType.isRequired, }; export default wrapDialog(CreateUserDialog);