storybook 9.0.0-alpha.9 → 9.0.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 (140) hide show
  1. package/assets/docs/addon-backgrounds.gif +0 -0
  2. package/assets/docs/addon-controls-args-annotated.png +0 -0
  3. package/assets/docs/addon-controls-args-background-color.png +0 -0
  4. package/assets/docs/addon-controls-args-background-string.png +0 -0
  5. package/assets/docs/addon-controls-args-docs.png +0 -0
  6. package/assets/docs/addon-controls-args-logging.png +0 -0
  7. package/assets/docs/addon-controls-args-no-annotation.png +0 -0
  8. package/assets/docs/addon-controls-args-reflow-slider.png +0 -0
  9. package/assets/docs/addon-controls-args-reflow.png +0 -0
  10. package/assets/docs/addon-controls-args-template.png +0 -0
  11. package/assets/docs/addon-controls-expanded.png +0 -0
  12. package/assets/docs/addon-controls-hero.gif +0 -0
  13. package/assets/docs/addon-controls-install.png +0 -0
  14. package/assets/docs/hero.gif +0 -0
  15. package/assets/docs/highlight.png +0 -0
  16. package/assets/docs/viewport.png +0 -0
  17. package/assets/server/base-preview-head.html +1 -3
  18. package/bin/index.cjs +2 -2
  19. package/dist/actions/decorator.js +67 -72
  20. package/dist/actions/index.cjs +27 -31
  21. package/dist/actions/index.d.ts +0 -3
  22. package/dist/actions/index.js +27 -31
  23. package/dist/actions/preview.cjs +23 -27
  24. package/dist/actions/preview.d.ts +0 -1
  25. package/dist/actions/preview.js +19 -23
  26. package/dist/babel/index.cjs +822 -816
  27. package/dist/babel/index.js +822 -816
  28. package/dist/backgrounds/index.cjs +148 -0
  29. package/dist/backgrounds/index.d.ts +91 -0
  30. package/dist/backgrounds/index.js +130 -0
  31. package/dist/backgrounds/preview.cjs +143 -0
  32. package/dist/backgrounds/preview.d.ts +54 -0
  33. package/dist/backgrounds/preview.js +127 -0
  34. package/dist/bin/index.cjs +73 -92
  35. package/dist/bin/index.js +66 -85
  36. package/dist/builder-manager/index.cjs +316 -296
  37. package/dist/builder-manager/index.js +567 -547
  38. package/dist/channels/index.cjs +1020 -950
  39. package/dist/channels/index.js +1256 -1201
  40. package/dist/cli/bin/index.cjs +198 -198
  41. package/dist/cli/bin/index.js +204 -204
  42. package/dist/cli/index.cjs +61734 -7589
  43. package/dist/cli/index.d.ts +24 -20
  44. package/dist/cli/index.js +61775 -7630
  45. package/dist/common/index.cjs +16133 -9095
  46. package/dist/common/index.d.ts +32 -24
  47. package/dist/common/index.js +16227 -9183
  48. package/dist/component-testing/index.cjs +23 -0
  49. package/dist/component-testing/index.d.ts +3 -0
  50. package/dist/component-testing/index.js +5 -0
  51. package/dist/component-testing/preview.cjs +40 -0
  52. package/dist/component-testing/preview.d.ts +5 -0
  53. package/dist/component-testing/preview.js +25 -0
  54. package/dist/components/index.cjs +6479 -13005
  55. package/dist/components/index.d.ts +8 -257
  56. package/dist/components/index.js +6160 -18689
  57. package/dist/controls/decorator.d.ts +5 -0
  58. package/dist/controls/decorator.js +8 -0
  59. package/dist/controls/index.cjs +26 -0
  60. package/dist/controls/index.d.ts +39 -0
  61. package/dist/controls/index.js +6 -0
  62. package/dist/controls/preview.cjs +26 -0
  63. package/dist/controls/preview.d.ts +54 -0
  64. package/dist/controls/preview.js +9 -0
  65. package/dist/core-events/index.cjs +91 -106
  66. package/dist/core-events/index.d.ts +2 -80
  67. package/dist/core-events/index.js +79 -94
  68. package/dist/core-server/index.cjs +12409 -12231
  69. package/dist/core-server/index.d.ts +32 -23
  70. package/dist/core-server/index.js +12567 -12389
  71. package/dist/core-server/presets/common-manager.css +170 -0
  72. package/dist/core-server/presets/common-manager.js +12153 -12
  73. package/dist/core-server/presets/common-preset.cjs +3004 -3151
  74. package/dist/core-server/presets/common-preset.js +2833 -2981
  75. package/dist/csf/index.d.ts +1 -3
  76. package/dist/csf-tools/index.cjs +412 -403
  77. package/dist/csf-tools/index.d.ts +0 -4
  78. package/dist/csf-tools/index.js +410 -401
  79. package/dist/docs-tools/index.cjs +2569 -575
  80. package/dist/docs-tools/index.js +2565 -564
  81. package/dist/highlight/index.cjs +27 -0
  82. package/dist/highlight/index.d.ts +61 -0
  83. package/dist/highlight/index.js +7 -0
  84. package/dist/highlight/preview.cjs +535 -0
  85. package/dist/highlight/preview.d.ts +54 -0
  86. package/dist/highlight/preview.js +519 -0
  87. package/dist/instrumenter/index.cjs +1411 -1758
  88. package/dist/instrumenter/index.d.ts +8 -7
  89. package/dist/instrumenter/index.js +1325 -1663
  90. package/dist/manager/globals-module-info.cjs +22 -33
  91. package/dist/manager/globals-module-info.js +7 -18
  92. package/dist/manager/globals-runtime.js +45452 -49541
  93. package/dist/manager/runtime.js +4392 -3774
  94. package/dist/manager-api/index.cjs +2622 -2529
  95. package/dist/manager-api/index.d.ts +109 -114
  96. package/dist/manager-api/index.js +2603 -2475
  97. package/dist/manager-errors.js +41 -37
  98. package/dist/measure/index.cjs +476 -0
  99. package/dist/measure/index.d.ts +66 -0
  100. package/dist/measure/index.js +464 -0
  101. package/dist/measure/preview.cjs +466 -0
  102. package/dist/measure/preview.d.ts +59 -0
  103. package/dist/measure/preview.js +450 -0
  104. package/dist/outline/index.cjs +528 -0
  105. package/dist/outline/index.d.ts +66 -0
  106. package/dist/outline/index.js +500 -0
  107. package/dist/outline/preview.cjs +518 -0
  108. package/dist/outline/preview.d.ts +59 -0
  109. package/dist/outline/preview.js +486 -0
  110. package/dist/preview/runtime.js +41973 -38159
  111. package/dist/preview-api/index.cjs +1204 -1293
  112. package/dist/preview-api/index.d.ts +126 -178
  113. package/dist/preview-api/index.js +1614 -1685
  114. package/dist/preview-errors.cjs +65 -51
  115. package/dist/preview-errors.d.ts +6 -2
  116. package/dist/preview-errors.js +176 -142
  117. package/dist/server-errors.cjs +160 -113
  118. package/dist/server-errors.d.ts +12 -2
  119. package/dist/server-errors.js +157 -110
  120. package/dist/telemetry/index.cjs +374 -370
  121. package/dist/telemetry/index.d.ts +1 -1
  122. package/dist/telemetry/index.js +460 -456
  123. package/dist/test/index.cjs +1553 -1552
  124. package/dist/test/index.js +9603 -9514
  125. package/dist/test/preview.cjs +1906 -1905
  126. package/dist/test/preview.d.ts +0 -6
  127. package/dist/test/preview.js +3664 -3603
  128. package/dist/test/spy.cjs +65 -64
  129. package/dist/test/spy.js +59 -58
  130. package/dist/types/index.cjs +11 -12
  131. package/dist/types/index.d.ts +601 -334
  132. package/dist/types/index.js +1 -2
  133. package/dist/viewport/index.cjs +310 -0
  134. package/dist/viewport/index.d.ts +320 -0
  135. package/dist/viewport/index.js +290 -0
  136. package/dist/viewport/preview.cjs +35 -0
  137. package/dist/viewport/preview.d.ts +68 -0
  138. package/dist/viewport/preview.js +19 -0
  139. package/package.json +207 -12
  140. package/dist/actions/manager.js +0 -1196
@@ -1,471 +1,2465 @@
1
- var De = Object.defineProperty;
2
- var o = (e, t) => De(e, "name", { value: t, configurable: !0 });
1
+ var cr = Object.create;
2
+ var Oe = Object.defineProperty;
3
+ var lr = Object.getOwnPropertyDescriptor;
4
+ var ur = Object.getOwnPropertyNames;
5
+ var mr = Object.getPrototypeOf, yr = Object.prototype.hasOwnProperty;
6
+ var r = (n, s) => Oe(n, "name", { value: s, configurable: !0 });
7
+ var fr = (n, s) => () => (s || n((s = { exports: {} }).exports, s), s.exports);
8
+ var dr = (n, s, a, p) => {
9
+ if (s && typeof s == "object" || typeof s == "function")
10
+ for (let c of ur(s))
11
+ !yr.call(n, c) && c !== a && Oe(n, c, { get: () => s[c], enumerable: !(p = lr(s, c)) || p.enumerable });
12
+ return n;
13
+ };
14
+ var Tr = (n, s, a) => (a = n != null ? cr(mr(n)) : {}, dr(
15
+ // If the importer is in node compatibility mode or this is not an ESM
16
+ // file that has been converted to a CommonJS file using a Babel-
17
+ // compatible transform (i.e. "__esModule" has not been set), then set
18
+ // "default" to the CommonJS "module.exports" for node compatibility.
19
+ s || !n || !n.__esModule ? Oe(a, "default", { value: n, enumerable: !0 }) : a,
20
+ n
21
+ ));
22
+
23
+ // ../node_modules/jsdoc-type-pratt-parser/dist/index.js
24
+ var lt = fr((le, ct) => {
25
+ (function(n, s) {
26
+ typeof le == "object" && typeof ct < "u" ? s(le) : typeof define == "function" && define.amd ? define(["exports"], s) : (n = typeof globalThis <
27
+ "u" ? globalThis : n || self, s(n.jtpp = {}));
28
+ })(le, function(n) {
29
+ "use strict";
30
+ function s(e) {
31
+ return e.text !== void 0 && e.text !== "" ? `'${e.type}' with value '${e.text}'` : `'${e.type}'`;
32
+ }
33
+ r(s, "tokenToString");
34
+ class a extends Error {
35
+ static {
36
+ r(this, "NoParsletFoundError");
37
+ }
38
+ constructor(t) {
39
+ super(`No parslet found for token: ${s(t)}`), this.token = t, Object.setPrototypeOf(this, a.prototype);
40
+ }
41
+ getToken() {
42
+ return this.token;
43
+ }
44
+ }
45
+ class p extends Error {
46
+ static {
47
+ r(this, "EarlyEndOfParseError");
48
+ }
49
+ constructor(t) {
50
+ super(`The parsing ended early. The next token was: ${s(t)}`), this.token = t, Object.setPrototypeOf(this, p.prototype);
51
+ }
52
+ getToken() {
53
+ return this.token;
54
+ }
55
+ }
56
+ class c extends Error {
57
+ static {
58
+ r(this, "UnexpectedTypeError");
59
+ }
60
+ constructor(t, o) {
61
+ let i = `Unexpected type: '${t.type}'.`;
62
+ o !== void 0 && (i += ` Message: ${o}`), super(i), Object.setPrototypeOf(this, c.prototype);
63
+ }
64
+ }
65
+ function u(e) {
66
+ return (t) => t.startsWith(e) ? { type: e, text: e } : null;
67
+ }
68
+ r(u, "makePunctuationRule");
69
+ function m(e) {
70
+ let t = 0, o, i = e[0], l = !1;
71
+ if (i !== "'" && i !== '"')
72
+ return null;
73
+ for (; t < e.length; ) {
74
+ if (t++, o = e[t], !l && o === i) {
75
+ t++;
76
+ break;
77
+ }
78
+ l = !l && o === "\\";
79
+ }
80
+ if (o !== i)
81
+ throw new Error("Unterminated String");
82
+ return e.slice(0, t);
83
+ }
84
+ r(m, "getQuoted");
85
+ let T = /[$_\p{ID_Start}]|\\u\p{Hex_Digit}{4}|\\u\{0*(?:\p{Hex_Digit}{1,5}|10\p{Hex_Digit}{4})\}/u, g = /[$\-\p{ID_Continue}\u200C\u200D]|\\u\p{Hex_Digit}{4}|\\u\{0*(?:\p{Hex_Digit}{1,5}|10\p{Hex_Digit}{4})\}/u;
86
+ function w(e) {
87
+ let t = e[0];
88
+ if (!T.test(t))
89
+ return null;
90
+ let o = 1;
91
+ do {
92
+ if (t = e[o], !g.test(t))
93
+ break;
94
+ o++;
95
+ } while (o < e.length);
96
+ return e.slice(0, o);
97
+ }
98
+ r(w, "getIdentifier");
99
+ let b = /^(NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity))/;
100
+ function me(e) {
101
+ var t, o;
102
+ return (o = (t = b.exec(e)) === null || t === void 0 ? void 0 : t[0]) !== null && o !== void 0 ? o : null;
103
+ }
104
+ r(me, "getNumber");
105
+ let $ = /* @__PURE__ */ r((e) => {
106
+ let t = w(e);
107
+ return t == null ? null : {
108
+ type: "Identifier",
109
+ text: t
110
+ };
111
+ }, "identifierRule");
112
+ function E(e) {
113
+ return (t) => {
114
+ if (!t.startsWith(e))
115
+ return null;
116
+ let o = t[e.length];
117
+ return o !== void 0 && g.test(o) ? null : {
118
+ type: e,
119
+ text: e
120
+ };
121
+ };
122
+ }
123
+ r(E, "makeKeyWordRule");
124
+ let X = /* @__PURE__ */ r((e) => {
125
+ let t = m(e);
126
+ return t == null ? null : {
127
+ type: "StringValue",
128
+ text: t
129
+ };
130
+ }, "stringValueRule"), ye = /* @__PURE__ */ r((e) => e.length > 0 ? null : {
131
+ type: "EOF",
132
+ text: ""
133
+ }, "eofRule"), fe = /* @__PURE__ */ r((e) => {
134
+ let t = me(e);
135
+ return t === null ? null : {
136
+ type: "Number",
137
+ text: t
138
+ };
139
+ }, "numberRule"), Dt = [
140
+ ye,
141
+ u("=>"),
142
+ u("("),
143
+ u(")"),
144
+ u("{"),
145
+ u("}"),
146
+ u("["),
147
+ u("]"),
148
+ u("|"),
149
+ u("&"),
150
+ u("<"),
151
+ u(">"),
152
+ u(","),
153
+ u(";"),
154
+ u("*"),
155
+ u("?"),
156
+ u("!"),
157
+ u("="),
158
+ u(":"),
159
+ u("..."),
160
+ u("."),
161
+ u("#"),
162
+ u("~"),
163
+ u("/"),
164
+ u("@"),
165
+ E("undefined"),
166
+ E("null"),
167
+ E("function"),
168
+ E("this"),
169
+ E("new"),
170
+ E("module"),
171
+ E("event"),
172
+ E("external"),
173
+ E("typeof"),
174
+ E("keyof"),
175
+ E("readonly"),
176
+ E("import"),
177
+ E("is"),
178
+ E("in"),
179
+ fe,
180
+ $,
181
+ X
182
+ ], vt = /^\s*\n\s*/;
183
+ class q {
184
+ static {
185
+ r(this, "Lexer");
186
+ }
187
+ static create(t) {
188
+ let o = this.read(t);
189
+ t = o.text;
190
+ let i = this.read(t);
191
+ return t = i.text, new q(t, void 0, o.token, i.token);
192
+ }
193
+ constructor(t, o, i, l) {
194
+ this.text = "", this.text = t, this.previous = o, this.current = i, this.next = l;
195
+ }
196
+ static read(t, o = !1) {
197
+ o = o || vt.test(t), t = t.trim();
198
+ for (let i of Dt) {
199
+ let l = i(t);
200
+ if (l !== null) {
201
+ let y = Object.assign(Object.assign({}, l), { startOfLine: o });
202
+ return t = t.slice(y.text.length), { text: t, token: y };
203
+ }
204
+ }
205
+ throw new Error("Unexpected Token " + t);
206
+ }
207
+ advance() {
208
+ let t = q.read(this.text);
209
+ return new q(t.text, this.current, this.next, t.token);
210
+ }
211
+ }
212
+ function P(e) {
213
+ if (e === void 0)
214
+ throw new Error("Unexpected undefined");
215
+ if (e.type === "JsdocTypeKeyValue" || e.type === "JsdocTypeParameterList" || e.type === "JsdocTypeProperty" || e.type === "JsdocTypeRe\
216
+ adonlyProperty" || e.type === "JsdocTypeObjectField" || e.type === "JsdocTypeJsdocObjectField" || e.type === "JsdocTypeIndexSignature" || e.
217
+ type === "JsdocTypeMappedType")
218
+ throw new c(e);
219
+ return e;
220
+ }
221
+ r(P, "assertRootResult");
222
+ function de(e) {
223
+ return e.type === "JsdocTypeKeyValue" ? H(e) : P(e);
224
+ }
225
+ r(de, "assertPlainKeyValueOrRootResult");
226
+ function kt(e) {
227
+ return e.type === "JsdocTypeName" ? e : H(e);
228
+ }
229
+ r(kt, "assertPlainKeyValueOrNameResult");
230
+ function H(e) {
231
+ if (e.type !== "JsdocTypeKeyValue")
232
+ throw new c(e);
233
+ return e;
234
+ }
235
+ r(H, "assertPlainKeyValueResult");
236
+ function At(e) {
237
+ var t;
238
+ if (e.type === "JsdocTypeVariadic") {
239
+ if (((t = e.element) === null || t === void 0 ? void 0 : t.type) === "JsdocTypeName")
240
+ return e;
241
+ throw new c(e);
242
+ }
243
+ if (e.type !== "JsdocTypeNumber" && e.type !== "JsdocTypeName")
244
+ throw new c(e);
245
+ return e;
246
+ }
247
+ r(At, "assertNumberOrVariadicNameResult");
248
+ function Te(e) {
249
+ return e.type === "JsdocTypeIndexSignature" || e.type === "JsdocTypeMappedType";
250
+ }
251
+ r(Te, "isSquaredProperty");
252
+ var f;
253
+ (function(e) {
254
+ e[e.ALL = 0] = "ALL", e[e.PARAMETER_LIST = 1] = "PARAMETER_LIST", e[e.OBJECT = 2] = "OBJECT", e[e.KEY_VALUE = 3] = "KEY_VALUE", e[e.UNION =
255
+ 4] = "UNION", e[e.INTERSECTION = 5] = "INTERSECTION", e[e.PREFIX = 6] = "PREFIX", e[e.INFIX = 7] = "INFIX", e[e.TUPLE = 8] = "TUPLE", e[e.
256
+ SYMBOL = 9] = "SYMBOL", e[e.OPTIONAL = 10] = "OPTIONAL", e[e.NULLABLE = 11] = "NULLABLE", e[e.KEY_OF_TYPE_OF = 12] = "KEY_OF_TYPE_OF",
257
+ e[e.FUNCTION = 13] = "FUNCTION", e[e.ARROW = 14] = "ARROW", e[e.ARRAY_BRACKETS = 15] = "ARRAY_BRACKETS", e[e.GENERIC = 16] = "GENERIC",
258
+ e[e.NAME_PATH = 17] = "NAME_PATH", e[e.PARENTHESIS = 18] = "PARENTHESIS", e[e.SPECIAL_TYPES = 19] = "SPECIAL_TYPES";
259
+ })(f || (f = {}));
260
+ class L {
261
+ static {
262
+ r(this, "Parser");
263
+ }
264
+ constructor(t, o, i) {
265
+ this.grammar = t, typeof o == "string" ? this._lexer = q.create(o) : this._lexer = o, this.baseParser = i;
266
+ }
267
+ get lexer() {
268
+ return this._lexer;
269
+ }
270
+ /**
271
+ * Parses a given string and throws an error if the parse ended before the end of the string.
272
+ */
273
+ parse() {
274
+ let t = this.parseType(f.ALL);
275
+ if (this.lexer.current.type !== "EOF")
276
+ throw new p(this.lexer.current);
277
+ return t;
278
+ }
279
+ /**
280
+ * Parses with the current lexer and asserts that the result is a {@link RootResult}.
281
+ */
282
+ parseType(t) {
283
+ return P(this.parseIntermediateType(t));
284
+ }
285
+ /**
286
+ * The main parsing function. First it tries to parse the current state in the prefix step, and then it continues
287
+ * to parse the state in the infix step.
288
+ */
289
+ parseIntermediateType(t) {
290
+ let o = this.tryParslets(null, t);
291
+ if (o === null)
292
+ throw new a(this.lexer.current);
293
+ return this.parseInfixIntermediateType(o, t);
294
+ }
295
+ /**
296
+ * In the infix parsing step the parser continues to parse the current state with all parslets until none returns
297
+ * a result.
298
+ */
299
+ parseInfixIntermediateType(t, o) {
300
+ let i = this.tryParslets(t, o);
301
+ for (; i !== null; )
302
+ t = i, i = this.tryParslets(t, o);
303
+ return t;
304
+ }
305
+ /**
306
+ * Tries to parse the current state with all parslets in the grammar and returns the first non null result.
307
+ */
308
+ tryParslets(t, o) {
309
+ for (let i of this.grammar) {
310
+ let l = i(this, o, t);
311
+ if (l !== null)
312
+ return l;
313
+ }
314
+ return null;
315
+ }
316
+ /**
317
+ * If the given type equals the current type of the {@link Lexer} advance the lexer. Return true if the lexer was
318
+ * advanced.
319
+ */
320
+ consume(t) {
321
+ return Array.isArray(t) || (t = [t]), t.includes(this.lexer.current.type) ? (this._lexer = this.lexer.advance(), !0) : !1;
322
+ }
323
+ acceptLexerState(t) {
324
+ this._lexer = t.lexer;
325
+ }
326
+ }
327
+ function Ce(e) {
328
+ return e === "EOF" || e === "|" || e === "," || e === ")" || e === ">";
329
+ }
330
+ r(Ce, "isQuestionMarkUnknownType");
331
+ let ge = /* @__PURE__ */ r((e, t, o) => {
332
+ let i = e.lexer.current.type, l = e.lexer.next.type;
333
+ return o == null && i === "?" && !Ce(l) || o != null && i === "?" ? (e.consume("?"), o == null ? {
334
+ type: "JsdocTypeNullable",
335
+ element: e.parseType(f.NULLABLE),
336
+ meta: {
337
+ position: "prefix"
338
+ }
339
+ } : {
340
+ type: "JsdocTypeNullable",
341
+ element: P(o),
342
+ meta: {
343
+ position: "suffix"
344
+ }
345
+ }) : null;
346
+ }, "nullableParslet");
347
+ function h(e) {
348
+ let t = /* @__PURE__ */ r((o, i, l) => {
349
+ let y = o.lexer.current.type, d = o.lexer.next.type;
350
+ if (l === null) {
351
+ if ("parsePrefix" in e && e.accept(y, d))
352
+ return e.parsePrefix(o);
353
+ } else if ("parseInfix" in e && e.precedence > i && e.accept(y, d))
354
+ return e.parseInfix(o, l);
355
+ return null;
356
+ }, "parslet");
357
+ return Object.defineProperty(t, "name", {
358
+ value: e.name
359
+ }), t;
360
+ }
361
+ r(h, "composeParslet");
362
+ let Q = h({
363
+ name: "optionalParslet",
364
+ accept: /* @__PURE__ */ r((e) => e === "=", "accept"),
365
+ precedence: f.OPTIONAL,
366
+ parsePrefix: /* @__PURE__ */ r((e) => (e.consume("="), {
367
+ type: "JsdocTypeOptional",
368
+ element: e.parseType(f.OPTIONAL),
369
+ meta: {
370
+ position: "prefix"
371
+ }
372
+ }), "parsePrefix"),
373
+ parseInfix: /* @__PURE__ */ r((e, t) => (e.consume("="), {
374
+ type: "JsdocTypeOptional",
375
+ element: P(t),
376
+ meta: {
377
+ position: "suffix"
378
+ }
379
+ }), "parseInfix")
380
+ }), Z = h({
381
+ name: "numberParslet",
382
+ accept: /* @__PURE__ */ r((e) => e === "Number", "accept"),
383
+ parsePrefix: /* @__PURE__ */ r((e) => {
384
+ let t = parseFloat(e.lexer.current.text);
385
+ return e.consume("Number"), {
386
+ type: "JsdocTypeNumber",
387
+ value: t
388
+ };
389
+ }, "parsePrefix")
390
+ }), Rt = h({
391
+ name: "parenthesisParslet",
392
+ accept: /* @__PURE__ */ r((e) => e === "(", "accept"),
393
+ parsePrefix: /* @__PURE__ */ r((e) => {
394
+ if (e.consume("("), e.consume(")"))
395
+ return {
396
+ type: "JsdocTypeParameterList",
397
+ elements: []
398
+ };
399
+ let t = e.parseIntermediateType(f.ALL);
400
+ if (!e.consume(")"))
401
+ throw new Error("Unterminated parenthesis");
402
+ return t.type === "JsdocTypeParameterList" ? t : t.type === "JsdocTypeKeyValue" ? {
403
+ type: "JsdocTypeParameterList",
404
+ elements: [t]
405
+ } : {
406
+ type: "JsdocTypeParenthesis",
407
+ element: P(t)
408
+ };
409
+ }, "parsePrefix")
410
+ }), It = h({
411
+ name: "specialTypesParslet",
412
+ accept: /* @__PURE__ */ r((e, t) => e === "?" && Ce(t) || e === "null" || e === "undefined" || e === "*", "accept"),
413
+ parsePrefix: /* @__PURE__ */ r((e) => {
414
+ if (e.consume("null"))
415
+ return {
416
+ type: "JsdocTypeNull"
417
+ };
418
+ if (e.consume("undefined"))
419
+ return {
420
+ type: "JsdocTypeUndefined"
421
+ };
422
+ if (e.consume("*"))
423
+ return {
424
+ type: "JsdocTypeAny"
425
+ };
426
+ if (e.consume("?"))
427
+ return {
428
+ type: "JsdocTypeUnknown"
429
+ };
430
+ throw new Error("Unacceptable token: " + e.lexer.current.text);
431
+ }, "parsePrefix")
432
+ }), Ft = h({
433
+ name: "notNullableParslet",
434
+ accept: /* @__PURE__ */ r((e) => e === "!", "accept"),
435
+ precedence: f.NULLABLE,
436
+ parsePrefix: /* @__PURE__ */ r((e) => (e.consume("!"), {
437
+ type: "JsdocTypeNotNullable",
438
+ element: e.parseType(f.NULLABLE),
439
+ meta: {
440
+ position: "prefix"
441
+ }
442
+ }), "parsePrefix"),
443
+ parseInfix: /* @__PURE__ */ r((e, t) => (e.consume("!"), {
444
+ type: "JsdocTypeNotNullable",
445
+ element: P(t),
446
+ meta: {
447
+ position: "suffix"
448
+ }
449
+ }), "parseInfix")
450
+ });
451
+ function jt({ allowTrailingComma: e }) {
452
+ return h({
453
+ name: "parameterListParslet",
454
+ accept: /* @__PURE__ */ r((t) => t === ",", "accept"),
455
+ precedence: f.PARAMETER_LIST,
456
+ parseInfix: /* @__PURE__ */ r((t, o) => {
457
+ let i = [
458
+ de(o)
459
+ ];
460
+ t.consume(",");
461
+ do
462
+ try {
463
+ let l = t.parseIntermediateType(f.PARAMETER_LIST);
464
+ i.push(de(l));
465
+ } catch (l) {
466
+ if (e && l instanceof a)
467
+ break;
468
+ throw l;
469
+ }
470
+ while (t.consume(","));
471
+ if (i.length > 0 && i.slice(0, -1).some((l) => l.type === "JsdocTypeVariadic"))
472
+ throw new Error("Only the last parameter may be a rest parameter");
473
+ return {
474
+ type: "JsdocTypeParameterList",
475
+ elements: i
476
+ };
477
+ }, "parseInfix")
478
+ });
479
+ }
480
+ r(jt, "createParameterListParslet");
481
+ let _t = h({
482
+ name: "genericParslet",
483
+ accept: /* @__PURE__ */ r((e, t) => e === "<" || e === "." && t === "<", "accept"),
484
+ precedence: f.GENERIC,
485
+ parseInfix: /* @__PURE__ */ r((e, t) => {
486
+ let o = e.consume(".");
487
+ e.consume("<");
488
+ let i = [];
489
+ do
490
+ i.push(e.parseType(f.PARAMETER_LIST));
491
+ while (e.consume(","));
492
+ if (!e.consume(">"))
493
+ throw new Error("Unterminated generic parameter list");
494
+ return {
495
+ type: "JsdocTypeGeneric",
496
+ left: P(t),
497
+ elements: i,
498
+ meta: {
499
+ brackets: "angle",
500
+ dot: o
501
+ }
502
+ };
503
+ }, "parseInfix")
504
+ }), Lt = h({
505
+ name: "unionParslet",
506
+ accept: /* @__PURE__ */ r((e) => e === "|", "accept"),
507
+ precedence: f.UNION,
508
+ parseInfix: /* @__PURE__ */ r((e, t) => {
509
+ e.consume("|");
510
+ let o = [];
511
+ do
512
+ o.push(e.parseType(f.UNION));
513
+ while (e.consume("|"));
514
+ return {
515
+ type: "JsdocTypeUnion",
516
+ elements: [P(t), ...o]
517
+ };
518
+ }, "parseInfix")
519
+ }), he = [
520
+ ge,
521
+ Q,
522
+ Z,
523
+ Rt,
524
+ It,
525
+ Ft,
526
+ jt({
527
+ allowTrailingComma: !0
528
+ }),
529
+ _t,
530
+ Lt,
531
+ Q
532
+ ];
533
+ function ee({ allowSquareBracketsOnAnyType: e, allowJsdocNamePaths: t, pathGrammar: o }) {
534
+ return /* @__PURE__ */ r(function(l, y, d) {
535
+ if (d == null || y >= f.NAME_PATH)
536
+ return null;
537
+ let x = l.lexer.current.type, N = l.lexer.next.type;
538
+ if (!(x === "." && N !== "<" || x === "[" && (e || d.type === "JsdocTypeName") || t && (x === "~" || x === "#")))
539
+ return null;
540
+ let D, ne = !1;
541
+ l.consume(".") ? D = "property" : l.consume("[") ? (D = "property-brackets", ne = !0) : l.consume("~") ? D = "inner" : (l.consume("#"),
542
+ D = "instance");
543
+ let He = o !== null ? new L(o, l.lexer, l) : l, k = He.parseIntermediateType(f.NAME_PATH);
544
+ l.acceptLexerState(He);
545
+ let G;
546
+ switch (k.type) {
547
+ case "JsdocTypeName":
548
+ G = {
549
+ type: "JsdocTypeProperty",
550
+ value: k.value,
551
+ meta: {
552
+ quote: void 0
553
+ }
554
+ };
555
+ break;
556
+ case "JsdocTypeNumber":
557
+ G = {
558
+ type: "JsdocTypeProperty",
559
+ value: k.value.toString(10),
560
+ meta: {
561
+ quote: void 0
562
+ }
563
+ };
564
+ break;
565
+ case "JsdocTypeStringValue":
566
+ G = {
567
+ type: "JsdocTypeProperty",
568
+ value: k.value,
569
+ meta: {
570
+ quote: k.meta.quote
571
+ }
572
+ };
573
+ break;
574
+ case "JsdocTypeSpecialNamePath":
575
+ if (k.specialType === "event")
576
+ G = k;
577
+ else
578
+ throw new c(k, "Type 'JsdocTypeSpecialNamePath' is only allowed with specialType 'event'");
579
+ break;
580
+ default:
581
+ throw new c(k, "Expecting 'JsdocTypeName', 'JsdocTypeNumber', 'JsdocStringValue' or 'JsdocTypeSpecialNamePath'");
582
+ }
583
+ if (ne && !l.consume("]")) {
584
+ let Qe = l.lexer.current;
585
+ throw new Error(`Unterminated square brackets. Next token is '${Qe.type}' with text '${Qe.text}'`);
586
+ }
587
+ return {
588
+ type: "JsdocTypeNamePath",
589
+ left: P(d),
590
+ right: G,
591
+ pathType: D
592
+ };
593
+ }, "namePathParslet");
594
+ }
595
+ r(ee, "createNamePathParslet");
596
+ function R({ allowedAdditionalTokens: e }) {
597
+ return h({
598
+ name: "nameParslet",
599
+ accept: /* @__PURE__ */ r((t) => t === "Identifier" || t === "this" || t === "new" || e.includes(t), "accept"),
600
+ parsePrefix: /* @__PURE__ */ r((t) => {
601
+ let { type: o, text: i } = t.lexer.current;
602
+ return t.consume(o), {
603
+ type: "JsdocTypeName",
604
+ value: i
605
+ };
606
+ }, "parsePrefix")
607
+ });
608
+ }
609
+ r(R, "createNameParslet");
610
+ let Y = h({
611
+ name: "stringValueParslet",
612
+ accept: /* @__PURE__ */ r((e) => e === "StringValue", "accept"),
613
+ parsePrefix: /* @__PURE__ */ r((e) => {
614
+ let t = e.lexer.current.text;
615
+ return e.consume("StringValue"), {
616
+ type: "JsdocTypeStringValue",
617
+ value: t.slice(1, -1),
618
+ meta: {
619
+ quote: t[0] === "'" ? "single" : "double"
620
+ }
621
+ };
622
+ }, "parsePrefix")
623
+ });
624
+ function te({ pathGrammar: e, allowedTypes: t }) {
625
+ return h({
626
+ name: "specialNamePathParslet",
627
+ accept: /* @__PURE__ */ r((o) => t.includes(o), "accept"),
628
+ parsePrefix: /* @__PURE__ */ r((o) => {
629
+ let i = o.lexer.current.type;
630
+ if (o.consume(i), !o.consume(":"))
631
+ return {
632
+ type: "JsdocTypeName",
633
+ value: i
634
+ };
635
+ let l, y = o.lexer.current;
636
+ if (o.consume("StringValue"))
637
+ l = {
638
+ type: "JsdocTypeSpecialNamePath",
639
+ value: y.text.slice(1, -1),
640
+ specialType: i,
641
+ meta: {
642
+ quote: y.text[0] === "'" ? "single" : "double"
643
+ }
644
+ };
645
+ else {
646
+ let N = "", S = ["Identifier", "@", "/"];
647
+ for (; S.some((D) => o.consume(D)); )
648
+ N += y.text, y = o.lexer.current;
649
+ l = {
650
+ type: "JsdocTypeSpecialNamePath",
651
+ value: N,
652
+ specialType: i,
653
+ meta: {
654
+ quote: void 0
655
+ }
656
+ };
657
+ }
658
+ let d = new L(e, o.lexer, o), x = d.parseInfixIntermediateType(l, f.ALL);
659
+ return o.acceptLexerState(d), P(x);
660
+ }, "parsePrefix")
661
+ });
662
+ }
663
+ r(te, "createSpecialNamePathParslet");
664
+ let Me = [
665
+ R({
666
+ allowedAdditionalTokens: ["external", "module"]
667
+ }),
668
+ Y,
669
+ Z,
670
+ ee({
671
+ allowSquareBracketsOnAnyType: !1,
672
+ allowJsdocNamePaths: !0,
673
+ pathGrammar: null
674
+ })
675
+ ], V = [
676
+ ...Me,
677
+ te({
678
+ allowedTypes: ["event"],
679
+ pathGrammar: Me
680
+ })
681
+ ];
682
+ function xe(e) {
683
+ let t;
684
+ if (e.type === "JsdocTypeParameterList")
685
+ t = e.elements;
686
+ else if (e.type === "JsdocTypeParenthesis")
687
+ t = [e.element];
688
+ else
689
+ throw new c(e);
690
+ return t.map((o) => de(o));
691
+ }
692
+ r(xe, "getParameters");
693
+ function Vt(e) {
694
+ let t = xe(e);
695
+ if (t.some((o) => o.type === "JsdocTypeKeyValue"))
696
+ throw new Error("No parameter should be named");
697
+ return t;
698
+ }
699
+ r(Vt, "getUnnamedParameters");
700
+ function Je({ allowNamedParameters: e, allowNoReturnType: t, allowWithoutParenthesis: o, allowNewAsFunctionKeyword: i }) {
701
+ return h({
702
+ name: "functionParslet",
703
+ accept: /* @__PURE__ */ r((l, y) => l === "function" || i && l === "new" && y === "(", "accept"),
704
+ parsePrefix: /* @__PURE__ */ r((l) => {
705
+ let y = l.consume("new");
706
+ l.consume("function");
707
+ let d = l.lexer.current.type === "(";
708
+ if (!d) {
709
+ if (!o)
710
+ throw new Error("function is missing parameter list");
711
+ return {
712
+ type: "JsdocTypeName",
713
+ value: "function"
714
+ };
715
+ }
716
+ let x = {
717
+ type: "JsdocTypeFunction",
718
+ parameters: [],
719
+ arrow: !1,
720
+ constructor: y,
721
+ parenthesis: d
722
+ }, N = l.parseIntermediateType(f.FUNCTION);
723
+ if (e === void 0)
724
+ x.parameters = Vt(N);
725
+ else {
726
+ if (y && N.type === "JsdocTypeFunction" && N.arrow)
727
+ return x = N, x.constructor = !0, x;
728
+ x.parameters = xe(N);
729
+ for (let S of x.parameters)
730
+ if (S.type === "JsdocTypeKeyValue" && !e.includes(S.key))
731
+ throw new Error(`only allowed named parameters are ${e.join(", ")} but got ${S.type}`);
732
+ }
733
+ if (l.consume(":"))
734
+ x.returnType = l.parseType(f.PREFIX);
735
+ else if (!t)
736
+ throw new Error("function is missing return type");
737
+ return x;
738
+ }, "parsePrefix")
739
+ });
740
+ }
741
+ r(Je, "createFunctionParslet");
742
+ function Pe({ allowPostfix: e, allowEnclosingBrackets: t }) {
743
+ return h({
744
+ name: "variadicParslet",
745
+ accept: /* @__PURE__ */ r((o) => o === "...", "accept"),
746
+ precedence: f.PREFIX,
747
+ parsePrefix: /* @__PURE__ */ r((o) => {
748
+ o.consume("...");
749
+ let i = t && o.consume("[");
750
+ try {
751
+ let l = o.parseType(f.PREFIX);
752
+ if (i && !o.consume("]"))
753
+ throw new Error("Unterminated variadic type. Missing ']'");
754
+ return {
755
+ type: "JsdocTypeVariadic",
756
+ element: P(l),
757
+ meta: {
758
+ position: "prefix",
759
+ squareBrackets: i
760
+ }
761
+ };
762
+ } catch (l) {
763
+ if (l instanceof a) {
764
+ if (i)
765
+ throw new Error("Empty square brackets for variadic are not allowed.");
766
+ return {
767
+ type: "JsdocTypeVariadic",
768
+ meta: {
769
+ position: void 0,
770
+ squareBrackets: !1
771
+ }
772
+ };
773
+ } else
774
+ throw l;
775
+ }
776
+ }, "parsePrefix"),
777
+ parseInfix: e ? (o, i) => (o.consume("..."), {
778
+ type: "JsdocTypeVariadic",
779
+ element: P(i),
780
+ meta: {
781
+ position: "suffix",
782
+ squareBrackets: !1
783
+ }
784
+ }) : void 0
785
+ });
786
+ }
787
+ r(Pe, "createVariadicParslet");
788
+ let Ke = h({
789
+ name: "symbolParslet",
790
+ accept: /* @__PURE__ */ r((e) => e === "(", "accept"),
791
+ precedence: f.SYMBOL,
792
+ parseInfix: /* @__PURE__ */ r((e, t) => {
793
+ if (t.type !== "JsdocTypeName")
794
+ throw new Error("Symbol expects a name on the left side. (Reacting on '(')");
795
+ e.consume("(");
796
+ let o = {
797
+ type: "JsdocTypeSymbol",
798
+ value: t.value
799
+ };
800
+ if (!e.consume(")")) {
801
+ let i = e.parseIntermediateType(f.SYMBOL);
802
+ if (o.element = At(i), !e.consume(")"))
803
+ throw new Error("Symbol does not end after value");
804
+ }
805
+ return o;
806
+ }, "parseInfix")
807
+ }), $e = h({
808
+ name: "arrayBracketsParslet",
809
+ precedence: f.ARRAY_BRACKETS,
810
+ accept: /* @__PURE__ */ r((e, t) => e === "[" && t === "]", "accept"),
811
+ parseInfix: /* @__PURE__ */ r((e, t) => (e.consume("["), e.consume("]"), {
812
+ type: "JsdocTypeGeneric",
813
+ left: {
814
+ type: "JsdocTypeName",
815
+ value: "Array"
816
+ },
817
+ elements: [
818
+ P(t)
819
+ ],
820
+ meta: {
821
+ brackets: "square",
822
+ dot: !1
823
+ }
824
+ }), "parseInfix")
825
+ });
826
+ function we({ objectFieldGrammar: e, allowKeyTypes: t }) {
827
+ return h({
828
+ name: "objectParslet",
829
+ accept: /* @__PURE__ */ r((o) => o === "{", "accept"),
830
+ parsePrefix: /* @__PURE__ */ r((o) => {
831
+ o.consume("{");
832
+ let i = {
833
+ type: "JsdocTypeObject",
834
+ meta: {
835
+ separator: "comma"
836
+ },
837
+ elements: []
838
+ };
839
+ if (!o.consume("}")) {
840
+ let l, y = new L(e, o.lexer, o);
841
+ for (; ; ) {
842
+ y.acceptLexerState(o);
843
+ let d = y.parseIntermediateType(f.OBJECT);
844
+ o.acceptLexerState(y), d === void 0 && t && (d = o.parseIntermediateType(f.OBJECT));
845
+ let x = !1;
846
+ if (d.type === "JsdocTypeNullable" && (x = !0, d = d.element), d.type === "JsdocTypeNumber" || d.type === "JsdocTypeName" || d.
847
+ type === "JsdocTypeStringValue") {
848
+ let S;
849
+ d.type === "JsdocTypeStringValue" && (S = d.meta.quote), i.elements.push({
850
+ type: "JsdocTypeObjectField",
851
+ key: d.value.toString(),
852
+ right: void 0,
853
+ optional: x,
854
+ readonly: !1,
855
+ meta: {
856
+ quote: S
857
+ }
858
+ });
859
+ } else if (d.type === "JsdocTypeObjectField" || d.type === "JsdocTypeJsdocObjectField")
860
+ i.elements.push(d);
861
+ else
862
+ throw new c(d);
863
+ if (o.lexer.current.startOfLine)
864
+ l = "linebreak";
865
+ else if (o.consume(","))
866
+ l = "comma";
867
+ else if (o.consume(";"))
868
+ l = "semicolon";
869
+ else
870
+ break;
871
+ if (o.lexer.current.type === "}")
872
+ break;
873
+ }
874
+ if (i.meta.separator = l ?? "comma", !o.consume("}"))
875
+ throw new Error("Unterminated record type. Missing '}'");
876
+ }
877
+ return i;
878
+ }, "parsePrefix")
879
+ });
880
+ }
881
+ r(we, "createObjectParslet");
882
+ function be({ allowSquaredProperties: e, allowKeyTypes: t, allowReadonly: o, allowOptional: i }) {
883
+ return h({
884
+ name: "objectFieldParslet",
885
+ precedence: f.KEY_VALUE,
886
+ accept: /* @__PURE__ */ r((l) => l === ":", "accept"),
887
+ parseInfix: /* @__PURE__ */ r((l, y) => {
888
+ var d;
889
+ let x = !1, N = !1;
890
+ i && y.type === "JsdocTypeNullable" && (x = !0, y = y.element), o && y.type === "JsdocTypeReadonlyProperty" && (N = !0, y = y.element);
891
+ let S = (d = l.baseParser) !== null && d !== void 0 ? d : l;
892
+ if (S.acceptLexerState(l), y.type === "JsdocTypeNumber" || y.type === "JsdocTypeName" || y.type === "JsdocTypeStringValue" || Te(y)) {
893
+ if (Te(y) && !e)
894
+ throw new c(y);
895
+ S.consume(":");
896
+ let D;
897
+ y.type === "JsdocTypeStringValue" && (D = y.meta.quote);
898
+ let ne = S.parseType(f.KEY_VALUE);
899
+ return l.acceptLexerState(S), {
900
+ type: "JsdocTypeObjectField",
901
+ key: Te(y) ? y : y.value.toString(),
902
+ right: ne,
903
+ optional: x,
904
+ readonly: N,
905
+ meta: {
906
+ quote: D
907
+ }
908
+ };
909
+ } else {
910
+ if (!t)
911
+ throw new c(y);
912
+ S.consume(":");
913
+ let D = S.parseType(f.KEY_VALUE);
914
+ return l.acceptLexerState(S), {
915
+ type: "JsdocTypeJsdocObjectField",
916
+ left: P(y),
917
+ right: D
918
+ };
919
+ }
920
+ }, "parseInfix")
921
+ });
922
+ }
923
+ r(be, "createObjectFieldParslet");
924
+ function Ee({ allowOptional: e, allowVariadic: t }) {
925
+ return h({
926
+ name: "keyValueParslet",
927
+ precedence: f.KEY_VALUE,
928
+ accept: /* @__PURE__ */ r((o) => o === ":", "accept"),
929
+ parseInfix: /* @__PURE__ */ r((o, i) => {
930
+ let l = !1, y = !1;
931
+ if (e && i.type === "JsdocTypeNullable" && (l = !0, i = i.element), t && i.type === "JsdocTypeVariadic" && i.element !== void 0 &&
932
+ (y = !0, i = i.element), i.type !== "JsdocTypeName")
933
+ throw new c(i);
934
+ o.consume(":");
935
+ let d = o.parseType(f.KEY_VALUE);
936
+ return {
937
+ type: "JsdocTypeKeyValue",
938
+ key: i.value,
939
+ right: d,
940
+ optional: l,
941
+ variadic: y
942
+ };
943
+ }, "parseInfix")
944
+ });
945
+ }
946
+ r(Ee, "createKeyValueParslet");
947
+ let qe = [
948
+ ...he,
949
+ Je({
950
+ allowWithoutParenthesis: !0,
951
+ allowNamedParameters: ["this", "new"],
952
+ allowNoReturnType: !0,
953
+ allowNewAsFunctionKeyword: !1
954
+ }),
955
+ Y,
956
+ te({
957
+ allowedTypes: ["module", "external", "event"],
958
+ pathGrammar: V
959
+ }),
960
+ Pe({
961
+ allowEnclosingBrackets: !0,
962
+ allowPostfix: !0
963
+ }),
964
+ R({
965
+ allowedAdditionalTokens: ["keyof"]
966
+ }),
967
+ Ke,
968
+ $e,
969
+ ee({
970
+ allowSquareBracketsOnAnyType: !1,
971
+ allowJsdocNamePaths: !0,
972
+ pathGrammar: V
973
+ })
974
+ ], Ut = [
975
+ ...qe,
976
+ we({
977
+ // jsdoc syntax allows full types as keys, so we need to pull in the full grammar here
978
+ // we leave out the object type deliberately
979
+ objectFieldGrammar: [
980
+ R({
981
+ allowedAdditionalTokens: ["module", "in"]
982
+ }),
983
+ be({
984
+ allowSquaredProperties: !1,
985
+ allowKeyTypes: !0,
986
+ allowOptional: !1,
987
+ allowReadonly: !1
988
+ }),
989
+ ...qe
990
+ ],
991
+ allowKeyTypes: !0
992
+ }),
993
+ Ee({
994
+ allowOptional: !0,
995
+ allowVariadic: !0
996
+ })
997
+ ], Ye = h({
998
+ name: "typeOfParslet",
999
+ accept: /* @__PURE__ */ r((e) => e === "typeof", "accept"),
1000
+ parsePrefix: /* @__PURE__ */ r((e) => (e.consume("typeof"), {
1001
+ type: "JsdocTypeTypeof",
1002
+ element: P(e.parseType(f.KEY_OF_TYPE_OF))
1003
+ }), "parsePrefix")
1004
+ }), Bt = [
1005
+ R({
1006
+ allowedAdditionalTokens: ["module", "keyof", "event", "external", "in"]
1007
+ }),
1008
+ ge,
1009
+ Q,
1010
+ Y,
1011
+ Z,
1012
+ be({
1013
+ allowSquaredProperties: !1,
1014
+ allowKeyTypes: !1,
1015
+ allowOptional: !1,
1016
+ allowReadonly: !1
1017
+ })
1018
+ ], Ct = [
1019
+ ...he,
1020
+ we({
1021
+ allowKeyTypes: !1,
1022
+ objectFieldGrammar: Bt
1023
+ }),
1024
+ R({
1025
+ allowedAdditionalTokens: ["event", "external", "in"]
1026
+ }),
1027
+ Ye,
1028
+ Je({
1029
+ allowWithoutParenthesis: !1,
1030
+ allowNamedParameters: ["this", "new"],
1031
+ allowNoReturnType: !0,
1032
+ allowNewAsFunctionKeyword: !1
1033
+ }),
1034
+ Pe({
1035
+ allowEnclosingBrackets: !1,
1036
+ allowPostfix: !1
1037
+ }),
1038
+ // additional name parslet is needed for some special cases
1039
+ R({
1040
+ allowedAdditionalTokens: ["keyof"]
1041
+ }),
1042
+ te({
1043
+ allowedTypes: ["module"],
1044
+ pathGrammar: V
1045
+ }),
1046
+ ee({
1047
+ allowSquareBracketsOnAnyType: !1,
1048
+ allowJsdocNamePaths: !0,
1049
+ pathGrammar: V
1050
+ }),
1051
+ Ee({
1052
+ allowOptional: !1,
1053
+ allowVariadic: !1
1054
+ }),
1055
+ Ke
1056
+ ];
1057
+ function Mt({ allowQuestionMark: e }) {
1058
+ return h({
1059
+ name: "tupleParslet",
1060
+ accept: /* @__PURE__ */ r((t) => t === "[", "accept"),
1061
+ parsePrefix: /* @__PURE__ */ r((t) => {
1062
+ t.consume("[");
1063
+ let o = {
1064
+ type: "JsdocTypeTuple",
1065
+ elements: []
1066
+ };
1067
+ if (t.consume("]"))
1068
+ return o;
1069
+ let i = t.parseIntermediateType(f.ALL);
1070
+ if (i.type === "JsdocTypeParameterList" ? i.elements[0].type === "JsdocTypeKeyValue" ? o.elements = i.elements.map(H) : o.elements =
1071
+ i.elements.map(P) : i.type === "JsdocTypeKeyValue" ? o.elements = [H(i)] : o.elements = [P(i)], !t.consume("]"))
1072
+ throw new Error("Unterminated '['");
1073
+ if (!e && o.elements.some((l) => l.type === "JsdocTypeUnknown"))
1074
+ throw new Error("Question mark in tuple not allowed");
1075
+ return o;
1076
+ }, "parsePrefix")
1077
+ });
1078
+ }
1079
+ r(Mt, "createTupleParslet");
1080
+ let Kt = h({
1081
+ name: "keyOfParslet",
1082
+ accept: /* @__PURE__ */ r((e) => e === "keyof", "accept"),
1083
+ parsePrefix: /* @__PURE__ */ r((e) => (e.consume("keyof"), {
1084
+ type: "JsdocTypeKeyof",
1085
+ element: P(e.parseType(f.KEY_OF_TYPE_OF))
1086
+ }), "parsePrefix")
1087
+ }), $t = h({
1088
+ name: "importParslet",
1089
+ accept: /* @__PURE__ */ r((e) => e === "import", "accept"),
1090
+ parsePrefix: /* @__PURE__ */ r((e) => {
1091
+ if (e.consume("import"), !e.consume("("))
1092
+ throw new Error("Missing parenthesis after import keyword");
1093
+ let t = e.parseType(f.PREFIX);
1094
+ if (t.type !== "JsdocTypeStringValue")
1095
+ throw new Error("Only string values are allowed as paths for imports");
1096
+ if (!e.consume(")"))
1097
+ throw new Error("Missing closing parenthesis after import keyword");
1098
+ return {
1099
+ type: "JsdocTypeImport",
1100
+ element: t
1101
+ };
1102
+ }, "parsePrefix")
1103
+ }), qt = h({
1104
+ name: "readonlyPropertyParslet",
1105
+ accept: /* @__PURE__ */ r((e) => e === "readonly", "accept"),
1106
+ parsePrefix: /* @__PURE__ */ r((e) => (e.consume("readonly"), {
1107
+ type: "JsdocTypeReadonlyProperty",
1108
+ element: e.parseType(f.KEY_VALUE)
1109
+ }), "parsePrefix")
1110
+ }), Yt = h({
1111
+ name: "arrowFunctionParslet",
1112
+ precedence: f.ARROW,
1113
+ accept: /* @__PURE__ */ r((e) => e === "=>", "accept"),
1114
+ parseInfix: /* @__PURE__ */ r((e, t) => (e.consume("=>"), {
1115
+ type: "JsdocTypeFunction",
1116
+ parameters: xe(t).map(kt),
1117
+ arrow: !0,
1118
+ constructor: !1,
1119
+ parenthesis: !0,
1120
+ returnType: e.parseType(f.OBJECT)
1121
+ }), "parseInfix")
1122
+ }), Wt = h({
1123
+ name: "intersectionParslet",
1124
+ accept: /* @__PURE__ */ r((e) => e === "&", "accept"),
1125
+ precedence: f.INTERSECTION,
1126
+ parseInfix: /* @__PURE__ */ r((e, t) => {
1127
+ e.consume("&");
1128
+ let o = [];
1129
+ do
1130
+ o.push(e.parseType(f.INTERSECTION));
1131
+ while (e.consume("&"));
1132
+ return {
1133
+ type: "JsdocTypeIntersection",
1134
+ elements: [P(t), ...o]
1135
+ };
1136
+ }, "parseInfix")
1137
+ }), Gt = h({
1138
+ name: "predicateParslet",
1139
+ precedence: f.INFIX,
1140
+ accept: /* @__PURE__ */ r((e) => e === "is", "accept"),
1141
+ parseInfix: /* @__PURE__ */ r((e, t) => {
1142
+ if (t.type !== "JsdocTypeName")
1143
+ throw new c(t, "A typescript predicate always has to have a name on the left side.");
1144
+ return e.consume("is"), {
1145
+ type: "JsdocTypePredicate",
1146
+ left: t,
1147
+ right: P(e.parseIntermediateType(f.INFIX))
1148
+ };
1149
+ }, "parseInfix")
1150
+ }), zt = h({
1151
+ name: "objectSquareBracketPropertyParslet",
1152
+ accept: /* @__PURE__ */ r((e) => e === "[", "accept"),
1153
+ parsePrefix: /* @__PURE__ */ r((e) => {
1154
+ if (e.baseParser === void 0)
1155
+ throw new Error("Only allowed inside object grammar");
1156
+ e.consume("[");
1157
+ let t = e.lexer.current.text;
1158
+ e.consume("Identifier");
1159
+ let o;
1160
+ if (e.consume(":")) {
1161
+ let i = e.baseParser;
1162
+ i.acceptLexerState(e), o = {
1163
+ type: "JsdocTypeIndexSignature",
1164
+ key: t,
1165
+ right: i.parseType(f.ARRAY_BRACKETS)
1166
+ }, e.acceptLexerState(i);
1167
+ } else if (e.consume("in")) {
1168
+ let i = e.baseParser;
1169
+ i.acceptLexerState(e), o = {
1170
+ type: "JsdocTypeMappedType",
1171
+ key: t,
1172
+ right: i.parseType(f.ARRAY_BRACKETS)
1173
+ }, e.acceptLexerState(i);
1174
+ } else
1175
+ throw new Error("Missing ':' or 'in' inside square bracketed property.");
1176
+ if (!e.consume("]"))
1177
+ throw new Error("Unterminated square brackets");
1178
+ return o;
1179
+ }, "parsePrefix")
1180
+ }), Xt = [
1181
+ qt,
1182
+ R({
1183
+ allowedAdditionalTokens: ["module", "event", "keyof", "event", "external", "in"]
1184
+ }),
1185
+ ge,
1186
+ Q,
1187
+ Y,
1188
+ Z,
1189
+ be({
1190
+ allowSquaredProperties: !0,
1191
+ allowKeyTypes: !1,
1192
+ allowOptional: !0,
1193
+ allowReadonly: !0
1194
+ }),
1195
+ zt
1196
+ ], Ht = [
1197
+ ...he,
1198
+ we({
1199
+ allowKeyTypes: !1,
1200
+ objectFieldGrammar: Xt
1201
+ }),
1202
+ Ye,
1203
+ Kt,
1204
+ $t,
1205
+ Y,
1206
+ Je({
1207
+ allowWithoutParenthesis: !0,
1208
+ allowNoReturnType: !1,
1209
+ allowNamedParameters: ["this", "new", "args"],
1210
+ allowNewAsFunctionKeyword: !0
1211
+ }),
1212
+ Mt({
1213
+ allowQuestionMark: !1
1214
+ }),
1215
+ Pe({
1216
+ allowEnclosingBrackets: !1,
1217
+ allowPostfix: !1
1218
+ }),
1219
+ R({
1220
+ allowedAdditionalTokens: ["event", "external", "in"]
1221
+ }),
1222
+ te({
1223
+ allowedTypes: ["module"],
1224
+ pathGrammar: V
1225
+ }),
1226
+ $e,
1227
+ Yt,
1228
+ ee({
1229
+ allowSquareBracketsOnAnyType: !0,
1230
+ allowJsdocNamePaths: !1,
1231
+ pathGrammar: V
1232
+ }),
1233
+ Wt,
1234
+ Gt,
1235
+ Ee({
1236
+ allowVariadic: !0,
1237
+ allowOptional: !0
1238
+ })
1239
+ ];
1240
+ function We(e, t) {
1241
+ switch (t) {
1242
+ case "closure":
1243
+ return new L(Ct, e).parse();
1244
+ case "jsdoc":
1245
+ return new L(Ut, e).parse();
1246
+ case "typescript":
1247
+ return new L(Ht, e).parse();
1248
+ }
1249
+ }
1250
+ r(We, "parse");
1251
+ function Qt(e, t = ["typescript", "closure", "jsdoc"]) {
1252
+ let o;
1253
+ for (let i of t)
1254
+ try {
1255
+ return We(e, i);
1256
+ } catch (l) {
1257
+ o = l;
1258
+ }
1259
+ throw o;
1260
+ }
1261
+ r(Qt, "tryParse");
1262
+ function W(e, t) {
1263
+ let o = e[t.type];
1264
+ if (o === void 0)
1265
+ throw new Error(`In this set of transform rules exists no rule for type ${t.type}.`);
1266
+ return o(t, (i) => W(e, i));
1267
+ }
1268
+ r(W, "transform");
1269
+ function O(e) {
1270
+ throw new Error("This transform is not available. Are you trying the correct parsing mode?");
1271
+ }
1272
+ r(O, "notAvailableTransform");
1273
+ function Ge(e) {
1274
+ let t = {
1275
+ params: []
1276
+ };
1277
+ for (let o of e.parameters)
1278
+ o.type === "JsdocTypeKeyValue" ? o.key === "this" ? t.this = o.right : o.key === "new" ? t.new = o.right : t.params.push(o) : t.params.
1279
+ push(o);
1280
+ return t;
1281
+ }
1282
+ r(Ge, "extractSpecialParams");
1283
+ function re(e, t, o) {
1284
+ return e === "prefix" ? o + t : t + o;
1285
+ }
1286
+ r(re, "applyPosition");
1287
+ function I(e, t) {
1288
+ switch (t) {
1289
+ case "double":
1290
+ return `"${e}"`;
1291
+ case "single":
1292
+ return `'${e}'`;
1293
+ case void 0:
1294
+ return e;
1295
+ }
1296
+ }
1297
+ r(I, "quote");
1298
+ function ze() {
1299
+ return {
1300
+ JsdocTypeParenthesis: /* @__PURE__ */ r((e, t) => `(${e.element !== void 0 ? t(e.element) : ""})`, "JsdocTypeParenthesis"),
1301
+ JsdocTypeKeyof: /* @__PURE__ */ r((e, t) => `keyof ${t(e.element)}`, "JsdocTypeKeyof"),
1302
+ JsdocTypeFunction: /* @__PURE__ */ r((e, t) => {
1303
+ if (e.arrow) {
1304
+ if (e.returnType === void 0)
1305
+ throw new Error("Arrow function needs a return type.");
1306
+ let o = `(${e.parameters.map(t).join(", ")}) => ${t(e.returnType)}`;
1307
+ return e.constructor && (o = "new " + o), o;
1308
+ } else {
1309
+ let o = e.constructor ? "new" : "function";
1310
+ return e.parenthesis && (o += `(${e.parameters.map(t).join(", ")})`, e.returnType !== void 0 && (o += `: ${t(e.returnType)}`)), o;
1311
+ }
1312
+ }, "JsdocTypeFunction"),
1313
+ JsdocTypeName: /* @__PURE__ */ r((e) => e.value, "JsdocTypeName"),
1314
+ JsdocTypeTuple: /* @__PURE__ */ r((e, t) => `[${e.elements.map(t).join(", ")}]`, "JsdocTypeTuple"),
1315
+ JsdocTypeVariadic: /* @__PURE__ */ r((e, t) => e.meta.position === void 0 ? "..." : re(e.meta.position, t(e.element), "..."), "Jsdoc\
1316
+ TypeVariadic"),
1317
+ JsdocTypeNamePath: /* @__PURE__ */ r((e, t) => {
1318
+ let o = t(e.left), i = t(e.right);
1319
+ switch (e.pathType) {
1320
+ case "inner":
1321
+ return `${o}~${i}`;
1322
+ case "instance":
1323
+ return `${o}#${i}`;
1324
+ case "property":
1325
+ return `${o}.${i}`;
1326
+ case "property-brackets":
1327
+ return `${o}[${i}]`;
1328
+ }
1329
+ }, "JsdocTypeNamePath"),
1330
+ JsdocTypeStringValue: /* @__PURE__ */ r((e) => I(e.value, e.meta.quote), "JsdocTypeStringValue"),
1331
+ JsdocTypeAny: /* @__PURE__ */ r(() => "*", "JsdocTypeAny"),
1332
+ JsdocTypeGeneric: /* @__PURE__ */ r((e, t) => {
1333
+ if (e.meta.brackets === "square") {
1334
+ let o = e.elements[0], i = t(o);
1335
+ return o.type === "JsdocTypeUnion" || o.type === "JsdocTypeIntersection" ? `(${i})[]` : `${i}[]`;
1336
+ } else
1337
+ return `${t(e.left)}${e.meta.dot ? "." : ""}<${e.elements.map(t).join(", ")}>`;
1338
+ }, "JsdocTypeGeneric"),
1339
+ JsdocTypeImport: /* @__PURE__ */ r((e, t) => `import(${t(e.element)})`, "JsdocTypeImport"),
1340
+ JsdocTypeObjectField: /* @__PURE__ */ r((e, t) => {
1341
+ let o = "";
1342
+ return e.readonly && (o += "readonly "), typeof e.key == "string" ? o += I(e.key, e.meta.quote) : o += t(e.key), e.optional && (o +=
1343
+ "?"), e.right === void 0 ? o : o + `: ${t(e.right)}`;
1344
+ }, "JsdocTypeObjectField"),
1345
+ JsdocTypeJsdocObjectField: /* @__PURE__ */ r((e, t) => `${t(e.left)}: ${t(e.right)}`, "JsdocTypeJsdocObjectField"),
1346
+ JsdocTypeKeyValue: /* @__PURE__ */ r((e, t) => {
1347
+ let o = e.key;
1348
+ return e.optional && (o += "?"), e.variadic && (o = "..." + o), e.right === void 0 ? o : o + `: ${t(e.right)}`;
1349
+ }, "JsdocTypeKeyValue"),
1350
+ JsdocTypeSpecialNamePath: /* @__PURE__ */ r((e) => `${e.specialType}:${I(e.value, e.meta.quote)}`, "JsdocTypeSpecialNamePath"),
1351
+ JsdocTypeNotNullable: /* @__PURE__ */ r((e, t) => re(e.meta.position, t(e.element), "!"), "JsdocTypeNotNullable"),
1352
+ JsdocTypeNull: /* @__PURE__ */ r(() => "null", "JsdocTypeNull"),
1353
+ JsdocTypeNullable: /* @__PURE__ */ r((e, t) => re(e.meta.position, t(e.element), "?"), "JsdocTypeNullable"),
1354
+ JsdocTypeNumber: /* @__PURE__ */ r((e) => e.value.toString(), "JsdocTypeNumber"),
1355
+ JsdocTypeObject: /* @__PURE__ */ r((e, t) => `{${e.elements.map(t).join((e.meta.separator === "comma" ? "," : ";") + " ")}}`, "Jsdoc\
1356
+ TypeObject"),
1357
+ JsdocTypeOptional: /* @__PURE__ */ r((e, t) => re(e.meta.position, t(e.element), "="), "JsdocTypeOptional"),
1358
+ JsdocTypeSymbol: /* @__PURE__ */ r((e, t) => `${e.value}(${e.element !== void 0 ? t(e.element) : ""})`, "JsdocTypeSymbol"),
1359
+ JsdocTypeTypeof: /* @__PURE__ */ r((e, t) => `typeof ${t(e.element)}`, "JsdocTypeTypeof"),
1360
+ JsdocTypeUndefined: /* @__PURE__ */ r(() => "undefined", "JsdocTypeUndefined"),
1361
+ JsdocTypeUnion: /* @__PURE__ */ r((e, t) => e.elements.map(t).join(" | "), "JsdocTypeUnion"),
1362
+ JsdocTypeUnknown: /* @__PURE__ */ r(() => "?", "JsdocTypeUnknown"),
1363
+ JsdocTypeIntersection: /* @__PURE__ */ r((e, t) => e.elements.map(t).join(" & "), "JsdocTypeIntersection"),
1364
+ JsdocTypeProperty: /* @__PURE__ */ r((e) => I(e.value, e.meta.quote), "JsdocTypeProperty"),
1365
+ JsdocTypePredicate: /* @__PURE__ */ r((e, t) => `${t(e.left)} is ${t(e.right)}`, "JsdocTypePredicate"),
1366
+ JsdocTypeIndexSignature: /* @__PURE__ */ r((e, t) => `[${e.key}: ${t(e.right)}]`, "JsdocTypeIndexSignature"),
1367
+ JsdocTypeMappedType: /* @__PURE__ */ r((e, t) => `[${e.key} in ${t(e.right)}]`, "JsdocTypeMappedType")
1368
+ };
1369
+ }
1370
+ r(ze, "stringifyRules");
1371
+ let Zt = ze();
1372
+ function er(e) {
1373
+ return W(Zt, e);
1374
+ }
1375
+ r(er, "stringify");
1376
+ let tr = [
1377
+ "null",
1378
+ "true",
1379
+ "false",
1380
+ "break",
1381
+ "case",
1382
+ "catch",
1383
+ "class",
1384
+ "const",
1385
+ "continue",
1386
+ "debugger",
1387
+ "default",
1388
+ "delete",
1389
+ "do",
1390
+ "else",
1391
+ "export",
1392
+ "extends",
1393
+ "finally",
1394
+ "for",
1395
+ "function",
1396
+ "if",
1397
+ "import",
1398
+ "in",
1399
+ "instanceof",
1400
+ "new",
1401
+ "return",
1402
+ "super",
1403
+ "switch",
1404
+ "this",
1405
+ "throw",
1406
+ "try",
1407
+ "typeof",
1408
+ "var",
1409
+ "void",
1410
+ "while",
1411
+ "with",
1412
+ "yield"
1413
+ ];
1414
+ function F(e) {
1415
+ let t = {
1416
+ type: "NameExpression",
1417
+ name: e
1418
+ };
1419
+ return tr.includes(e) && (t.reservedWord = !0), t;
1420
+ }
1421
+ r(F, "makeName");
1422
+ let rr = {
1423
+ JsdocTypeOptional: /* @__PURE__ */ r((e, t) => {
1424
+ let o = t(e.element);
1425
+ return o.optional = !0, o;
1426
+ }, "JsdocTypeOptional"),
1427
+ JsdocTypeNullable: /* @__PURE__ */ r((e, t) => {
1428
+ let o = t(e.element);
1429
+ return o.nullable = !0, o;
1430
+ }, "JsdocTypeNullable"),
1431
+ JsdocTypeNotNullable: /* @__PURE__ */ r((e, t) => {
1432
+ let o = t(e.element);
1433
+ return o.nullable = !1, o;
1434
+ }, "JsdocTypeNotNullable"),
1435
+ JsdocTypeVariadic: /* @__PURE__ */ r((e, t) => {
1436
+ if (e.element === void 0)
1437
+ throw new Error("dots without value are not allowed in catharsis mode");
1438
+ let o = t(e.element);
1439
+ return o.repeatable = !0, o;
1440
+ }, "JsdocTypeVariadic"),
1441
+ JsdocTypeAny: /* @__PURE__ */ r(() => ({
1442
+ type: "AllLiteral"
1443
+ }), "JsdocTypeAny"),
1444
+ JsdocTypeNull: /* @__PURE__ */ r(() => ({
1445
+ type: "NullLiteral"
1446
+ }), "JsdocTypeNull"),
1447
+ JsdocTypeStringValue: /* @__PURE__ */ r((e) => F(I(e.value, e.meta.quote)), "JsdocTypeStringValue"),
1448
+ JsdocTypeUndefined: /* @__PURE__ */ r(() => ({
1449
+ type: "UndefinedLiteral"
1450
+ }), "JsdocTypeUndefined"),
1451
+ JsdocTypeUnknown: /* @__PURE__ */ r(() => ({
1452
+ type: "UnknownLiteral"
1453
+ }), "JsdocTypeUnknown"),
1454
+ JsdocTypeFunction: /* @__PURE__ */ r((e, t) => {
1455
+ let o = Ge(e), i = {
1456
+ type: "FunctionType",
1457
+ params: o.params.map(t)
1458
+ };
1459
+ return o.this !== void 0 && (i.this = t(o.this)), o.new !== void 0 && (i.new = t(o.new)), e.returnType !== void 0 && (i.result = t(e.
1460
+ returnType)), i;
1461
+ }, "JsdocTypeFunction"),
1462
+ JsdocTypeGeneric: /* @__PURE__ */ r((e, t) => ({
1463
+ type: "TypeApplication",
1464
+ applications: e.elements.map((o) => t(o)),
1465
+ expression: t(e.left)
1466
+ }), "JsdocTypeGeneric"),
1467
+ JsdocTypeSpecialNamePath: /* @__PURE__ */ r((e) => F(e.specialType + ":" + I(e.value, e.meta.quote)), "JsdocTypeSpecialNamePath"),
1468
+ JsdocTypeName: /* @__PURE__ */ r((e) => e.value !== "function" ? F(e.value) : {
1469
+ type: "FunctionType",
1470
+ params: []
1471
+ }, "JsdocTypeName"),
1472
+ JsdocTypeNumber: /* @__PURE__ */ r((e) => F(e.value.toString()), "JsdocTypeNumber"),
1473
+ JsdocTypeObject: /* @__PURE__ */ r((e, t) => {
1474
+ let o = {
1475
+ type: "RecordType",
1476
+ fields: []
1477
+ };
1478
+ for (let i of e.elements)
1479
+ i.type !== "JsdocTypeObjectField" && i.type !== "JsdocTypeJsdocObjectField" ? o.fields.push({
1480
+ type: "FieldType",
1481
+ key: t(i),
1482
+ value: void 0
1483
+ }) : o.fields.push(t(i));
1484
+ return o;
1485
+ }, "JsdocTypeObject"),
1486
+ JsdocTypeObjectField: /* @__PURE__ */ r((e, t) => {
1487
+ if (typeof e.key != "string")
1488
+ throw new Error("Index signatures and mapped types are not supported");
1489
+ return {
1490
+ type: "FieldType",
1491
+ key: F(I(e.key, e.meta.quote)),
1492
+ value: e.right === void 0 ? void 0 : t(e.right)
1493
+ };
1494
+ }, "JsdocTypeObjectField"),
1495
+ JsdocTypeJsdocObjectField: /* @__PURE__ */ r((e, t) => ({
1496
+ type: "FieldType",
1497
+ key: t(e.left),
1498
+ value: t(e.right)
1499
+ }), "JsdocTypeJsdocObjectField"),
1500
+ JsdocTypeUnion: /* @__PURE__ */ r((e, t) => ({
1501
+ type: "TypeUnion",
1502
+ elements: e.elements.map((o) => t(o))
1503
+ }), "JsdocTypeUnion"),
1504
+ JsdocTypeKeyValue: /* @__PURE__ */ r((e, t) => ({
1505
+ type: "FieldType",
1506
+ key: F(e.key),
1507
+ value: e.right === void 0 ? void 0 : t(e.right)
1508
+ }), "JsdocTypeKeyValue"),
1509
+ JsdocTypeNamePath: /* @__PURE__ */ r((e, t) => {
1510
+ let o = t(e.left), i;
1511
+ e.right.type === "JsdocTypeSpecialNamePath" ? i = t(e.right).name : i = I(e.right.value, e.right.meta.quote);
1512
+ let l = e.pathType === "inner" ? "~" : e.pathType === "instance" ? "#" : ".";
1513
+ return F(`${o.name}${l}${i}`);
1514
+ }, "JsdocTypeNamePath"),
1515
+ JsdocTypeSymbol: /* @__PURE__ */ r((e) => {
1516
+ let t = "", o = e.element, i = !1;
1517
+ return o?.type === "JsdocTypeVariadic" && (o.meta.position === "prefix" ? t = "..." : i = !0, o = o.element), o?.type === "JsdocType\
1518
+ Name" ? t += o.value : o?.type === "JsdocTypeNumber" && (t += o.value.toString()), i && (t += "..."), F(`${e.value}(${t})`);
1519
+ }, "JsdocTypeSymbol"),
1520
+ JsdocTypeParenthesis: /* @__PURE__ */ r((e, t) => t(P(e.element)), "JsdocTypeParenthesis"),
1521
+ JsdocTypeMappedType: O,
1522
+ JsdocTypeIndexSignature: O,
1523
+ JsdocTypeImport: O,
1524
+ JsdocTypeKeyof: O,
1525
+ JsdocTypeTuple: O,
1526
+ JsdocTypeTypeof: O,
1527
+ JsdocTypeIntersection: O,
1528
+ JsdocTypeProperty: O,
1529
+ JsdocTypePredicate: O
1530
+ };
1531
+ function nr(e) {
1532
+ return W(rr, e);
1533
+ }
1534
+ r(nr, "catharsisTransform");
1535
+ function _(e) {
1536
+ switch (e) {
1537
+ case void 0:
1538
+ return "none";
1539
+ case "single":
1540
+ return "single";
1541
+ case "double":
1542
+ return "double";
1543
+ }
1544
+ }
1545
+ r(_, "getQuoteStyle");
1546
+ function or(e) {
1547
+ switch (e) {
1548
+ case "inner":
1549
+ return "INNER_MEMBER";
1550
+ case "instance":
1551
+ return "INSTANCE_MEMBER";
1552
+ case "property":
1553
+ return "MEMBER";
1554
+ case "property-brackets":
1555
+ return "MEMBER";
1556
+ }
1557
+ }
1558
+ r(or, "getMemberType");
1559
+ function Se(e, t) {
1560
+ return t.length === 2 ? {
1561
+ type: e,
1562
+ left: t[0],
1563
+ right: t[1]
1564
+ } : {
1565
+ type: e,
1566
+ left: t[0],
1567
+ right: Se(e, t.slice(1))
1568
+ };
1569
+ }
1570
+ r(Se, "nestResults");
1571
+ let sr = {
1572
+ JsdocTypeOptional: /* @__PURE__ */ r((e, t) => ({
1573
+ type: "OPTIONAL",
1574
+ value: t(e.element),
1575
+ meta: {
1576
+ syntax: e.meta.position === "prefix" ? "PREFIX_EQUAL_SIGN" : "SUFFIX_EQUALS_SIGN"
1577
+ }
1578
+ }), "JsdocTypeOptional"),
1579
+ JsdocTypeNullable: /* @__PURE__ */ r((e, t) => ({
1580
+ type: "NULLABLE",
1581
+ value: t(e.element),
1582
+ meta: {
1583
+ syntax: e.meta.position === "prefix" ? "PREFIX_QUESTION_MARK" : "SUFFIX_QUESTION_MARK"
1584
+ }
1585
+ }), "JsdocTypeNullable"),
1586
+ JsdocTypeNotNullable: /* @__PURE__ */ r((e, t) => ({
1587
+ type: "NOT_NULLABLE",
1588
+ value: t(e.element),
1589
+ meta: {
1590
+ syntax: e.meta.position === "prefix" ? "PREFIX_BANG" : "SUFFIX_BANG"
1591
+ }
1592
+ }), "JsdocTypeNotNullable"),
1593
+ JsdocTypeVariadic: /* @__PURE__ */ r((e, t) => {
1594
+ let o = {
1595
+ type: "VARIADIC",
1596
+ meta: {
1597
+ syntax: e.meta.position === "prefix" ? "PREFIX_DOTS" : e.meta.position === "suffix" ? "SUFFIX_DOTS" : "ONLY_DOTS"
1598
+ }
1599
+ };
1600
+ return e.element !== void 0 && (o.value = t(e.element)), o;
1601
+ }, "JsdocTypeVariadic"),
1602
+ JsdocTypeName: /* @__PURE__ */ r((e) => ({
1603
+ type: "NAME",
1604
+ name: e.value
1605
+ }), "JsdocTypeName"),
1606
+ JsdocTypeTypeof: /* @__PURE__ */ r((e, t) => ({
1607
+ type: "TYPE_QUERY",
1608
+ name: t(e.element)
1609
+ }), "JsdocTypeTypeof"),
1610
+ JsdocTypeTuple: /* @__PURE__ */ r((e, t) => ({
1611
+ type: "TUPLE",
1612
+ entries: e.elements.map(t)
1613
+ }), "JsdocTypeTuple"),
1614
+ JsdocTypeKeyof: /* @__PURE__ */ r((e, t) => ({
1615
+ type: "KEY_QUERY",
1616
+ value: t(e.element)
1617
+ }), "JsdocTypeKeyof"),
1618
+ JsdocTypeImport: /* @__PURE__ */ r((e) => ({
1619
+ type: "IMPORT",
1620
+ path: {
1621
+ type: "STRING_VALUE",
1622
+ quoteStyle: _(e.element.meta.quote),
1623
+ string: e.element.value
1624
+ }
1625
+ }), "JsdocTypeImport"),
1626
+ JsdocTypeUndefined: /* @__PURE__ */ r(() => ({
1627
+ type: "NAME",
1628
+ name: "undefined"
1629
+ }), "JsdocTypeUndefined"),
1630
+ JsdocTypeAny: /* @__PURE__ */ r(() => ({
1631
+ type: "ANY"
1632
+ }), "JsdocTypeAny"),
1633
+ JsdocTypeFunction: /* @__PURE__ */ r((e, t) => {
1634
+ let o = Ge(e), i = {
1635
+ type: e.arrow ? "ARROW" : "FUNCTION",
1636
+ params: o.params.map((l) => {
1637
+ if (l.type === "JsdocTypeKeyValue") {
1638
+ if (l.right === void 0)
1639
+ throw new Error("Function parameter without ':' is not expected to be 'KEY_VALUE'");
1640
+ return {
1641
+ type: "NAMED_PARAMETER",
1642
+ name: l.key,
1643
+ typeName: t(l.right)
1644
+ };
1645
+ } else
1646
+ return t(l);
1647
+ }),
1648
+ new: null,
1649
+ returns: null
1650
+ };
1651
+ return o.this !== void 0 ? i.this = t(o.this) : e.arrow || (i.this = null), o.new !== void 0 && (i.new = t(o.new)), e.returnType !==
1652
+ void 0 && (i.returns = t(e.returnType)), i;
1653
+ }, "JsdocTypeFunction"),
1654
+ JsdocTypeGeneric: /* @__PURE__ */ r((e, t) => {
1655
+ let o = {
1656
+ type: "GENERIC",
1657
+ subject: t(e.left),
1658
+ objects: e.elements.map(t),
1659
+ meta: {
1660
+ syntax: e.meta.brackets === "square" ? "SQUARE_BRACKET" : e.meta.dot ? "ANGLE_BRACKET_WITH_DOT" : "ANGLE_BRACKET"
1661
+ }
1662
+ };
1663
+ return e.meta.brackets === "square" && e.elements[0].type === "JsdocTypeFunction" && !e.elements[0].parenthesis && (o.objects[0] = {
1664
+ type: "NAME",
1665
+ name: "function"
1666
+ }), o;
1667
+ }, "JsdocTypeGeneric"),
1668
+ JsdocTypeObjectField: /* @__PURE__ */ r((e, t) => {
1669
+ if (typeof e.key != "string")
1670
+ throw new Error("Index signatures and mapped types are not supported");
1671
+ if (e.right === void 0)
1672
+ return {
1673
+ type: "RECORD_ENTRY",
1674
+ key: e.key,
1675
+ quoteStyle: _(e.meta.quote),
1676
+ value: null,
1677
+ readonly: !1
1678
+ };
1679
+ let o = t(e.right);
1680
+ return e.optional && (o = {
1681
+ type: "OPTIONAL",
1682
+ value: o,
1683
+ meta: {
1684
+ syntax: "SUFFIX_KEY_QUESTION_MARK"
1685
+ }
1686
+ }), {
1687
+ type: "RECORD_ENTRY",
1688
+ key: e.key.toString(),
1689
+ quoteStyle: _(e.meta.quote),
1690
+ value: o,
1691
+ readonly: !1
1692
+ };
1693
+ }, "JsdocTypeObjectField"),
1694
+ JsdocTypeJsdocObjectField: /* @__PURE__ */ r(() => {
1695
+ throw new Error("Keys may not be typed in jsdoctypeparser.");
1696
+ }, "JsdocTypeJsdocObjectField"),
1697
+ JsdocTypeKeyValue: /* @__PURE__ */ r((e, t) => {
1698
+ if (e.right === void 0)
1699
+ return {
1700
+ type: "RECORD_ENTRY",
1701
+ key: e.key,
1702
+ quoteStyle: "none",
1703
+ value: null,
1704
+ readonly: !1
1705
+ };
1706
+ let o = t(e.right);
1707
+ return e.optional && (o = {
1708
+ type: "OPTIONAL",
1709
+ value: o,
1710
+ meta: {
1711
+ syntax: "SUFFIX_KEY_QUESTION_MARK"
1712
+ }
1713
+ }), {
1714
+ type: "RECORD_ENTRY",
1715
+ key: e.key,
1716
+ quoteStyle: "none",
1717
+ value: o,
1718
+ readonly: !1
1719
+ };
1720
+ }, "JsdocTypeKeyValue"),
1721
+ JsdocTypeObject: /* @__PURE__ */ r((e, t) => {
1722
+ let o = [];
1723
+ for (let i of e.elements)
1724
+ (i.type === "JsdocTypeObjectField" || i.type === "JsdocTypeJsdocObjectField") && o.push(t(i));
1725
+ return {
1726
+ type: "RECORD",
1727
+ entries: o
1728
+ };
1729
+ }, "JsdocTypeObject"),
1730
+ JsdocTypeSpecialNamePath: /* @__PURE__ */ r((e) => {
1731
+ if (e.specialType !== "module")
1732
+ throw new Error(`jsdoctypeparser does not support type ${e.specialType} at this point.`);
1733
+ return {
1734
+ type: "MODULE",
1735
+ value: {
1736
+ type: "FILE_PATH",
1737
+ quoteStyle: _(e.meta.quote),
1738
+ path: e.value
1739
+ }
1740
+ };
1741
+ }, "JsdocTypeSpecialNamePath"),
1742
+ JsdocTypeNamePath: /* @__PURE__ */ r((e, t) => {
1743
+ let o = !1, i, l;
1744
+ e.right.type === "JsdocTypeSpecialNamePath" && e.right.specialType === "event" ? (o = !0, i = e.right.value, l = _(e.right.meta.quote)) :
1745
+ (i = e.right.value, l = _(e.right.meta.quote));
1746
+ let y = {
1747
+ type: or(e.pathType),
1748
+ owner: t(e.left),
1749
+ name: i,
1750
+ quoteStyle: l,
1751
+ hasEventPrefix: o
1752
+ };
1753
+ if (y.owner.type === "MODULE") {
1754
+ let d = y.owner;
1755
+ return y.owner = y.owner.value, d.value = y, d;
1756
+ } else
1757
+ return y;
1758
+ }, "JsdocTypeNamePath"),
1759
+ JsdocTypeUnion: /* @__PURE__ */ r((e, t) => Se("UNION", e.elements.map(t)), "JsdocTypeUnion"),
1760
+ JsdocTypeParenthesis: /* @__PURE__ */ r((e, t) => ({
1761
+ type: "PARENTHESIS",
1762
+ value: t(P(e.element))
1763
+ }), "JsdocTypeParenthesis"),
1764
+ JsdocTypeNull: /* @__PURE__ */ r(() => ({
1765
+ type: "NAME",
1766
+ name: "null"
1767
+ }), "JsdocTypeNull"),
1768
+ JsdocTypeUnknown: /* @__PURE__ */ r(() => ({
1769
+ type: "UNKNOWN"
1770
+ }), "JsdocTypeUnknown"),
1771
+ JsdocTypeStringValue: /* @__PURE__ */ r((e) => ({
1772
+ type: "STRING_VALUE",
1773
+ quoteStyle: _(e.meta.quote),
1774
+ string: e.value
1775
+ }), "JsdocTypeStringValue"),
1776
+ JsdocTypeIntersection: /* @__PURE__ */ r((e, t) => Se("INTERSECTION", e.elements.map(t)), "JsdocTypeIntersection"),
1777
+ JsdocTypeNumber: /* @__PURE__ */ r((e) => ({
1778
+ type: "NUMBER_VALUE",
1779
+ number: e.value.toString()
1780
+ }), "JsdocTypeNumber"),
1781
+ JsdocTypeSymbol: O,
1782
+ JsdocTypeProperty: O,
1783
+ JsdocTypePredicate: O,
1784
+ JsdocTypeMappedType: O,
1785
+ JsdocTypeIndexSignature: O
1786
+ };
1787
+ function ar(e) {
1788
+ return W(sr, e);
1789
+ }
1790
+ r(ar, "jtpTransform");
1791
+ function ir() {
1792
+ return {
1793
+ JsdocTypeIntersection: /* @__PURE__ */ r((e, t) => ({
1794
+ type: "JsdocTypeIntersection",
1795
+ elements: e.elements.map(t)
1796
+ }), "JsdocTypeIntersection"),
1797
+ JsdocTypeGeneric: /* @__PURE__ */ r((e, t) => ({
1798
+ type: "JsdocTypeGeneric",
1799
+ left: t(e.left),
1800
+ elements: e.elements.map(t),
1801
+ meta: {
1802
+ dot: e.meta.dot,
1803
+ brackets: e.meta.brackets
1804
+ }
1805
+ }), "JsdocTypeGeneric"),
1806
+ JsdocTypeNullable: /* @__PURE__ */ r((e) => e, "JsdocTypeNullable"),
1807
+ JsdocTypeUnion: /* @__PURE__ */ r((e, t) => ({
1808
+ type: "JsdocTypeUnion",
1809
+ elements: e.elements.map(t)
1810
+ }), "JsdocTypeUnion"),
1811
+ JsdocTypeUnknown: /* @__PURE__ */ r((e) => e, "JsdocTypeUnknown"),
1812
+ JsdocTypeUndefined: /* @__PURE__ */ r((e) => e, "JsdocTypeUndefined"),
1813
+ JsdocTypeTypeof: /* @__PURE__ */ r((e, t) => ({
1814
+ type: "JsdocTypeTypeof",
1815
+ element: t(e.element)
1816
+ }), "JsdocTypeTypeof"),
1817
+ JsdocTypeSymbol: /* @__PURE__ */ r((e, t) => {
1818
+ let o = {
1819
+ type: "JsdocTypeSymbol",
1820
+ value: e.value
1821
+ };
1822
+ return e.element !== void 0 && (o.element = t(e.element)), o;
1823
+ }, "JsdocTypeSymbol"),
1824
+ JsdocTypeOptional: /* @__PURE__ */ r((e, t) => ({
1825
+ type: "JsdocTypeOptional",
1826
+ element: t(e.element),
1827
+ meta: {
1828
+ position: e.meta.position
1829
+ }
1830
+ }), "JsdocTypeOptional"),
1831
+ JsdocTypeObject: /* @__PURE__ */ r((e, t) => ({
1832
+ type: "JsdocTypeObject",
1833
+ meta: {
1834
+ separator: "comma"
1835
+ },
1836
+ elements: e.elements.map(t)
1837
+ }), "JsdocTypeObject"),
1838
+ JsdocTypeNumber: /* @__PURE__ */ r((e) => e, "JsdocTypeNumber"),
1839
+ JsdocTypeNull: /* @__PURE__ */ r((e) => e, "JsdocTypeNull"),
1840
+ JsdocTypeNotNullable: /* @__PURE__ */ r((e, t) => ({
1841
+ type: "JsdocTypeNotNullable",
1842
+ element: t(e.element),
1843
+ meta: {
1844
+ position: e.meta.position
1845
+ }
1846
+ }), "JsdocTypeNotNullable"),
1847
+ JsdocTypeSpecialNamePath: /* @__PURE__ */ r((e) => e, "JsdocTypeSpecialNamePath"),
1848
+ JsdocTypeObjectField: /* @__PURE__ */ r((e, t) => ({
1849
+ type: "JsdocTypeObjectField",
1850
+ key: e.key,
1851
+ right: e.right === void 0 ? void 0 : t(e.right),
1852
+ optional: e.optional,
1853
+ readonly: e.readonly,
1854
+ meta: e.meta
1855
+ }), "JsdocTypeObjectField"),
1856
+ JsdocTypeJsdocObjectField: /* @__PURE__ */ r((e, t) => ({
1857
+ type: "JsdocTypeJsdocObjectField",
1858
+ left: t(e.left),
1859
+ right: t(e.right)
1860
+ }), "JsdocTypeJsdocObjectField"),
1861
+ JsdocTypeKeyValue: /* @__PURE__ */ r((e, t) => ({
1862
+ type: "JsdocTypeKeyValue",
1863
+ key: e.key,
1864
+ right: e.right === void 0 ? void 0 : t(e.right),
1865
+ optional: e.optional,
1866
+ variadic: e.variadic
1867
+ }), "JsdocTypeKeyValue"),
1868
+ JsdocTypeImport: /* @__PURE__ */ r((e, t) => ({
1869
+ type: "JsdocTypeImport",
1870
+ element: t(e.element)
1871
+ }), "JsdocTypeImport"),
1872
+ JsdocTypeAny: /* @__PURE__ */ r((e) => e, "JsdocTypeAny"),
1873
+ JsdocTypeStringValue: /* @__PURE__ */ r((e) => e, "JsdocTypeStringValue"),
1874
+ JsdocTypeNamePath: /* @__PURE__ */ r((e) => e, "JsdocTypeNamePath"),
1875
+ JsdocTypeVariadic: /* @__PURE__ */ r((e, t) => {
1876
+ let o = {
1877
+ type: "JsdocTypeVariadic",
1878
+ meta: {
1879
+ position: e.meta.position,
1880
+ squareBrackets: e.meta.squareBrackets
1881
+ }
1882
+ };
1883
+ return e.element !== void 0 && (o.element = t(e.element)), o;
1884
+ }, "JsdocTypeVariadic"),
1885
+ JsdocTypeTuple: /* @__PURE__ */ r((e, t) => ({
1886
+ type: "JsdocTypeTuple",
1887
+ elements: e.elements.map(t)
1888
+ }), "JsdocTypeTuple"),
1889
+ JsdocTypeName: /* @__PURE__ */ r((e) => e, "JsdocTypeName"),
1890
+ JsdocTypeFunction: /* @__PURE__ */ r((e, t) => {
1891
+ let o = {
1892
+ type: "JsdocTypeFunction",
1893
+ arrow: e.arrow,
1894
+ parameters: e.parameters.map(t),
1895
+ constructor: e.constructor,
1896
+ parenthesis: e.parenthesis
1897
+ };
1898
+ return e.returnType !== void 0 && (o.returnType = t(e.returnType)), o;
1899
+ }, "JsdocTypeFunction"),
1900
+ JsdocTypeKeyof: /* @__PURE__ */ r((e, t) => ({
1901
+ type: "JsdocTypeKeyof",
1902
+ element: t(e.element)
1903
+ }), "JsdocTypeKeyof"),
1904
+ JsdocTypeParenthesis: /* @__PURE__ */ r((e, t) => ({
1905
+ type: "JsdocTypeParenthesis",
1906
+ element: t(e.element)
1907
+ }), "JsdocTypeParenthesis"),
1908
+ JsdocTypeProperty: /* @__PURE__ */ r((e) => e, "JsdocTypeProperty"),
1909
+ JsdocTypePredicate: /* @__PURE__ */ r((e, t) => ({
1910
+ type: "JsdocTypePredicate",
1911
+ left: t(e.left),
1912
+ right: t(e.right)
1913
+ }), "JsdocTypePredicate"),
1914
+ JsdocTypeIndexSignature: /* @__PURE__ */ r((e, t) => ({
1915
+ type: "JsdocTypeIndexSignature",
1916
+ key: e.key,
1917
+ right: t(e.right)
1918
+ }), "JsdocTypeIndexSignature"),
1919
+ JsdocTypeMappedType: /* @__PURE__ */ r((e, t) => ({
1920
+ type: "JsdocTypeMappedType",
1921
+ key: e.key,
1922
+ right: t(e.right)
1923
+ }), "JsdocTypeMappedType")
1924
+ };
1925
+ }
1926
+ r(ir, "identityTransformRules");
1927
+ let Xe = {
1928
+ JsdocTypeAny: [],
1929
+ JsdocTypeFunction: ["parameters", "returnType"],
1930
+ JsdocTypeGeneric: ["left", "elements"],
1931
+ JsdocTypeImport: [],
1932
+ JsdocTypeIndexSignature: ["right"],
1933
+ JsdocTypeIntersection: ["elements"],
1934
+ JsdocTypeKeyof: ["element"],
1935
+ JsdocTypeKeyValue: ["right"],
1936
+ JsdocTypeMappedType: ["right"],
1937
+ JsdocTypeName: [],
1938
+ JsdocTypeNamePath: ["left", "right"],
1939
+ JsdocTypeNotNullable: ["element"],
1940
+ JsdocTypeNull: [],
1941
+ JsdocTypeNullable: ["element"],
1942
+ JsdocTypeNumber: [],
1943
+ JsdocTypeObject: ["elements"],
1944
+ JsdocTypeObjectField: ["right"],
1945
+ JsdocTypeJsdocObjectField: ["left", "right"],
1946
+ JsdocTypeOptional: ["element"],
1947
+ JsdocTypeParenthesis: ["element"],
1948
+ JsdocTypeSpecialNamePath: [],
1949
+ JsdocTypeStringValue: [],
1950
+ JsdocTypeSymbol: ["element"],
1951
+ JsdocTypeTuple: ["elements"],
1952
+ JsdocTypeTypeof: ["element"],
1953
+ JsdocTypeUndefined: [],
1954
+ JsdocTypeUnion: ["elements"],
1955
+ JsdocTypeUnknown: [],
1956
+ JsdocTypeVariadic: ["element"],
1957
+ JsdocTypeProperty: [],
1958
+ JsdocTypePredicate: ["left", "right"]
1959
+ };
1960
+ function Ne(e, t, o, i, l) {
1961
+ i?.(e, t, o);
1962
+ let y = Xe[e.type];
1963
+ for (let d of y) {
1964
+ let x = e[d];
1965
+ if (x !== void 0)
1966
+ if (Array.isArray(x))
1967
+ for (let N of x)
1968
+ Ne(N, e, d, i, l);
1969
+ else
1970
+ Ne(x, e, d, i, l);
1971
+ }
1972
+ l?.(e, t, o);
1973
+ }
1974
+ r(Ne, "_traverse");
1975
+ function pr(e, t, o) {
1976
+ Ne(e, void 0, void 0, t, o);
1977
+ }
1978
+ r(pr, "traverse"), n.catharsisTransform = nr, n.identityTransformRules = ir, n.jtpTransform = ar, n.parse = We, n.stringify = er, n.stringifyRules =
1979
+ ze, n.transform = W, n.traverse = pr, n.tryParse = Qt, n.visitorKeys = Xe;
1980
+ });
1981
+ });
3
1982
 
4
1983
  // src/docs-tools/argTypes/convert/flow/convert.ts
5
- import { UnknownArgTypesError as Te } from "storybook/internal/preview-errors";
6
- var he = /* @__PURE__ */ o((e) => e.name === "literal", "isLiteral"), be = /* @__PURE__ */ o((e) => e.value.replace(/['|"]/g, ""), "toEnumOp\
7
- tion"), Pe = /* @__PURE__ */ o((e) => {
8
- switch (e.type) {
1984
+ import { UnknownArgTypesError as gr } from "storybook/internal/preview-errors";
1985
+ var hr = /* @__PURE__ */ r((n) => n.name === "literal", "isLiteral"), xr = /* @__PURE__ */ r((n) => n.value.replace(/['|"]/g, ""), "toEnumOp\
1986
+ tion"), Jr = /* @__PURE__ */ r((n) => {
1987
+ switch (n.type) {
9
1988
  case "function":
10
1989
  return { name: "function" };
11
1990
  case "object":
12
- let t = {};
13
- return e.signature.properties.forEach((r) => {
14
- t[r.key] = d(r.value);
1991
+ let s = {};
1992
+ return n.signature.properties.forEach((a) => {
1993
+ s[a.key] = U(a.value);
15
1994
  }), {
16
1995
  name: "object",
17
- value: t
1996
+ value: s
18
1997
  };
19
1998
  default:
20
- throw new Te({ type: e, language: "Flow" });
1999
+ throw new gr({ type: n, language: "Flow" });
21
2000
  }
22
- }, "convertSig"), d = /* @__PURE__ */ o((e) => {
23
- let { name: t, raw: r } = e, n = {};
24
- switch (typeof r < "u" && (n.raw = r), e.name) {
2001
+ }, "convertSig"), U = /* @__PURE__ */ r((n) => {
2002
+ let { name: s, raw: a } = n, p = {};
2003
+ switch (typeof a < "u" && (p.raw = a), n.name) {
25
2004
  case "literal":
26
- return { ...n, name: "other", value: e.value };
2005
+ return { ...p, name: "other", value: n.value };
27
2006
  case "string":
28
2007
  case "number":
29
2008
  case "symbol":
30
2009
  case "boolean":
31
- return { ...n, name: t };
2010
+ return { ...p, name: s };
32
2011
  case "Array":
33
- return { ...n, name: "array", value: e.elements.map(d) };
2012
+ return { ...p, name: "array", value: n.elements.map(U) };
34
2013
  case "signature":
35
- return { ...n, ...Pe(e) };
2014
+ return { ...p, ...Jr(n) };
36
2015
  case "union":
37
- return e.elements?.every(he) ? { ...n, name: "enum", value: e.elements?.map(be) } : { ...n, name: t, value: e.elements?.map(d) };
2016
+ return n.elements?.every(hr) ? { ...p, name: "enum", value: n.elements?.map(xr) } : { ...p, name: s, value: n.elements?.map(U) };
38
2017
  case "intersection":
39
- return { ...n, name: t, value: e.elements?.map(d) };
2018
+ return { ...p, name: s, value: n.elements?.map(U) };
40
2019
  default:
41
- return { ...n, name: "other", value: t };
2020
+ return { ...p, name: "other", value: s };
42
2021
  }
43
2022
  }, "convert");
44
2023
 
2024
+ // ../node_modules/es-toolkit/dist/predicate/isPlainObject.mjs
2025
+ function z(n) {
2026
+ if (typeof n != "object" || n == null)
2027
+ return !1;
2028
+ if (Object.getPrototypeOf(n) === null)
2029
+ return !0;
2030
+ if (n.toString() !== "[object Object]")
2031
+ return !1;
2032
+ let s = n;
2033
+ for (; Object.getPrototypeOf(s) !== null; )
2034
+ s = Object.getPrototypeOf(s);
2035
+ return Object.getPrototypeOf(n) === s;
2036
+ }
2037
+ r(z, "isPlainObject");
2038
+
45
2039
  // ../node_modules/es-toolkit/dist/object/mapValues.mjs
46
- function j(e, t) {
47
- let r = {}, n = Object.keys(e);
48
- for (let s = 0; s < n.length; s++) {
49
- let i = n[s], p = e[i];
50
- r[i] = t(p, i, e);
2040
+ function De(n, s) {
2041
+ let a = {}, p = Object.keys(n);
2042
+ for (let c = 0; c < p.length; c++) {
2043
+ let u = p[c], m = n[u];
2044
+ a[u] = s(m, u, n);
51
2045
  }
52
- return r;
2046
+ return a;
53
2047
  }
54
- o(j, "mapValues");
2048
+ r(De, "mapValues");
55
2049
 
56
2050
  // src/docs-tools/argTypes/convert/utils.ts
57
- var W = /^['"]|['"]$/g, Se = /* @__PURE__ */ o((e) => e.replace(W, ""), "trimQuotes"), Oe = /* @__PURE__ */ o((e) => W.test(e), "includesQuo\
58
- tes"), h = /* @__PURE__ */ o((e) => {
59
- let t = Se(e);
60
- return Oe(e) || Number.isNaN(Number(t)) ? t : Number(t);
2051
+ var Ze = /^['"]|['"]$/g, Pr = /* @__PURE__ */ r((n) => n.replace(Ze, ""), "trimQuotes"), wr = /* @__PURE__ */ r((n) => Ze.test(n), "includes\
2052
+ Quotes"), oe = /* @__PURE__ */ r((n) => {
2053
+ let s = Pr(n);
2054
+ return wr(n) || Number.isNaN(Number(s)) ? s : Number(s);
61
2055
  }, "parseLiteral");
62
2056
 
63
2057
  // src/docs-tools/argTypes/convert/proptypes/convert.ts
64
- var ve = /^\(.*\) => /, x = /* @__PURE__ */ o((e) => {
65
- let { name: t, raw: r, computed: n, value: s } = e, i = {};
66
- switch (typeof r < "u" && (i.raw = r), t) {
2058
+ var br = /^\(.*\) => /, B = /* @__PURE__ */ r((n) => {
2059
+ let { name: s, raw: a, computed: p, value: c } = n, u = {};
2060
+ switch (typeof a < "u" && (u.raw = a), s) {
67
2061
  case "enum": {
68
- let a = n ? s : s.map((c) => h(c.value));
69
- return { ...i, name: t, value: a };
2062
+ let T = p ? c : c.map((g) => oe(g.value));
2063
+ return { ...u, name: s, value: T };
70
2064
  }
71
2065
  case "string":
72
2066
  case "number":
73
2067
  case "symbol":
74
- return { ...i, name: t };
2068
+ return { ...u, name: s };
75
2069
  case "func":
76
- return { ...i, name: "function" };
2070
+ return { ...u, name: "function" };
77
2071
  case "bool":
78
2072
  case "boolean":
79
- return { ...i, name: "boolean" };
2073
+ return { ...u, name: "boolean" };
80
2074
  case "arrayOf":
81
2075
  case "array":
82
- return { ...i, name: "array", value: s && x(s) };
2076
+ return { ...u, name: "array", value: c && B(c) };
83
2077
  case "object":
84
- return { ...i, name: t };
2078
+ return { ...u, name: s };
85
2079
  case "objectOf":
86
- return { ...i, name: t, value: x(s) };
2080
+ return { ...u, name: s, value: B(c) };
87
2081
  case "shape":
88
2082
  case "exact":
89
- let p = j(s, (a) => x(a));
90
- return { ...i, name: "object", value: p };
2083
+ let m = De(c, (T) => B(T));
2084
+ return { ...u, name: "object", value: m };
91
2085
  case "union":
92
- return { ...i, name: "union", value: s.map((a) => x(a)) };
2086
+ return { ...u, name: "union", value: c.map((T) => B(T)) };
93
2087
  case "instanceOf":
94
2088
  case "element":
95
2089
  case "elementType":
96
2090
  default: {
97
- if (t?.indexOf("|") > 0)
2091
+ if (s?.indexOf("|") > 0)
98
2092
  try {
99
- let u = t.split("|").map((m) => JSON.parse(m));
100
- return { ...i, name: "enum", value: u };
2093
+ let w = s.split("|").map((b) => JSON.parse(b));
2094
+ return { ...u, name: "enum", value: w };
101
2095
  } catch {
102
2096
  }
103
- let a = s ? `${t}(${s})` : t, c = ve.test(t) ? "function" : "other";
104
- return { ...i, name: c, value: a };
2097
+ let T = c ? `${s}(${c})` : s, g = br.test(s) ? "function" : "other";
2098
+ return { ...u, name: g, value: T };
105
2099
  }
106
2100
  }
107
2101
  }, "convert");
108
2102
 
109
2103
  // src/docs-tools/argTypes/convert/typescript/convert.ts
110
- import { UnknownArgTypesError as we } from "storybook/internal/preview-errors";
111
- var Ee = /* @__PURE__ */ o((e) => {
112
- switch (e.type) {
2104
+ import { UnknownArgTypesError as Er } from "storybook/internal/preview-errors";
2105
+ var Sr = /* @__PURE__ */ r((n) => {
2106
+ switch (n.type) {
113
2107
  case "function":
114
2108
  return { name: "function" };
115
2109
  case "object":
116
- let t = {};
117
- return e.signature.properties.forEach((r) => {
118
- t[r.key] = D(r.value);
2110
+ let s = {};
2111
+ return n.signature.properties.forEach((a) => {
2112
+ s[a.key] = C(a.value);
119
2113
  }), {
120
2114
  name: "object",
121
- value: t
2115
+ value: s
122
2116
  };
123
2117
  default:
124
- throw new we({ type: e, language: "Typescript" });
2118
+ throw new Er({ type: n, language: "Typescript" });
125
2119
  }
126
- }, "convertSig"), D = /* @__PURE__ */ o((e) => {
127
- let { name: t, raw: r } = e, n = {};
128
- switch (typeof r < "u" && (n.raw = r), e.name) {
2120
+ }, "convertSig"), C = /* @__PURE__ */ r((n) => {
2121
+ let { name: s, raw: a } = n, p = {};
2122
+ switch (typeof a < "u" && (p.raw = a), n.name) {
129
2123
  case "string":
130
2124
  case "number":
131
2125
  case "symbol":
132
2126
  case "boolean":
133
- return { ...n, name: t };
2127
+ return { ...p, name: s };
134
2128
  case "Array":
135
- return { ...n, name: "array", value: e.elements.map(D) };
2129
+ return { ...p, name: "array", value: n.elements.map(C) };
136
2130
  case "signature":
137
- return { ...n, ...Ee(e) };
2131
+ return { ...p, ...Sr(n) };
138
2132
  case "union":
139
- let s;
140
- return e.elements?.every((i) => i.name === "literal") ? s = {
141
- ...n,
2133
+ let c;
2134
+ return n.elements?.every((u) => u.name === "literal") ? c = {
2135
+ ...p,
142
2136
  name: "enum",
143
2137
  // @ts-expect-error fix types
144
- value: e.elements?.map((i) => h(i.value))
145
- } : s = { ...n, name: t, value: e.elements?.map(D) }, s;
2138
+ value: n.elements?.map((u) => oe(u.value))
2139
+ } : c = { ...p, name: s, value: n.elements?.map(C) }, c;
146
2140
  case "intersection":
147
- return { ...n, name: t, value: e.elements?.map(D) };
2141
+ return { ...p, name: s, value: n.elements?.map(C) };
148
2142
  default:
149
- return { ...n, name: "other", value: t };
2143
+ return { ...p, name: "other", value: s };
150
2144
  }
151
2145
  }, "convert");
152
2146
 
153
2147
  // src/docs-tools/argTypes/convert/index.ts
154
- var b = /* @__PURE__ */ o((e) => {
155
- let { type: t, tsType: r, flowType: n } = e;
2148
+ var se = /* @__PURE__ */ r((n) => {
2149
+ let { type: s, tsType: a, flowType: p } = n;
156
2150
  try {
157
- if (t != null)
158
- return x(t);
159
- if (r != null)
160
- return D(r);
161
- if (n != null)
162
- return d(n);
163
- } catch (s) {
164
- console.error(s);
2151
+ if (s != null)
2152
+ return B(s);
2153
+ if (a != null)
2154
+ return C(a);
2155
+ if (p != null)
2156
+ return U(p);
2157
+ } catch (c) {
2158
+ console.error(c);
165
2159
  }
166
2160
  return null;
167
2161
  }, "convert");
168
2162
 
169
2163
  // src/docs-tools/argTypes/docgen/types.ts
170
- var je = /* @__PURE__ */ ((s) => (s.JAVASCRIPT = "JavaScript", s.FLOW = "Flow", s.TYPESCRIPT = "TypeScript", s.UNKNOWN = "Unknown", s))(je ||
2164
+ var Nr = /* @__PURE__ */ ((c) => (c.JAVASCRIPT = "JavaScript", c.FLOW = "Flow", c.TYPESCRIPT = "TypeScript", c.UNKNOWN = "Unknown", c))(Nr ||
171
2165
  {});
172
2166
 
173
2167
  // src/docs-tools/argTypes/docgen/utils/defaultValue.ts
174
- var ke = ["null", "undefined"];
175
- function T(e) {
176
- return ke.some((t) => t === e);
2168
+ var Or = ["null", "undefined"];
2169
+ function M(n) {
2170
+ return Or.some((s) => s === n);
177
2171
  }
178
- o(T, "isDefaultValueBlacklisted");
2172
+ r(M, "isDefaultValueBlacklisted");
179
2173
 
180
2174
  // src/docs-tools/argTypes/docgen/utils/string.ts
181
- var M = /* @__PURE__ */ o((e) => {
182
- if (!e)
2175
+ var et = /* @__PURE__ */ r((n) => {
2176
+ if (!n)
183
2177
  return "";
184
- if (typeof e == "string")
185
- return e;
186
- throw new Error(`Description: expected string, got: ${JSON.stringify(e)}`);
2178
+ if (typeof n == "string")
2179
+ return n;
2180
+ throw new Error(`Description: expected string, got: ${JSON.stringify(n)}`);
187
2181
  }, "str");
188
2182
 
189
2183
  // src/docs-tools/argTypes/docgen/utils/docgenInfo.ts
190
- function z(e) {
191
- return !!e.__docgenInfo;
2184
+ function tt(n) {
2185
+ return !!n.__docgenInfo;
192
2186
  }
193
- o(z, "hasDocgen");
194
- function $(e) {
195
- return e != null && Object.keys(e).length > 0;
2187
+ r(tt, "hasDocgen");
2188
+ function rt(n) {
2189
+ return n != null && Object.keys(n).length > 0;
196
2190
  }
197
- o($, "isValidDocgenSection");
198
- function Y(e, t) {
199
- return z(e) ? e.__docgenInfo[t] : null;
2191
+ r(rt, "isValidDocgenSection");
2192
+ function nt(n, s) {
2193
+ return tt(n) ? n.__docgenInfo[s] : null;
200
2194
  }
201
- o(Y, "getDocgenSection");
202
- function q(e) {
203
- return z(e) ? M(e.__docgenInfo.description) : "";
2195
+ r(nt, "getDocgenSection");
2196
+ function ot(n) {
2197
+ return tt(n) ? et(n.__docgenInfo.description) : "";
204
2198
  }
205
- o(q, "getDocgenDescription");
2199
+ r(ot, "getDocgenDescription");
206
2200
 
207
2201
  // ../node_modules/comment-parser/es6/primitives.js
208
- var f;
209
- (function(e) {
210
- e.start = "/**", e.nostart = "/***", e.delim = "*", e.end = "*/";
211
- })(f = f || (f = {}));
2202
+ var v;
2203
+ (function(n) {
2204
+ n.start = "/**", n.nostart = "/***", n.delim = "*", n.end = "*/";
2205
+ })(v = v || (v = {}));
212
2206
 
213
2207
  // ../node_modules/comment-parser/es6/util.js
214
- function k(e) {
215
- return /^\s+$/.test(e);
2208
+ function ve(n) {
2209
+ return /^\s+$/.test(n);
216
2210
  }
217
- o(k, "isSpace");
218
- function G(e) {
219
- let t = e.match(/\r+$/);
220
- return t == null ? ["", e] : [e.slice(-t[0].length), e.slice(0, -t[0].length)];
2211
+ r(ve, "isSpace");
2212
+ function st(n) {
2213
+ let s = n.match(/\r+$/);
2214
+ return s == null ? ["", n] : [n.slice(-s[0].length), n.slice(0, -s[0].length)];
221
2215
  }
222
- o(G, "splitCR");
223
- function y(e) {
224
- let t = e.match(/^\s+/);
225
- return t == null ? ["", e] : [e.slice(0, t[0].length), e.slice(t[0].length)];
2216
+ r(st, "splitCR");
2217
+ function A(n) {
2218
+ let s = n.match(/^\s+/);
2219
+ return s == null ? ["", n] : [n.slice(0, s[0].length), n.slice(s[0].length)];
226
2220
  }
227
- o(y, "splitSpace");
228
- function K(e) {
229
- return e.split(/\n/);
2221
+ r(A, "splitSpace");
2222
+ function at(n) {
2223
+ return n.split(/\n/);
230
2224
  }
231
- o(K, "splitLines");
232
- function X(e = {}) {
233
- return Object.assign({ tag: "", name: "", type: "", optional: !1, description: "", problems: [], source: [] }, e);
2225
+ r(at, "splitLines");
2226
+ function it(n = {}) {
2227
+ return Object.assign({ tag: "", name: "", type: "", optional: !1, description: "", problems: [], source: [] }, n);
234
2228
  }
235
- o(X, "seedSpec");
236
- function F(e = {}) {
2229
+ r(it, "seedSpec");
2230
+ function ke(n = {}) {
237
2231
  return Object.assign({ start: "", delimiter: "", postDelimiter: "", tag: "", postTag: "", name: "", postName: "", type: "", postType: "", description: "",
238
- end: "", lineEnd: "" }, e);
2232
+ end: "", lineEnd: "" }, n);
239
2233
  }
240
- o(F, "seedTokens");
2234
+ r(ke, "seedTokens");
241
2235
 
242
2236
  // ../node_modules/comment-parser/es6/parser/block-parser.js
243
- var Fe = /^@\S+/;
244
- function J({ fence: e = "```" } = {}) {
245
- let t = Je(e), r = /* @__PURE__ */ o((n, s) => t(n) ? !s : s, "toggleFence");
246
- return /* @__PURE__ */ o(function(s) {
247
- let i = [[]], p = !1;
248
- for (let a of s)
249
- Fe.test(a.tokens.description) && !p ? i.push([a]) : i[i.length - 1].push(a), p = r(a.tokens.description, p);
250
- return i;
2237
+ var Dr = /^@\S+/;
2238
+ function Ae({ fence: n = "```" } = {}) {
2239
+ let s = vr(n), a = /* @__PURE__ */ r((p, c) => s(p) ? !c : c, "toggleFence");
2240
+ return /* @__PURE__ */ r(function(c) {
2241
+ let u = [[]], m = !1;
2242
+ for (let T of c)
2243
+ Dr.test(T.tokens.description) && !m ? u.push([T]) : u[u.length - 1].push(T), m = a(T.tokens.description, m);
2244
+ return u;
251
2245
  }, "parseBlock");
252
2246
  }
253
- o(J, "getParser");
254
- function Je(e) {
255
- return typeof e == "string" ? (t) => t.split(e).length % 2 === 0 : e;
2247
+ r(Ae, "getParser");
2248
+ function vr(n) {
2249
+ return typeof n == "string" ? (s) => s.split(n).length % 2 === 0 : n;
256
2250
  }
257
- o(Je, "getFencer");
2251
+ r(vr, "getFencer");
258
2252
 
259
2253
  // ../node_modules/comment-parser/es6/parser/source-parser.js
260
- function N({ startLine: e = 0, markers: t = f } = {}) {
261
- let r = null, n = e;
262
- return /* @__PURE__ */ o(function(i) {
263
- let p = i, a = F();
264
- if ([a.lineEnd, p] = G(p), [a.start, p] = y(p), r === null && p.startsWith(t.start) && !p.startsWith(t.nostart) && (r = [], a.delimiter =
265
- p.slice(0, t.start.length), p = p.slice(t.start.length), [a.postDelimiter, p] = y(p)), r === null)
266
- return n++, null;
267
- let c = p.trimRight().endsWith(t.end);
268
- if (a.delimiter === "" && p.startsWith(t.delim) && !p.startsWith(t.end) && (a.delimiter = t.delim, p = p.slice(t.delim.length), [a.postDelimiter,
269
- p] = y(p)), c) {
270
- let u = p.trimRight();
271
- a.end = p.slice(u.length - t.end.length), p = u.slice(0, -t.end.length);
272
- }
273
- if (a.description = p, r.push({ number: n, source: i, tokens: a }), n++, c) {
274
- let u = r.slice();
275
- return r = null, u;
2254
+ function Re({ startLine: n = 0, markers: s = v } = {}) {
2255
+ let a = null, p = n;
2256
+ return /* @__PURE__ */ r(function(u) {
2257
+ let m = u, T = ke();
2258
+ if ([T.lineEnd, m] = st(m), [T.start, m] = A(m), a === null && m.startsWith(s.start) && !m.startsWith(s.nostart) && (a = [], T.delimiter =
2259
+ m.slice(0, s.start.length), m = m.slice(s.start.length), [T.postDelimiter, m] = A(m)), a === null)
2260
+ return p++, null;
2261
+ let g = m.trimRight().endsWith(s.end);
2262
+ if (T.delimiter === "" && m.startsWith(s.delim) && !m.startsWith(s.end) && (T.delimiter = s.delim, m = m.slice(s.delim.length), [T.postDelimiter,
2263
+ m] = A(m)), g) {
2264
+ let w = m.trimRight();
2265
+ T.end = m.slice(w.length - s.end.length), m = w.slice(0, -s.end.length);
2266
+ }
2267
+ if (T.description = m, a.push({ number: p, source: u, tokens: T }), p++, g) {
2268
+ let w = a.slice();
2269
+ return a = null, w;
276
2270
  }
277
2271
  return null;
278
2272
  }, "parseSource");
279
2273
  }
280
- o(N, "getParser");
2274
+ r(Re, "getParser");
281
2275
 
282
2276
  // ../node_modules/comment-parser/es6/parser/spec-parser.js
283
- function R({ tokenizers: e }) {
284
- return /* @__PURE__ */ o(function(r) {
285
- var n;
286
- let s = X({ source: r });
287
- for (let i of e)
288
- if (s = i(s), !((n = s.problems[s.problems.length - 1]) === null || n === void 0) && n.critical)
2277
+ function Ie({ tokenizers: n }) {
2278
+ return /* @__PURE__ */ r(function(a) {
2279
+ var p;
2280
+ let c = it({ source: a });
2281
+ for (let u of n)
2282
+ if (c = u(c), !((p = c.problems[c.problems.length - 1]) === null || p === void 0) && p.critical)
289
2283
  break;
290
- return s;
2284
+ return c;
291
2285
  }, "parseSpec");
292
2286
  }
293
- o(R, "getParser");
2287
+ r(Ie, "getParser");
294
2288
 
295
2289
  // ../node_modules/comment-parser/es6/parser/tokenizers/tag.js
296
- function P() {
297
- return (e) => {
298
- let { tokens: t } = e.source[0], r = t.description.match(/\s*(@(\S+))(\s*)/);
299
- return r === null ? (e.problems.push({
2290
+ function ae() {
2291
+ return (n) => {
2292
+ let { tokens: s } = n.source[0], a = s.description.match(/\s*(@(\S+))(\s*)/);
2293
+ return a === null ? (n.problems.push({
300
2294
  code: "spec:tag:prefix",
301
2295
  message: 'tag should start with "@" symbol',
302
- line: e.source[0].number,
2296
+ line: n.source[0].number,
303
2297
  critical: !0
304
- }), e) : (t.tag = r[1], t.postTag = r[3], t.description = t.description.slice(r[0].length), e.tag = r[2], e);
2298
+ }), n) : (s.tag = a[1], s.postTag = a[3], s.description = s.description.slice(a[0].length), n.tag = a[2], n);
305
2299
  };
306
2300
  }
307
- o(P, "tagTokenizer");
2301
+ r(ae, "tagTokenizer");
308
2302
 
309
2303
  // ../node_modules/comment-parser/es6/parser/tokenizers/type.js
310
- function S(e = "compact") {
311
- let t = Re(e);
312
- return (r) => {
313
- let n = 0, s = [];
314
- for (let [a, { tokens: c }] of r.source.entries()) {
315
- let u = "";
316
- if (a === 0 && c.description[0] !== "{")
317
- return r;
318
- for (let m of c.description)
319
- if (m === "{" && n++, m === "}" && n--, u += m, n === 0)
2304
+ function ie(n = "compact") {
2305
+ let s = Ar(n);
2306
+ return (a) => {
2307
+ let p = 0, c = [];
2308
+ for (let [T, { tokens: g }] of a.source.entries()) {
2309
+ let w = "";
2310
+ if (T === 0 && g.description[0] !== "{")
2311
+ return a;
2312
+ for (let b of g.description)
2313
+ if (b === "{" && p++, b === "}" && p--, w += b, p === 0)
320
2314
  break;
321
- if (s.push([c, u]), n === 0)
2315
+ if (c.push([g, w]), p === 0)
322
2316
  break;
323
2317
  }
324
- if (n !== 0)
325
- return r.problems.push({
2318
+ if (p !== 0)
2319
+ return a.problems.push({
326
2320
  code: "spec:type:unpaired-curlies",
327
2321
  message: "unpaired curlies",
328
- line: r.source[0].number,
2322
+ line: a.source[0].number,
329
2323
  critical: !0
330
- }), r;
331
- let i = [], p = s[0][0].postDelimiter.length;
332
- for (let [a, [c, u]] of s.entries())
333
- c.type = u, a > 0 && (c.type = c.postDelimiter.slice(p) + u, c.postDelimiter = c.postDelimiter.slice(0, p)), [c.postType, c.description] =
334
- y(c.description.slice(u.length)), i.push(c.type);
335
- return i[0] = i[0].slice(1), i[i.length - 1] = i[i.length - 1].slice(0, -1), r.type = t(i), r;
2324
+ }), a;
2325
+ let u = [], m = c[0][0].postDelimiter.length;
2326
+ for (let [T, [g, w]] of c.entries())
2327
+ g.type = w, T > 0 && (g.type = g.postDelimiter.slice(m) + w, g.postDelimiter = g.postDelimiter.slice(0, m)), [g.postType, g.description] =
2328
+ A(g.description.slice(w.length)), u.push(g.type);
2329
+ return u[0] = u[0].slice(1), u[u.length - 1] = u[u.length - 1].slice(0, -1), a.type = s(u), a;
336
2330
  };
337
2331
  }
338
- o(S, "typeTokenizer");
339
- var Ne = /* @__PURE__ */ o((e) => e.trim(), "trim");
340
- function Re(e) {
341
- return e === "compact" ? (t) => t.map(Ne).join("") : e === "preserve" ? (t) => t.join(`
342
- `) : e;
2332
+ r(ie, "typeTokenizer");
2333
+ var kr = /* @__PURE__ */ r((n) => n.trim(), "trim");
2334
+ function Ar(n) {
2335
+ return n === "compact" ? (s) => s.map(kr).join("") : n === "preserve" ? (s) => s.join(`
2336
+ `) : n;
343
2337
  }
344
- o(Re, "getJoiner");
2338
+ r(Ar, "getJoiner");
345
2339
 
346
2340
  // ../node_modules/comment-parser/es6/parser/tokenizers/name.js
347
- var Ae = /* @__PURE__ */ o((e) => e && e.startsWith('"') && e.endsWith('"'), "isQuoted");
348
- function O() {
349
- let e = /* @__PURE__ */ o((t, { tokens: r }, n) => r.type === "" ? t : n, "typeEnd");
350
- return (t) => {
351
- let { tokens: r } = t.source[t.source.reduce(e, 0)], n = r.description.trimLeft(), s = n.split('"');
352
- if (s.length > 1 && s[0] === "" && s.length % 2 === 1)
353
- return t.name = s[1], r.name = `"${s[1]}"`, [r.postName, r.description] = y(n.slice(r.name.length)), t;
354
- let i = 0, p = "", a = !1, c;
355
- for (let m of n) {
356
- if (i === 0 && k(m))
2341
+ var Rr = /* @__PURE__ */ r((n) => n && n.startsWith('"') && n.endsWith('"'), "isQuoted");
2342
+ function pe() {
2343
+ let n = /* @__PURE__ */ r((s, { tokens: a }, p) => a.type === "" ? s : p, "typeEnd");
2344
+ return (s) => {
2345
+ let { tokens: a } = s.source[s.source.reduce(n, 0)], p = a.description.trimLeft(), c = p.split('"');
2346
+ if (c.length > 1 && c[0] === "" && c.length % 2 === 1)
2347
+ return s.name = c[1], a.name = `"${c[1]}"`, [a.postName, a.description] = A(p.slice(a.name.length)), s;
2348
+ let u = 0, m = "", T = !1, g;
2349
+ for (let b of p) {
2350
+ if (u === 0 && ve(b))
357
2351
  break;
358
- m === "[" && i++, m === "]" && i--, p += m;
2352
+ b === "[" && u++, b === "]" && u--, m += b;
359
2353
  }
360
- if (i !== 0)
361
- return t.problems.push({
2354
+ if (u !== 0)
2355
+ return s.problems.push({
362
2356
  code: "spec:name:unpaired-brackets",
363
2357
  message: "unpaired brackets",
364
- line: t.source[0].number,
2358
+ line: s.source[0].number,
365
2359
  critical: !0
366
- }), t;
367
- let u = p;
368
- if (p[0] === "[" && p[p.length - 1] === "]") {
369
- a = !0, p = p.slice(1, -1);
370
- let m = p.split("=");
371
- if (p = m[0].trim(), m[1] !== void 0 && (c = m.slice(1).join("=").trim()), p === "")
372
- return t.problems.push({
2360
+ }), s;
2361
+ let w = m;
2362
+ if (m[0] === "[" && m[m.length - 1] === "]") {
2363
+ T = !0, m = m.slice(1, -1);
2364
+ let b = m.split("=");
2365
+ if (m = b[0].trim(), b[1] !== void 0 && (g = b.slice(1).join("=").trim()), m === "")
2366
+ return s.problems.push({
373
2367
  code: "spec:name:empty-name",
374
2368
  message: "empty name",
375
- line: t.source[0].number,
2369
+ line: s.source[0].number,
376
2370
  critical: !0
377
- }), t;
378
- if (c === "")
379
- return t.problems.push({
2371
+ }), s;
2372
+ if (g === "")
2373
+ return s.problems.push({
380
2374
  code: "spec:name:empty-default",
381
2375
  message: "empty default value",
382
- line: t.source[0].number,
2376
+ line: s.source[0].number,
383
2377
  critical: !0
384
- }), t;
385
- if (!Ae(c) && /=(?!>)/.test(c))
386
- return t.problems.push({
2378
+ }), s;
2379
+ if (!Rr(g) && /=(?!>)/.test(g))
2380
+ return s.problems.push({
387
2381
  code: "spec:name:invalid-default",
388
2382
  message: "invalid default value syntax",
389
- line: t.source[0].number,
2383
+ line: s.source[0].number,
390
2384
  critical: !0
391
- }), t;
2385
+ }), s;
392
2386
  }
393
- return t.optional = a, t.name = p, r.name = u, c !== void 0 && (t.default = c), [r.postName, r.description] = y(n.slice(r.name.length)),
394
- t;
2387
+ return s.optional = T, s.name = m, a.name = w, g !== void 0 && (s.default = g), [a.postName, a.description] = A(p.slice(a.name.length)),
2388
+ s;
395
2389
  };
396
2390
  }
397
- o(O, "nameTokenizer");
2391
+ r(pe, "nameTokenizer");
398
2392
 
399
2393
  // ../node_modules/comment-parser/es6/parser/tokenizers/description.js
400
- function v(e = "compact", t = f) {
401
- let r = A(e);
402
- return (n) => (n.description = r(n.source, t), n);
403
- }
404
- o(v, "descriptionTokenizer");
405
- function A(e) {
406
- return e === "compact" ? Ve : e === "preserve" ? Be : e;
407
- }
408
- o(A, "getJoiner");
409
- function Ve(e, t = f) {
410
- return e.map(({ tokens: { description: r } }) => r.trim()).filter((r) => r !== "").join(" ");
411
- }
412
- o(Ve, "compactJoiner");
413
- var Ce = /* @__PURE__ */ o((e, { tokens: t }, r) => t.type === "" ? e : r, "lineNo"), _e = /* @__PURE__ */ o(({ tokens: e }) => (e.delimiter ===
414
- "" ? e.start : e.postDelimiter.slice(1)) + e.description, "getDescription");
415
- function Be(e, t = f) {
416
- if (e.length === 0)
2394
+ function ce(n = "compact", s = v) {
2395
+ let a = Fe(n);
2396
+ return (p) => (p.description = a(p.source, s), p);
2397
+ }
2398
+ r(ce, "descriptionTokenizer");
2399
+ function Fe(n) {
2400
+ return n === "compact" ? Ir : n === "preserve" ? _r : n;
2401
+ }
2402
+ r(Fe, "getJoiner");
2403
+ function Ir(n, s = v) {
2404
+ return n.map(({ tokens: { description: a } }) => a.trim()).filter((a) => a !== "").join(" ");
2405
+ }
2406
+ r(Ir, "compactJoiner");
2407
+ var Fr = /* @__PURE__ */ r((n, { tokens: s }, a) => s.type === "" ? n : a, "lineNo"), jr = /* @__PURE__ */ r(({ tokens: n }) => (n.delimiter ===
2408
+ "" ? n.start : n.postDelimiter.slice(1)) + n.description, "getDescription");
2409
+ function _r(n, s = v) {
2410
+ if (n.length === 0)
417
2411
  return "";
418
- e[0].tokens.description === "" && e[0].tokens.delimiter === t.start && (e = e.slice(1));
419
- let r = e[e.length - 1];
420
- return r !== void 0 && r.tokens.description === "" && r.tokens.end.endsWith(t.end) && (e = e.slice(0, -1)), e = e.slice(e.reduce(Ce, 0)), e.
421
- map(_e).join(`
2412
+ n[0].tokens.description === "" && n[0].tokens.delimiter === s.start && (n = n.slice(1));
2413
+ let a = n[n.length - 1];
2414
+ return a !== void 0 && a.tokens.description === "" && a.tokens.end.endsWith(s.end) && (n = n.slice(0, -1)), n = n.slice(n.reduce(Fr, 0)), n.
2415
+ map(jr).join(`
422
2416
  `);
423
2417
  }
424
- o(Be, "preserveJoiner");
2418
+ r(_r, "preserveJoiner");
425
2419
 
426
2420
  // ../node_modules/comment-parser/es6/parser/index.js
427
- function V({ startLine: e = 0, fence: t = "```", spacing: r = "compact", markers: n = f, tokenizers: s = [
428
- P(),
429
- S(r),
430
- O(),
431
- v(r)
2421
+ function je({ startLine: n = 0, fence: s = "```", spacing: a = "compact", markers: p = v, tokenizers: c = [
2422
+ ae(),
2423
+ ie(a),
2424
+ pe(),
2425
+ ce(a)
432
2426
  ] } = {}) {
433
- if (e < 0 || e % 1 > 0)
2427
+ if (n < 0 || n % 1 > 0)
434
2428
  throw new Error("Invalid startLine");
435
- let i = N({ startLine: e, markers: n }), p = J({ fence: t }), a = R({ tokenizers: s }), c = A(r);
436
- return function(u) {
437
- let m = [];
438
- for (let ge of K(u)) {
439
- let E = i(ge);
440
- if (E === null)
2429
+ let u = Re({ startLine: n, markers: p }), m = Ae({ fence: s }), T = Ie({ tokenizers: c }), g = Fe(a);
2430
+ return function(w) {
2431
+ let b = [];
2432
+ for (let me of at(w)) {
2433
+ let $ = u(me);
2434
+ if ($ === null)
441
2435
  continue;
442
- let L = p(E), U = L.slice(1).map(a);
443
- m.push({
444
- description: c(L[0], n),
445
- tags: U,
446
- source: E,
447
- problems: U.reduce((de, xe) => de.concat(xe.problems), [])
2436
+ let E = m($), X = E.slice(1).map(T);
2437
+ b.push({
2438
+ description: g(E[0], p),
2439
+ tags: X,
2440
+ source: $,
2441
+ problems: X.reduce((ye, fe) => ye.concat(fe.problems), [])
448
2442
  });
449
2443
  }
450
- return m;
2444
+ return b;
451
2445
  };
452
2446
  }
453
- o(V, "getParser");
2447
+ r(je, "getParser");
454
2448
 
455
2449
  // ../node_modules/comment-parser/es6/stringifier/index.js
456
- function Ie(e) {
457
- return e.start + e.delimiter + e.postDelimiter + e.tag + e.postTag + e.type + e.postType + e.name + e.postName + e.description + e.end + e.
2450
+ function Lr(n) {
2451
+ return n.start + n.delimiter + n.postDelimiter + n.tag + n.postTag + n.type + n.postType + n.name + n.postName + n.description + n.end + n.
458
2452
  lineEnd;
459
2453
  }
460
- o(Ie, "join");
461
- function C() {
462
- return (e) => e.source.map(({ tokens: t }) => Ie(t)).join(`
2454
+ r(Lr, "join");
2455
+ function _e() {
2456
+ return (n) => n.source.map(({ tokens: s }) => Lr(s)).join(`
463
2457
  `);
464
2458
  }
465
- o(C, "getStringifier");
2459
+ r(_e, "getStringifier");
466
2460
 
467
2461
  // ../node_modules/comment-parser/es6/stringifier/inspect.js
468
- var Le = {
2462
+ var Vr = {
469
2463
  line: 0,
470
2464
  start: 0,
471
2465
  delimiter: 0,
@@ -480,430 +2474,437 @@ var Le = {
480
2474
  end: 0,
481
2475
  lineEnd: 0
482
2476
  };
483
- var Mr = Object.keys(Le);
2477
+ var Mo = Object.keys(Vr);
484
2478
 
485
2479
  // ../node_modules/comment-parser/es6/index.js
486
- function H(e, t = {}) {
487
- return V(t)(e);
2480
+ function pt(n, s = {}) {
2481
+ return je(s)(n);
488
2482
  }
489
- o(H, "parse");
490
- var lo = C();
2483
+ r(pt, "parse");
2484
+ var cs = _e();
491
2485
 
492
2486
  // src/docs-tools/argTypes/jsdocParser.ts
493
- import {
494
- parse as Ue,
495
- stringifyRules as We,
496
- transform as Me
497
- } from "jsdoc-type-pratt-parser";
498
- function ze(e) {
499
- return e != null && e.includes("@");
500
- }
501
- o(ze, "containsJsDoc");
502
- function $e(e) {
503
- let n = `/**
504
- ` + (e ?? "").split(`
505
- `).map((i) => ` * ${i}`).join(`
2487
+ var K = Tr(lt(), 1);
2488
+ function Ur(n) {
2489
+ return n != null && n.includes("@");
2490
+ }
2491
+ r(Ur, "containsJsDoc");
2492
+ function Br(n) {
2493
+ let p = `/**
2494
+ ` + (n ?? "").split(`
2495
+ `).map((u) => ` * ${u}`).join(`
506
2496
  `) + `
507
- */`, s = H(n, {
2497
+ */`, c = pt(p, {
508
2498
  spacing: "preserve"
509
2499
  });
510
- if (!s || s.length === 0)
2500
+ if (!c || c.length === 0)
511
2501
  throw new Error("Cannot parse JSDoc tags.");
512
- return s[0];
2502
+ return c[0];
513
2503
  }
514
- o($e, "parse");
515
- var Ye = {
2504
+ r(Br, "parse");
2505
+ var Cr = {
516
2506
  tags: ["param", "arg", "argument", "returns", "ignore", "deprecated"]
517
- }, Q = /* @__PURE__ */ o((e, t = Ye) => {
518
- if (!ze(e))
2507
+ }, ut = /* @__PURE__ */ r((n, s = Cr) => {
2508
+ if (!Ur(n))
519
2509
  return {
520
2510
  includesJsDoc: !1,
521
2511
  ignore: !1
522
2512
  };
523
- let r = $e(e), n = qe(r, t.tags);
524
- return n.ignore ? {
2513
+ let a = Br(n), p = Mr(a, s.tags);
2514
+ return p.ignore ? {
525
2515
  includesJsDoc: !0,
526
2516
  ignore: !0
527
2517
  } : {
528
2518
  includesJsDoc: !0,
529
2519
  ignore: !1,
530
2520
  // Always use the parsed description to ensure JSDoc is removed from the description.
531
- description: r.description.trim(),
532
- extractedTags: n
2521
+ description: a.description.trim(),
2522
+ extractedTags: p
533
2523
  };
534
2524
  }, "parseJsDoc");
535
- function qe(e, t) {
536
- let r = {
2525
+ function Mr(n, s) {
2526
+ let a = {
537
2527
  params: null,
538
2528
  deprecated: null,
539
2529
  returns: null,
540
2530
  ignore: !1
541
2531
  };
542
- for (let n of e.tags)
543
- if (!(t !== void 0 && !t.includes(n.tag)))
544
- if (n.tag === "ignore") {
545
- r.ignore = !0;
2532
+ for (let p of n.tags)
2533
+ if (!(s !== void 0 && !s.includes(p.tag)))
2534
+ if (p.tag === "ignore") {
2535
+ a.ignore = !0;
546
2536
  break;
547
2537
  } else
548
- switch (n.tag) {
2538
+ switch (p.tag) {
549
2539
  // arg & argument are aliases for param.
550
2540
  case "param":
551
2541
  case "arg":
552
2542
  case "argument": {
553
- let s = Ke(n);
554
- s != null && (r.params == null && (r.params = []), r.params.push(s));
2543
+ let c = $r(p);
2544
+ c != null && (a.params == null && (a.params = []), a.params.push(c));
555
2545
  break;
556
2546
  }
557
2547
  case "deprecated": {
558
- let s = Xe(n);
559
- s != null && (r.deprecated = s);
2548
+ let c = qr(p);
2549
+ c != null && (a.deprecated = c);
560
2550
  break;
561
2551
  }
562
2552
  case "returns": {
563
- let s = He(n);
564
- s != null && (r.returns = s);
2553
+ let c = Yr(p);
2554
+ c != null && (a.returns = c);
565
2555
  break;
566
2556
  }
567
2557
  default:
568
2558
  break;
569
2559
  }
570
- return r;
2560
+ return a;
571
2561
  }
572
- o(qe, "extractJsDocTags");
573
- function Ge(e) {
574
- return e.replace(/[\.-]$/, "");
2562
+ r(Mr, "extractJsDocTags");
2563
+ function Kr(n) {
2564
+ return n.replace(/[\.-]$/, "");
575
2565
  }
576
- o(Ge, "normaliseParamName");
577
- function Ke(e) {
578
- if (!e.name || e.name === "-")
2566
+ r(Kr, "normaliseParamName");
2567
+ function $r(n) {
2568
+ if (!n.name || n.name === "-")
579
2569
  return null;
580
- let t = te(e.type);
2570
+ let s = ft(n.type);
581
2571
  return {
582
- name: e.name,
583
- type: t,
584
- description: ee(e.description),
585
- getPrettyName: /* @__PURE__ */ o(() => Ge(e.name), "getPrettyName"),
586
- getTypeName: /* @__PURE__ */ o(() => t ? re(t) : null, "getTypeName")
2572
+ name: n.name,
2573
+ type: s,
2574
+ description: yt(n.description),
2575
+ getPrettyName: /* @__PURE__ */ r(() => Kr(n.name), "getPrettyName"),
2576
+ getTypeName: /* @__PURE__ */ r(() => s ? dt(s) : null, "getTypeName")
587
2577
  };
588
2578
  }
589
- o(Ke, "extractParam");
590
- function Xe(e) {
591
- return e.name ? Z(e.name, e.description) : null;
592
- }
593
- o(Xe, "extractDeprecated");
594
- function Z(e, t) {
595
- let r = e === "" ? t : `${e} ${t}`;
596
- return ee(r);
597
- }
598
- o(Z, "joinNameAndDescription");
599
- function ee(e) {
600
- let t = e.replace(/^- /g, "").trim();
601
- return t === "" ? null : t;
602
- }
603
- o(ee, "normaliseDescription");
604
- function He(e) {
605
- let t = te(e.type);
606
- return t ? {
607
- type: t,
608
- description: Z(e.name, e.description),
609
- getTypeName: /* @__PURE__ */ o(() => re(t), "getTypeName")
2579
+ r($r, "extractParam");
2580
+ function qr(n) {
2581
+ return n.name ? mt(n.name, n.description) : null;
2582
+ }
2583
+ r(qr, "extractDeprecated");
2584
+ function mt(n, s) {
2585
+ let a = n === "" ? s : `${n} ${s}`;
2586
+ return yt(a);
2587
+ }
2588
+ r(mt, "joinNameAndDescription");
2589
+ function yt(n) {
2590
+ let s = n.replace(/^- /g, "").trim();
2591
+ return s === "" ? null : s;
2592
+ }
2593
+ r(yt, "normaliseDescription");
2594
+ function Yr(n) {
2595
+ let s = ft(n.type);
2596
+ return s ? {
2597
+ type: s,
2598
+ description: mt(n.name, n.description),
2599
+ getTypeName: /* @__PURE__ */ r(() => dt(s), "getTypeName")
610
2600
  } : null;
611
2601
  }
612
- o(He, "extractReturns");
613
- var g = We(), Qe = g.JsdocTypeObject;
614
- g.JsdocTypeAny = () => "any";
615
- g.JsdocTypeObject = (e, t) => `(${Qe(e, t)})`;
616
- g.JsdocTypeOptional = (e, t) => t(e.element);
617
- g.JsdocTypeNullable = (e, t) => t(e.element);
618
- g.JsdocTypeNotNullable = (e, t) => t(e.element);
619
- g.JsdocTypeUnion = (e, t) => e.elements.map(t).join("|");
620
- function te(e) {
2602
+ r(Yr, "extractReturns");
2603
+ var j = (0, K.stringifyRules)(), Wr = j.JsdocTypeObject;
2604
+ j.JsdocTypeAny = () => "any";
2605
+ j.JsdocTypeObject = (n, s) => `(${Wr(n, s)})`;
2606
+ j.JsdocTypeOptional = (n, s) => s(n.element);
2607
+ j.JsdocTypeNullable = (n, s) => s(n.element);
2608
+ j.JsdocTypeNotNullable = (n, s) => s(n.element);
2609
+ j.JsdocTypeUnion = (n, s) => n.elements.map(s).join("|");
2610
+ function ft(n) {
621
2611
  try {
622
- return Ue(e, "typescript");
2612
+ return (0, K.parse)(n, "typescript");
623
2613
  } catch {
624
2614
  return null;
625
2615
  }
626
2616
  }
627
- o(te, "extractType");
628
- function re(e) {
629
- return Me(g, e);
2617
+ r(ft, "extractType");
2618
+ function dt(n) {
2619
+ return (0, K.transform)(j, n);
630
2620
  }
631
- o(re, "extractTypeName");
2621
+ r(dt, "extractTypeName");
632
2622
 
633
2623
  // src/docs-tools/argTypes/utils.ts
634
- var ho = 90, bo = 50;
635
- function B(e) {
636
- return e.length > 90;
2624
+ var hs = 90, xs = 50;
2625
+ function Ve(n) {
2626
+ return n.length > 90;
637
2627
  }
638
- o(B, "isTooLongForTypeSummary");
639
- function oe(e) {
640
- return e.length > 50;
2628
+ r(Ve, "isTooLongForTypeSummary");
2629
+ function Tt(n) {
2630
+ return n.length > 50;
641
2631
  }
642
- o(oe, "isTooLongForDefaultValueSummary");
643
- function l(e, t) {
644
- return e === t ? { summary: e } : { summary: e, detail: t };
2632
+ r(Tt, "isTooLongForDefaultValueSummary");
2633
+ function J(n, s) {
2634
+ return n === s ? { summary: n } : { summary: n, detail: s };
645
2635
  }
646
- o(l, "createSummaryValue");
647
- var Po = /* @__PURE__ */ o((e) => e.replace(/\\r\\n/g, "\\n"), "normalizeNewlines");
2636
+ r(J, "createSummaryValue");
2637
+ var Js = /* @__PURE__ */ r((n) => n.replace(/\\r\\n/g, "\\n"), "normalizeNewlines");
648
2638
 
649
2639
  // src/docs-tools/argTypes/docgen/flow/createDefaultValue.ts
650
- function ne(e, t) {
651
- if (e != null) {
652
- let { value: r } = e;
653
- if (!T(r))
654
- return oe(r) ? l(t?.name, r) : l(r);
2640
+ function gt(n, s) {
2641
+ if (n != null) {
2642
+ let { value: a } = n;
2643
+ if (!M(a))
2644
+ return Tt(a) ? J(s?.name, a) : J(a);
655
2645
  }
656
2646
  return null;
657
2647
  }
658
- o(ne, "createDefaultValue");
2648
+ r(gt, "createDefaultValue");
659
2649
 
660
2650
  // src/docs-tools/argTypes/docgen/flow/createType.ts
661
- function se({ name: e, value: t, elements: r, raw: n }) {
662
- return t ?? (r != null ? r.map(se).join(" | ") : n ?? e);
2651
+ function ht({ name: n, value: s, elements: a, raw: p }) {
2652
+ return s ?? (a != null ? a.map(ht).join(" | ") : p ?? n);
663
2653
  }
664
- o(se, "generateUnionElement");
665
- function Ze({ name: e, raw: t, elements: r }) {
666
- return r != null ? l(r.map(se).join(" | ")) : t != null ? l(t.replace(/^\|\s*/, "")) : l(e);
2654
+ r(ht, "generateUnionElement");
2655
+ function Gr({ name: n, raw: s, elements: a }) {
2656
+ return a != null ? J(a.map(ht).join(" | ")) : s != null ? J(s.replace(/^\|\s*/, "")) : J(n);
667
2657
  }
668
- o(Ze, "generateUnion");
669
- function et({ type: e, raw: t }) {
670
- return t != null ? l(t) : l(e);
2658
+ r(Gr, "generateUnion");
2659
+ function zr({ type: n, raw: s }) {
2660
+ return s != null ? J(s) : J(n);
671
2661
  }
672
- o(et, "generateFuncSignature");
673
- function tt({ type: e, raw: t }) {
674
- return t != null ? B(t) ? l(e, t) : l(t) : l(e);
2662
+ r(zr, "generateFuncSignature");
2663
+ function Xr({ type: n, raw: s }) {
2664
+ return s != null ? Ve(s) ? J(n, s) : J(s) : J(n);
675
2665
  }
676
- o(tt, "generateObjectSignature");
677
- function rt(e) {
678
- let { type: t } = e;
679
- return t === "object" ? tt(e) : et(e);
2666
+ r(Xr, "generateObjectSignature");
2667
+ function Hr(n) {
2668
+ let { type: s } = n;
2669
+ return s === "object" ? Xr(n) : zr(n);
680
2670
  }
681
- o(rt, "generateSignature");
682
- function ot({ name: e, raw: t }) {
683
- return t != null ? B(t) ? l(e, t) : l(t) : l(e);
2671
+ r(Hr, "generateSignature");
2672
+ function Qr({ name: n, raw: s }) {
2673
+ return s != null ? Ve(s) ? J(n, s) : J(s) : J(n);
684
2674
  }
685
- o(ot, "generateDefault");
686
- function ie(e) {
687
- if (e == null)
2675
+ r(Qr, "generateDefault");
2676
+ function xt(n) {
2677
+ if (n == null)
688
2678
  return null;
689
- switch (e.name) {
2679
+ switch (n.name) {
690
2680
  case "union":
691
- return Ze(e);
2681
+ return Gr(n);
692
2682
  case "signature":
693
- return rt(e);
2683
+ return Hr(n);
694
2684
  default:
695
- return ot(e);
2685
+ return Qr(n);
696
2686
  }
697
2687
  }
698
- o(ie, "createType");
2688
+ r(xt, "createType");
699
2689
 
700
2690
  // src/docs-tools/argTypes/docgen/flow/createPropDef.ts
701
- var pe = /* @__PURE__ */ o((e, t) => {
702
- let { flowType: r, description: n, required: s, defaultValue: i } = t;
2691
+ var Jt = /* @__PURE__ */ r((n, s) => {
2692
+ let { flowType: a, description: p, required: c, defaultValue: u } = s;
703
2693
  return {
704
- name: e,
705
- type: ie(r),
706
- required: s,
707
- description: n,
708
- defaultValue: ne(i ?? null, r ?? null)
2694
+ name: n,
2695
+ type: xt(a),
2696
+ required: c,
2697
+ description: p,
2698
+ defaultValue: gt(u ?? null, a ?? null)
709
2699
  };
710
2700
  }, "createFlowPropDef");
711
2701
 
712
2702
  // src/docs-tools/argTypes/docgen/typeScript/createDefaultValue.ts
713
- function ae({ defaultValue: e }) {
714
- if (e != null) {
715
- let { value: t } = e;
716
- if (!T(t))
717
- return l(t);
2703
+ function Pt({ defaultValue: n }) {
2704
+ if (n != null) {
2705
+ let { value: s } = n;
2706
+ if (!M(s))
2707
+ return J(s);
718
2708
  }
719
2709
  return null;
720
2710
  }
721
- o(ae, "createDefaultValue");
2711
+ r(Pt, "createDefaultValue");
722
2712
 
723
2713
  // src/docs-tools/argTypes/docgen/typeScript/createType.ts
724
- function ce({ tsType: e, required: t }) {
725
- if (e == null)
2714
+ function wt({ tsType: n, required: s }) {
2715
+ if (n == null)
726
2716
  return null;
727
- let r = e.name;
728
- return t || (r = r.replace(" | undefined", "")), l(
729
- ["Array", "Record", "signature"].includes(e.name) ? e.raw : r
2717
+ let a = n.name;
2718
+ return s || (a = a.replace(" | undefined", "")), J(
2719
+ ["Array", "Record", "signature"].includes(n.name) ? n.raw : a
730
2720
  );
731
2721
  }
732
- o(ce, "createType");
2722
+ r(wt, "createType");
733
2723
 
734
2724
  // src/docs-tools/argTypes/docgen/typeScript/createPropDef.ts
735
- var le = /* @__PURE__ */ o((e, t) => {
736
- let { description: r, required: n } = t;
2725
+ var bt = /* @__PURE__ */ r((n, s) => {
2726
+ let { description: a, required: p } = s;
737
2727
  return {
738
- name: e,
739
- type: ce(t),
740
- required: n,
741
- description: r,
742
- defaultValue: ae(t)
2728
+ name: n,
2729
+ type: wt(s),
2730
+ required: p,
2731
+ description: a,
2732
+ defaultValue: Pt(s)
743
2733
  };
744
2734
  }, "createTsPropDef");
745
2735
 
746
2736
  // src/docs-tools/argTypes/docgen/createPropDef.ts
747
- function nt(e) {
748
- return e != null ? l(e.name) : null;
749
- }
750
- o(nt, "createType");
751
- function st(e) {
752
- let { computed: t, func: r } = e;
753
- return typeof t > "u" && typeof r > "u";
754
- }
755
- o(st, "isReactDocgenTypescript");
756
- function it(e) {
757
- return e ? e.name === "string" ? !0 : e.name === "enum" ? Array.isArray(e.value) && e.value.every(
758
- ({ value: t }) => typeof t == "string" && t[0] === '"' && t[t.length - 1] === '"'
2737
+ function Zr(n) {
2738
+ return n != null ? J(n.name) : null;
2739
+ }
2740
+ r(Zr, "createType");
2741
+ function en(n) {
2742
+ let { computed: s, func: a } = n;
2743
+ return typeof s > "u" && typeof a > "u";
2744
+ }
2745
+ r(en, "isReactDocgenTypescript");
2746
+ function tn(n) {
2747
+ return n ? n.name === "string" ? !0 : n.name === "enum" ? Array.isArray(n.value) && n.value.every(
2748
+ ({ value: s }) => typeof s == "string" && s[0] === '"' && s[s.length - 1] === '"'
759
2749
  ) : !1 : !1;
760
2750
  }
761
- o(it, "isStringValued");
762
- function pt(e, t) {
763
- if (e != null) {
764
- let { value: r } = e;
765
- if (!T(r))
766
- return st(e) && it(t) ? l(JSON.stringify(r)) : l(r);
2751
+ r(tn, "isStringValued");
2752
+ function rn(n, s) {
2753
+ if (n != null) {
2754
+ let { value: a } = n;
2755
+ if (!M(a))
2756
+ return en(n) && tn(s) ? J(JSON.stringify(a)) : J(a);
767
2757
  }
768
2758
  return null;
769
2759
  }
770
- o(pt, "createDefaultValue");
771
- function ue(e, t, r) {
772
- let { description: n, required: s, defaultValue: i } = r;
2760
+ r(rn, "createDefaultValue");
2761
+ function Et(n, s, a) {
2762
+ let { description: p, required: c, defaultValue: u } = a;
773
2763
  return {
774
- name: e,
775
- type: nt(t),
776
- required: s,
777
- description: n,
778
- defaultValue: pt(i, t)
2764
+ name: n,
2765
+ type: Zr(s),
2766
+ required: c,
2767
+ description: p,
2768
+ defaultValue: rn(u, s)
779
2769
  };
780
2770
  }
781
- o(ue, "createBasicPropDef");
782
- function w(e, t) {
783
- if (t?.includesJsDoc) {
784
- let { description: r, extractedTags: n } = t;
785
- r != null && (e.description = t.description);
786
- let s = {
787
- ...n,
788
- params: n?.params?.map(
789
- (i) => ({
790
- name: i.getPrettyName(),
791
- description: i.description
2771
+ r(Et, "createBasicPropDef");
2772
+ function ue(n, s) {
2773
+ if (s?.includesJsDoc) {
2774
+ let { description: a, extractedTags: p } = s;
2775
+ a != null && (n.description = s.description);
2776
+ let c = {
2777
+ ...p,
2778
+ params: p?.params?.map(
2779
+ (u) => ({
2780
+ name: u.getPrettyName(),
2781
+ description: u.description
792
2782
  })
793
2783
  )
794
2784
  };
795
- Object.values(s).filter(Boolean).length > 0 && (e.jsDocTags = s);
2785
+ Object.values(c).filter(Boolean).length > 0 && (n.jsDocTags = c);
796
2786
  }
797
- return e;
798
- }
799
- o(w, "applyJsDocResult");
800
- var at = /* @__PURE__ */ o((e, t, r) => {
801
- let n = ue(e, t.type, t);
802
- return n.sbType = b(t), w(n, r);
803
- }, "javaScriptFactory"), ct = /* @__PURE__ */ o((e, t, r) => {
804
- let n = le(e, t);
805
- return n.sbType = b(t), w(n, r);
806
- }, "tsFactory"), lt = /* @__PURE__ */ o((e, t, r) => {
807
- let n = pe(e, t);
808
- return n.sbType = b(t), w(n, r);
809
- }, "flowFactory"), ut = /* @__PURE__ */ o((e, t, r) => {
810
- let n = ue(e, { name: "unknown" }, t);
811
- return w(n, r);
812
- }, "unknownFactory"), I = /* @__PURE__ */ o((e) => {
813
- switch (e) {
2787
+ return n;
2788
+ }
2789
+ r(ue, "applyJsDocResult");
2790
+ var nn = /* @__PURE__ */ r((n, s, a) => {
2791
+ let p = Et(n, s.type, s);
2792
+ return p.sbType = se(s), ue(p, a);
2793
+ }, "javaScriptFactory"), on = /* @__PURE__ */ r((n, s, a) => {
2794
+ let p = bt(n, s);
2795
+ return p.sbType = se(s), ue(p, a);
2796
+ }, "tsFactory"), sn = /* @__PURE__ */ r((n, s, a) => {
2797
+ let p = Jt(n, s);
2798
+ return p.sbType = se(s), ue(p, a);
2799
+ }, "flowFactory"), an = /* @__PURE__ */ r((n, s, a) => {
2800
+ let p = Et(n, { name: "unknown" }, s);
2801
+ return ue(p, a);
2802
+ }, "unknownFactory"), Ue = /* @__PURE__ */ r((n) => {
2803
+ switch (n) {
814
2804
  case "JavaScript":
815
- return at;
2805
+ return nn;
816
2806
  case "TypeScript":
817
- return ct;
2807
+ return on;
818
2808
  case "Flow":
819
- return lt;
2809
+ return sn;
820
2810
  default:
821
- return ut;
2811
+ return an;
822
2812
  }
823
2813
  }, "getPropDefFactory");
824
2814
 
825
2815
  // src/docs-tools/argTypes/docgen/extractDocgenProps.ts
826
- var me = /* @__PURE__ */ o((e) => e.type != null ? "JavaScript" : e.flowType != null ? "Flow" : e.tsType != null ? "TypeScript" : "Unknown",
827
- "getTypeSystem"), mt = /* @__PURE__ */ o((e) => {
828
- let t = me(e[0]), r = I(t);
829
- return e.map((n) => {
830
- let s = n;
831
- return n.type?.elements && (s = {
832
- ...n,
2816
+ var St = /* @__PURE__ */ r((n) => n.type != null ? "JavaScript" : n.flowType != null ? "Flow" : n.tsType != null ? "TypeScript" : "Unknown",
2817
+ "getTypeSystem"), pn = /* @__PURE__ */ r((n) => {
2818
+ let s = St(n[0]), a = Ue(s);
2819
+ return n.map((p) => {
2820
+ let c = p;
2821
+ return p.type?.elements && (c = {
2822
+ ...p,
833
2823
  type: {
834
- ...n.type,
835
- value: n.type.elements
2824
+ ...p.type,
2825
+ value: p.type.elements
836
2826
  }
837
- }), fe(s.name, s, t, r);
2827
+ }), Nt(c.name, c, s, a);
838
2828
  });
839
- }, "extractComponentSectionArray"), ft = /* @__PURE__ */ o((e) => {
840
- let t = Object.keys(e), r = me(e[t[0]]), n = I(r);
841
- return t.map((s) => {
842
- let i = e[s];
843
- return i != null ? fe(s, i, r, n) : null;
2829
+ }, "extractComponentSectionArray"), cn = /* @__PURE__ */ r((n) => {
2830
+ let s = Object.keys(n), a = St(n[s[0]]), p = Ue(a);
2831
+ return s.map((c) => {
2832
+ let u = n[c];
2833
+ return u != null ? Nt(c, u, a, p) : null;
844
2834
  }).filter(Boolean);
845
- }, "extractComponentSectionObject"), on = /* @__PURE__ */ o((e, t) => {
846
- let r = Y(e, t);
847
- return $(r) ? Array.isArray(r) ? mt(r) : ft(r) : [];
2835
+ }, "extractComponentSectionObject"), ta = /* @__PURE__ */ r((n, s) => {
2836
+ let a = nt(n, s);
2837
+ return rt(a) ? Array.isArray(a) ? pn(a) : cn(a) : [];
848
2838
  }, "extractComponentProps");
849
- function fe(e, t, r, n) {
850
- let s = Q(t.description);
851
- return s.includesJsDoc && s.ignore ? null : {
852
- propDef: n(e, t, s),
853
- jsDocTags: s.extractedTags,
854
- docgenInfo: t,
855
- typeSystem: r
2839
+ function Nt(n, s, a, p) {
2840
+ let c = ut(s.description);
2841
+ return c.includesJsDoc && c.ignore ? null : {
2842
+ propDef: p(n, s, c),
2843
+ jsDocTags: c.extractedTags,
2844
+ docgenInfo: s,
2845
+ typeSystem: a
856
2846
  };
857
2847
  }
858
- o(fe, "extractProp");
859
- function nn(e) {
860
- return e != null ? q(e) : "";
2848
+ r(Nt, "extractProp");
2849
+ function ra(n) {
2850
+ return n != null ? ot(n) : "";
861
2851
  }
862
- o(nn, "extractComponentDescription");
2852
+ r(ra, "extractComponentDescription");
2853
+
2854
+ // src/preview-api/modules/store/parameters.ts
2855
+ var Be = /* @__PURE__ */ r((...n) => {
2856
+ let s = {}, a = n.filter(Boolean), p = a.reduce((c, u) => (Object.entries(u).forEach(([m, T]) => {
2857
+ let g = c[m];
2858
+ Array.isArray(T) || typeof g > "u" ? c[m] = T : z(T) && z(g) ? s[m] = !0 : typeof T < "u" && (c[m] = T);
2859
+ }), c), {});
2860
+ return Object.keys(s).forEach((c) => {
2861
+ let u = a.filter(Boolean).map((m) => m[c]).filter((m) => typeof m < "u");
2862
+ u.every((m) => z(m)) ? p[c] = Be(...u) : p[c] = u[u.length - 1];
2863
+ }), p;
2864
+ }, "combineParameters");
863
2865
 
864
2866
  // src/docs-tools/argTypes/enhanceArgTypes.ts
865
- import { combineParameters as yt } from "storybook/preview-api";
866
- var cn = /* @__PURE__ */ o((e) => {
2867
+ var ca = /* @__PURE__ */ r((n) => {
867
2868
  let {
868
- component: t,
869
- argTypes: r,
870
- parameters: { docs: n = {} }
871
- } = e, { extractArgTypes: s } = n, i = s && t ? s(t) : {};
872
- return i ? yt(i, r) : r;
2869
+ component: s,
2870
+ argTypes: a,
2871
+ parameters: { docs: p = {} }
2872
+ } = n, { extractArgTypes: c } = p, u = c && s ? c(s) : {};
2873
+ return u ? Be(u, a) : a;
873
2874
  }, "enhanceArgTypes");
874
2875
 
875
2876
  // src/docs-tools/shared.ts
876
- var ye = "storybook/docs", mn = `${ye}/panel`, fn = "docs", yn = `${ye}/snippet-rendered`, gt = /* @__PURE__ */ ((n) => (n.AUTO = "auto", n.
877
- CODE = "code", n.DYNAMIC = "dynamic", n))(gt || {});
2877
+ var Ot = "storybook/docs", ma = `${Ot}/panel`, ya = "docs", fa = `${Ot}/snippet-rendered`, ln = /* @__PURE__ */ ((p) => (p.AUTO = "auto", p.
2878
+ CODE = "code", p.DYNAMIC = "dynamic", p))(ln || {});
878
2879
 
879
2880
  // src/docs-tools/hasDocsOrControls.ts
880
- var dt = /(addons\/|addon-|addon-essentials\/)(docs|controls)/, dn = /* @__PURE__ */ o((e) => e.presetsList?.some((t) => dt.test(t.name)), "\
2881
+ var un = /(addons\/|addon-|addon-essentials\/)(docs|controls)/, Ta = /* @__PURE__ */ r((n) => n.presetsList?.some((s) => un.test(s.name)), "\
881
2882
  hasDocsOrControls");
882
2883
  export {
883
- ye as ADDON_ID,
884
- bo as MAX_DEFAULT_VALUE_SUMMARY_LENGTH,
885
- ho as MAX_TYPE_SUMMARY_LENGTH,
886
- mn as PANEL_ID,
887
- fn as PARAM_KEY,
888
- yn as SNIPPET_RENDERED,
889
- gt as SourceType,
890
- je as TypeSystem,
891
- b as convert,
892
- l as createSummaryValue,
893
- cn as enhanceArgTypes,
894
- nn as extractComponentDescription,
895
- on as extractComponentProps,
896
- mt as extractComponentSectionArray,
897
- ft as extractComponentSectionObject,
898
- q as getDocgenDescription,
899
- Y as getDocgenSection,
900
- z as hasDocgen,
901
- dn as hasDocsOrControls,
902
- T as isDefaultValueBlacklisted,
903
- oe as isTooLongForDefaultValueSummary,
904
- B as isTooLongForTypeSummary,
905
- $ as isValidDocgenSection,
906
- Po as normalizeNewlines,
907
- Q as parseJsDoc,
908
- M as str
2884
+ Ot as ADDON_ID,
2885
+ xs as MAX_DEFAULT_VALUE_SUMMARY_LENGTH,
2886
+ hs as MAX_TYPE_SUMMARY_LENGTH,
2887
+ ma as PANEL_ID,
2888
+ ya as PARAM_KEY,
2889
+ fa as SNIPPET_RENDERED,
2890
+ ln as SourceType,
2891
+ Nr as TypeSystem,
2892
+ se as convert,
2893
+ J as createSummaryValue,
2894
+ ca as enhanceArgTypes,
2895
+ ra as extractComponentDescription,
2896
+ ta as extractComponentProps,
2897
+ pn as extractComponentSectionArray,
2898
+ cn as extractComponentSectionObject,
2899
+ ot as getDocgenDescription,
2900
+ nt as getDocgenSection,
2901
+ tt as hasDocgen,
2902
+ Ta as hasDocsOrControls,
2903
+ M as isDefaultValueBlacklisted,
2904
+ Tt as isTooLongForDefaultValueSummary,
2905
+ Ve as isTooLongForTypeSummary,
2906
+ rt as isValidDocgenSection,
2907
+ Js as normalizeNewlines,
2908
+ ut as parseJsDoc,
2909
+ et as str
909
2910
  };