Skip to content

Commit d28663e

Browse files
fix: code repo icons (#718)
Co-authored-by: Cahllagerfeld <[email protected]>
1 parent bfbe96d commit d28663e

File tree

4 files changed

+48
-34
lines changed

4 files changed

+48
-34
lines changed

src/app/runs/[id]/_Tabs/Overview/Details.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ export function Details() {
119119
</TooltipProvider>
120120
</div>
121121
</Key>
122-
<Value>
122+
<Value className="h-auto">
123123
{data.body?.code_reference ? (
124124
<RepoBadge
125125
repositoryId={data.body?.code_reference.body?.code_repository.id}

src/assets/icons/gitlab.svg

Lines changed: 9 additions & 0 deletions
Loading

src/components/repositories/RepoBadge.tsx

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import Github from "@/assets/icons/github.svg?react";
2+
import Gitlab from "@/assets/icons/gitlab.svg?react";
23
import { useCodeRepository } from "@/data/code-repositories/code-repositories-detail-query";
34
import { transformToEllipsis } from "@/lib/strings";
45
import { Skeleton, Tag } from "@zenml-io/react-component-library";
@@ -19,15 +20,22 @@ export function RepoBadge({ repositoryId, commit }: Props) {
1920
const repositoryMetadata = data?.metadata?.config;
2021

2122
const getRepositoryLink = () => {
23+
let Icon: React.FunctionComponent<
24+
React.SVGProps<SVGSVGElement> & {
25+
title?: string;
26+
}
27+
> | null = null;
2228
let name: string = data?.name as string;
23-
let url: string | null = "";
29+
let url: string | undefined = undefined;
2430

2531
if (data?.body?.source?.attribute === "GitHubCodeRepository") {
32+
Icon = Github;
2633
name = `${repositoryMetadata?.owner}/${repositoryMetadata?.repository}`;
2734
url = `https://www.github.com/${name}` + (commit ? `/tree/${commit}` : "");
2835
} else if (data?.body?.source?.attribute === "GitLabCodeRepository") {
36+
Icon = Gitlab;
2937
name = `${repositoryMetadata?.group}/${repositoryMetadata?.project}`;
30-
url = `https://www.gitlab.com/${name}`;
38+
url = `https://www.gitlab.com/${name}` + (commit ? `/tree/${commit}` : "");
3139
}
3240

3341
return (
@@ -38,7 +46,7 @@ export function RepoBadge({ repositoryId, commit }: Props) {
3846
onClick={(e) => e.stopPropagation()}
3947
href={url}
4048
>
41-
<Github className="mr-1 h-5 w-5 fill-theme-text-brand" />
49+
{Icon && <Icon className="mr-1 h-5 w-5 fill-theme-text-brand" />}
4250
{name}
4351
</a>
4452
);

src/components/steps/step-sheet/DetailsTab.tsx

Lines changed: 27 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -100,36 +100,33 @@ export function StepDetailsTab({ stepId, runId }: Props) {
100100
</Link>
101101
}
102102
/>
103-
<KeyValue
104-
label={
105-
<div className="flex items-center space-x-0.5 truncate">
106-
<span className="truncate">Repository/Commit</span>
107-
<TooltipProvider>
108-
<Tooltip>
109-
<TooltipTrigger className="cursor-default">
110-
<Info className="h-3 w-3 fill-theme-text-secondary" />
111-
<span className="sr-only">Info</span>
112-
</TooltipTrigger>
113-
<TooltipContent className="w-full max-w-md whitespace-normal">
114-
Git hash of code repository. Only set if pipeline was run in a clean git
115-
repository connected to your ZenML server.
116-
</TooltipContent>
117-
</Tooltip>
118-
</TooltipProvider>
119-
</div>
120-
}
121-
value={
122-
pipelineRunData.body?.code_reference ? (
123-
<RepoBadge
124-
repositoryId={repository?.id}
125-
commit={pipelineRunData.body.code_reference.body?.commit}
126-
/>
127-
) : (
128-
"Not available"
129-
)
130-
}
131-
/>
132-
103+
<Key>
104+
<div className="flex items-center space-x-0.5 truncate">
105+
<span className="truncate">Repository/Commit</span>
106+
<TooltipProvider>
107+
<Tooltip>
108+
<TooltipTrigger className="cursor-default">
109+
<Info className="h-3 w-3 fill-theme-text-secondary" />
110+
<span className="sr-only">Info</span>
111+
</TooltipTrigger>
112+
<TooltipContent className="w-full max-w-md whitespace-normal">
113+
Git hash of code repository. Only set if pipeline was run in a clean git
114+
repository connected to your ZenML server.
115+
</TooltipContent>
116+
</Tooltip>
117+
</TooltipProvider>
118+
</div>
119+
</Key>
120+
<Value className="h-auto">
121+
{pipelineRunData.body?.code_reference ? (
122+
<RepoBadge
123+
repositoryId={repository?.id}
124+
commit={pipelineRunData.body.code_reference.body?.commit}
125+
/>
126+
) : (
127+
"Not available"
128+
)}
129+
</Value>
133130
<Key className={pipelineRunData.metadata?.code_path ? "col-span-3" : ""}>
134131
<div className="flex items-center space-x-0.5 truncate">
135132
<span>Code Path</span>

0 commit comments

Comments
 (0)