- {JSON.stringify(data.authenticationMetadata.public, null, 2)}
-
-
+ {JSON.stringify(data.authenticationMetadata.public, null, 2)}
+
+
- {text.length > 11
- ? `${text.slice(0, 8)}...`
- : text}
-
+ {text.length > 11 ? `${text.slice(0, 8)}...` : text}
);
};
diff --git a/frontend/src/components/CommandLine/index.tsx b/frontend/src/components/CommandLine/index.tsx
index 87679cbc..28887b28 100644
--- a/frontend/src/components/CommandLine/index.tsx
+++ b/frontend/src/components/CommandLine/index.tsx
@@ -1,62 +1,76 @@
-import { CodeOutlined, InfoCircleOutlined } from '@ant-design/icons';
-import { Empty, List, Tooltip } from 'antd';
-import React from 'react';
-import PortalCard from '../PortalCard';
+import { CodeOutlined, InfoCircleOutlined } from "@ant-design/icons";
+import { Empty, List, Tooltip } from "antd";
+import type React from "react";
+import PortalCard from "../PortalCard";
// TODO: find a way to apply these interfaces automatically to the
// output of graphql while remaining a scalar with regard to the graphql
// api.
export interface CommandLineData {
- executable: string
- command: string
- options: CommandLineOptions[]
- startupOptions: CommandLineOptions[]
- residual: string[]
+ executable: string;
+ command: string;
+ options: CommandLineOptions[];
+ startupOptions: CommandLineOptions[];
+ residual: string[];
}
export interface CommandLineOptions {
- option: string
- value: string
+ option: string;
+ value: string;
}
interface ParsedOptions {
- explicitOptions: string[]
- options: string[]
+ explicitOptions: string[];
+ options: string[];
}
interface Props {
- rawCommand: string | null
- canonicalCommandLine: CommandLineData | null
- parsedOptions: ParsedOptions
+ rawCommand: string | null;
+ canonicalCommandLine: CommandLineData | null;
+ parsedOptions: ParsedOptions;
}
-const CommandLineDisplay: React.FC
- {command}
-
- {command}
+
- {lines.map((line, index) => (
-
+ {lines.map((line) => (
+
))}
diff --git a/frontend/src/components/MemoryMetrics/index.tsx b/frontend/src/components/MemoryMetrics/index.tsx
index 9a575cf1..dfe929b5 100644
--- a/frontend/src/components/MemoryMetrics/index.tsx
+++ b/frontend/src/components/MemoryMetrics/index.tsx
@@ -1,12 +1,15 @@
-import React from "react";
-import { Table, Row, Col, Statistic, Space } from "antd";
+import { HddOutlined, PieChartOutlined } from "@ant-design/icons";
+import { Col, Row, Space, Statistic, Table } from "antd";
import type { TableColumnsType } from "antd/lib";
-import { MemoryMetrics, GarbageMetrics } from "@/graphql/__generated__/graphql";
-import PortalCard from "../PortalCard";
-import { PieChartOutlined, HddOutlined } from "@ant-design/icons";
-import styles from "../../theme/theme.module.css";
+import type React from "react";
+import type {
+ GarbageMetrics,
+ MemoryMetrics,
+} from "@/graphql/__generated__/graphql";
import { readableFileSize } from "@/utils/filesize";
-import SummaryPieChart, { SummaryChartItem } from "../SummaryPieChart";
+import styles from "../../theme/theme.module.css";
+import PortalCard from "../PortalCard";
+import SummaryPieChart, { type SummaryChartItem } from "../SummaryPieChart";
import { nullPercent } from "../Utilities/nullPercent";
interface GarbageMetricDetailDisplayType {
@@ -35,7 +38,7 @@ const MemoryMetricsDisplay: React.FC<{
memoryMetrics: MemoryMetrics | undefined;
}> = ({ memoryMetrics }) => {
const garbage_data: GarbageMetricDetailDisplayType[] = [];
- memoryMetrics?.garbageMetrics?.map((item: GarbageMetrics, index) => {
+ memoryMetrics?.garbageMetrics?.forEach((item: GarbageMetrics, index) => {
var gm: GarbageMetricDetailDisplayType = {
key: index,
name: item.type ?? "",
@@ -75,11 +78,15 @@ const MemoryMetricsDisplay: React.FC<{
/>
{JSON.stringify(filter, null, 2)}
- Displays information about a Command stored in the CAS. -
+Displays information about a Command stored in the CAS.
@@ -75,9 +74,7 @@ export const BrowserWelcomePage: React.FC = () => {
"/api/v1/servefile/${instance_name}/blobs/${digest_function}/file/${hash}-${size_bytes}/${filename}"
}
- - Serves a file stored in the CAS. -
+Serves a file stored in the CAS.
diff --git a/frontend/src/components/pages/Browser/index.tsx b/frontend/src/components/pages/Browser/index.tsx
index be89c5a9..7bd7e7ce 100644
--- a/frontend/src/components/pages/Browser/index.tsx
+++ b/frontend/src/components/pages/Browser/index.tsx
@@ -1,11 +1,3 @@
-
-import BrowserActionGrid from "@/components/BrowserActionGrid";
-import BrowserCommandGrid from "@/components/BrowserCommandGrid";
-import BrowserDirectoryPage from "@/components/BrowserDirectoryPage";
-import BrowserPreviousExecutionsPage from "@/components/BrowserPreviousExecutionsPage";
-import Content from "@/components/Content";
-import PortalCard from "@/components/PortalCard";
-import { BrowserPageParams, BrowserPageType } from "@/types/BrowserPageType";
import {
CalculatorOutlined,
CalendarFilled,
@@ -15,11 +7,21 @@ import {
} from "@ant-design/icons";
import { Typography } from "antd";
import type React from "react";
-import { BrowserSearchParams } from "@/routes/browser.$";
+import BrowserActionGrid from "@/components/BrowserActionGrid";
+import BrowserCommandGrid from "@/components/BrowserCommandGrid";
+import BrowserDirectoryPage from "@/components/BrowserDirectoryPage";
+import BrowserPreviousExecutionsPage from "@/components/BrowserPreviousExecutionsPage";
+import Content from "@/components/Content";
+import PortalCard from "@/components/PortalCard";
+import type { BrowserSearchParams } from "@/routes/browser.$";
+import {
+ type BrowserPageParams,
+ BrowserPageType,
+} from "@/types/BrowserPageType";
interface Params {
- params: BrowserPageParams
- search: BrowserSearchParams
+ params: BrowserPageParams;
+ search: BrowserSearchParams;
}
export const BrowserPage: React.FC = ({ params, search }) => {
@@ -52,7 +54,10 @@ export const BrowserPage: React.FC = ({ params, search }) => {
titleBits={[Directory]}
>
Directory contents
-
+
);
@@ -64,8 +69,8 @@ export const BrowserPage: React.FC = ({ params, search }) => {
>
Tree objects are not supported. Please set{" "}
- forceUploadTreesAndDirectories: true{" "}
- in your bb_worker.jsonnet.
+ forceUploadTreesAndDirectories: true in your{" "}
+ bb_worker.jsonnet.
);
@@ -79,10 +84,7 @@ export const BrowserPage: React.FC = ({ params, search }) => {
Historical Execute Response
-
+
);
@@ -92,9 +94,7 @@ export const BrowserPage: React.FC = ({ params, search }) => {
icon={ }
titleBits={[Previous executions stats]}
>
-
+
);
default:
diff --git a/frontend/src/components/pages/BuildDetails/Columns.tsx b/frontend/src/components/pages/BuildDetails/Columns.tsx
index 821b7761..57b76d56 100644
--- a/frontend/src/components/pages/BuildDetails/Columns.tsx
+++ b/frontend/src/components/pages/BuildDetails/Columns.tsx
@@ -2,7 +2,6 @@ import { FilterOutlined, SearchOutlined } from "@ant-design/icons";
import { Space, type TableColumnsType, Typography } from "antd";
import { validate as uuidValidate } from "uuid";
import appbarStyles from "@/components/AppBar/index.module.css";
-import type { GetBuildInvocationFragment } from "@/graphql/__generated__/graphql";
import { CodeLink } from "@/components/CodeLink";
import type { CommandLineData } from "@/components/CommandLine";
import CommandLinePreview from "@/components/CommandLinePreview";
@@ -10,8 +9,8 @@ import { InvocationResultTag } from "@/components/InvocationResultTag";
import { invocationResultTagFilters } from "@/components/InvocationResultTag/filters";
import PortalDuration from "@/components/PortalDuration";
import SearchWidget, { SearchFilterIcon } from "@/components/SearchWidgets";
+import type { GetBuildInvocationFragment } from "@/graphql/__generated__/graphql";
import buildDetailsStyles from "./index.module.css";
-import { Link } from "@tanstack/react-router";
export const columns: TableColumnsType = [
{
@@ -85,13 +84,13 @@ export const columns: TableColumnsType = [
-
+