+ {data && data.length === 0 && (
+
+
+
+ No Git Providers found. To add a provider, create a new one such
+ as GitHub, GitLab, or Bitbucket.
+
+
+ )}
+ {data?.map((gitProvider, index) => {
+ const isGithub = gitProvider.providerType === "github";
+ const isGitlab = gitProvider.providerType === "gitlab";
+ const isBitbucket = gitProvider.providerType === "bitbucket";
+ const haveGithubRequirements =
+ gitProvider.providerType === "github" &&
+ gitProvider.github?.githubPrivateKey &&
+ gitProvider.github?.githubAppId &&
+ gitProvider.github?.githubInstallationId;
+
+ const haveGitlabRequirements =
+ gitProvider.gitlab?.accessToken && gitProvider.gitlab?.refreshToken;
+ return (
+
+
+
+ {gitProvider.providerType === "github" && (
+
+ )}
+ {gitProvider.providerType === "gitlab" && (
+
+ )}
+ {gitProvider.providerType === "bitbucket" && (
+
+ )}
+
+
+ {gitProvider.providerType === "github"
+ ? "GitHub"
+ : gitProvider.providerType === "gitlab"
+ ? "GitLab"
+ : "Bitbucket"}
+
+
+ {gitProvider.name}
+
+
+
+ Created{" "}
+ {formatDate(
+ gitProvider.createdAt,
+ "yyyy-MM-dd hh:mm:ss a",
+ )}
+
+
+
+
+
+ {!haveGithubRequirements && isGithub && (
+
+
+ Install
+
+
+ )}
+
+ {haveGithubRequirements && isGithub && (
+
+
+ Manage
+
+
+ )}
+
+ {!haveGitlabRequirements && isGitlab && (
+
+
+ Install
+
+
+ )}
+
+ {isBitbucket && (
+
+ )}
+ {isGitlab && haveGitlabRequirements && (
+
+ )}
+ {isGithub && haveGithubRequirements && (
+
+ )}
+
+
+
+
+
+ );
+ })}
+