import { useState } from "react"; import { Modal, ModalContent } from "@app/components/v2"; import { TAppConnection } from "@app/hooks/api/appConnections"; import { AppConnection } from "@app/hooks/api/appConnections/enums"; import { ProjectType } from "@app/hooks/api/projects/types"; import { AppConnectionForm } from "./AppConnectionForm"; import { AppConnectionsSelect } from "./AppConnectionList"; type Props = { isOpen: boolean; onOpenChange: (isOpen: boolean) => void; projectId?: string; projectType?: ProjectType; app?: AppConnection; onComplete?: (appConnection: TAppConnection) => void; }; type ContentProps = { onComplete: (appConnection: TAppConnection) => void; projectId?: string; projectType?: ProjectType; app?: AppConnection; }; const Content = ({ onComplete, projectId, projectType, app }: ContentProps) => { const [selectedApp, setSelectedApp] = useState(null); if (app ?? selectedApp) { return ( setSelectedApp(null)} app={(app ?? selectedApp)!} projectId={projectId} /> ); } return ; }; export const AddAppConnectionModal = ({ isOpen, onOpenChange, projectId, projectType, app, onComplete }: Props) => { return ( { if (onComplete) onComplete(appConnection); onOpenChange(false); }} /> ); };