@storybook/builder-webpack5 10.2.10 → 10.2.12

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.
@@ -1,10 +1,10 @@
1
- import CJS_COMPAT_NODE_URL_3f7g8q7m9xk from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_3f7g8q7m9xk from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk from "node:module";
1
+ import CJS_COMPAT_NODE_URL_2w8dp3tfhb from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_2w8dp3tfhb from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_2w8dp3tfhb from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_3f7g8q7m9xk.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_3f7g8q7m9xk.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_2w8dp3tfhb.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_2w8dp3tfhb.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_2w8dp3tfhb.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
@@ -1,10 +1,10 @@
1
- import CJS_COMPAT_NODE_URL_3f7g8q7m9xk from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_3f7g8q7m9xk from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk from "node:module";
1
+ import CJS_COMPAT_NODE_URL_2w8dp3tfhb from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_2w8dp3tfhb from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_2w8dp3tfhb from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_3f7g8q7m9xk.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_3f7g8q7m9xk.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_2w8dp3tfhb.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_2w8dp3tfhb.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_2w8dp3tfhb.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
package/dist/index.js CHANGED
@@ -1,22 +1,22 @@
1
- import CJS_COMPAT_NODE_URL_3f7g8q7m9xk from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_3f7g8q7m9xk from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk from "node:module";
1
+ import CJS_COMPAT_NODE_URL_2w8dp3tfhb from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_2w8dp3tfhb from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_2w8dp3tfhb from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_3f7g8q7m9xk.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_3f7g8q7m9xk.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_2w8dp3tfhb.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_2w8dp3tfhb.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_2w8dp3tfhb.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
11
11
  // ------------------------------------------------------------
12
12
  import {
13
13
  getVirtualModules
14
- } from "./_node-chunks/chunk-TQMCB4XS.js";
14
+ } from "./_node-chunks/chunk-I7HAP7ML.js";
15
15
  import {
16
16
  __commonJS,
17
17
  __require,
18
18
  __toESM
19
- } from "./_node-chunks/chunk-4ZZH5LW2.js";
19
+ } from "./_node-chunks/chunk-YXJYOVIX.js";
20
20
 
21
21
  // ../../../node_modules/pretty-hrtime/index.js
22
22
  var require_pretty_hrtime = __commonJS({
@@ -1,15 +1,15 @@
1
- import CJS_COMPAT_NODE_URL_3f7g8q7m9xk from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_3f7g8q7m9xk from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk from "node:module";
1
+ import CJS_COMPAT_NODE_URL_2w8dp3tfhb from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_2w8dp3tfhb from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_2w8dp3tfhb from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_3f7g8q7m9xk.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_3f7g8q7m9xk.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_2w8dp3tfhb.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_2w8dp3tfhb.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_2w8dp3tfhb.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
11
11
  // ------------------------------------------------------------
12
- import "../_node-chunks/chunk-4ZZH5LW2.js";
12
+ import "../_node-chunks/chunk-YXJYOVIX.js";
13
13
 
14
14
  // src/loaders/export-order-loader.ts
15
15
  import assert from "node:assert";
@@ -1,15 +1,15 @@
1
- import CJS_COMPAT_NODE_URL_3f7g8q7m9xk from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_3f7g8q7m9xk from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk from "node:module";
1
+ import CJS_COMPAT_NODE_URL_2w8dp3tfhb from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_2w8dp3tfhb from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_2w8dp3tfhb from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_3f7g8q7m9xk.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_3f7g8q7m9xk.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_2w8dp3tfhb.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_2w8dp3tfhb.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_2w8dp3tfhb.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
11
11
  // ------------------------------------------------------------
12
- import "../_node-chunks/chunk-4ZZH5LW2.js";
12
+ import "../_node-chunks/chunk-YXJYOVIX.js";
13
13
 
14
14
  // src/loaders/storybook-mock-transform-loader.ts
15
15
  import { rewriteSbMockImportCalls } from "storybook/internal/mocking-utils";
@@ -1,15 +1,15 @@
1
- import CJS_COMPAT_NODE_URL_3f7g8q7m9xk from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_3f7g8q7m9xk from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk from "node:module";
1
+ import CJS_COMPAT_NODE_URL_2w8dp3tfhb from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_2w8dp3tfhb from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_2w8dp3tfhb from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_3f7g8q7m9xk.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_3f7g8q7m9xk.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_2w8dp3tfhb.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_2w8dp3tfhb.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_2w8dp3tfhb.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
11
11
  // ------------------------------------------------------------
12
- import "../_node-chunks/chunk-4ZZH5LW2.js";
12
+ import "../_node-chunks/chunk-YXJYOVIX.js";
13
13
 
14
14
  // src/loaders/webpack-automock-loader.ts
15
15
  import { babelParser, getAutomockCode } from "storybook/internal/mocking-utils";
@@ -1,28 +1,31 @@
1
- import CJS_COMPAT_NODE_URL_3f7g8q7m9xk from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_3f7g8q7m9xk from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk from "node:module";
1
+ import CJS_COMPAT_NODE_URL_2w8dp3tfhb from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_2w8dp3tfhb from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_2w8dp3tfhb from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_3f7g8q7m9xk.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_3f7g8q7m9xk.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_2w8dp3tfhb.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_2w8dp3tfhb.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_2w8dp3tfhb.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
11
11
  // ------------------------------------------------------------
12
12
  import {
13
13
  __require
14
- } from "../_node-chunks/chunk-4ZZH5LW2.js";
14
+ } from "../_node-chunks/chunk-YXJYOVIX.js";
15
15
 
16
16
  // src/presets/custom-webpack-preset.ts
17
17
  import { fileURLToPath as fileURLToPath3 } from "node:url";
18
18
  import { findConfigFile } from "storybook/internal/common";
19
- import { logger as logger2 } from "storybook/internal/node-logger";
19
+ import { logger as logger3 } from "storybook/internal/node-logger";
20
20
  import { loadCustomWebpackConfig } from "@storybook/core-webpack";
21
21
  import webpackModule from "webpack";
22
22
 
23
23
  // src/plugins/webpack-inject-mocker-runtime-plugin.ts
24
24
  import { getMockerRuntime } from "storybook/internal/mocking-utils";
25
25
  var PLUGIN_NAME = "WebpackInjectMockerRuntimePlugin", WebpackInjectMockerRuntimePlugin = class {
26
+ constructor() {
27
+ this.cachedRuntime = null;
28
+ }
26
29
  // We need to lazy-require HtmlWebpackPlugin because it's an optional peer dependency.
27
30
  getHtmlWebpackPlugin(compiler) {
28
31
  try {
@@ -46,11 +49,11 @@ var PLUGIN_NAME = "WebpackInjectMockerRuntimePlugin", WebpackInjectMockerRuntime
46
49
  PLUGIN_NAME,
47
50
  (data, cb) => {
48
51
  try {
49
- let runtimeScriptContent = getMockerRuntime(), runtimeAssetName = "mocker-runtime-injected.js";
50
- compilation.emitAsset(
52
+ let runtimeScriptContent = this.cachedRuntime ?? (this.cachedRuntime = getMockerRuntime()), runtimeAssetName = "mocker-runtime-injected.js";
53
+ compilation.getAsset(runtimeAssetName) || (compilation.emitAsset(
51
54
  runtimeAssetName,
52
55
  new compiler.webpack.sources.RawSource(runtimeScriptContent)
53
- ), data.assets.js.unshift(runtimeAssetName), cb(null, data);
56
+ ), data.assets.js.unshift(runtimeAssetName)), cb(null, data);
54
57
  } catch (error) {
55
58
  cb(error);
56
59
  }
@@ -71,9 +74,11 @@ import {
71
74
  resolveExternalModule,
72
75
  resolveWithExtensions
73
76
  } from "storybook/internal/mocking-utils";
77
+ import { logger } from "storybook/internal/node-logger";
74
78
  var PLUGIN_NAME2 = "storybook-mock-plugin", WebpackMockPlugin = class {
75
79
  constructor(options) {
76
80
  this.mockMap = /* @__PURE__ */ new Map();
81
+ this.candidateSpecifiers = /* @__PURE__ */ new Set();
77
82
  if (!options.previewConfigPath)
78
83
  throw new Error(`[${PLUGIN_NAME2}] \`previewConfigPath\` is required.`);
79
84
  this.options = options;
@@ -84,22 +89,29 @@ var PLUGIN_NAME2 = "storybook-mock-plugin", WebpackMockPlugin = class {
84
89
  * @param {Compiler} compiler The Webpack compiler instance.
85
90
  */
86
91
  apply(compiler) {
87
- let logger3 = compiler.getInfrastructureLogger(PLUGIN_NAME2), updateMocks = () => {
92
+ let updateMocks = () => {
93
+ let mTimePreviewConfig = this.getPreviewConfigMtime(compiler);
94
+ if (this.lastPreviewMtime && mTimePreviewConfig && mTimePreviewConfig <= this.lastPreviewMtime)
95
+ return;
96
+ let resolved = this.extractAndResolveMocks(compiler);
88
97
  this.mockMap = new Map(
89
- this.extractAndResolveMocks(compiler).flatMap((mock) => [
90
- // first one, full path
98
+ resolved.flatMap((mock) => [
91
99
  [mock.absolutePath, mock],
92
- // second one, without the extension
93
100
  [mock.absolutePath.replace(/\.[^.]+$/, ""), mock]
94
101
  ])
95
- ), logger3.info(`Mock map updated with ${this.mockMap.size / 2} mocks.`);
102
+ ), this.candidateSpecifiers = new Set(resolved.map((m) => m.path)), this.lastPreviewMtime = mTimePreviewConfig, resolved.length > 0 && logger.info(`Mock map updated with ${resolved.length} mocks.`);
96
103
  };
97
104
  compiler.hooks.beforeRun.tap(PLUGIN_NAME2, updateMocks), compiler.hooks.watchRun.tap(PLUGIN_NAME2, updateMocks), new compiler.webpack.NormalModuleReplacementPlugin(/.*/, (resource) => {
98
105
  try {
99
- let path = resource.request, importer = resource.context, absolutePath = getIsExternal(path, importer) ? resolveExternalModule(path, importer) : resolveWithExtensions(path, importer);
106
+ if (this.mockMap.size === 0)
107
+ return;
108
+ let path = resource.request, importer = resource.context, isExternal = getIsExternal(path, importer);
109
+ if (isExternal && !this.candidateSpecifiers.has(path))
110
+ return;
111
+ let absolutePath = isExternal ? resolveExternalModule(path, importer) : resolveWithExtensions(path, importer);
100
112
  this.mockMap.has(absolutePath) && (resource.request = this.mockMap.get(absolutePath).replacementResource);
101
113
  } catch {
102
- logger3.debug(`Could not resolve mock for "${resource.request}".`);
114
+ logger.debug(`Could not resolve mock for "${resource.request}".`);
103
115
  }
104
116
  }).apply(compiler), compiler.hooks.afterCompile.tap(PLUGIN_NAME2, (compilation) => {
105
117
  compilation.fileDependencies.add(this.options.previewConfigPath);
@@ -107,6 +119,13 @@ var PLUGIN_NAME2 = "storybook-mock-plugin", WebpackMockPlugin = class {
107
119
  isAbsolute(mock.replacementResource) && mock.replacementResource.includes("__mocks__") && compilation.contextDependencies.add(dirname(mock.replacementResource));
108
120
  });
109
121
  }
122
+ getPreviewConfigMtime(compiler) {
123
+ try {
124
+ return compiler.inputFileSystem.statSync?.(this.options.previewConfigPath)?.mtime?.getTime?.();
125
+ } catch {
126
+ return;
127
+ }
128
+ }
110
129
  /**
111
130
  * Reads the preview config, parses it to find all `sb.mock()` calls, and resolves their
112
131
  * corresponding mock implementations.
@@ -115,7 +134,7 @@ var PLUGIN_NAME2 = "storybook-mock-plugin", WebpackMockPlugin = class {
115
134
  * @returns {ResolvedMock[]} An array of fully processed mocks.
116
135
  */
117
136
  extractAndResolveMocks(compiler) {
118
- let { previewConfigPath } = this.options, logger3 = compiler.getInfrastructureLogger(PLUGIN_NAME2), mocks = extractMockCalls(
137
+ let { previewConfigPath } = this.options, logger4 = compiler.getInfrastructureLogger(PLUGIN_NAME2), mocks = extractMockCalls(
119
138
  { previewConfigPath, configDir: dirname(previewConfigPath) },
120
139
  babelParser,
121
140
  compiler.context,
@@ -131,7 +150,7 @@ var PLUGIN_NAME2 = "storybook-mock-plugin", WebpackMockPlugin = class {
131
150
  replacementResource
132
151
  });
133
152
  } catch {
134
- logger3.warn(`Could not resolve mock for "${mock.path}". It will be ignored.`);
153
+ logger4.warn(`Could not resolve mock for "${mock.path}". It will be ignored.`);
135
154
  }
136
155
  return resolvedMocks;
137
156
  }
@@ -139,7 +158,7 @@ var PLUGIN_NAME2 = "storybook-mock-plugin", WebpackMockPlugin = class {
139
158
 
140
159
  // src/preview/base-webpack.config.ts
141
160
  import { fileURLToPath as fileURLToPath2 } from "node:url";
142
- import { logger } from "storybook/internal/node-logger";
161
+ import { logger as logger2 } from "storybook/internal/node-logger";
143
162
  async function createDefaultWebpackConfig(storybookBaseConfig, options) {
144
163
  if (options.presetsList?.some(
145
164
  (preset) => /@storybook(\/|\\)preset-create-react-app/.test(
@@ -150,7 +169,7 @@ async function createDefaultWebpackConfig(storybookBaseConfig, options) {
150
169
  let hasPostcssAddon = options.presetsList?.some(
151
170
  (preset) => /@storybook(\/|\\)addon-postcss/.test(typeof preset == "string" ? preset : preset.name)
152
171
  ), cssLoaders = {};
153
- hasPostcssAddon || (logger.info("Using implicit CSS loaders"), cssLoaders = {
172
+ hasPostcssAddon || (logger2.info("Using implicit CSS loaders"), cssLoaders = {
154
173
  test: /\.css$/,
155
174
  sideEffects: !0,
156
175
  use: [
@@ -261,7 +280,7 @@ async function webpack(config, options) {
261
280
  let { configDir, configType, presets } = options, coreOptions = await presets.apply("core"), defaultConfig = config;
262
281
  coreOptions?.disableWebpackDefaults || (defaultConfig = await createDefaultWebpackConfig(config, options));
263
282
  let finalDefaultConfig = await presets.apply("webpackFinal", defaultConfig, options), customConfig = await loadCustomWebpackConfig(configDir);
264
- return typeof customConfig == "function" ? (logger2.info("Loading custom Webpack config (full-control mode)."), customConfig({ config: finalDefaultConfig, mode: configType })) : (logger2.info("Using default Webpack5 setup"), finalDefaultConfig);
283
+ return typeof customConfig == "function" ? (logger3.info("Loading custom Webpack config (full-control mode)."), customConfig({ config: finalDefaultConfig, mode: configType })) : (logger3.info("Using default Webpack5 setup"), finalDefaultConfig);
265
284
  }
266
285
  var webpackInstance = async () => webpackModule, webpackVersion = async () => "5";
267
286
  export {
@@ -1,18 +1,18 @@
1
- import CJS_COMPAT_NODE_URL_3f7g8q7m9xk from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_3f7g8q7m9xk from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk from "node:module";
1
+ import CJS_COMPAT_NODE_URL_2w8dp3tfhb from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_2w8dp3tfhb from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_2w8dp3tfhb from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_3f7g8q7m9xk.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_3f7g8q7m9xk.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_3f7g8q7m9xk.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_2w8dp3tfhb.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_2w8dp3tfhb.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_2w8dp3tfhb.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
11
11
  // ------------------------------------------------------------
12
12
  import {
13
13
  getVirtualModules
14
- } from "../_node-chunks/chunk-TQMCB4XS.js";
15
- import "../_node-chunks/chunk-4ZZH5LW2.js";
14
+ } from "../_node-chunks/chunk-I7HAP7ML.js";
15
+ import "../_node-chunks/chunk-YXJYOVIX.js";
16
16
 
17
17
  // src/presets/preview-preset.ts
18
18
  import { fileURLToPath as fileURLToPath2 } from "node:url";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/builder-webpack5",
3
- "version": "10.2.10",
3
+ "version": "10.2.12",
4
4
  "description": "A Storybook builder to dev and build with Webpack",
5
5
  "keywords": [
6
6
  "storybook",
@@ -51,7 +51,7 @@
51
51
  "!src/**/*"
52
52
  ],
53
53
  "dependencies": {
54
- "@storybook/core-webpack": "10.2.10",
54
+ "@storybook/core-webpack": "10.2.12",
55
55
  "case-sensitive-paths-webpack-plugin": "^2.4.0",
56
56
  "cjs-module-lexer": "^1.2.3",
57
57
  "css-loader": "^7.1.2",
@@ -77,7 +77,7 @@
77
77
  "typescript": "^5.9.3"
78
78
  },
79
79
  "peerDependencies": {
80
- "storybook": "^10.2.10"
80
+ "storybook": "^10.2.12"
81
81
  },
82
82
  "peerDependenciesMeta": {
83
83
  "typescript": {