mirror of
https://github.com/bitwarden/browser
synced 2024-12-16 11:21:03 +01:00
604e22334a
Upgrade storybook to version v8 which is a major upgrade. Storybook provides an upgrade wizard which did most of the work. - Ran npx storybook upgrade. - Manually updated `remark-gfm` since the newer mdx requires v 4. - Migrated all old stories still using `Story` to `StoryObj`.
66 lines
1.9 KiB
TypeScript
66 lines
1.9 KiB
TypeScript
import { dirname, join } from "path";
|
|
import { StorybookConfig } from "@storybook/angular";
|
|
import TsconfigPathsPlugin from "tsconfig-paths-webpack-plugin";
|
|
import remarkGfm from "remark-gfm";
|
|
|
|
const config: StorybookConfig = {
|
|
stories: [
|
|
"../libs/auth/src/**/*.mdx",
|
|
"../libs/auth/src/**/*.stories.@(js|jsx|ts|tsx)",
|
|
"../libs/tools/send/send-ui/src/**/*.mdx",
|
|
"../libs/tools/send/send-ui/src/**/*.stories.@(js|jsx|ts|tsx)",
|
|
"../libs/vault/src/**/*.mdx",
|
|
"../libs/vault/src/**/*.stories.@(js|jsx|ts|tsx)",
|
|
"../libs/components/src/**/*.mdx",
|
|
"../libs/components/src/**/*.stories.@(js|jsx|ts|tsx)",
|
|
"../apps/web/src/**/*.mdx",
|
|
"../apps/web/src/**/*.stories.@(js|jsx|ts|tsx)",
|
|
"../apps/browser/src/**/*.mdx",
|
|
"../apps/browser/src/**/*.stories.@(js|jsx|ts|tsx)",
|
|
"../bitwarden_license/bit-web/src/**/*.mdx",
|
|
"../bitwarden_license/bit-web/src/**/*.stories.@(js|jsx|ts|tsx)",
|
|
],
|
|
addons: [
|
|
getAbsolutePath("@storybook/addon-links"),
|
|
getAbsolutePath("@storybook/addon-essentials"),
|
|
getAbsolutePath("@storybook/addon-a11y"),
|
|
getAbsolutePath("@storybook/addon-designs"),
|
|
getAbsolutePath("@storybook/addon-interactions"),
|
|
{
|
|
name: "@storybook/addon-docs",
|
|
options: {
|
|
mdxPluginOptions: {
|
|
mdxCompileOptions: {
|
|
remarkPlugins: [remarkGfm],
|
|
},
|
|
},
|
|
},
|
|
},
|
|
],
|
|
framework: {
|
|
name: getAbsolutePath("@storybook/angular"),
|
|
options: {},
|
|
},
|
|
core: {
|
|
disableTelemetry: true,
|
|
},
|
|
env: (config) => ({
|
|
...config,
|
|
FLAGS: JSON.stringify({}),
|
|
}),
|
|
webpackFinal: async (config, { configType }) => {
|
|
if (config.resolve) {
|
|
config.resolve.plugins = [new TsconfigPathsPlugin()] as any;
|
|
}
|
|
return config;
|
|
},
|
|
docs: {},
|
|
};
|
|
|
|
export default config;
|
|
|
|
// Recommended for mono-repositories
|
|
function getAbsolutePath(value: string): any {
|
|
return dirname(require.resolve(join(value, "package.json")));
|
|
}
|