Skip to content

Commit 994e57d

Browse files
committed
feat: upgrade storybook and add ToC
1 parent 808e784 commit 994e57d

4 files changed

Lines changed: 178 additions & 158 deletions

File tree

.storybook/main.ts

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,8 @@
1-
import { StorybookConfig } from "@storybook/react-vite";
1+
import { defineMain } from "@storybook/react-vite/node";
22

3-
export default {
4-
framework: {
5-
name: "@storybook/react-vite",
6-
options: {}
7-
},
3+
export default defineMain({
4+
framework: "@storybook/react-vite",
85
features: {
9-
controls: true,
10-
viewport: true,
116
backgrounds: false
127
},
138
stories: [
@@ -23,4 +18,4 @@ export default {
2318
"@storybook/addon-docs"
2419
],
2520
staticDirs: ["../dist", "./static"]
26-
} satisfies StorybookConfig;
21+
});

.storybook/preview.tsx

Lines changed: 48 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,50 @@
11
import { darkTheme, lightTheme } from "./customTheme";
22
import { DocsContainer } from "./DocsContainer";
3-
import { Preview } from "@storybook/react-vite";
3+
import { definePreview } from "@storybook/react-vite";
4+
import addonDocs from "@storybook/addon-docs";
5+
import addonLinks from "@storybook/addon-links";
6+
import addonA11y from "@storybook/addon-a11y";
7+
import { AddonTypes, PreviewAddon } from "storybook/internal/csf";
8+
import { ThemeVars } from "storybook/theming";
9+
import { ViewMode } from "storybook/internal/types";
410

5-
const preview: Preview = {
11+
interface DarkModeTypes extends AddonTypes {
12+
parameters: {
13+
darkMode?: {
14+
light: ThemeVars;
15+
dark: ThemeVars;
16+
};
17+
};
18+
}
19+
20+
interface ViewModeTypes extends AddonTypes {
21+
parameters: {
22+
viewMode?: ViewMode;
23+
};
24+
}
25+
26+
interface PreviewTabsTypes extends AddonTypes {
27+
parameters: {
28+
previewTabs?: {
29+
[key: string]: {
30+
hidden: boolean;
31+
};
32+
};
33+
};
34+
}
35+
36+
const noop = <T extends AddonTypes>() => ({} as PreviewAddon<T>);
37+
38+
export default definePreview({
39+
// CSF Next syntax with custom additions for autocompletion
40+
addons: [
41+
addonDocs(),
42+
addonLinks(),
43+
addonA11y(),
44+
noop<DarkModeTypes>(),
45+
noop<ViewModeTypes>(),
46+
noop<PreviewTabsTypes>()
47+
],
648
tags: ["autodocs"],
749
parameters: {
850
actions: { argTypesRegex: "^on[A-Z].*" },
@@ -12,12 +54,14 @@ const preview: Preview = {
1254
date: /Date$/
1355
}
1456
},
57+
viewMode: "canvas",
1558
darkMode: {
1659
light: lightTheme,
1760
dark: darkTheme
1861
},
1962
docs: {
20-
container: DocsContainer
63+
container: DocsContainer,
64+
toc: true
2165
},
2266
viewport: {
2367
options: {
@@ -115,6 +159,4 @@ const preview: Preview = {
115159
}
116160
}
117161
}
118-
};
119-
120-
export default preview;
162+
});

package.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -83,10 +83,10 @@
8383
"@gouvfr/dsfr-chart": "^1.0.0",
8484
"@mui/icons-material": "^5.14.18",
8585
"@mui/material": "^5.14.18",
86-
"@storybook/addon-a11y": "10.1.11",
87-
"@storybook/addon-docs": "10.1.11",
88-
"@storybook/addon-links": "10.1.11",
89-
"@storybook/react-vite": "^10.1.11",
86+
"@storybook/addon-a11y": "10.2.1",
87+
"@storybook/addon-docs": "10.2.1",
88+
"@storybook/addon-links": "10.2.1",
89+
"@storybook/react-vite": "^10.2.1",
9090
"@tanstack/react-virtual": "^3.0.0-beta.39",
9191
"@types/css": "^0.0.33",
9292
"@types/jsdom": "^21.1.7",
@@ -98,13 +98,13 @@
9898
"@types/yargs-parser": "^21.0.3",
9999
"@typescript-eslint/eslint-plugin": "^5.43.0",
100100
"@typescript-eslint/parser": "^5.43.0",
101-
"@vueless/storybook-dark-mode": "^10.0.4",
101+
"@vueless/storybook-dark-mode": "^10.0.7",
102102
"babel-loader": "^8.3.0",
103103
"chromatic": "^6.17.2",
104104
"css": "^3.0.0",
105105
"eslint": "^8",
106106
"eslint-config-prettier": "^8.3.0",
107-
"eslint-plugin-storybook": "10.1.11",
107+
"eslint-plugin-storybook": "10.2.1",
108108
"evt": "^2.4.2",
109109
"fzf": "^0.5.1",
110110
"husky": "^4.3.8",
@@ -120,7 +120,7 @@
120120
"react": "18.2.0",
121121
"react-dom": "18.2.0",
122122
"remixicon": "^4.2.0",
123-
"storybook": "10.1.11",
123+
"storybook": "10.2.1",
124124
"svgo": "^3.3.2",
125125
"ts-node": "^10.9.1",
126126
"tss-react": "^4.9.1",

0 commit comments

Comments
 (0)