import { useState } from "react"; import Head from "next/head"; import Image from "next/image"; import Link from "next/link"; import { useRouter } from "next/router"; import { faArrowUpRightFromSquare, faBookOpen } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useSaveIntegrationAccessToken } from "@app/hooks/api"; import { Button, Card, CardTitle, FormControl, Input } from "../../../components/v2"; export default function QoveryCreateIntegrationPage() { const router = useRouter(); const { mutateAsync } = useSaveIntegrationAccessToken(); const [accessToken, setAccessToken] = useState(""); const [accessTokenErrorText, setAccessTokenErrorText] = useState(""); const [isLoading, setIsLoading] = useState(false); const handleButtonClick = async () => { try { setAccessTokenErrorText(""); if (accessToken.length === 0) { setAccessTokenErrorText("Access token cannot be blank"); return; } setIsLoading(true); const integrationAuth = await mutateAsync({ workspaceId: localStorage.getItem("projectData.id"), integration: "qovery", accessToken }); setIsLoading(false); router.push(`/integrations/qovery/create?integrationAuthId=${integrationAuth.id}`); } catch (err) { console.error(err); } }; return (
Authorize Qovery Integration
Qovery logo
Qovery Integration
Docs
setAccessToken(e.target.value)} />
); } QoveryCreateIntegrationPage.requireAuth = true;