@modern-js/storybook-builder 0.0.0-next-20230914071641 → 0.0.0-next-20231010141253

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,5 +2,5 @@
2
2
  > @modern-js/storybook-builder@2.31.2 build /home/runner/work/modern.js/modern.js/packages/storybook/builder
3
3
  > modern-lib build
4
4
 
5
- info Build succeed in 8.541s
6
- info Bundleless generated 51 files, the total size is 81.51 KB
5
+ info  Build succeed in 36.1s
6
+ info  Bundleless generated 51 files, the total size is 83.1 KB
package/CHANGELOG.md CHANGED
@@ -1,25 +1,29 @@
1
1
  # @modern-js/storybook-builder
2
2
 
3
- ## 0.0.0-next-20230914071641
3
+ ## 0.0.0-next-20231010141253
4
4
 
5
5
  ### Patch Changes
6
6
 
7
- - 366c3528a: feat: add storybook-framework
7
+ - 251535116: feat: add storybook-framework
8
8
  feat: 支持 storybook-framework
9
- - Updated dependencies [e2def6e3d]
10
- - Updated dependencies [8ed713c05]
11
- - Updated dependencies [225f065f4]
12
- - Updated dependencies [0300daf88]
13
- - Updated dependencies [f509548a1]
14
- - Updated dependencies [15b834f65]
15
- - Updated dependencies [28128ca6e]
16
- - Updated dependencies [d87a42600]
17
- - Updated dependencies [4027a6aba]
18
- - Updated dependencies [3d93e8114]
19
- - @modern-js/builder-rspack-provider@0.0.0-next-20230914071641
20
- - @modern-js/builder@0.0.0-next-20230914071641
21
- - @modern-js/builder-shared@0.0.0-next-20230914071641
22
- - @modern-js/utils@0.0.0-next-20230914071641
23
- - @modern-js/core@0.0.0-next-20230914071641
24
- - @modern-js/builder-webpack-provider@0.0.0-next-20230914071641
25
- - @modern-js/runtime@0.0.0-next-20230914071641
9
+ - Updated dependencies [4fbc386a3]
10
+ - Updated dependencies [3448e8208]
11
+ - Updated dependencies [3473beecd]
12
+ - Updated dependencies [b98f8aaf4]
13
+ - Updated dependencies [3921cd46f]
14
+ - Updated dependencies [d90d83a25]
15
+ - Updated dependencies [5c8991041]
16
+ - Updated dependencies [bc25bcbd3]
17
+ - Updated dependencies [c1b0d1805]
18
+ - Updated dependencies [2675812d3]
19
+ - Updated dependencies [9d37401f4]
20
+ - Updated dependencies [eb602d263]
21
+ - Updated dependencies [4e3310bbe]
22
+ - Updated dependencies [5b4bf2188]
23
+ - @modern-js/core@0.0.0-next-20231010141253
24
+ - @modern-js/builder@0.0.0-next-20231010141253
25
+ - @modern-js/utils@0.0.0-next-20231010141253
26
+ - @modern-js/builder-rspack-provider@0.0.0-next-20231010141253
27
+ - @modern-js/builder-webpack-provider@0.0.0-next-20231010141253
28
+ - @modern-js/builder-shared@0.0.0-next-20231010141253
29
+ - @modern-js/runtime@0.0.0-next-20231010141253
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -62,12 +63,14 @@ const resolvePlugins = (runtime) => {
62
63
  plugins.push((0, import_model.default)(runtime.state));
63
64
  }
64
65
  } else if (api === allowedRuntimeAPI.router) {
65
- plugins.push(
66
- (0, import_router.default)({
67
- ...{ serverBase: ["/"] },
68
- ...runtime.router
69
- })
70
- );
66
+ plugins.push((0, import_router.default)({
67
+ ...{
68
+ serverBase: [
69
+ "/"
70
+ ]
71
+ },
72
+ ...runtime.router
73
+ }));
71
74
  }
72
75
  }
73
76
  });
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -20,8 +21,8 @@ __export(addons_exports, {
20
21
  default: () => addons_default
21
22
  });
22
23
  module.exports = __toCommonJS(addons_exports);
23
- var _a;
24
- if ((_a = module == null ? void 0 : module.hot) == null ? void 0 : _a.decline) {
24
+ var _module_hot;
25
+ if (module === null || module === void 0 ? void 0 : (_module_hot = module.hot) === null || _module_hot === void 0 ? void 0 : _module_hot.decline) {
25
26
  module.hot.decline();
26
27
  }
27
28
  var addons_default = {};
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -21,7 +22,9 @@ __export(preview_exports, {
21
22
  });
22
23
  module.exports = __toCommonJS(preview_exports);
23
24
  var import_withPluginRuntime = require("../withPluginRuntime");
24
- const decorators = [import_withPluginRuntime.withPluginRuntime];
25
+ const decorators = [
26
+ import_withPluginRuntime.withPluginRuntime
27
+ ];
25
28
  // Annotate the CommonJS export names for ESM import in node:
26
29
  0 && (module.exports = {
27
30
  decorators
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -23,9 +24,7 @@ module.exports = __toCommonJS(withPluginRuntime_exports);
23
24
  var import_preview_api = require("@storybook/preview-api");
24
25
  var import_modern = require("./components/modern");
25
26
  const withPluginRuntime = (storyFn) => {
26
- const modernConfigRuntime = (0, import_preview_api.useParameter)(
27
- "modernConfigRuntime"
28
- );
27
+ const modernConfigRuntime = (0, import_preview_api.useParameter)("modernConfigRuntime");
29
28
  const modernConfigDesignToken = (0, import_preview_api.useParameter)("modernConfigDesignToken");
30
29
  return (0, import_modern.WrapProviders)(storyFn, {
31
30
  modernConfigRuntime: modernConfigRuntime || {},
package/dist/cjs/build.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -34,7 +35,7 @@ __export(build_exports, {
34
35
  });
35
36
  module.exports = __toCommonJS(build_exports);
36
37
  var import_path = require("path");
37
- var import_webpack_dev_middleware = __toESM(require("@modern-js/utils/webpack-dev-middleware"));
38
+ var import_webpack_dev_middleware = __toESM(require("@modern-js/builder-shared/webpack-dev-middleware"));
38
39
  var import_webpack_hot_middleware = __toESM(require("webpack-hot-middleware"));
39
40
  var import_serve_static = __toESM(require("serve-static"));
40
41
  var import_utils = require("@modern-js/utils");
@@ -43,14 +44,12 @@ var import_plugin_storybook = require("./plugin-storybook");
43
44
  const getConfig = async (options) => {
44
45
  const { presets } = options;
45
46
  const frameworkOptions = await presets.apply("frameworkOptions");
46
- return (frameworkOptions == null ? void 0 : frameworkOptions.options) || {};
47
+ return (frameworkOptions === null || frameworkOptions === void 0 ? void 0 : frameworkOptions.options) || {};
47
48
  };
48
49
  const build = async ({ options }) => {
49
50
  const config = await getConfig(options);
50
51
  const compiler = await (0, import_core.getCompiler)(process.cwd(), config, options);
51
- const previewResolvedDir = (0, import_path.dirname)(
52
- require.resolve("@storybook/preview/package.json")
53
- );
52
+ const previewResolvedDir = (0, import_path.dirname)(require.resolve("@storybook/preview/package.json"));
54
53
  const previewDirOrigin = (0, import_path.join)(previewResolvedDir, "dist");
55
54
  const previewDirTarget = (0, import_path.join)(options.outputDir || "", `sb-preview`);
56
55
  const previewFiles = import_utils.fs.copy(previewDirOrigin, previewDirTarget, {
@@ -71,22 +70,19 @@ const build = async ({ options }) => {
71
70
  }
72
71
  });
73
72
  });
74
- const [stats] = await Promise.all([compilation, previewFiles]);
73
+ const [stats] = await Promise.all([
74
+ compilation,
75
+ previewFiles
76
+ ]);
75
77
  return stats;
76
78
  };
77
- const start = async ({
78
- options,
79
- router,
80
- startTime
81
- }) => {
82
- const previewResolvedDir = (0, import_path.dirname)(
83
- require.resolve("@storybook/preview/package.json")
84
- );
79
+ const start = async ({ options, router, startTime }) => {
80
+ const previewResolvedDir = (0, import_path.dirname)(require.resolve("@storybook/preview/package.json"));
85
81
  const previewDirOrigin = (0, import_path.join)(previewResolvedDir, "dist");
86
- router.use(
87
- `/sb-preview`,
88
- (0, import_serve_static.default)(previewDirOrigin, { immutable: true, maxAge: "5m" })
89
- );
82
+ router.use(`/sb-preview`, (0, import_serve_static.default)(previewDirOrigin, {
83
+ immutable: true,
84
+ maxAge: "5m"
85
+ }));
90
86
  const config = await getConfig(options);
91
87
  const compiler = await (0, import_core.getCompiler)(process.cwd(), config, options);
92
88
  const middleware = (0, import_webpack_dev_middleware.default)(compiler, {
@@ -95,7 +91,9 @@ const start = async ({
95
91
  stats: false
96
92
  });
97
93
  router.use(middleware);
98
- router.use((0, import_webpack_hot_middleware.default)(compiler, { log: false }));
94
+ router.use((0, import_webpack_hot_middleware.default)(compiler, {
95
+ log: false
96
+ }));
99
97
  const stats = await new Promise((resolve) => {
100
98
  middleware.waitUntilValid((stats2) => {
101
99
  resolve(stats2);
package/dist/cjs/core.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -28,10 +29,7 @@ async function getCompiler(cwd, builderOptions, options) {
28
29
  const bundler = builderOptions.bundler || "webpack";
29
30
  const { presets } = options;
30
31
  const entries = await presets.apply("entries", []);
31
- const res = await (0, import_utils.runWithErrorMsg)(
32
- () => (0, import_core.loadConfig)(cwd, builderOptions.configPath || (0, import_utils.getConfigFileName)()),
33
- "Failed to load config"
34
- );
32
+ const res = await (0, import_utils.runWithErrorMsg)(() => (0, import_core.loadConfig)(cwd, builderOptions.configPath || (0, import_utils.getConfigFileName)()), "Failed to load config");
35
33
  const loadedConfig = res ? res.config : {};
36
34
  const otherBuilderConfig = await presets.apply("modern", loadedConfig) || {};
37
35
  const builderConfig = (0, import_builder.mergeBuilderConfig)(otherBuilderConfig, loadedConfig);
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -29,10 +30,7 @@ function actualNameHandler(documentation, path, importer) {
29
30
  let currentPath = path;
30
31
  while (currentPath.parent) {
31
32
  if (import_ast_types.namedTypes.VariableDeclarator.check(currentPath.parent.node)) {
32
- documentation.set(
33
- "actualName",
34
- (0, import_utils.getNameOrValue)(currentPath.parent.get("id"))
35
- );
33
+ documentation.set("actualName", (0, import_utils.getNameOrValue)(currentPath.parent.get("id")));
36
34
  return;
37
35
  }
38
36
  if (import_ast_types.namedTypes.AssignmentExpression.check(currentPath.parent.node)) {
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -33,10 +34,7 @@ __export(docgen_exports, {
33
34
  module.exports = __toCommonJS(docgen_exports);
34
35
  var import_utils = require("@modern-js/utils");
35
36
  async function applyDocgenWebpack(chain, options) {
36
- const typescriptOptions = await options.presets.apply(
37
- "typescript",
38
- {}
39
- );
37
+ const typescriptOptions = await options.presets.apply("typescript", {});
40
38
  const { reactDocgen, reactDocgenTypescriptOptions } = typescriptOptions || {};
41
39
  if (typeof reactDocgen !== "string") {
42
40
  return;
@@ -64,19 +62,19 @@ async function applyDocgenWebpack(chain, options) {
64
62
  }
65
63
  }
66
64
  async function applyDocgenRspack(config, options) {
67
- var _a, _b, _c;
65
+ var _config, _config_module;
68
66
  const typescriptOptions = await options.presets.apply("typescript", {});
69
67
  const { reactDocgen } = typescriptOptions || {};
70
68
  if (reactDocgen !== "react-docgen") {
71
69
  if (reactDocgen !== false && reactDocgen !== void 0) {
72
- import_utils.logger.warn(
73
- `Rspack currently only support 'typescript.reactDocgen: react-docgen' for auto docs generation, but you specified ${reactDocgen}`
74
- );
70
+ import_utils.logger.warn(`Rspack currently only support 'typescript.reactDocgen: react-docgen' for auto docs generation, but you specified ${reactDocgen}`);
75
71
  }
76
72
  return;
77
73
  }
78
- (_a = config.module) != null ? _a : config.module = {};
79
- (_c = (_b = config.module).rules) != null ? _c : _b.rules = [];
74
+ var _module;
75
+ (_module = (_config = config).module) !== null && _module !== void 0 ? _module : _config.module = {};
76
+ var _rules;
77
+ (_rules = (_config_module = config.module).rules) !== null && _rules !== void 0 ? _rules : _config_module.rules = [];
80
78
  config.module.rules.push({
81
79
  test: /\.(tsx?|jsx?)$/,
82
80
  exclude: /node_modules/,
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -34,21 +35,15 @@ var import_react_docgen = require("react-docgen");
34
35
  var import_actualNameHandler = __toESM(require("./actualNameHandler"));
35
36
  const defaultHandlers = Object.values(import_react_docgen.handlers).map((handler) => handler);
36
37
  const importer = import_react_docgen.importers.makeFsImporter();
37
- var process_default = ({
38
- source,
39
- map,
40
- filename
41
- }) => {
38
+ var process_default = ({ source, map, filename }) => {
42
39
  try {
43
- const results = (0, import_react_docgen.parse)(
44
- source,
45
- import_react_docgen.resolver.findAllExportedComponentDefinitions,
46
- [...defaultHandlers, import_actualNameHandler.default],
47
- {
48
- filename,
49
- importer
50
- }
51
- );
40
+ const results = (0, import_react_docgen.parse)(source, import_react_docgen.resolver.findAllExportedComponentDefinitions, [
41
+ ...defaultHandlers,
42
+ import_actualNameHandler.default
43
+ ], {
44
+ filename,
45
+ importer
46
+ });
52
47
  const docgen = results.map((result) => {
53
48
  const { actualName, ...docgenInfo } = result;
54
49
  if (actualName) {
@@ -56,7 +51,10 @@ var process_default = ({
56
51
  }
57
52
  return "";
58
53
  }).filter(Boolean).join(";");
59
- return [docgen, map];
54
+ return [
55
+ docgen,
56
+ map
57
+ ];
60
58
  } catch (e) {
61
59
  return null;
62
60
  }
package/dist/cjs/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -28,7 +29,9 @@ module.exports = __toCommonJS(src_exports);
28
29
  var import_path = require("path");
29
30
  var import_build = require("./build");
30
31
  __reExport(src_exports, require("./types"), module.exports);
31
- const corePresets = [(0, import_path.join)(__dirname, "./preset.js")];
32
+ const corePresets = [
33
+ (0, import_path.join)(__dirname, "./preset.js")
34
+ ];
32
35
  // Annotate the CommonJS export names for ESM import in node:
33
36
  0 && (module.exports = {
34
37
  bail,
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -47,18 +48,18 @@ const onClose = (f) => {
47
48
  closeFn.push(f);
48
49
  };
49
50
  async function finalize() {
50
- await Promise.all([closeFn.map((close) => close())]);
51
+ await Promise.all([
52
+ closeFn.map((close) => close())
53
+ ]);
51
54
  }
52
55
  const pluginStorybook = (cwd, options) => {
53
56
  return {
54
57
  name: "builder-plugin-storybook",
55
- remove: ["builder-plugin-inline"],
58
+ remove: [
59
+ "builder-plugin-inline"
60
+ ],
56
61
  async setup(api) {
57
- const matchers = await options.presets.apply(
58
- "stories",
59
- [],
60
- options
61
- );
62
+ const matchers = await options.presets.apply("stories", [], options);
62
63
  const storyPatterns = (0, import_core_common.normalizeStories)(matchers, {
63
64
  configDir: options.configDir,
64
65
  workingDir: options.configDir
@@ -68,21 +69,16 @@ const pluginStorybook = (cwd, options) => {
68
69
  return absolutePattern;
69
70
  });
70
71
  api.modifyBuilderConfig(async (builderConfig) => {
71
- await prepareStorybookModules(
72
- api.context.cachePath,
73
- cwd,
74
- options,
75
- builderConfig,
76
- storyPatterns
77
- );
72
+ await prepareStorybookModules(api.context.cachePath, cwd, options, builderConfig, storyPatterns);
78
73
  await applyDefines(builderConfig, options);
79
74
  await applyHTML(builderConfig, options);
80
75
  await applyReact(builderConfig, options);
81
76
  applyExternals(builderConfig);
82
77
  });
83
78
  const modifyConfig = async (config) => {
84
- var _a;
85
- (_a = config.resolve) != null ? _a : config.resolve = {};
79
+ var _config;
80
+ var _resolve;
81
+ (_resolve = (_config = config).resolve) !== null && _resolve !== void 0 ? _resolve : _config.resolve = {};
86
82
  config.resolve.conditionNames = [
87
83
  "require",
88
84
  "node",
@@ -107,23 +103,22 @@ const pluginStorybook = (cwd, options) => {
107
103
  };
108
104
  };
109
105
  async function applyCsfPlugin(config, options) {
110
- var _a, _b, _c;
106
+ var _addons_find;
107
+ var _config;
111
108
  const { presets } = options;
112
109
  const addons = await presets.apply("addons", []);
113
- const {
114
- options: { bundler }
115
- } = await presets.apply("frameworkOptions");
116
- const docsOptions = (
117
- // @ts-expect-error - not sure what type to use here
118
- (_b = (_a = addons.find((a) => [a, a.name].includes("@storybook/addon-docs"))) == null ? void 0 : _a.options) != null ? _b : {}
119
- );
120
- (_c = config.plugins) != null ? _c : config.plugins = [];
121
- config.plugins.push(
122
- bundler === "rspack" ? import_csf_plugin.unplugin.rspack(docsOptions) : import_csf_plugin.unplugin.webpack(docsOptions)
123
- );
110
+ const { options: { bundler } } = await presets.apply("frameworkOptions");
111
+ var _addons_find_options;
112
+ const docsOptions = (_addons_find_options = (_addons_find = addons.find((a) => [
113
+ a,
114
+ a.name
115
+ ].includes("@storybook/addon-docs"))) === null || _addons_find === void 0 ? void 0 : _addons_find.options) !== null && _addons_find_options !== void 0 ? _addons_find_options : {};
116
+ var _plugins;
117
+ (_plugins = (_config = config).plugins) !== null && _plugins !== void 0 ? _plugins : _config.plugins = [];
118
+ config.plugins.push(bundler === "rspack" ? import_csf_plugin.unplugin.rspack(docsOptions) : import_csf_plugin.unplugin.webpack(docsOptions));
124
119
  }
125
120
  async function prepareStorybookModules(tempDir, cwd, options, builderConfig, storyPatterns) {
126
- var _a;
121
+ var _builderConfig;
127
122
  const mappings = await createStorybookModules(cwd, options, storyPatterns);
128
123
  const componentsPath = (0, import_utils2.maybeGetAbsolutePath)(`@storybook/components`);
129
124
  const routerPath = (0, import_utils2.maybeGetAbsolutePath)(`@storybook/router`);
@@ -132,26 +127,34 @@ async function prepareStorybookModules(tempDir, cwd, options, builderConfig, sto
132
127
  ...componentsPath ? {
133
128
  [`@storybook/components`]: componentsPath
134
129
  } : {},
135
- ...routerPath ? { [`@storybook/router`]: routerPath } : {},
136
- ...themingPath ? { [`@storybook/theming`]: themingPath } : {}
130
+ ...routerPath ? {
131
+ [`@storybook/router`]: routerPath
132
+ } : {},
133
+ ...themingPath ? {
134
+ [`@storybook/theming`]: themingPath
135
+ } : {}
137
136
  };
138
137
  const [mappingsAlias, write] = await (0, import_utils2.virtualModule)(tempDir, cwd, mappings);
139
- (_a = builderConfig.source) != null ? _a : builderConfig.source = {};
138
+ var _source;
139
+ (_source = (_builderConfig = builderConfig).source) !== null && _source !== void 0 ? _source : _builderConfig.source = {};
140
140
  builderConfig.source.alias = {
141
141
  ...builderConfig.source.alias,
142
142
  ...storybookPaths,
143
143
  ...mappingsAlias
144
144
  };
145
- const watcher = await watchStories(storyPatterns, cwd, write);
146
- onClose(async () => {
147
- await watcher.close();
148
- });
145
+ if ((0, import_utils2.isDev)()) {
146
+ const watcher = await watchStories(storyPatterns, cwd, write);
147
+ onClose(async () => {
148
+ await watcher.close();
149
+ });
150
+ }
149
151
  }
150
152
  async function applyDefines(builderConfig, options) {
151
- var _a;
153
+ var _builderConfig;
152
154
  const { presets } = options;
153
155
  const envs = await presets.apply("env");
154
- (_a = builderConfig.source) != null ? _a : builderConfig.source = {};
156
+ var _source;
157
+ (_source = (_builderConfig = builderConfig).source) !== null && _source !== void 0 ? _source : _builderConfig.source = {};
155
158
  builderConfig.source.define = {
156
159
  ...builderConfig.source.define,
157
160
  ...(0, import_core_common.stringifyProcessEnvs)(envs),
@@ -160,24 +163,9 @@ async function applyDefines(builderConfig, options) {
160
163
  };
161
164
  }
162
165
  async function applyHTML(builderConfig, options) {
163
- var _a;
164
- const {
165
- presets,
166
- packageJson,
167
- configType,
168
- features,
169
- previewUrl,
170
- serverChannelUrl
171
- } = options;
172
- const [
173
- coreOptions,
174
- frameworkOptions,
175
- logLevel,
176
- headHtmlSnippet,
177
- bodyHtmlSnippet,
178
- template,
179
- docsOptions
180
- ] = await Promise.all([
166
+ var _builderConfig;
167
+ const { presets, packageJson, configType, features, previewUrl, serverChannelUrl } = options;
168
+ const [coreOptions, frameworkOptions, logLevel, headHtmlSnippet, bodyHtmlSnippet, template, docsOptions] = await Promise.all([
181
169
  presets.apply("core"),
182
170
  presets.apply("frameworkOptions"),
183
171
  presets.apply("logLevel", void 0),
@@ -186,16 +174,14 @@ async function applyHTML(builderConfig, options) {
186
174
  presets.apply("previewMainTemplate"),
187
175
  presets.apply("docs")
188
176
  ]);
189
- (_a = builderConfig.tools) != null ? _a : builderConfig.tools = {};
177
+ var _tools;
178
+ (_tools = (_builderConfig = builderConfig).tools) !== null && _tools !== void 0 ? _tools : _builderConfig.tools = {};
190
179
  builderConfig.tools.htmlPlugin = {
191
180
  ...builderConfig.tools.htmlPlugin,
192
181
  template,
193
182
  filename: "iframe.html",
194
183
  templateParameters: {
195
- ...builderConfig.tools.htmlPlugin ? (
196
- // @ts-expect-error
197
- builderConfig.tools.htmlPlugin.templateParameters || {}
198
- ) : {},
184
+ ...builderConfig.tools.htmlPlugin ? builderConfig.tools.htmlPlugin.templateParameters || {} : {},
199
185
  version: packageJson.version || "",
200
186
  globals: {
201
187
  CONFIG_TYPE: configType,
@@ -214,65 +200,63 @@ async function applyHTML(builderConfig, options) {
214
200
  };
215
201
  }
216
202
  async function applyMdxLoader(config, options) {
217
- var _a, _b, _c, _d, _e, _f;
203
+ var _mdxPluginOptions_mdxCompileOptions, _options_features;
204
+ var _config, _config_module;
218
205
  const { presets, mdxPluginOptions } = options;
219
206
  const remarkExternalLinks = await Promise.resolve().then(() => __toESM(require("remark-external-links")));
220
207
  const remarkSlug = await Promise.resolve().then(() => __toESM(require("remark-slug")));
208
+ var _mdxPluginOptions_mdxCompileOptions_remarkPlugins;
221
209
  const mdxLoaderOptions = await presets.apply("mdxLoaderOptions", {
222
210
  skipCsf: true,
223
211
  mdxCompileOptions: {
224
212
  providerImportSource: "@storybook/addon-docs/mdx-react-shim",
225
- ...mdxPluginOptions == null ? void 0 : mdxPluginOptions.mdxCompileOptions,
213
+ ...mdxPluginOptions === null || mdxPluginOptions === void 0 ? void 0 : mdxPluginOptions.mdxCompileOptions,
226
214
  remarkPlugins: [
227
215
  remarkSlug,
228
216
  remarkExternalLinks,
229
- ...(_b = (_a = mdxPluginOptions == null ? void 0 : mdxPluginOptions.mdxCompileOptions) == null ? void 0 : _a.remarkPlugins) != null ? _b : []
217
+ ...(_mdxPluginOptions_mdxCompileOptions_remarkPlugins = mdxPluginOptions === null || mdxPluginOptions === void 0 ? void 0 : (_mdxPluginOptions_mdxCompileOptions = mdxPluginOptions.mdxCompileOptions) === null || _mdxPluginOptions_mdxCompileOptions === void 0 ? void 0 : _mdxPluginOptions_mdxCompileOptions.remarkPlugins) !== null && _mdxPluginOptions_mdxCompileOptions_remarkPlugins !== void 0 ? _mdxPluginOptions_mdxCompileOptions_remarkPlugins : []
230
218
  ]
231
219
  }
232
220
  });
233
- const mdxLoader = ((_c = options.features) == null ? void 0 : _c.legacyMdx1) ? require.resolve("@storybook/mdx1-csf/loader") : require.resolve("@storybook/mdx2-csf/loader");
234
- (_d = config.module) != null ? _d : config.module = {};
235
- (_f = (_e = config.module).rules) != null ? _f : _e.rules = [];
236
- config.module.rules.push(
237
- {
238
- test: /(stories|story)\.mdx$/,
239
- use: [
240
- {
241
- loader: mdxLoader,
242
- options: {
243
- ...mdxLoaderOptions,
244
- skipCsf: false
245
- }
221
+ const mdxLoader = ((_options_features = options.features) === null || _options_features === void 0 ? void 0 : _options_features.legacyMdx1) ? require.resolve("@storybook/mdx1-csf/loader") : require.resolve("@storybook/mdx2-csf/loader");
222
+ var _module;
223
+ (_module = (_config = config).module) !== null && _module !== void 0 ? _module : _config.module = {};
224
+ var _rules;
225
+ (_rules = (_config_module = config.module).rules) !== null && _rules !== void 0 ? _rules : _config_module.rules = [];
226
+ config.module.rules.push({
227
+ test: /(stories|story)\.mdx$/,
228
+ use: [
229
+ {
230
+ loader: mdxLoader,
231
+ options: {
232
+ ...mdxLoaderOptions,
233
+ skipCsf: false
246
234
  }
247
- ]
248
- },
249
- {
250
- test: /\.mdx$/,
251
- exclude: /(stories|story)\.mdx$/,
252
- use: [
253
- {
254
- loader: mdxLoader,
255
- options: mdxLoaderOptions
256
- }
257
- ]
258
- }
259
- );
260
- }
261
- function applyExternals(builderConfig) {
262
- var _a;
263
- const config = (0, import_builder_shared.mergeBuilderConfig)(
264
- {
265
- output: {
266
- ...builderConfig.output,
267
- externals: (_a = builderConfig.output) == null ? void 0 : _a.externals
268
235
  }
269
- },
270
- {
271
- output: {
272
- externals: import_globals.globals
236
+ ]
237
+ }, {
238
+ test: /\.mdx$/,
239
+ exclude: /(stories|story)\.mdx$/,
240
+ use: [
241
+ {
242
+ loader: mdxLoader,
243
+ options: mdxLoaderOptions
273
244
  }
245
+ ]
246
+ });
247
+ }
248
+ function applyExternals(builderConfig) {
249
+ var _builderConfig_output;
250
+ const config = (0, import_builder_shared.mergeBuilderConfig)({
251
+ output: {
252
+ ...builderConfig.output,
253
+ externals: (_builderConfig_output = builderConfig.output) === null || _builderConfig_output === void 0 ? void 0 : _builderConfig_output.externals
254
+ }
255
+ }, {
256
+ output: {
257
+ externals: import_globals.globals
274
258
  }
275
- );
259
+ });
276
260
  builderConfig.output = config.output;
277
261
  }
278
262
  function getStoriesEntryPath(cwd) {
@@ -288,11 +272,7 @@ async function createStorybookModules(cwd, options, storyPatterns) {
288
272
  virtualModuleMappings[getStoriesEntryPath(cwd)] = storiesEntry;
289
273
  const configEntryPath = getStoriesConfigPath(cwd);
290
274
  const previewAnnotations = [
291
- ...(await presets.apply(
292
- "previewAnnotations",
293
- [],
294
- options
295
- )).map((entry) => {
275
+ ...(await presets.apply("previewAnnotations", [], options)).map((entry) => {
296
276
  if (typeof entry === "object") {
297
277
  return entry.absolute;
298
278
  }
@@ -300,62 +280,55 @@ async function createStorybookModules(cwd, options, storyPatterns) {
300
280
  }),
301
281
  (0, import_core_common.loadPreviewOrConfigFile)(options)
302
282
  ].filter(Boolean);
303
- virtualModuleMappings[configEntryPath] = (0, import_core_common.handlebars)(
304
- await (0, import_core_common.readTemplate)(
305
- require.resolve("@modern-js/storybook-builder/templates/virtualModuleModernEntry.js.handlebars")
306
- ),
307
- {
308
- storiesFilename: STORIES_FILENAME,
309
- previewAnnotations
310
- }
311
- ).replace(/\\/g, "\\\\");
283
+ virtualModuleMappings[configEntryPath] = (0, import_core_common.handlebars)(await (0, import_core_common.readTemplate)(require.resolve("@modern-js/storybook-builder/templates/virtualModuleModernEntry.js.handlebars")), {
284
+ storiesFilename: STORIES_FILENAME,
285
+ previewAnnotations
286
+ }).replace(/\\/g, "\\\\");
312
287
  return virtualModuleMappings;
313
288
  }
314
289
  async function createStoriesEntry(cwd, storyPatterns) {
315
- const stories = (await Promise.all(
316
- storyPatterns.map((pattern) => {
317
- return (0, import_utils.globby)((0, import_utils.slash)(pattern), { followSymbolicLinks: true });
318
- })
319
- )).reduce((carry, stories2) => carry.concat(stories2), []);
290
+ const stories = (await Promise.all(storyPatterns.map((pattern) => {
291
+ return (0, import_utils.globby)((0, import_utils.slash)(pattern), {
292
+ followSymbolicLinks: true
293
+ });
294
+ }))).reduce((carry, stories2) => carry.concat(stories2), []);
320
295
  return await (0, import_utils2.toImportFn)(cwd, stories);
321
296
  }
322
297
  async function applyReact(config, options) {
323
- var _a, _b, _c;
324
298
  let version = "18.0.0";
325
299
  try {
326
300
  ({ version } = await Promise.resolve().then(() => __toESM(require("react-dom/package.json"))));
327
301
  } catch (_) {
328
302
  }
329
- const { legacyRootApi } = await options.presets.apply(
330
- "frameworkOptions"
331
- ) || {};
303
+ const { legacyRootApi } = await options.presets.apply("frameworkOptions") || {};
332
304
  const isReact18 = version.startsWith("18") || version.startsWith("0.0.0");
333
- const useReact17 = legacyRootApi != null ? legacyRootApi : !isReact18;
305
+ const useReact17 = legacyRootApi !== null && legacyRootApi !== void 0 ? legacyRootApi : !isReact18;
334
306
  if (!useReact17) {
335
- (_a = config.source) != null ? _a : config.source = {};
336
- (_c = (_b = config.source).alias) != null ? _c : _b.alias = {};
307
+ var _config, _config_source;
308
+ var _source;
309
+ (_source = (_config = config).source) !== null && _source !== void 0 ? _source : _config.source = {};
310
+ var _alias;
311
+ (_alias = (_config_source = config.source).alias) !== null && _alias !== void 0 ? _alias : _config_source.alias = {};
337
312
  config.source.alias["@storybook/react-dom-shim"] = "@storybook/react-dom-shim/dist/react-18";
338
313
  }
339
314
  }
340
315
  async function watchStories(patterns, cwd, writeModule) {
341
- const watcher = (0, import_utils.watch)(
342
- cwd,
343
- async ({ changeType, changedFilePath }) => {
344
- if (changeType !== "add" && changeType !== "unlink") {
345
- return;
346
- }
347
- if (patterns.some((entry) => (0, import_minimatch.minimatch)(changedFilePath, entry))) {
348
- const stories = (await Promise.all(
349
- patterns.map((pattern) => {
350
- return (0, import_utils.globby)((0, import_utils.slash)(pattern), { followSymbolicLinks: true });
351
- })
352
- )).reduce((carry, stories2) => carry.concat(stories2), []);
353
- const newStories = await (0, import_utils2.toImportFn)(cwd, stories);
354
- writeModule(getStoriesEntryPath(cwd), newStories);
355
- }
356
- },
357
- [/node_modules/]
358
- );
316
+ const watcher = (0, import_utils.watch)(cwd, async ({ changeType, changedFilePath }) => {
317
+ if (changeType !== "add" && changeType !== "unlink") {
318
+ return;
319
+ }
320
+ if (patterns.some((entry) => (0, import_minimatch.minimatch)(changedFilePath, entry))) {
321
+ const stories = (await Promise.all(patterns.map((pattern) => {
322
+ return (0, import_utils.globby)((0, import_utils.slash)(pattern), {
323
+ followSymbolicLinks: true
324
+ });
325
+ }))).reduce((carry, stories2) => carry.concat(stories2), []);
326
+ const newStories = await (0, import_utils2.toImportFn)(cwd, stories);
327
+ writeModule(getStoriesEntryPath(cwd), newStories);
328
+ }
329
+ }, [
330
+ /node_modules/
331
+ ]);
359
332
  return watcher;
360
333
  }
361
334
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -45,25 +46,23 @@ const entries = async (_, options) => {
45
46
  const result = [];
46
47
  const { bundler } = await (0, import_build.getConfig)(options);
47
48
  if (options.configType === "DEVELOPMENT") {
48
- result.push(
49
- ...[
50
- `${require.resolve("webpack-hot-middleware/client")}?reload=true&quiet=false&noInfo=${options.quiet}`,
51
- bundler === "rspack" ? require.resolve("@rspack/dev-client/react-refresh-entry") : null
52
- ].filter(Boolean)
53
- );
49
+ result.push(...[
50
+ `${require.resolve("webpack-hot-middleware/client")}?reload=true&quiet=false&noInfo=${options.quiet}`,
51
+ bundler === "rspack" ? require.resolve("@rspack/dev-client/react-refresh-entry") : null
52
+ ].filter(Boolean));
54
53
  }
55
54
  result.push(getStoriesConfigPath(process.cwd()));
56
55
  return result;
57
56
  };
58
57
  const modern = (builderConfig, options) => {
59
- var _a;
58
+ var _builderConfig_output;
60
59
  return {
61
60
  ...builderConfig,
62
61
  output: {
63
62
  ...builderConfig.output,
64
63
  disableInlineRuntimeChunk: true,
65
64
  distPath: {
66
- ...(_a = builderConfig.output) == null ? void 0 : _a.distPath,
65
+ ...(_builderConfig_output = builderConfig.output) === null || _builderConfig_output === void 0 ? void 0 : _builderConfig_output.distPath,
67
66
  root: options.outputDir
68
67
  }
69
68
  }
package/dist/cjs/types.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
package/dist/cjs/utils.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -48,8 +49,8 @@ const VIRTUAL_MODULE_BASE = ".MODERN_STORYBOOK";
48
49
  const STORIES_FILENAME = "storybook-stories.js";
49
50
  const STORYBOOK_CONFIG_ENTRY = "storybook-config-entry.js";
50
51
  const requireResolve = (importer, path2) => {
51
- const require2 = (0, import_node_module.createRequire)(importer);
52
- require2.resolve(path2);
52
+ const require1 = (0, import_node_module.createRequire)(importer);
53
+ require1.resolve(path2);
53
54
  };
54
55
  async function getProvider(bundler, builderConfig) {
55
56
  try {
@@ -65,23 +66,19 @@ async function getProvider(bundler, builderConfig) {
65
66
  });
66
67
  }
67
68
  } catch (e) {
68
- import_utils.logger.error(
69
- `Cannot find provider, you need to install @modern-js/builder-${bundler}-provider first`
70
- );
69
+ import_utils.logger.error(`Cannot find provider, you need to install @modern-js/builder-${bundler}-provider first`);
71
70
  }
72
71
  }
73
72
  async function virtualModule(tempDir, cwd, virtualModuleMap) {
74
73
  import_utils.fs.ensureDirSync(tempDir);
75
74
  const alias = {};
76
- await Promise.all(
77
- Reflect.ownKeys(virtualModuleMap).map((k) => {
78
- const virtualPath = k;
79
- const relativePath = import_path.default.relative(cwd, virtualPath);
80
- const realPath = import_path.default.join(tempDir, relativePath);
81
- alias[virtualPath] = realPath;
82
- return import_utils.fs.writeFile(realPath, virtualModuleMap[virtualPath]);
83
- })
84
- );
75
+ await Promise.all(Reflect.ownKeys(virtualModuleMap).map((k) => {
76
+ const virtualPath = k;
77
+ const relativePath = import_path.default.relative(cwd, virtualPath);
78
+ const realPath = import_path.default.join(tempDir, relativePath);
79
+ alias[virtualPath] = realPath;
80
+ return import_utils.fs.writeFile(realPath, virtualModuleMap[virtualPath]);
81
+ }));
85
82
  return [
86
83
  alias,
87
84
  (virtualPath, content) => {
@@ -95,10 +92,14 @@ async function toImportFn(cwd, stories) {
95
92
  const objectEntries = stories.map((file) => {
96
93
  const ext = import_path.default.extname(file);
97
94
  const relativePath = import_path.default.relative(cwd, file);
98
- if (![".js", ".jsx", ".ts", ".tsx", ".mdx"].includes(ext)) {
99
- import_utils.logger.warn(
100
- `Cannot process ${ext} file with storyStoreV7: ${relativePath}`
101
- );
95
+ if (![
96
+ ".js",
97
+ ".jsx",
98
+ ".ts",
99
+ ".tsx",
100
+ ".mdx"
101
+ ].includes(ext)) {
102
+ import_utils.logger.warn(`Cannot process ${ext} file with storyStoreV7: ${relativePath}`);
102
103
  }
103
104
  return ` '${toImportPath(relativePath)}': async () => import('${file}')`;
104
105
  });
package/dist/esm/build.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { dirname, join, parse } from "path";
2
- import webpackDevMiddleware from "@modern-js/utils/webpack-dev-middleware";
2
+ import webpackDevMiddleware from "@modern-js/builder-shared/webpack-dev-middleware";
3
3
  import webpackHotMiddleware from "webpack-hot-middleware";
4
4
  import serveStatic from "serve-static";
5
5
  import { fs } from "@modern-js/utils";
@@ -13,7 +13,12 @@ import {
13
13
  import { globals } from "@storybook/preview/globals";
14
14
  import { unplugin as csfPlugin } from "@storybook/csf-plugin";
15
15
  import { minimatch } from "minimatch";
16
- import { toImportFn, virtualModule, maybeGetAbsolutePath } from "./utils";
16
+ import {
17
+ toImportFn,
18
+ virtualModule,
19
+ maybeGetAbsolutePath,
20
+ isDev
21
+ } from "./utils";
17
22
  import { applyDocgenRspack, applyDocgenWebpack } from "./docgen";
18
23
  const STORIES_FILENAME = "storybook-stories.js";
19
24
  const STORYBOOK_CONFIG_ENTRY = "storybook-config-entry.js";
@@ -117,10 +122,12 @@ async function prepareStorybookModules(tempDir, cwd, options, builderConfig, sto
117
122
  ...storybookPaths,
118
123
  ...mappingsAlias
119
124
  };
120
- const watcher = await watchStories(storyPatterns, cwd, write);
121
- onClose(async () => {
122
- await watcher.close();
123
- });
125
+ if (isDev()) {
126
+ const watcher = await watchStories(storyPatterns, cwd, write);
127
+ onClose(async () => {
128
+ await watcher.close();
129
+ });
130
+ }
124
131
  }
125
132
  async function applyDefines(builderConfig, options) {
126
133
  var _a;
@@ -1,4 +1,4 @@
1
1
  import type { Options } from '@storybook/types';
2
- import type { Compiler } from '@modern-js/utils/webpack-dev-middleware';
2
+ import type { Compiler } from '@modern-js/builder-shared/webpack-dev-middleware';
3
3
  import type { BuilderOptions } from './types';
4
4
  export declare function getCompiler(cwd: string, builderOptions: BuilderOptions, options: Options): Promise<Compiler>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@modern-js/storybook-builder",
3
- "version": "0.0.0-next-20230914071641",
3
+ "version": "0.0.0-next-20231010141253",
4
4
  "description": "modern.js support for storybook",
5
5
  "repository": {
6
6
  "type": "git",
@@ -35,17 +35,17 @@
35
35
  "license": "MIT",
36
36
  "dependencies": {
37
37
  "@rspack/dev-client": "0.3.2",
38
- "@storybook/components": "^7.4.0",
39
- "@storybook/core-common": "^7.4.0",
40
- "@storybook/csf-plugin": "^7.4.0",
38
+ "@storybook/components": "^7.4.6",
39
+ "@storybook/core-common": "^7.4.6",
40
+ "@storybook/csf-plugin": "^7.4.6",
41
41
  "@storybook/global": "^5.0.0",
42
42
  "@storybook/mdx1-csf": "^1.0.0",
43
43
  "@storybook/mdx2-csf": "^1.1.0",
44
- "@storybook/preview": "^7.4.0",
45
- "@storybook/preview-api": "^7.4.0",
44
+ "@storybook/preview": "^7.4.6",
45
+ "@storybook/preview-api": "^7.4.6",
46
46
  "@storybook/react-docgen-typescript-plugin": "1.0.6--canary.9.0c3f3b7.0",
47
- "@storybook/router": "^7.4.0",
48
- "@storybook/theming": "^7.4.0",
47
+ "@storybook/router": "^7.4.6",
48
+ "@storybook/theming": "^7.4.6",
49
49
  "ast-types": "^0.14.2",
50
50
  "minimatch": "^9.0.3",
51
51
  "react-docgen": "6.0.0-alpha.3",
@@ -54,26 +54,26 @@
54
54
  "serve-static": "^1.14.1",
55
55
  "tinypool": "^0.8.0",
56
56
  "webpack-hot-middleware": "^2.25.4",
57
- "@modern-js/builder": "0.0.0-next-20230914071641",
58
- "@modern-js/builder-shared": "0.0.0-next-20230914071641",
59
- "@modern-js/core": "0.0.0-next-20230914071641",
60
- "@modern-js/runtime": "0.0.0-next-20230914071641",
61
- "@modern-js/utils": "0.0.0-next-20230914071641"
57
+ "@modern-js/builder": "0.0.0-next-20231010141253",
58
+ "@modern-js/builder-shared": "0.0.0-next-20231010141253",
59
+ "@modern-js/core": "0.0.0-next-20231010141253",
60
+ "@modern-js/runtime": "0.0.0-next-20231010141253",
61
+ "@modern-js/utils": "0.0.0-next-20231010141253"
62
62
  },
63
63
  "devDependencies": {
64
- "@storybook/types": "^7.4.0",
64
+ "@storybook/types": "^7.4.6",
65
65
  "@types/babel__core": "^7.20.1",
66
66
  "@types/serve-static": "^1.13.10",
67
67
  "@types/webpack-hot-middleware": "^2.25.6",
68
68
  "typescript": "^5.2.2",
69
- "@modern-js/builder-rspack-provider": "0.0.0-next-20230914071641",
70
- "@modern-js/builder-webpack-provider": "0.0.0-next-20230914071641",
71
- "@modern-js/core": "0.0.0-next-20230914071641",
72
- "@scripts/build": "0.0.0-next-20230914071641"
69
+ "@modern-js/builder-rspack-provider": "0.0.0-next-20231010141253",
70
+ "@modern-js/builder-webpack-provider": "0.0.0-next-20231010141253",
71
+ "@modern-js/core": "0.0.0-next-20231010141253",
72
+ "@scripts/build": "0.0.0-next-20231010141253"
73
73
  },
74
74
  "peerDependencies": {
75
- "@modern-js/builder-rspack-provider": "0.0.0-next-20230914071641",
76
- "@modern-js/builder-webpack-provider": "0.0.0-next-20230914071641"
75
+ "@modern-js/builder-rspack-provider": "0.0.0-next-20231010141253",
76
+ "@modern-js/builder-webpack-provider": "0.0.0-next-20231010141253"
77
77
  },
78
78
  "peerDependenciesMeta": {
79
79
  "@modern-js/builder-rspack-provider": {
package/src/build.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { dirname, join, parse } from 'path';
2
- import webpackDevMiddleware from '@modern-js/utils/webpack-dev-middleware';
2
+ import webpackDevMiddleware from '@modern-js/builder-shared/webpack-dev-middleware';
3
3
  import webpackHotMiddleware from 'webpack-hot-middleware';
4
4
  import serveStatic from 'serve-static';
5
5
  import type { Builder as RawStorybookBuilder, Stats } from '@storybook/types';
package/src/core.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { createBuilder, mergeBuilderConfig } from '@modern-js/builder';
2
2
  import { loadConfig } from '@modern-js/core';
3
3
  import type { Options } from '@storybook/types';
4
- import type { Compiler } from '@modern-js/utils/webpack-dev-middleware';
4
+ import type { Compiler } from '@modern-js/builder-shared/webpack-dev-middleware';
5
5
  import type { BuilderConfig, BuilderOptions } from './types';
6
6
  import { getConfigFileName, getProvider, runWithErrorMsg } from './utils';
7
7
  import { pluginStorybook } from './plugin-storybook';
@@ -34,7 +34,12 @@ import type {
34
34
  import { unplugin as csfPlugin } from '@storybook/csf-plugin';
35
35
  import { minimatch } from 'minimatch';
36
36
  import { AllBuilderConfig, BuilderOptions } from './types';
37
- import { toImportFn, virtualModule, maybeGetAbsolutePath } from './utils';
37
+ import {
38
+ toImportFn,
39
+ virtualModule,
40
+ maybeGetAbsolutePath,
41
+ isDev,
42
+ } from './utils';
38
43
  import { applyDocgenRspack, applyDocgenWebpack } from './docgen';
39
44
 
40
45
  const STORIES_FILENAME = 'storybook-stories.js';
@@ -187,10 +192,12 @@ async function prepareStorybookModules(
187
192
  ...mappingsAlias,
188
193
  };
189
194
 
190
- const watcher = await watchStories(storyPatterns, cwd, write);
191
- onClose(async () => {
192
- await watcher.close();
193
- });
195
+ if (isDev()) {
196
+ const watcher = await watchStories(storyPatterns, cwd, write);
197
+ onClose(async () => {
198
+ await watcher.close();
199
+ });
200
+ }
194
201
  }
195
202
 
196
203
  async function applyDefines(builderConfig: AllBuilderConfig, options: Options) {