Skip to content

Commit efb20b6

Browse files
samejrmatt-aitken
authored andcommitted
Make a separate component for the machine tooltip info
1 parent 7dafc2a commit efb20b6

File tree

2 files changed

+65
-57
lines changed

2 files changed

+65
-57
lines changed
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
import { BookOpenIcon } from "lucide-react";
2+
import { MachineIcon } from "~/assets/icons/MachineIcon";
3+
import { docsPath } from "~/utils/pathBuilder";
4+
import { LinkButton } from "./primitives/Buttons";
5+
import { Header3 } from "./primitives/Headers";
6+
import { Paragraph } from "./primitives/Paragraph";
7+
8+
export function MachineTooltipInfo() {
9+
return (
10+
<div className="flex max-w-xs flex-col gap-4 p-1">
11+
<div>
12+
<div className="mb-0.5 flex items-center gap-1.5">
13+
<MachineIcon preset="no-machine" />
14+
<Header3>No machine yet</Header3>
15+
</div>
16+
<Paragraph variant="small" className="text-text-dimmed">
17+
The machine is set at the moment the run is dequeued.
18+
</Paragraph>
19+
</div>
20+
<div>
21+
<div className="mb-0.5 flex items-center gap-1.5">
22+
<MachineIcon preset="micro" />
23+
<Header3>Micro</Header3>
24+
</div>
25+
<Paragraph variant="small" className="text-text-dimmed">
26+
The smallest and cheapest machine available.
27+
</Paragraph>
28+
</div>
29+
<div>
30+
<div className="mb-0.5 flex items-center gap-1.5">
31+
<MachineIcon preset="small-1x" /> <Header3>Small 1x & 2x</Header3>
32+
</div>
33+
<Paragraph variant="small" className="text-text-dimmed">
34+
Smaller machines for basic workloads. Small 1x is the default machine.
35+
</Paragraph>
36+
</div>
37+
<div>
38+
<div className="mb-0.5 flex items-center gap-1.5">
39+
<MachineIcon preset="medium-1x" /> <Header3>Medium 1x & 2x</Header3>
40+
</div>
41+
<Paragraph variant="small" className="text-text-dimmed">
42+
Medium machines for more demanding workloads.
43+
</Paragraph>
44+
</div>
45+
<div>
46+
<div className="mb-0.5 flex items-center gap-1.5">
47+
<MachineIcon preset="large-1x" /> <Header3>Large 1x & 2x</Header3>
48+
</div>
49+
<Paragraph variant="small" className="text-text-dimmed">
50+
Larger machines for the most demanding workloads such as video processing. The larger the
51+
machine, the more expensive it is.
52+
</Paragraph>
53+
</div>
54+
<LinkButton
55+
to={docsPath("machines#machine-configurations")}
56+
variant="docs/small"
57+
LeadingIcon={BookOpenIcon}
58+
>
59+
Read docs
60+
</LinkButton>
61+
</div>
62+
);
63+
}

apps/webapp/app/components/runs/v3/TaskRunsTable.tsx

Lines changed: 2 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ import {
5858
} from "./TaskRunStatus";
5959
import { MachineIcon } from "~/assets/icons/MachineIcon";
6060
import { MachineLabelCombo } from "~/components/MachineLabelCombo";
61+
import { MachineTooltipInfo } from "~/components/MachineTooltipInfo";
6162

6263
type RunsTableProps = {
6364
total: number;
@@ -207,63 +208,7 @@ export function TaskRunsTable({
207208
<TableHeaderCell>Compute</TableHeaderCell>
208209
</>
209210
)}
210-
<TableHeaderCell
211-
className="pl-4"
212-
tooltip={
213-
<div className="flex max-w-xs flex-col gap-4 p-1">
214-
<div>
215-
<div className="mb-0.5 flex items-center gap-1.5">
216-
<MachineIcon preset="no-machine" />
217-
<Header3>No machine yet</Header3>
218-
</div>
219-
<Paragraph variant="small" className="text-text-dimmed">
220-
The machine is set at the moment the run is dequeued.
221-
</Paragraph>
222-
</div>
223-
<div>
224-
<div className="mb-0.5 flex items-center gap-1.5">
225-
<MachineIcon preset="micro" />
226-
<Header3>Micro</Header3>
227-
</div>
228-
<Paragraph variant="small" className="text-text-dimmed">
229-
The smallest and cheapest machine available.
230-
</Paragraph>
231-
</div>
232-
<div>
233-
<div className="mb-0.5 flex items-center gap-1.5">
234-
<MachineIcon preset="small-1x" /> <Header3>Small 1x & 2x</Header3>
235-
</div>
236-
<Paragraph variant="small" className="text-text-dimmed">
237-
Smaller machines for basic workloads. Small 1x is the default machine.
238-
</Paragraph>
239-
</div>
240-
<div>
241-
<div className="mb-0.5 flex items-center gap-1.5">
242-
<MachineIcon preset="medium-1x" /> <Header3>Medium 1x & 2x</Header3>
243-
</div>
244-
<Paragraph variant="small" className="text-text-dimmed">
245-
Medium machines for more demanding workloads.
246-
</Paragraph>
247-
</div>
248-
<div>
249-
<div className="mb-0.5 flex items-center gap-1.5">
250-
<MachineIcon preset="large-1x" /> <Header3>Large 1x & 2x</Header3>
251-
</div>
252-
<Paragraph variant="small" className="text-text-dimmed">
253-
Larger machines for the most demanding workloads such as video processing. The
254-
larger the machine, the more expensive it is.
255-
</Paragraph>
256-
</div>
257-
<LinkButton
258-
to={docsPath("machines#machine-configurations")}
259-
variant="docs/small"
260-
LeadingIcon={BookOpenIcon}
261-
>
262-
Read docs
263-
</LinkButton>
264-
</div>
265-
}
266-
>
211+
<TableHeaderCell className="pl-4" tooltip={<MachineTooltipInfo />}>
267212
Machine
268213
</TableHeaderCell>
269214
<TableHeaderCell>Test</TableHeaderCell>

0 commit comments

Comments
 (0)