From db05412865294652bc280eda2ea73563e93f10db Mon Sep 17 00:00:00 2001 From: Tuan Dang Date: Tue, 7 Feb 2023 23:27:21 +0700 Subject: [PATCH] Fix incorrect imports, build errors --- frontend/src/pages/github.tsx | 41 ----- frontend/src/pages/heroku.tsx | 159 ------------------ frontend/src/pages/integrations/[id].tsx | 1 + .../src/pages/integrations/flyio/create.tsx | 2 +- .../src/pages/integrations/github/create.tsx | 2 +- .../src/pages/integrations/heroku/create.tsx | 2 +- .../integrations/heroku/oauth2/callback.tsx | 4 - .../src/pages/integrations/netlify/create.tsx | 2 +- .../src/pages/integrations/render/create.tsx | 2 +- .../src/pages/integrations/vercel/create.tsx | 2 +- frontend/src/pages/netlify.tsx | 46 ----- frontend/src/pages/vercel.tsx | 46 ----- 12 files changed, 7 insertions(+), 302 deletions(-) delete mode 100644 frontend/src/pages/github.tsx delete mode 100644 frontend/src/pages/heroku.tsx delete mode 100644 frontend/src/pages/netlify.tsx delete mode 100644 frontend/src/pages/vercel.tsx diff --git a/frontend/src/pages/github.tsx b/frontend/src/pages/github.tsx deleted file mode 100644 index 37c35b194..000000000 --- a/frontend/src/pages/github.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import { useEffect } from 'react'; -import { useRouter } from 'next/router'; -import queryString from 'query-string'; - -import AuthorizeIntegration from './api/integrations/authorizeIntegration'; - -export default function Github() { - const router = useRouter(); - const parsedUrl = queryString.parse(router.asPath.split('?')[1]); - const {code} = parsedUrl; - const {state} = parsedUrl; - - /** - * Here we forward to the default workspace if a user opens this url - */ - // eslint-disable-next-line react-hooks/exhaustive-deps - useEffect(() => { - (async () => { - try { - if (state === localStorage.getItem('latestCSRFToken')) { - localStorage.removeItem('latestCSRFToken'); - await AuthorizeIntegration({ - workspaceId: localStorage.getItem('projectData.id') as string, - code: code as string, - integration: 'github', - }); - router.push( - `/integrations/${localStorage.getItem('projectData.id')}` - ); - } - } catch (error) { - console.error('Github integration error: ', error); - } - })(); - // eslint-disable-next-line react-hooks/exhaustive-deps - }, []); - - return
; -} - -Github.requireAuth = true; diff --git a/frontend/src/pages/heroku.tsx b/frontend/src/pages/heroku.tsx deleted file mode 100644 index 66facdc06..000000000 --- a/frontend/src/pages/heroku.tsx +++ /dev/null @@ -1,159 +0,0 @@ -import { useEffect, useState } from 'react'; -import { useRouter } from 'next/router'; -import queryString from 'query-string'; - -import { getTranslatedServerSideProps } from '@app/components/utilities/withTranslateProps'; - -import { - Button, - Card, - CardTitle, - FormControl, - Select, - SelectItem -} from '../components/v2'; -import AuthorizeIntegration from './api/integrations/authorizeIntegration'; -import getIntegrationApps from './api/integrations/GetIntegrationApps'; -import getAWorkspace from './api/workspace/getAWorkspace'; - -interface Integration { - _id: string; - isActive: boolean; - app: string | null; - appId: string | null; - createdAt: string; - updatedAt: string; - environment: string; - integration: string; - targetEnvironment: string; - workspace: string; - integrationAuth: string; -} - -interface IntegrationApp { - name: string; - appId?: string; - owner?: string; -} - -export default function Heroku() { - const router = useRouter(); - const parsedUrl = queryString.parse(router.asPath.split('?')[1]); - const { code } = parsedUrl; - const { state } = parsedUrl; - - const [integration, setIntegration] = useState(null); - const [environments, setEnvironments] = useState< - { - name: string; - slug: string; - }[] - >([]); - const [environment, setEnvironment] = useState(''); - const [app, setApp] = useState(''); - const [apps, setApps] = useState([]); - - useEffect(() => { - (async () => { - try { - if (state === localStorage.getItem('latestCSRFToken')) { - localStorage.removeItem('latestCSRFToken'); - const integrationDetails = await AuthorizeIntegration({ - workspaceId: localStorage.getItem('projectData.id') as string, - code: code as string, - integration: 'heroku', - }); - - setIntegration(integrationDetails.integration); - - const workspaceId = localStorage.getItem('projectData.id'); - if (!workspaceId) return; - - const workspace = await getAWorkspace(workspaceId); - setEnvironment(workspace.environments[0].slug); - setEnvironments(workspace.environments); - - const tempApps: [IntegrationApp] = await getIntegrationApps({ - integrationAuthId: integrationDetails.integration.integrationAuth - }); - - console.log('tempApps: ', tempApps); - setApp(tempApps[0].name); - setApps(tempApps); - - // router.push( - // `/integrations/${ localStorage.getItem('projectData.id')}` - // ); - } - } catch (error) { - console.error('Heroku integration error: ', error); - } - })(); - }, []); - - const handleButtonClick = async () => { - try { - console.log('handleButtonClick'); - console.log('project environment: ', environment); - console.log('app', app); - } catch (err) { - console.error(err); - } - } - - console.log('integration: ', integration); - console.log('environments: ', environments); - console.log('apps: ', apps); - - return (integration && environments.length > 0 && apps.length > 0) ? ( -
- - Heroku Integration - - - - - - - - -
- ) :
Hello
-} - -Heroku.requireAuth = true; - -export const getServerSideProps = getTranslatedServerSideProps(['integrations']); \ No newline at end of file diff --git a/frontend/src/pages/integrations/[id].tsx b/frontend/src/pages/integrations/[id].tsx index ac2669de8..e6bc784f6 100644 --- a/frontend/src/pages/integrations/[id].tsx +++ b/frontend/src/pages/integrations/[id].tsx @@ -49,6 +49,7 @@ interface Integration { } interface IntegrationOption { + tenantId?: string; clientId: string; clientSlug?: string; // vercel-integration specific docsLink: string; diff --git a/frontend/src/pages/integrations/flyio/create.tsx b/frontend/src/pages/integrations/flyio/create.tsx index 7f9d079ae..2e185d9fe 100644 --- a/frontend/src/pages/integrations/flyio/create.tsx +++ b/frontend/src/pages/integrations/flyio/create.tsx @@ -11,7 +11,7 @@ import { Select, SelectItem } from '../../../components/v2'; -import { useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; +import { useGetIntegrationAuthApps,useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; import { useGetWorkspaceById } from '../../../hooks/api/workspace'; import createIntegration from "../../api/integrations/createIntegration"; diff --git a/frontend/src/pages/integrations/github/create.tsx b/frontend/src/pages/integrations/github/create.tsx index 324ef5715..3b39fa2d1 100644 --- a/frontend/src/pages/integrations/github/create.tsx +++ b/frontend/src/pages/integrations/github/create.tsx @@ -11,7 +11,7 @@ import { Select, SelectItem } from '../../../components/v2'; -import { useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; +import { useGetIntegrationAuthApps,useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; import { useGetWorkspaceById } from '../../../hooks/api/workspace'; import createIntegration from "../../api/integrations/createIntegration"; diff --git a/frontend/src/pages/integrations/heroku/create.tsx b/frontend/src/pages/integrations/heroku/create.tsx index 6d3c805d5..46e379462 100644 --- a/frontend/src/pages/integrations/heroku/create.tsx +++ b/frontend/src/pages/integrations/heroku/create.tsx @@ -11,7 +11,7 @@ import { Select, SelectItem } from '../../../components/v2'; -import { useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; +import { useGetIntegrationAuthApps,useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; import { useGetWorkspaceById } from '../../../hooks/api/workspace'; import createIntegration from "../../api/integrations/createIntegration"; diff --git a/frontend/src/pages/integrations/heroku/oauth2/callback.tsx b/frontend/src/pages/integrations/heroku/oauth2/callback.tsx index c5846170b..321255c9f 100644 --- a/frontend/src/pages/integrations/heroku/oauth2/callback.tsx +++ b/frontend/src/pages/integrations/heroku/oauth2/callback.tsx @@ -14,17 +14,14 @@ export default function HerokuOAuth2CallbackPage() { (async () => { try { // validate state - console.log('A'); if (state !== localStorage.getItem('latestCSRFToken')) return; localStorage.removeItem('latestCSRFToken'); - console.log('B'); const integrationAuth = await AuthorizeIntegration({ workspaceId: localStorage.getItem('projectData.id') as string, code: code as string, integration: 'heroku' }); - console.log('C'); router.push( `/integrations/heroku/create?integrationAuthId=${integrationAuth._id}` ); @@ -32,7 +29,6 @@ export default function HerokuOAuth2CallbackPage() { } catch (err) { console.error(err); } - console.log('D'); })(); }, []); diff --git a/frontend/src/pages/integrations/netlify/create.tsx b/frontend/src/pages/integrations/netlify/create.tsx index 6ec6469ab..a8b6bcd05 100644 --- a/frontend/src/pages/integrations/netlify/create.tsx +++ b/frontend/src/pages/integrations/netlify/create.tsx @@ -11,7 +11,7 @@ import { Select, SelectItem } from '../../../components/v2'; -import { useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; +import { useGetIntegrationAuthApps,useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; import { useGetWorkspaceById } from '../../../hooks/api/workspace'; import createIntegration from "../../api/integrations/createIntegration"; diff --git a/frontend/src/pages/integrations/render/create.tsx b/frontend/src/pages/integrations/render/create.tsx index 2f02408d9..3429def89 100644 --- a/frontend/src/pages/integrations/render/create.tsx +++ b/frontend/src/pages/integrations/render/create.tsx @@ -11,7 +11,7 @@ import { Select, SelectItem } from '../../../components/v2'; -import { useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; +import { useGetIntegrationAuthApps,useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; import { useGetWorkspaceById } from '../../../hooks/api/workspace'; import createIntegration from "../../api/integrations/createIntegration"; diff --git a/frontend/src/pages/integrations/vercel/create.tsx b/frontend/src/pages/integrations/vercel/create.tsx index 5a3249378..5e0e8ad7e 100644 --- a/frontend/src/pages/integrations/vercel/create.tsx +++ b/frontend/src/pages/integrations/vercel/create.tsx @@ -11,7 +11,7 @@ import { Select, SelectItem } from '../../../components/v2'; -import { useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; +import { useGetIntegrationAuthApps,useGetIntegrationAuthById } from '../../../hooks/api/integrationAuth'; import { useGetWorkspaceById } from '../../../hooks/api/workspace'; import createIntegration from "../../api/integrations/createIntegration"; diff --git a/frontend/src/pages/netlify.tsx b/frontend/src/pages/netlify.tsx deleted file mode 100644 index 532d6044a..000000000 --- a/frontend/src/pages/netlify.tsx +++ /dev/null @@ -1,46 +0,0 @@ -import { useEffect } from 'react'; -import { useRouter } from 'next/router'; -import queryString from 'query-string'; - -import AuthorizeIntegration from './api/integrations/authorizeIntegration'; - -export default function Netlify() { - const router = useRouter(); - const parsedUrl = queryString.parse(router.asPath.split('?')[1]); - const {code} = parsedUrl; - const {state} = parsedUrl; - // modify comment here - - /** - * Here we forward to the default workspace if a user opens this url - */ - // eslint-disable-next-line react-hooks/exhaustive-deps - useEffect(() => { - (async () => { - try { - if (!code) throw new Error('Code not found'); - - if (state === localStorage.getItem('latestCSRFToken')) { - localStorage.removeItem('latestCSRFToken'); - - await AuthorizeIntegration({ - workspaceId: localStorage.getItem('projectData.id') as string, - code: code as string, - integration: 'netlify', - }); - - router.push( - `/integrations/${ localStorage.getItem('projectData.id')}` - ); - } - } catch (err) { - console.error('Netlify integration error: ', err); - } - })(); - // eslint-disable-next-line react-hooks/exhaustive-deps - }, []); - - return
; -} - -Netlify.requireAuth = true; diff --git a/frontend/src/pages/vercel.tsx b/frontend/src/pages/vercel.tsx deleted file mode 100644 index 8e8245736..000000000 --- a/frontend/src/pages/vercel.tsx +++ /dev/null @@ -1,46 +0,0 @@ -import { useEffect } from 'react'; -import { useRouter } from 'next/router'; -import queryString from 'query-string'; - -import AuthorizeIntegration from './api/integrations/authorizeIntegration'; - -export default function Vercel() { - const router = useRouter(); - const parsedUrl = queryString.parse(router.asPath.split('?')[1]); - const {code} = parsedUrl; - const {state} = parsedUrl; - - /** - * Here we forward to the default workspace if a user opens this url - */ - // eslint-disable-next-line react-hooks/exhaustive-deps - useEffect(() => { - (async () => { - try { - // type check - if (!code) throw new Error('Code not found'); - - if (state === localStorage.getItem('latestCSRFToken')) { - localStorage.removeItem('latestCSRFToken'); - - await AuthorizeIntegration({ - workspaceId: localStorage.getItem('projectData.id') as string, - code: code as string, - integration: 'vercel', - }); - - router.push( - `/integrations/${ localStorage.getItem('projectData.id')}` - ); - } - } catch (err) { - console.error('Vercel integration error: ', err); - } - })(); - // eslint-disable-next-line react-hooks/exhaustive-deps - }, []); - - return
; -} - -Vercel.requireAuth = true;