Skip to content

Commit b62fd65

Browse files
committed
add storybook
1 parent 95159b9 commit b62fd65

File tree

6 files changed

+124
-22
lines changed

6 files changed

+124
-22
lines changed

site/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@
106106
"@storybook/addon-links": "7.5.2",
107107
"@storybook/addon-mdx-gfm": "7.5.2",
108108
"@storybook/addon-themes": "7.6.4",
109+
"@storybook/preview-api": "7.6.9",
109110
"@storybook/react": "7.5.2",
110111
"@storybook/react-vite": "7.5.2",
111112
"@swc/core": "1.3.38",

site/pnpm-lock.yaml

+71-17
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
import type { Meta, StoryObj } from "@storybook/react";
2+
import { chromatic } from "testHelpers/chromatic";
3+
import { MockTemplateVersion } from "testHelpers/entities";
4+
import { ProvisionerTagsPopover } from "./ProvisionerTagsPopover";
5+
import { useArgs } from "@storybook/preview-api";
6+
7+
const meta: Meta<typeof ProvisionerTagsPopover> = {
8+
title: "pages/ProvisionerTagsPopover",
9+
parameters: {
10+
chromatic,
11+
layout: "centered",
12+
},
13+
component: ProvisionerTagsPopover,
14+
args: {
15+
tags: MockTemplateVersion.job.tags,
16+
},
17+
render: function Render(args) {
18+
const [{ tags }, updateArgs] = useArgs();
19+
20+
return (
21+
<ProvisionerTagsPopover
22+
{...args}
23+
tags={tags}
24+
onSubmit={({ key, value }) => {
25+
updateArgs({ tags: { ...tags, [key]: value } });
26+
}}
27+
onDelete={(key) => {
28+
const newTags = { ...tags };
29+
delete newTags[key];
30+
updateArgs({ tags: newTags });
31+
}}
32+
/>
33+
);
34+
},
35+
};
36+
37+
export default meta;
38+
type Story = StoryObj<typeof ProvisionerTagsPopover>;
39+
40+
export const Example: Story = {};

site/src/pages/TemplateVersionEditorPage/ProvisionerTagsPopover.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,13 @@ const validationSchema = Yup.object({
4040
}),
4141
});
4242

43-
interface ProviderTagsPopoverProps {
43+
interface ProvisionerTagsPopoverProps {
4444
tags: Record<string, string>;
4545
onSubmit: (values: typeof initialValues) => void;
4646
onDelete: (key: string) => void;
4747
}
4848

49-
export const ProviderTagsPopover: FC<ProviderTagsPopoverProps> = ({
49+
export const ProvisionerTagsPopover: FC<ProvisionerTagsPopoverProps> = ({
5050
tags,
5151
onSubmit,
5252
onDelete,

site/src/pages/TemplateVersionEditorPage/TemplateVersionEditor.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ import {
5454
} from "components/FullPageLayout/Topbar";
5555
import { Sidebar } from "components/FullPageLayout/Sidebar";
5656
import ButtonGroup from "@mui/material/ButtonGroup";
57-
import { ProviderTagsPopover } from "./ProvisionerTagsPopover";
57+
import { ProvisionerTagsPopover } from "./ProvisionerTagsPopover";
5858

5959
type Tab = "logs" | "resources" | undefined; // Undefined is to hide the tab
6060

@@ -266,7 +266,7 @@ export const TemplateVersionEditor: FC<TemplateVersionEditorProps> = ({
266266
>
267267
Build
268268
</TopbarButton>
269-
<ProviderTagsPopover
269+
<ProvisionerTagsPopover
270270
tags={provisionerTags}
271271
onSubmit={({ key, value }) => {
272272
onUpdateProvisionerTags({

site/src/testHelpers/entities.ts

+8-1
Original file line numberDiff line numberDiff line change
@@ -355,7 +355,14 @@ export const MockProvisionerJob: TypesGen.ProvisionerJob = {
355355
status: "succeeded",
356356
file_id: MockOrganization.id,
357357
completed_at: "2022-05-17T17:39:01.382927298Z",
358-
tags: {},
358+
tags: {
359+
scope: "organization",
360+
owner: "",
361+
wowzers: "whatatag",
362+
isCapable: "false",
363+
department: "engineering",
364+
dreaming: "true",
365+
},
359366
queue_position: 0,
360367
queue_size: 0,
361368
};

0 commit comments

Comments
 (0)