Skip to content

Commit 8c5be29

Browse files
committed
feat: enable top level diagnostics display
1 parent d21b83f commit 8c5be29

File tree

4 files changed

+53
-5
lines changed

4 files changed

+53
-5
lines changed

site/src/index.css

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
--surface-sky: 201 94% 86%;
3131
--border-default: 240 6% 90%;
3232
--border-success: 142 76% 36%;
33+
--border-warning: 30.66, 97.16%, 72.35%;
3334
--border-destructive: 0 84% 60%;
3435
--border-hover: 240, 5%, 34%;
3536
--overlay-default: 240 5% 84% / 80%;
@@ -67,6 +68,7 @@
6768
--surface-sky: 204 80% 16%;
6869
--border-default: 240 4% 16%;
6970
--border-success: 142 76% 36%;
71+
--border-warning: 30.66, 97.16%, 72.35%;
7072
--border-destructive: 0 91% 71%;
7173
--border-hover: 240, 5%, 34%;
7274
--overlay-default: 240 10% 4% / 80%;

site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -247,10 +247,13 @@ const ParameterField: FC<ParameterFieldProps> = ({
247247
className="flex items-center space-x-2"
248248
>
249249
<RadioGroupItem
250-
id={option.value.value}
250+
id={`${id}-${option.value.value}`}
251251
value={option.value.value}
252252
/>
253-
<Label htmlFor={option.value.value} className="cursor-pointer">
253+
<Label
254+
htmlFor={`${id}-${option.value.value}`}
255+
className="cursor-pointer"
256+
>
254257
<OptionDisplay option={option} />
255258
</Label>
256259
</div>
@@ -350,15 +353,15 @@ const ParameterDiagnostics: FC<ParameterDiagnosticsProps> = ({
350353
<div className="flex flex-col gap-2">
351354
{diagnostics.map((diagnostic, index) => (
352355
<div
353-
key={`diagnostic-${diagnostic.summary}-${index}`}
356+
key={`parameter-diagnostic-${diagnostic.summary}-${index}`}
354357
className={`text-xs px-1 ${
355358
diagnostic.severity === "error"
356359
? "text-content-destructive"
357360
: "text-content-warning"
358361
}`}
359362
>
360-
<div className="font-medium">{diagnostic.summary}</div>
361-
{diagnostic.detail && <div>{diagnostic.detail}</div>}
363+
<p className="font-medium">{diagnostic.summary}</p>
364+
{diagnostic.detail && <p className="m-0">{diagnostic.detail}</p>}
362365
</div>
363366
))}
364367
</div>

site/src/pages/CreateWorkspacePage/CreateWorkspacePageViewExperimental.tsx

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -409,6 +409,7 @@ export const CreateWorkspacePageViewExperimental: FC<
409409
parameters cannot be modified once the workspace is created.
410410
</p>
411411
</hgroup>
412+
<Diagnostics diagnostics={diagnostics} />
412413
{presets.length > 0 && (
413414
<Stack direction="column" spacing={2}>
414415
<div className="flex flex-col gap-2">
@@ -498,3 +499,44 @@ export const CreateWorkspacePageViewExperimental: FC<
498499
</>
499500
);
500501
};
502+
503+
interface DiagnosticsProps {
504+
diagnostics: PreviewParameter["diagnostics"];
505+
}
506+
507+
export const Diagnostics: FC<DiagnosticsProps> = ({ diagnostics }) => {
508+
return (
509+
<div className="flex flex-col gap-4">
510+
{diagnostics.map((diagnostic, index) => (
511+
<div
512+
key={`diagnostic-${diagnostic.summary}-${index}`}
513+
className={`text-xs flex flex-col rounded-md border px-4 pb-3 border-solid
514+
${
515+
diagnostic.severity === "error"
516+
? " text-content-destructive border-border-destructive"
517+
: " text-content-warning border-border-warning"
518+
}`}
519+
>
520+
<div className="flex items-center m-0">
521+
{diagnostic.severity === "error" && (
522+
<CircleAlert
523+
className="me-2 -mt-0.5 inline-flex opacity-80"
524+
size={16}
525+
aria-hidden="true"
526+
/>
527+
)}
528+
{diagnostic.severity === "warning" && (
529+
<TriangleAlert
530+
className="me-2 -mt-0.5 inline-flex opacity-80"
531+
size={16}
532+
aria-hidden="true"
533+
/>
534+
)}
535+
<p className="font-medium">{diagnostic.summary}</p>
536+
</div>
537+
{diagnostic.detail && <p className="m-0 pb-0">{diagnostic.detail}</p>}
538+
</div>
539+
))}
540+
</div>
541+
);
542+
};

site/tailwind.config.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ module.exports = {
5252
},
5353
border: {
5454
DEFAULT: "hsl(var(--border-default))",
55+
warning: "hsl(var(--border-warning))",
5556
destructive: "hsl(var(--border-destructive))",
5657
success: "hsl(var(--border-success))",
5758
hover: "hsl(var(--border-hover))",

0 commit comments

Comments
 (0)