Skip to content

Commit 93c5abc

Browse files
authored
Fetch all-ish silos on utilization page (#2678)
fetch all-ish silos on utilization page
1 parent 517353e commit 93c5abc

File tree

1 file changed

+17
-7
lines changed

1 file changed

+17
-7
lines changed

app/pages/system/UtilizationPage.tsx

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,11 @@ import { useIsFetching } from '@tanstack/react-query'
1010
import { useMemo, useState } from 'react'
1111

1212
import {
13-
apiQueryClient,
1413
FLEET_ID,
14+
getListQFn,
15+
queryClient,
1516
totalUtilization,
16-
usePrefetchedApiQuery,
17+
usePrefetchedQuery,
1718
} from '@oxide/api'
1819
import { Metrics16Icon, Metrics24Icon } from '@oxide/design-system/icons/react'
1920

@@ -30,22 +31,30 @@ import { PageHeader, PageTitle } from '~/ui/lib/PageHeader'
3031
import { ResourceMeter } from '~/ui/lib/ResourceMeter'
3132
import { Table } from '~/ui/lib/Table'
3233
import { Tabs } from '~/ui/lib/Tabs'
34+
import { ALL_ISH } from '~/util/consts'
3335
import { docLinks } from '~/util/links'
3436
import { round } from '~/util/math'
3537
import { pb } from '~/util/path-builder'
3638
import { bytesToGiB, bytesToTiB } from '~/util/units'
3739

40+
const siloList = getListQFn('siloList', {
41+
query: { limit: ALL_ISH },
42+
})
43+
const siloUtilList = getListQFn('siloUtilizationList', {
44+
query: { limit: ALL_ISH },
45+
})
46+
3847
export async function loader() {
3948
await Promise.all([
40-
apiQueryClient.prefetchQuery('siloList', {}),
41-
apiQueryClient.prefetchQuery('siloUtilizationList', {}),
49+
queryClient.prefetchQuery(siloList.optionsFn()),
50+
queryClient.prefetchQuery(siloUtilList.optionsFn()),
4251
])
4352
return null
4453
}
4554

4655
Component.displayName = 'SystemUtilizationPage'
4756
export function Component() {
48-
const { data: siloUtilizationList } = usePrefetchedApiQuery('siloUtilizationList', {})
57+
const { data: siloUtilizationList } = usePrefetchedQuery(siloUtilList.optionsFn())
4958

5059
const { totalAllocated, totalProvisioned } = totalUtilization(siloUtilizationList.items)
5160

@@ -83,7 +92,7 @@ export function Component() {
8392
}
8493

8594
const MetricsTab = () => {
86-
const { data: silos } = usePrefetchedApiQuery('siloList', {})
95+
const { data: silos } = usePrefetchedQuery(siloList.optionsFn())
8796

8897
const siloItems = useMemo(() => {
8998
const items = silos?.items.map((silo) => ({ label: silo.name, value: silo.id })) || []
@@ -157,7 +166,8 @@ const MetricsTab = () => {
157166
}
158167

159168
function UsageTab() {
160-
const { data: siloUtilizations } = usePrefetchedApiQuery('siloUtilizationList', {})
169+
const { data: siloUtilizations } = usePrefetchedQuery(siloUtilList.optionsFn())
170+
161171
return (
162172
<Table className="w-full">
163173
<Table.Header>

0 commit comments

Comments
 (0)