From 78c0a3fc0e372405bc35deee9fd69671574b7125 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Mon, 22 Jul 2024 17:58:35 +0530 Subject: [PATCH 01/43] creates new functions for Gitlab PAT's validity and missing-scopes --- web-server/src/utils/auth.ts | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/web-server/src/utils/auth.ts b/web-server/src/utils/auth.ts index 31f0504d..76ad0fd2 100644 --- a/web-server/src/utils/auth.ts +++ b/web-server/src/utils/auth.ts @@ -19,6 +19,8 @@ export const linkProvider = async ( }); }; +// GitHub functions + export async function checkGitHubValidity( good_stuff: string ): Promise { @@ -52,3 +54,28 @@ export const getMissingPATScopes = async (pat: string) => { throw new Error('Failed to get missing PAT scopes', error); } }; + +// Gitlab functions + +export const checkGitLabValidity = async (accessToken: string) => { + const url = 'https://gitlab.com/api/v4/personal_access_tokens/self'; + try { + const response = await axios.get(url, { + headers: { + 'PRIVATE-TOKEN': accessToken + } + }); + return response.data; + } catch (error) { + throw new Error('Invalid access token', error); + } +}; + +const GITLAB_SCOPES = ['api', 'read_api', 'read_user']; + +export const getMissingGitLabScopes = (scopes: string[]): string[] => { + const missingScopes = GITLAB_SCOPES.filter( + (scope) => !scopes.includes(scope) + ); + return missingScopes; +}; From 819675e4174857ff6bcd93345977fc1152b29a5e Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Mon, 22 Jul 2024 18:06:00 +0530 Subject: [PATCH 02/43] adds `meta` arg in `linkProvider` to store custom_domain for gitlab tokens --- web-server/src/utils/auth.ts | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/web-server/src/utils/auth.ts b/web-server/src/utils/auth.ts index 76ad0fd2..a3f97507 100644 --- a/web-server/src/utils/auth.ts +++ b/web-server/src/utils/auth.ts @@ -1,4 +1,5 @@ import axios from 'axios'; +import { isNil, reject } from 'ramda'; import { Integration } from '@/constants/integrations'; @@ -11,12 +12,17 @@ export const unlinkProvider = async (orgId: string, provider: Integration) => { export const linkProvider = async ( stuff: string, orgId: string, - provider: Integration + provider: Integration, + meta?: Record ) => { - return await axios.post(`/api/resources/orgs/${orgId}/integration`, { - provider, - the_good_stuff: stuff - }); + return await axios.post( + `/api/resources/orgs/${orgId}/integration`, + reject(isNil, { + provider, + the_good_stuff: stuff, + meta_data: meta + }) + ); }; // GitHub functions From 87639667be8c16b4f8565b4710b0fa64841f4d24 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Mon, 22 Jul 2024 18:06:32 +0530 Subject: [PATCH 03/43] updates the integration API to handle `provider_meta` --- .../pages/api/resources/orgs/[org_id]/integration.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/web-server/pages/api/resources/orgs/[org_id]/integration.ts b/web-server/pages/api/resources/orgs/[org_id]/integration.ts index 8360d4bf..ecebf5da 100644 --- a/web-server/pages/api/resources/orgs/[org_id]/integration.ts +++ b/web-server/pages/api/resources/orgs/[org_id]/integration.ts @@ -15,7 +15,8 @@ const deleteSchema = yup.object().shape({ const postSchema = yup.object().shape({ the_good_stuff: yup.string().required(), - provider: yup.string().oneOf(Object.values(Integration)).required() + provider: yup.string().oneOf(Object.values(Integration)).required(), + meta_data: yup.object().optional() }); const endpoint = new Endpoint(pathnameSchema); @@ -55,14 +56,15 @@ endpoint.handle.POST(postSchema, async (req, res) => { return res.send({ status: 'OK' }); } - const { org_id, provider, the_good_stuff } = req.payload; + const { org_id, provider, the_good_stuff, meta_data } = req.payload; await db('Integration') .insert({ access_token_enc_chunks: enc(the_good_stuff), updated_at: new Date(), name: provider, - org_id + org_id, + provider_meta: meta_data }) .onConflict(INTEGRATION_CONFLICT_COLUMNS) .merge(); From 583907e1581a5edb8b048c9c4679633379164111 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Mon, 22 Jul 2024 18:10:26 +0530 Subject: [PATCH 04/43] refactor Github's integration card to separate component --- web-server/pages/integrations.tsx | 4 ++-- ...tionCards.tsx => GithubIntegrationCard.tsx} | 18 +++++++++--------- .../content/Dashboards/githubIntegration.tsx | 18 ++++++++++++++---- 3 files changed, 25 insertions(+), 15 deletions(-) rename web-server/src/content/Dashboards/{IntegrationCards.tsx => GithubIntegrationCard.tsx} (92%) diff --git a/web-server/pages/integrations.tsx b/web-server/pages/integrations.tsx index e1b3b9de..cedbcac2 100644 --- a/web-server/pages/integrations.tsx +++ b/web-server/pages/integrations.tsx @@ -10,7 +10,7 @@ import { Line } from '@/components/Text'; import { Integration } from '@/constants/integrations'; import { ROUTES } from '@/constants/routes'; import { FetchState } from '@/constants/ui-states'; -import { GithubIntegrationCard } from '@/content/Dashboards/IntegrationCards'; +import { GithubIntegrationCard } from '@/content/Dashboards/GithubIntegrationCard'; import { PageWrapper } from '@/content/PullRequests/PageWrapper'; import { useAuth } from '@/hooks/useAuth'; import { useBoolState, useEasyState } from '@/hooks/useEasyState'; @@ -186,7 +186,7 @@ const Content = () => { )} - + {showCreationCTA && ( diff --git a/web-server/src/content/Dashboards/IntegrationCards.tsx b/web-server/src/content/Dashboards/GithubIntegrationCard.tsx similarity index 92% rename from web-server/src/content/Dashboards/IntegrationCards.tsx rename to web-server/src/content/Dashboards/GithubIntegrationCard.tsx index b0386054..72c7868e 100644 --- a/web-server/src/content/Dashboards/IntegrationCards.tsx +++ b/web-server/src/content/Dashboards/GithubIntegrationCard.tsx @@ -8,7 +8,7 @@ import { FlexBox } from '@/components/FlexBox'; import { Line } from '@/components/Text'; import { track } from '@/constants/events'; import { FetchState } from '@/constants/ui-states'; -import { integrationsDisplay } from '@/content/Dashboards/githubIntegration'; +import { githubIntegrationsDisplay } from '@/content/Dashboards/githubIntegration'; import { useIntegrationHandlers } from '@/content/Dashboards/useIntegrationHandlers'; import { useAuth } from '@/hooks/useAuth'; import { useBoolState } from '@/hooks/useEasyState'; @@ -55,7 +55,7 @@ export const GithubIntegrationCard = () => { @@ -73,14 +73,14 @@ export const GithubIntegrationCard = () => { fill top={0} left={0} - sx={{ opacity: 0.2, background: integrationsDisplay.bg }} + sx={{ opacity: 0.2, background: githubIntegrationsDisplay.bg }} /> - - {integrationsDisplay.icon} + + {githubIntegrationsDisplay.icon} - {integrationsDisplay.name} + {githubIntegrationsDisplay.name} @@ -90,7 +90,7 @@ export const GithubIntegrationCard = () => { isGithubIntegrated ? 'INTEGRATION_UNLINK_TRIGGERED' : 'INTEGRATION_LINK_TRIGGERED', - { integration_name: integrationsDisplay.name } + { integration_name: githubIntegrationsDisplay.name } ); if (!isGithubIntegrated) { link.github(); @@ -162,7 +162,7 @@ const IntegrationActionsButton: FC<{ sx={{ p: '1px', minWidth: 0, - background: integrationsDisplay.bg, + background: githubIntegrationsDisplay.bg, position: 'relative', borderRadius: getRadiusWithPadding(6, 1), fontSize: '0.9em' @@ -176,7 +176,7 @@ const IntegrationActionsButton: FC<{ left={0} sx={{ opacity: bgOpacity, - background: integrationsDisplay.bg, + background: githubIntegrationsDisplay.bg, transition: 'all 0.2s', ':hover': { opacity: bgOpacity * 0.6 diff --git a/web-server/src/content/Dashboards/githubIntegration.tsx b/web-server/src/content/Dashboards/githubIntegration.tsx index 71b77a7d..4a6cad42 100644 --- a/web-server/src/content/Dashboards/githubIntegration.tsx +++ b/web-server/src/content/Dashboards/githubIntegration.tsx @@ -1,16 +1,26 @@ import faker from '@faker-js/faker'; import { GitHub } from '@mui/icons-material'; -const bgOpacity = 0.6; +import GitlabIcon from '@/mocks/icons/gitlab.svg'; -export const integrationsDisplay = { +export const githubIntegrationsDisplay = { id: faker.datatype.uuid(), type: 'github', name: 'Github', description: 'Code insights & blockers', color: '#fff', - bg: `linear-gradient(135deg, hsla(160, 10%, 61%, ${bgOpacity}) 0%, hsla(247, 0%, 21%, ${bgOpacity}) 100%)`, + bg: `linear-gradient(135deg, hsla(160, 10%, 61%, 0.6) 0%, hsla(247, 0%, 21%, 0.6) 100%)`, icon: }; -export type IntegrationItem = typeof integrationsDisplay; +export const gitLabIntegrationDisplay = { + id: '39936e43-178a-4272-bef3-948d770bc98f', + type: 'gitlab', + name: 'Gitlab', + description: 'Code insights & blockers', + color: '#554488', + bg: 'linear-gradient(-45deg, hsla(17, 95%, 50%, 0.6) 0%, hsla(42, 94%, 67%, 0.6) 100%)', + icon: +} as IntegrationItem; + +export type IntegrationItem = typeof githubIntegrationsDisplay; From 8d226b2b51b5091d5f9c553bf06f95624565370c Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Mon, 22 Jul 2024 18:11:50 +0530 Subject: [PATCH 05/43] refactors modal body into a separate component --- .../Dashboards/ConfigureGithubModalBody.tsx | 275 +++++++++++++++++ .../Dashboards/useIntegrationHandlers.tsx | 277 +----------------- 2 files changed, 279 insertions(+), 273 deletions(-) create mode 100644 web-server/src/content/Dashboards/ConfigureGithubModalBody.tsx diff --git a/web-server/src/content/Dashboards/ConfigureGithubModalBody.tsx b/web-server/src/content/Dashboards/ConfigureGithubModalBody.tsx new file mode 100644 index 00000000..dd9cae71 --- /dev/null +++ b/web-server/src/content/Dashboards/ConfigureGithubModalBody.tsx @@ -0,0 +1,275 @@ +import { LoadingButton } from '@mui/lab'; +import { Divider, Link, TextField, alpha } from '@mui/material'; +import Image from 'next/image'; +import { useSnackbar } from 'notistack'; +import { FC, useCallback, useMemo } from 'react'; + +import { FlexBox } from '@/components/FlexBox'; +import { Line } from '@/components/Text'; +import { Integration } from '@/constants/integrations'; +import { useAuth } from '@/hooks/useAuth'; +import { useBoolState, useEasyState } from '@/hooks/useEasyState'; +import { fetchCurrentOrg } from '@/slices/auth'; +import { fetchTeams } from '@/slices/team'; +import { useDispatch } from '@/store'; +import { + checkGitHubValidity, + linkProvider, + getMissingPATScopes +} from '@/utils/auth'; +import { depFn } from '@/utils/fn'; + +export const ConfigureGithubModalBody: FC<{ + onClose: () => void; +}> = ({ onClose }) => { + const token = useEasyState(''); + const { orgId } = useAuth(); + const { enqueueSnackbar } = useSnackbar(); + const dispatch = useDispatch(); + const isLoading = useBoolState(); + + const showError = useEasyState(''); + + const setError = useCallback( + (error: string) => { + console.error(error); + depFn(showError.set, error); + }, + [showError.set] + ); + + const handleChange = (e: string) => { + token.set(e); + showError.set(''); + }; + + const handleSubmission = useCallback(async () => { + if (!token.value) { + setError('Please enter a valid token'); + return; + } + depFn(isLoading.true); + checkGitHubValidity(token.value) + .then(async (isValid) => { + if (!isValid) throw new Error('Invalid token'); + }) + .then(async () => { + try { + const res = await getMissingPATScopes(token.value); + if (res.length) { + throw new Error(`Token is missing scopes: ${res.join(', ')}`); + } + } catch (e) { + // @ts-ignore + throw new Error(e?.message, e); + } + }) + .then(async () => { + try { + return await linkProvider(token.value, orgId, Integration.GITHUB); + } catch (e: any) { + throw new Error( + `Failed to link Github${e?.message ? `: ${e?.message}` : ''}`, + e + ); + } + }) + .then(() => { + dispatch(fetchCurrentOrg()); + dispatch( + fetchTeams({ + org_id: orgId, + provider: Integration.GITHUB + }) + ); + enqueueSnackbar('Github linked successfully', { + variant: 'success', + autoHideDuration: 2000 + }); + onClose(); + }) + .catch((e) => { + setError(e.message); + console.error(`Error while linking token: ${e.message}`, e); + }) + .finally(isLoading.false); + }, [ + dispatch, + enqueueSnackbar, + isLoading.false, + isLoading.true, + onClose, + orgId, + setError, + token.value + ]); + + return ( + + + Enter you Github token below. + + { + if (e.key === 'Enter') { + e.preventDefault(); + e.stopPropagation(); + e.nativeEvent.stopImmediatePropagation(); + handleSubmission(); + return; + } + }} + error={!!showError.value} + sx={{ width: '100%' }} + value={token.value} + onChange={(e) => { + handleChange(e.currentTarget.value); + }} + label="Github Personal Access Token" + type="password" + /> + + {showError.value} + + + + + + Generate new classic token + + + {' ->'} + + + + + + + Learn more about Github + + Personal Access Token (PAT) + + here + + + + + + Confirm + + + + + + + + ); +}; + +const TokenPermissions = () => { + const imageLoaded = useBoolState(false); + + const expandedStyles = useMemo(() => { + const baseStyles = { + border: `2px solid ${alpha('rgb(256,0,0)', 0.4)}`, + transition: 'all 0.8s ease', + borderRadius: '12px', + opacity: 1, + width: '240px', + position: 'absolute', + maxWidth: 'calc(100% - 48px)', + left: '24px' + }; + + return [ + { + height: '170px', + top: '58px' + }, + { + height: '42px', + top: '230px' + }, + { + height: '120px', + + top: '378px' + }, + { + height: '120px', + + top: '806px' + } + ].map((item) => ({ ...item, ...baseStyles })); + }, []); + + return ( + +
+ PAT_permissions + + {imageLoaded.value && + expandedStyles.map((style, index) => ( + + ))} + + {!imageLoaded.value && ( + + Loading... + + )} +
+ + Scroll to see all required permissions + +
+ ); +}; diff --git a/web-server/src/content/Dashboards/useIntegrationHandlers.tsx b/web-server/src/content/Dashboards/useIntegrationHandlers.tsx index 4b15644f..edf64213 100644 --- a/web-server/src/content/Dashboards/useIntegrationHandlers.tsx +++ b/web-server/src/content/Dashboards/useIntegrationHandlers.tsx @@ -1,25 +1,11 @@ -import { LoadingButton } from '@mui/lab'; -import { Divider, Link, TextField, alpha } from '@mui/material'; -import Image from 'next/image'; -import { useSnackbar } from 'notistack'; -import { FC, useCallback, useMemo } from 'react'; +import { useMemo } from 'react'; -import { FlexBox } from '@/components/FlexBox'; -import { Line } from '@/components/Text'; import { Integration } from '@/constants/integrations'; import { useModal } from '@/contexts/ModalContext'; import { useAuth } from '@/hooks/useAuth'; -import { useBoolState, useEasyState } from '@/hooks/useEasyState'; -import { fetchCurrentOrg } from '@/slices/auth'; -import { fetchTeams } from '@/slices/team'; -import { useDispatch } from '@/store'; -import { - unlinkProvider, - checkGitHubValidity, - linkProvider, - getMissingPATScopes -} from '@/utils/auth'; -import { depFn } from '@/utils/fn'; +import { unlinkProvider } from '@/utils/auth'; + +import { ConfigureGithubModalBody } from './ConfigureGithubModalBody'; export const useIntegrationHandlers = () => { const { orgId } = useAuth(); @@ -44,258 +30,3 @@ export const useIntegrationHandlers = () => { return handlers; }, [addModal, closeAllModals, orgId]); }; - -const ConfigureGithubModalBody: FC<{ - onClose: () => void; -}> = ({ onClose }) => { - const token = useEasyState(''); - const { orgId } = useAuth(); - const { enqueueSnackbar } = useSnackbar(); - const dispatch = useDispatch(); - const isLoading = useBoolState(); - - const showError = useEasyState(''); - - const setError = useCallback( - (error: string) => { - console.error(error); - depFn(showError.set, error); - }, - [showError.set] - ); - - const handleChange = (e: string) => { - token.set(e); - showError.set(''); - }; - - const handleSubmission = useCallback(async () => { - if (!token.value) { - setError('Please enter a valid token'); - return; - } - depFn(isLoading.true); - checkGitHubValidity(token.value) - .then(async (isValid) => { - if (!isValid) throw new Error('Invalid token'); - }) - .then(async () => { - try { - const res = await getMissingPATScopes(token.value); - if (res.length) { - throw new Error(`Token is missing scopes: ${res.join(', ')}`); - } - } catch (e) { - // @ts-ignore - throw new Error(e?.message, e); - } - }) - .then(async () => { - try { - return await linkProvider(token.value, orgId, Integration.GITHUB); - } catch (e: any) { - throw new Error( - `Failed to link Github${e?.message ? `: ${e?.message}` : ''}`, - e - ); - } - }) - .then(() => { - dispatch(fetchCurrentOrg()); - dispatch( - fetchTeams({ - org_id: orgId, - provider: Integration.GITHUB - }) - ); - enqueueSnackbar('Github linked successfully', { - variant: 'success', - autoHideDuration: 2000 - }); - onClose(); - }) - .catch((e) => { - setError(e.message); - console.error(`Error while linking token: ${e.message}`, e); - }) - .finally(isLoading.false); - }, [ - dispatch, - enqueueSnackbar, - isLoading.false, - isLoading.true, - onClose, - orgId, - setError, - token.value - ]); - - return ( - - - Enter you Github token below. - - { - if (e.key === 'Enter') { - e.preventDefault(); - e.stopPropagation(); - e.nativeEvent.stopImmediatePropagation(); - handleSubmission(); - return; - } - }} - error={!!showError.value} - sx={{ width: '100%' }} - value={token.value} - onChange={(e) => { - handleChange(e.currentTarget.value); - }} - label="Github Personal Access Token" - type="password" - /> - - {showError.value} - - - - - - Generate new classic token - - - {' ->'} - - - - - - - Learn more about Github - - Personal Access Token (PAT) - - here - - - - - - Confirm - - - - - - - - ); -}; - -const TokenPermissions = () => { - const imageLoaded = useBoolState(false); - - const expandedStyles = useMemo(() => { - const baseStyles = { - border: `2px solid ${alpha('rgb(256,0,0)', 0.4)}`, - transition: 'all 0.8s ease', - borderRadius: '12px', - opacity: 1, - width: '240px', - position: 'absolute', - maxWidth: 'calc(100% - 48px)', - left: '24px' - }; - - return [ - { - height: '170px', - top: '58px' - }, - { - height: '42px', - top: '230px' - }, - { - height: '120px', - - top: '378px' - }, - { - height: '120px', - - top: '806px' - } - ].map((item) => ({ ...item, ...baseStyles })); - }, []); - - return ( - -
- PAT_permissions - - {imageLoaded.value && - expandedStyles.map((style, index) => ( - - ))} - - {!imageLoaded.value && ( - - Loading... - - )} -
- - Scroll to see all required permissions - -
- ); -}; From 42b975bd24c8435d7d241a34eb6ecfe72a41635d Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Mon, 22 Jul 2024 18:12:41 +0530 Subject: [PATCH 06/43] adds methods for linking and unlinking Gitlab --- .../src/content/Dashboards/useIntegrationHandlers.tsx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/web-server/src/content/Dashboards/useIntegrationHandlers.tsx b/web-server/src/content/Dashboards/useIntegrationHandlers.tsx index edf64213..0ded2063 100644 --- a/web-server/src/content/Dashboards/useIntegrationHandlers.tsx +++ b/web-server/src/content/Dashboards/useIntegrationHandlers.tsx @@ -1,6 +1,7 @@ import { useMemo } from 'react'; import { Integration } from '@/constants/integrations'; +import { ConfigureGitlabModalBody } from '@/content/Dashboards/ConfigureGitlabModalBody'; import { useModal } from '@/contexts/ModalContext'; import { useAuth } from '@/hooks/useAuth'; import { unlinkProvider } from '@/utils/auth'; @@ -20,10 +21,17 @@ export const useIntegrationHandlers = () => { title: 'Configure Github', body: , showCloseIcon: true + }), + gitlab: () => + addModal({ + title: 'Configure Gitlab', + body: , + showCloseIcon: true }) }, unlink: { - github: () => unlinkProvider(orgId, Integration.GITHUB) + github: () => unlinkProvider(orgId, Integration.GITHUB), + gitlab: () => unlinkProvider(orgId, Integration.GITLAB) } }; From e594541909a3e6a0c88c174311f9de38f6008903 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Mon, 22 Jul 2024 18:13:08 +0530 Subject: [PATCH 07/43] creates integration card and integration modal for the gitlab PAT --- .../Dashboards/ConfigureGitlabModalBody.tsx | 272 ++++++++++++++++++ .../Dashboards/GitlabIntegrationCard.tsx | 238 +++++++++++++++ 2 files changed, 510 insertions(+) create mode 100644 web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx create mode 100644 web-server/src/content/Dashboards/GitlabIntegrationCard.tsx diff --git a/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx b/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx new file mode 100644 index 00000000..f900b0b8 --- /dev/null +++ b/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx @@ -0,0 +1,272 @@ +import { LoadingButton } from '@mui/lab'; +import { Divider, Link, TextField, alpha } from '@mui/material'; +import Image from 'next/image'; +import { useSnackbar } from 'notistack'; +import { FC, useCallback, useMemo } from 'react'; + +import { FlexBox } from '@/components/FlexBox'; +import { Line } from '@/components/Text'; +import { Integration } from '@/constants/integrations'; +import { useAuth } from '@/hooks/useAuth'; +import { useBoolState, useEasyState } from '@/hooks/useEasyState'; +import { fetchCurrentOrg } from '@/slices/auth'; +import { fetchTeams } from '@/slices/team'; +import { useDispatch } from '@/store'; +import { + linkProvider, + checkGitLabValidity, + getMissingGitLabScopes +} from '@/utils/auth'; +import { depFn } from '@/utils/fn'; + +export const ConfigureGitlabModalBody: FC<{ + onClose: () => void; +}> = ({ onClose }) => { + const token = useEasyState(''); + const { orgId } = useAuth(); + const { enqueueSnackbar } = useSnackbar(); + const dispatch = useDispatch(); + const isLoading = useBoolState(); + + const showError = useEasyState(''); + + const setError = useCallback( + (error: string) => { + console.error(error); + depFn(showError.set, error); + }, + [showError.set] + ); + + const handleChange = (e: string) => { + token.set(e); + showError.set(''); + }; + + const handleSubmission = useCallback(async () => { + if (!token.value) { + setError('Please enter a valid token'); + return; + } + depFn(isLoading.true); + await checkGitLabValidity(token.value) + .then(async (res) => { + return res; + }) + .then(async (response) => { + const res = getMissingGitLabScopes(response.scopes); + if (res.length) { + throw new Error(`Token is missing scopes: ${res.join(', ')}`); + } + }) + .then(async () => { + try { + return await linkProvider(token.value, orgId, Integration.GITLAB, { + custom_domain: 'https://gitlab.middlewarehq.com' + }); + } catch (e: any) { + throw new Error( + `Failed to link Gitlab${e?.message ? `: ${e?.message}` : ''}`, + e + ); + } + }) + .then(() => { + dispatch(fetchCurrentOrg()); + dispatch( + fetchTeams({ + org_id: orgId, + provider: Integration.GITLAB + }) + ); + enqueueSnackbar('Gitlab linked successfully', { + variant: 'success', + autoHideDuration: 2000 + }); + onClose(); + }) + .catch((e) => { + setError(e.message); + console.error(`Error while linking token: ${e.message}`, e); + }) + .finally(isLoading.false); + }, [ + dispatch, + enqueueSnackbar, + isLoading.false, + isLoading.true, + onClose, + orgId, + setError, + token.value + ]); + + return ( + + + Enter you Gitlab token below. + + { + if (e.key === 'Enter') { + e.preventDefault(); + e.stopPropagation(); + e.nativeEvent.stopImmediatePropagation(); + handleSubmission(); + return; + } + }} + error={!!showError.value} + sx={{ width: '100%' }} + value={token.value} + onChange={(e) => { + handleChange(e.currentTarget.value); + }} + label="Gitlab Personal Access Token" + type="password" + /> + + {showError.value} + + + + + + Generate new classic token + + + {' ->'} + + + + + + + Learn more about Gitlab + + Personal Access Token (PAT) + + here + + + + + + Confirm + + + + + + + + ); +}; + +const TokenPermissions = () => { + const imageLoaded = useBoolState(false); + + const expandedStyles = useMemo(() => { + const baseStyles = { + border: `2px solid ${alpha('rgb(256,0,0)', 0.4)}`, + transition: 'all 0.8s ease', + borderRadius: '12px', + opacity: 1, + width: '240px', + position: 'absolute', + maxWidth: 'calc(100% - 48px)', + left: '24px' + }; + + return [ + { + height: '170px', + top: '58px' + }, + { + height: '42px', + top: '230px' + }, + { + height: '120px', + + top: '378px' + }, + { + height: '120px', + + top: '806px' + } + ].map((item) => ({ ...item, ...baseStyles })); + }, []); + + return ( + +
+ PAT_permissions + + {imageLoaded.value && + expandedStyles.map((style, index) => ( + + ))} + + {!imageLoaded.value && ( + + Loading... + + )} +
+ + Scroll to see all required permissions + +
+ ); +}; diff --git a/web-server/src/content/Dashboards/GitlabIntegrationCard.tsx b/web-server/src/content/Dashboards/GitlabIntegrationCard.tsx new file mode 100644 index 00000000..4d40793a --- /dev/null +++ b/web-server/src/content/Dashboards/GitlabIntegrationCard.tsx @@ -0,0 +1,238 @@ +import { ArrowForwardIosRounded, SettingsRounded } from '@mui/icons-material'; +import { Button, useTheme } from '@mui/material'; +import CircularProgress from '@mui/material/CircularProgress'; +import { useSnackbar } from 'notistack'; +import { FC, ReactNode, useEffect } from 'react'; + +import { FlexBox } from '@/components/FlexBox'; +import { Line } from '@/components/Text'; +import { track } from '@/constants/events'; +import { FetchState } from '@/constants/ui-states'; +import { gitLabIntegrationDisplay } from '@/content/Dashboards/githubIntegration'; +import { useIntegrationHandlers } from '@/content/Dashboards/useIntegrationHandlers'; +import { useAuth } from '@/hooks/useAuth'; +import { useBoolState } from '@/hooks/useEasyState'; +import { fetchCurrentOrg } from '@/slices/auth'; +import { useDispatch, useSelector } from '@/store'; + +const cardRadius = 10.5; +const cardBorder = 1.5; +const getRadiusWithPadding = (radius: number, padding: number) => + `${radius + padding}px`; + +export const GitlabIntegrationCard = () => { + const theme = useTheme(); + const { integrations } = useAuth(); + const isGitlabIntegrated = integrations.gitlab; + const sliceLoading = useSelector( + (s) => s.auth.requests.org === FetchState.REQUEST + ); + const { link, unlink } = useIntegrationHandlers(); + + const localLoading = useBoolState(false); + + const isLoading = sliceLoading || localLoading.value; + + const dispatch = useDispatch(); + + const { enqueueSnackbar } = useSnackbar(); + + return ( + + {isGitlabIntegrated && ( + + + + )} + + + + + + {gitLabIntegrationDisplay.icon} + + + {gitLabIntegrationDisplay.name} + + + + { + track( + isGitlabIntegrated + ? 'INTEGRATION_UNLINK_TRIGGERED' + : 'INTEGRATION_LINK_TRIGGERED', + { integration_name: gitLabIntegrationDisplay.name } + ); + if (!isGitlabIntegrated) { + link.gitlab(); + return; + } + const shouldExecute = window.confirm( + 'Are you sure you want to unlink?' + ); + if (shouldExecute) { + localLoading.true(); + await unlink + .gitlab() + .then(() => { + enqueueSnackbar('Gitlab unlinked successfully', { + variant: 'success' + }); + }) + .then(async () => dispatch(fetchCurrentOrg())) + .catch((e) => { + console.error('Failed to unlink Gitlab', e); + enqueueSnackbar('Failed to unlink Gitlab', { + variant: 'error' + }); + }) + .finally(localLoading.false); + } + }} + label={!isGitlabIntegrated ? 'Link' : 'Unlink'} + bgOpacity={!isGitlabIntegrated ? 0.45 : 0.25} + endIcon={ + isLoading && ( + + ) + } + minWidth="72px" + /> + + + + + ); +}; + +const IntegrationActionsButton: FC<{ + onClick: AnyFunction; + label: ReactNode; + bgOpacity?: number; + startIcon?: ReactNode; + endIcon?: ReactNode; + minWidth?: string; +}> = ({ + label, + onClick, + bgOpacity = 0.45, + endIcon = ( + + ), + startIcon = , + minWidth = '80px' +}) => { + const theme = useTheme(); + + return ( + + ); +}; + +const LinkedIcon = () => { + const isVisible = useBoolState(false); + useEffect(() => { + setTimeout(isVisible.true, 200); + }, [isVisible.true]); + return ( + + + + + + + + + + + ); +}; From d2579e50354449e5b7493701fa14413e79df8df1 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Mon, 22 Jul 2024 18:13:23 +0530 Subject: [PATCH 08/43] renders the integration card for gitlab --- web-server/pages/integrations.tsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/web-server/pages/integrations.tsx b/web-server/pages/integrations.tsx index cedbcac2..d227273e 100644 --- a/web-server/pages/integrations.tsx +++ b/web-server/pages/integrations.tsx @@ -11,6 +11,7 @@ import { Integration } from '@/constants/integrations'; import { ROUTES } from '@/constants/routes'; import { FetchState } from '@/constants/ui-states'; import { GithubIntegrationCard } from '@/content/Dashboards/GithubIntegrationCard'; +import { GitlabIntegrationCard } from '@/content/Dashboards/GitlabIntegrationCard'; import { PageWrapper } from '@/content/PullRequests/PageWrapper'; import { useAuth } from '@/hooks/useAuth'; import { useBoolState, useEasyState } from '@/hooks/useEasyState'; @@ -188,6 +189,7 @@ const Content = () => { + {showCreationCTA && ( From 3b627f74147bd1dad7326a27e2424c40075dc10a Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Tue, 23 Jul 2024 13:49:20 +0530 Subject: [PATCH 09/43] adds input, error handling and submission for custom-domain --- .../Dashboards/ConfigureGitlabModalBody.tsx | 111 +++++++++++++++--- 1 file changed, 95 insertions(+), 16 deletions(-) diff --git a/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx b/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx index f900b0b8..b2279a9e 100644 --- a/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx +++ b/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx @@ -23,31 +23,61 @@ export const ConfigureGitlabModalBody: FC<{ onClose: () => void; }> = ({ onClose }) => { const token = useEasyState(''); + const customDomain = useEasyState(''); const { orgId } = useAuth(); const { enqueueSnackbar } = useSnackbar(); const dispatch = useDispatch(); const isLoading = useBoolState(); - const showError = useEasyState(''); + const showScopeError = useEasyState(''); + const showDomainError = useEasyState(''); - const setError = useCallback( + const setScopeError = useCallback( (error: string) => { - console.error(error); - depFn(showError.set, error); + depFn(showScopeError.set, error); }, - [showError.set] + [showScopeError.set] ); - const handleChange = (e: string) => { + const setDomainError = useCallback( + (error: string) => { + depFn(showDomainError.set, error); + }, + [showDomainError.set] + ); + + const checkDomainWithRegex = (domain: string) => { + const regex = + /^(https:\/\/)?[a-zA-Z0-9]+([-.][a-zA-Z0-9]+)*\.[a-zA-Z]{2,}(:[0-9]{1,5})?(\/.*)?$/; + return regex.test(domain); + }; + + const handleTokenChange = (e: string) => { token.set(e); - showError.set(''); + showScopeError.set(''); + }; + + const handleDomainChange = (e: string) => { + customDomain.set(e); + showDomainError.set(''); }; const handleSubmission = useCallback(async () => { - if (!token.value) { - setError('Please enter a valid token'); + try { + if (!token.value) { + setScopeError('Please enter a valid token'); + throw Error('Empty token'); + } + + if (customDomain.value && !checkDomainWithRegex(customDomain.value)) { + setDomainError('Please enter a valid domain'); + throw Error('Invalid domain'); + } + } catch (e) { + console.error(e); return; } + depFn(isLoading.true); await checkGitLabValidity(token.value) .then(async (res) => { @@ -86,25 +116,40 @@ export const ConfigureGitlabModalBody: FC<{ onClose(); }) .catch((e) => { - setError(e.message); + setScopeError(e.message); console.error(`Error while linking token: ${e.message}`, e); }) .finally(isLoading.false); }, [ + customDomain.value, dispatch, enqueueSnackbar, isLoading.false, isLoading.true, onClose, orgId, - setError, + setDomainError, + setScopeError, token.value ]); + const isDomainInputFocus = useBoolState(false); + + const focusDomainInput = useCallback(() => { + if (!customDomain.value) + document.getElementById('gitlab-custom-domain')?.focus(); + else handleSubmission(); + }, [customDomain.value, handleSubmission]); + return ( - Enter you Gitlab token below. + + Enter your Gitlab token below{' '} + + * + + { @@ -112,21 +157,55 @@ export const ConfigureGitlabModalBody: FC<{ e.preventDefault(); e.stopPropagation(); e.nativeEvent.stopImmediatePropagation(); - handleSubmission(); + focusDomainInput(); return; } }} - error={!!showError.value} + error={!!showScopeError.value} sx={{ width: '100%' }} value={token.value} onChange={(e) => { - handleChange(e.currentTarget.value); + handleTokenChange(e.currentTarget.value); }} label="Gitlab Personal Access Token" type="password" /> - {showError.value} + {showScopeError.value} + + + + + + + Custom domain + + { + if (e.key === 'Enter') { + e.preventDefault(); + e.stopPropagation(); + e.nativeEvent.stopImmediatePropagation(); + handleSubmission(); + return; + } + }} + error={!!showDomainError.value} + sx={{ width: '100%' }} + value={customDomain.value} + onChange={(e) => handleDomainChange(e.currentTarget.value)} + label={ + isDomainInputFocus.value || customDomain.value + ? 'Custom Domain' + : '(Optional)' + } + onFocus={isDomainInputFocus.true} + onBlur={isDomainInputFocus.false} + /> + + + {showDomainError.value} From 75d5fcd66f71173af0e8792a8a378477081d486a Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Tue, 23 Jul 2024 13:49:44 +0530 Subject: [PATCH 10/43] removes hardcode custom-domain --- web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx b/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx index b2279a9e..e1fb8310 100644 --- a/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx +++ b/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx @@ -92,7 +92,7 @@ export const ConfigureGitlabModalBody: FC<{ .then(async () => { try { return await linkProvider(token.value, orgId, Integration.GITLAB, { - custom_domain: 'https://gitlab.middlewarehq.com' + custom_domain: customDomain.value }); } catch (e: any) { throw new Error( From 82b8d7fa0a3f8357596c1717b1d2cf4e42b71524 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Tue, 23 Jul 2024 14:19:03 +0530 Subject: [PATCH 11/43] updates image and highlighters for Gitlab PAT permissions --- web-server/public/assets/gitlabPAT.png | Bin 0 -> 383198 bytes .../Dashboards/ConfigureGitlabModalBody.tsx | 34 ++++++++---------- 2 files changed, 14 insertions(+), 20 deletions(-) create mode 100644 web-server/public/assets/gitlabPAT.png diff --git a/web-server/public/assets/gitlabPAT.png b/web-server/public/assets/gitlabPAT.png new file mode 100644 index 0000000000000000000000000000000000000000..1f1cc078816ff4c8f903cd758b6ed6e24d408f51 GIT binary patch literal 383198 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

a`(RsR2^Ss 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�E_7(61 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 aHqWwMotrKS&+VK8{uJfZo)tbZ5BxtKs { const expandedStyles = useMemo(() => { const baseStyles = { - border: `2px solid ${alpha('rgb(256,0,0)', 0.4)}`, + border: `2px solid ${alpha('rgb(256,0,0)', 0.6)}`, transition: 'all 0.8s ease', - borderRadius: '12px', + borderRadius: '8px', opacity: 1, - width: '240px', + width: '126px', position: 'absolute', maxWidth: 'calc(100% - 48px)', - left: '24px' + left: '12px' }; return [ { - height: '170px', - top: '58px' + height: '32px', + top: '298px' }, { - height: '42px', - top: '230px' + height: '32px', + top: '360px' }, { - height: '120px', - - top: '378px' - }, - { - height: '120px', - - top: '806px' + height: '32px', + top: '425px' } ].map((item) => ({ ...item, ...baseStyles })); }, []); @@ -304,12 +298,12 @@ const TokenPermissions = () => { overflow: 'hidden', borderRadius: '12px', height: 'calc(100vh - 300px)', - maxHeight: '1257px', + maxHeight: '976px', overflowY: 'auto', transition: 'all 0.8s ease', position: 'relative', maxWidth: '100%', - background: '#0D1017' + background: '#FEFEFE' }} > { transition: 'all 0.8s ease', opacity: !imageLoaded.value ? 0 : 1 }} - src="/assets/PAT_permissions.png" + src="/assets/gitlabPAT.png" width={816} - height={1257} + height={976} alt="PAT_permissions" /> From a53146d1335081debab9cf58d49db3750ccf63cc Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Wed, 4 Sep 2024 16:01:52 +0530 Subject: [PATCH 12/43] fixes color --- .../src/content/Dashboards/ConfigureGitlabModalBody.tsx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx b/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx index c35488f1..c2f3b83b 100644 --- a/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx +++ b/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx @@ -303,7 +303,7 @@ const TokenPermissions = () => { transition: 'all 0.8s ease', position: 'relative', maxWidth: '100%', - background: '#FEFEFE' + background: '#000000' }} > { style={{ position: 'relative', transition: 'all 0.8s ease', - opacity: !imageLoaded.value ? 0 : 1 + opacity: !imageLoaded.value ? 0 : 1, + filter: 'invert(1)' }} src="/assets/gitlabPAT.png" width={816} From abdd39389a056dc11c20f2bbb414243ce219f5aa Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Tue, 23 Jul 2024 15:32:51 +0530 Subject: [PATCH 13/43] implements gitlab's search API to get projects --- .../api/internal/[org_id]/git_provider_org.ts | 38 +++++- .../pages/api/internal/[org_id]/utils.ts | 119 ++++++++++++++++++ 2 files changed, 153 insertions(+), 4 deletions(-) diff --git a/web-server/pages/api/internal/[org_id]/git_provider_org.ts b/web-server/pages/api/internal/[org_id]/git_provider_org.ts index 928f85f0..14259a2b 100644 --- a/web-server/pages/api/internal/[org_id]/git_provider_org.ts +++ b/web-server/pages/api/internal/[org_id]/git_provider_org.ts @@ -1,8 +1,12 @@ import * as yup from 'yup'; -import { searchGithubRepos } from '@/api/internal/[org_id]/utils'; +import { + searchGithubRepos, + searchGitlabRepos +} from '@/api/internal/[org_id]/utils'; import { Endpoint } from '@/api-helpers/global'; import { Integration } from '@/constants/integrations'; +import { BaseRepo } from '@/types/resources'; import { dec } from '@/utils/auth-supplementary'; import { db, getFirstRow } from '@/utils/db'; @@ -25,10 +29,21 @@ const endpoint = new Endpoint(pathSchema); endpoint.handle.GET(getSchema, async (req, res) => { const { org_id, search_text } = req.payload; - const token = await getGithubToken(org_id); - const repos = await searchGithubRepos(token, search_text); + const [ghToken, glToken] = await Promise.all([ + getGithubToken(org_id), + getGitlabToken(org_id) + ]); - return res.status(200).send(repos); + const [ghRepos, glRepos] = await Promise.all([ + searchGithubRepos(ghToken, search_text).then((res) => + addProvider(res, Integration.GITHUB) + ), + searchGitlabRepos(glToken, search_text).then((res) => + addProvider(res, Integration.GITLAB) + ) + ]); + + return res.status(200).send([...ghRepos, ...glRepos]); }); export default endpoint.serve(); @@ -44,3 +59,18 @@ const getGithubToken = async (org_id: ID) => { .then(getFirstRow) .then((r) => dec(r.access_token_enc_chunks)); }; + +const getGitlabToken = async (org_id: ID) => { + return await db('Integration') + .select() + .where({ + org_id, + name: Integration.GITLAB + }) + .returning('*') + .then(getFirstRow) + .then((r) => dec(r.access_token_enc_chunks)); +}; + +const addProvider = (repo: BaseRepo[], provider: Integration) => + repo.map((r) => ({ ...r, provider })); diff --git a/web-server/pages/api/internal/[org_id]/utils.ts b/web-server/pages/api/internal/[org_id]/utils.ts index 97a9a043..23b65310 100644 --- a/web-server/pages/api/internal/[org_id]/utils.ts +++ b/web-server/pages/api/internal/[org_id]/utils.ts @@ -1,3 +1,5 @@ +import fetch from 'node-fetch'; + import { BaseRepo } from '@/types/resources'; const GITHUB_API_URL = 'https://api.github.com/graphql'; @@ -93,3 +95,120 @@ export const searchGithubRepos = async ( }) as BaseRepo ); }; + +// Gitlab functions + +// Define types for the response + +interface RepoNode { + id: string; + name: string; + webUrl: string; + description: string | null; + path: string; + group: { + fullName: string; + }; + namespace: { + fullName: string; + }; + nameWithNamespace: string; + languages: { + nodes: { + name: string; + }[]; + }; + repository: { + rootRef: string; + }; +} + +interface RepoResponse { + data: { + projects: { + nodes: RepoNode[]; + }; + }; + errors?: { message: string }[]; +} + +const GITLAB_API_URL = 'https://gitlab.com/api/graphql'; + +export const searchGitlabRepos = async ( + pat: string, + searchString: string +): Promise => { + const query = ` + query($searchString: String!) { + projects(search: $searchString, first: 50) { + nodes { + id + group { + fullName + } + namespace { + fullName + } + name + nameWithNamespace + webUrl + description + path + languages { + name + } + repository { + rootRef + } + } + } + } +`; + + const response = await fetch(GITLAB_API_URL, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + Authorization: `Bearer ${pat}` + }, + body: JSON.stringify({ query, variables: { searchString } }) + }); + + const responseBody = (await response.json()) as RepoResponse; + + if (responseBody.errors) { + throw new Error( + `GitLab API error: ${responseBody.errors + .map((e) => e.message) + .join(', ')}` + ); + } + + const repositories = responseBody.data.projects.nodes; + + return repositories.map( + (repo) => + ({ + id: repo.id, + name: repo.name, + desc: repo.description, + slug: repo.path, + web_url: repo.webUrl, + branch: repo.repository?.rootRef || null, + // TODO: fix this + parent: repo.nameWithNamespace.split(' / ')[0] + }) as BaseRepo + ); +}; + +// Usage example +const accessToken = ''; +const searchQuery = 'example'; + +searchGitlabRepos(accessToken, searchQuery) + .then((data) => { + console.log('GitLab Repositories:', data); + }) + .catch((error) => { + console.error('Error:', error); + }); From 16399a5beac0ce292eea2bf2ebf82cfd9ba3a134 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Tue, 23 Jul 2024 15:35:45 +0530 Subject: [PATCH 14/43] removes redundant example code --- web-server/pages/api/internal/[org_id]/utils.ts | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/web-server/pages/api/internal/[org_id]/utils.ts b/web-server/pages/api/internal/[org_id]/utils.ts index 23b65310..cf4ad952 100644 --- a/web-server/pages/api/internal/[org_id]/utils.ts +++ b/web-server/pages/api/internal/[org_id]/utils.ts @@ -200,15 +200,3 @@ export const searchGitlabRepos = async ( }) as BaseRepo ); }; - -// Usage example -const accessToken = ''; -const searchQuery = 'example'; - -searchGitlabRepos(accessToken, searchQuery) - .then((data) => { - console.log('GitLab Repositories:', data); - }) - .catch((error) => { - console.error('Error:', error); - }); From 868fdf289c01bd08052eaf0c521fa35d8a834e14 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Thu, 25 Jul 2024 15:50:44 +0530 Subject: [PATCH 15/43] updates BaseRepo type --- web-server/src/types/resources.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/web-server/src/types/resources.ts b/web-server/src/types/resources.ts index 9987f7ea..576234ab 100644 --- a/web-server/src/types/resources.ts +++ b/web-server/src/types/resources.ts @@ -250,6 +250,7 @@ export type BaseRepo = { branch: string; deployment_type: DeploymentSources; repo_workflows: AdaptedRepoWorkflow[]; + provider?: Integration; }; export enum NotificationType { From 398533db536d022c2ba09687c3994c6646fe0699 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Thu, 25 Jul 2024 16:00:35 +0530 Subject: [PATCH 16/43] adds distinguishing icons to repos, and disables deploy selector for gitlab repos --- .../src/components/Teams/CreateTeams.tsx | 133 +++++++++++++----- 1 file changed, 96 insertions(+), 37 deletions(-) diff --git a/web-server/src/components/Teams/CreateTeams.tsx b/web-server/src/components/Teams/CreateTeams.tsx index def046b8..22801ed3 100644 --- a/web-server/src/components/Teams/CreateTeams.tsx +++ b/web-server/src/components/Teams/CreateTeams.tsx @@ -1,4 +1,4 @@ -import { Close } from '@mui/icons-material'; +import { Close, GitHub } from '@mui/icons-material'; import DeleteIcon from '@mui/icons-material/Delete'; import InfoIcon from '@mui/icons-material/Info'; import { @@ -14,7 +14,6 @@ import { TableHead, TableRow, TextField, - Tooltip, TableContainer, useTheme, InputLabel, @@ -22,14 +21,16 @@ import { OutlinedInput } from '@mui/material'; import { useSnackbar } from 'notistack'; -import { FC } from 'react'; +import { FC, useCallback } from 'react'; import { useTeamCRUD, TeamsCRUDProvider } from '@/components/Teams/useTeamsConfig'; import { DeploymentWorkflowSelector } from '@/components/WorkflowSelector'; +import { Integration } from '@/constants/integrations'; import { useBoolState, useEasyState } from '@/hooks/useEasyState'; +import GitlabIcon from '@/mocks/icons/gitlab.svg'; import { BaseRepo, DeploymentSources } from '@/types/resources'; import AnimatedInputWrapper from '../AnimatedInputWrapper/AnimatedInputWrapper'; @@ -43,6 +44,7 @@ export type CRUDProps = { }; const MAX_LENGTH_REPO_NAME = 25; +const MAX_LENGTH_PARENT_NAME = 25; export const CreateEditTeams: FC = ({ onSave, @@ -165,6 +167,30 @@ const TeamRepos: FC = () => { const searchQuery = useEasyState(''); const searchFocus = useBoolState(false); + const checkOverflow = useCallback( + (option: BaseRepo) => + option.name?.length > MAX_LENGTH_REPO_NAME || + option.parent?.length > MAX_LENGTH_PARENT_NAME, + [] + ); + + const addEllipsis = (text: string, maxLength: number) => + text.length > maxLength ? `${text.substring(0, maxLength)}...` : text; + + const OverFlowTooltip = ({ + parent, + name + }: { + parent: string; + name: string; + }) => { + return ( + + {parent} / {name} + + ); + }; + return ( @@ -240,18 +266,30 @@ const TeamRepos: FC = () => { overflow: 'hidden' }} > - - {option.parent && {option.parent}} - {option.name.length > MAX_LENGTH_REPO_NAME ? ( - - {`${option.name.substring( - 0, - MAX_LENGTH_REPO_NAME - )}...`} - - ) : ( - {option.name} - )} + + ) : undefined + } + > + + {option.provider === Integration.GITHUB ? ( + + ) : ( + + )} + + {addEllipsis(option.parent, MAX_LENGTH_PARENT_NAME)} + + + {addEllipsis(option.name, MAX_LENGTH_REPO_NAME)} {selected ? : null} @@ -351,7 +389,16 @@ const DisplayRepos: FC = () => { {selectedRepos.map((repo) => ( - {repo.name} + + + {repo.provider === Integration.GITHUB ? ( + + ) : ( + + )} + {repo.name} + + {' '} @@ -414,29 +461,41 @@ const DeploymentSourceSelector: FC<{ repo: BaseRepo }> = ({ repo }) => { const { updateDeploymentTypeForRepo } = useTeamCRUD(); return ( - Source - {}} + size="small" + input={} + > + {options.map((source) => { + return ( + { + updateDeploymentTypeForRepo(repo.id, source.value); - open.false(); - }} - > - {source.label} - - ); - })} - + open.false(); + }} + > + {source.label} + + ); + })} + + ); }; From db4a80dec4da9d79dc3ebcb948803cf41bf32bb5 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Thu, 25 Jul 2024 18:09:43 +0530 Subject: [PATCH 17/43] handles long names in deployment-selector table --- .../src/components/Teams/CreateTeams.tsx | 80 ++++++++++--------- 1 file changed, 44 insertions(+), 36 deletions(-) diff --git a/web-server/src/components/Teams/CreateTeams.tsx b/web-server/src/components/Teams/CreateTeams.tsx index 22801ed3..cde3f8d8 100644 --- a/web-server/src/components/Teams/CreateTeams.tsx +++ b/web-server/src/components/Teams/CreateTeams.tsx @@ -32,6 +32,7 @@ import { Integration } from '@/constants/integrations'; import { useBoolState, useEasyState } from '@/hooks/useEasyState'; import GitlabIcon from '@/mocks/icons/gitlab.svg'; import { BaseRepo, DeploymentSources } from '@/types/resources'; +import { trimWithEllipsis } from '@/utils/stringFormatting'; import AnimatedInputWrapper from '../AnimatedInputWrapper/AnimatedInputWrapper'; import { FlexBox } from '../FlexBox'; @@ -387,42 +388,49 @@ const DisplayRepos: FC = () => { - {selectedRepos.map((repo) => ( - - - - {repo.provider === Integration.GITHUB ? ( - - ) : ( - - )} - {repo.name} - - - - - {' '} - {repo.deployment_type === DeploymentSources.WORKFLOW && ( - - )} - - - - { - unselectRepo(repo.id); - }} - > - - - - - ))} + {selectedRepos.map((repo) => { + const shortenedName = trimWithEllipsis(repo.name, 40); + return ( + + + + {repo.provider === Integration.GITHUB ? ( + + ) : ( + + )} + {shortenedName} + + + + + {' '} + {repo.deployment_type === DeploymentSources.WORKFLOW && ( + + )} + + + + { + unselectRepo(repo.id); + }} + > + + + + + ); + })} {showWorkflowChangeWarning && ( From 4f67734690ae7d0aed9868226c782e259420423a Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Thu, 25 Jul 2024 18:10:09 +0530 Subject: [PATCH 18/43] removes redundant query data and fixes parent/id fields --- .../pages/api/internal/[org_id]/utils.ts | 20 ++++--------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/web-server/pages/api/internal/[org_id]/utils.ts b/web-server/pages/api/internal/[org_id]/utils.ts index cf4ad952..40d982eb 100644 --- a/web-server/pages/api/internal/[org_id]/utils.ts +++ b/web-server/pages/api/internal/[org_id]/utils.ts @@ -106,12 +106,7 @@ interface RepoNode { webUrl: string; description: string | null; path: string; - group: { - fullName: string; - }; - namespace: { - fullName: string; - }; + fullPath: string; nameWithNamespace: string; languages: { nodes: { @@ -143,14 +138,8 @@ export const searchGitlabRepos = async ( projects(search: $searchString, first: 50) { nodes { id - group { - fullName - } - namespace { - fullName - } + fullPath name - nameWithNamespace webUrl description path @@ -189,14 +178,13 @@ export const searchGitlabRepos = async ( return repositories.map( (repo) => ({ - id: repo.id, + id: Number(repo.id.replace('gid://gitlab/Project/', '')), name: repo.name, desc: repo.description, slug: repo.path, web_url: repo.webUrl, branch: repo.repository?.rootRef || null, - // TODO: fix this - parent: repo.nameWithNamespace.split(' / ')[0] + parent: repo.fullPath.replace('https://gitlab.com/', '').split('/')[0] }) as BaseRepo ); }; From a5cff5c56f88caf053dc71c6414c0b54cf2c9c9b Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Thu, 25 Jul 2024 18:44:00 +0530 Subject: [PATCH 19/43] ui-fixes --- web-server/src/components/Teams/CreateTeams.tsx | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/web-server/src/components/Teams/CreateTeams.tsx b/web-server/src/components/Teams/CreateTeams.tsx index cde3f8d8..a9918f6d 100644 --- a/web-server/src/components/Teams/CreateTeams.tsx +++ b/web-server/src/components/Teams/CreateTeams.tsx @@ -382,9 +382,7 @@ const DisplayRepos: FC = () => { Repo Deployed Via - - Action - + Action @@ -416,16 +414,17 @@ const DisplayRepos: FC = () => { { unselectRepo(repo.id); }} > - + @@ -473,7 +472,7 @@ const DeploymentSourceSelector: FC<{ repo: BaseRepo }> = ({ repo }) => { col title={ repo.provider === Integration.GITLAB ? ( - Gitlab repos only support PR merge deployments + Gitlab repos only support PR merge deployments for now ) : ( '' ) From 7e1977ab1b6f5c91443591a705d149d7d092529b Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Fri, 26 Jul 2024 10:49:06 +0530 Subject: [PATCH 20/43] adds searching support within gitlab-groups --- .../api/internal/[org_id]/git_provider_org.ts | 48 +++++++------ .../pages/api/internal/[org_id]/utils.ts | 67 ++++++++++++++++++- 2 files changed, 91 insertions(+), 24 deletions(-) diff --git a/web-server/pages/api/internal/[org_id]/git_provider_org.ts b/web-server/pages/api/internal/[org_id]/git_provider_org.ts index 14259a2b..5e47e088 100644 --- a/web-server/pages/api/internal/[org_id]/git_provider_org.ts +++ b/web-server/pages/api/internal/[org_id]/git_provider_org.ts @@ -1,12 +1,8 @@ import * as yup from 'yup'; -import { - searchGithubRepos, - searchGitlabRepos -} from '@/api/internal/[org_id]/utils'; +import { gitlabSearch, searchGithubRepos } from '@/api/internal/[org_id]/utils'; import { Endpoint } from '@/api-helpers/global'; import { Integration } from '@/constants/integrations'; -import { BaseRepo } from '@/types/resources'; import { dec } from '@/utils/auth-supplementary'; import { db, getFirstRow } from '@/utils/db'; @@ -20,30 +16,28 @@ const pathSchema = yup.object().shape({ }); const getSchema = yup.object().shape({ - provider: yup.string().oneOf(Object.values(Integration)), + providers: yup.array(yup.string().oneOf(Object.values(Integration))), search_text: yup.string().nullable().optional() }); const endpoint = new Endpoint(pathSchema); endpoint.handle.GET(getSchema, async (req, res) => { - const { org_id, search_text } = req.payload; + const { org_id, search_text, providers } = req.payload; - const [ghToken, glToken] = await Promise.all([ - getGithubToken(org_id), - getGitlabToken(org_id) - ]); + const tokens = await Promise.all( + fetchMap + .filter((item) => providers.includes(item.provider)) + .map((item) => item.getToken(org_id)) + ); - const [ghRepos, glRepos] = await Promise.all([ - searchGithubRepos(ghToken, search_text).then((res) => - addProvider(res, Integration.GITHUB) - ), - searchGitlabRepos(glToken, search_text).then((res) => - addProvider(res, Integration.GITLAB) - ) - ]); + const repos = await Promise.all( + fetchMap + .filter((item) => providers.includes(item.provider)) + .map((item) => item.search(tokens.shift(), search_text)) + ); - return res.status(200).send([...ghRepos, ...glRepos]); + return res.status(200).send(repos.flat()); }); export default endpoint.serve(); @@ -72,5 +66,15 @@ const getGitlabToken = async (org_id: ID) => { .then((r) => dec(r.access_token_enc_chunks)); }; -const addProvider = (repo: BaseRepo[], provider: Integration) => - repo.map((r) => ({ ...r, provider })); +const fetchMap = [ + { + provider: Integration.GITHUB, + search: searchGithubRepos, + getToken: getGithubToken + }, + { + provider: Integration.GITLAB, + search: gitlabSearch, + getToken: getGitlabToken + } +]; diff --git a/web-server/pages/api/internal/[org_id]/utils.ts b/web-server/pages/api/internal/[org_id]/utils.ts index 40d982eb..ea9bc1d3 100644 --- a/web-server/pages/api/internal/[org_id]/utils.ts +++ b/web-server/pages/api/internal/[org_id]/utils.ts @@ -1,5 +1,6 @@ import fetch from 'node-fetch'; +import { Integration } from '@/constants/integrations'; import { BaseRepo } from '@/types/resources'; const GITHUB_API_URL = 'https://api.github.com/graphql'; @@ -91,7 +92,8 @@ export const searchGithubRepos = async ( parent: repo.owner.login, web_url: repo.url, language: repo.primaryLanguage?.name, - branch: repo.defaultBranchRef?.name + branch: repo.defaultBranchRef?.name, + provider: Integration.GITHUB }) as BaseRepo ); }; @@ -141,6 +143,9 @@ export const searchGitlabRepos = async ( fullPath name webUrl + group { + path + } description path languages { @@ -184,7 +189,65 @@ export const searchGitlabRepos = async ( slug: repo.path, web_url: repo.webUrl, branch: repo.repository?.rootRef || null, - parent: repo.fullPath.replace('https://gitlab.com/', '').split('/')[0] + parent: repo.fullPath.replace('https://gitlab.com/', '').split('/')[0], + provider: Integration.GITLAB + }) as BaseRepo + ); +}; + +// another approach: +interface Project { + id: number; + name: string; + description: string; + web_url: string; + [key: string]: any; +} + +export async function searchProjects( + group: string, + searchString: string, + token: string +): Promise { + const response = await fetch( + `https://gitlab.com/api/v4/groups/${group}/projects?search=${encodeURIComponent( + searchString + )}`, + { + headers: { + Authorization: `Bearer ${token}` + } + } + ); + + if (!response.ok) { + throw new Error( + `Error fetching projects for group ${group}: ${response.statusText}` + ); + } + + const projects = (await response.json()) as Project[]; + return projects.map( + (repo) => + ({ + id: repo.id, + name: repo.name, + desc: repo.description, + slug: repo.path, + web_url: repo.web_url, + branch: repo.default_branch, + parent: repo.web_url.replace('https://gitlab.com/', '').split('/')[0], + provider: Integration.GITLAB }) as BaseRepo ); +} + +export const gitlabSearch = async (pat: string, searchString: string) => { + const [groupName, projectQuery] = searchString.split('/'); + let results: BaseRepo[]; + if (groupName && projectQuery) { + results = await searchProjects(groupName, projectQuery, pat); + } + if (results?.length) return results; + else return searchGitlabRepos(pat, searchString); }; From f0df0f2610c91072a4f28c0b1cf35b58079c795a Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Fri, 26 Jul 2024 11:03:24 +0530 Subject: [PATCH 21/43] updates searching logic --- .../api/internal/[org_id]/git_provider_org.ts | 16 +++++++++------- web-server/pages/api/internal/[org_id]/utils.ts | 2 +- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/web-server/pages/api/internal/[org_id]/git_provider_org.ts b/web-server/pages/api/internal/[org_id]/git_provider_org.ts index 5e47e088..fae050e8 100644 --- a/web-server/pages/api/internal/[org_id]/git_provider_org.ts +++ b/web-server/pages/api/internal/[org_id]/git_provider_org.ts @@ -25,19 +25,21 @@ const endpoint = new Endpoint(pathSchema); endpoint.handle.GET(getSchema, async (req, res) => { const { org_id, search_text, providers } = req.payload; + const providerMap = fetchMap.filter((item) => + providers.includes(item.provider) + ); + const tokens = await Promise.all( - fetchMap - .filter((item) => providers.includes(item.provider)) - .map((item) => item.getToken(org_id)) + providerMap.map((item) => item.getToken(org_id)) ); const repos = await Promise.all( - fetchMap - .filter((item) => providers.includes(item.provider)) - .map((item) => item.search(tokens.shift(), search_text)) + providerMap.map((item) => item.search(tokens.shift(), search_text)) ); - return res.status(200).send(repos.flat()); + const sortedRepos = repos.flat().sort((a, b) => a.name.localeCompare(b.name)); + + return res.status(200).send(sortedRepos); }); export default endpoint.serve(); diff --git a/web-server/pages/api/internal/[org_id]/utils.ts b/web-server/pages/api/internal/[org_id]/utils.ts index ea9bc1d3..8f80b90f 100644 --- a/web-server/pages/api/internal/[org_id]/utils.ts +++ b/web-server/pages/api/internal/[org_id]/utils.ts @@ -249,5 +249,5 @@ export const gitlabSearch = async (pat: string, searchString: string) => { results = await searchProjects(groupName, projectQuery, pat); } if (results?.length) return results; - else return searchGitlabRepos(pat, searchString); + else return searchGitlabRepos(pat, projectQuery || searchString); }; From 88d51b5b6f7191e907d9dfea7a1bee2f5da0139c Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Fri, 26 Jul 2024 13:18:44 +0530 Subject: [PATCH 22/43] updates APIs to handle multiple integration providers --- .../api/resources/orgs/[org_id]/teams/v2.ts | 18 ++++++++++-------- web-server/pages/teams/index.tsx | 12 ++++-------- .../TeamSelector/useTeamSelectorSetup.tsx | 14 +++++--------- .../src/components/Teams/useTeamsConfig.tsx | 14 +++++++++----- .../src/contexts/ThirdPartyAuthContext.tsx | 11 +++++++++++ web-server/src/slices/repos.ts | 8 ++++---- web-server/src/slices/team.ts | 2 +- web-server/src/types/resources.ts | 7 ++++++- 8 files changed, 50 insertions(+), 36 deletions(-) diff --git a/web-server/pages/api/resources/orgs/[org_id]/teams/v2.ts b/web-server/pages/api/resources/orgs/[org_id]/teams/v2.ts index cd5c4ab0..de4b6b98 100644 --- a/web-server/pages/api/resources/orgs/[org_id]/teams/v2.ts +++ b/web-server/pages/api/resources/orgs/[org_id]/teams/v2.ts @@ -40,12 +40,13 @@ const repoSchema = yup.object().shape({ }); const getSchema = yup.object().shape({ - provider: yup.string().oneOf(Object.values(Integration)).required() + providers: yup.array( + yup.string().oneOf(Object.values(Integration)).required() + ) }); const postSchema = yup.object().shape({ name: yup.string().required(), - provider: yup.string().oneOf(Object.values(Integration)).required(), org_repos: yup.lazy((obj) => yup.object(mapObjIndexed(() => yup.array().of(repoSchema), obj)) ) @@ -54,7 +55,6 @@ const postSchema = yup.object().shape({ const patchSchema = yup.object().shape({ id: yup.string().uuid().required(), name: yup.string().nullable().optional(), - provider: yup.string().oneOf(Object.values(Integration)).required(), org_repos: yup.lazy((obj) => yup.object(mapObjIndexed(() => yup.array().of(repoSchema), obj)) ) @@ -75,7 +75,7 @@ endpoint.handle.GET(getSchema, async (req, res) => { return res.send(getTeamV2Mock); } - const { org_id, provider } = req.payload; + const { org_id, providers } = req.payload; const getQuery = db('Team') .select('*') .where('org_id', org_id) @@ -83,10 +83,12 @@ endpoint.handle.GET(getSchema, async (req, res) => { .orderBy('name', 'asc'); const teams = await getQuery; - const reposWithWorkflows = await getSelectedReposForOrg( - org_id, - provider as Integration - ); + const reposWithWorkflows = await Promise.all( + providers.map((provider) => + getSelectedReposForOrg(org_id, provider as Integration) + ) + ).then((res) => res.flat()); + res.send({ teams: teams, teamReposMap: ramdaGroupBy(prop('team_id'), reposWithWorkflows), diff --git a/web-server/pages/teams/index.tsx b/web-server/pages/teams/index.tsx index 8c19c913..a7b7bc40 100644 --- a/web-server/pages/teams/index.tsx +++ b/web-server/pages/teams/index.tsx @@ -4,7 +4,6 @@ import ExtendedSidebarLayout from 'src/layouts/ExtendedSidebarLayout'; import { FlexBox } from '@/components/FlexBox'; import { CreateEditTeams, Loader } from '@/components/Teams/CreateTeams'; import { TeamsList } from '@/components/TeamsList'; -import { Integration } from '@/constants/integrations'; import { useRedirectWithSession } from '@/constants/useRoute'; import { PageWrapper } from '@/content/PullRequests/PageWrapper'; import { useAuth } from '@/hooks/useAuth'; @@ -17,10 +16,7 @@ import { depFn } from '@/utils/fn'; function Page() { useRedirectWithSession(); const dispatch = useDispatch(); - const { - orgId, - integrations: { github: isGithubIntegrated } - } = useAuth(); + const { orgId, integrationList } = useAuth(); const teamsList = useSelector((state) => state.team.teams); const loading = useBoolState(!Boolean(teamsList.length)); @@ -29,11 +25,11 @@ function Page() { await dispatch( fetchTeams({ org_id: orgId, - provider: Integration.GITHUB + providers: integrationList }) ); depFn(loading.false); - }, [dispatch, loading.false, loading.true, orgId]); + }, [dispatch, integrationList, loading.false, loading.true, orgId]); useEffect(() => { if (!orgId) return; @@ -51,7 +47,7 @@ function Page() { showEvenIfNoTeamSelected hideAllSelectors > - {isGithubIntegrated && !loading.value ? ( + {integrationList.length && !loading.value ? ( {teamsList.length ? : } diff --git a/web-server/src/components/TeamSelector/useTeamSelectorSetup.tsx b/web-server/src/components/TeamSelector/useTeamSelectorSetup.tsx index eecc7fd4..8e1bce77 100644 --- a/web-server/src/components/TeamSelector/useTeamSelectorSetup.tsx +++ b/web-server/src/components/TeamSelector/useTeamSelectorSetup.tsx @@ -3,7 +3,6 @@ import pluralize, { plural } from 'pluralize'; import { useState, useEffect, useCallback, useMemo } from 'react'; import { useDispatch } from 'react-redux'; -import { Integration } from '@/constants/integrations'; import { FetchState } from '@/constants/ui-states'; import { useAuth } from '@/hooks/useAuth'; import { useStateTeamConfig } from '@/hooks/useStateTeamConfig'; @@ -22,10 +21,7 @@ export const useTeamSelectorSetup = ({ mode }: UseTeamSelectorSetupArgs) => { const dispatch = useDispatch(); const { dateRange, singleTeam, setRange, partiallyUnselected } = useStateTeamConfig(); - const { - orgId, - integrations: { github: isGithubIntegrations } - } = useAuth(); + const { orgId, integrationList } = useAuth(); const [showAllTeams, setShowAllTeams] = useState(true); const activeBranchMode = useSelector((state) => state.app.branchMode); const isAllBranchMode = activeBranchMode === ActiveBranchMode.ALL; @@ -56,10 +52,10 @@ export const useTeamSelectorSetup = ({ mode }: UseTeamSelectorSetupArgs) => { const fetchAllTeams = useCallback(async () => { await Promise.all([ - dispatch(fetchTeams({ org_id: orgId, provider: Integration.GITHUB })), + dispatch(fetchTeams({ org_id: orgId, providers: integrationList })), dispatch(updateTeamBranchesMap({ orgId })) ]); - }, [dispatch, orgId]); + }, [dispatch, integrationList, orgId]); const apiTeams = useSelector((state) => state.team.teams); const loadingTeams = useSelector( @@ -69,8 +65,8 @@ export const useTeamSelectorSetup = ({ mode }: UseTeamSelectorSetupArgs) => { useEffect(() => { if (!orgId) return; - if (isGithubIntegrations) fetchAllTeams(); - }, [fetchAllTeams, isGithubIntegrations, orgId]); + if (integrationList.length) fetchAllTeams(); + }, [fetchAllTeams, integrationList.length, orgId]); const dateRangeLabel = !partiallyUnselected ? `${format(dateRange[0], 'do MMM')} to ${format(dateRange[1], 'do MMM')}` diff --git a/web-server/src/components/Teams/useTeamsConfig.tsx b/web-server/src/components/Teams/useTeamsConfig.tsx index 0a00db10..661e3c9f 100644 --- a/web-server/src/components/Teams/useTeamsConfig.tsx +++ b/web-server/src/components/Teams/useTeamsConfig.tsx @@ -87,7 +87,8 @@ export const TeamsCRUDProvider: React.FC<{ const dispatch = useDispatch(); const teamReposMaps = useSelector((s) => s.team.teamReposMaps); const teams = useSelector((s) => s.team.teams); - const { orgId } = useAuth(); + const { orgId, integrationList } = useAuth(); + const isPageLoading = useSelector( (s) => s.team.requests?.teams === FetchState.REQUEST ); @@ -98,10 +99,10 @@ export const TeamsCRUDProvider: React.FC<{ dispatch( fetchTeams({ org_id: orgId, - provider: Integration.GITHUB + providers: integrationList }) ); - }, [dispatch, orgId]); + }, [dispatch, integrationList, orgId]); // team name logic const teamName = useEasyState(''); @@ -446,7 +447,8 @@ const repoToPayload = (repos: BaseRepo[]) => { slug: repo.slug, default_branch: repo.branch, deployment_type: repo.deployment_type, - repo_workflows: repo.repo_workflows + repo_workflows: repo.repo_workflows, + provider: repo.provider }; const orgName = repo.parent; @@ -465,6 +467,8 @@ const DEBOUNCE_TIME = 500; const useReposSearch = () => { const { orgId } = useAuth(); const searchResults = useEasyState([]); + const { integrationList } = useAuth(); + const isLoading = useBoolState(false); let cancelTokenSource = axios.CancelToken.source(); @@ -496,7 +500,7 @@ const useReposSearch = () => { const response = await axios( `/api/internal/${orgId}/git_provider_org`, { - params: { provider: Integration.GITHUB, search_text: query }, + params: { providers: integrationList, search_text: query }, cancelToken: cancelTokenSource.token } ); diff --git a/web-server/src/contexts/ThirdPartyAuthContext.tsx b/web-server/src/contexts/ThirdPartyAuthContext.tsx index 15d8d7c5..8ac9fd73 100644 --- a/web-server/src/contexts/ThirdPartyAuthContext.tsx +++ b/web-server/src/contexts/ThirdPartyAuthContext.tsx @@ -25,6 +25,7 @@ export interface AuthContextValue extends AuthState { role: UserRole; integrations: Org['integrations']; onboardingState: OnboardingStep[]; + integrationList: Integration[]; integrationSet: Set; activeCodeProvider: CodeProviderIntegrations | null; } @@ -35,6 +36,7 @@ export const AuthContext = createContext({ role: UserRole.MOM, integrations: {}, onboardingState: [], + integrationList: [], integrationSet: new Set(), activeCodeProvider: null }); @@ -113,6 +115,14 @@ export const AuthProvider: FC = (props) => { [integrations.github] ); + const integrationList = useMemo( + () => + Object.entries(integrations) + .filter(([_, value]) => value.integrated) + .map(([key, _]) => key) as Integration[], + [integrations] + ); + const activeCodeProvider = useMemo( () => Object.keys(state?.org?.integrations || {}).find( @@ -131,6 +141,7 @@ export const AuthProvider: FC = (props) => { role, integrations, integrationSet, + integrationList, activeCodeProvider, onboardingState: (state.org?.onboarding_state as OnboardingStep[]) || [] }} diff --git a/web-server/src/slices/repos.ts b/web-server/src/slices/repos.ts index 4ef78d28..4c2b4c55 100644 --- a/web-server/src/slices/repos.ts +++ b/web-server/src/slices/repos.ts @@ -203,10 +203,10 @@ export const fetchUnassignedRepos = createAsyncThunk( export const fetchProviderOrgs = createAsyncThunk( 'repos/fetchProviderOrgs', - async (params: { orgId: ID; provider: Integration }) => { + async (params: { orgId: ID; providers: Integration[] }) => { return await handleApi( `/internal/${params.orgId}/git_provider_org`, - { params: { provider: params.provider } } + { params: { providers: params.providers } } ); } ); @@ -214,7 +214,7 @@ export const fetchProviderOrgs = createAsyncThunk( export const fetchReposForOrgFromProvider = createAsyncThunk( 'repos/fetchReposForOrgFromProvider', async ( - params: { orgId: ID; provider: Integration; orgName: string }, + params: { orgId: ID; providers: Integration[]; orgName: string }, { getState } ) => { const { @@ -225,7 +225,7 @@ export const fetchReposForOrgFromProvider = createAsyncThunk( `/internal/${params.orgId}/git_provider_org`, { params: { - provider: params.provider, + providers: params.providers, org_name: params.orgName, team_id: selectedTeam?.value } diff --git a/web-server/src/slices/team.ts b/web-server/src/slices/team.ts index 6fd6790d..b21fe9c4 100644 --- a/web-server/src/slices/team.ts +++ b/web-server/src/slices/team.ts @@ -135,7 +135,7 @@ export const teamSlice = createSlice({ export const fetchTeams = createAsyncThunk( 'teams/fetchTeams', - async (params: { org_id: ID; provider: Integration }) => { + async (params: { org_id: ID; providers: Integration[] }) => { return await handleApi<{ teams: Team[]; teamReposMap: Record; diff --git a/web-server/src/types/resources.ts b/web-server/src/types/resources.ts index 576234ab..294a370f 100644 --- a/web-server/src/types/resources.ts +++ b/web-server/src/types/resources.ts @@ -462,7 +462,12 @@ export type RepoWithMultipleWorkflows = Omit< export type RepoUniqueDetails = Pick< RepoWithMultipleWorkflows, - 'name' | 'slug' | 'default_branch' | 'idempotency_key' | 'deployment_type' + | 'name' + | 'slug' + | 'default_branch' + | 'idempotency_key' + | 'deployment_type' + | 'provider' > & { repo_workflows: AdaptedRepoWorkflow[] }; export type RepoContributors = { From d67b21c81ecd00d6c3cecd963c8a636f0bb8b2d2 Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Fri, 26 Jul 2024 13:23:36 +0530 Subject: [PATCH 23/43] updates fetch-teams API to accept integration list --- web-server/pages/integrations.tsx | 11 +++++++++-- web-server/src/components/TeamsList.tsx | 8 +++----- .../content/Dashboards/ConfigureGithubModalBody.tsx | 5 +++-- .../content/Dashboards/ConfigureGitlabModalBody.tsx | 5 +++-- 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/web-server/pages/integrations.tsx b/web-server/pages/integrations.tsx index d227273e..a6359003 100644 --- a/web-server/pages/integrations.tsx +++ b/web-server/pages/integrations.tsx @@ -57,7 +57,13 @@ Integrations.getLayout = (page: PageLayout) => ( export default Integrations; const Content = () => { - const { orgId, integrations, integrationSet, activeCodeProvider } = useAuth(); + const { + orgId, + integrations, + integrationSet, + activeCodeProvider, + integrationList + } = useAuth(); const hasCodeProviderLinked = integrationSet.has(IntegrationGroup.CODE); const teamCount = useSelector((s) => s.team.teams?.length); const dispatch = useDispatch(); @@ -97,7 +103,7 @@ const Content = () => { dispatch( fetchTeams({ org_id: orgId, - provider: activeCodeProvider + providers: integrationList }) ).finally(loadedTeams.true); } @@ -105,6 +111,7 @@ const Content = () => { activeCodeProvider, dispatch, hasCodeProviderLinked, + integrationList, loadedTeams.true, orgId, teamCount diff --git a/web-server/src/components/TeamsList.tsx b/web-server/src/components/TeamsList.tsx index 42d12135..d9fcffc1 100644 --- a/web-server/src/components/TeamsList.tsx +++ b/web-server/src/components/TeamsList.tsx @@ -13,7 +13,6 @@ import { ascend } from 'ramda'; import { FC, MouseEventHandler, useCallback, useMemo } from 'react'; import { truncate } from 'voca'; -import { Integration } from '@/constants/integrations'; import { ROUTES } from '@/constants/routes'; import { FetchState } from '@/constants/ui-states'; import { useAuth } from '@/hooks/useAuth'; @@ -258,7 +257,7 @@ const TeamCard: React.FC = ({ team, onEdit }) => { const MoreOptions = ({ teamId }: { teamId: ID }) => { const dispatch = useDispatch(); const { enqueueSnackbar } = useSnackbar(); - const { orgId } = useAuth(); + const { orgId, integrationList } = useAuth(); const anchorEl = useEasyState(); const loading = useBoolState(false); const cancelMenu = useBoolState(false); @@ -286,9 +285,7 @@ const MoreOptions = ({ teamId }: { teamId: ID }) => { variant: 'success', autoHideDuration: 2000 }); - dispatch( - fetchTeams({ org_id: orgId, provider: Integration.GITHUB }) - ); + dispatch(fetchTeams({ org_id: orgId, providers: integrationList })); handleCloseMenu(); } else { enqueueSnackbar('Failed to delete team', { @@ -304,6 +301,7 @@ const MoreOptions = ({ teamId }: { teamId: ID }) => { dispatch, enqueueSnackbar, handleCloseMenu, + integrationList, loading.false, loading.true, orgId diff --git a/web-server/src/content/Dashboards/ConfigureGithubModalBody.tsx b/web-server/src/content/Dashboards/ConfigureGithubModalBody.tsx index dd9cae71..b21cb36d 100644 --- a/web-server/src/content/Dashboards/ConfigureGithubModalBody.tsx +++ b/web-server/src/content/Dashboards/ConfigureGithubModalBody.tsx @@ -23,7 +23,7 @@ export const ConfigureGithubModalBody: FC<{ onClose: () => void; }> = ({ onClose }) => { const token = useEasyState(''); - const { orgId } = useAuth(); + const { orgId, integrationList } = useAuth(); const { enqueueSnackbar } = useSnackbar(); const dispatch = useDispatch(); const isLoading = useBoolState(); @@ -79,7 +79,7 @@ export const ConfigureGithubModalBody: FC<{ dispatch( fetchTeams({ org_id: orgId, - provider: Integration.GITHUB + providers: integrationList }) ); enqueueSnackbar('Github linked successfully', { @@ -96,6 +96,7 @@ export const ConfigureGithubModalBody: FC<{ }, [ dispatch, enqueueSnackbar, + integrationList, isLoading.false, isLoading.true, onClose, diff --git a/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx b/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx index c2f3b83b..d7ea919a 100644 --- a/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx +++ b/web-server/src/content/Dashboards/ConfigureGitlabModalBody.tsx @@ -24,7 +24,7 @@ export const ConfigureGitlabModalBody: FC<{ }> = ({ onClose }) => { const token = useEasyState(''); const customDomain = useEasyState(''); - const { orgId } = useAuth(); + const { orgId, integrationList } = useAuth(); const { enqueueSnackbar } = useSnackbar(); const dispatch = useDispatch(); const isLoading = useBoolState(); @@ -106,7 +106,7 @@ export const ConfigureGitlabModalBody: FC<{ dispatch( fetchTeams({ org_id: orgId, - provider: Integration.GITLAB + providers: integrationList }) ); enqueueSnackbar('Gitlab linked successfully', { @@ -124,6 +124,7 @@ export const ConfigureGitlabModalBody: FC<{ customDomain.value, dispatch, enqueueSnackbar, + integrationList, isLoading.false, isLoading.true, onClose, From 6ffe265ef1fe65cc0ad80b94c868b71cbe36c5eb Mon Sep 17 00:00:00 2001 From: e-for-eshaan Date: Fri, 26 Jul 2024 14:15:31 +0530 Subject: [PATCH 24/43] updates rendering logic for multiple code-provider integrations --- web-server/pages/integrations.tsx | 65 +++++++++++++++++-------------- 1 file changed, 36 insertions(+), 29 deletions(-) diff --git a/web-server/pages/integrations.tsx b/web-server/pages/integrations.tsx index a6359003..3099bfa1 100644 --- a/web-server/pages/integrations.tsx +++ b/web-server/pages/integrations.tsx @@ -1,13 +1,14 @@ import { Add } from '@mui/icons-material'; import { LoadingButton } from '@mui/lab'; import { Button, Divider, Card } from '@mui/material'; +import { differenceInMilliseconds } from 'date-fns'; +import { millisecondsInMinute } from 'date-fns/constants'; import { useEffect, useMemo } from 'react'; import { Authenticated } from 'src/components/Authenticated'; import { handleApi } from '@/api-helpers/axios-api-instance'; import { FlexBox } from '@/components/FlexBox'; import { Line } from '@/components/Text'; -import { Integration } from '@/constants/integrations'; import { ROUTES } from '@/constants/routes'; import { FetchState } from '@/constants/ui-states'; import { GithubIntegrationCard } from '@/content/Dashboards/GithubIntegrationCard'; @@ -19,10 +20,10 @@ import ExtendedSidebarLayout from '@/layouts/ExtendedSidebarLayout'; import { appSlice } from '@/slices/app'; import { fetchTeams } from '@/slices/team'; import { useDispatch, useSelector } from '@/store'; -import { PageLayout, IntegrationGroup } from '@/types/resources'; +import { PageLayout } from '@/types/resources'; import { depFn } from '@/utils/fn'; -const TIME_LIMIT_FOR_FORCE_SYNC = 600000; +const TIME_LIMIT_FOR_FORCE_SYNC = 10 * millisecondsInMinute; function Integrations() { const isLoading = useSelector( @@ -57,14 +58,8 @@ Integrations.getLayout = (page: PageLayout) => ( export default Integrations; const Content = () => { - const { - orgId, - integrations, - integrationSet, - activeCodeProvider, - integrationList - } = useAuth(); - const hasCodeProviderLinked = integrationSet.has(IntegrationGroup.CODE); + const { orgId, integrations, integrationList } = useAuth(); + const hasCodeProviderLinked = integrationList.length > 0; const teamCount = useSelector((s) => s.team.teams?.length); const dispatch = useDispatch(); const loadedTeams = useBoolState(false); @@ -72,29 +67,42 @@ const Content = () => { const localLastForceSyncedAt = useEasyState(null); const showCreationCTA = hasCodeProviderLinked && !teamCount && loadedTeams.value; + + const lastSyncMap = useMemo(() => { + return integrationList + .map((item) => { + // @ts-ignore + const linkedAt = integrations[item].linked_at; + if (!linkedAt) return null; + const codeProviderLinkedAt = new Date(linkedAt); + const currentDate = new Date(); + const diff = differenceInMilliseconds( + currentDate, + codeProviderLinkedAt + ); + return diff; + }) + .filter(Boolean); + }, [integrationList, integrations]); + const showForceSyncBtn = useMemo(() => { if (!hasCodeProviderLinked) return false; - const githubLinkedAt = new Date(integrations[Integration.GITHUB].linked_at); - const currentDate = new Date(); - if (githubLinkedAt) { - const diffMilliseconds = currentDate.getTime() - githubLinkedAt.getTime(); - return diffMilliseconds >= TIME_LIMIT_FOR_FORCE_SYNC; - } - }, [hasCodeProviderLinked, integrations]); + if (!lastSyncMap.length) return true; + return lastSyncMap.every((diff) => diff >= TIME_LIMIT_FOR_FORCE_SYNC); + }, [hasCodeProviderLinked, lastSyncMap]); const enableForceSyncBtn = useMemo(() => { - if (!integrations[activeCodeProvider]?.last_synced_at) return true; - const lastForceSyncedAt = Math.max( - new Date(integrations[activeCodeProvider]?.last_synced_at).getTime(), - localLastForceSyncedAt.value?.getTime() + const diff = differenceInMilliseconds( + new Date(), + localLastForceSyncedAt.value ); - const currentDate = new Date(); - const diffMilliseconds = currentDate.getTime() - lastForceSyncedAt; - return diffMilliseconds >= TIME_LIMIT_FOR_FORCE_SYNC; - }, [activeCodeProvider, integrations, localLastForceSyncedAt.value]); + if (diff >= TIME_LIMIT_FOR_FORCE_SYNC) return true; + if (!lastSyncMap.length) return true; + return lastSyncMap.some((diff) => diff >= TIME_LIMIT_FOR_FORCE_SYNC); + }, [lastSyncMap, localLastForceSyncedAt.value]); useEffect(() => { - if (!orgId || !activeCodeProvider) return; + if (!orgId || !integrationList.length) return; if (!hasCodeProviderLinked) { dispatch(appSlice.actions.setSingleTeam([])); return; @@ -108,7 +116,6 @@ const Content = () => { ).finally(loadedTeams.true); } }, [ - activeCodeProvider, dispatch, hasCodeProviderLinked, integrationList, @@ -142,7 +149,7 @@ const Content = () => { transition: 'all 0.2s ease' }} > - Integrate your Github to fetch DORA for your team + Integrate your Code Providers to fetch DORA for your team {showDoraCTA && (