Move all integration queries/mutations to hooks

This commit is contained in:
Tuan Dang
2023-08-10 14:15:24 +07:00
parent 9963724a6a
commit 78802409bd
60 changed files with 448 additions and 300 deletions
@@ -2,6 +2,10 @@ import { useEffect, useState } from "react";
import { useRouter } from "next/router";
import queryString from "query-string";
import {
useCreateIntegration
} from "@app/hooks/api";
import {
Button,
Card,
@@ -17,7 +21,6 @@ import {
useGetIntegrationAuthTeams
} from "../../../hooks/api/integrationAuth";
import { useGetWorkspaceById } from "../../../hooks/api/workspace";
import createIntegration from "../../api/integrations/createIntegration";
const gitLabEntities = [
{ name: "Individual", value: "individual" },
@@ -26,6 +29,7 @@ const gitLabEntities = [
export default function GitLabCreateIntegrationPage() {
const router = useRouter();
const { mutateAsync } = useCreateIntegration();
const { integrationAuthId } = queryString.parse(router.asPath.split("?")[1]);
@@ -87,7 +91,7 @@ export default function GitLabCreateIntegrationPage() {
setIsLoading(true);
if (!integrationAuth?._id) return;
await createIntegration({
await mutateAsync({
integrationAuthId: integrationAuth?._id,
isActive: true,
app:
@@ -2,10 +2,14 @@ import { useEffect } from "react";
import { useRouter } from "next/router";
import queryString from "query-string";
import AuthorizeIntegration from "../../../api/integrations/authorizeIntegration";
import {
useAuthorizeIntegration
} from "@app/hooks/api";
export default function GitLabOAuth2CallbackPage() {
const router = useRouter();
const { mutateAsync } = useAuthorizeIntegration();
const { code, state } = queryString.parse(router.asPath.split("?")[1]);
useEffect(() => {
(async () => {
@@ -14,7 +18,7 @@ export default function GitLabOAuth2CallbackPage() {
if (state !== localStorage.getItem("latestCSRFToken")) return;
localStorage.removeItem("latestCSRFToken");
const integrationAuth = await AuthorizeIntegration({
const integrationAuth = await mutateAsync({
workspaceId: localStorage.getItem("projectData.id") as string,
code: code as string,
integration: "gitlab"