@storybook/addon-docs 10.2.0-alpha.11 → 10.2.0-alpha.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_du1w453572b from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_du1w453572b from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_du1w453572b from "node:module";
1
+ import CJS_COMPAT_NODE_URL_6lq0jpn8693 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_6lq0jpn8693 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_6lq0jpn8693 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_du1w453572b.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_du1w453572b.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_6lq0jpn8693.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_6lq0jpn8693.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_6lq0jpn8693.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_du1w453572b from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_du1w453572b from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_du1w453572b from "node:module";
1
+ import CJS_COMPAT_NODE_URL_6lq0jpn8693 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_6lq0jpn8693 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_6lq0jpn8693 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_du1w453572b.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_du1w453572b.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_6lq0jpn8693.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_6lq0jpn8693.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_6lq0jpn8693.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_du1w453572b from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_du1w453572b from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_du1w453572b from "node:module";
1
+ import CJS_COMPAT_NODE_URL_6lq0jpn8693 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_6lq0jpn8693 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_6lq0jpn8693 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_du1w453572b.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_du1w453572b.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_6lq0jpn8693.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_6lq0jpn8693.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_6lq0jpn8693.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
@@ -12,15 +12,15 @@ var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
12
12
  import {
13
13
  esm_default,
14
14
  stringify
15
- } from "./chunk-Y4IITIMB.js";
15
+ } from "./chunk-YTDSWWEL.js";
16
16
  import {
17
17
  visit
18
- } from "./chunk-SJV55AIH.js";
18
+ } from "./chunk-O6AMDDRF.js";
19
19
  import {
20
20
  __commonJS,
21
21
  __export,
22
22
  __toESM
23
- } from "./chunk-ZJ6IRKKW.js";
23
+ } from "./chunk-LIBJVSIL.js";
24
24
 
25
25
  // ../../../node_modules/@mdx-js/mdx/node_modules/acorn-jsx/xhtml.js
26
26
  var require_xhtml = __commonJS({
@@ -1,10 +1,10 @@
1
- import CJS_COMPAT_NODE_URL_du1w453572b from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_du1w453572b from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_du1w453572b from "node:module";
1
+ import CJS_COMPAT_NODE_URL_6lq0jpn8693 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_6lq0jpn8693 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_6lq0jpn8693 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_du1w453572b.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_du1w453572b.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_6lq0jpn8693.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_6lq0jpn8693.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_6lq0jpn8693.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
@@ -1,23 +1,23 @@
1
- import CJS_COMPAT_NODE_URL_du1w453572b from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_du1w453572b from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_du1w453572b from "node:module";
1
+ import CJS_COMPAT_NODE_URL_6lq0jpn8693 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_6lq0jpn8693 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_6lq0jpn8693 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_du1w453572b.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_du1w453572b.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_6lq0jpn8693.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_6lq0jpn8693.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_6lq0jpn8693.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
  compile
14
- } from "./chunk-NOW6VVBN.js";
15
- import "./chunk-Y4IITIMB.js";
16
- import "./chunk-SJV55AIH.js";
14
+ } from "./chunk-OF3UTVLY.js";
15
+ import "./chunk-YTDSWWEL.js";
16
+ import "./chunk-O6AMDDRF.js";
17
17
  import {
18
18
  __commonJS,
19
19
  __toESM
20
- } from "./chunk-ZJ6IRKKW.js";
20
+ } from "./chunk-LIBJVSIL.js";
21
21
 
22
22
  // ../../../node_modules/@rollup/pluginutils/node_modules/picomatch/lib/constants.js
23
23
  var require_constants = __commonJS({
@@ -1000,7 +1000,7 @@ var hasStringIsWellFormed = "isWellFormed" in String.prototype;
1000
1000
 
1001
1001
  // src/mdx-plugin.ts
1002
1002
  async function mdxPlugin(options) {
1003
- let filter = createFilter(/\.mdx$/), { presets } = options, mdxPluginOptions = (await presets.apply("options", {}))?.mdxPluginOptions, rehypeSlug = (await import("./rehype-slug-CSR3JM6D.js")).default, rehypeExternalLinks = (await import("./rehype-external-links-NXMQRRUD.js")).default;
1003
+ let filter = createFilter(/\.mdx$/), { presets } = options, mdxPluginOptions = (await presets.apply("options", {}))?.mdxPluginOptions, rehypeSlug = (await import("./rehype-slug-7F5NTZL3.js")).default, rehypeExternalLinks = (await import("./rehype-external-links-2YTHDLMZ.js")).default;
1004
1004
  return {
1005
1005
  name: "storybook:mdx-plugin",
1006
1006
  enforce: "pre",
@@ -1,10 +1,10 @@
1
- import CJS_COMPAT_NODE_URL_du1w453572b from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_du1w453572b from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_du1w453572b from "node:module";
1
+ import CJS_COMPAT_NODE_URL_6lq0jpn8693 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_6lq0jpn8693 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_6lq0jpn8693 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_du1w453572b.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_du1w453572b.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_6lq0jpn8693.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_6lq0jpn8693.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_6lq0jpn8693.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
@@ -12,11 +12,11 @@ var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
12
12
  import {
13
13
  esm_default,
14
14
  parse
15
- } from "./chunk-Y4IITIMB.js";
15
+ } from "./chunk-YTDSWWEL.js";
16
16
  import {
17
17
  visit
18
- } from "./chunk-SJV55AIH.js";
19
- import "./chunk-ZJ6IRKKW.js";
18
+ } from "./chunk-O6AMDDRF.js";
19
+ import "./chunk-LIBJVSIL.js";
20
20
 
21
21
  // ../../../node_modules/hast-util-is-element/lib/index.js
22
22
  var convertElement = (
@@ -1,18 +1,18 @@
1
- import CJS_COMPAT_NODE_URL_du1w453572b from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_du1w453572b from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_du1w453572b from "node:module";
1
+ import CJS_COMPAT_NODE_URL_6lq0jpn8693 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_6lq0jpn8693 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_6lq0jpn8693 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_du1w453572b.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_du1w453572b.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_6lq0jpn8693.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_6lq0jpn8693.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_6lq0jpn8693.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
  visit
14
- } from "./chunk-SJV55AIH.js";
15
- import "./chunk-ZJ6IRKKW.js";
14
+ } from "./chunk-O6AMDDRF.js";
15
+ import "./chunk-LIBJVSIL.js";
16
16
 
17
17
  // ../../../node_modules/github-slugger/regex.js
18
18
  var regex = /[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\u9FFD-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7CB-\uA7F4\uA828-\uA82B\uA82D-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDE7F\uDEAA\uDEAD-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD48-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC62-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD44-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD83E[\uDC00-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g;
package/dist/blocks.js CHANGED
@@ -4039,9 +4039,17 @@ var getBlockBackgroundStyle = (theme) => ({
4039
4039
 
4040
4040
  // src/blocks/components/Story.tsx
4041
4041
  import React27, { useEffect as useEffect9, useRef as useRef5, useState as useState12 } from "react";
4042
- import { ErrorFormatter, Loader, getStoryHref } from "storybook/internal/components";
4042
+ import { ErrorFormatter, Loader } from "storybook/internal/components";
4043
4043
  import { styled as styled20 } from "storybook/theming";
4044
4044
 
4045
+ // src/blocks/getStoryHref.ts
4046
+ var getStoryHref = (storyId, additionalParams = {}) => {
4047
+ let baseUrl = globalThis.PREVIEW_URL || "iframe.html", [url, paramsStr] = baseUrl.split("?"), params = new URLSearchParams(paramsStr || "");
4048
+ return Object.entries(additionalParams).forEach(([key, value2]) => {
4049
+ params.set(key, value2);
4050
+ }), params.set("id", storyId), `${url}?${params.toString()}`;
4051
+ };
4052
+
4045
4053
  // src/blocks/components/IFrame.tsx
4046
4054
  import React26, { Component as Component3 } from "react";
4047
4055
  var { window: globalWindow2 } = globalThis, IFrame = class extends Component3 {
@@ -4088,7 +4096,7 @@ var ZoomContext = createContext2({
4088
4096
  });
4089
4097
 
4090
4098
  // src/blocks/components/Story.tsx
4091
- var { PREVIEW_URL } = globalThis, BASE_URL = PREVIEW_URL || "iframe.html", storyBlockIdFromId = ({ story, primary }) => `story--${story.id}${primary ? "--primary" : ""}`, InlineStory = (props) => {
4099
+ var storyBlockIdFromId = ({ story, primary }) => `story--${story.id}${primary ? "--primary" : ""}`, InlineStory = (props) => {
4092
4100
  let storyRef = useRef5(), [showLoader, setShowLoader] = useState12(!0), [error, setError] = useState12(), { story, height, autoplay, forceInitialArgs, renderStoryToElement } = props;
4093
4101
  return useEffect9(() => {
4094
4102
  if (!(story && storyRef.current))
@@ -4117,7 +4125,7 @@ var { PREVIEW_URL } = globalThis, BASE_URL = PREVIEW_URL || "iframe.html", story
4117
4125
  key: "iframe",
4118
4126
  id: `iframe--${story.id}`,
4119
4127
  title: story.name,
4120
- src: getStoryHref(BASE_URL, story.id, { viewMode: "story" }),
4128
+ src: getStoryHref(story.id, { viewMode: "story" }),
4121
4129
  allowFullScreen: !0,
4122
4130
  scale,
4123
4131
  style: {
@@ -4135,7 +4143,7 @@ var { PREVIEW_URL } = globalThis, BASE_URL = PREVIEW_URL || "iframe.html", story
4135
4143
 
4136
4144
  // src/blocks/components/Toolbar.tsx
4137
4145
  import React28 from "react";
4138
- import { Button as Button6, Toolbar as SharedToolbar, getStoryHref as getStoryHref2 } from "storybook/internal/components";
4146
+ import { Button as Button6, Toolbar as SharedToolbar } from "storybook/internal/components";
4139
4147
  import { ShareAltIcon, ZoomIcon, ZoomOutIcon, ZoomResetIcon } from "@storybook/icons";
4140
4148
  import { styled as styled21 } from "storybook/theming";
4141
4149
  var AbsoluteBar = styled21(SharedToolbar)({
@@ -4157,14 +4165,7 @@ var AbsoluteBar = styled21(SharedToolbar)({
4157
4165
  margin: "0 7px",
4158
4166
  backgroundColor: theme.appBorderColor,
4159
4167
  animation: `${theme.animation.glow} 1.5s ease-in-out infinite`
4160
- })), Toolbar = ({
4161
- isLoading,
4162
- storyId,
4163
- baseUrl,
4164
- zoom,
4165
- resetZoom,
4166
- ...rest
4167
- }) => React28.createElement(AbsoluteBar, { innerStyle: { gap: 4, paddingInline: 7, justifyContent: "space-between" }, ...rest }, React28.createElement(Wrapper7, { key: "left" }, isLoading ? [1, 2, 3].map((key) => React28.createElement(IconPlaceholder, { key })) : React28.createElement(React28.Fragment, null, React28.createElement(
4168
+ })), Toolbar = ({ isLoading, storyId, zoom, resetZoom, ...rest }) => React28.createElement(AbsoluteBar, { innerStyle: { gap: 4, paddingInline: 7, justifyContent: "space-between" }, ...rest }, React28.createElement(Wrapper7, { key: "left" }, isLoading ? [1, 2, 3].map((key) => React28.createElement(IconPlaceholder, { key })) : React28.createElement(React28.Fragment, null, React28.createElement(
4168
4169
  Button6,
4169
4170
  {
4170
4171
  padding: "small",
@@ -4200,7 +4201,7 @@ var AbsoluteBar = styled21(SharedToolbar)({
4200
4201
  ariaLabel: "Reset zoom"
4201
4202
  },
4202
4203
  React28.createElement(ZoomResetIcon, null)
4203
- ))), isLoading ? React28.createElement(Wrapper7, { key: "right" }, React28.createElement(IconPlaceholder, null)) : baseUrl && storyId && React28.createElement(Wrapper7, { key: "right" }, React28.createElement(
4204
+ ))), isLoading ? React28.createElement(Wrapper7, { key: "right" }, React28.createElement(IconPlaceholder, null)) : storyId && React28.createElement(Wrapper7, { key: "right" }, React28.createElement(
4204
4205
  Button6,
4205
4206
  {
4206
4207
  asChild: !0,
@@ -4209,7 +4210,7 @@ var AbsoluteBar = styled21(SharedToolbar)({
4209
4210
  key: "opener",
4210
4211
  ariaLabel: "Open canvas in new tab"
4211
4212
  },
4212
- React28.createElement("a", { href: getStoryHref2(baseUrl, storyId), target: "_blank", rel: "noopener noreferrer" }, React28.createElement(ShareAltIcon, null))
4213
+ React28.createElement("a", { href: getStoryHref(storyId), target: "_blank", rel: "noopener noreferrer" }, React28.createElement(ShareAltIcon, null))
4213
4214
  )));
4214
4215
 
4215
4216
  // src/blocks/components/Preview.tsx
@@ -4370,8 +4371,7 @@ var PositionedToolbar = styled22(Toolbar)({
4370
4371
  border: !0,
4371
4372
  zoom: (z2) => setScale(scale * z2),
4372
4373
  resetZoom: () => setScale(1),
4373
- storyId: !isLoading && childProps ? getStoryId(childProps, context) : void 0,
4374
- baseUrl: "./iframe.html"
4374
+ storyId: !isLoading && childProps ? getStoryId(childProps, context) : void 0
4375
4375
  }
4376
4376
  ),
4377
4377
  React29.createElement(ZoomContext.Provider, { value: { scale } }, React29.createElement(Relative, { className: "docs-story", onCopyCapture: withSource && onCopyCapture }, React29.createElement(
@@ -6503,7 +6503,8 @@ var useGlobals = (story, context) => {
6503
6503
 
6504
6504
  // src/blocks/blocks/usePrimaryStory.ts
6505
6505
  import { useContext as useContext6 } from "react";
6506
- var usePrimaryStory = () => useContext6(DocsContext).componentStories().find((story) => story.tags.includes("autodocs"));
6506
+ import { Tag } from "storybook/internal/preview-api";
6507
+ var usePrimaryStory = () => useContext6(DocsContext).componentStories().find((story) => story.tags.includes(Tag.AUTODOCS));
6507
6508
 
6508
6509
  // src/blocks/blocks/Controls.tsx
6509
6510
  function extractComponentArgTypes2(component, parameters) {
@@ -6912,6 +6913,7 @@ var Primary = () => {
6912
6913
 
6913
6914
  // src/blocks/blocks/Stories.tsx
6914
6915
  import React49, { useContext as useContext9 } from "react";
6916
+ import { Tag as Tag2 } from "storybook/internal/preview-api";
6915
6917
  import { styled as styled29 } from "storybook/theming";
6916
6918
  var StyledHeading = styled29(Heading2)(({ theme }) => ({
6917
6919
  fontSize: `${theme.typography.size.s2 - 1}px`,
@@ -6928,7 +6930,7 @@ var StyledHeading = styled29(Heading2)(({ theme }) => ({
6928
6930
  }
6929
6931
  })), Stories = ({ title = "Stories", includePrimary = !0 }) => {
6930
6932
  let { componentStories, projectAnnotations, getStoryContext } = useContext9(DocsContext), stories = componentStories(), { stories: { filter } = { filter: void 0 } } = projectAnnotations.parameters?.docs || {};
6931
- return filter && (stories = stories.filter((story) => filter(story, getStoryContext(story)))), stories.some((story) => story.tags?.includes("autodocs")) && (stories = stories.filter((story) => story.tags?.includes("autodocs") && !story.usesMount)), includePrimary || (stories = stories.slice(1)), !stories || stories.length === 0 ? null : React49.createElement(React49.Fragment, null, typeof title == "string" ? React49.createElement(StyledHeading, null, title) : title, stories.map(
6933
+ return filter && (stories = stories.filter((story) => filter(story, getStoryContext(story)))), stories.some((story) => story.tags?.includes(Tag2.AUTODOCS)) && (stories = stories.filter((story) => story.tags?.includes(Tag2.AUTODOCS) && !story.usesMount)), includePrimary || (stories = stories.slice(1)), !stories || stories.length === 0 ? null : React49.createElement(React49.Fragment, null, typeof title == "string" ? React49.createElement(StyledHeading, null, title) : title, stories.map(
6932
6934
  (story) => story && React49.createElement(DocsStory, { key: story.id, of: story.moduleExport, expanded: !0, __forceInitialArgs: !0 })
6933
6935
  ));
6934
6936
  };
@@ -1,20 +1,20 @@
1
- import CJS_COMPAT_NODE_URL_du1w453572b from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_du1w453572b from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_du1w453572b from "node:module";
1
+ import CJS_COMPAT_NODE_URL_6lq0jpn8693 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_6lq0jpn8693 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_6lq0jpn8693 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_du1w453572b.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_du1w453572b.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_6lq0jpn8693.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_6lq0jpn8693.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_6lq0jpn8693.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
  compile
14
- } from "./_node-chunks/chunk-NOW6VVBN.js";
15
- import "./_node-chunks/chunk-Y4IITIMB.js";
16
- import "./_node-chunks/chunk-SJV55AIH.js";
17
- import "./_node-chunks/chunk-ZJ6IRKKW.js";
14
+ } from "./_node-chunks/chunk-OF3UTVLY.js";
15
+ import "./_node-chunks/chunk-YTDSWWEL.js";
16
+ import "./_node-chunks/chunk-O6AMDDRF.js";
17
+ import "./_node-chunks/chunk-LIBJVSIL.js";
18
18
 
19
19
  // src/mdx-loader.ts
20
20
  var DEFAULT_RENDERER = `
package/dist/preset.js CHANGED
@@ -1,20 +1,20 @@
1
- import CJS_COMPAT_NODE_URL_du1w453572b from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_du1w453572b from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_du1w453572b from "node:module";
1
+ import CJS_COMPAT_NODE_URL_6lq0jpn8693 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_6lq0jpn8693 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_6lq0jpn8693 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_du1w453572b.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_du1w453572b.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_du1w453572b.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_6lq0jpn8693.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_6lq0jpn8693.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_6lq0jpn8693.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-ZJ6IRKKW.js";
12
+ import "./_node-chunks/chunk-LIBJVSIL.js";
13
13
 
14
14
  // src/preset.ts
15
15
  import { isAbsolute as isAbsolute2 } from "node:path";
16
16
  import { fileURLToPath as fileURLToPath2 } from "node:url";
17
- import { logger } from "storybook/internal/node-logger";
17
+ import { logger as logger2 } from "storybook/internal/node-logger";
18
18
 
19
19
  // ../../core/src/shared/utils/module.ts
20
20
  import { fileURLToPath, pathToFileURL } from "node:url";
@@ -149,12 +149,12 @@ function normalizeWindowsPath(input = "") {
149
149
  return input && input.replace(/\\/g, "/").replace(_DRIVE_LETTER_START_RE, (r) => r.toUpperCase());
150
150
  }
151
151
  var _UNC_REGEX = /^[/\\]{2}/, _IS_ABSOLUTE_RE = /^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/, _DRIVE_LETTER_RE = /^[A-Za-z]:$/;
152
- var normalize = function(path2) {
153
- if (path2.length === 0)
152
+ var normalize = function(path3) {
153
+ if (path3.length === 0)
154
154
  return ".";
155
- path2 = normalizeWindowsPath(path2);
156
- let isUNCPath = path2.match(_UNC_REGEX), isPathAbsolute = isAbsolute(path2), trailingSeparator = path2[path2.length - 1] === "/";
157
- return path2 = normalizeString(path2, !isPathAbsolute), path2.length === 0 ? isPathAbsolute ? "/" : trailingSeparator ? "./" : "." : (trailingSeparator && (path2 += "/"), _DRIVE_LETTER_RE.test(path2) && (path2 += "/"), isUNCPath ? isPathAbsolute ? `//${path2}` : `//./${path2}` : isPathAbsolute && !isAbsolute(path2) ? `/${path2}` : path2);
155
+ path3 = normalizeWindowsPath(path3);
156
+ let isUNCPath = path3.match(_UNC_REGEX), isPathAbsolute = isAbsolute(path3), trailingSeparator = path3[path3.length - 1] === "/";
157
+ return path3 = normalizeString(path3, !isPathAbsolute), path3.length === 0 ? isPathAbsolute ? "/" : trailingSeparator ? "./" : "." : (trailingSeparator && (path3 += "/"), _DRIVE_LETTER_RE.test(path3) && (path3 += "/"), isUNCPath ? isPathAbsolute ? `//${path3}` : `//./${path3}` : isPathAbsolute && !isAbsolute(path3) ? `/${path3}` : path3);
158
158
  }, join = function(...arguments_) {
159
159
  if (arguments_.length === 0)
160
160
  return ".";
@@ -163,11 +163,11 @@ var normalize = function(path2) {
163
163
  argument && argument.length > 0 && (joined === void 0 ? joined = argument : joined += `/${argument}`);
164
164
  return joined === void 0 ? "." : normalize(joined.replace(/\/\/+/g, "/"));
165
165
  };
166
- function normalizeString(path2, allowAboveRoot) {
166
+ function normalizeString(path3, allowAboveRoot) {
167
167
  let res = "", lastSegmentLength = 0, lastSlash = -1, dots = 0, char = null;
168
- for (let index = 0; index <= path2.length; ++index) {
169
- if (index < path2.length)
170
- char = path2[index];
168
+ for (let index = 0; index <= path3.length; ++index) {
169
+ if (index < path3.length)
170
+ char = path3[index];
171
171
  else {
172
172
  if (char === "/")
173
173
  break;
@@ -187,7 +187,7 @@ function normalizeString(path2, allowAboveRoot) {
187
187
  }
188
188
  allowAboveRoot && (res += res.length > 0 ? "/.." : "..", lastSegmentLength = 2);
189
189
  } else
190
- res.length > 0 ? res += `/${path2.slice(lastSlash + 1, index)}` : res = path2.slice(lastSlash + 1, index), lastSegmentLength = index - lastSlash - 1;
190
+ res.length > 0 ? res += `/${path3.slice(lastSlash + 1, index)}` : res = path3.slice(lastSlash + 1, index), lastSegmentLength = index - lastSlash - 1;
191
191
  lastSlash = index, dots = 0;
192
192
  } else char === "." && dots !== -1 ? ++dots : dots = -1;
193
193
  }
@@ -212,6 +212,84 @@ var importMetaResolve = (...args) => typeof import.meta.resolve != "function" &&
212
212
  }
213
213
  };
214
214
 
215
+ // src/manifest.ts
216
+ import * as fs from "node:fs/promises";
217
+ import * as path2 from "node:path";
218
+ import { groupBy } from "storybook/internal/common";
219
+ import { Tag } from "storybook/internal/core-server";
220
+ import { logger } from "storybook/internal/node-logger";
221
+ async function createDocsManifestEntry(entry) {
222
+ let absolutePath = path2.join(process.cwd(), entry.importPath);
223
+ try {
224
+ let content = await fs.readFile(absolutePath, "utf-8");
225
+ return {
226
+ id: entry.id,
227
+ name: entry.name,
228
+ path: entry.importPath,
229
+ title: entry.title,
230
+ content
231
+ };
232
+ } catch (err) {
233
+ return {
234
+ id: entry.id,
235
+ name: entry.name,
236
+ path: entry.importPath,
237
+ title: entry.title,
238
+ error: {
239
+ name: err instanceof Error ? err.name : "Error",
240
+ message: err instanceof Error ? err.message : String(err)
241
+ }
242
+ };
243
+ }
244
+ }
245
+ async function extractUnattachedDocsEntries(entries) {
246
+ if (entries.length === 0)
247
+ return {};
248
+ let entriesWithContent = await Promise.all(entries.map(createDocsManifestEntry));
249
+ return Object.fromEntries(entriesWithContent.map((entry) => [entry.id, entry]));
250
+ }
251
+ async function extractAttachedDocsEntries(entries, existingComponents) {
252
+ if (!existingComponents || entries.length === 0)
253
+ return existingComponents;
254
+ let entriesWithContent = await Promise.all(entries.map(createDocsManifestEntry));
255
+ for (let docsEntry of entriesWithContent) {
256
+ let componentId = docsEntry.id.split("--")[0], component = existingComponents.components[componentId];
257
+ component && (component.docs || (component.docs = {}), component.docs[docsEntry.id] = docsEntry);
258
+ }
259
+ return existingComponents;
260
+ }
261
+ var manifests = async (existingManifests = {}, { manifestEntries }) => {
262
+ let startPerformance = performance.now(), docsEntries = manifestEntries.filter(
263
+ (entry) => entry.type === "docs"
264
+ );
265
+ if (docsEntries.length === 0)
266
+ return existingManifests;
267
+ let { attachedEntries = [], unattachedEntries = [] } = groupBy(docsEntries, (entry) => {
268
+ switch (!0) {
269
+ case entry.tags?.includes(Tag.UNATTACHED_MDX):
270
+ return "unattachedEntries";
271
+ case entry.tags?.includes(Tag.ATTACHED_MDX):
272
+ return "attachedEntries";
273
+ default:
274
+ return "ignored";
275
+ }
276
+ });
277
+ if (unattachedEntries.length === 0 && attachedEntries.length === 0)
278
+ return existingManifests;
279
+ let existingManifestsWithDocs = existingManifests, [unattachedDocs, updatedComponents] = await Promise.all([
280
+ extractUnattachedDocsEntries(unattachedEntries),
281
+ extractAttachedDocsEntries(attachedEntries, existingManifestsWithDocs.components)
282
+ ]), processedCount = unattachedEntries.length + attachedEntries.length;
283
+ logger.verbose(
284
+ `Docs manifest generation took ${performance.now() - startPerformance}ms for ${processedCount} entries (${unattachedEntries.length} unattached, ${attachedEntries.length} attached)`
285
+ );
286
+ let result = { ...existingManifestsWithDocs };
287
+ return Object.keys(unattachedDocs).length > 0 && (result.docs = {
288
+ v: 0,
289
+ docs: unattachedDocs
290
+ }), updatedComponents && (result.components = updatedComponents), result;
291
+ };
292
+
215
293
  // src/preset.ts
216
294
  var getResolvedReact = async (options) => {
217
295
  let resolvedReact2 = await options.presets.apply("resolvedReact", {});
@@ -227,7 +305,7 @@ var getResolvedReact = async (options) => {
227
305
  };
228
306
  };
229
307
  async function webpack(webpackConfig = {}, options) {
230
- let { module = {} } = webpackConfig, { csfPluginOptions = {}, mdxPluginOptions = {} } = options, enrichCsf = await options.presets.apply("experimental_enrichCsf"), rehypeSlug = (await import("./_node-chunks/rehype-slug-CSR3JM6D.js")).default, rehypeExternalLinks = (await import("./_node-chunks/rehype-external-links-NXMQRRUD.js")).default, mdxLoaderOptions = await options.presets.apply("mdxLoaderOptions", {
308
+ let { module = {} } = webpackConfig, { csfPluginOptions = {}, mdxPluginOptions = {} } = options, enrichCsf = await options.presets.apply("experimental_enrichCsf"), rehypeSlug = (await import("./_node-chunks/rehype-slug-7F5NTZL3.js")).default, rehypeExternalLinks = (await import("./_node-chunks/rehype-external-links-2YTHDLMZ.js")).default, mdxLoaderOptions = await options.presets.apply("mdxLoaderOptions", {
231
309
  ...mdxPluginOptions,
232
310
  mdxCompileOptions: {
233
311
  providerImportSource: import.meta.resolve("@storybook/addon-docs/mdx-react-shim"),
@@ -239,7 +317,7 @@ async function webpack(webpackConfig = {}, options) {
239
317
  ]
240
318
  }
241
319
  });
242
- logger.info("Addon-docs: using MDX3");
320
+ logger2.info("Addon-docs: using MDX3");
243
321
  let { react, reactDom, mdx } = await getResolvedReact(options), alias;
244
322
  return Array.isArray(webpackConfig.resolve?.alias) ? (alias = [...webpackConfig.resolve?.alias], alias.push(
245
323
  {
@@ -303,7 +381,7 @@ var docs = (input = {}, options) => {
303
381
  }, addons = [
304
382
  import.meta.resolve("@storybook/react-dom-shim/preset")
305
383
  ], viteFinal = async (config, options) => {
306
- let { plugins = [] } = config, { mdxPlugin } = await import("./_node-chunks/mdx-plugin-E4SQS4B7.js"), { react, reactDom, mdx } = await getResolvedReact(options), packageDeduplicationPlugin = {
384
+ let { plugins = [] } = config, { mdxPlugin } = await import("./_node-chunks/mdx-plugin-OBQHX7GQ.js"), { react, reactDom, mdx } = await getResolvedReact(options), packageDeduplicationPlugin = {
307
385
  name: "storybook:package-deduplication",
308
386
  enforce: "pre",
309
387
  config: () => ({
@@ -334,6 +412,7 @@ var docs = (input = {}, options) => {
334
412
  export {
335
413
  addons,
336
414
  docsX as docs,
415
+ manifests as experimental_manifests,
337
416
  optimizeViteDeps,
338
417
  resolvedReact,
339
418
  viteFinal,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/addon-docs",
3
- "version": "10.2.0-alpha.11",
3
+ "version": "10.2.0-alpha.12",
4
4
  "description": "Storybook Docs: Document UI components automatically with stories and MDX",
5
5
  "keywords": [
6
6
  "docs",
@@ -80,9 +80,9 @@
80
80
  ],
81
81
  "dependencies": {
82
82
  "@mdx-js/react": "^3.0.0",
83
- "@storybook/csf-plugin": "10.2.0-alpha.11",
83
+ "@storybook/csf-plugin": "10.2.0-alpha.12",
84
84
  "@storybook/icons": "^2.0.1",
85
- "@storybook/react-dom-shim": "10.2.0-alpha.11",
85
+ "@storybook/react-dom-shim": "10.2.0-alpha.12",
86
86
  "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
87
87
  "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
88
88
  "ts-dedent": "^2.0.0"
@@ -109,7 +109,7 @@
109
109
  "vite": "^7.0.4"
110
110
  },
111
111
  "peerDependencies": {
112
- "storybook": "^10.2.0-alpha.11"
112
+ "storybook": "^10.2.0-alpha.12"
113
113
  },
114
114
  "publishConfig": {
115
115
  "access": "public"