Skip to content

Commit 219f723

Browse files
cap10morgandawsontoth
authored andcommitted
fix: Make metrics settings labels & selects responsive
1 parent d5eb29c commit 219f723

File tree

1 file changed

+62
-56
lines changed

1 file changed

+62
-56
lines changed

src/features/instance/status/components/Monitoring.tsx

Lines changed: 62 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -66,62 +66,68 @@ export function Monitoring({instanceParams}: MonitoringParams) {
6666
<div>
6767
<div className="flex justify-between">
6868
<h1 className="pb-6 text-3xl">Status</h1>
69-
<div>
70-
<Label className="ml-8 mr-2">Metric:</Label>
71-
<Select
72-
defaultValue={selectedMetric.id}
73-
onValueChange={(value) => {
74-
setSelectedMetric(metrics.find((m) => m.id === value) || metrics[0]);
75-
}}>
76-
<SelectTrigger className="inline-flex align-middle w-auto h-auto">
77-
<SelectValue />
78-
</SelectTrigger>
79-
<SelectContent>
80-
<SelectGroup>
81-
{metrics.map((m) => {
82-
let itemLabel = m.label ?? m.name;
83-
if (m.path) {
84-
itemLabel += ` (${m.path})`;
85-
}
86-
return <SelectItem key={m.id} value={m.id}>{itemLabel}</SelectItem>;
87-
})}
88-
</SelectGroup>
89-
</SelectContent>
90-
</Select>
91-
<Label className="ml-8 mr-2">Show last</Label>
92-
<Select
93-
defaultValue={timeWindow.value.toString()}
94-
onValueChange={(value) => {
95-
setTimeWindow(windowOptions.find((o) => o.value === Number(value))!);
96-
}}>
97-
<SelectTrigger className="inline-flex align-middle w-auto h-auto">
98-
<SelectValue />
99-
</SelectTrigger>
100-
<SelectContent>
101-
<SelectGroup>
102-
{windowOptions.map((o) => {
103-
return <SelectItem key={o.value} value={o.value.toString()}>{o.label}</SelectItem>
104-
})}
105-
</SelectGroup>
106-
</SelectContent>
107-
</Select>
108-
<Label className="ml-8 mr-2">Update every</Label>
109-
<Select
110-
defaultValue={updateInterval.value.toString()}
111-
onValueChange={(value) => {
112-
setUpdateInterval(intervalOptions.find((o) => o.value === Number(value))!);
113-
}}>
114-
<SelectTrigger className="inline-flex align-middle w-auto h-auto">
115-
<SelectValue />
116-
</SelectTrigger>
117-
<SelectContent>
118-
<SelectGroup>
119-
{intervalOptions.map((o) => {
120-
return <SelectItem key={o.value} value={o.value.toString()}>{o.label}</SelectItem>
121-
})}
122-
</SelectGroup>
123-
</SelectContent>
124-
</Select>
69+
<div className="justify-items-end grid grid-cols-1 lg:grid-cols-3 gap-4">
70+
<div className="flex flex-nowrap items-center">
71+
<Label className="ml-8 mr-2">Metric:</Label>
72+
<Select
73+
defaultValue={selectedMetric.id}
74+
onValueChange={(value) => {
75+
setSelectedMetric(metrics.find((m) => m.id === value) || metrics[0]);
76+
}}>
77+
<SelectTrigger className="inline-flex align-middle w-auto h-auto">
78+
<SelectValue />
79+
</SelectTrigger>
80+
<SelectContent>
81+
<SelectGroup>
82+
{metrics.map((m) => {
83+
let itemLabel = m.label ?? m.name;
84+
if (m.path) {
85+
itemLabel += ` (${m.path})`;
86+
}
87+
return <SelectItem key={m.id} value={m.id}>{itemLabel}</SelectItem>;
88+
})}
89+
</SelectGroup>
90+
</SelectContent>
91+
</Select>
92+
</div>
93+
<div className="flex flex-nowrap items-center">
94+
<Label className="ml-8 mr-2">Show last</Label>
95+
<Select
96+
defaultValue={timeWindow.value.toString()}
97+
onValueChange={(value) => {
98+
setTimeWindow(windowOptions.find((o) => o.value === Number(value))!);
99+
}}>
100+
<SelectTrigger className="inline-flex align-middle w-auto h-auto">
101+
<SelectValue />
102+
</SelectTrigger>
103+
<SelectContent>
104+
<SelectGroup>
105+
{windowOptions.map((o) => {
106+
return <SelectItem key={o.value} value={o.value.toString()}>{o.label}</SelectItem>
107+
})}
108+
</SelectGroup>
109+
</SelectContent>
110+
</Select>
111+
</div>
112+
<div className="flex flex-nowrap items-center">
113+
<Label className="ml-8 mr-2">Update every</Label>
114+
<Select
115+
defaultValue={updateInterval.value.toString()}
116+
onValueChange={(value) => {
117+
setUpdateInterval(intervalOptions.find((o) => o.value === Number(value))!);
118+
}}>
119+
<SelectTrigger className="inline-flex align-middle w-auto h-auto">
120+
<SelectValue />
121+
</SelectTrigger>
122+
<SelectContent>
123+
<SelectGroup>
124+
{intervalOptions.map((o) => {
125+
return <SelectItem key={o.value} value={o.value.toString()}>{o.label}</SelectItem>
126+
})}
127+
</SelectGroup>
128+
</SelectContent>
129+
</Select>
130+
</div>
125131
</div>
126132
</div>
127133
<MetricVisualization

0 commit comments

Comments
 (0)