• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

stacklok / codegate-ui / 12828464111

17 Jan 2025 11:48AM CUT coverage: 65.711% (+0.8%) from 64.918%
12828464111

Pull #94

github

web-flow
Merge de9616a3a into d873272ed
Pull Request #94: feat: initial work on codegate version check widget

223 of 416 branches covered (53.61%)

Branch coverage included in aggregate %.

42 of 48 new or added lines in 9 files covered. (87.5%)

442 of 596 relevant lines covered (74.16%)

27.08 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

82.35
/src/features/dashboard-codegate-status/components/codegate-status-version.tsx
1
import { LoaderCircle, CheckCircle2, CircleAlert, XCircle } from "lucide-react";
2
import { VersionResponse } from "../lib/get-version-status";
3
import { Link, Tooltip, TooltipTrigger } from "@stacklok/ui-kit";
4

5
export const CodegateStatusVersion = ({
3✔
6
  data,
7
  isPending,
8
}: {
9
  data: VersionResponse | null;
10
  isPending: boolean;
11
}) => {
12
  if (isPending || data === null) {
77✔
13
    return (
14
      <div className="flex gap-2 items-center text-secondary justify-end overflow-hidden">
15
        Checking <LoaderCircle className="size-4 shrink-0 animate-spin" />
16
      </div>
17
    );
18
  }
19

20
  const { current_version, is_latest, latest_version, error } = data || {};
63!
21

22
  if (error !== null || is_latest === null) {
63✔
23
    return (
24
      <div className="flex gap-2 items-center text-primary justify-end overflow-hidden">
25
        Error checking version <XCircle className="size-4 shrink-0" />
26
      </div>
27
    );
28
  }
29

30
  switch (is_latest) {
2!
31
    case true:
32
      return (
33
        <div className="flex gap-2 items-center text-primary justify-end">
34
          Latest <CheckCircle2 className="size-4 shrink-0" />
35
        </div>
36
      );
37
    case false:
38
      return (
39
        <div>
40
          <TooltipTrigger delay={0}>
41
            <Link
42
              className="flex gap-2 items-center text-primary justify-end overflow-hidden"
43
              variant="secondary"
44
              target="_blank"
45
              rel="noopener noreferrer"
46
              href="https://docs.codegate.ai/how-to/install#upgrade-codegate"
47
            >
48
              Update available <CircleAlert className="size-4 shrink-0" />
49
            </Link>
50
            <Tooltip className="text-right">
51
              <span className="block">Current version: {current_version}</span>
52
              <span className="block">Latest version: {latest_version}</span>
53
            </Tooltip>
54
          </TooltipTrigger>
55
        </div>
56
      );
57
    default: {
NEW
58
      is_latest satisfies never;
×
59
    }
60
  }
61
};
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc