storybook 10.1.0-alpha.9 → 10.1.0-beta.0

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.
Files changed (198) hide show
  1. package/dist/_browser-chunks/Color-FTG7SQDA.js +1097 -0
  2. package/dist/_browser-chunks/WithTooltip-LMROHDUP.js +1651 -0
  3. package/dist/_browser-chunks/chunk-2FRVAXCZ.js +7 -0
  4. package/dist/_browser-chunks/{chunk-FDWKXLBI.js → chunk-2XZMBGTA.js} +44 -109
  5. package/dist/_browser-chunks/chunk-3IAH5M2U.js +171 -0
  6. package/dist/_browser-chunks/chunk-3OXGAGBE.js +779 -0
  7. package/dist/_browser-chunks/{chunk-TMDZCWME.js → chunk-3PJE6VLG.js} +1 -3
  8. package/dist/_browser-chunks/{chunk-VAMFPZY3.js → chunk-45UGUKRX.js} +2 -7
  9. package/dist/_browser-chunks/chunk-6XWLIJQL.js +11 -0
  10. package/dist/_browser-chunks/{chunk-MM7DTO55.js → chunk-A242L54C.js} +10 -16
  11. package/dist/_browser-chunks/chunk-AIOS4NGK.js +252 -0
  12. package/dist/_browser-chunks/chunk-AS2HQEYC.js +14 -0
  13. package/dist/_browser-chunks/chunk-AXG2BOBL.js +836 -0
  14. package/dist/_browser-chunks/{chunk-MH6AXFXB.js → chunk-CHUV5WSW.js} +0 -5
  15. package/dist/_browser-chunks/chunk-EUVGDK4H.js +93 -0
  16. package/dist/_browser-chunks/chunk-EZSQOHRI.js +18 -0
  17. package/dist/_browser-chunks/{chunk-CADGRH3P.js → chunk-FNXWN6IK.js} +3 -8
  18. package/dist/_browser-chunks/chunk-FQ7SLVLR.js +66 -0
  19. package/dist/_browser-chunks/chunk-GFLS4VP3.js +64 -0
  20. package/dist/_browser-chunks/chunk-GFY5R5EY.js +47 -0
  21. package/dist/_browser-chunks/{chunk-L2D73C6Z.js → chunk-H6XK3RSC.js} +13 -21
  22. package/dist/_browser-chunks/chunk-IPA5A322.js +71 -0
  23. package/dist/_browser-chunks/chunk-JP7NCOJX.js +37 -0
  24. package/dist/_browser-chunks/chunk-KJHJLCBK.js +11 -0
  25. package/dist/_browser-chunks/{chunk-OWPZQM2D.js → chunk-L4RMQ7D7.js} +60 -110
  26. package/dist/_browser-chunks/chunk-P4F4UVXX.js +951 -0
  27. package/dist/_browser-chunks/{chunk-AB7OOPUX.js → chunk-QKODTO7K.js} +0 -5
  28. package/dist/_browser-chunks/chunk-RP5RXKFU.js +2491 -0
  29. package/dist/_browser-chunks/chunk-SL75JR6Y.js +9 -0
  30. package/dist/_browser-chunks/chunk-SS2NHR7W.js +2969 -0
  31. package/dist/_browser-chunks/chunk-UD6FQLAF.js +1481 -0
  32. package/dist/_browser-chunks/chunk-VYJQ7RU5.js +2853 -0
  33. package/dist/_browser-chunks/chunk-WJYERY3R.js +136 -0
  34. package/dist/_browser-chunks/chunk-XJNX76GA.js +85 -0
  35. package/dist/_browser-chunks/{chunk-F4Q6SGTB.js → chunk-YKE5S47A.js} +177 -399
  36. package/dist/_browser-chunks/{chunk-SN4J4IQ3.js → chunk-ZUWEVLDX.js} +1 -7
  37. package/dist/_browser-chunks/{formatter-OMEEQ6HG.js → formatter-QJ4M4OGQ.js} +4 -9
  38. package/dist/_browser-chunks/{syntaxhighlighter-CAVLW7PM.js → syntaxhighlighter-IQDEPFLK.js} +704 -1848
  39. package/dist/_node-chunks/{builder-manager-SM3UWERX.js → builder-manager-BDAQHXFI.js} +510 -1019
  40. package/dist/_node-chunks/camelcase-3C7DZZPX.js +37 -0
  41. package/dist/_node-chunks/chunk-2IIQTGNE.js +6024 -0
  42. package/dist/_node-chunks/chunk-56U5LEMP.js +3043 -0
  43. package/dist/_node-chunks/chunk-7LIRCAQE.js +20 -0
  44. package/dist/_node-chunks/chunk-7RN6TXKP.js +603 -0
  45. package/dist/_node-chunks/chunk-7SJ7PZNL.js +4523 -0
  46. package/dist/_node-chunks/{chunk-HHSTA6QS.js → chunk-BG4RDXG7.js} +8 -10
  47. package/dist/_node-chunks/chunk-CBQKMXLQ.js +18 -0
  48. package/dist/_node-chunks/chunk-CN2IW2KQ.js +1564 -0
  49. package/dist/_node-chunks/chunk-CQMAU6UQ.js +943 -0
  50. package/dist/_node-chunks/{chunk-EBUEXRH5.js → chunk-D6ND3TVY.js} +116 -276
  51. package/dist/_node-chunks/chunk-DC355CYB.js +61 -0
  52. package/dist/_node-chunks/{chunk-SGM3ZCCT.js → chunk-EVK2SBW5.js} +292 -688
  53. package/dist/_node-chunks/chunk-IXWEUXJ2.js +119 -0
  54. package/dist/_node-chunks/{chunk-F6EFOEC7.js → chunk-KVRF22SH.js} +469 -983
  55. package/dist/_node-chunks/chunk-LEDP4QQW.js +919 -0
  56. package/dist/_node-chunks/{chunk-GHIBZRKD.js → chunk-MMVV6DGG.js} +8133 -8887
  57. package/dist/_node-chunks/chunk-O5CGEVRI.js +29 -0
  58. package/dist/_node-chunks/chunk-OZZO56XN.js +299 -0
  59. package/dist/_node-chunks/chunk-POT2EVGD.js +78 -0
  60. package/dist/_node-chunks/chunk-R5YGFSTV.js +3781 -0
  61. package/dist/_node-chunks/chunk-SQCTM2OS.js +23 -0
  62. package/dist/_node-chunks/chunk-UFOFO5H7.js +54 -0
  63. package/dist/_node-chunks/chunk-VBF7ALJF.js +72 -0
  64. package/dist/_node-chunks/chunk-W6MAMTUF.js +70 -0
  65. package/dist/_node-chunks/chunk-WURL4XOT.js +46662 -0
  66. package/dist/_node-chunks/chunk-XGK6MVKR.js +61 -0
  67. package/dist/_node-chunks/chunk-YV3GDSDT.js +765 -0
  68. package/dist/_node-chunks/{chunk-ATDHMMIZ.js → chunk-YWV55YW3.js} +15 -24
  69. package/dist/_node-chunks/dist-KEP4IFRN.js +121 -0
  70. package/dist/_node-chunks/globby-4WUBTDCN.js +3452 -0
  71. package/dist/_node-chunks/lib-JVOEKTYM.js +366 -0
  72. package/dist/_node-chunks/mdx-N42X6CFJ-C5WFYYXR.js +14329 -0
  73. package/dist/_node-chunks/p-limit-LDY632RS.js +116 -0
  74. package/dist/actions/decorator.js +21 -42
  75. package/dist/actions/index.js +3 -3
  76. package/dist/babel/index.d.ts +671 -335
  77. package/dist/babel/index.js +10 -11
  78. package/dist/bin/core.js +601 -1548
  79. package/dist/bin/dispatcher.js +36 -36
  80. package/dist/bin/loader.js +24 -38
  81. package/dist/channels/index.js +98 -234
  82. package/dist/cli/index.d.ts +1479 -133
  83. package/dist/cli/index.js +30 -8540
  84. package/dist/client-logger/index.js +31 -61
  85. package/dist/common/index.d.ts +139 -62
  86. package/dist/common/index.js +66 -51
  87. package/dist/components/index.d.ts +575 -273
  88. package/dist/components/index.js +14863 -4313
  89. package/dist/core-events/index.js +2 -66
  90. package/dist/core-server/index.d.ts +3 -2
  91. package/dist/core-server/index.js +2908 -8518
  92. package/dist/core-server/presets/common-manager.css +2 -2
  93. package/dist/core-server/presets/common-manager.js +2521 -5233
  94. package/dist/core-server/presets/common-override-preset.js +31 -60
  95. package/dist/core-server/presets/common-preset.js +663 -962
  96. package/dist/csf/index.js +534 -1179
  97. package/dist/csf-tools/index.js +9 -9
  98. package/dist/docs-tools/index.js +6 -6
  99. package/dist/highlight/index.js +2 -2
  100. package/dist/instrumenter/index.js +199 -415
  101. package/dist/manager/globals-runtime.js +59044 -67141
  102. package/dist/manager/globals.js +2 -3
  103. package/dist/manager/manager-stores.d.ts +1 -0
  104. package/dist/manager/manager-stores.js +23 -0
  105. package/dist/manager/runtime.js +11511 -10953
  106. package/dist/manager-api/index.d.ts +1811 -2
  107. package/dist/manager-api/index.js +1348 -2401
  108. package/dist/manager-errors.d.ts +9 -0
  109. package/dist/manager-errors.js +3 -3
  110. package/dist/mocking-utils/index.d.ts +1126 -0
  111. package/dist/mocking-utils/index.js +1181 -0
  112. package/dist/node-logger/index.d.ts +192 -24
  113. package/dist/node-logger/index.js +23 -4471
  114. package/dist/preview/globals.js +2 -3
  115. package/dist/preview/runtime.js +10799 -22393
  116. package/dist/preview-api/index.d.ts +68 -69
  117. package/dist/preview-api/index.js +13 -13
  118. package/dist/preview-errors.d.ts +9 -0
  119. package/dist/preview-errors.js +4 -4
  120. package/dist/router/index.js +347 -899
  121. package/dist/server-errors.d.ts +34 -1
  122. package/dist/server-errors.js +17 -10
  123. package/dist/telemetry/index.d.ts +24 -3
  124. package/dist/telemetry/index.js +25 -24
  125. package/dist/test/index.js +6131 -11916
  126. package/dist/theming/create.d.ts +1 -0
  127. package/dist/theming/create.js +4 -4
  128. package/dist/theming/index.d.ts +3366 -2599
  129. package/dist/theming/index.js +501 -1091
  130. package/dist/types/index.d.ts +72 -8
  131. package/dist/types/index.js +27 -12
  132. package/dist/viewport/index.js +3 -3
  133. package/package.json +26 -17
  134. package/dist/_browser-chunks/Color-7ZNS6F6B.js +0 -1676
  135. package/dist/_browser-chunks/WithTooltip-SK46ZJ2J.js +0 -13
  136. package/dist/_browser-chunks/chunk-6A7OIVEL.js +0 -66
  137. package/dist/_browser-chunks/chunk-B4A3ADP3.js +0 -3816
  138. package/dist/_browser-chunks/chunk-BOOOPFZF.js +0 -2335
  139. package/dist/_browser-chunks/chunk-FSBVR7H5.js +0 -106
  140. package/dist/_browser-chunks/chunk-FUOHXXZT.js +0 -23
  141. package/dist/_browser-chunks/chunk-GTKOCWCT.js +0 -17
  142. package/dist/_browser-chunks/chunk-HHW4FUMO.js +0 -12
  143. package/dist/_browser-chunks/chunk-JVSKG4YS.js +0 -4052
  144. package/dist/_browser-chunks/chunk-LASUB7TL.js +0 -76
  145. package/dist/_browser-chunks/chunk-LYCSRYYR.js +0 -101
  146. package/dist/_browser-chunks/chunk-NVV6MIOE.js +0 -243
  147. package/dist/_browser-chunks/chunk-OBXWFEPB.js +0 -852
  148. package/dist/_browser-chunks/chunk-OPCDBBL3.js +0 -48
  149. package/dist/_browser-chunks/chunk-PB6FZ3WE.js +0 -130
  150. package/dist/_browser-chunks/chunk-RNE2IUTB.js +0 -1300
  151. package/dist/_browser-chunks/chunk-RW5PKMWM.js +0 -4182
  152. package/dist/_browser-chunks/chunk-SYS437NN.js +0 -122
  153. package/dist/_browser-chunks/chunk-U46RQHA4.js +0 -12
  154. package/dist/_browser-chunks/chunk-UTNZYD2N.js +0 -311
  155. package/dist/_browser-chunks/chunk-VUAFL5XK.js +0 -20
  156. package/dist/_browser-chunks/chunk-XDGMHOV7.js +0 -2197
  157. package/dist/_browser-chunks/chunk-XW6KSYKF.js +0 -16
  158. package/dist/_browser-chunks/chunk-Y3M7TW6K.js +0 -1041
  159. package/dist/_browser-chunks/chunk-ZNRFDIVA.js +0 -233
  160. package/dist/_node-chunks/camelcase-H5QSGQLK.js +0 -18
  161. package/dist/_node-chunks/chunk-3THWHQOC.js +0 -61
  162. package/dist/_node-chunks/chunk-45YUOLTU.js +0 -69
  163. package/dist/_node-chunks/chunk-4QSNCPAU.js +0 -64656
  164. package/dist/_node-chunks/chunk-744PQSOU.js +0 -79
  165. package/dist/_node-chunks/chunk-74Z2U7QG.js +0 -1544
  166. package/dist/_node-chunks/chunk-7MB7TFPO.js +0 -1198
  167. package/dist/_node-chunks/chunk-A7GS4RFT.js +0 -697
  168. package/dist/_node-chunks/chunk-BIA3A5UM.js +0 -61
  169. package/dist/_node-chunks/chunk-C5G7CLWX.js +0 -1657
  170. package/dist/_node-chunks/chunk-DLFUKMYJ.js +0 -1531
  171. package/dist/_node-chunks/chunk-EMRGRXKT.js +0 -111
  172. package/dist/_node-chunks/chunk-EX46EHHY.js +0 -420
  173. package/dist/_node-chunks/chunk-F76QKNOJ.js +0 -304
  174. package/dist/_node-chunks/chunk-HDCRUTEF.js +0 -220
  175. package/dist/_node-chunks/chunk-HUYAOIPH.js +0 -90
  176. package/dist/_node-chunks/chunk-IBJZQZJC.js +0 -101
  177. package/dist/_node-chunks/chunk-KZN2RDDT.js +0 -6712
  178. package/dist/_node-chunks/chunk-LYUNFU3F.js +0 -4741
  179. package/dist/_node-chunks/chunk-N44SIS6K.js +0 -28
  180. package/dist/_node-chunks/chunk-NILZM6KR.js +0 -18
  181. package/dist/_node-chunks/chunk-PC4ZRP6W.js +0 -34
  182. package/dist/_node-chunks/chunk-TJNGOQUH.js +0 -4272
  183. package/dist/_node-chunks/chunk-UBSYLHIL.js +0 -1250
  184. package/dist/_node-chunks/chunk-UTCLXPOC.js +0 -1518
  185. package/dist/_node-chunks/chunk-WOXXODXP.js +0 -5029
  186. package/dist/_node-chunks/chunk-XC4MEUA6.js +0 -1586
  187. package/dist/_node-chunks/chunk-YRXXMKRR.js +0 -2256
  188. package/dist/_node-chunks/dist-SL73W244.js +0 -175
  189. package/dist/_node-chunks/globby-ZSHAUQZ5.js +0 -5222
  190. package/dist/_node-chunks/lib-U2VIPUTI.js +0 -518
  191. package/dist/_node-chunks/mdx-N42X6CFJ-ZLHD33JK.js +0 -22017
  192. package/dist/_node-chunks/p-limit-K5BS5MSV.js +0 -168
  193. package/dist/_node-chunks/plugin-5PD4YIUH.js +0 -129
  194. package/dist/_node-chunks/plugin-MONDT2WL.js +0 -159
  195. package/dist/_node-chunks/webpack-inject-mocker-runtime-plugin-EUZJRG3W.js +0 -69102
  196. package/dist/_node-chunks/webpack-mock-plugin-T4LDXEHE.js +0 -124
  197. package/dist/core-server/presets/webpack/loaders/storybook-mock-transform-loader.js +0 -36
  198. package/dist/core-server/presets/webpack/loaders/webpack-automock-loader.js +0 -33
@@ -3,41 +3,26 @@ import {
3
3
  isJSON,
4
4
  parse,
5
5
  stringify
6
- } from "../_browser-chunks/chunk-XDGMHOV7.js";
6
+ } from "../_browser-chunks/chunk-UD6FQLAF.js";
7
7
  import {
8
8
  invariant
9
- } from "../_browser-chunks/chunk-FUOHXXZT.js";
10
- import "../_browser-chunks/chunk-OPCDBBL3.js";
11
- import {
12
- __name
13
- } from "../_browser-chunks/chunk-MM7DTO55.js";
9
+ } from "../_browser-chunks/chunk-AS2HQEYC.js";
10
+ import "../_browser-chunks/chunk-JP7NCOJX.js";
11
+ import "../_browser-chunks/chunk-A242L54C.js";
14
12
 
15
13
  // src/channels/index.ts
16
14
  import { global as global3 } from "@storybook/global";
17
15
 
18
16
  // src/channels/main.ts
19
- var isMulti = /* @__PURE__ */ __name((args) => {
20
- return args.transports !== void 0;
21
- }, "isMulti");
22
- var generateRandomId = /* @__PURE__ */ __name(() => {
23
- return Math.random().toString(16).slice(2);
24
- }, "generateRandomId");
25
- var _Channel = class _Channel {
17
+ var isMulti = (args) => args.transports !== void 0, generateRandomId = () => Math.random().toString(16).slice(2), Channel = class {
26
18
  constructor(input = {}) {
27
19
  this.sender = generateRandomId();
28
20
  this.events = {};
29
21
  this.data = {};
30
22
  this.transports = [];
31
- this.isAsync = input.async || false;
32
- if (isMulti(input)) {
33
- this.transports = input.transports || [];
34
- this.transports.forEach((t) => {
35
- t.setHandler((event) => this.handleEvent(event));
36
- });
37
- } else {
38
- this.transports = input.transport ? [input.transport] : [];
39
- }
40
- this.transports.forEach((t) => {
23
+ this.isAsync = input.async || !1, isMulti(input) ? (this.transports = input.transports || [], this.transports.forEach((t) => {
24
+ t.setHandler((event) => this.handleEvent(event));
25
+ })) : this.transports = input.transport ? [input.transport] : [], this.transports.forEach((t) => {
41
26
  t.setHandler((event) => this.handleEvent(event));
42
27
  });
43
28
  }
@@ -45,26 +30,17 @@ var _Channel = class _Channel {
45
30
  return this.transports.length > 0;
46
31
  }
47
32
  addListener(eventName, listener) {
48
- this.events[eventName] = this.events[eventName] || [];
49
- this.events[eventName].push(listener);
33
+ this.events[eventName] = this.events[eventName] || [], this.events[eventName].push(listener);
50
34
  }
51
35
  emit(eventName, ...args) {
52
- const event = { type: eventName, args, from: this.sender };
53
- let options = {};
54
- if (args.length >= 1 && args[0] && args[0].options) {
55
- options = args[0].options;
56
- }
57
- const handler = /* @__PURE__ */ __name(() => {
36
+ let event = { type: eventName, args, from: this.sender }, options = {};
37
+ args.length >= 1 && args[0] && args[0].options && (options = args[0].options);
38
+ let handler = () => {
58
39
  this.transports.forEach((t) => {
59
40
  t.send(event, options);
60
- });
61
- this.handleEvent(event);
62
- }, "handler");
63
- if (this.isAsync) {
64
- setImmediate(handler);
65
- } else {
66
- handler();
67
- }
41
+ }), this.handleEvent(event);
42
+ };
43
+ this.isAsync ? setImmediate(handler) : handler();
68
44
  }
69
45
  last(eventName) {
70
46
  return this.data[eventName];
@@ -73,29 +49,22 @@ var _Channel = class _Channel {
73
49
  return Object.keys(this.events);
74
50
  }
75
51
  listenerCount(eventName) {
76
- const listeners = this.listeners(eventName);
52
+ let listeners = this.listeners(eventName);
77
53
  return listeners ? listeners.length : 0;
78
54
  }
79
55
  listeners(eventName) {
80
- const listeners = this.events[eventName];
81
- return listeners || void 0;
56
+ return this.events[eventName] || void 0;
82
57
  }
83
58
  once(eventName, listener) {
84
- const onceListener = this.onceListener(eventName, listener);
59
+ let onceListener = this.onceListener(eventName, listener);
85
60
  this.addListener(eventName, onceListener);
86
61
  }
87
62
  removeAllListeners(eventName) {
88
- if (!eventName) {
89
- this.events = {};
90
- } else if (this.events[eventName]) {
91
- delete this.events[eventName];
92
- }
63
+ eventName ? this.events[eventName] && delete this.events[eventName] : this.events = {};
93
64
  }
94
65
  removeListener(eventName, listener) {
95
- const listeners = this.listeners(eventName);
96
- if (listeners) {
97
- this.events[eventName] = listeners.filter((l) => l !== listener);
98
- }
66
+ let listeners = this.listeners(eventName);
67
+ listeners && (this.events[eventName] = listeners.filter((l) => l !== listener));
99
68
  }
100
69
  on(eventName, listener) {
101
70
  this.addListener(eventName, listener);
@@ -104,24 +73,16 @@ var _Channel = class _Channel {
104
73
  this.removeListener(eventName, listener);
105
74
  }
106
75
  handleEvent(event) {
107
- const listeners = this.listeners(event.type);
108
- if (listeners && listeners.length) {
109
- listeners.forEach((fn) => {
110
- fn.apply(event, event.args);
111
- });
112
- }
113
- this.data[event.type] = event.args;
76
+ let listeners = this.listeners(event.type);
77
+ listeners && listeners.length && listeners.forEach((fn) => {
78
+ fn.apply(event, event.args);
79
+ }), this.data[event.type] = event.args;
114
80
  }
115
81
  onceListener(eventName, listener) {
116
- const onceListener = /* @__PURE__ */ __name((...args) => {
117
- this.removeListener(eventName, onceListener);
118
- return listener(...args);
119
- }, "onceListener");
82
+ let onceListener = (...args) => (this.removeListener(eventName, onceListener), listener(...args));
120
83
  return onceListener;
121
84
  }
122
85
  };
123
- __name(_Channel, "Channel");
124
- var Channel = _Channel;
125
86
 
126
87
  // src/channels/postmessage/index.ts
127
88
  import { logger as logger2, pretty } from "storybook/internal/client-logger";
@@ -130,65 +91,46 @@ import { global } from "@storybook/global";
130
91
 
131
92
  // src/channels/postmessage/getEventSourceUrl.ts
132
93
  import { logger } from "storybook/internal/client-logger";
133
- var getEventSourceUrl = /* @__PURE__ */ __name((event) => {
134
- const frames = Array.from(
94
+ var getEventSourceUrl = (event) => {
95
+ let frames = Array.from(
135
96
  document.querySelectorAll("iframe[data-is-storybook]")
136
- );
137
- const [frame, ...remainder] = frames.filter((element) => {
97
+ ), [frame, ...remainder] = frames.filter((element) => {
138
98
  try {
139
99
  return element.contentWindow?.location.origin === event.source.location.origin && element.contentWindow?.location.pathname === event.source.location.pathname;
140
- } catch (err) {
100
+ } catch {
141
101
  }
142
102
  try {
143
103
  return element.contentWindow === event.source;
144
- } catch (err) {
104
+ } catch {
145
105
  }
146
- const src2 = element.getAttribute("src");
147
- let origin;
106
+ let src2 = element.getAttribute("src"), origin;
148
107
  try {
149
- if (!src2) {
150
- return false;
151
- }
108
+ if (!src2)
109
+ return !1;
152
110
  ({ origin } = new URL(src2, document.location.toString()));
153
- } catch (err) {
154
- return false;
111
+ } catch {
112
+ return !1;
155
113
  }
156
114
  return origin === event.origin;
157
- });
158
- const src = frame?.getAttribute("src");
115
+ }), src = frame?.getAttribute("src");
159
116
  if (src && remainder.length === 0) {
160
- const { protocol, host, pathname } = new URL(src, document.location.toString());
117
+ let { protocol, host, pathname } = new URL(src, document.location.toString());
161
118
  return `${protocol}//${host}${pathname}`;
162
119
  }
163
- if (remainder.length > 0) {
164
- logger.error("found multiple candidates for event source");
165
- }
166
- return null;
167
- }, "getEventSourceUrl");
120
+ return remainder.length > 0 && logger.error("found multiple candidates for event source"), null;
121
+ };
168
122
 
169
123
  // src/channels/postmessage/index.ts
170
- var { document: document2, location } = global;
171
- var KEY = "storybook-channel";
172
- var defaultEventOptions = { maxDepth: 25 };
173
- var _PostMessageTransport = class _PostMessageTransport {
124
+ var { document: document2, location } = global, KEY = "storybook-channel", defaultEventOptions = { maxDepth: 25 }, PostMessageTransport = class {
174
125
  constructor(config) {
175
126
  this.config = config;
176
- this.connected = false;
177
- this.buffer = [];
178
- if (typeof global?.addEventListener === "function") {
179
- global.addEventListener("message", this.handleEvent.bind(this), false);
180
- }
181
- if (config.page !== "manager" && config.page !== "preview") {
127
+ this.connected = !1;
128
+ if (this.buffer = [], typeof global?.addEventListener == "function" && global.addEventListener("message", this.handleEvent.bind(this), !1), config.page !== "manager" && config.page !== "preview")
182
129
  throw new Error(`postmsg-channel: "config.page" cannot be "${config.page}"`);
183
- }
184
130
  }
185
131
  setHandler(handler) {
186
132
  this.handler = (...args) => {
187
- handler.apply(this, args);
188
- if (!this.connected && this.getLocalFrame().length) {
189
- this.flush();
190
- this.connected = true;
191
- }
133
+ handler.apply(this, args), !this.connected && this.getLocalFrame().length && (this.flush(), this.connected = !0);
192
134
  };
193
135
  }
194
136
  /**
@@ -198,7 +140,7 @@ var _PostMessageTransport = class _PostMessageTransport {
198
140
  * @param event
199
141
  */
200
142
  send(event, options) {
201
- const {
143
+ let {
202
144
  target,
203
145
  // telejson options
204
146
  allowRegExp,
@@ -208,8 +150,7 @@ var _PostMessageTransport = class _PostMessageTransport {
208
150
  allowUndefined,
209
151
  maxDepth,
210
152
  space
211
- } = options || {};
212
- const eventOptions = Object.fromEntries(
153
+ } = options || {}, eventOptions = Object.fromEntries(
213
154
  Object.entries({
214
155
  allowRegExp,
215
156
  allowSymbol,
@@ -218,16 +159,12 @@ var _PostMessageTransport = class _PostMessageTransport {
218
159
  allowUndefined,
219
160
  maxDepth,
220
161
  space
221
- }).filter(([k, v]) => typeof v !== "undefined")
222
- );
223
- const stringifyOptions = {
162
+ }).filter(([k, v]) => typeof v < "u")
163
+ ), stringifyOptions = {
224
164
  ...defaultEventOptions,
225
165
  ...global.CHANNEL_OPTIONS || {},
226
166
  ...eventOptions
227
- };
228
- const frames = this.getFrames(target);
229
- const query = new URLSearchParams(location?.search || "");
230
- const data = stringify(
167
+ }, frames = this.getFrames(target), query = new URLSearchParams(location?.search || ""), data = stringify(
231
168
  {
232
169
  key: KEY,
233
170
  event,
@@ -235,155 +172,96 @@ var _PostMessageTransport = class _PostMessageTransport {
235
172
  },
236
173
  stringifyOptions
237
174
  );
238
- if (!frames.length) {
239
- return new Promise((resolve, reject) => {
240
- this.buffer.push({ event, resolve, reject });
241
- });
242
- }
243
- if (this.buffer.length) {
244
- this.flush();
245
- }
246
- frames.forEach((f) => {
175
+ return frames.length ? (this.buffer.length && this.flush(), frames.forEach((f) => {
247
176
  try {
248
177
  f.postMessage(data, "*");
249
- } catch (e) {
178
+ } catch {
250
179
  logger2.error("sending over postmessage fail");
251
180
  }
181
+ }), Promise.resolve(null)) : new Promise((resolve, reject) => {
182
+ this.buffer.push({ event, resolve, reject });
252
183
  });
253
- return Promise.resolve(null);
254
184
  }
255
185
  flush() {
256
- const { buffer } = this;
257
- this.buffer = [];
258
- buffer.forEach((item) => {
186
+ let { buffer } = this;
187
+ this.buffer = [], buffer.forEach((item) => {
259
188
  this.send(item.event).then(item.resolve).catch(item.reject);
260
189
  });
261
190
  }
262
191
  getFrames(target) {
263
192
  if (this.config.page === "manager") {
264
- const nodes = Array.from(
193
+ let list = Array.from(
265
194
  document2.querySelectorAll("iframe[data-is-storybook][data-is-loaded]")
266
- );
267
- const list = nodes.flatMap((e) => {
195
+ ).flatMap((e) => {
268
196
  try {
269
- if (!!e.contentWindow && e.dataset.isStorybook !== void 0 && e.id === target) {
270
- return [e.contentWindow];
271
- }
272
- return [];
273
- } catch (er) {
197
+ return e.contentWindow && e.dataset.isStorybook !== void 0 && e.id === target ? [e.contentWindow] : [];
198
+ } catch {
274
199
  return [];
275
200
  }
276
201
  });
277
202
  return list?.length ? list : this.getCurrentFrames();
278
203
  }
279
- if (global && global.parent && global.parent !== global.self) {
280
- return [global.parent];
281
- }
282
- return [];
204
+ return global && global.parent && global.parent !== global.self ? [global.parent] : [];
283
205
  }
284
206
  getCurrentFrames() {
285
- if (this.config.page === "manager") {
286
- const list = Array.from(
287
- document2.querySelectorAll('[data-is-storybook="true"]')
288
- );
289
- return list.flatMap((e) => e.contentWindow ? [e.contentWindow] : []);
290
- }
291
- if (global && global.parent) {
292
- return [global.parent];
293
- }
294
- return [];
207
+ return this.config.page === "manager" ? Array.from(
208
+ document2.querySelectorAll('[data-is-storybook="true"]')
209
+ ).flatMap((e) => e.contentWindow ? [e.contentWindow] : []) : global && global.parent ? [global.parent] : [];
295
210
  }
296
211
  getLocalFrame() {
297
- if (this.config.page === "manager") {
298
- const list = Array.from(
299
- document2.querySelectorAll("#storybook-preview-iframe")
300
- );
301
- return list.flatMap((e) => e.contentWindow ? [e.contentWindow] : []);
302
- }
303
- if (global && global.parent) {
304
- return [global.parent];
305
- }
306
- return [];
212
+ return this.config.page === "manager" ? Array.from(
213
+ document2.querySelectorAll("#storybook-preview-iframe")
214
+ ).flatMap((e) => e.contentWindow ? [e.contentWindow] : []) : global && global.parent ? [global.parent] : [];
307
215
  }
308
216
  handleEvent(rawEvent) {
309
217
  try {
310
- const { data } = rawEvent;
311
- const { key, event, refId } = typeof data === "string" && isJSON(data) ? parse(data, global.CHANNEL_OPTIONS || {}) : data;
218
+ let { data } = rawEvent, { key, event, refId } = typeof data == "string" && isJSON(data) ? parse(data, global.CHANNEL_OPTIONS || {}) : data;
312
219
  if (key === KEY) {
313
- const pageString = this.config.page === "manager" ? `<span style="color: #37D5D3; background: black"> manager </span>` : `<span style="color: #1EA7FD; background: black"> preview </span>`;
314
- const eventString = Object.values(EVENTS).includes(event.type) ? `<span style="color: #FF4785">${event.type}</span>` : `<span style="color: #FFAE00">${event.type}</span>`;
315
- if (refId) {
316
- event.refId = refId;
317
- }
318
- event.source = this.config.page === "preview" ? rawEvent.origin : getEventSourceUrl(rawEvent);
319
- if (!event.source) {
220
+ let pageString = this.config.page === "manager" ? '<span style="color: #37D5D3; background: black"> manager </span>' : '<span style="color: #1EA7FD; background: black"> preview </span>', eventString = Object.values(EVENTS).includes(event.type) ? `<span style="color: #FF4785">${event.type}</span>` : `<span style="color: #FFAE00">${event.type}</span>`;
221
+ if (refId && (event.refId = refId), event.source = this.config.page === "preview" ? rawEvent.origin : getEventSourceUrl(rawEvent), !event.source) {
320
222
  pretty.error(
321
223
  `${pageString} received ${eventString} but was unable to determine the source of the event`
322
224
  );
323
225
  return;
324
226
  }
325
- const message = `${pageString} received ${eventString} (${data.length})`;
227
+ let message = `${pageString} received ${eventString} (${data.length})`;
326
228
  pretty.debug(
327
229
  location.origin !== event.source ? message : `${message} <span style="color: gray">(on ${location.origin} from ${event.source})</span>`,
328
230
  ...event.args
329
- );
330
- invariant(this.handler, "ChannelHandler should be set");
331
- this.handler(event);
231
+ ), invariant(this.handler, "ChannelHandler should be set"), this.handler(event);
332
232
  }
333
233
  } catch (error) {
334
234
  logger2.error(error);
335
235
  }
336
236
  }
337
237
  };
338
- __name(_PostMessageTransport, "PostMessageTransport");
339
- var PostMessageTransport = _PostMessageTransport;
340
238
 
341
239
  // src/channels/websocket/index.ts
342
240
  import * as EVENTS2 from "storybook/internal/core-events";
343
241
  import { global as global2 } from "@storybook/global";
344
- var { WebSocket } = global2;
345
- var HEARTBEAT_INTERVAL = 15e3;
346
- var HEARTBEAT_MAX_LATENCY = 5e3;
347
- var _WebsocketTransport = class _WebsocketTransport {
242
+ var { WebSocket } = global2, HEARTBEAT_INTERVAL = 15e3, HEARTBEAT_MAX_LATENCY = 5e3, WebsocketTransport = class {
348
243
  constructor({ url, onError, page }) {
349
244
  this.buffer = [];
350
- this.isReady = false;
351
- this.isClosed = false;
245
+ this.isReady = !1;
246
+ this.isClosed = !1;
352
247
  this.pingTimeout = 0;
353
- this.socket = new WebSocket(url);
354
- this.socket.onopen = () => {
355
- this.isReady = true;
356
- this.heartbeat();
357
- this.flush();
358
- };
359
- this.socket.onmessage = ({ data }) => {
360
- const event = typeof data === "string" && isJSON(data) ? parse(data) : data;
361
- invariant(this.handler, "WebsocketTransport handler should be set");
362
- this.handler(event);
363
- if (event.type === "ping") {
364
- this.heartbeat();
365
- this.send({ type: "pong" });
366
- }
367
- };
368
- this.socket.onerror = (e) => {
369
- if (onError) {
370
- onError(e);
371
- }
372
- };
373
- this.socket.onclose = (ev) => {
374
- invariant(this.handler, "WebsocketTransport handler should be set");
375
- this.handler({
248
+ this.socket = new WebSocket(url), this.socket.onopen = () => {
249
+ this.isReady = !0, this.heartbeat(), this.flush();
250
+ }, this.socket.onmessage = ({ data }) => {
251
+ let event = typeof data == "string" && isJSON(data) ? parse(data) : data;
252
+ invariant(this.handler, "WebsocketTransport handler should be set"), this.handler(event), event.type === "ping" && (this.heartbeat(), this.send({ type: "pong" }));
253
+ }, this.socket.onerror = (e) => {
254
+ onError && onError(e);
255
+ }, this.socket.onclose = (ev) => {
256
+ invariant(this.handler, "WebsocketTransport handler should be set"), this.handler({
376
257
  type: EVENTS2.CHANNEL_WS_DISCONNECT,
377
258
  args: [{ reason: ev.reason, code: ev.code }],
378
259
  from: page || "preview"
379
- });
380
- this.isClosed = true;
381
- clearTimeout(this.pingTimeout);
260
+ }), this.isClosed = !0, clearTimeout(this.pingTimeout);
382
261
  };
383
262
  }
384
263
  heartbeat() {
385
- clearTimeout(this.pingTimeout);
386
- this.pingTimeout = setTimeout(() => {
264
+ clearTimeout(this.pingTimeout), this.pingTimeout = setTimeout(() => {
387
265
  this.socket.close(3008, "timeout");
388
266
  }, HEARTBEAT_INTERVAL + HEARTBEAT_MAX_LATENCY);
389
267
  }
@@ -391,53 +269,39 @@ var _WebsocketTransport = class _WebsocketTransport {
391
269
  this.handler = handler;
392
270
  }
393
271
  send(event) {
394
- if (!this.isClosed) {
395
- if (!this.isReady) {
396
- this.sendLater(event);
397
- } else {
398
- this.sendNow(event);
399
- }
400
- }
272
+ this.isClosed || (this.isReady ? this.sendNow(event) : this.sendLater(event));
401
273
  }
402
274
  sendLater(event) {
403
275
  this.buffer.push(event);
404
276
  }
405
277
  sendNow(event) {
406
- const data = stringify(event, {
278
+ let data = stringify(event, {
407
279
  maxDepth: 15,
408
280
  ...global2.CHANNEL_OPTIONS
409
281
  });
410
282
  this.socket.send(data);
411
283
  }
412
284
  flush() {
413
- const { buffer } = this;
414
- this.buffer = [];
415
- buffer.forEach((event) => this.send(event));
285
+ let { buffer } = this;
286
+ this.buffer = [], buffer.forEach((event) => this.send(event));
416
287
  }
417
288
  };
418
- __name(_WebsocketTransport, "WebsocketTransport");
419
- var WebsocketTransport = _WebsocketTransport;
420
289
 
421
290
  // src/channels/index.ts
422
- var { CONFIG_TYPE } = global3;
423
- var channels_default = Channel;
291
+ var { CONFIG_TYPE } = global3, channels_default = Channel;
424
292
  function createBrowserChannel({ page, extraTransports = [] }) {
425
- const transports = [new PostMessageTransport({ page }), ...extraTransports];
293
+ let transports = [new PostMessageTransport({ page }), ...extraTransports];
426
294
  if (CONFIG_TYPE === "DEVELOPMENT") {
427
- const protocol = window.location.protocol === "http:" ? "ws" : "wss";
428
- const { hostname, port } = window.location;
429
- const channelUrl = `${protocol}://${hostname}:${port}/storybook-server-channel`;
430
- transports.push(new WebsocketTransport({ url: channelUrl, onError: /* @__PURE__ */ __name(() => {
431
- }, "onError"), page }));
432
- }
433
- const channel = new Channel({ transports });
434
- UniversalStore.__prepare(
295
+ let protocol = window.location.protocol === "http:" ? "ws" : "wss", { hostname, port } = window.location, channelUrl = `${protocol}://${hostname}:${port}/storybook-server-channel`;
296
+ transports.push(new WebsocketTransport({ url: channelUrl, onError: () => {
297
+ }, page }));
298
+ }
299
+ let channel = new Channel({ transports });
300
+ return UniversalStore.__prepare(
435
301
  channel,
436
302
  page === "manager" ? UniversalStore.Environment.MANAGER : UniversalStore.Environment.PREVIEW
437
- );
438
- return channel;
303
+ ), channel;
439
304
  }
440
- __name(createBrowserChannel, "createBrowserChannel");
441
305
  export {
442
306
  Channel,
443
307
  HEARTBEAT_INTERVAL,