36 lines
1.0 KiB
TypeScript
36 lines
1.0 KiB
TypeScript
|
|
import path from 'path'
|
||
|
|
import { fileURLToPath } from 'url'
|
||
|
|
import type { StorybookConfig } from '@storybook/nextjs-vite'
|
||
|
|
|
||
|
|
const dirname = path.dirname(fileURLToPath(import.meta.url))
|
||
|
|
|
||
|
|
const config: StorybookConfig = {
|
||
|
|
stories: [
|
||
|
|
'../src/**/*.mdx',
|
||
|
|
'../src/**/*.stories.@(js|jsx|mjs|ts|tsx)',
|
||
|
|
],
|
||
|
|
addons: [
|
||
|
|
'@chromatic-com/storybook',
|
||
|
|
'@storybook/addon-vitest',
|
||
|
|
'@storybook/addon-a11y',
|
||
|
|
'@storybook/addon-docs',
|
||
|
|
],
|
||
|
|
framework: '@storybook/nextjs-vite',
|
||
|
|
staticDirs: ['../public'],
|
||
|
|
viteFinal: async (config) => {
|
||
|
|
config.resolve ??= {}
|
||
|
|
config.resolve.alias = {
|
||
|
|
...(config.resolve.alias as Record<string, string>),
|
||
|
|
'$shared': path.resolve(dirname, '../src/shared'),
|
||
|
|
'$entities': path.resolve(dirname, '../src/entities'),
|
||
|
|
'$features': path.resolve(dirname, '../src/features'),
|
||
|
|
'$widgets': path.resolve(dirname, '../src/widgets'),
|
||
|
|
'$app': path.resolve(dirname, '../src/app'),
|
||
|
|
'$routes': path.resolve(dirname, '../src/routes'),
|
||
|
|
}
|
||
|
|
return config
|
||
|
|
},
|
||
|
|
}
|
||
|
|
|
||
|
|
export default config
|