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)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy