Skip to content

Commit 70957c0

Browse files
committed
fix: remove @storybook/addon-docs from builder dependency
w
1 parent 6399e79 commit 70957c0

File tree

19 files changed

+386
-48
lines changed

19 files changed

+386
-48
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
"cross-env": "^10.1.0",
3232
"jiti": "^2.6.1",
3333
"nano-staged": "^0.8.0",
34+
"path-serializer": "^0.5.1",
3435
"simple-git-hooks": "^2.13.1",
3536
"sort-package-json": "^2.15.1",
3637
"ts-dedent": "^2.2.0",

packages/builder-rsbuild/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@
6060
},
6161
"dependencies": {
6262
"@rsbuild/plugin-type-check": "^1.2.4",
63-
"@storybook/addon-docs": "^9.1.15 || ^10.0.0",
6463
"@storybook/core-webpack": "^9.1.15 || ^10.0.0",
6564
"browser-assert": "^1.2.1",
6665
"case-sensitive-paths-webpack-plugin": "^2.4.0",

packages/builder-rsbuild/src/preview/iframe-rsbuild.config.ts

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ import { dirname, join, resolve } from 'node:path'
22
import { loadConfig, mergeRsbuildConfig, rspack } from '@rsbuild/core'
33
import type { RsbuildConfig, Rspack } from '@rsbuild/core'
44
import { pluginTypeCheck } from '@rsbuild/plugin-type-check'
5-
// @ts-expect-error forced resolve from `dist/index.d.ts` by typesVersions.
6-
import { webpack as docsWebpack } from '@storybook/addon-docs/preset'
75
// @ts-expect-error (I removed this on purpose, because it's incorrect)
86
import CaseSensitivePathsPlugin from 'case-sensitive-paths-webpack-plugin'
97
import { pluginHtmlMinifierTerser } from 'rsbuild-plugin-html-minifier-terser'
@@ -60,7 +58,15 @@ export default async (
6058
): Promise<RsbuildConfig> => {
6159
const { rsbuildConfigPath, addonDocs } =
6260
await getBuilderOptions<BuilderOptions>(options)
63-
const appliedDocsWebpack = await docsWebpack({}, { ...options, ...addonDocs })
61+
const webpackConfigFromPresets =
62+
await options.presets.apply<Rspack.Configuration>('webpack', {}, options)
63+
64+
if (addonDocs) {
65+
console.warn(
66+
'`addonDocs` option is deprecated and will be removed in future versions. Please use `@storybook/addon-docs` option instead.',
67+
)
68+
}
69+
6470
const {
6571
outputDir = join('.', 'public'),
6672
quiet,
@@ -360,11 +366,11 @@ export default async (
360366
...lazyCompilationConfig,
361367
}
362368

363-
// TODO: manually call and apply `webpack` from @storybook/addon-docs
364-
// as it's a built-in logic for Storybook's official webpack and Vite builder.
365-
// we should remove this once we merge this into Storybook's repository
366-
// by defining builder plugin in @storybook/addon-docs/preset's source code
367-
return mergeConfig(config, extraWebpackConfig || {}, appliedDocsWebpack)
369+
return mergeConfig(
370+
config,
371+
extraWebpackConfig || {},
372+
webpackConfigFromPresets,
373+
)
368374
},
369375
htmlPlugin: {
370376
filename: 'iframe.html',

packages/builder-rsbuild/vitest.config.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { resolve } from 'node:path'
12
/* eslint-disable import/no-extraneous-dependencies */
23
import { defineConfig, mergeConfig } from 'vitest/config'
34
import { vitestCommonConfig } from '../../vitest.workspace'
@@ -6,6 +7,7 @@ export default mergeConfig(
67
vitestCommonConfig,
78
defineConfig({
89
test: {
10+
setupFiles: [resolve(__dirname, '../../vitest-setup.ts')],
911
environment: 'node',
1012
},
1113
}),

packages/framework-react/vitest.config.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { resolve } from 'node:path'
12
/* eslint-disable import/no-extraneous-dependencies */
23
import { defineConfig, mergeConfig } from 'vitest/config'
34
import { vitestCommonConfig } from '../../vitest.workspace'
@@ -6,6 +7,7 @@ export default mergeConfig(
67
vitestCommonConfig,
78
defineConfig({
89
test: {
10+
setupFiles: [resolve(__dirname, '../../vitest-setup.ts')],
911
environment: 'node',
1012
},
1113
}),

packages/framework-vue3/vitest.config.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { resolve } from 'node:path'
12
/* eslint-disable import/no-extraneous-dependencies */
23
import { defineConfig, mergeConfig } from 'vitest/config'
34
import { vitestCommonConfig } from '../../vitest.workspace'
@@ -6,6 +7,7 @@ export default mergeConfig(
67
vitestCommonConfig,
78
defineConfig({
89
test: {
10+
setupFiles: [resolve(__dirname, '../../vitest-setup.ts')],
911
environment: 'node',
1012
},
1113
}),

packages/framework-web-components/vitest.config.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { resolve } from 'node:path'
12
/* eslint-disable import/no-extraneous-dependencies */
23
import { defineConfig, mergeConfig } from 'vitest/config'
34
import { vitestCommonConfig } from '../../vitest.workspace'
@@ -6,6 +7,7 @@ export default mergeConfig(
67
vitestCommonConfig,
78
defineConfig({
89
test: {
10+
setupFiles: [resolve(__dirname, '../../vitest-setup.ts')],
911
environment: 'node',
1012
},
1113
}),

pnpm-lock.yaml

Lines changed: 11 additions & 31 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

sandboxes/react-16/.storybook/main.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { dirname, join } from 'node:path'
2+
import remarkGfm from 'remark-gfm'
23
import type { StorybookConfig } from 'storybook-react-rsbuild'
34

45
/**
@@ -13,7 +14,16 @@ const config: StorybookConfig = {
1314
stories: ['../src/**/*.mdx', '../src/**/*.stories.@(js|jsx|mjs|ts|tsx)'],
1415
addons: [
1516
'@storybook/addon-onboarding',
16-
'@storybook/addon-docs',
17+
{
18+
name: '@storybook/addon-docs',
19+
options: {
20+
mdxPluginOptions: {
21+
mdxCompileOptions: {
22+
remarkPlugins: [remarkGfm],
23+
},
24+
},
25+
},
26+
},
1727
'@chromatic-com/storybook',
1828
],
1929
framework: {

sandboxes/react-16/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
"@storybook/react": "9.1.10",
2626
"@types/react": "^16.14.67",
2727
"@types/react-dom": "^16.9.25",
28+
"remark-gfm": "^4.0.1",
2829
"storybook": "9.1.10",
2930
"storybook-react-rsbuild": "workspace:*",
3031
"typescript": "^5.9.3"

0 commit comments

Comments
 (0)