## Storybook flakyness ### Actor Display image flakyness <img width="1512" alt="image" src="https://github.com/user-attachments/assets/875c0738-5e31-4aba-9231-4ba5f78d1355" /> **Fix:** stop using a random usage ### Task Groups broken <img width="1512" alt="image" src="https://github.com/user-attachments/assets/c67e47a1-a027-43f1-9601-68d61a8052b4" /> **Fix:** add missing TabListComponentInstance ## Flaky dates Add https://github.com/k35o/storybook-addon-mock-date ## Integration tests Fix broken tests due to relation refactoring
72 lines
1.8 KiB
TypeScript
72 lines
1.8 KiB
TypeScript
import { StorybookConfig } from '@storybook/react-vite';
|
|
|
|
const computeStoriesGlob = () => {
|
|
if (process.env.STORYBOOK_SCOPE === 'pages') {
|
|
return [
|
|
'../src/pages/**/*.stories.@(js|jsx|ts|tsx)',
|
|
'../src/__stories__/*.stories.@(js|jsx|ts|tsx)',
|
|
'../src/pages/**/*.docs.mdx',
|
|
'../src/__stories__/*.docs.mdx',
|
|
];
|
|
}
|
|
|
|
if (process.env.STORYBOOK_SCOPE === 'modules') {
|
|
return [
|
|
'../src/modules/**/!(perf)/*.stories.@(js|jsx|ts|tsx)',
|
|
'../src/modules/**/*.docs.mdx',
|
|
];
|
|
}
|
|
|
|
if (process.env.STORYBOOK_SCOPE === 'performance') {
|
|
return ['../src/modules/**/perf/*.perf.stories.@(js|jsx|ts|tsx)'];
|
|
}
|
|
|
|
if (process.env.STORYBOOK_SCOPE === 'ui-docs') {
|
|
return ['../src/modules/ui/**/*.docs.mdx'];
|
|
}
|
|
|
|
return ['../src/**/*.docs.mdx', '../src/**/*.stories.@(js|jsx|ts|tsx)'];
|
|
};
|
|
|
|
const config: StorybookConfig = {
|
|
stories: computeStoriesGlob(),
|
|
staticDirs: ['../public'],
|
|
build: {
|
|
test: {
|
|
disabledAddons: [
|
|
'@storybook/addon-docs',
|
|
'@storybook/addon-essentials/docs',
|
|
],
|
|
},
|
|
},
|
|
addons: [
|
|
'@storybook/addon-links',
|
|
'@storybook/addon-essentials',
|
|
'@storybook/addon-onboarding',
|
|
'@storybook/addon-interactions',
|
|
'@storybook/addon-coverage',
|
|
'storybook-dark-mode',
|
|
'storybook-addon-cookie',
|
|
'storybook-addon-pseudo-states',
|
|
'storybook-addon-mock-date'
|
|
],
|
|
framework: {
|
|
name: '@storybook/react-vite',
|
|
options: {},
|
|
},
|
|
viteFinal: async (config) => {
|
|
// Merge custom configuration into the default config
|
|
const { mergeConfig } = await import('vite');
|
|
|
|
return mergeConfig(config, {
|
|
resolve: {
|
|
alias: {
|
|
'react-dom/client': 'react-dom/profiling',
|
|
},
|
|
},
|
|
});
|
|
},
|
|
logLevel: 'error',
|
|
};
|
|
export default config;
|