Skip to content

Commit b6b6c69

Browse files
Add hash icon and tweak update meta
1 parent f9854c6 commit b6b6c69

File tree

2 files changed

+34
-16
lines changed

2 files changed

+34
-16
lines changed

app/pages/system/UpdatePage.tsx

Lines changed: 31 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,13 @@
66
* Copyright Oxide Computer Company
77
*/
88

9-
import { useMemo } from 'react'
9+
import { useMemo, type SVGProps } from 'react'
1010
import * as R from 'remeda'
1111

1212
import {
1313
Images24Icon,
14-
SizeOutline12Icon,
1514
SoftwareUpdate16Icon,
1615
SoftwareUpdate24Icon,
17-
TimeOutline12Icon,
1816
} from '@oxide/design-system/icons/react'
1917
import { Badge } from '@oxide/design-system/ui'
2018

@@ -179,9 +177,9 @@ export default function UpdatePage() {
179177
return (
180178
<li
181179
key={repo.hash}
182-
className="border-default @container flex items-center gap-3 rounded border pl-4"
180+
className="border-default @container flex items-center gap-2 rounded border pl-4"
183181
>
184-
<Images24Icon className="text-tertiary shrink-0" aria-hidden />
182+
<Images24Icon className="text-quaternary shrink-0" aria-hidden />
185183
<div className="flex min-w-0 flex-1 flex-col flex-wrap items-start gap-x-4 gap-y-1 py-3 @md:flex-row @md:items-center">
186184
<div className="flex-1">
187185
<div className="flex items-center gap-1.5">
@@ -191,14 +189,18 @@ export default function UpdatePage() {
191189
{isTarget && <Badge color="default">Target</Badge>}
192190
</div>
193191
</div>
194-
<div className="flex flex-col items-start gap-0.5 @md:items-end">
195-
<div className="flex items-center gap-1.5">
196-
<DateTime date={repo.timeCreated} />
197-
<TimeOutline12Icon className="text-quaternary" aria-hidden />
198-
</div>
199-
<div className="flex items-center gap-1.5">
200-
<div>{repo.fileName}</div>
201-
<SizeOutline12Icon className="text-quaternary" aria-hidden />
192+
<div className="flex flex-col items-start gap-0.5 pr-2 @md:items-end">
193+
<DateTime date={repo.timeCreated} />
194+
<div className="flex items-center gap-0.5">
195+
<HashIcon className="text-quaternary" aria-hidden />
196+
<a
197+
href={`https://github.com/oxidecomputer/omicron/commits/${repo.hash}`}
198+
className="link-with-underline text-default"
199+
target="_blank"
200+
rel="noopener noreferrer"
201+
>
202+
{repo.hash.substring(0, 7)}
203+
</a>
202204
</div>
203205
</div>
204206
</div>
@@ -242,3 +244,19 @@ export default function UpdatePage() {
242244
</>
243245
)
244246
}
247+
248+
const HashIcon = (props: SVGProps<SVGSVGElement>) => (
249+
<svg
250+
width="12"
251+
height="12"
252+
viewBox="0 0 12 12"
253+
fill="none"
254+
xmlns="http://www.w3.org/2000/svg"
255+
{...props}
256+
>
257+
<path
258+
d="M8.8338 0.967163L9.16681 1.03357C9.34546 1.06923 9.46113 1.24262 9.4256 1.42126L9.00958 3.50037H10.1707C10.3529 3.5005 10.5008 3.64827 10.5008 3.83044V4.17029C10.5008 4.35245 10.3528 4.50023 10.1707 4.50037H8.81036L8.20978 7.50037H9.17072C9.35285 7.5005 9.50079 7.64827 9.50079 7.83044V8.17029C9.50079 8.35245 9.35285 8.50023 9.17072 8.50037H8.01056L7.55548 10.7748C7.51965 10.9533 7.34537 11.0691 7.16681 11.0336L6.8338 10.9672C6.65508 10.9314 6.53926 10.7572 6.57501 10.5785L6.99103 8.50037H4.01056L3.55548 10.7748C3.51965 10.9533 3.34537 11.0691 3.16681 11.0336L2.8338 10.9672C2.65508 10.9314 2.53926 10.7572 2.57501 10.5785L2.99103 8.50037H1.83087C1.64862 8.50037 1.5008 8.35254 1.50079 8.17029V7.83044C1.50079 7.64819 1.64862 7.50037 1.83087 7.50037H3.19025L3.79083 4.50037H2.83087C2.64862 4.50037 2.5008 4.35254 2.50079 4.17029V3.83044C2.50079 3.64819 2.64862 3.50037 2.83087 3.50037H3.99005L4.44513 1.22595C4.48085 1.04733 4.65516 0.931576 4.8338 0.967163L5.16681 1.03357C5.34546 1.06923 5.46113 1.24262 5.4256 1.42126L5.00958 3.50037H7.99005L8.44513 1.22595C8.48085 1.04733 8.65516 0.931576 8.8338 0.967163ZM4.81036 4.50037L4.20978 7.50037H7.19025L7.79083 4.50037H4.81036Z"
259+
fill="currentColor"
260+
/>
261+
</svg>
262+
)

mock-api/system-update.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,19 +13,19 @@ export const tufRepos: Json<TufRepo>[] = [
1313
{
1414
system_version: '18.0.0',
1515
file_name: 'rack-18.0.0.zip',
16-
hash: 'a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6',
16+
hash: '163acd11ef5b14aac27d04b2080393826e832714',
1717
time_created: new Date('2024-03-15T14:30:00Z').toISOString(),
1818
},
1919
{
2020
system_version: '17.0.0',
2121
file_name: 'rack-17.0.0.zip',
22-
hash: '7d793037a0760186574b0282f2f435e7',
22+
hash: '6510e87da6a6078509836e8faa27dc20272b472e',
2323
time_created: new Date('2024-02-20T14:30:00Z').toISOString(),
2424
},
2525
{
2626
system_version: '16.0.0',
2727
file_name: 'rack-16.0.0.zip',
28-
hash: '5d41402abc4b2a76b9719d911017c592',
28+
hash: '58f95ded7eed49fd30659035c5c16b5bb9e63a76',
2929
time_created: new Date('2024-01-15T10:00:00Z').toISOString(),
3030
},
3131
]

0 commit comments

Comments
 (0)