@uva-glass/component-library 3.52.10 → 3.53.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 (178) hide show
  1. package/dist/{Lexical.prod-sd_e2sqT.js → Lexical.prod-DH2XfwvA.js} +58 -58
  2. package/dist/{Lexical.prod-sd_e2sqT.js.map → Lexical.prod-DH2XfwvA.js.map} +1 -1
  3. package/dist/{LexicalClipboard.prod-Co2PF1UJ.js → LexicalClipboard.prod-DTuNvXAS.js} +22 -22
  4. package/dist/{LexicalClipboard.prod-Co2PF1UJ.js.map → LexicalClipboard.prod-DTuNvXAS.js.map} +1 -1
  5. package/dist/{LexicalLink.prod-BCE6Bg2N.js → LexicalLink.prod-BV5Y2RYj.js} +8 -9
  6. package/dist/{LexicalLink.prod-BCE6Bg2N.js.map → LexicalLink.prod-BV5Y2RYj.js.map} +1 -1
  7. package/dist/{LexicalList.prod-CIB0K0ja.js → LexicalList.prod-DA9du3qx.js} +4 -4
  8. package/dist/{LexicalList.prod-CIB0K0ja.js.map → LexicalList.prod-DA9du3qx.js.map} +1 -1
  9. package/dist/{LexicalSelection.prod-CCmcTP6S.js → LexicalSelection.prod-mQk00-U_.js} +2 -2
  10. package/dist/{LexicalSelection.prod-CCmcTP6S.js.map → LexicalSelection.prod-mQk00-U_.js.map} +1 -1
  11. package/dist/{LexicalTable.prod-Oa2YPHLl.js → LexicalTable.prod-RGq0GKAR.js} +4 -4
  12. package/dist/{LexicalTable.prod-Oa2YPHLl.js.map → LexicalTable.prod-RGq0GKAR.js.map} +1 -1
  13. package/dist/{LexicalUtils.prod-CjKjgnmx.js → LexicalUtils.prod-DU4QwthB.js} +2 -2
  14. package/dist/{LexicalUtils.prod-CjKjgnmx.js.map → LexicalUtils.prod-DU4QwthB.js.map} +1 -1
  15. package/dist/RteEditor.module-DaBh86FK.js +41 -0
  16. package/dist/RteEditor.module-DaBh86FK.js.map +1 -0
  17. package/dist/{TableCellResizerPlugin-DATbSzfg.js → TableCellResizerPlugin-DRwI83s2.js} +4 -4
  18. package/dist/{TableCellResizerPlugin-DATbSzfg.js.map → TableCellResizerPlugin-DRwI83s2.js.map} +1 -1
  19. package/dist/{TablePlugin-CqCjNBW_.js → TablePlugin-DmE96vN7.js} +20 -20
  20. package/dist/{TablePlugin-CqCjNBW_.js.map → TablePlugin-DmE96vN7.js.map} +1 -1
  21. package/dist/assets/AddCatalogueLinkForm.css +1 -0
  22. package/dist/assets/Flyout.css +1 -1
  23. package/dist/assets/RteEditor.css +1 -1
  24. package/dist/assets/variables.css +72 -72
  25. package/dist/chunk-SS2NHR7W-qmI2h7CJ.js +4507 -0
  26. package/dist/chunk-SS2NHR7W-qmI2h7CJ.js.map +1 -0
  27. package/dist/{client-CFLMKOFW.js → client-D4oO7Spw.js} +11 -11
  28. package/dist/{client-CFLMKOFW.js.map → client-D4oO7Spw.js.map} +1 -1
  29. package/dist/components/Accordion/Accordion.test.js +2 -2
  30. package/dist/components/AccordionCard/AccordionCard.test.js +2 -2
  31. package/dist/components/ActionList/ActionList.test.js +2 -2
  32. package/dist/components/AppStatusBar/AppStatusBar.test.js +1 -1
  33. package/dist/components/Attention/Attention.test.js +1 -1
  34. package/dist/components/Backdrop/Backdrop.test.js +1 -1
  35. package/dist/components/Buttons/Button.stories.js +1 -1
  36. package/dist/components/Buttons/Button.test.js +1 -1
  37. package/dist/components/Buttons/LinkButton.stories.js +1 -1
  38. package/dist/components/Buttons/LinkButton.test.js +1 -1
  39. package/dist/components/Buttons/MenuButton.stories.js +1 -1
  40. package/dist/components/Buttons/MenuButton.test.js +1 -1
  41. package/dist/components/Card/Card.test.js +1 -1
  42. package/dist/components/Checkbox/Checkbox.stories.js +1 -1
  43. package/dist/components/Checkbox/Checkbox.test.js +2 -2
  44. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.stories.js +1 -1
  45. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.test.js +1 -1
  46. package/dist/components/CheckboxTree/CheckboxTree.js +1 -1
  47. package/dist/components/CheckboxTree/CheckboxTree.stories.js +111 -55
  48. package/dist/components/CheckboxTree/CheckboxTree.stories.js.map +1 -1
  49. package/dist/components/Chip/Chip.stories.js +1 -1
  50. package/dist/components/ControlsButton/ControlsButton.stories.js +1 -1
  51. package/dist/components/Drawer/Drawer.stories.js +1 -1
  52. package/dist/components/FeedbackBar/FeedbackBar.test.js +1 -1
  53. package/dist/components/FormInput/FormInput.d.ts +3 -1
  54. package/dist/components/FormInput/FormInput.js +26 -24
  55. package/dist/components/FormInput/FormInput.js.map +1 -1
  56. package/dist/components/FormInput/FormInput.stories.js +1 -1
  57. package/dist/components/IconButton/IconButton.stories.js +1 -1
  58. package/dist/components/InputField/InputField.stories.js +2 -2
  59. package/dist/components/Label/Label.test.js +1 -1
  60. package/dist/components/MetaDataBar/MetaDataBar.test.js +1 -1
  61. package/dist/components/ModalDialog/ModalDialog.stories.js +1 -1
  62. package/dist/components/MultiSelect/MultiSelect.js +1 -1
  63. package/dist/components/MultiSelect/MultiSelect.stories.js +2 -2
  64. package/dist/components/MultiSelect/components/MultiSelectHeader.js +1 -1
  65. package/dist/components/MultiSelect/index.js +1 -1
  66. package/dist/components/MultiSelectBox/MultiSelectBox.stories.js +1 -1
  67. package/dist/components/MultiSelectBox/MultiSelectBox.test.js +1 -1
  68. package/dist/components/Notification/Notification.stories.js +1 -1
  69. package/dist/components/Notification/Notification.test.js +1 -1
  70. package/dist/components/OverlayCloseButton/OverlayCloseButton.stories.js +1 -1
  71. package/dist/components/PeriodSelector/PeriodSelector.js +1 -1
  72. package/dist/components/PeriodSelector/PeriodSelector.stories.js +1 -1
  73. package/dist/components/ProgrammeCard/ProgrammeCard.stories.js +1 -1
  74. package/dist/components/RadioGroup/RadioGroup.stories.js +1 -1
  75. package/dist/components/RadioGroup/Radiogroup.test.js +1 -1
  76. package/dist/components/RadioTabSelector/RadioTabSelector.js +1 -1
  77. package/dist/components/RadioTabSelector/RadioTabSelector.stories.js +1 -1
  78. package/dist/components/RteEditor/EditorHeader/EditorHeader.js +1 -1
  79. package/dist/components/RteEditor/Plugins/BlockFormatPlugin/BlockFormatPlugin.js +2 -2
  80. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/AddCatalogueLinkForm.d.ts +22 -0
  81. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/AddCatalogueLinkForm.js +108 -0
  82. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/AddCatalogueLinkForm.js.map +1 -0
  83. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/index.d.ts +1 -0
  84. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/index.js +5 -0
  85. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/index.js.map +1 -0
  86. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/CourseCataloguePlugin.d.ts +8 -0
  87. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/CourseCataloguePlugin.js +182 -0
  88. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/CourseCataloguePlugin.js.map +1 -0
  89. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/index.d.ts +1 -0
  90. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/index.js +5 -0
  91. package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/index.js.map +1 -0
  92. package/dist/components/RteEditor/Plugins/HistoryPlugin/HistoryPlugin.js +8 -8
  93. package/dist/components/RteEditor/Plugins/LinkPlugin/AddLinkForm/AddLinkFrom.js +2 -2
  94. package/dist/components/RteEditor/Plugins/LinkPlugin/LinkPlugin.d.ts +0 -2
  95. package/dist/components/RteEditor/Plugins/LinkPlugin/LinkPlugin.js +112 -132
  96. package/dist/components/RteEditor/Plugins/LinkPlugin/LinkPlugin.js.map +1 -1
  97. package/dist/components/RteEditor/Plugins/LinkPlugin/helpers.js +1 -1
  98. package/dist/components/RteEditor/Plugins/LinkPlugin/index.js +2 -3
  99. package/dist/components/RteEditor/Plugins/ListPlugin/ListPlugin.js +52 -57
  100. package/dist/components/RteEditor/Plugins/ListPlugin/ListPlugin.js.map +1 -1
  101. package/dist/components/RteEditor/Plugins/PasteHandlerPlugin/PasteHandlerPlugin.js +3 -3
  102. package/dist/components/RteEditor/Plugins/TableCellResizerPlugin/TableCellResizerPlugin.js +4 -4
  103. package/dist/components/RteEditor/Plugins/TableCellResizerPlugin/index.js +1 -1
  104. package/dist/components/RteEditor/Plugins/TablePlugin/AddTableFrom.js +2 -2
  105. package/dist/components/RteEditor/Plugins/TablePlugin/TablePlugin.js +6 -6
  106. package/dist/components/RteEditor/Plugins/TablePlugin/helpers.js +24 -23
  107. package/dist/components/RteEditor/Plugins/TablePlugin/helpers.js.map +1 -1
  108. package/dist/components/RteEditor/Plugins/TablePlugin/index.js +1 -1
  109. package/dist/components/RteEditor/Plugins/ToolbarPlugin/ToolbarPlugin.d.ts +4 -1
  110. package/dist/components/RteEditor/Plugins/ToolbarPlugin/ToolbarPlugin.js +65 -52
  111. package/dist/components/RteEditor/Plugins/ToolbarPlugin/ToolbarPlugin.js.map +1 -1
  112. package/dist/components/RteEditor/Plugins/index.js +8 -9
  113. package/dist/components/RteEditor/Providers/LanguageProvider.d.ts +2 -2
  114. package/dist/components/RteEditor/Providers/LanguageProvider.js +4 -4
  115. package/dist/components/RteEditor/Providers/LanguageProvider.js.map +1 -1
  116. package/dist/components/RteEditor/RteEditor.d.ts +8 -3
  117. package/dist/components/RteEditor/RteEditor.js +334 -309
  118. package/dist/components/RteEditor/RteEditor.js.map +1 -1
  119. package/dist/components/RteEditor/RteEditor.stories.js +69 -33
  120. package/dist/components/RteEditor/RteEditor.stories.js.map +1 -1
  121. package/dist/components/RteEditor/UvaTheme/UvaTheme.d.ts +1 -0
  122. package/dist/components/RteEditor/UvaTheme/UvaTheme.js +3 -2
  123. package/dist/components/RteEditor/UvaTheme/UvaTheme.js.map +1 -1
  124. package/dist/components/RteEditor/helpers.js +26 -23
  125. package/dist/components/RteEditor/helpers.js.map +1 -1
  126. package/dist/components/RteEditor/hooks/components/Flyout.js +6 -16
  127. package/dist/components/RteEditor/hooks/components/Flyout.js.map +1 -1
  128. package/dist/components/RteEditor/hooks/useTranslation.d.ts +39 -1
  129. package/dist/components/RteEditor/hooks/useTranslation.js +6 -6
  130. package/dist/components/RteEditor/hooks/useTranslation.js.map +1 -1
  131. package/dist/components/RteEditor/mockCatalogueSearchData.d.ts +18 -0
  132. package/dist/components/RteEditor/mockCatalogueSearchData.js +485 -0
  133. package/dist/components/RteEditor/mockCatalogueSearchData.js.map +1 -0
  134. package/dist/components/RteEditor/mockRteContent.d.ts +1 -1
  135. package/dist/components/RteEditor/mockRteContent.js +8 -6
  136. package/dist/components/RteEditor/mockRteContent.js.map +1 -1
  137. package/dist/components/RteEditor/nodes/CourseCatalogueNode/CourseCatalogueNode.d.ts +29 -0
  138. package/dist/components/RteEditor/nodes/CourseCatalogueNode/CourseCatalogueNode.js +126 -0
  139. package/dist/components/RteEditor/nodes/CourseCatalogueNode/CourseCatalogueNode.js.map +1 -0
  140. package/dist/components/RteEditor/nodes/CourseCatalogueNode/index.d.ts +1 -0
  141. package/dist/components/RteEditor/nodes/CourseCatalogueNode/index.js +11 -0
  142. package/dist/components/RteEditor/nodes/CourseCatalogueNode/index.js.map +1 -0
  143. package/dist/components/RteEditor/nodes/TableWrapperNode/TableWrapperNode.js +58 -52
  144. package/dist/components/RteEditor/nodes/TableWrapperNode/TableWrapperNode.js.map +1 -1
  145. package/dist/components/RteEditor/nodes/index.d.ts +1 -0
  146. package/dist/components/RteEditor/nodes/index.js +14 -6
  147. package/dist/components/RteEditor/nodes/index.js.map +1 -1
  148. package/dist/components/RteEditor/translations.d.ts +41 -3
  149. package/dist/components/RteEditor/translations.js +44 -6
  150. package/dist/components/RteEditor/translations.js.map +1 -1
  151. package/dist/components/SelectListbox/SelectListBox.stories.js +1 -1
  152. package/dist/components/Sortable/Sortable.stories.js +1 -1
  153. package/dist/components/StatusBadge/StatusBadge.test.js +1 -1
  154. package/dist/components/TextArea/TextArea.stories.js +1 -1
  155. package/dist/components/TextArea/TextArea.test.js +2 -2
  156. package/dist/components/ToggleSwitch/ToggleSwitch.stories.js +1 -1
  157. package/dist/components/VarIndicator/VarIndicator.stories.js +1 -1
  158. package/dist/components/VarIndicator/VarIndicator.test.js +2 -2
  159. package/dist/components/index.js +1 -1
  160. package/dist/{index-DRQMriwT.js → index-B4NxQN5d.js} +8668 -10004
  161. package/dist/index-B4NxQN5d.js.map +1 -0
  162. package/dist/{index-BKK3EWVW.js → index-ZQcmo1D_.js} +2 -2
  163. package/dist/{index-BKK3EWVW.js.map → index-ZQcmo1D_.js.map} +1 -1
  164. package/dist/index.js +1 -1
  165. package/dist/react-18-BczhA0zC.js +41 -0
  166. package/dist/react-18-BczhA0zC.js.map +1 -0
  167. package/dist/{react.esm-BjO203QT.js → react.esm-BDo_tPxu.js} +2 -2
  168. package/dist/{react.esm-BjO203QT.js.map → react.esm-BDo_tPxu.js.map} +1 -1
  169. package/dist/storybook__react.d.js +4252 -4509
  170. package/dist/storybook__react.d.js.map +1 -1
  171. package/package.json +19 -19
  172. package/dist/RteEditor.module-CUi7Vqe8.js +0 -37
  173. package/dist/RteEditor.module-CUi7Vqe8.js.map +0 -1
  174. package/dist/chunk-HERDX7MO-DaYu-eWo.js +0 -11320
  175. package/dist/chunk-HERDX7MO-DaYu-eWo.js.map +0 -1
  176. package/dist/index-DRQMriwT.js.map +0 -1
  177. package/dist/react-18-C6foUf2n.js +0 -42
  178. package/dist/react-18-C6foUf2n.js.map +0 -1
@@ -0,0 +1,4507 @@
1
+ import { _ as $, d as He, a as Ae, b as qe, s as re, l as ke } from "./index-B4NxQN5d.js";
2
+ var st = $({
3
+ "../node_modules/picoquery/lib/string-util.js"(t) {
4
+ Object.defineProperty(t, "__esModule", { value: !0 }), t.encodeString = o;
5
+ var u = Array.from({ length: 256 }, (s, i) => "%" + ((i < 16 ? "0" : "") + i.toString(16)).toUpperCase()), n = new Int8Array([
6
+ 0,
7
+ 0,
8
+ 0,
9
+ 0,
10
+ 0,
11
+ 0,
12
+ 0,
13
+ 0,
14
+ 0,
15
+ 0,
16
+ 0,
17
+ 0,
18
+ 0,
19
+ 0,
20
+ 0,
21
+ 0,
22
+ 0,
23
+ 0,
24
+ 0,
25
+ 0,
26
+ 0,
27
+ 0,
28
+ 0,
29
+ 0,
30
+ 0,
31
+ 0,
32
+ 0,
33
+ 0,
34
+ 0,
35
+ 0,
36
+ 0,
37
+ 0,
38
+ 0,
39
+ 1,
40
+ 0,
41
+ 0,
42
+ 0,
43
+ 0,
44
+ 0,
45
+ 1,
46
+ 1,
47
+ 1,
48
+ 1,
49
+ 0,
50
+ 0,
51
+ 1,
52
+ 1,
53
+ 0,
54
+ 1,
55
+ 1,
56
+ 1,
57
+ 1,
58
+ 1,
59
+ 1,
60
+ 1,
61
+ 1,
62
+ 1,
63
+ 1,
64
+ 0,
65
+ 0,
66
+ 0,
67
+ 0,
68
+ 0,
69
+ 0,
70
+ 0,
71
+ 1,
72
+ 1,
73
+ 1,
74
+ 1,
75
+ 1,
76
+ 1,
77
+ 1,
78
+ 1,
79
+ 1,
80
+ 1,
81
+ 1,
82
+ 1,
83
+ 1,
84
+ 1,
85
+ 1,
86
+ 1,
87
+ 1,
88
+ 1,
89
+ 1,
90
+ 1,
91
+ 1,
92
+ 1,
93
+ 1,
94
+ 1,
95
+ 1,
96
+ 1,
97
+ 0,
98
+ 0,
99
+ 0,
100
+ 0,
101
+ 1,
102
+ 0,
103
+ 1,
104
+ 1,
105
+ 1,
106
+ 1,
107
+ 1,
108
+ 1,
109
+ 1,
110
+ 1,
111
+ 1,
112
+ 1,
113
+ 1,
114
+ 1,
115
+ 1,
116
+ 1,
117
+ 1,
118
+ 1,
119
+ 1,
120
+ 1,
121
+ 1,
122
+ 1,
123
+ 1,
124
+ 1,
125
+ 1,
126
+ 1,
127
+ 1,
128
+ 1,
129
+ 0,
130
+ 0,
131
+ 0,
132
+ 1,
133
+ 0
134
+ ]);
135
+ function o(s) {
136
+ let i = s.length;
137
+ if (i === 0)
138
+ return "";
139
+ let p = "", d = 0, m = 0;
140
+ e: for (; m < i; m++) {
141
+ let f = s.charCodeAt(m);
142
+ for (; f < 128; ) {
143
+ if (n[f] !== 1 && (d < m && (p += s.slice(d, m)), d = m + 1, p += u[f]), ++m === i)
144
+ break e;
145
+ f = s.charCodeAt(m);
146
+ }
147
+ if (d < m && (p += s.slice(d, m)), f < 2048) {
148
+ d = m + 1, p += u[192 | f >> 6] + u[128 | f & 63];
149
+ continue;
150
+ }
151
+ if (f < 55296 || f >= 57344) {
152
+ d = m + 1, p += u[224 | f >> 12] + u[128 | f >> 6 & 63] + u[128 | f & 63];
153
+ continue;
154
+ }
155
+ if (++m, m >= i)
156
+ throw new Error("URI malformed");
157
+ let b = s.charCodeAt(m) & 1023;
158
+ d = m + 1, f = 65536 + ((f & 1023) << 10 | b), p += u[240 | f >> 18] + u[128 | f >> 12 & 63] + u[128 | f >> 6 & 63] + u[128 | f & 63];
159
+ }
160
+ return d === 0 ? s : d < i ? p + s.slice(d) : p;
161
+ }
162
+ }
163
+ }), Ke = $({
164
+ "../node_modules/picoquery/lib/shared.js"(t) {
165
+ Object.defineProperty(t, "__esModule", { value: !0 }), t.defaultOptions = t.defaultShouldSerializeObject = t.defaultValueSerializer = void 0;
166
+ var u = st(), n = (i) => {
167
+ switch (typeof i) {
168
+ case "string":
169
+ return (0, u.encodeString)(i);
170
+ case "bigint":
171
+ case "boolean":
172
+ return "" + i;
173
+ case "number":
174
+ if (Number.isFinite(i))
175
+ return i < 1e21 ? "" + i : (0, u.encodeString)("" + i);
176
+ break;
177
+ }
178
+ return i instanceof Date ? (0, u.encodeString)(i.toISOString()) : "";
179
+ };
180
+ t.defaultValueSerializer = n;
181
+ var o = (i) => i instanceof Date;
182
+ t.defaultShouldSerializeObject = o;
183
+ var s = (i) => i;
184
+ t.defaultOptions = {
185
+ nesting: !0,
186
+ nestingSyntax: "dot",
187
+ arrayRepeat: !1,
188
+ arrayRepeatSyntax: "repeat",
189
+ delimiter: 38,
190
+ valueDeserializer: s,
191
+ valueSerializer: t.defaultValueSerializer,
192
+ keyDeserializer: s,
193
+ shouldSerializeObject: t.defaultShouldSerializeObject
194
+ };
195
+ }
196
+ }), lt = $({
197
+ "../node_modules/picoquery/lib/object-util.js"(t) {
198
+ Object.defineProperty(t, "__esModule", { value: !0 }), t.getDeepObject = s, t.stringifyObject = b;
199
+ var u = Ke(), n = st();
200
+ function o(D) {
201
+ return D === "__proto__" || D === "constructor" || D === "prototype";
202
+ }
203
+ function s(D, v, C, F, w) {
204
+ if (o(v))
205
+ return D;
206
+ let L = D[v];
207
+ return typeof L == "object" && L !== null ? L : !F && (w || typeof C == "number" || typeof C == "string" && C * 0 === 0 && C.indexOf(".") === -1) ? D[v] = [] : D[v] = {};
208
+ }
209
+ var i = 20, p = "[]", d = "[", m = "]", f = ".";
210
+ function b(D, v, C = 0, F, w) {
211
+ let { nestingSyntax: L = u.defaultOptions.nestingSyntax, arrayRepeat: O = u.defaultOptions.arrayRepeat, arrayRepeatSyntax: x = u.defaultOptions.arrayRepeatSyntax, nesting: P = u.defaultOptions.nesting, delimiter: N = u.defaultOptions.delimiter, valueSerializer: Y = u.defaultOptions.valueSerializer, shouldSerializeObject: S = u.defaultOptions.shouldSerializeObject } = v, U = typeof N == "number" ? String.fromCharCode(N) : N, R = w === !0 && O, q = L === "dot" || L === "js" && !w;
212
+ if (C > i)
213
+ return "";
214
+ let _ = "", V = !0, H = !1;
215
+ for (let T in D) {
216
+ let c = D[T];
217
+ if (c === void 0)
218
+ continue;
219
+ let y;
220
+ F ? (y = F, R ? x === "bracket" && (y += p) : q ? (y += f, y += T) : (y += d, y += T, y += m)) : y = T, V || (_ += U), typeof c == "object" && c !== null && !S(c) ? (H = c.pop !== void 0, (P || O && H) && (_ += b(c, v, C + 1, y, H))) : (_ += (0, n.encodeString)(y), _ += "=", _ += Y(c, T)), V && (V = !1);
221
+ }
222
+ return _;
223
+ }
224
+ }
225
+ }), ir = $({
226
+ "../node_modules/picoquery/lib/decode-uri-component.js"(t) {
227
+ Object.defineProperty(t, "__esModule", { value: !0 }), t.decodeURIComponent = s;
228
+ var u = 12, n = 0, o = [
229
+ // The first part of the table maps bytes to character to a transition.
230
+ 0,
231
+ 0,
232
+ 0,
233
+ 0,
234
+ 0,
235
+ 0,
236
+ 0,
237
+ 0,
238
+ 0,
239
+ 0,
240
+ 0,
241
+ 0,
242
+ 0,
243
+ 0,
244
+ 0,
245
+ 0,
246
+ 0,
247
+ 0,
248
+ 0,
249
+ 0,
250
+ 0,
251
+ 0,
252
+ 0,
253
+ 0,
254
+ 0,
255
+ 0,
256
+ 0,
257
+ 0,
258
+ 0,
259
+ 0,
260
+ 0,
261
+ 0,
262
+ 0,
263
+ 0,
264
+ 0,
265
+ 0,
266
+ 0,
267
+ 0,
268
+ 0,
269
+ 0,
270
+ 0,
271
+ 0,
272
+ 0,
273
+ 0,
274
+ 0,
275
+ 0,
276
+ 0,
277
+ 0,
278
+ 0,
279
+ 0,
280
+ 0,
281
+ 0,
282
+ 0,
283
+ 0,
284
+ 0,
285
+ 0,
286
+ 0,
287
+ 0,
288
+ 0,
289
+ 0,
290
+ 0,
291
+ 0,
292
+ 0,
293
+ 0,
294
+ 0,
295
+ 0,
296
+ 0,
297
+ 0,
298
+ 0,
299
+ 0,
300
+ 0,
301
+ 0,
302
+ 0,
303
+ 0,
304
+ 0,
305
+ 0,
306
+ 0,
307
+ 0,
308
+ 0,
309
+ 0,
310
+ 0,
311
+ 0,
312
+ 0,
313
+ 0,
314
+ 0,
315
+ 0,
316
+ 0,
317
+ 0,
318
+ 0,
319
+ 0,
320
+ 0,
321
+ 0,
322
+ 0,
323
+ 0,
324
+ 0,
325
+ 0,
326
+ 0,
327
+ 0,
328
+ 0,
329
+ 0,
330
+ 0,
331
+ 0,
332
+ 0,
333
+ 0,
334
+ 0,
335
+ 0,
336
+ 0,
337
+ 0,
338
+ 0,
339
+ 0,
340
+ 0,
341
+ 0,
342
+ 0,
343
+ 0,
344
+ 0,
345
+ 0,
346
+ 0,
347
+ 0,
348
+ 0,
349
+ 0,
350
+ 0,
351
+ 0,
352
+ 0,
353
+ 0,
354
+ 0,
355
+ 0,
356
+ 0,
357
+ 0,
358
+ 1,
359
+ 1,
360
+ 1,
361
+ 1,
362
+ 1,
363
+ 1,
364
+ 1,
365
+ 1,
366
+ 1,
367
+ 1,
368
+ 1,
369
+ 1,
370
+ 1,
371
+ 1,
372
+ 1,
373
+ 1,
374
+ 2,
375
+ 2,
376
+ 2,
377
+ 2,
378
+ 2,
379
+ 2,
380
+ 2,
381
+ 2,
382
+ 2,
383
+ 2,
384
+ 2,
385
+ 2,
386
+ 2,
387
+ 2,
388
+ 2,
389
+ 2,
390
+ 3,
391
+ 3,
392
+ 3,
393
+ 3,
394
+ 3,
395
+ 3,
396
+ 3,
397
+ 3,
398
+ 3,
399
+ 3,
400
+ 3,
401
+ 3,
402
+ 3,
403
+ 3,
404
+ 3,
405
+ 3,
406
+ 3,
407
+ 3,
408
+ 3,
409
+ 3,
410
+ 3,
411
+ 3,
412
+ 3,
413
+ 3,
414
+ 3,
415
+ 3,
416
+ 3,
417
+ 3,
418
+ 3,
419
+ 3,
420
+ 3,
421
+ 3,
422
+ 4,
423
+ 4,
424
+ 5,
425
+ 5,
426
+ 5,
427
+ 5,
428
+ 5,
429
+ 5,
430
+ 5,
431
+ 5,
432
+ 5,
433
+ 5,
434
+ 5,
435
+ 5,
436
+ 5,
437
+ 5,
438
+ 5,
439
+ 5,
440
+ 5,
441
+ 5,
442
+ 5,
443
+ 5,
444
+ 5,
445
+ 5,
446
+ 5,
447
+ 5,
448
+ 5,
449
+ 5,
450
+ 5,
451
+ 5,
452
+ 5,
453
+ 5,
454
+ 6,
455
+ 7,
456
+ 7,
457
+ 7,
458
+ 7,
459
+ 7,
460
+ 7,
461
+ 7,
462
+ 7,
463
+ 7,
464
+ 7,
465
+ 7,
466
+ 7,
467
+ 8,
468
+ 7,
469
+ 7,
470
+ 10,
471
+ 9,
472
+ 9,
473
+ 9,
474
+ 11,
475
+ 4,
476
+ 4,
477
+ 4,
478
+ 4,
479
+ 4,
480
+ 4,
481
+ 4,
482
+ 4,
483
+ 4,
484
+ 4,
485
+ 4,
486
+ // The second part of the table maps a state to a new state when adding a
487
+ // transition.
488
+ 0,
489
+ 0,
490
+ 0,
491
+ 0,
492
+ 0,
493
+ 0,
494
+ 0,
495
+ 0,
496
+ 0,
497
+ 0,
498
+ 0,
499
+ 0,
500
+ 12,
501
+ 0,
502
+ 0,
503
+ 0,
504
+ 0,
505
+ 24,
506
+ 36,
507
+ 48,
508
+ 60,
509
+ 72,
510
+ 84,
511
+ 96,
512
+ 0,
513
+ 12,
514
+ 12,
515
+ 12,
516
+ 0,
517
+ 0,
518
+ 0,
519
+ 0,
520
+ 0,
521
+ 0,
522
+ 0,
523
+ 0,
524
+ 0,
525
+ 0,
526
+ 0,
527
+ 24,
528
+ 0,
529
+ 0,
530
+ 0,
531
+ 0,
532
+ 0,
533
+ 0,
534
+ 0,
535
+ 0,
536
+ 0,
537
+ 24,
538
+ 24,
539
+ 24,
540
+ 0,
541
+ 0,
542
+ 0,
543
+ 0,
544
+ 0,
545
+ 0,
546
+ 0,
547
+ 0,
548
+ 0,
549
+ 24,
550
+ 24,
551
+ 0,
552
+ 0,
553
+ 0,
554
+ 0,
555
+ 0,
556
+ 0,
557
+ 0,
558
+ 0,
559
+ 0,
560
+ 0,
561
+ 48,
562
+ 48,
563
+ 48,
564
+ 0,
565
+ 0,
566
+ 0,
567
+ 0,
568
+ 0,
569
+ 0,
570
+ 0,
571
+ 0,
572
+ 0,
573
+ 0,
574
+ 48,
575
+ 48,
576
+ 0,
577
+ 0,
578
+ 0,
579
+ 0,
580
+ 0,
581
+ 0,
582
+ 0,
583
+ 0,
584
+ 0,
585
+ 48,
586
+ 0,
587
+ 0,
588
+ 0,
589
+ 0,
590
+ 0,
591
+ 0,
592
+ 0,
593
+ 0,
594
+ 0,
595
+ 0,
596
+ // The third part maps the current transition to a mask that needs to apply
597
+ // to the byte.
598
+ 127,
599
+ 63,
600
+ 63,
601
+ 63,
602
+ 0,
603
+ 31,
604
+ 15,
605
+ 15,
606
+ 15,
607
+ 7,
608
+ 7,
609
+ 7
610
+ ];
611
+ function s(d) {
612
+ let m = d.indexOf("%");
613
+ if (m === -1)
614
+ return d;
615
+ let f = d.length, b = "", D = 0, v = 0, C = m, F = u;
616
+ for (; m > -1 && m < f; ) {
617
+ let w = p(d[m + 1], 4), L = p(d[m + 2], 0), O = w | L, x = o[O];
618
+ if (F = o[256 + F + x], v = v << 6 | O & o[364 + x], F === u)
619
+ b += d.slice(D, C), b += v <= 65535 ? String.fromCharCode(v) : String.fromCharCode(55232 + (v >> 10), 56320 + (v & 1023)), v = 0, D = m + 3, m = C = d.indexOf("%", D);
620
+ else {
621
+ if (F === n)
622
+ return null;
623
+ if (m += 3, m < f && d.charCodeAt(m) === 37)
624
+ continue;
625
+ return null;
626
+ }
627
+ }
628
+ return b + d.slice(D);
629
+ }
630
+ var i = {
631
+ 0: 0,
632
+ 1: 1,
633
+ 2: 2,
634
+ 3: 3,
635
+ 4: 4,
636
+ 5: 5,
637
+ 6: 6,
638
+ 7: 7,
639
+ 8: 8,
640
+ 9: 9,
641
+ a: 10,
642
+ A: 10,
643
+ b: 11,
644
+ B: 11,
645
+ c: 12,
646
+ C: 12,
647
+ d: 13,
648
+ D: 13,
649
+ e: 14,
650
+ E: 14,
651
+ f: 15,
652
+ F: 15
653
+ };
654
+ function p(d, m) {
655
+ let f = i[d];
656
+ return f === void 0 ? 255 : f << m;
657
+ }
658
+ }
659
+ }), sr = $({
660
+ "../node_modules/picoquery/lib/parse.js"(t) {
661
+ Object.defineProperty(t, "__esModule", { value: !0 }), t.numberValueDeserializer = t.numberKeyDeserializer = void 0, t.parse = f;
662
+ var u = lt(), n = Ke(), o = ir(), s = (b) => {
663
+ let D = Number(b);
664
+ return Number.isNaN(D) ? b : D;
665
+ };
666
+ t.numberKeyDeserializer = s;
667
+ var i = (b) => {
668
+ let D = Number(b);
669
+ return Number.isNaN(D) ? b : D;
670
+ };
671
+ t.numberValueDeserializer = i;
672
+ var p = /\+/g, d = function() {
673
+ };
674
+ d.prototype = /* @__PURE__ */ Object.create(null);
675
+ function m(b, D, v, C, F) {
676
+ let w = b.substring(D, v);
677
+ return C && (w = w.replace(p, " ")), F && (w = (0, o.decodeURIComponent)(w) || w), w;
678
+ }
679
+ function f(b, D) {
680
+ let { valueDeserializer: v = n.defaultOptions.valueDeserializer, keyDeserializer: C = n.defaultOptions.keyDeserializer, arrayRepeatSyntax: F = n.defaultOptions.arrayRepeatSyntax, nesting: w = n.defaultOptions.nesting, arrayRepeat: L = n.defaultOptions.arrayRepeat, nestingSyntax: O = n.defaultOptions.nestingSyntax, delimiter: x = n.defaultOptions.delimiter } = D ?? {}, P = typeof x == "string" ? x.charCodeAt(0) : x, N = O === "js", Y = new d();
681
+ if (typeof b != "string")
682
+ return Y;
683
+ let S = b.length, U = "", R = -1, q = -1, _ = -1, V = Y, H, T = "", c = "", y = !1, h = !1, A = !1, J = !1, k = !1, X = !1, I = 0, G = -1, ie = -1, Te = -1;
684
+ for (let z = 0; z < S + 1; z++) {
685
+ if (I = z !== S ? b.charCodeAt(z) : P, I === P) {
686
+ if (X = q > R, X || (q = z), _ !== q - 1 && (c = m(b, _ + 1, G > -1 ? G : q, A, y), T = C(c), H !== void 0 && (V = (0, u.getDeepObject)(V, H, T, N && k, void 0))), X || T !== "") {
687
+ X && (U = b.slice(q + 1, z), J && (U = U.replace(p, " ")), h && (U = (0, o.decodeURIComponent)(U) || U));
688
+ let te = v(U, T);
689
+ if (L) {
690
+ let ue = V[T];
691
+ ue === void 0 ? G > -1 ? V[T] = [te] : V[T] = te : ue.pop ? ue.push(te) : V[T] = [ue, te];
692
+ } else
693
+ V[T] = te;
694
+ }
695
+ U = "", R = z, q = z, y = !1, h = !1, A = !1, J = !1, k = !1, G = -1, _ = z, V = Y, H = void 0, T = "";
696
+ } else I === 93 ? (L && F === "bracket" && Te === 91 && (G = ie), w && (O === "index" || N) && q <= R && (_ !== ie && (c = m(b, _ + 1, z, A, y), T = C(c), H !== void 0 && (V = (0, u.getDeepObject)(V, H, T, void 0, void 0)), H = T, A = !1, y = !1), _ = z, k = !1)) : I === 46 ? w && (O === "dot" || N) && q <= R && (_ !== ie && (c = m(b, _ + 1, z, A, y), T = C(c), H !== void 0 && (V = (0, u.getDeepObject)(V, H, T, N)), H = T, A = !1, y = !1), k = !0, _ = z) : I === 91 ? w && (O === "index" || N) && q <= R && (_ !== ie && (c = m(b, _ + 1, z, A, y), T = C(c), N && H !== void 0 && (V = (0, u.getDeepObject)(V, H, T, N)), H = T, A = !1, y = !1, k = !1), _ = z) : I === 61 ? q <= R ? q = z : h = !0 : I === 43 ? q > R ? J = !0 : A = !0 : I === 37 && (q > R ? h = !0 : y = !0);
697
+ ie = z, Te = I;
698
+ }
699
+ return Y;
700
+ }
701
+ }
702
+ }), lr = $({
703
+ "../node_modules/picoquery/lib/stringify.js"(t) {
704
+ Object.defineProperty(t, "__esModule", { value: !0 }), t.stringify = n;
705
+ var u = lt();
706
+ function n(o, s) {
707
+ if (o === null || typeof o != "object")
708
+ return "";
709
+ let i = s ?? {};
710
+ return (0, u.stringifyObject)(o, i);
711
+ }
712
+ }
713
+ }), Ge = $({
714
+ "../node_modules/picoquery/lib/main.js"(t) {
715
+ var u = t && t.__createBinding || (Object.create ? (function(i, p, d, m) {
716
+ m === void 0 && (m = d);
717
+ var f = Object.getOwnPropertyDescriptor(p, d);
718
+ (!f || ("get" in f ? !p.__esModule : f.writable || f.configurable)) && (f = { enumerable: !0, get: function() {
719
+ return p[d];
720
+ } }), Object.defineProperty(i, m, f);
721
+ }) : (function(i, p, d, m) {
722
+ m === void 0 && (m = d), i[m] = p[d];
723
+ })), n = t && t.__exportStar || function(i, p) {
724
+ for (var d in i) d !== "default" && !Object.prototype.hasOwnProperty.call(p, d) && u(p, i, d);
725
+ };
726
+ Object.defineProperty(t, "__esModule", { value: !0 }), t.stringify = t.parse = void 0;
727
+ var o = sr();
728
+ Object.defineProperty(t, "parse", { enumerable: !0, get: function() {
729
+ return o.parse;
730
+ } });
731
+ var s = lr();
732
+ Object.defineProperty(t, "stringify", { enumerable: !0, get: function() {
733
+ return s.stringify;
734
+ } }), n(Ke(), t);
735
+ }
736
+ });
737
+ function Me(t) {
738
+ if (!t || typeof t != "object")
739
+ return !1;
740
+ let u = Object.getPrototypeOf(t);
741
+ return u === null || u === Object.prototype || Object.getPrototypeOf(u) === null ? Object.prototype.toString.call(t) === "[object Object]" : !1;
742
+ }
743
+ function cr(t, u) {
744
+ let n = {}, o = Object.keys(t);
745
+ for (let s = 0; s < o.length; s++) {
746
+ let i = o[s], p = t[i];
747
+ n[i] = u(p, i, t);
748
+ }
749
+ return n;
750
+ }
751
+ function nt({
752
+ code: t,
753
+ category: u
754
+ }) {
755
+ let n = String(t).padStart(4, "0");
756
+ return `SB_${u}_${n}`;
757
+ }
758
+ function at(t) {
759
+ if (/^(?!.*storybook\.js\.org)|[?&]ref=error\b/.test(t))
760
+ return t;
761
+ try {
762
+ let u = new URL(t);
763
+ return u.searchParams.set("ref", "error"), u.toString();
764
+ } catch {
765
+ return t;
766
+ }
767
+ }
768
+ var ct = class pt extends Error {
769
+ constructor(u) {
770
+ super(pt.getFullMessage(u)), this.data = {}, this.fromStorybook = !0, this.isHandledError = !1, this.category = u.category, this.documentation = u.documentation ?? !1, this.code = u.code, this.isHandledError = u.isHandledError ?? !1, this.name = u.name;
771
+ }
772
+ get fullErrorCode() {
773
+ return nt({ code: this.code, category: this.category });
774
+ }
775
+ /** Overrides the default `Error.name` property in the format: SB_<CATEGORY>_<CODE>. */
776
+ get name() {
777
+ let u = this._name || this.constructor.name;
778
+ return `${this.fullErrorCode} (${u})`;
779
+ }
780
+ set name(u) {
781
+ this._name = u;
782
+ }
783
+ /** Generates the error message along with additional documentation link (if applicable). */
784
+ static getFullMessage({
785
+ documentation: u,
786
+ code: n,
787
+ category: o,
788
+ message: s
789
+ }) {
790
+ let i;
791
+ return u === !0 ? i = `https://storybook.js.org/error/${nt({ code: n, category: o })}?ref=error` : typeof u == "string" ? i = at(u) : Array.isArray(u) && (i = `
792
+ ${u.map((p) => ` - ${at(p)}`).join(`
793
+ `)}`), `${s}${i != null ? `
794
+
795
+ More info: ${i}
796
+ ` : ""}`;
797
+ }
798
+ }, Zu = class extends ct {
799
+ constructor(t) {
800
+ super({
801
+ name: "ImplicitActionsDuringRendering",
802
+ category: "PREVIEW_API",
803
+ code: 2,
804
+ documentation: "https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#using-implicit-actions-during-rendering-is-deprecated-for-example-in-the-play-function",
805
+ message: He`
806
+ We detected that you use an implicit action arg while ${t.phase} of your story.
807
+ ${t.deprecated ? `
808
+ This is deprecated and won't work in Storybook 8 anymore.
809
+ ` : ""}
810
+ Please provide an explicit spy to your args like this:
811
+ import { fn } from 'storybook/test';
812
+ ...
813
+ args: {
814
+ ${t.name}: fn()
815
+ }`
816
+ }), this.data = t;
817
+ }
818
+ }, dt = class extends ct {
819
+ constructor(t) {
820
+ super({
821
+ name: "UnknownArgTypesError",
822
+ category: "DOCS-TOOLS",
823
+ code: 1,
824
+ documentation: "https://github.com/storybookjs/storybook/issues/26606",
825
+ message: He`
826
+ There was a failure when generating detailed ArgTypes in ${t.language} for:
827
+ ${JSON.stringify(t.type, null, 2)}
828
+
829
+ Storybook will fall back to use a generic type description instead.
830
+
831
+ This type is either not supported or it is a bug in the docgen generation in Storybook.
832
+ If you think this is a bug, please detail it as much as possible in the Github issue.
833
+ `
834
+ }), this.data = t;
835
+ }
836
+ }, pr = $({
837
+ "../node_modules/jsdoc-type-pratt-parser/dist/index.js"(t, u) {
838
+ (function(n, o) {
839
+ typeof t == "object" && typeof u < "u" ? o(t) : typeof define == "function" && define.amd ? define(["exports"], o) : (n = typeof globalThis < "u" ? globalThis : n || self, o(n.jtpp = {}));
840
+ })(t, (function(n) {
841
+ function o(e) {
842
+ return e.text !== void 0 && e.text !== "" ? `'${e.type}' with value '${e.text}'` : `'${e.type}'`;
843
+ }
844
+ class s extends Error {
845
+ constructor(r) {
846
+ super(`No parslet found for token: ${o(r)}`), this.token = r, Object.setPrototypeOf(this, s.prototype);
847
+ }
848
+ getToken() {
849
+ return this.token;
850
+ }
851
+ }
852
+ class i extends Error {
853
+ constructor(r) {
854
+ super(`The parsing ended early. The next token was: ${o(r)}`), this.token = r, Object.setPrototypeOf(this, i.prototype);
855
+ }
856
+ getToken() {
857
+ return this.token;
858
+ }
859
+ }
860
+ class p extends Error {
861
+ constructor(r, a) {
862
+ let l = `Unexpected type: '${r.type}'.`;
863
+ a !== void 0 && (l += ` Message: ${a}`), super(l), Object.setPrototypeOf(this, p.prototype);
864
+ }
865
+ }
866
+ function d(e) {
867
+ return (r) => r.startsWith(e) ? { type: e, text: e } : null;
868
+ }
869
+ function m(e) {
870
+ let r = 0, a, l = e[0], g = !1;
871
+ if (l !== "'" && l !== '"')
872
+ return null;
873
+ for (; r < e.length; ) {
874
+ if (r++, a = e[r], !g && a === l) {
875
+ r++;
876
+ break;
877
+ }
878
+ g = !g && a === "\\";
879
+ }
880
+ if (a !== l)
881
+ throw new Error("Unterminated String");
882
+ return e.slice(0, r);
883
+ }
884
+ let f = new RegExp("[$_\\p{ID_Start}]|\\\\u\\p{Hex_Digit}{4}|\\\\u\\{0*(?:\\p{Hex_Digit}{1,5}|10\\p{Hex_Digit}{4})\\}", "u"), b = new RegExp("[$\\-\\p{ID_Continue}\\u200C\\u200D]|\\\\u\\p{Hex_Digit}{4}|\\\\u\\{0*(?:\\p{Hex_Digit}{1,5}|10\\p{Hex_Digit}{4})\\}", "u");
885
+ function D(e) {
886
+ let r = e[0];
887
+ if (!f.test(r))
888
+ return null;
889
+ let a = 1;
890
+ do {
891
+ if (r = e[a], !b.test(r))
892
+ break;
893
+ a++;
894
+ } while (a < e.length);
895
+ return e.slice(0, a);
896
+ }
897
+ let v = /^(NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity))/;
898
+ function C(e) {
899
+ var r, a;
900
+ return (a = (r = v.exec(e)) === null || r === void 0 ? void 0 : r[0]) !== null && a !== void 0 ? a : null;
901
+ }
902
+ let F = (e) => {
903
+ let r = D(e);
904
+ return r == null ? null : {
905
+ type: "Identifier",
906
+ text: r
907
+ };
908
+ };
909
+ function w(e) {
910
+ return (r) => {
911
+ if (!r.startsWith(e))
912
+ return null;
913
+ let a = r[e.length];
914
+ return a !== void 0 && b.test(a) ? null : {
915
+ type: e,
916
+ text: e
917
+ };
918
+ };
919
+ }
920
+ let L = (e) => {
921
+ let r = m(e);
922
+ return r == null ? null : {
923
+ type: "StringValue",
924
+ text: r
925
+ };
926
+ }, O = (e) => e.length > 0 ? null : {
927
+ type: "EOF",
928
+ text: ""
929
+ }, x = (e) => {
930
+ let r = C(e);
931
+ return r === null ? null : {
932
+ type: "Number",
933
+ text: r
934
+ };
935
+ }, P = [
936
+ O,
937
+ d("=>"),
938
+ d("("),
939
+ d(")"),
940
+ d("{"),
941
+ d("}"),
942
+ d("["),
943
+ d("]"),
944
+ d("|"),
945
+ d("&"),
946
+ d("<"),
947
+ d(">"),
948
+ d(","),
949
+ d(";"),
950
+ d("*"),
951
+ d("?"),
952
+ d("!"),
953
+ d("="),
954
+ d(":"),
955
+ d("..."),
956
+ d("."),
957
+ d("#"),
958
+ d("~"),
959
+ d("/"),
960
+ d("@"),
961
+ w("undefined"),
962
+ w("null"),
963
+ w("function"),
964
+ w("this"),
965
+ w("new"),
966
+ w("module"),
967
+ w("event"),
968
+ w("extends"),
969
+ w("external"),
970
+ w("infer"),
971
+ w("typeof"),
972
+ w("keyof"),
973
+ w("readonly"),
974
+ w("import"),
975
+ w("is"),
976
+ w("in"),
977
+ w("asserts"),
978
+ x,
979
+ F,
980
+ L
981
+ ], N = /^\s*\n\s*/;
982
+ class Y {
983
+ static create(r) {
984
+ let a = this.read(r);
985
+ r = a.text;
986
+ let l = this.read(r);
987
+ return r = l.text, new Y(r, void 0, a.token, l.token);
988
+ }
989
+ constructor(r, a, l, g) {
990
+ this.text = "", this.text = r, this.previous = a, this.current = l, this.next = g;
991
+ }
992
+ static read(r, a = !1) {
993
+ a = a || N.test(r), r = r.trim();
994
+ for (let l of P) {
995
+ let g = l(r);
996
+ if (g !== null) {
997
+ let E = Object.assign(Object.assign({}, g), { startOfLine: a });
998
+ return r = r.slice(E.text.length), { text: r, token: E };
999
+ }
1000
+ }
1001
+ throw new Error("Unexpected Token " + r);
1002
+ }
1003
+ advance() {
1004
+ let r = Y.read(this.text);
1005
+ return new Y(r.text, this.current, this.next, r.token);
1006
+ }
1007
+ }
1008
+ function S(e) {
1009
+ if (e === void 0)
1010
+ throw new Error("Unexpected undefined");
1011
+ if (e.type === "JsdocTypeKeyValue" || e.type === "JsdocTypeParameterList" || e.type === "JsdocTypeProperty" || e.type === "JsdocTypeReadonlyProperty" || e.type === "JsdocTypeObjectField" || e.type === "JsdocTypeJsdocObjectField" || e.type === "JsdocTypeIndexSignature" || e.type === "JsdocTypeMappedType" || e.type === "JsdocTypeTypeParameter")
1012
+ throw new p(e);
1013
+ return e;
1014
+ }
1015
+ function U(e) {
1016
+ return e.type === "JsdocTypeKeyValue" ? q(e) : S(e);
1017
+ }
1018
+ function R(e) {
1019
+ return e.type === "JsdocTypeName" ? e : q(e);
1020
+ }
1021
+ function q(e) {
1022
+ if (e.type !== "JsdocTypeKeyValue")
1023
+ throw new p(e);
1024
+ return e;
1025
+ }
1026
+ function _(e) {
1027
+ var r;
1028
+ if (e.type === "JsdocTypeVariadic") {
1029
+ if (((r = e.element) === null || r === void 0 ? void 0 : r.type) === "JsdocTypeName")
1030
+ return e;
1031
+ throw new p(e);
1032
+ }
1033
+ if (e.type !== "JsdocTypeNumber" && e.type !== "JsdocTypeName")
1034
+ throw new p(e);
1035
+ return e;
1036
+ }
1037
+ function V(e) {
1038
+ if (e.type === "JsdocTypeTuple" || e.type === "JsdocTypeGeneric" && e.meta.brackets === "square")
1039
+ return e;
1040
+ throw new p(e);
1041
+ }
1042
+ function H(e) {
1043
+ return e.type === "JsdocTypeIndexSignature" || e.type === "JsdocTypeMappedType";
1044
+ }
1045
+ var T;
1046
+ (function(e) {
1047
+ 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.INDEX_BRACKETS = 4] = "INDEX_BRACKETS", e[e.UNION = 5] = "UNION", e[e.INTERSECTION = 6] = "INTERSECTION", e[e.PREFIX = 7] = "PREFIX", e[e.INFIX = 8] = "INFIX", e[e.TUPLE = 9] = "TUPLE", e[e.SYMBOL = 10] = "SYMBOL", e[e.OPTIONAL = 11] = "OPTIONAL", e[e.NULLABLE = 12] = "NULLABLE", e[e.KEY_OF_TYPE_OF = 13] = "KEY_OF_TYPE_OF", e[e.FUNCTION = 14] = "FUNCTION", e[e.ARROW = 15] = "ARROW", e[e.ARRAY_BRACKETS = 16] = "ARRAY_BRACKETS", e[e.GENERIC = 17] = "GENERIC", e[e.NAME_PATH = 18] = "NAME_PATH", e[e.PARENTHESIS = 19] = "PARENTHESIS", e[e.SPECIAL_TYPES = 20] = "SPECIAL_TYPES";
1048
+ })(T || (T = {}));
1049
+ class c {
1050
+ constructor(r, a, l) {
1051
+ this.grammar = r, typeof a == "string" ? this._lexer = Y.create(a) : this._lexer = a, this.baseParser = l;
1052
+ }
1053
+ get lexer() {
1054
+ return this._lexer;
1055
+ }
1056
+ /**
1057
+ * Parses a given string and throws an error if the parse ended before the end of the string.
1058
+ */
1059
+ parse() {
1060
+ let r = this.parseType(T.ALL);
1061
+ if (this.lexer.current.type !== "EOF")
1062
+ throw new i(this.lexer.current);
1063
+ return r;
1064
+ }
1065
+ /**
1066
+ * Parses with the current lexer and asserts that the result is a {@link RootResult}.
1067
+ */
1068
+ parseType(r) {
1069
+ return S(this.parseIntermediateType(r));
1070
+ }
1071
+ /**
1072
+ * The main parsing function. First it tries to parse the current state in the prefix step, and then it continues
1073
+ * to parse the state in the infix step.
1074
+ */
1075
+ parseIntermediateType(r) {
1076
+ let a = this.tryParslets(null, r);
1077
+ if (a === null)
1078
+ throw new s(this.lexer.current);
1079
+ return this.parseInfixIntermediateType(a, r);
1080
+ }
1081
+ /**
1082
+ * In the infix parsing step the parser continues to parse the current state with all parslets until none returns
1083
+ * a result.
1084
+ */
1085
+ parseInfixIntermediateType(r, a) {
1086
+ let l = this.tryParslets(r, a);
1087
+ for (; l !== null; )
1088
+ r = l, l = this.tryParslets(r, a);
1089
+ return r;
1090
+ }
1091
+ /**
1092
+ * Tries to parse the current state with all parslets in the grammar and returns the first non null result.
1093
+ */
1094
+ tryParslets(r, a) {
1095
+ for (let l of this.grammar) {
1096
+ let g = l(this, a, r);
1097
+ if (g !== null)
1098
+ return g;
1099
+ }
1100
+ return null;
1101
+ }
1102
+ /**
1103
+ * If the given type equals the current type of the {@link Lexer} advance the lexer. Return true if the lexer was
1104
+ * advanced.
1105
+ */
1106
+ consume(r) {
1107
+ return Array.isArray(r) || (r = [r]), r.includes(this.lexer.current.type) ? (this._lexer = this.lexer.advance(), !0) : !1;
1108
+ }
1109
+ acceptLexerState(r) {
1110
+ this._lexer = r.lexer;
1111
+ }
1112
+ }
1113
+ function y(e) {
1114
+ return e === "}" || e === "EOF" || e === "|" || e === "," || e === ")" || e === ">";
1115
+ }
1116
+ let h = (e, r, a) => {
1117
+ let l = e.lexer.current.type, g = e.lexer.next.type;
1118
+ return a == null && l === "?" && !y(g) || a != null && l === "?" ? (e.consume("?"), a == null ? {
1119
+ type: "JsdocTypeNullable",
1120
+ element: e.parseType(T.NULLABLE),
1121
+ meta: {
1122
+ position: "prefix"
1123
+ }
1124
+ } : {
1125
+ type: "JsdocTypeNullable",
1126
+ element: S(a),
1127
+ meta: {
1128
+ position: "suffix"
1129
+ }
1130
+ }) : null;
1131
+ };
1132
+ function A(e) {
1133
+ let r = (a, l, g) => {
1134
+ let E = a.lexer.current.type, B = a.lexer.next.type;
1135
+ if (g === null) {
1136
+ if ("parsePrefix" in e && e.accept(E, B))
1137
+ return e.parsePrefix(a);
1138
+ } else if ("parseInfix" in e && e.precedence > l && e.accept(E, B))
1139
+ return e.parseInfix(a, g);
1140
+ return null;
1141
+ };
1142
+ return Object.defineProperty(r, "name", {
1143
+ value: e.name
1144
+ }), r;
1145
+ }
1146
+ let J = A({
1147
+ name: "optionalParslet",
1148
+ accept: (e) => e === "=",
1149
+ precedence: T.OPTIONAL,
1150
+ parsePrefix: (e) => (e.consume("="), {
1151
+ type: "JsdocTypeOptional",
1152
+ element: e.parseType(T.OPTIONAL),
1153
+ meta: {
1154
+ position: "prefix"
1155
+ }
1156
+ }),
1157
+ parseInfix: (e, r) => (e.consume("="), {
1158
+ type: "JsdocTypeOptional",
1159
+ element: S(r),
1160
+ meta: {
1161
+ position: "suffix"
1162
+ }
1163
+ })
1164
+ }), k = A({
1165
+ name: "numberParslet",
1166
+ accept: (e) => e === "Number",
1167
+ parsePrefix: (e) => {
1168
+ let r = parseFloat(e.lexer.current.text);
1169
+ return e.consume("Number"), {
1170
+ type: "JsdocTypeNumber",
1171
+ value: r
1172
+ };
1173
+ }
1174
+ }), X = A({
1175
+ name: "parenthesisParslet",
1176
+ accept: (e) => e === "(",
1177
+ parsePrefix: (e) => {
1178
+ if (e.consume("("), e.consume(")"))
1179
+ return {
1180
+ type: "JsdocTypeParameterList",
1181
+ elements: []
1182
+ };
1183
+ let r = e.parseIntermediateType(T.ALL);
1184
+ if (!e.consume(")"))
1185
+ throw new Error("Unterminated parenthesis");
1186
+ return r.type === "JsdocTypeParameterList" ? r : r.type === "JsdocTypeKeyValue" ? {
1187
+ type: "JsdocTypeParameterList",
1188
+ elements: [r]
1189
+ } : {
1190
+ type: "JsdocTypeParenthesis",
1191
+ element: S(r)
1192
+ };
1193
+ }
1194
+ }), I = A({
1195
+ name: "specialTypesParslet",
1196
+ accept: (e, r) => e === "?" && y(r) || e === "null" || e === "undefined" || e === "*",
1197
+ parsePrefix: (e) => {
1198
+ if (e.consume("null"))
1199
+ return {
1200
+ type: "JsdocTypeNull"
1201
+ };
1202
+ if (e.consume("undefined"))
1203
+ return {
1204
+ type: "JsdocTypeUndefined"
1205
+ };
1206
+ if (e.consume("*"))
1207
+ return {
1208
+ type: "JsdocTypeAny"
1209
+ };
1210
+ if (e.consume("?"))
1211
+ return {
1212
+ type: "JsdocTypeUnknown"
1213
+ };
1214
+ throw new Error("Unacceptable token: " + e.lexer.current.text);
1215
+ }
1216
+ }), G = A({
1217
+ name: "notNullableParslet",
1218
+ accept: (e) => e === "!",
1219
+ precedence: T.NULLABLE,
1220
+ parsePrefix: (e) => (e.consume("!"), {
1221
+ type: "JsdocTypeNotNullable",
1222
+ element: e.parseType(T.NULLABLE),
1223
+ meta: {
1224
+ position: "prefix"
1225
+ }
1226
+ }),
1227
+ parseInfix: (e, r) => (e.consume("!"), {
1228
+ type: "JsdocTypeNotNullable",
1229
+ element: S(r),
1230
+ meta: {
1231
+ position: "suffix"
1232
+ }
1233
+ })
1234
+ });
1235
+ function ie({ allowTrailingComma: e }) {
1236
+ return A({
1237
+ name: "parameterListParslet",
1238
+ accept: (r) => r === ",",
1239
+ precedence: T.PARAMETER_LIST,
1240
+ parseInfix: (r, a) => {
1241
+ let l = [
1242
+ U(a)
1243
+ ];
1244
+ r.consume(",");
1245
+ do
1246
+ try {
1247
+ let g = r.parseIntermediateType(T.PARAMETER_LIST);
1248
+ l.push(U(g));
1249
+ } catch (g) {
1250
+ if (g instanceof s)
1251
+ break;
1252
+ throw g;
1253
+ }
1254
+ while (r.consume(","));
1255
+ if (l.length > 0 && l.slice(0, -1).some((g) => g.type === "JsdocTypeVariadic"))
1256
+ throw new Error("Only the last parameter may be a rest parameter");
1257
+ return {
1258
+ type: "JsdocTypeParameterList",
1259
+ elements: l
1260
+ };
1261
+ }
1262
+ });
1263
+ }
1264
+ let Te = A({
1265
+ name: "genericParslet",
1266
+ accept: (e, r) => e === "<" || e === "." && r === "<",
1267
+ precedence: T.GENERIC,
1268
+ parseInfix: (e, r) => {
1269
+ let a = e.consume(".");
1270
+ e.consume("<");
1271
+ let l = [], g = !1;
1272
+ if (e.consume("infer")) {
1273
+ g = !0;
1274
+ let E = e.parseIntermediateType(T.SYMBOL);
1275
+ if (E.type !== "JsdocTypeName")
1276
+ throw new p(E, "A typescript asserts always has to have a name on the left side.");
1277
+ l.push(E);
1278
+ } else
1279
+ do
1280
+ l.push(e.parseType(T.PARAMETER_LIST));
1281
+ while (e.consume(","));
1282
+ if (!e.consume(">"))
1283
+ throw new Error("Unterminated generic parameter list");
1284
+ return Object.assign(Object.assign({ type: "JsdocTypeGeneric", left: S(r), elements: l }, g ? { infer: !0 } : {}), { meta: {
1285
+ brackets: "angle",
1286
+ dot: a
1287
+ } });
1288
+ }
1289
+ }), z = A({
1290
+ name: "unionParslet",
1291
+ accept: (e) => e === "|",
1292
+ precedence: T.UNION,
1293
+ parseInfix: (e, r) => {
1294
+ e.consume("|");
1295
+ let a = [];
1296
+ do
1297
+ a.push(e.parseType(T.UNION));
1298
+ while (e.consume("|"));
1299
+ return {
1300
+ type: "JsdocTypeUnion",
1301
+ elements: [S(r), ...a]
1302
+ };
1303
+ }
1304
+ }), te = [
1305
+ h,
1306
+ J,
1307
+ k,
1308
+ X,
1309
+ I,
1310
+ G,
1311
+ ie({
1312
+ allowTrailingComma: !0
1313
+ }),
1314
+ Te,
1315
+ z,
1316
+ J
1317
+ ];
1318
+ function ue({ allowSquareBracketsOnAnyType: e, allowJsdocNamePaths: r, pathGrammar: a }) {
1319
+ return function(l, g, E) {
1320
+ if (E == null || g >= T.NAME_PATH)
1321
+ return null;
1322
+ let B = l.lexer.current.type, M = l.lexer.next.type;
1323
+ if (!(B === "." && M !== "<" || B === "[" && (e || E.type === "JsdocTypeName") || r && (B === "~" || B === "#")))
1324
+ return null;
1325
+ let K, Q = !1;
1326
+ l.consume(".") ? K = "property" : l.consume("[") ? (K = "property-brackets", Q = !0) : l.consume("~") ? K = "inner" : (l.consume("#"), K = "instance");
1327
+ let le = a !== null ? new c(a, l.lexer, l) : l, ae = le.parseIntermediateType(T.NAME_PATH);
1328
+ l.acceptLexerState(le);
1329
+ let Fe;
1330
+ switch (ae.type) {
1331
+ case "JsdocTypeName":
1332
+ Fe = {
1333
+ type: "JsdocTypeProperty",
1334
+ value: ae.value,
1335
+ meta: {
1336
+ quote: void 0
1337
+ }
1338
+ };
1339
+ break;
1340
+ case "JsdocTypeNumber":
1341
+ Fe = {
1342
+ type: "JsdocTypeProperty",
1343
+ value: ae.value.toString(10),
1344
+ meta: {
1345
+ quote: void 0
1346
+ }
1347
+ };
1348
+ break;
1349
+ case "JsdocTypeStringValue":
1350
+ Fe = {
1351
+ type: "JsdocTypeProperty",
1352
+ value: ae.value,
1353
+ meta: {
1354
+ quote: ae.meta.quote
1355
+ }
1356
+ };
1357
+ break;
1358
+ case "JsdocTypeSpecialNamePath":
1359
+ if (ae.specialType === "event")
1360
+ Fe = ae;
1361
+ else
1362
+ throw new p(ae, "Type 'JsdocTypeSpecialNamePath' is only allowed with specialType 'event'");
1363
+ break;
1364
+ default:
1365
+ throw new p(ae, "Expecting 'JsdocTypeName', 'JsdocTypeNumber', 'JsdocStringValue' or 'JsdocTypeSpecialNamePath'");
1366
+ }
1367
+ if (Q && !l.consume("]")) {
1368
+ let ut = l.lexer.current;
1369
+ throw new Error(`Unterminated square brackets. Next token is '${ut.type}' with text '${ut.text}'`);
1370
+ }
1371
+ return {
1372
+ type: "JsdocTypeNamePath",
1373
+ left: S(E),
1374
+ right: Fe,
1375
+ pathType: K
1376
+ };
1377
+ };
1378
+ }
1379
+ function ne({ allowedAdditionalTokens: e }) {
1380
+ return A({
1381
+ name: "nameParslet",
1382
+ accept: (r) => r === "Identifier" || r === "this" || r === "new" || e.includes(r),
1383
+ parsePrefix: (r) => {
1384
+ let { type: a, text: l } = r.lexer.current;
1385
+ return r.consume(a), {
1386
+ type: "JsdocTypeName",
1387
+ value: l
1388
+ };
1389
+ }
1390
+ });
1391
+ }
1392
+ let fe = A({
1393
+ name: "stringValueParslet",
1394
+ accept: (e) => e === "StringValue",
1395
+ parsePrefix: (e) => {
1396
+ let r = e.lexer.current.text;
1397
+ return e.consume("StringValue"), {
1398
+ type: "JsdocTypeStringValue",
1399
+ value: r.slice(1, -1),
1400
+ meta: {
1401
+ quote: r[0] === "'" ? "single" : "double"
1402
+ }
1403
+ };
1404
+ }
1405
+ });
1406
+ function oe({ pathGrammar: e, allowedTypes: r }) {
1407
+ return A({
1408
+ name: "specialNamePathParslet",
1409
+ accept: (a) => r.includes(a),
1410
+ parsePrefix: (a) => {
1411
+ let l = a.lexer.current.type;
1412
+ if (a.consume(l), !a.consume(":"))
1413
+ return {
1414
+ type: "JsdocTypeName",
1415
+ value: l
1416
+ };
1417
+ let g, E = a.lexer.current;
1418
+ if (a.consume("StringValue"))
1419
+ g = {
1420
+ type: "JsdocTypeSpecialNamePath",
1421
+ value: E.text.slice(1, -1),
1422
+ specialType: l,
1423
+ meta: {
1424
+ quote: E.text[0] === "'" ? "single" : "double"
1425
+ }
1426
+ };
1427
+ else {
1428
+ let K = "", Q = ["Identifier", "@", "/"];
1429
+ for (; Q.some((le) => a.consume(le)); )
1430
+ K += E.text, E = a.lexer.current;
1431
+ g = {
1432
+ type: "JsdocTypeSpecialNamePath",
1433
+ value: K,
1434
+ specialType: l,
1435
+ meta: {
1436
+ quote: void 0
1437
+ }
1438
+ };
1439
+ }
1440
+ let B = new c(e, a.lexer, a), M = B.parseInfixIntermediateType(g, T.ALL);
1441
+ return a.acceptLexerState(B), S(M);
1442
+ }
1443
+ });
1444
+ }
1445
+ let be = [
1446
+ ne({
1447
+ allowedAdditionalTokens: ["external", "module"]
1448
+ }),
1449
+ fe,
1450
+ k,
1451
+ ue({
1452
+ allowSquareBracketsOnAnyType: !1,
1453
+ allowJsdocNamePaths: !0,
1454
+ pathGrammar: null
1455
+ })
1456
+ ], se = [
1457
+ ...be,
1458
+ oe({
1459
+ allowedTypes: ["event"],
1460
+ pathGrammar: be
1461
+ })
1462
+ ];
1463
+ function Ee(e) {
1464
+ let r;
1465
+ if (e.type === "JsdocTypeParameterList")
1466
+ r = e.elements;
1467
+ else if (e.type === "JsdocTypeParenthesis")
1468
+ r = [e.element];
1469
+ else
1470
+ throw new p(e);
1471
+ return r.map((a) => U(a));
1472
+ }
1473
+ function Re(e) {
1474
+ let r = Ee(e);
1475
+ if (r.some((a) => a.type === "JsdocTypeKeyValue"))
1476
+ throw new Error("No parameter should be named");
1477
+ return r;
1478
+ }
1479
+ function Z({ allowNamedParameters: e, allowNoReturnType: r, allowWithoutParenthesis: a, allowNewAsFunctionKeyword: l }) {
1480
+ return A({
1481
+ name: "functionParslet",
1482
+ accept: (g, E) => g === "function" || l && g === "new" && E === "(",
1483
+ parsePrefix: (g) => {
1484
+ let E = g.consume("new");
1485
+ g.consume("function");
1486
+ let B = g.lexer.current.type === "(";
1487
+ if (!B) {
1488
+ if (!a)
1489
+ throw new Error("function is missing parameter list");
1490
+ return {
1491
+ type: "JsdocTypeName",
1492
+ value: "function"
1493
+ };
1494
+ }
1495
+ let M = {
1496
+ type: "JsdocTypeFunction",
1497
+ parameters: [],
1498
+ arrow: !1,
1499
+ constructor: E,
1500
+ parenthesis: B
1501
+ }, K = g.parseIntermediateType(T.FUNCTION);
1502
+ if (e === void 0)
1503
+ M.parameters = Re(K);
1504
+ else {
1505
+ if (E && K.type === "JsdocTypeFunction" && K.arrow)
1506
+ return M = K, M.constructor = !0, M;
1507
+ M.parameters = Ee(K);
1508
+ for (let Q of M.parameters)
1509
+ if (Q.type === "JsdocTypeKeyValue" && !e.includes(Q.key))
1510
+ throw new Error(`only allowed named parameters are ${e.join(", ")} but got ${Q.type}`);
1511
+ }
1512
+ if (g.consume(":"))
1513
+ M.returnType = g.parseType(T.PREFIX);
1514
+ else if (!r)
1515
+ throw new Error("function is missing return type");
1516
+ return M;
1517
+ }
1518
+ });
1519
+ }
1520
+ function ee({ allowPostfix: e, allowEnclosingBrackets: r }) {
1521
+ return A({
1522
+ name: "variadicParslet",
1523
+ accept: (a) => a === "...",
1524
+ precedence: T.PREFIX,
1525
+ parsePrefix: (a) => {
1526
+ a.consume("...");
1527
+ let l = r && a.consume("[");
1528
+ try {
1529
+ let g = a.parseType(T.PREFIX);
1530
+ if (l && !a.consume("]"))
1531
+ throw new Error("Unterminated variadic type. Missing ']'");
1532
+ return {
1533
+ type: "JsdocTypeVariadic",
1534
+ element: S(g),
1535
+ meta: {
1536
+ position: "prefix",
1537
+ squareBrackets: l
1538
+ }
1539
+ };
1540
+ } catch (g) {
1541
+ if (g instanceof s) {
1542
+ if (l)
1543
+ throw new Error("Empty square brackets for variadic are not allowed.");
1544
+ return {
1545
+ type: "JsdocTypeVariadic",
1546
+ meta: {
1547
+ position: void 0,
1548
+ squareBrackets: !1
1549
+ }
1550
+ };
1551
+ } else
1552
+ throw g;
1553
+ }
1554
+ },
1555
+ parseInfix: e ? (a, l) => (a.consume("..."), {
1556
+ type: "JsdocTypeVariadic",
1557
+ element: S(l),
1558
+ meta: {
1559
+ position: "suffix",
1560
+ squareBrackets: !1
1561
+ }
1562
+ }) : void 0
1563
+ });
1564
+ }
1565
+ let he = A({
1566
+ name: "symbolParslet",
1567
+ accept: (e) => e === "(",
1568
+ precedence: T.SYMBOL,
1569
+ parseInfix: (e, r) => {
1570
+ if (r.type !== "JsdocTypeName")
1571
+ throw new Error("Symbol expects a name on the left side. (Reacting on '(')");
1572
+ e.consume("(");
1573
+ let a = {
1574
+ type: "JsdocTypeSymbol",
1575
+ value: r.value
1576
+ };
1577
+ if (!e.consume(")")) {
1578
+ let l = e.parseIntermediateType(T.SYMBOL);
1579
+ if (a.element = _(l), !e.consume(")"))
1580
+ throw new Error("Symbol does not end after value");
1581
+ }
1582
+ return a;
1583
+ }
1584
+ }), ve = A({
1585
+ name: "arrayBracketsParslet",
1586
+ precedence: T.ARRAY_BRACKETS,
1587
+ accept: (e, r) => e === "[" && r === "]",
1588
+ parseInfix: (e, r) => (e.consume("["), e.consume("]"), {
1589
+ type: "JsdocTypeGeneric",
1590
+ left: {
1591
+ type: "JsdocTypeName",
1592
+ value: "Array"
1593
+ },
1594
+ elements: [
1595
+ S(r)
1596
+ ],
1597
+ meta: {
1598
+ brackets: "square",
1599
+ dot: !1
1600
+ }
1601
+ })
1602
+ });
1603
+ function we({ objectFieldGrammar: e, allowKeyTypes: r }) {
1604
+ return A({
1605
+ name: "objectParslet",
1606
+ accept: (a) => a === "{",
1607
+ parsePrefix: (a) => {
1608
+ a.consume("{");
1609
+ let l = {
1610
+ type: "JsdocTypeObject",
1611
+ meta: {
1612
+ separator: "comma"
1613
+ },
1614
+ elements: []
1615
+ };
1616
+ if (!a.consume("}")) {
1617
+ let g, E = new c(e, a.lexer, a);
1618
+ for (; ; ) {
1619
+ E.acceptLexerState(a);
1620
+ let B = E.parseIntermediateType(T.OBJECT);
1621
+ a.acceptLexerState(E), B === void 0 && r && (B = a.parseIntermediateType(T.OBJECT));
1622
+ let M = !1;
1623
+ if (B.type === "JsdocTypeNullable" && (M = !0, B = B.element), B.type === "JsdocTypeNumber" || B.type === "JsdocTypeName" || B.type === "JsdocTypeStringValue") {
1624
+ let K;
1625
+ B.type === "JsdocTypeStringValue" && (K = B.meta.quote), l.elements.push({
1626
+ type: "JsdocTypeObjectField",
1627
+ key: B.value.toString(),
1628
+ right: void 0,
1629
+ optional: M,
1630
+ readonly: !1,
1631
+ meta: {
1632
+ quote: K
1633
+ }
1634
+ });
1635
+ } else if (B.type === "JsdocTypeObjectField" || B.type === "JsdocTypeJsdocObjectField")
1636
+ l.elements.push(B);
1637
+ else
1638
+ throw new p(B);
1639
+ if (a.lexer.current.startOfLine)
1640
+ g = "linebreak", a.consume(",") || a.consume(";");
1641
+ else if (a.consume(","))
1642
+ g = "comma";
1643
+ else if (a.consume(";"))
1644
+ g = "semicolon";
1645
+ else
1646
+ break;
1647
+ if (a.lexer.current.type === "}")
1648
+ break;
1649
+ }
1650
+ if (l.meta.separator = g ?? "comma", g === "linebreak" && (l.meta.propertyIndent = " "), !a.consume("}"))
1651
+ throw new Error("Unterminated record type. Missing '}'");
1652
+ }
1653
+ return l;
1654
+ }
1655
+ });
1656
+ }
1657
+ function Ce({ allowSquaredProperties: e, allowKeyTypes: r, allowReadonly: a, allowOptional: l }) {
1658
+ return A({
1659
+ name: "objectFieldParslet",
1660
+ precedence: T.KEY_VALUE,
1661
+ accept: (g) => g === ":",
1662
+ parseInfix: (g, E) => {
1663
+ var B;
1664
+ let M = !1, K = !1;
1665
+ l && E.type === "JsdocTypeNullable" && (M = !0, E = E.element), a && E.type === "JsdocTypeReadonlyProperty" && (K = !0, E = E.element);
1666
+ let Q = (B = g.baseParser) !== null && B !== void 0 ? B : g;
1667
+ if (Q.acceptLexerState(g), E.type === "JsdocTypeNumber" || E.type === "JsdocTypeName" || E.type === "JsdocTypeStringValue" || H(E)) {
1668
+ if (H(E) && !e)
1669
+ throw new p(E);
1670
+ Q.consume(":");
1671
+ let le;
1672
+ E.type === "JsdocTypeStringValue" && (le = E.meta.quote);
1673
+ let ae = Q.parseType(T.KEY_VALUE);
1674
+ return g.acceptLexerState(Q), {
1675
+ type: "JsdocTypeObjectField",
1676
+ key: H(E) ? E : E.value.toString(),
1677
+ right: ae,
1678
+ optional: M,
1679
+ readonly: K,
1680
+ meta: {
1681
+ quote: le
1682
+ }
1683
+ };
1684
+ } else {
1685
+ if (!r)
1686
+ throw new p(E);
1687
+ Q.consume(":");
1688
+ let le = Q.parseType(T.KEY_VALUE);
1689
+ return g.acceptLexerState(Q), {
1690
+ type: "JsdocTypeJsdocObjectField",
1691
+ left: S(E),
1692
+ right: le
1693
+ };
1694
+ }
1695
+ }
1696
+ });
1697
+ }
1698
+ function Ie({ allowOptional: e, allowVariadic: r }) {
1699
+ return A({
1700
+ name: "keyValueParslet",
1701
+ precedence: T.KEY_VALUE,
1702
+ accept: (a) => a === ":",
1703
+ parseInfix: (a, l) => {
1704
+ let g = !1, E = !1;
1705
+ if (e && l.type === "JsdocTypeNullable" && (g = !0, l = l.element), r && l.type === "JsdocTypeVariadic" && l.element !== void 0 && (E = !0, l = l.element), l.type !== "JsdocTypeName")
1706
+ throw new p(l);
1707
+ a.consume(":");
1708
+ let B = a.parseType(T.KEY_VALUE);
1709
+ return {
1710
+ type: "JsdocTypeKeyValue",
1711
+ key: l.value,
1712
+ right: B,
1713
+ optional: g,
1714
+ variadic: E
1715
+ };
1716
+ }
1717
+ });
1718
+ }
1719
+ let $e = [
1720
+ ...te,
1721
+ Z({
1722
+ allowWithoutParenthesis: !0,
1723
+ allowNamedParameters: ["this", "new"],
1724
+ allowNoReturnType: !0,
1725
+ allowNewAsFunctionKeyword: !1
1726
+ }),
1727
+ fe,
1728
+ oe({
1729
+ allowedTypes: ["module", "external", "event"],
1730
+ pathGrammar: se
1731
+ }),
1732
+ ee({
1733
+ allowEnclosingBrackets: !0,
1734
+ allowPostfix: !0
1735
+ }),
1736
+ ne({
1737
+ allowedAdditionalTokens: ["keyof"]
1738
+ }),
1739
+ he,
1740
+ ve,
1741
+ ue({
1742
+ allowSquareBracketsOnAnyType: !1,
1743
+ allowJsdocNamePaths: !0,
1744
+ pathGrammar: se
1745
+ })
1746
+ ], Pt = [
1747
+ ...$e,
1748
+ we({
1749
+ // jsdoc syntax allows full types as keys, so we need to pull in the full grammar here
1750
+ // we leave out the object type deliberately
1751
+ objectFieldGrammar: [
1752
+ ne({
1753
+ allowedAdditionalTokens: ["typeof", "module", "in"]
1754
+ }),
1755
+ Ce({
1756
+ allowSquaredProperties: !1,
1757
+ allowKeyTypes: !0,
1758
+ allowOptional: !1,
1759
+ allowReadonly: !1
1760
+ }),
1761
+ ...$e
1762
+ ],
1763
+ allowKeyTypes: !0
1764
+ }),
1765
+ Ie({
1766
+ allowOptional: !0,
1767
+ allowVariadic: !0
1768
+ })
1769
+ ], Qe = A({
1770
+ name: "typeOfParslet",
1771
+ accept: (e) => e === "typeof",
1772
+ parsePrefix: (e) => (e.consume("typeof"), {
1773
+ type: "JsdocTypeTypeof",
1774
+ element: e.parseType(T.KEY_OF_TYPE_OF)
1775
+ })
1776
+ }), qt = [
1777
+ ne({
1778
+ allowedAdditionalTokens: ["typeof", "module", "keyof", "event", "external", "in"]
1779
+ }),
1780
+ h,
1781
+ J,
1782
+ fe,
1783
+ k,
1784
+ Ce({
1785
+ allowSquaredProperties: !1,
1786
+ allowKeyTypes: !1,
1787
+ allowOptional: !1,
1788
+ allowReadonly: !1
1789
+ })
1790
+ ], kt = [
1791
+ ...te,
1792
+ we({
1793
+ allowKeyTypes: !1,
1794
+ objectFieldGrammar: qt
1795
+ }),
1796
+ ne({
1797
+ allowedAdditionalTokens: ["event", "external", "in"]
1798
+ }),
1799
+ Qe,
1800
+ Z({
1801
+ allowWithoutParenthesis: !1,
1802
+ allowNamedParameters: ["this", "new"],
1803
+ allowNoReturnType: !0,
1804
+ allowNewAsFunctionKeyword: !1
1805
+ }),
1806
+ ee({
1807
+ allowEnclosingBrackets: !1,
1808
+ allowPostfix: !1
1809
+ }),
1810
+ // additional name parslet is needed for some special cases
1811
+ ne({
1812
+ allowedAdditionalTokens: ["keyof"]
1813
+ }),
1814
+ oe({
1815
+ allowedTypes: ["module"],
1816
+ pathGrammar: se
1817
+ }),
1818
+ ue({
1819
+ allowSquareBracketsOnAnyType: !1,
1820
+ allowJsdocNamePaths: !0,
1821
+ pathGrammar: se
1822
+ }),
1823
+ Ie({
1824
+ allowOptional: !1,
1825
+ allowVariadic: !1
1826
+ }),
1827
+ he
1828
+ ], _t = A({
1829
+ name: "assertsParslet",
1830
+ accept: (e) => e === "asserts",
1831
+ parsePrefix: (e) => {
1832
+ e.consume("asserts");
1833
+ let r = e.parseIntermediateType(T.SYMBOL);
1834
+ if (r.type !== "JsdocTypeName")
1835
+ throw new p(r, "A typescript asserts always has to have a name on the left side.");
1836
+ return e.consume("is") ? {
1837
+ type: "JsdocTypeAsserts",
1838
+ left: r,
1839
+ right: S(e.parseIntermediateType(T.INFIX))
1840
+ } : {
1841
+ type: "JsdocTypeAssertsPlain",
1842
+ element: r
1843
+ };
1844
+ }
1845
+ });
1846
+ function Lt({ allowQuestionMark: e }) {
1847
+ return A({
1848
+ name: "tupleParslet",
1849
+ accept: (r) => r === "[",
1850
+ parsePrefix: (r) => {
1851
+ r.consume("[");
1852
+ let a = {
1853
+ type: "JsdocTypeTuple",
1854
+ elements: []
1855
+ };
1856
+ if (r.consume("]"))
1857
+ return a;
1858
+ let l = r.parseIntermediateType(T.ALL);
1859
+ if (l.type === "JsdocTypeParameterList" ? l.elements[0].type === "JsdocTypeKeyValue" ? a.elements = l.elements.map(q) : a.elements = l.elements.map(S) : l.type === "JsdocTypeKeyValue" ? a.elements = [q(l)] : a.elements = [S(l)], !r.consume("]"))
1860
+ throw new Error("Unterminated '['");
1861
+ if (a.elements.some((g) => g.type === "JsdocTypeUnknown"))
1862
+ throw new Error("Question mark in tuple not allowed");
1863
+ return a;
1864
+ }
1865
+ });
1866
+ }
1867
+ let Rt = A({
1868
+ name: "keyOfParslet",
1869
+ accept: (e) => e === "keyof",
1870
+ parsePrefix: (e) => (e.consume("keyof"), {
1871
+ type: "JsdocTypeKeyof",
1872
+ element: S(e.parseType(T.KEY_OF_TYPE_OF))
1873
+ })
1874
+ }), It = A({
1875
+ name: "importParslet",
1876
+ accept: (e) => e === "import",
1877
+ parsePrefix: (e) => {
1878
+ if (e.consume("import"), !e.consume("("))
1879
+ throw new Error("Missing parenthesis after import keyword");
1880
+ let r = e.parseType(T.PREFIX);
1881
+ if (r.type !== "JsdocTypeStringValue")
1882
+ throw new Error("Only string values are allowed as paths for imports");
1883
+ if (!e.consume(")"))
1884
+ throw new Error("Missing closing parenthesis after import keyword");
1885
+ return {
1886
+ type: "JsdocTypeImport",
1887
+ element: r
1888
+ };
1889
+ }
1890
+ }), jt = A({
1891
+ name: "readonlyPropertyParslet",
1892
+ accept: (e) => e === "readonly",
1893
+ parsePrefix: (e) => (e.consume("readonly"), {
1894
+ type: "JsdocTypeReadonlyProperty",
1895
+ element: e.parseIntermediateType(T.KEY_VALUE)
1896
+ })
1897
+ }), Ut = A({
1898
+ name: "arrowFunctionParslet",
1899
+ precedence: T.ARROW,
1900
+ accept: (e) => e === "=>",
1901
+ parseInfix: (e, r) => (e.consume("=>"), {
1902
+ type: "JsdocTypeFunction",
1903
+ parameters: Ee(r).map(R),
1904
+ arrow: !0,
1905
+ constructor: !1,
1906
+ parenthesis: !0,
1907
+ returnType: e.parseType(T.OBJECT)
1908
+ })
1909
+ }), Mt = A({
1910
+ name: "genericArrowFunctionParslet",
1911
+ accept: (e) => e === "<",
1912
+ parsePrefix: (e) => {
1913
+ let r = [];
1914
+ e.consume("<");
1915
+ do {
1916
+ let l, g = e.parseIntermediateType(T.SYMBOL);
1917
+ if (g.type === "JsdocTypeOptional" && (g = g.element, l = e.parseType(T.SYMBOL)), g.type !== "JsdocTypeName")
1918
+ throw new p(g);
1919
+ let E;
1920
+ e.consume("extends") && (E = e.parseType(T.SYMBOL), E.type === "JsdocTypeOptional" && (E = E.element, l = e.parseType(T.SYMBOL)));
1921
+ let B = {
1922
+ type: "JsdocTypeTypeParameter",
1923
+ name: g
1924
+ };
1925
+ if (E !== void 0 && (B.constraint = E), l !== void 0 && (B.defaultValue = l), r.push(B), e.consume(">"))
1926
+ break;
1927
+ } while (e.consume(","));
1928
+ let a = e.parseIntermediateType(T.SYMBOL);
1929
+ return a.typeParameters = r, a;
1930
+ }
1931
+ }), Vt = A({
1932
+ name: "intersectionParslet",
1933
+ accept: (e) => e === "&",
1934
+ precedence: T.INTERSECTION,
1935
+ parseInfix: (e, r) => {
1936
+ e.consume("&");
1937
+ let a = [];
1938
+ do
1939
+ a.push(e.parseType(T.INTERSECTION));
1940
+ while (e.consume("&"));
1941
+ return {
1942
+ type: "JsdocTypeIntersection",
1943
+ elements: [S(r), ...a]
1944
+ };
1945
+ }
1946
+ }), Ht = A({
1947
+ name: "predicateParslet",
1948
+ precedence: T.INFIX,
1949
+ accept: (e) => e === "is",
1950
+ parseInfix: (e, r) => {
1951
+ if (r.type !== "JsdocTypeName")
1952
+ throw new p(r, "A typescript predicate always has to have a name on the left side.");
1953
+ return e.consume("is"), {
1954
+ type: "JsdocTypePredicate",
1955
+ left: r,
1956
+ right: S(e.parseIntermediateType(T.INFIX))
1957
+ };
1958
+ }
1959
+ }), Kt = A({
1960
+ name: "objectSquareBracketPropertyParslet",
1961
+ accept: (e) => e === "[",
1962
+ parsePrefix: (e) => {
1963
+ if (e.baseParser === void 0)
1964
+ throw new Error("Only allowed inside object grammar");
1965
+ e.consume("[");
1966
+ let r = e.lexer.current.text;
1967
+ e.consume("Identifier");
1968
+ let a;
1969
+ if (e.consume(":")) {
1970
+ let l = e.baseParser;
1971
+ l.acceptLexerState(e), a = {
1972
+ type: "JsdocTypeIndexSignature",
1973
+ key: r,
1974
+ right: l.parseType(T.INDEX_BRACKETS)
1975
+ }, e.acceptLexerState(l);
1976
+ } else if (e.consume("in")) {
1977
+ let l = e.baseParser;
1978
+ l.acceptLexerState(e), a = {
1979
+ type: "JsdocTypeMappedType",
1980
+ key: r,
1981
+ right: l.parseType(T.ARRAY_BRACKETS)
1982
+ }, e.acceptLexerState(l);
1983
+ } else
1984
+ throw new Error("Missing ':' or 'in' inside square bracketed property.");
1985
+ if (!e.consume("]"))
1986
+ throw new Error("Unterminated square brackets");
1987
+ return a;
1988
+ }
1989
+ }), Gt = A({
1990
+ name: "readonlyArrayParslet",
1991
+ accept: (e) => e === "readonly",
1992
+ parsePrefix: (e) => (e.consume("readonly"), {
1993
+ type: "JsdocTypeReadonlyArray",
1994
+ element: V(e.parseIntermediateType(T.ALL))
1995
+ })
1996
+ }), zt = A({
1997
+ name: "conditionalParslet",
1998
+ precedence: T.INFIX,
1999
+ accept: (e) => e === "extends",
2000
+ parseInfix: (e, r) => {
2001
+ e.consume("extends");
2002
+ let a = e.parseType(T.KEY_OF_TYPE_OF).element, l = e.parseType(T.INFIX);
2003
+ return e.consume(":"), {
2004
+ type: "JsdocTypeConditional",
2005
+ checksType: S(r),
2006
+ extendsType: a,
2007
+ trueType: l,
2008
+ falseType: e.parseType(T.INFIX)
2009
+ };
2010
+ }
2011
+ }), Yt = [
2012
+ jt,
2013
+ ne({
2014
+ allowedAdditionalTokens: ["typeof", "module", "keyof", "event", "external", "in"]
2015
+ }),
2016
+ h,
2017
+ J,
2018
+ fe,
2019
+ k,
2020
+ Ce({
2021
+ allowSquaredProperties: !0,
2022
+ allowKeyTypes: !1,
2023
+ allowOptional: !0,
2024
+ allowReadonly: !0
2025
+ }),
2026
+ Kt
2027
+ ], Xt = [
2028
+ ...te,
2029
+ we({
2030
+ allowKeyTypes: !1,
2031
+ objectFieldGrammar: Yt
2032
+ }),
2033
+ Gt,
2034
+ Qe,
2035
+ Rt,
2036
+ It,
2037
+ fe,
2038
+ Z({
2039
+ allowWithoutParenthesis: !0,
2040
+ allowNoReturnType: !1,
2041
+ allowNamedParameters: ["this", "new", "args"],
2042
+ allowNewAsFunctionKeyword: !0
2043
+ }),
2044
+ Lt({
2045
+ allowQuestionMark: !1
2046
+ }),
2047
+ ee({
2048
+ allowEnclosingBrackets: !1,
2049
+ allowPostfix: !1
2050
+ }),
2051
+ _t,
2052
+ zt,
2053
+ ne({
2054
+ allowedAdditionalTokens: ["event", "external", "in"]
2055
+ }),
2056
+ oe({
2057
+ allowedTypes: ["module"],
2058
+ pathGrammar: se
2059
+ }),
2060
+ ve,
2061
+ Ut,
2062
+ Mt,
2063
+ ue({
2064
+ allowSquareBracketsOnAnyType: !0,
2065
+ allowJsdocNamePaths: !1,
2066
+ pathGrammar: se
2067
+ }),
2068
+ Vt,
2069
+ Ht,
2070
+ Ie({
2071
+ allowVariadic: !0,
2072
+ allowOptional: !0
2073
+ })
2074
+ ];
2075
+ function Ze(e, r) {
2076
+ switch (r) {
2077
+ case "closure":
2078
+ return new c(kt, e).parse();
2079
+ case "jsdoc":
2080
+ return new c(Pt, e).parse();
2081
+ case "typescript":
2082
+ return new c(Xt, e).parse();
2083
+ }
2084
+ }
2085
+ function Wt(e, r = ["typescript", "closure", "jsdoc"]) {
2086
+ let a;
2087
+ for (let l of r)
2088
+ try {
2089
+ return Ze(e, l);
2090
+ } catch (g) {
2091
+ a = g;
2092
+ }
2093
+ throw a;
2094
+ }
2095
+ function xe(e, r) {
2096
+ let a = e[r.type];
2097
+ if (a === void 0)
2098
+ throw new Error(`In this set of transform rules exists no rule for type ${r.type}.`);
2099
+ return a(r, (l) => xe(e, l));
2100
+ }
2101
+ function j(e) {
2102
+ throw new Error("This transform is not available. Are you trying the correct parsing mode?");
2103
+ }
2104
+ function et(e) {
2105
+ let r = {
2106
+ params: []
2107
+ };
2108
+ for (let a of e.parameters)
2109
+ a.type === "JsdocTypeKeyValue" ? a.key === "this" ? r.this = a.right : a.key === "new" ? r.new = a.right : r.params.push(a) : r.params.push(a);
2110
+ return r;
2111
+ }
2112
+ function Pe(e, r, a) {
2113
+ return e === "prefix" ? a + r : r + a;
2114
+ }
2115
+ function ce(e, r) {
2116
+ switch (r) {
2117
+ case "double":
2118
+ return `"${e}"`;
2119
+ case "single":
2120
+ return `'${e}'`;
2121
+ case void 0:
2122
+ return e;
2123
+ }
2124
+ }
2125
+ function tt() {
2126
+ return {
2127
+ JsdocTypeParenthesis: (e, r) => `(${e.element !== void 0 ? r(e.element) : ""})`,
2128
+ JsdocTypeKeyof: (e, r) => `keyof ${r(e.element)}`,
2129
+ JsdocTypeFunction: (e, r) => {
2130
+ var a;
2131
+ if (e.arrow) {
2132
+ if (e.returnType === void 0)
2133
+ throw new Error("Arrow function needs a return type.");
2134
+ let l = `${e.typeParameters !== void 0 ? `<${(a = e.typeParameters.map(r).join(", ")) !== null && a !== void 0 ? a : ""}>` : ""}(${e.parameters.map(r).join(", ")}) => ${r(e.returnType)}`;
2135
+ return e.constructor && (l = "new " + l), l;
2136
+ } else {
2137
+ let l = e.constructor ? "new" : "function";
2138
+ return e.parenthesis && (l += `(${e.parameters.map(r).join(", ")})`, e.returnType !== void 0 && (l += `: ${r(e.returnType)}`)), l;
2139
+ }
2140
+ },
2141
+ JsdocTypeName: (e) => e.value,
2142
+ JsdocTypeTuple: (e, r) => `[${e.elements.map(r).join(", ")}]`,
2143
+ JsdocTypeVariadic: (e, r) => e.meta.position === void 0 ? "..." : Pe(e.meta.position, r(e.element), "..."),
2144
+ JsdocTypeNamePath: (e, r) => {
2145
+ let a = r(e.left), l = r(e.right);
2146
+ switch (e.pathType) {
2147
+ case "inner":
2148
+ return `${a}~${l}`;
2149
+ case "instance":
2150
+ return `${a}#${l}`;
2151
+ case "property":
2152
+ return `${a}.${l}`;
2153
+ case "property-brackets":
2154
+ return `${a}[${l}]`;
2155
+ }
2156
+ },
2157
+ JsdocTypeStringValue: (e) => ce(e.value, e.meta.quote),
2158
+ JsdocTypeAny: () => "*",
2159
+ JsdocTypeGeneric: (e, r) => {
2160
+ if (e.meta.brackets === "square") {
2161
+ let a = e.elements[0], l = r(a);
2162
+ return a.type === "JsdocTypeUnion" || a.type === "JsdocTypeIntersection" ? `(${l})[]` : `${l}[]`;
2163
+ } else
2164
+ return `${r(e.left)}${e.meta.dot ? "." : ""}<${e.infer === !0 ? "infer " : ""}${e.elements.map(r).join(", ")}>`;
2165
+ },
2166
+ JsdocTypeImport: (e, r) => `import(${r(e.element)})`,
2167
+ JsdocTypeObjectField: (e, r) => {
2168
+ let a = "";
2169
+ return e.readonly && (a += "readonly "), typeof e.key == "string" ? a += ce(e.key, e.meta.quote) : a += r(e.key), e.optional && (a += "?"), e.right === void 0 ? a : a + `: ${r(e.right)}`;
2170
+ },
2171
+ JsdocTypeJsdocObjectField: (e, r) => `${r(e.left)}: ${r(e.right)}`,
2172
+ JsdocTypeKeyValue: (e, r) => {
2173
+ let a = e.key;
2174
+ return e.optional && (a += "?"), e.variadic && (a = "..." + a), e.right === void 0 ? a : a + `: ${r(e.right)}`;
2175
+ },
2176
+ JsdocTypeSpecialNamePath: (e) => `${e.specialType}:${ce(e.value, e.meta.quote)}`,
2177
+ JsdocTypeNotNullable: (e, r) => Pe(e.meta.position, r(e.element), "!"),
2178
+ JsdocTypeNull: () => "null",
2179
+ JsdocTypeNullable: (e, r) => Pe(e.meta.position, r(e.element), "?"),
2180
+ JsdocTypeNumber: (e) => e.value.toString(),
2181
+ JsdocTypeObject: (e, r) => {
2182
+ var a, l;
2183
+ return `{${(e.meta.separator === "linebreak" && e.elements.length > 1 ? `
2184
+ ` + ((a = e.meta.propertyIndent) !== null && a !== void 0 ? a : "") : "") + e.elements.map(r).join(e.meta.separator === "comma" ? ", " : e.meta.separator === "linebreak" ? `
2185
+ ` + ((l = e.meta.propertyIndent) !== null && l !== void 0 ? l : "") : "; ") + (e.meta.separator === "linebreak" && e.elements.length > 1 ? `
2186
+ ` : "")}}`;
2187
+ },
2188
+ JsdocTypeOptional: (e, r) => Pe(e.meta.position, r(e.element), "="),
2189
+ JsdocTypeSymbol: (e, r) => `${e.value}(${e.element !== void 0 ? r(e.element) : ""})`,
2190
+ JsdocTypeTypeof: (e, r) => `typeof ${r(e.element)}`,
2191
+ JsdocTypeUndefined: () => "undefined",
2192
+ JsdocTypeUnion: (e, r) => e.elements.map(r).join(" | "),
2193
+ JsdocTypeUnknown: () => "?",
2194
+ JsdocTypeIntersection: (e, r) => e.elements.map(r).join(" & "),
2195
+ JsdocTypeProperty: (e) => ce(e.value, e.meta.quote),
2196
+ JsdocTypePredicate: (e, r) => `${r(e.left)} is ${r(e.right)}`,
2197
+ JsdocTypeIndexSignature: (e, r) => `[${e.key}: ${r(e.right)}]`,
2198
+ JsdocTypeMappedType: (e, r) => `[${e.key} in ${r(e.right)}]`,
2199
+ JsdocTypeAsserts: (e, r) => `asserts ${r(e.left)} is ${r(e.right)}`,
2200
+ JsdocTypeReadonlyArray: (e, r) => `readonly ${r(e.element)}`,
2201
+ JsdocTypeAssertsPlain: (e, r) => `asserts ${r(e.element)}`,
2202
+ JsdocTypeConditional: (e, r) => `${r(e.checksType)} extends ${r(e.extendsType)} ? ${r(e.trueType)} : ${r(e.falseType)}`,
2203
+ JsdocTypeTypeParameter: (e, r) => `${r(e.name)}${e.constraint !== void 0 ? ` extends ${r(e.constraint)}` : ""}${e.defaultValue !== void 0 ? ` = ${r(e.defaultValue)}` : ""}`
2204
+ };
2205
+ }
2206
+ let $t = tt();
2207
+ function Qt(e) {
2208
+ return xe($t, e);
2209
+ }
2210
+ let Zt = [
2211
+ "null",
2212
+ "true",
2213
+ "false",
2214
+ "break",
2215
+ "case",
2216
+ "catch",
2217
+ "class",
2218
+ "const",
2219
+ "continue",
2220
+ "debugger",
2221
+ "default",
2222
+ "delete",
2223
+ "do",
2224
+ "else",
2225
+ "export",
2226
+ "extends",
2227
+ "finally",
2228
+ "for",
2229
+ "function",
2230
+ "if",
2231
+ "import",
2232
+ "in",
2233
+ "instanceof",
2234
+ "new",
2235
+ "return",
2236
+ "super",
2237
+ "switch",
2238
+ "this",
2239
+ "throw",
2240
+ "try",
2241
+ "typeof",
2242
+ "var",
2243
+ "void",
2244
+ "while",
2245
+ "with",
2246
+ "yield"
2247
+ ];
2248
+ function pe(e) {
2249
+ let r = {
2250
+ type: "NameExpression",
2251
+ name: e
2252
+ };
2253
+ return Zt.includes(e) && (r.reservedWord = !0), r;
2254
+ }
2255
+ let er = {
2256
+ JsdocTypeOptional: (e, r) => {
2257
+ let a = r(e.element);
2258
+ return a.optional = !0, a;
2259
+ },
2260
+ JsdocTypeNullable: (e, r) => {
2261
+ let a = r(e.element);
2262
+ return a.nullable = !0, a;
2263
+ },
2264
+ JsdocTypeNotNullable: (e, r) => {
2265
+ let a = r(e.element);
2266
+ return a.nullable = !1, a;
2267
+ },
2268
+ JsdocTypeVariadic: (e, r) => {
2269
+ if (e.element === void 0)
2270
+ throw new Error("dots without value are not allowed in catharsis mode");
2271
+ let a = r(e.element);
2272
+ return a.repeatable = !0, a;
2273
+ },
2274
+ JsdocTypeAny: () => ({
2275
+ type: "AllLiteral"
2276
+ }),
2277
+ JsdocTypeNull: () => ({
2278
+ type: "NullLiteral"
2279
+ }),
2280
+ JsdocTypeStringValue: (e) => pe(ce(e.value, e.meta.quote)),
2281
+ JsdocTypeUndefined: () => ({
2282
+ type: "UndefinedLiteral"
2283
+ }),
2284
+ JsdocTypeUnknown: () => ({
2285
+ type: "UnknownLiteral"
2286
+ }),
2287
+ JsdocTypeFunction: (e, r) => {
2288
+ let a = et(e), l = {
2289
+ type: "FunctionType",
2290
+ params: a.params.map(r)
2291
+ };
2292
+ return a.this !== void 0 && (l.this = r(a.this)), a.new !== void 0 && (l.new = r(a.new)), e.returnType !== void 0 && (l.result = r(e.returnType)), l;
2293
+ },
2294
+ JsdocTypeGeneric: (e, r) => ({
2295
+ type: "TypeApplication",
2296
+ applications: e.elements.map((a) => r(a)),
2297
+ expression: r(e.left)
2298
+ }),
2299
+ JsdocTypeSpecialNamePath: (e) => pe(e.specialType + ":" + ce(e.value, e.meta.quote)),
2300
+ JsdocTypeName: (e) => e.value !== "function" ? pe(e.value) : {
2301
+ type: "FunctionType",
2302
+ params: []
2303
+ },
2304
+ JsdocTypeNumber: (e) => pe(e.value.toString()),
2305
+ JsdocTypeObject: (e, r) => {
2306
+ let a = {
2307
+ type: "RecordType",
2308
+ fields: []
2309
+ };
2310
+ for (let l of e.elements)
2311
+ l.type !== "JsdocTypeObjectField" && l.type !== "JsdocTypeJsdocObjectField" ? a.fields.push({
2312
+ type: "FieldType",
2313
+ key: r(l),
2314
+ value: void 0
2315
+ }) : a.fields.push(r(l));
2316
+ return a;
2317
+ },
2318
+ JsdocTypeObjectField: (e, r) => {
2319
+ if (typeof e.key != "string")
2320
+ throw new Error("Index signatures and mapped types are not supported");
2321
+ return {
2322
+ type: "FieldType",
2323
+ key: pe(ce(e.key, e.meta.quote)),
2324
+ value: e.right === void 0 ? void 0 : r(e.right)
2325
+ };
2326
+ },
2327
+ JsdocTypeJsdocObjectField: (e, r) => ({
2328
+ type: "FieldType",
2329
+ key: r(e.left),
2330
+ value: r(e.right)
2331
+ }),
2332
+ JsdocTypeUnion: (e, r) => ({
2333
+ type: "TypeUnion",
2334
+ elements: e.elements.map((a) => r(a))
2335
+ }),
2336
+ JsdocTypeKeyValue: (e, r) => ({
2337
+ type: "FieldType",
2338
+ key: pe(e.key),
2339
+ value: e.right === void 0 ? void 0 : r(e.right)
2340
+ }),
2341
+ JsdocTypeNamePath: (e, r) => {
2342
+ let a = r(e.left), l;
2343
+ e.right.type === "JsdocTypeSpecialNamePath" ? l = r(e.right).name : l = ce(e.right.value, e.right.meta.quote);
2344
+ let g = e.pathType === "inner" ? "~" : e.pathType === "instance" ? "#" : ".";
2345
+ return pe(`${a.name}${g}${l}`);
2346
+ },
2347
+ JsdocTypeSymbol: (e) => {
2348
+ let r = "", a = e.element, l = !1;
2349
+ return a?.type === "JsdocTypeVariadic" && (a.meta.position === "prefix" ? r = "..." : l = !0, a = a.element), a?.type === "JsdocTypeName" ? r += a.value : a?.type === "JsdocTypeNumber" && (r += a.value.toString()), l && (r += "..."), pe(`${e.value}(${r})`);
2350
+ },
2351
+ JsdocTypeParenthesis: (e, r) => r(S(e.element)),
2352
+ JsdocTypeMappedType: j,
2353
+ JsdocTypeIndexSignature: j,
2354
+ JsdocTypeImport: j,
2355
+ JsdocTypeKeyof: j,
2356
+ JsdocTypeTuple: j,
2357
+ JsdocTypeTypeof: j,
2358
+ JsdocTypeIntersection: j,
2359
+ JsdocTypeProperty: j,
2360
+ JsdocTypePredicate: j,
2361
+ JsdocTypeAsserts: j,
2362
+ JsdocTypeReadonlyArray: j,
2363
+ JsdocTypeAssertsPlain: j,
2364
+ JsdocTypeConditional: j,
2365
+ JsdocTypeTypeParameter: j
2366
+ };
2367
+ function tr(e) {
2368
+ return xe(er, e);
2369
+ }
2370
+ function ge(e) {
2371
+ switch (e) {
2372
+ case void 0:
2373
+ return "none";
2374
+ case "single":
2375
+ return "single";
2376
+ case "double":
2377
+ return "double";
2378
+ }
2379
+ }
2380
+ function rr(e) {
2381
+ switch (e) {
2382
+ case "inner":
2383
+ return "INNER_MEMBER";
2384
+ case "instance":
2385
+ return "INSTANCE_MEMBER";
2386
+ case "property":
2387
+ return "MEMBER";
2388
+ case "property-brackets":
2389
+ return "MEMBER";
2390
+ }
2391
+ }
2392
+ function je(e, r) {
2393
+ return r.length === 2 ? {
2394
+ type: e,
2395
+ left: r[0],
2396
+ right: r[1]
2397
+ } : {
2398
+ type: e,
2399
+ left: r[0],
2400
+ right: je(e, r.slice(1))
2401
+ };
2402
+ }
2403
+ let ur = {
2404
+ JsdocTypeOptional: (e, r) => ({
2405
+ type: "OPTIONAL",
2406
+ value: r(e.element),
2407
+ meta: {
2408
+ syntax: e.meta.position === "prefix" ? "PREFIX_EQUAL_SIGN" : "SUFFIX_EQUALS_SIGN"
2409
+ }
2410
+ }),
2411
+ JsdocTypeNullable: (e, r) => ({
2412
+ type: "NULLABLE",
2413
+ value: r(e.element),
2414
+ meta: {
2415
+ syntax: e.meta.position === "prefix" ? "PREFIX_QUESTION_MARK" : "SUFFIX_QUESTION_MARK"
2416
+ }
2417
+ }),
2418
+ JsdocTypeNotNullable: (e, r) => ({
2419
+ type: "NOT_NULLABLE",
2420
+ value: r(e.element),
2421
+ meta: {
2422
+ syntax: e.meta.position === "prefix" ? "PREFIX_BANG" : "SUFFIX_BANG"
2423
+ }
2424
+ }),
2425
+ JsdocTypeVariadic: (e, r) => {
2426
+ let a = {
2427
+ type: "VARIADIC",
2428
+ meta: {
2429
+ syntax: e.meta.position === "prefix" ? "PREFIX_DOTS" : e.meta.position === "suffix" ? "SUFFIX_DOTS" : "ONLY_DOTS"
2430
+ }
2431
+ };
2432
+ return e.element !== void 0 && (a.value = r(e.element)), a;
2433
+ },
2434
+ JsdocTypeName: (e) => ({
2435
+ type: "NAME",
2436
+ name: e.value
2437
+ }),
2438
+ JsdocTypeTypeof: (e, r) => ({
2439
+ type: "TYPE_QUERY",
2440
+ name: r(e.element)
2441
+ }),
2442
+ JsdocTypeTuple: (e, r) => ({
2443
+ type: "TUPLE",
2444
+ entries: e.elements.map(r)
2445
+ }),
2446
+ JsdocTypeKeyof: (e, r) => ({
2447
+ type: "KEY_QUERY",
2448
+ value: r(e.element)
2449
+ }),
2450
+ JsdocTypeImport: (e) => ({
2451
+ type: "IMPORT",
2452
+ path: {
2453
+ type: "STRING_VALUE",
2454
+ quoteStyle: ge(e.element.meta.quote),
2455
+ string: e.element.value
2456
+ }
2457
+ }),
2458
+ JsdocTypeUndefined: () => ({
2459
+ type: "NAME",
2460
+ name: "undefined"
2461
+ }),
2462
+ JsdocTypeAny: () => ({
2463
+ type: "ANY"
2464
+ }),
2465
+ JsdocTypeFunction: (e, r) => {
2466
+ let a = et(e), l = {
2467
+ type: e.arrow ? "ARROW" : "FUNCTION",
2468
+ params: a.params.map((g) => {
2469
+ if (g.type === "JsdocTypeKeyValue") {
2470
+ if (g.right === void 0)
2471
+ throw new Error("Function parameter without ':' is not expected to be 'KEY_VALUE'");
2472
+ return {
2473
+ type: "NAMED_PARAMETER",
2474
+ name: g.key,
2475
+ typeName: r(g.right)
2476
+ };
2477
+ } else
2478
+ return r(g);
2479
+ }),
2480
+ new: null,
2481
+ returns: null
2482
+ };
2483
+ return a.this !== void 0 ? l.this = r(a.this) : e.arrow || (l.this = null), a.new !== void 0 && (l.new = r(a.new)), e.returnType !== void 0 && (l.returns = r(e.returnType)), l;
2484
+ },
2485
+ JsdocTypeGeneric: (e, r) => {
2486
+ let a = {
2487
+ type: "GENERIC",
2488
+ subject: r(e.left),
2489
+ objects: e.elements.map(r),
2490
+ meta: {
2491
+ syntax: e.meta.brackets === "square" ? "SQUARE_BRACKET" : e.meta.dot ? "ANGLE_BRACKET_WITH_DOT" : "ANGLE_BRACKET"
2492
+ }
2493
+ };
2494
+ return e.meta.brackets === "square" && e.elements[0].type === "JsdocTypeFunction" && !e.elements[0].parenthesis && (a.objects[0] = {
2495
+ type: "NAME",
2496
+ name: "function"
2497
+ }), a;
2498
+ },
2499
+ JsdocTypeObjectField: (e, r) => {
2500
+ if (typeof e.key != "string")
2501
+ throw new Error("Index signatures and mapped types are not supported");
2502
+ if (e.right === void 0)
2503
+ return {
2504
+ type: "RECORD_ENTRY",
2505
+ key: e.key,
2506
+ quoteStyle: ge(e.meta.quote),
2507
+ value: null,
2508
+ readonly: !1
2509
+ };
2510
+ let a = r(e.right);
2511
+ return e.optional && (a = {
2512
+ type: "OPTIONAL",
2513
+ value: a,
2514
+ meta: {
2515
+ syntax: "SUFFIX_KEY_QUESTION_MARK"
2516
+ }
2517
+ }), {
2518
+ type: "RECORD_ENTRY",
2519
+ key: e.key.toString(),
2520
+ quoteStyle: ge(e.meta.quote),
2521
+ value: a,
2522
+ readonly: !1
2523
+ };
2524
+ },
2525
+ JsdocTypeJsdocObjectField: () => {
2526
+ throw new Error("Keys may not be typed in jsdoctypeparser.");
2527
+ },
2528
+ JsdocTypeKeyValue: (e, r) => {
2529
+ if (e.right === void 0)
2530
+ return {
2531
+ type: "RECORD_ENTRY",
2532
+ key: e.key,
2533
+ quoteStyle: "none",
2534
+ value: null,
2535
+ readonly: !1
2536
+ };
2537
+ let a = r(e.right);
2538
+ return e.optional && (a = {
2539
+ type: "OPTIONAL",
2540
+ value: a,
2541
+ meta: {
2542
+ syntax: "SUFFIX_KEY_QUESTION_MARK"
2543
+ }
2544
+ }), {
2545
+ type: "RECORD_ENTRY",
2546
+ key: e.key,
2547
+ quoteStyle: "none",
2548
+ value: a,
2549
+ readonly: !1
2550
+ };
2551
+ },
2552
+ JsdocTypeObject: (e, r) => {
2553
+ let a = [];
2554
+ for (let l of e.elements)
2555
+ (l.type === "JsdocTypeObjectField" || l.type === "JsdocTypeJsdocObjectField") && a.push(r(l));
2556
+ return {
2557
+ type: "RECORD",
2558
+ entries: a
2559
+ };
2560
+ },
2561
+ JsdocTypeSpecialNamePath: (e) => {
2562
+ if (e.specialType !== "module")
2563
+ throw new Error(`jsdoctypeparser does not support type ${e.specialType} at this point.`);
2564
+ return {
2565
+ type: "MODULE",
2566
+ value: {
2567
+ type: "FILE_PATH",
2568
+ quoteStyle: ge(e.meta.quote),
2569
+ path: e.value
2570
+ }
2571
+ };
2572
+ },
2573
+ JsdocTypeNamePath: (e, r) => {
2574
+ let a = !1, l, g;
2575
+ e.right.type === "JsdocTypeSpecialNamePath" && e.right.specialType === "event" ? (a = !0, l = e.right.value, g = ge(e.right.meta.quote)) : (l = e.right.value, g = ge(e.right.meta.quote));
2576
+ let E = {
2577
+ type: rr(e.pathType),
2578
+ owner: r(e.left),
2579
+ name: l,
2580
+ quoteStyle: g,
2581
+ hasEventPrefix: a
2582
+ };
2583
+ if (E.owner.type === "MODULE") {
2584
+ let B = E.owner;
2585
+ return E.owner = E.owner.value, B.value = E, B;
2586
+ } else
2587
+ return E;
2588
+ },
2589
+ JsdocTypeUnion: (e, r) => je("UNION", e.elements.map(r)),
2590
+ JsdocTypeParenthesis: (e, r) => ({
2591
+ type: "PARENTHESIS",
2592
+ value: r(S(e.element))
2593
+ }),
2594
+ JsdocTypeNull: () => ({
2595
+ type: "NAME",
2596
+ name: "null"
2597
+ }),
2598
+ JsdocTypeUnknown: () => ({
2599
+ type: "UNKNOWN"
2600
+ }),
2601
+ JsdocTypeStringValue: (e) => ({
2602
+ type: "STRING_VALUE",
2603
+ quoteStyle: ge(e.meta.quote),
2604
+ string: e.value
2605
+ }),
2606
+ JsdocTypeIntersection: (e, r) => je("INTERSECTION", e.elements.map(r)),
2607
+ JsdocTypeNumber: (e) => ({
2608
+ type: "NUMBER_VALUE",
2609
+ number: e.value.toString()
2610
+ }),
2611
+ JsdocTypeSymbol: j,
2612
+ JsdocTypeProperty: j,
2613
+ JsdocTypePredicate: j,
2614
+ JsdocTypeMappedType: j,
2615
+ JsdocTypeIndexSignature: j,
2616
+ JsdocTypeAsserts: j,
2617
+ JsdocTypeReadonlyArray: j,
2618
+ JsdocTypeAssertsPlain: j,
2619
+ JsdocTypeConditional: j,
2620
+ JsdocTypeTypeParameter: j
2621
+ };
2622
+ function nr(e) {
2623
+ return xe(ur, e);
2624
+ }
2625
+ function ar() {
2626
+ return {
2627
+ JsdocTypeIntersection: (e, r) => ({
2628
+ type: "JsdocTypeIntersection",
2629
+ elements: e.elements.map(r)
2630
+ }),
2631
+ JsdocTypeGeneric: (e, r) => ({
2632
+ type: "JsdocTypeGeneric",
2633
+ left: r(e.left),
2634
+ elements: e.elements.map(r),
2635
+ meta: {
2636
+ dot: e.meta.dot,
2637
+ brackets: e.meta.brackets
2638
+ }
2639
+ }),
2640
+ JsdocTypeNullable: (e) => e,
2641
+ JsdocTypeUnion: (e, r) => ({
2642
+ type: "JsdocTypeUnion",
2643
+ elements: e.elements.map(r)
2644
+ }),
2645
+ JsdocTypeUnknown: (e) => e,
2646
+ JsdocTypeUndefined: (e) => e,
2647
+ JsdocTypeTypeof: (e, r) => ({
2648
+ type: "JsdocTypeTypeof",
2649
+ element: r(e.element)
2650
+ }),
2651
+ JsdocTypeSymbol: (e, r) => {
2652
+ let a = {
2653
+ type: "JsdocTypeSymbol",
2654
+ value: e.value
2655
+ };
2656
+ return e.element !== void 0 && (a.element = r(e.element)), a;
2657
+ },
2658
+ JsdocTypeOptional: (e, r) => ({
2659
+ type: "JsdocTypeOptional",
2660
+ element: r(e.element),
2661
+ meta: {
2662
+ position: e.meta.position
2663
+ }
2664
+ }),
2665
+ JsdocTypeObject: (e, r) => ({
2666
+ type: "JsdocTypeObject",
2667
+ meta: {
2668
+ separator: "comma"
2669
+ },
2670
+ elements: e.elements.map(r)
2671
+ }),
2672
+ JsdocTypeNumber: (e) => e,
2673
+ JsdocTypeNull: (e) => e,
2674
+ JsdocTypeNotNullable: (e, r) => ({
2675
+ type: "JsdocTypeNotNullable",
2676
+ element: r(e.element),
2677
+ meta: {
2678
+ position: e.meta.position
2679
+ }
2680
+ }),
2681
+ JsdocTypeSpecialNamePath: (e) => e,
2682
+ JsdocTypeObjectField: (e, r) => ({
2683
+ type: "JsdocTypeObjectField",
2684
+ key: e.key,
2685
+ right: e.right === void 0 ? void 0 : r(e.right),
2686
+ optional: e.optional,
2687
+ readonly: e.readonly,
2688
+ meta: e.meta
2689
+ }),
2690
+ JsdocTypeJsdocObjectField: (e, r) => ({
2691
+ type: "JsdocTypeJsdocObjectField",
2692
+ left: r(e.left),
2693
+ right: r(e.right)
2694
+ }),
2695
+ JsdocTypeKeyValue: (e, r) => ({
2696
+ type: "JsdocTypeKeyValue",
2697
+ key: e.key,
2698
+ right: e.right === void 0 ? void 0 : r(e.right),
2699
+ optional: e.optional,
2700
+ variadic: e.variadic
2701
+ }),
2702
+ JsdocTypeImport: (e, r) => ({
2703
+ type: "JsdocTypeImport",
2704
+ element: r(e.element)
2705
+ }),
2706
+ JsdocTypeAny: (e) => e,
2707
+ JsdocTypeStringValue: (e) => e,
2708
+ JsdocTypeNamePath: (e) => e,
2709
+ JsdocTypeVariadic: (e, r) => {
2710
+ let a = {
2711
+ type: "JsdocTypeVariadic",
2712
+ meta: {
2713
+ position: e.meta.position,
2714
+ squareBrackets: e.meta.squareBrackets
2715
+ }
2716
+ };
2717
+ return e.element !== void 0 && (a.element = r(e.element)), a;
2718
+ },
2719
+ JsdocTypeTuple: (e, r) => ({
2720
+ type: "JsdocTypeTuple",
2721
+ elements: e.elements.map(r)
2722
+ }),
2723
+ JsdocTypeName: (e) => e,
2724
+ JsdocTypeFunction: (e, r) => {
2725
+ let a = {
2726
+ type: "JsdocTypeFunction",
2727
+ arrow: e.arrow,
2728
+ parameters: e.parameters.map(r),
2729
+ constructor: e.constructor,
2730
+ parenthesis: e.parenthesis
2731
+ };
2732
+ return e.returnType !== void 0 && (a.returnType = r(e.returnType)), a;
2733
+ },
2734
+ JsdocTypeKeyof: (e, r) => ({
2735
+ type: "JsdocTypeKeyof",
2736
+ element: r(e.element)
2737
+ }),
2738
+ JsdocTypeParenthesis: (e, r) => ({
2739
+ type: "JsdocTypeParenthesis",
2740
+ element: r(e.element)
2741
+ }),
2742
+ JsdocTypeProperty: (e) => e,
2743
+ JsdocTypePredicate: (e, r) => ({
2744
+ type: "JsdocTypePredicate",
2745
+ left: r(e.left),
2746
+ right: r(e.right)
2747
+ }),
2748
+ JsdocTypeIndexSignature: (e, r) => ({
2749
+ type: "JsdocTypeIndexSignature",
2750
+ key: e.key,
2751
+ right: r(e.right)
2752
+ }),
2753
+ JsdocTypeMappedType: (e, r) => ({
2754
+ type: "JsdocTypeMappedType",
2755
+ key: e.key,
2756
+ right: r(e.right)
2757
+ }),
2758
+ JsdocTypeAsserts: (e, r) => ({
2759
+ type: "JsdocTypeAsserts",
2760
+ left: r(e.left),
2761
+ right: r(e.right)
2762
+ }),
2763
+ JsdocTypeReadonlyArray: (e, r) => ({
2764
+ type: "JsdocTypeReadonlyArray",
2765
+ element: r(e.element)
2766
+ }),
2767
+ JsdocTypeAssertsPlain: (e, r) => ({
2768
+ type: "JsdocTypeAssertsPlain",
2769
+ element: r(e.element)
2770
+ }),
2771
+ JsdocTypeConditional: (e, r) => ({
2772
+ type: "JsdocTypeConditional",
2773
+ checksType: r(e.checksType),
2774
+ extendsType: r(e.extendsType),
2775
+ trueType: r(e.trueType),
2776
+ falseType: r(e.falseType)
2777
+ }),
2778
+ JsdocTypeTypeParameter: (e, r) => ({
2779
+ type: "JsdocTypeTypeParameter",
2780
+ name: r(e.name),
2781
+ constraint: e.constraint !== void 0 ? r(e.constraint) : void 0,
2782
+ defaultValue: e.defaultValue !== void 0 ? r(e.defaultValue) : void 0
2783
+ })
2784
+ };
2785
+ }
2786
+ let rt = {
2787
+ JsdocTypeAny: [],
2788
+ JsdocTypeFunction: ["parameters", "returnType"],
2789
+ JsdocTypeGeneric: ["left", "elements"],
2790
+ JsdocTypeImport: [],
2791
+ JsdocTypeIndexSignature: ["right"],
2792
+ JsdocTypeIntersection: ["elements"],
2793
+ JsdocTypeKeyof: ["element"],
2794
+ JsdocTypeKeyValue: ["right"],
2795
+ JsdocTypeMappedType: ["right"],
2796
+ JsdocTypeName: [],
2797
+ JsdocTypeNamePath: ["left", "right"],
2798
+ JsdocTypeNotNullable: ["element"],
2799
+ JsdocTypeNull: [],
2800
+ JsdocTypeNullable: ["element"],
2801
+ JsdocTypeNumber: [],
2802
+ JsdocTypeObject: ["elements"],
2803
+ JsdocTypeObjectField: ["right"],
2804
+ JsdocTypeJsdocObjectField: ["left", "right"],
2805
+ JsdocTypeOptional: ["element"],
2806
+ JsdocTypeParenthesis: ["element"],
2807
+ JsdocTypeSpecialNamePath: [],
2808
+ JsdocTypeStringValue: [],
2809
+ JsdocTypeSymbol: ["element"],
2810
+ JsdocTypeTuple: ["elements"],
2811
+ JsdocTypeTypeof: ["element"],
2812
+ JsdocTypeUndefined: [],
2813
+ JsdocTypeUnion: ["elements"],
2814
+ JsdocTypeUnknown: [],
2815
+ JsdocTypeVariadic: ["element"],
2816
+ JsdocTypeProperty: [],
2817
+ JsdocTypePredicate: ["left", "right"],
2818
+ JsdocTypeAsserts: ["left", "right"],
2819
+ JsdocTypeReadonlyArray: ["element"],
2820
+ JsdocTypeAssertsPlain: ["element"],
2821
+ JsdocTypeConditional: ["checksType", "extendsType", "trueType", "falseType"],
2822
+ JsdocTypeTypeParameter: ["name", "constraint", "defaultValue"]
2823
+ };
2824
+ function Ue(e, r, a, l, g) {
2825
+ l?.(e, r, a);
2826
+ let E = rt[e.type];
2827
+ for (let B of E) {
2828
+ let M = e[B];
2829
+ if (M !== void 0)
2830
+ if (Array.isArray(M))
2831
+ for (let K of M)
2832
+ Ue(K, e, B, l, g);
2833
+ else
2834
+ Ue(M, e, B, l, g);
2835
+ }
2836
+ g?.(e, r, a);
2837
+ }
2838
+ function or(e, r, a) {
2839
+ Ue(e, void 0, void 0, r, a);
2840
+ }
2841
+ n.catharsisTransform = tr, n.identityTransformRules = ar, n.jtpTransform = nr, n.parse = Ze, n.stringify = Qt, n.stringifyRules = tt, n.transform = xe, n.traverse = or, n.tryParse = Wt, n.visitorKeys = rt;
2842
+ }));
2843
+ }
2844
+ }), dr = (t) => t.name === "literal", yr = (t) => t.value.replace(/['|"]/g, ""), mr = (t) => {
2845
+ switch (t.type) {
2846
+ case "function":
2847
+ return { name: "function" };
2848
+ case "object":
2849
+ let u = {};
2850
+ return t.signature.properties.forEach((n) => {
2851
+ u[n.key] = Je(n.value);
2852
+ }), {
2853
+ name: "object",
2854
+ value: u
2855
+ };
2856
+ default:
2857
+ throw new dt({ type: t, language: "Flow" });
2858
+ }
2859
+ }, Je = (t) => {
2860
+ let { name: u, raw: n } = t, o = {};
2861
+ switch (typeof n < "u" && (o.raw = n), t.name) {
2862
+ case "literal":
2863
+ return { ...o, name: "other", value: t.value };
2864
+ case "string":
2865
+ case "number":
2866
+ case "symbol":
2867
+ case "boolean":
2868
+ return { ...o, name: u };
2869
+ case "Array":
2870
+ return { ...o, name: "array", value: t.elements.map(Je) };
2871
+ case "signature":
2872
+ return { ...o, ...mr(t) };
2873
+ case "union":
2874
+ return t.elements?.every(dr) ? { ...o, name: "enum", value: t.elements?.map(yr) } : { ...o, name: u, value: t.elements?.map(Je) };
2875
+ case "intersection":
2876
+ return { ...o, name: u, value: t.elements?.map(Je) };
2877
+ default:
2878
+ return { ...o, name: "other", value: u };
2879
+ }
2880
+ }, yt = /^['"]|['"]$/g, fr = (t) => t.replace(yt, ""), hr = (t) => yt.test(t), mt = (t) => {
2881
+ let u = fr(t);
2882
+ return hr(t) || Number.isNaN(Number(u)) ? u : Number(u);
2883
+ }, gr = /^\(.*\) => /, Se = (t) => {
2884
+ let { name: u, raw: n, computed: o, value: s } = t, i = {};
2885
+ switch (typeof n < "u" && (i.raw = n), u) {
2886
+ case "enum": {
2887
+ let d = o ? s : s.map((m) => mt(m.value));
2888
+ return { ...i, name: u, value: d };
2889
+ }
2890
+ case "string":
2891
+ case "number":
2892
+ case "symbol":
2893
+ return { ...i, name: u };
2894
+ case "func":
2895
+ return { ...i, name: "function" };
2896
+ case "bool":
2897
+ case "boolean":
2898
+ return { ...i, name: "boolean" };
2899
+ case "arrayOf":
2900
+ case "array":
2901
+ return { ...i, name: "array", value: s && Se(s) };
2902
+ case "object":
2903
+ return { ...i, name: u };
2904
+ case "objectOf":
2905
+ return { ...i, name: u, value: Se(s) };
2906
+ case "shape":
2907
+ case "exact":
2908
+ let p = cr(s, (d) => Se(d));
2909
+ return { ...i, name: "object", value: p };
2910
+ case "union":
2911
+ return { ...i, name: "union", value: s.map((d) => Se(d)) };
2912
+ case "instanceOf":
2913
+ case "element":
2914
+ case "elementType":
2915
+ default: {
2916
+ if (u?.indexOf("|") > 0)
2917
+ try {
2918
+ let f = u.split("|").map((b) => JSON.parse(b));
2919
+ return { ...i, name: "enum", value: f };
2920
+ } catch {
2921
+ }
2922
+ let d = s ? `${u}(${s})` : u, m = gr.test(u) ? "function" : "other";
2923
+ return { ...i, name: m, value: d };
2924
+ }
2925
+ }
2926
+ }, Ar = (t) => {
2927
+ switch (t.type) {
2928
+ case "function":
2929
+ return { name: "function" };
2930
+ case "object":
2931
+ let u = {};
2932
+ return t.signature.properties.forEach((n) => {
2933
+ u[n.key] = Ne(n.value);
2934
+ }), {
2935
+ name: "object",
2936
+ value: u
2937
+ };
2938
+ default:
2939
+ throw new dt({ type: t, language: "Typescript" });
2940
+ }
2941
+ }, Ne = (t) => {
2942
+ let { name: u, raw: n } = t, o = {};
2943
+ switch (typeof n < "u" && (o.raw = n), t.name) {
2944
+ case "string":
2945
+ case "number":
2946
+ case "symbol":
2947
+ case "boolean":
2948
+ return { ...o, name: u };
2949
+ case "Array":
2950
+ return { ...o, name: "array", value: t.elements.map(Ne) };
2951
+ case "signature":
2952
+ return { ...o, ...Ar(t) };
2953
+ case "union":
2954
+ let s;
2955
+ return t.elements?.every((i) => i.name === "literal") ? s = {
2956
+ ...o,
2957
+ name: "enum",
2958
+ // @ts-expect-error fix types
2959
+ value: t.elements?.map((i) => mt(i.value))
2960
+ } : s = { ...o, name: u, value: t.elements?.map(Ne) }, s;
2961
+ case "intersection":
2962
+ return { ...o, name: u, value: t.elements?.map(Ne) };
2963
+ default:
2964
+ return { ...o, name: "other", value: u };
2965
+ }
2966
+ }, ze = (t) => {
2967
+ let { type: u, tsType: n, flowType: o } = t;
2968
+ try {
2969
+ if (u != null)
2970
+ return Se(u);
2971
+ if (n != null)
2972
+ return Ne(n);
2973
+ if (o != null)
2974
+ return Je(o);
2975
+ } catch (s) {
2976
+ console.error(s);
2977
+ }
2978
+ return null;
2979
+ }, Tr = /* @__PURE__ */ ((t) => (t.JAVASCRIPT = "JavaScript", t.FLOW = "Flow", t.TYPESCRIPT = "TypeScript", t.UNKNOWN = "Unknown", t))(Tr || {}), br = ["null", "undefined"];
2980
+ function Ye(t) {
2981
+ return br.some((u) => u === t);
2982
+ }
2983
+ var Dr = (t) => {
2984
+ if (!t)
2985
+ return "";
2986
+ if (typeof t == "string")
2987
+ return t;
2988
+ throw new Error(`Description: expected string, got: ${JSON.stringify(t)}`);
2989
+ };
2990
+ function ft(t) {
2991
+ return !!t.__docgenInfo;
2992
+ }
2993
+ function Er(t) {
2994
+ return t != null && Object.keys(t).length > 0;
2995
+ }
2996
+ function vr(t, u) {
2997
+ return ft(t) ? t.__docgenInfo[u] : null;
2998
+ }
2999
+ function wr(t) {
3000
+ return ft(t) ? Dr(t.__docgenInfo.description) : "";
3001
+ }
3002
+ var ye;
3003
+ (function(t) {
3004
+ t.start = "/**", t.nostart = "/***", t.delim = "*", t.end = "*/";
3005
+ })(ye = ye || (ye = {}));
3006
+ function Cr(t) {
3007
+ return /^\s+$/.test(t);
3008
+ }
3009
+ function xr(t) {
3010
+ let u = t.match(/\r+$/);
3011
+ return u == null ? ["", t] : [t.slice(-u[0].length), t.slice(0, -u[0].length)];
3012
+ }
3013
+ function De(t) {
3014
+ let u = t.match(/^\s+/);
3015
+ return u == null ? ["", t] : [t.slice(0, u[0].length), t.slice(u[0].length)];
3016
+ }
3017
+ function Fr(t) {
3018
+ return t.split(/\n/);
3019
+ }
3020
+ function Br(t = {}) {
3021
+ return Object.assign({ tag: "", name: "", type: "", optional: !1, description: "", problems: [], source: [] }, t);
3022
+ }
3023
+ function Sr(t = {}) {
3024
+ return Object.assign({ start: "", delimiter: "", postDelimiter: "", tag: "", postTag: "", name: "", postName: "", type: "", postType: "", description: "", end: "", lineEnd: "" }, t);
3025
+ }
3026
+ var Jr = /^@\S+/;
3027
+ function Nr({ fence: t = "```" } = {}) {
3028
+ let u = Or(t), n = (o, s) => u(o) ? !s : s;
3029
+ return function(o) {
3030
+ let s = [[]], i = !1;
3031
+ for (let p of o)
3032
+ Jr.test(p.tokens.description) && !i ? s.push([p]) : s[s.length - 1].push(p), i = n(p.tokens.description, i);
3033
+ return s;
3034
+ };
3035
+ }
3036
+ function Or(t) {
3037
+ return typeof t == "string" ? (u) => u.split(t).length % 2 === 0 : t;
3038
+ }
3039
+ function Pr({ startLine: t = 0, markers: u = ye } = {}) {
3040
+ let n = null, o = t;
3041
+ return function(s) {
3042
+ let i = s, p = Sr();
3043
+ if ([p.lineEnd, i] = xr(i), [p.start, i] = De(i), n === null && i.startsWith(u.start) && !i.startsWith(u.nostart) && (n = [], p.delimiter = i.slice(0, u.start.length), i = i.slice(u.start.length), [p.postDelimiter, i] = De(i)), n === null)
3044
+ return o++, null;
3045
+ let d = i.trimRight().endsWith(u.end);
3046
+ if (p.delimiter === "" && i.startsWith(u.delim) && !i.startsWith(u.end) && (p.delimiter = u.delim, i = i.slice(u.delim.length), [p.postDelimiter, i] = De(i)), d) {
3047
+ let m = i.trimRight();
3048
+ p.end = i.slice(m.length - u.end.length), i = m.slice(0, -u.end.length);
3049
+ }
3050
+ if (p.description = i, n.push({ number: o, source: s, tokens: p }), o++, d) {
3051
+ let m = n.slice();
3052
+ return n = null, m;
3053
+ }
3054
+ return null;
3055
+ };
3056
+ }
3057
+ function qr({ tokenizers: t }) {
3058
+ return function(u) {
3059
+ var n;
3060
+ let o = Br({ source: u });
3061
+ for (let s of t)
3062
+ if (o = s(o), !((n = o.problems[o.problems.length - 1]) === null || n === void 0) && n.critical)
3063
+ break;
3064
+ return o;
3065
+ };
3066
+ }
3067
+ function kr() {
3068
+ return (t) => {
3069
+ let { tokens: u } = t.source[0], n = u.description.match(/\s*(@(\S+))(\s*)/);
3070
+ return n === null ? (t.problems.push({
3071
+ code: "spec:tag:prefix",
3072
+ message: 'tag should start with "@" symbol',
3073
+ line: t.source[0].number,
3074
+ critical: !0
3075
+ }), t) : (u.tag = n[1], u.postTag = n[3], u.description = u.description.slice(n[0].length), t.tag = n[2], t);
3076
+ };
3077
+ }
3078
+ function _r(t = "compact") {
3079
+ let u = Rr(t);
3080
+ return (n) => {
3081
+ let o = 0, s = [];
3082
+ for (let [d, { tokens: m }] of n.source.entries()) {
3083
+ let f = "";
3084
+ if (d === 0 && m.description[0] !== "{")
3085
+ return n;
3086
+ for (let b of m.description)
3087
+ if (b === "{" && o++, b === "}" && o--, f += b, o === 0)
3088
+ break;
3089
+ if (s.push([m, f]), o === 0)
3090
+ break;
3091
+ }
3092
+ if (o !== 0)
3093
+ return n.problems.push({
3094
+ code: "spec:type:unpaired-curlies",
3095
+ message: "unpaired curlies",
3096
+ line: n.source[0].number,
3097
+ critical: !0
3098
+ }), n;
3099
+ let i = [], p = s[0][0].postDelimiter.length;
3100
+ for (let [d, [m, f]] of s.entries())
3101
+ m.type = f, d > 0 && (m.type = m.postDelimiter.slice(p) + f, m.postDelimiter = m.postDelimiter.slice(0, p)), [m.postType, m.description] = De(m.description.slice(f.length)), i.push(m.type);
3102
+ return i[0] = i[0].slice(1), i[i.length - 1] = i[i.length - 1].slice(0, -1), n.type = u(i), n;
3103
+ };
3104
+ }
3105
+ var Lr = (t) => t.trim();
3106
+ function Rr(t) {
3107
+ return t === "compact" ? (u) => u.map(Lr).join("") : t === "preserve" ? (u) => u.join(`
3108
+ `) : t;
3109
+ }
3110
+ var Ir = (t) => t && t.startsWith('"') && t.endsWith('"');
3111
+ function jr() {
3112
+ let t = (u, { tokens: n }, o) => n.type === "" ? u : o;
3113
+ return (u) => {
3114
+ let { tokens: n } = u.source[u.source.reduce(t, 0)], o = n.description.trimLeft(), s = o.split('"');
3115
+ if (s.length > 1 && s[0] === "" && s.length % 2 === 1)
3116
+ return u.name = s[1], n.name = `"${s[1]}"`, [n.postName, n.description] = De(o.slice(n.name.length)), u;
3117
+ let i = 0, p = "", d = !1, m;
3118
+ for (let b of o) {
3119
+ if (i === 0 && Cr(b))
3120
+ break;
3121
+ b === "[" && i++, b === "]" && i--, p += b;
3122
+ }
3123
+ if (i !== 0)
3124
+ return u.problems.push({
3125
+ code: "spec:name:unpaired-brackets",
3126
+ message: "unpaired brackets",
3127
+ line: u.source[0].number,
3128
+ critical: !0
3129
+ }), u;
3130
+ let f = p;
3131
+ if (p[0] === "[" && p[p.length - 1] === "]") {
3132
+ d = !0, p = p.slice(1, -1);
3133
+ let b = p.split("=");
3134
+ if (p = b[0].trim(), b[1] !== void 0 && (m = b.slice(1).join("=").trim()), p === "")
3135
+ return u.problems.push({
3136
+ code: "spec:name:empty-name",
3137
+ message: "empty name",
3138
+ line: u.source[0].number,
3139
+ critical: !0
3140
+ }), u;
3141
+ if (m === "")
3142
+ return u.problems.push({
3143
+ code: "spec:name:empty-default",
3144
+ message: "empty default value",
3145
+ line: u.source[0].number,
3146
+ critical: !0
3147
+ }), u;
3148
+ if (!Ir(m) && /=(?!>)/.test(m))
3149
+ return u.problems.push({
3150
+ code: "spec:name:invalid-default",
3151
+ message: "invalid default value syntax",
3152
+ line: u.source[0].number,
3153
+ critical: !0
3154
+ }), u;
3155
+ }
3156
+ return u.optional = d, u.name = p, n.name = f, m !== void 0 && (u.default = m), [n.postName, n.description] = De(o.slice(n.name.length)), u;
3157
+ };
3158
+ }
3159
+ function Ur(t = "compact", u = ye) {
3160
+ let n = ht(t);
3161
+ return (o) => (o.description = n(o.source, u), o);
3162
+ }
3163
+ function ht(t) {
3164
+ return t === "compact" ? Mr : t === "preserve" ? Kr : t;
3165
+ }
3166
+ function Mr(t, u = ye) {
3167
+ return t.map(({ tokens: { description: n } }) => n.trim()).filter((n) => n !== "").join(" ");
3168
+ }
3169
+ var Vr = (t, { tokens: u }, n) => u.type === "" ? t : n, Hr = ({ tokens: t }) => (t.delimiter === "" ? t.start : t.postDelimiter.slice(1)) + t.description;
3170
+ function Kr(t, u = ye) {
3171
+ if (t.length === 0)
3172
+ return "";
3173
+ t[0].tokens.description === "" && t[0].tokens.delimiter === u.start && (t = t.slice(1));
3174
+ let n = t[t.length - 1];
3175
+ return n !== void 0 && n.tokens.description === "" && n.tokens.end.endsWith(u.end) && (t = t.slice(0, -1)), t = t.slice(t.reduce(Vr, 0)), t.map(Hr).join(`
3176
+ `);
3177
+ }
3178
+ function Gr({ startLine: t = 0, fence: u = "```", spacing: n = "compact", markers: o = ye, tokenizers: s = [
3179
+ kr(),
3180
+ _r(n),
3181
+ jr(),
3182
+ Ur(n)
3183
+ ] } = {}) {
3184
+ if (t < 0 || t % 1 > 0)
3185
+ throw new Error("Invalid startLine");
3186
+ let i = Pr({ startLine: t, markers: o }), p = Nr({ fence: u }), d = qr({ tokenizers: s }), m = ht(n);
3187
+ return function(f) {
3188
+ let b = [];
3189
+ for (let D of Fr(f)) {
3190
+ let v = i(D);
3191
+ if (v === null)
3192
+ continue;
3193
+ let C = p(v), F = C.slice(1).map(d);
3194
+ b.push({
3195
+ description: m(C[0], o),
3196
+ tags: F,
3197
+ source: v,
3198
+ problems: F.reduce((w, L) => w.concat(L.problems), [])
3199
+ });
3200
+ }
3201
+ return b;
3202
+ };
3203
+ }
3204
+ function zr(t, u = {}) {
3205
+ return Gr(u)(t);
3206
+ }
3207
+ var Xe = Ae(pr(), 1);
3208
+ function Yr(t) {
3209
+ return t != null && t.includes("@");
3210
+ }
3211
+ function Xr(t) {
3212
+ let u = `/**
3213
+ ` + (t ?? "").split(`
3214
+ `).map((o) => ` * ${o}`).join(`
3215
+ `) + `
3216
+ */`, n = zr(u, {
3217
+ spacing: "preserve"
3218
+ });
3219
+ if (!n || n.length === 0)
3220
+ throw new Error("Cannot parse JSDoc tags.");
3221
+ return n[0];
3222
+ }
3223
+ var Wr = {
3224
+ tags: ["param", "arg", "argument", "returns", "ignore", "deprecated"]
3225
+ }, $r = (t, u = Wr) => {
3226
+ if (!Yr(t))
3227
+ return {
3228
+ includesJsDoc: !1,
3229
+ ignore: !1
3230
+ };
3231
+ let n = Xr(t), o = Qr(n, u.tags);
3232
+ return o.ignore ? {
3233
+ includesJsDoc: !0,
3234
+ ignore: !0
3235
+ } : {
3236
+ includesJsDoc: !0,
3237
+ ignore: !1,
3238
+ // Always use the parsed description to ensure JSDoc is removed from the description.
3239
+ description: n.description.trim(),
3240
+ extractedTags: o
3241
+ };
3242
+ };
3243
+ function Qr(t, u) {
3244
+ let n = {
3245
+ params: null,
3246
+ deprecated: null,
3247
+ returns: null,
3248
+ ignore: !1
3249
+ };
3250
+ for (let o of t.tags)
3251
+ if (!(u !== void 0 && !u.includes(o.tag)))
3252
+ if (o.tag === "ignore") {
3253
+ n.ignore = !0;
3254
+ break;
3255
+ } else
3256
+ switch (o.tag) {
3257
+ // arg & argument are aliases for param.
3258
+ case "param":
3259
+ case "arg":
3260
+ case "argument": {
3261
+ let s = eu(o);
3262
+ s != null && (n.params == null && (n.params = []), n.params.push(s));
3263
+ break;
3264
+ }
3265
+ case "deprecated": {
3266
+ let s = tu(o);
3267
+ s != null && (n.deprecated = s);
3268
+ break;
3269
+ }
3270
+ case "returns": {
3271
+ let s = ru(o);
3272
+ s != null && (n.returns = s);
3273
+ break;
3274
+ }
3275
+ }
3276
+ return n;
3277
+ }
3278
+ function Zr(t) {
3279
+ return t.replace(/[\.-]$/, "");
3280
+ }
3281
+ function eu(t) {
3282
+ if (!t.name || t.name === "-")
3283
+ return null;
3284
+ let u = Tt(t.type);
3285
+ return {
3286
+ name: t.name,
3287
+ type: u,
3288
+ description: At(t.description),
3289
+ getPrettyName: () => Zr(t.name),
3290
+ getTypeName: () => u ? bt(u) : null
3291
+ };
3292
+ }
3293
+ function tu(t) {
3294
+ return t.name ? gt(t.name, t.description) : null;
3295
+ }
3296
+ function gt(t, u) {
3297
+ let n = t === "" ? u : `${t} ${u}`;
3298
+ return At(n);
3299
+ }
3300
+ function At(t) {
3301
+ let u = t.replace(/^- /g, "").trim();
3302
+ return u === "" ? null : u;
3303
+ }
3304
+ function ru(t) {
3305
+ let u = Tt(t.type);
3306
+ return u ? {
3307
+ type: u,
3308
+ description: gt(t.name, t.description),
3309
+ getTypeName: () => bt(u)
3310
+ } : null;
3311
+ }
3312
+ var me = (0, Xe.stringifyRules)(), uu = me.JsdocTypeObject;
3313
+ me.JsdocTypeAny = () => "any";
3314
+ me.JsdocTypeObject = (t, u) => `(${uu(t, u)})`;
3315
+ me.JsdocTypeOptional = (t, u) => u(t.element);
3316
+ me.JsdocTypeNullable = (t, u) => u(t.element);
3317
+ me.JsdocTypeNotNullable = (t, u) => u(t.element);
3318
+ me.JsdocTypeUnion = (t, u) => t.elements.map(u).join("|");
3319
+ function Tt(t) {
3320
+ try {
3321
+ return (0, Xe.parse)(t, "typescript");
3322
+ } catch {
3323
+ return null;
3324
+ }
3325
+ }
3326
+ function bt(t) {
3327
+ return (0, Xe.transform)(me, t);
3328
+ }
3329
+ function Dt(t) {
3330
+ return t.length > 90;
3331
+ }
3332
+ function nu(t) {
3333
+ return t.length > 50;
3334
+ }
3335
+ function W(t, u) {
3336
+ return t === u ? { summary: t } : { summary: t, detail: u };
3337
+ }
3338
+ function au(t, u) {
3339
+ if (t != null) {
3340
+ let { value: n } = t;
3341
+ if (!Ye(n))
3342
+ return nu(n) ? W(u?.name, n) : W(n);
3343
+ }
3344
+ return null;
3345
+ }
3346
+ function Et({ name: t, value: u, elements: n, raw: o }) {
3347
+ return u ?? (n != null ? n.map(Et).join(" | ") : o ?? t);
3348
+ }
3349
+ function ou({ name: t, raw: u, elements: n }) {
3350
+ return n != null ? W(n.map(Et).join(" | ")) : u != null ? W(u.replace(/^\|\s*/, "")) : W(t);
3351
+ }
3352
+ function iu({ type: t, raw: u }) {
3353
+ return u != null ? W(u) : W(t);
3354
+ }
3355
+ function su({ type: t, raw: u }) {
3356
+ return u != null ? Dt(u) ? W(t, u) : W(u) : W(t);
3357
+ }
3358
+ function lu(t) {
3359
+ let { type: u } = t;
3360
+ return u === "object" ? su(t) : iu(t);
3361
+ }
3362
+ function cu({ name: t, raw: u }) {
3363
+ return u != null ? Dt(u) ? W(t, u) : W(u) : W(t);
3364
+ }
3365
+ function pu(t) {
3366
+ if (t == null)
3367
+ return null;
3368
+ switch (t.name) {
3369
+ case "union":
3370
+ return ou(t);
3371
+ case "signature":
3372
+ return lu(t);
3373
+ default:
3374
+ return cu(t);
3375
+ }
3376
+ }
3377
+ var du = (t, u) => {
3378
+ let { flowType: n, description: o, required: s, defaultValue: i } = u;
3379
+ return {
3380
+ name: t,
3381
+ type: pu(n),
3382
+ required: s,
3383
+ description: o,
3384
+ defaultValue: au(i ?? null, n ?? null)
3385
+ };
3386
+ };
3387
+ function yu({ defaultValue: t }) {
3388
+ if (t != null) {
3389
+ let { value: u } = t;
3390
+ if (!Ye(u))
3391
+ return W(u);
3392
+ }
3393
+ return null;
3394
+ }
3395
+ function mu({ tsType: t, required: u }) {
3396
+ if (t == null)
3397
+ return null;
3398
+ let n = t.name;
3399
+ return u || (n = n.replace(" | undefined", "")), W(
3400
+ ["Array", "Record", "signature"].includes(t.name) ? t.raw : n
3401
+ );
3402
+ }
3403
+ var fu = (t, u) => {
3404
+ let { description: n, required: o } = u;
3405
+ return {
3406
+ name: t,
3407
+ type: mu(u),
3408
+ required: o,
3409
+ description: n,
3410
+ defaultValue: yu(u)
3411
+ };
3412
+ };
3413
+ function hu(t) {
3414
+ return t != null ? W(t.name) : null;
3415
+ }
3416
+ function gu(t) {
3417
+ let { computed: u, func: n } = t;
3418
+ return typeof u > "u" && typeof n > "u";
3419
+ }
3420
+ function Au(t) {
3421
+ return t ? t.name === "string" ? !0 : t.name === "enum" ? Array.isArray(t.value) && t.value.every(
3422
+ ({ value: u }) => typeof u == "string" && u[0] === '"' && u[u.length - 1] === '"'
3423
+ ) : !1 : !1;
3424
+ }
3425
+ function Tu(t, u) {
3426
+ if (t != null) {
3427
+ let { value: n } = t;
3428
+ if (!Ye(n))
3429
+ return gu(t) && Au(u) ? W(JSON.stringify(n)) : W(n);
3430
+ }
3431
+ return null;
3432
+ }
3433
+ function vt(t, u, n) {
3434
+ let { description: o, required: s, defaultValue: i } = n;
3435
+ return {
3436
+ name: t,
3437
+ type: hu(u),
3438
+ required: s,
3439
+ description: o,
3440
+ defaultValue: Tu(i, u)
3441
+ };
3442
+ }
3443
+ function Le(t, u) {
3444
+ if (u?.includesJsDoc) {
3445
+ let { description: n, extractedTags: o } = u;
3446
+ n != null && (t.description = u.description);
3447
+ let s = {
3448
+ ...o,
3449
+ params: o?.params?.map(
3450
+ (i) => ({
3451
+ name: i.getPrettyName(),
3452
+ description: i.description
3453
+ })
3454
+ )
3455
+ };
3456
+ Object.values(s).filter(Boolean).length > 0 && (t.jsDocTags = s);
3457
+ }
3458
+ return t;
3459
+ }
3460
+ var bu = (t, u, n) => {
3461
+ let o = vt(t, u.type, u);
3462
+ return o.sbType = ze(u), Le(o, n);
3463
+ }, Du = (t, u, n) => {
3464
+ let o = fu(t, u);
3465
+ return o.sbType = ze(u), Le(o, n);
3466
+ }, Eu = (t, u, n) => {
3467
+ let o = du(t, u);
3468
+ return o.sbType = ze(u), Le(o, n);
3469
+ }, vu = (t, u, n) => {
3470
+ let o = vt(t, { name: "unknown" }, u);
3471
+ return Le(o, n);
3472
+ }, wt = (t) => {
3473
+ switch (t) {
3474
+ case "JavaScript":
3475
+ return bu;
3476
+ case "TypeScript":
3477
+ return Du;
3478
+ case "Flow":
3479
+ return Eu;
3480
+ default:
3481
+ return vu;
3482
+ }
3483
+ }, Ct = (t) => t.type != null ? "JavaScript" : t.flowType != null ? "Flow" : t.tsType != null ? "TypeScript" : "Unknown", wu = (t) => {
3484
+ let u = Ct(t[0]), n = wt(u);
3485
+ return t.map((o) => {
3486
+ let s = o;
3487
+ return o.type?.elements && (s = {
3488
+ ...o,
3489
+ type: {
3490
+ ...o.type,
3491
+ value: o.type.elements
3492
+ }
3493
+ }), xt(s.name, s, u, n);
3494
+ });
3495
+ }, Cu = (t) => {
3496
+ let u = Object.keys(t), n = Ct(t[u[0]]), o = wt(n);
3497
+ return u.map((s) => {
3498
+ let i = t[s];
3499
+ return i != null ? xt(s, i, n, o) : null;
3500
+ }).filter(Boolean);
3501
+ }, en = (t, u) => {
3502
+ let n = vr(t, u);
3503
+ return Er(n) ? Array.isArray(n) ? wu(n) : Cu(n) : [];
3504
+ };
3505
+ function xt(t, u, n, o) {
3506
+ let s = $r(u.description);
3507
+ return s.includesJsDoc && s.ignore ? null : {
3508
+ propDef: o(t, u, s),
3509
+ jsDocTags: s.extractedTags,
3510
+ docgenInfo: u,
3511
+ typeSystem: n
3512
+ };
3513
+ }
3514
+ function tn(t) {
3515
+ return t != null ? wr(t) : "";
3516
+ }
3517
+ var We = (...t) => {
3518
+ let u = {}, n = t.filter(Boolean), o = n.reduce((s, i) => (Object.entries(i).forEach(([p, d]) => {
3519
+ let m = s[p];
3520
+ Array.isArray(d) || typeof m > "u" ? s[p] = d : Me(d) && Me(m) ? u[p] = !0 : typeof d < "u" && (s[p] = d);
3521
+ }), s), {});
3522
+ return Object.keys(u).forEach((s) => {
3523
+ let i = n.filter(Boolean).map((p) => p[s]).filter((p) => typeof p < "u");
3524
+ i.every((p) => Me(p)) ? o[s] = We(...i) : o[s] = i[i.length - 1];
3525
+ }), o;
3526
+ }, rn = (t) => {
3527
+ let {
3528
+ component: u,
3529
+ argTypes: n,
3530
+ parameters: { docs: o = {} }
3531
+ } = t, { extractArgTypes: s } = o;
3532
+ if (!s || !u)
3533
+ return n;
3534
+ let i = s(u);
3535
+ return i ? We(i, n) : n;
3536
+ }, xu = "storybook/docs", Fu = `${xu}/snippet-rendered`, Bu = /* @__PURE__ */ ((t) => (t.AUTO = "auto", t.CODE = "code", t.DYNAMIC = "dynamic", t))(Bu || {}), Ft = $({
3537
+ "../node_modules/entities/lib/maps/entities.json"(t, u) {
3538
+ u.exports = { Aacute: "Á", aacute: "á", Abreve: "Ă", abreve: "ă", ac: "∾", acd: "∿", acE: "∾̳", Acirc: "Â", acirc: "â", acute: "´", Acy: "А", acy: "а", AElig: "Æ", aelig: "æ", af: "⁡", Afr: "𝔄", afr: "𝔞", Agrave: "À", agrave: "à", alefsym: "ℵ", aleph: "ℵ", Alpha: "Α", alpha: "α", Amacr: "Ā", amacr: "ā", amalg: "⨿", amp: "&", AMP: "&", andand: "⩕", And: "⩓", and: "∧", andd: "⩜", andslope: "⩘", andv: "⩚", ang: "∠", ange: "⦤", angle: "∠", angmsdaa: "⦨", angmsdab: "⦩", angmsdac: "⦪", angmsdad: "⦫", angmsdae: "⦬", angmsdaf: "⦭", angmsdag: "⦮", angmsdah: "⦯", angmsd: "∡", angrt: "∟", angrtvb: "⊾", angrtvbd: "⦝", angsph: "∢", angst: "Å", angzarr: "⍼", Aogon: "Ą", aogon: "ą", Aopf: "𝔸", aopf: "𝕒", apacir: "⩯", ap: "≈", apE: "⩰", ape: "≊", apid: "≋", apos: "'", ApplyFunction: "⁡", approx: "≈", approxeq: "≊", Aring: "Å", aring: "å", Ascr: "𝒜", ascr: "𝒶", Assign: "≔", ast: "*", asymp: "≈", asympeq: "≍", Atilde: "Ã", atilde: "ã", Auml: "Ä", auml: "ä", awconint: "∳", awint: "⨑", backcong: "≌", backepsilon: "϶", backprime: "‵", backsim: "∽", backsimeq: "⋍", Backslash: "∖", Barv: "⫧", barvee: "⊽", barwed: "⌅", Barwed: "⌆", barwedge: "⌅", bbrk: "⎵", bbrktbrk: "⎶", bcong: "≌", Bcy: "Б", bcy: "б", bdquo: "„", becaus: "∵", because: "∵", Because: "∵", bemptyv: "⦰", bepsi: "϶", bernou: "ℬ", Bernoullis: "ℬ", Beta: "Β", beta: "β", beth: "ℶ", between: "≬", Bfr: "𝔅", bfr: "𝔟", bigcap: "⋂", bigcirc: "◯", bigcup: "⋃", bigodot: "⨀", bigoplus: "⨁", bigotimes: "⨂", bigsqcup: "⨆", bigstar: "★", bigtriangledown: "▽", bigtriangleup: "△", biguplus: "⨄", bigvee: "⋁", bigwedge: "⋀", bkarow: "⤍", blacklozenge: "⧫", blacksquare: "▪", blacktriangle: "▴", blacktriangledown: "▾", blacktriangleleft: "◂", blacktriangleright: "▸", blank: "␣", blk12: "▒", blk14: "░", blk34: "▓", block: "█", bne: "=⃥", bnequiv: "≡⃥", bNot: "⫭", bnot: "⌐", Bopf: "𝔹", bopf: "𝕓", bot: "⊥", bottom: "⊥", bowtie: "⋈", boxbox: "⧉", boxdl: "┐", boxdL: "╕", boxDl: "╖", boxDL: "╗", boxdr: "┌", boxdR: "╒", boxDr: "╓", boxDR: "╔", boxh: "─", boxH: "═", boxhd: "┬", boxHd: "╤", boxhD: "╥", boxHD: "╦", boxhu: "┴", boxHu: "╧", boxhU: "╨", boxHU: "╩", boxminus: "⊟", boxplus: "⊞", boxtimes: "⊠", boxul: "┘", boxuL: "╛", boxUl: "╜", boxUL: "╝", boxur: "└", boxuR: "╘", boxUr: "╙", boxUR: "╚", boxv: "│", boxV: "║", boxvh: "┼", boxvH: "╪", boxVh: "╫", boxVH: "╬", boxvl: "┤", boxvL: "╡", boxVl: "╢", boxVL: "╣", boxvr: "├", boxvR: "╞", boxVr: "╟", boxVR: "╠", bprime: "‵", breve: "˘", Breve: "˘", brvbar: "¦", bscr: "𝒷", Bscr: "ℬ", bsemi: "⁏", bsim: "∽", bsime: "⋍", bsolb: "⧅", bsol: "\\", bsolhsub: "⟈", bull: "•", bullet: "•", bump: "≎", bumpE: "⪮", bumpe: "≏", Bumpeq: "≎", bumpeq: "≏", Cacute: "Ć", cacute: "ć", capand: "⩄", capbrcup: "⩉", capcap: "⩋", cap: "∩", Cap: "⋒", capcup: "⩇", capdot: "⩀", CapitalDifferentialD: "ⅅ", caps: "∩︀", caret: "⁁", caron: "ˇ", Cayleys: "ℭ", ccaps: "⩍", Ccaron: "Č", ccaron: "č", Ccedil: "Ç", ccedil: "ç", Ccirc: "Ĉ", ccirc: "ĉ", Cconint: "∰", ccups: "⩌", ccupssm: "⩐", Cdot: "Ċ", cdot: "ċ", cedil: "¸", Cedilla: "¸", cemptyv: "⦲", cent: "¢", centerdot: "·", CenterDot: "·", cfr: "𝔠", Cfr: "ℭ", CHcy: "Ч", chcy: "ч", check: "✓", checkmark: "✓", Chi: "Χ", chi: "χ", circ: "ˆ", circeq: "≗", circlearrowleft: "↺", circlearrowright: "↻", circledast: "⊛", circledcirc: "⊚", circleddash: "⊝", CircleDot: "⊙", circledR: "®", circledS: "Ⓢ", CircleMinus: "⊖", CirclePlus: "⊕", CircleTimes: "⊗", cir: "○", cirE: "⧃", cire: "≗", cirfnint: "⨐", cirmid: "⫯", cirscir: "⧂", ClockwiseContourIntegral: "∲", CloseCurlyDoubleQuote: "”", CloseCurlyQuote: "’", clubs: "♣", clubsuit: "♣", colon: ":", Colon: "∷", Colone: "⩴", colone: "≔", coloneq: "≔", comma: ",", commat: "@", comp: "∁", compfn: "∘", complement: "∁", complexes: "ℂ", cong: "≅", congdot: "⩭", Congruent: "≡", conint: "∮", Conint: "∯", ContourIntegral: "∮", copf: "𝕔", Copf: "ℂ", coprod: "∐", Coproduct: "∐", copy: "©", COPY: "©", copysr: "℗", CounterClockwiseContourIntegral: "∳", crarr: "↵", cross: "✗", Cross: "⨯", Cscr: "𝒞", cscr: "𝒸", csub: "⫏", csube: "⫑", csup: "⫐", csupe: "⫒", ctdot: "⋯", cudarrl: "⤸", cudarrr: "⤵", cuepr: "⋞", cuesc: "⋟", cularr: "↶", cularrp: "⤽", cupbrcap: "⩈", cupcap: "⩆", CupCap: "≍", cup: "∪", Cup: "⋓", cupcup: "⩊", cupdot: "⊍", cupor: "⩅", cups: "∪︀", curarr: "↷", curarrm: "⤼", curlyeqprec: "⋞", curlyeqsucc: "⋟", curlyvee: "⋎", curlywedge: "⋏", curren: "¤", curvearrowleft: "↶", curvearrowright: "↷", cuvee: "⋎", cuwed: "⋏", cwconint: "∲", cwint: "∱", cylcty: "⌭", dagger: "†", Dagger: "‡", daleth: "ℸ", darr: "↓", Darr: "↡", dArr: "⇓", dash: "‐", Dashv: "⫤", dashv: "⊣", dbkarow: "⤏", dblac: "˝", Dcaron: "Ď", dcaron: "ď", Dcy: "Д", dcy: "д", ddagger: "‡", ddarr: "⇊", DD: "ⅅ", dd: "ⅆ", DDotrahd: "⤑", ddotseq: "⩷", deg: "°", Del: "∇", Delta: "Δ", delta: "δ", demptyv: "⦱", dfisht: "⥿", Dfr: "𝔇", dfr: "𝔡", dHar: "⥥", dharl: "⇃", dharr: "⇂", DiacriticalAcute: "´", DiacriticalDot: "˙", DiacriticalDoubleAcute: "˝", DiacriticalGrave: "`", DiacriticalTilde: "˜", diam: "⋄", diamond: "⋄", Diamond: "⋄", diamondsuit: "♦", diams: "♦", die: "¨", DifferentialD: "ⅆ", digamma: "ϝ", disin: "⋲", div: "÷", divide: "÷", divideontimes: "⋇", divonx: "⋇", DJcy: "Ђ", djcy: "ђ", dlcorn: "⌞", dlcrop: "⌍", dollar: "$", Dopf: "𝔻", dopf: "𝕕", Dot: "¨", dot: "˙", DotDot: "⃜", doteq: "≐", doteqdot: "≑", DotEqual: "≐", dotminus: "∸", dotplus: "∔", dotsquare: "⊡", doublebarwedge: "⌆", DoubleContourIntegral: "∯", DoubleDot: "¨", DoubleDownArrow: "⇓", DoubleLeftArrow: "⇐", DoubleLeftRightArrow: "⇔", DoubleLeftTee: "⫤", DoubleLongLeftArrow: "⟸", DoubleLongLeftRightArrow: "⟺", DoubleLongRightArrow: "⟹", DoubleRightArrow: "⇒", DoubleRightTee: "⊨", DoubleUpArrow: "⇑", DoubleUpDownArrow: "⇕", DoubleVerticalBar: "∥", DownArrowBar: "⤓", downarrow: "↓", DownArrow: "↓", Downarrow: "⇓", DownArrowUpArrow: "⇵", DownBreve: "̑", downdownarrows: "⇊", downharpoonleft: "⇃", downharpoonright: "⇂", DownLeftRightVector: "⥐", DownLeftTeeVector: "⥞", DownLeftVectorBar: "⥖", DownLeftVector: "↽", DownRightTeeVector: "⥟", DownRightVectorBar: "⥗", DownRightVector: "⇁", DownTeeArrow: "↧", DownTee: "⊤", drbkarow: "⤐", drcorn: "⌟", drcrop: "⌌", Dscr: "𝒟", dscr: "𝒹", DScy: "Ѕ", dscy: "ѕ", dsol: "⧶", Dstrok: "Đ", dstrok: "đ", dtdot: "⋱", dtri: "▿", dtrif: "▾", duarr: "⇵", duhar: "⥯", dwangle: "⦦", DZcy: "Џ", dzcy: "џ", dzigrarr: "⟿", Eacute: "É", eacute: "é", easter: "⩮", Ecaron: "Ě", ecaron: "ě", Ecirc: "Ê", ecirc: "ê", ecir: "≖", ecolon: "≕", Ecy: "Э", ecy: "э", eDDot: "⩷", Edot: "Ė", edot: "ė", eDot: "≑", ee: "ⅇ", efDot: "≒", Efr: "𝔈", efr: "𝔢", eg: "⪚", Egrave: "È", egrave: "è", egs: "⪖", egsdot: "⪘", el: "⪙", Element: "∈", elinters: "⏧", ell: "ℓ", els: "⪕", elsdot: "⪗", Emacr: "Ē", emacr: "ē", empty: "∅", emptyset: "∅", EmptySmallSquare: "◻", emptyv: "∅", EmptyVerySmallSquare: "▫", emsp13: " ", emsp14: " ", emsp: " ", ENG: "Ŋ", eng: "ŋ", ensp: " ", Eogon: "Ę", eogon: "ę", Eopf: "𝔼", eopf: "𝕖", epar: "⋕", eparsl: "⧣", eplus: "⩱", epsi: "ε", Epsilon: "Ε", epsilon: "ε", epsiv: "ϵ", eqcirc: "≖", eqcolon: "≕", eqsim: "≂", eqslantgtr: "⪖", eqslantless: "⪕", Equal: "⩵", equals: "=", EqualTilde: "≂", equest: "≟", Equilibrium: "⇌", equiv: "≡", equivDD: "⩸", eqvparsl: "⧥", erarr: "⥱", erDot: "≓", escr: "ℯ", Escr: "ℰ", esdot: "≐", Esim: "⩳", esim: "≂", Eta: "Η", eta: "η", ETH: "Ð", eth: "ð", Euml: "Ë", euml: "ë", euro: "€", excl: "!", exist: "∃", Exists: "∃", expectation: "ℰ", exponentiale: "ⅇ", ExponentialE: "ⅇ", fallingdotseq: "≒", Fcy: "Ф", fcy: "ф", female: "♀", ffilig: "ffi", fflig: "ff", ffllig: "ffl", Ffr: "𝔉", ffr: "𝔣", filig: "fi", FilledSmallSquare: "◼", FilledVerySmallSquare: "▪", fjlig: "fj", flat: "♭", fllig: "fl", fltns: "▱", fnof: "ƒ", Fopf: "𝔽", fopf: "𝕗", forall: "∀", ForAll: "∀", fork: "⋔", forkv: "⫙", Fouriertrf: "ℱ", fpartint: "⨍", frac12: "½", frac13: "⅓", frac14: "¼", frac15: "⅕", frac16: "⅙", frac18: "⅛", frac23: "⅔", frac25: "⅖", frac34: "¾", frac35: "⅗", frac38: "⅜", frac45: "⅘", frac56: "⅚", frac58: "⅝", frac78: "⅞", frasl: "⁄", frown: "⌢", fscr: "𝒻", Fscr: "ℱ", gacute: "ǵ", Gamma: "Γ", gamma: "γ", Gammad: "Ϝ", gammad: "ϝ", gap: "⪆", Gbreve: "Ğ", gbreve: "ğ", Gcedil: "Ģ", Gcirc: "Ĝ", gcirc: "ĝ", Gcy: "Г", gcy: "г", Gdot: "Ġ", gdot: "ġ", ge: "≥", gE: "≧", gEl: "⪌", gel: "⋛", geq: "≥", geqq: "≧", geqslant: "⩾", gescc: "⪩", ges: "⩾", gesdot: "⪀", gesdoto: "⪂", gesdotol: "⪄", gesl: "⋛︀", gesles: "⪔", Gfr: "𝔊", gfr: "𝔤", gg: "≫", Gg: "⋙", ggg: "⋙", gimel: "ℷ", GJcy: "Ѓ", gjcy: "ѓ", gla: "⪥", gl: "≷", glE: "⪒", glj: "⪤", gnap: "⪊", gnapprox: "⪊", gne: "⪈", gnE: "≩", gneq: "⪈", gneqq: "≩", gnsim: "⋧", Gopf: "𝔾", gopf: "𝕘", grave: "`", GreaterEqual: "≥", GreaterEqualLess: "⋛", GreaterFullEqual: "≧", GreaterGreater: "⪢", GreaterLess: "≷", GreaterSlantEqual: "⩾", GreaterTilde: "≳", Gscr: "𝒢", gscr: "ℊ", gsim: "≳", gsime: "⪎", gsiml: "⪐", gtcc: "⪧", gtcir: "⩺", gt: ">", GT: ">", Gt: "≫", gtdot: "⋗", gtlPar: "⦕", gtquest: "⩼", gtrapprox: "⪆", gtrarr: "⥸", gtrdot: "⋗", gtreqless: "⋛", gtreqqless: "⪌", gtrless: "≷", gtrsim: "≳", gvertneqq: "≩︀", gvnE: "≩︀", Hacek: "ˇ", hairsp: " ", half: "½", hamilt: "ℋ", HARDcy: "Ъ", hardcy: "ъ", harrcir: "⥈", harr: "↔", hArr: "⇔", harrw: "↭", Hat: "^", hbar: "ℏ", Hcirc: "Ĥ", hcirc: "ĥ", hearts: "♥", heartsuit: "♥", hellip: "…", hercon: "⊹", hfr: "𝔥", Hfr: "ℌ", HilbertSpace: "ℋ", hksearow: "⤥", hkswarow: "⤦", hoarr: "⇿", homtht: "∻", hookleftarrow: "↩", hookrightarrow: "↪", hopf: "𝕙", Hopf: "ℍ", horbar: "―", HorizontalLine: "─", hscr: "𝒽", Hscr: "ℋ", hslash: "ℏ", Hstrok: "Ħ", hstrok: "ħ", HumpDownHump: "≎", HumpEqual: "≏", hybull: "⁃", hyphen: "‐", Iacute: "Í", iacute: "í", ic: "⁣", Icirc: "Î", icirc: "î", Icy: "И", icy: "и", Idot: "İ", IEcy: "Е", iecy: "е", iexcl: "¡", iff: "⇔", ifr: "𝔦", Ifr: "ℑ", Igrave: "Ì", igrave: "ì", ii: "ⅈ", iiiint: "⨌", iiint: "∭", iinfin: "⧜", iiota: "℩", IJlig: "IJ", ijlig: "ij", Imacr: "Ī", imacr: "ī", image: "ℑ", ImaginaryI: "ⅈ", imagline: "ℐ", imagpart: "ℑ", imath: "ı", Im: "ℑ", imof: "⊷", imped: "Ƶ", Implies: "⇒", incare: "℅", in: "∈", infin: "∞", infintie: "⧝", inodot: "ı", intcal: "⊺", int: "∫", Int: "∬", integers: "ℤ", Integral: "∫", intercal: "⊺", Intersection: "⋂", intlarhk: "⨗", intprod: "⨼", InvisibleComma: "⁣", InvisibleTimes: "⁢", IOcy: "Ё", iocy: "ё", Iogon: "Į", iogon: "į", Iopf: "𝕀", iopf: "𝕚", Iota: "Ι", iota: "ι", iprod: "⨼", iquest: "¿", iscr: "𝒾", Iscr: "ℐ", isin: "∈", isindot: "⋵", isinE: "⋹", isins: "⋴", isinsv: "⋳", isinv: "∈", it: "⁢", Itilde: "Ĩ", itilde: "ĩ", Iukcy: "І", iukcy: "і", Iuml: "Ï", iuml: "ï", Jcirc: "Ĵ", jcirc: "ĵ", Jcy: "Й", jcy: "й", Jfr: "𝔍", jfr: "𝔧", jmath: "ȷ", Jopf: "𝕁", jopf: "𝕛", Jscr: "𝒥", jscr: "𝒿", Jsercy: "Ј", jsercy: "ј", Jukcy: "Є", jukcy: "є", Kappa: "Κ", kappa: "κ", kappav: "ϰ", Kcedil: "Ķ", kcedil: "ķ", Kcy: "К", kcy: "к", Kfr: "𝔎", kfr: "𝔨", kgreen: "ĸ", KHcy: "Х", khcy: "х", KJcy: "Ќ", kjcy: "ќ", Kopf: "𝕂", kopf: "𝕜", Kscr: "𝒦", kscr: "𝓀", lAarr: "⇚", Lacute: "Ĺ", lacute: "ĺ", laemptyv: "⦴", lagran: "ℒ", Lambda: "Λ", lambda: "λ", lang: "⟨", Lang: "⟪", langd: "⦑", langle: "⟨", lap: "⪅", Laplacetrf: "ℒ", laquo: "«", larrb: "⇤", larrbfs: "⤟", larr: "←", Larr: "↞", lArr: "⇐", larrfs: "⤝", larrhk: "↩", larrlp: "↫", larrpl: "⤹", larrsim: "⥳", larrtl: "↢", latail: "⤙", lAtail: "⤛", lat: "⪫", late: "⪭", lates: "⪭︀", lbarr: "⤌", lBarr: "⤎", lbbrk: "❲", lbrace: "{", lbrack: "[", lbrke: "⦋", lbrksld: "⦏", lbrkslu: "⦍", Lcaron: "Ľ", lcaron: "ľ", Lcedil: "Ļ", lcedil: "ļ", lceil: "⌈", lcub: "{", Lcy: "Л", lcy: "л", ldca: "⤶", ldquo: "“", ldquor: "„", ldrdhar: "⥧", ldrushar: "⥋", ldsh: "↲", le: "≤", lE: "≦", LeftAngleBracket: "⟨", LeftArrowBar: "⇤", leftarrow: "←", LeftArrow: "←", Leftarrow: "⇐", LeftArrowRightArrow: "⇆", leftarrowtail: "↢", LeftCeiling: "⌈", LeftDoubleBracket: "⟦", LeftDownTeeVector: "⥡", LeftDownVectorBar: "⥙", LeftDownVector: "⇃", LeftFloor: "⌊", leftharpoondown: "↽", leftharpoonup: "↼", leftleftarrows: "⇇", leftrightarrow: "↔", LeftRightArrow: "↔", Leftrightarrow: "⇔", leftrightarrows: "⇆", leftrightharpoons: "⇋", leftrightsquigarrow: "↭", LeftRightVector: "⥎", LeftTeeArrow: "↤", LeftTee: "⊣", LeftTeeVector: "⥚", leftthreetimes: "⋋", LeftTriangleBar: "⧏", LeftTriangle: "⊲", LeftTriangleEqual: "⊴", LeftUpDownVector: "⥑", LeftUpTeeVector: "⥠", LeftUpVectorBar: "⥘", LeftUpVector: "↿", LeftVectorBar: "⥒", LeftVector: "↼", lEg: "⪋", leg: "⋚", leq: "≤", leqq: "≦", leqslant: "⩽", lescc: "⪨", les: "⩽", lesdot: "⩿", lesdoto: "⪁", lesdotor: "⪃", lesg: "⋚︀", lesges: "⪓", lessapprox: "⪅", lessdot: "⋖", lesseqgtr: "⋚", lesseqqgtr: "⪋", LessEqualGreater: "⋚", LessFullEqual: "≦", LessGreater: "≶", lessgtr: "≶", LessLess: "⪡", lesssim: "≲", LessSlantEqual: "⩽", LessTilde: "≲", lfisht: "⥼", lfloor: "⌊", Lfr: "𝔏", lfr: "𝔩", lg: "≶", lgE: "⪑", lHar: "⥢", lhard: "↽", lharu: "↼", lharul: "⥪", lhblk: "▄", LJcy: "Љ", ljcy: "љ", llarr: "⇇", ll: "≪", Ll: "⋘", llcorner: "⌞", Lleftarrow: "⇚", llhard: "⥫", lltri: "◺", Lmidot: "Ŀ", lmidot: "ŀ", lmoustache: "⎰", lmoust: "⎰", lnap: "⪉", lnapprox: "⪉", lne: "⪇", lnE: "≨", lneq: "⪇", lneqq: "≨", lnsim: "⋦", loang: "⟬", loarr: "⇽", lobrk: "⟦", longleftarrow: "⟵", LongLeftArrow: "⟵", Longleftarrow: "⟸", longleftrightarrow: "⟷", LongLeftRightArrow: "⟷", Longleftrightarrow: "⟺", longmapsto: "⟼", longrightarrow: "⟶", LongRightArrow: "⟶", Longrightarrow: "⟹", looparrowleft: "↫", looparrowright: "↬", lopar: "⦅", Lopf: "𝕃", lopf: "𝕝", loplus: "⨭", lotimes: "⨴", lowast: "∗", lowbar: "_", LowerLeftArrow: "↙", LowerRightArrow: "↘", loz: "◊", lozenge: "◊", lozf: "⧫", lpar: "(", lparlt: "⦓", lrarr: "⇆", lrcorner: "⌟", lrhar: "⇋", lrhard: "⥭", lrm: "‎", lrtri: "⊿", lsaquo: "‹", lscr: "𝓁", Lscr: "ℒ", lsh: "↰", Lsh: "↰", lsim: "≲", lsime: "⪍", lsimg: "⪏", lsqb: "[", lsquo: "‘", lsquor: "‚", Lstrok: "Ł", lstrok: "ł", ltcc: "⪦", ltcir: "⩹", lt: "<", LT: "<", Lt: "≪", ltdot: "⋖", lthree: "⋋", ltimes: "⋉", ltlarr: "⥶", ltquest: "⩻", ltri: "◃", ltrie: "⊴", ltrif: "◂", ltrPar: "⦖", lurdshar: "⥊", luruhar: "⥦", lvertneqq: "≨︀", lvnE: "≨︀", macr: "¯", male: "♂", malt: "✠", maltese: "✠", Map: "⤅", map: "↦", mapsto: "↦", mapstodown: "↧", mapstoleft: "↤", mapstoup: "↥", marker: "▮", mcomma: "⨩", Mcy: "М", mcy: "м", mdash: "—", mDDot: "∺", measuredangle: "∡", MediumSpace: " ", Mellintrf: "ℳ", Mfr: "𝔐", mfr: "𝔪", mho: "℧", micro: "µ", midast: "*", midcir: "⫰", mid: "∣", middot: "·", minusb: "⊟", minus: "−", minusd: "∸", minusdu: "⨪", MinusPlus: "∓", mlcp: "⫛", mldr: "…", mnplus: "∓", models: "⊧", Mopf: "𝕄", mopf: "𝕞", mp: "∓", mscr: "𝓂", Mscr: "ℳ", mstpos: "∾", Mu: "Μ", mu: "μ", multimap: "⊸", mumap: "⊸", nabla: "∇", Nacute: "Ń", nacute: "ń", nang: "∠⃒", nap: "≉", napE: "⩰̸", napid: "≋̸", napos: "ʼn", napprox: "≉", natural: "♮", naturals: "ℕ", natur: "♮", nbsp: " ", nbump: "≎̸", nbumpe: "≏̸", ncap: "⩃", Ncaron: "Ň", ncaron: "ň", Ncedil: "Ņ", ncedil: "ņ", ncong: "≇", ncongdot: "⩭̸", ncup: "⩂", Ncy: "Н", ncy: "н", ndash: "–", nearhk: "⤤", nearr: "↗", neArr: "⇗", nearrow: "↗", ne: "≠", nedot: "≐̸", NegativeMediumSpace: "​", NegativeThickSpace: "​", NegativeThinSpace: "​", NegativeVeryThinSpace: "​", nequiv: "≢", nesear: "⤨", nesim: "≂̸", NestedGreaterGreater: "≫", NestedLessLess: "≪", NewLine: `
3539
+ `, nexist: "∄", nexists: "∄", Nfr: "𝔑", nfr: "𝔫", ngE: "≧̸", nge: "≱", ngeq: "≱", ngeqq: "≧̸", ngeqslant: "⩾̸", nges: "⩾̸", nGg: "⋙̸", ngsim: "≵", nGt: "≫⃒", ngt: "≯", ngtr: "≯", nGtv: "≫̸", nharr: "↮", nhArr: "⇎", nhpar: "⫲", ni: "∋", nis: "⋼", nisd: "⋺", niv: "∋", NJcy: "Њ", njcy: "њ", nlarr: "↚", nlArr: "⇍", nldr: "‥", nlE: "≦̸", nle: "≰", nleftarrow: "↚", nLeftarrow: "⇍", nleftrightarrow: "↮", nLeftrightarrow: "⇎", nleq: "≰", nleqq: "≦̸", nleqslant: "⩽̸", nles: "⩽̸", nless: "≮", nLl: "⋘̸", nlsim: "≴", nLt: "≪⃒", nlt: "≮", nltri: "⋪", nltrie: "⋬", nLtv: "≪̸", nmid: "∤", NoBreak: "⁠", NonBreakingSpace: " ", nopf: "𝕟", Nopf: "ℕ", Not: "⫬", not: "¬", NotCongruent: "≢", NotCupCap: "≭", NotDoubleVerticalBar: "∦", NotElement: "∉", NotEqual: "≠", NotEqualTilde: "≂̸", NotExists: "∄", NotGreater: "≯", NotGreaterEqual: "≱", NotGreaterFullEqual: "≧̸", NotGreaterGreater: "≫̸", NotGreaterLess: "≹", NotGreaterSlantEqual: "⩾̸", NotGreaterTilde: "≵", NotHumpDownHump: "≎̸", NotHumpEqual: "≏̸", notin: "∉", notindot: "⋵̸", notinE: "⋹̸", notinva: "∉", notinvb: "⋷", notinvc: "⋶", NotLeftTriangleBar: "⧏̸", NotLeftTriangle: "⋪", NotLeftTriangleEqual: "⋬", NotLess: "≮", NotLessEqual: "≰", NotLessGreater: "≸", NotLessLess: "≪̸", NotLessSlantEqual: "⩽̸", NotLessTilde: "≴", NotNestedGreaterGreater: "⪢̸", NotNestedLessLess: "⪡̸", notni: "∌", notniva: "∌", notnivb: "⋾", notnivc: "⋽", NotPrecedes: "⊀", NotPrecedesEqual: "⪯̸", NotPrecedesSlantEqual: "⋠", NotReverseElement: "∌", NotRightTriangleBar: "⧐̸", NotRightTriangle: "⋫", NotRightTriangleEqual: "⋭", NotSquareSubset: "⊏̸", NotSquareSubsetEqual: "⋢", NotSquareSuperset: "⊐̸", NotSquareSupersetEqual: "⋣", NotSubset: "⊂⃒", NotSubsetEqual: "⊈", NotSucceeds: "⊁", NotSucceedsEqual: "⪰̸", NotSucceedsSlantEqual: "⋡", NotSucceedsTilde: "≿̸", NotSuperset: "⊃⃒", NotSupersetEqual: "⊉", NotTilde: "≁", NotTildeEqual: "≄", NotTildeFullEqual: "≇", NotTildeTilde: "≉", NotVerticalBar: "∤", nparallel: "∦", npar: "∦", nparsl: "⫽⃥", npart: "∂̸", npolint: "⨔", npr: "⊀", nprcue: "⋠", nprec: "⊀", npreceq: "⪯̸", npre: "⪯̸", nrarrc: "⤳̸", nrarr: "↛", nrArr: "⇏", nrarrw: "↝̸", nrightarrow: "↛", nRightarrow: "⇏", nrtri: "⋫", nrtrie: "⋭", nsc: "⊁", nsccue: "⋡", nsce: "⪰̸", Nscr: "𝒩", nscr: "𝓃", nshortmid: "∤", nshortparallel: "∦", nsim: "≁", nsime: "≄", nsimeq: "≄", nsmid: "∤", nspar: "∦", nsqsube: "⋢", nsqsupe: "⋣", nsub: "⊄", nsubE: "⫅̸", nsube: "⊈", nsubset: "⊂⃒", nsubseteq: "⊈", nsubseteqq: "⫅̸", nsucc: "⊁", nsucceq: "⪰̸", nsup: "⊅", nsupE: "⫆̸", nsupe: "⊉", nsupset: "⊃⃒", nsupseteq: "⊉", nsupseteqq: "⫆̸", ntgl: "≹", Ntilde: "Ñ", ntilde: "ñ", ntlg: "≸", ntriangleleft: "⋪", ntrianglelefteq: "⋬", ntriangleright: "⋫", ntrianglerighteq: "⋭", Nu: "Ν", nu: "ν", num: "#", numero: "№", numsp: " ", nvap: "≍⃒", nvdash: "⊬", nvDash: "⊭", nVdash: "⊮", nVDash: "⊯", nvge: "≥⃒", nvgt: ">⃒", nvHarr: "⤄", nvinfin: "⧞", nvlArr: "⤂", nvle: "≤⃒", nvlt: "<⃒", nvltrie: "⊴⃒", nvrArr: "⤃", nvrtrie: "⊵⃒", nvsim: "∼⃒", nwarhk: "⤣", nwarr: "↖", nwArr: "⇖", nwarrow: "↖", nwnear: "⤧", Oacute: "Ó", oacute: "ó", oast: "⊛", Ocirc: "Ô", ocirc: "ô", ocir: "⊚", Ocy: "О", ocy: "о", odash: "⊝", Odblac: "Ő", odblac: "ő", odiv: "⨸", odot: "⊙", odsold: "⦼", OElig: "Œ", oelig: "œ", ofcir: "⦿", Ofr: "𝔒", ofr: "𝔬", ogon: "˛", Ograve: "Ò", ograve: "ò", ogt: "⧁", ohbar: "⦵", ohm: "Ω", oint: "∮", olarr: "↺", olcir: "⦾", olcross: "⦻", oline: "‾", olt: "⧀", Omacr: "Ō", omacr: "ō", Omega: "Ω", omega: "ω", Omicron: "Ο", omicron: "ο", omid: "⦶", ominus: "⊖", Oopf: "𝕆", oopf: "𝕠", opar: "⦷", OpenCurlyDoubleQuote: "“", OpenCurlyQuote: "‘", operp: "⦹", oplus: "⊕", orarr: "↻", Or: "⩔", or: "∨", ord: "⩝", order: "ℴ", orderof: "ℴ", ordf: "ª", ordm: "º", origof: "⊶", oror: "⩖", orslope: "⩗", orv: "⩛", oS: "Ⓢ", Oscr: "𝒪", oscr: "ℴ", Oslash: "Ø", oslash: "ø", osol: "⊘", Otilde: "Õ", otilde: "õ", otimesas: "⨶", Otimes: "⨷", otimes: "⊗", Ouml: "Ö", ouml: "ö", ovbar: "⌽", OverBar: "‾", OverBrace: "⏞", OverBracket: "⎴", OverParenthesis: "⏜", para: "¶", parallel: "∥", par: "∥", parsim: "⫳", parsl: "⫽", part: "∂", PartialD: "∂", Pcy: "П", pcy: "п", percnt: "%", period: ".", permil: "‰", perp: "⊥", pertenk: "‱", Pfr: "𝔓", pfr: "𝔭", Phi: "Φ", phi: "φ", phiv: "ϕ", phmmat: "ℳ", phone: "☎", Pi: "Π", pi: "π", pitchfork: "⋔", piv: "ϖ", planck: "ℏ", planckh: "ℎ", plankv: "ℏ", plusacir: "⨣", plusb: "⊞", pluscir: "⨢", plus: "+", plusdo: "∔", plusdu: "⨥", pluse: "⩲", PlusMinus: "±", plusmn: "±", plussim: "⨦", plustwo: "⨧", pm: "±", Poincareplane: "ℌ", pointint: "⨕", popf: "𝕡", Popf: "ℙ", pound: "£", prap: "⪷", Pr: "⪻", pr: "≺", prcue: "≼", precapprox: "⪷", prec: "≺", preccurlyeq: "≼", Precedes: "≺", PrecedesEqual: "⪯", PrecedesSlantEqual: "≼", PrecedesTilde: "≾", preceq: "⪯", precnapprox: "⪹", precneqq: "⪵", precnsim: "⋨", pre: "⪯", prE: "⪳", precsim: "≾", prime: "′", Prime: "″", primes: "ℙ", prnap: "⪹", prnE: "⪵", prnsim: "⋨", prod: "∏", Product: "∏", profalar: "⌮", profline: "⌒", profsurf: "⌓", prop: "∝", Proportional: "∝", Proportion: "∷", propto: "∝", prsim: "≾", prurel: "⊰", Pscr: "𝒫", pscr: "𝓅", Psi: "Ψ", psi: "ψ", puncsp: " ", Qfr: "𝔔", qfr: "𝔮", qint: "⨌", qopf: "𝕢", Qopf: "ℚ", qprime: "⁗", Qscr: "𝒬", qscr: "𝓆", quaternions: "ℍ", quatint: "⨖", quest: "?", questeq: "≟", quot: '"', QUOT: '"', rAarr: "⇛", race: "∽̱", Racute: "Ŕ", racute: "ŕ", radic: "√", raemptyv: "⦳", rang: "⟩", Rang: "⟫", rangd: "⦒", range: "⦥", rangle: "⟩", raquo: "»", rarrap: "⥵", rarrb: "⇥", rarrbfs: "⤠", rarrc: "⤳", rarr: "→", Rarr: "↠", rArr: "⇒", rarrfs: "⤞", rarrhk: "↪", rarrlp: "↬", rarrpl: "⥅", rarrsim: "⥴", Rarrtl: "⤖", rarrtl: "↣", rarrw: "↝", ratail: "⤚", rAtail: "⤜", ratio: "∶", rationals: "ℚ", rbarr: "⤍", rBarr: "⤏", RBarr: "⤐", rbbrk: "❳", rbrace: "}", rbrack: "]", rbrke: "⦌", rbrksld: "⦎", rbrkslu: "⦐", Rcaron: "Ř", rcaron: "ř", Rcedil: "Ŗ", rcedil: "ŗ", rceil: "⌉", rcub: "}", Rcy: "Р", rcy: "р", rdca: "⤷", rdldhar: "⥩", rdquo: "”", rdquor: "”", rdsh: "↳", real: "ℜ", realine: "ℛ", realpart: "ℜ", reals: "ℝ", Re: "ℜ", rect: "▭", reg: "®", REG: "®", ReverseElement: "∋", ReverseEquilibrium: "⇋", ReverseUpEquilibrium: "⥯", rfisht: "⥽", rfloor: "⌋", rfr: "𝔯", Rfr: "ℜ", rHar: "⥤", rhard: "⇁", rharu: "⇀", rharul: "⥬", Rho: "Ρ", rho: "ρ", rhov: "ϱ", RightAngleBracket: "⟩", RightArrowBar: "⇥", rightarrow: "→", RightArrow: "→", Rightarrow: "⇒", RightArrowLeftArrow: "⇄", rightarrowtail: "↣", RightCeiling: "⌉", RightDoubleBracket: "⟧", RightDownTeeVector: "⥝", RightDownVectorBar: "⥕", RightDownVector: "⇂", RightFloor: "⌋", rightharpoondown: "⇁", rightharpoonup: "⇀", rightleftarrows: "⇄", rightleftharpoons: "⇌", rightrightarrows: "⇉", rightsquigarrow: "↝", RightTeeArrow: "↦", RightTee: "⊢", RightTeeVector: "⥛", rightthreetimes: "⋌", RightTriangleBar: "⧐", RightTriangle: "⊳", RightTriangleEqual: "⊵", RightUpDownVector: "⥏", RightUpTeeVector: "⥜", RightUpVectorBar: "⥔", RightUpVector: "↾", RightVectorBar: "⥓", RightVector: "⇀", ring: "˚", risingdotseq: "≓", rlarr: "⇄", rlhar: "⇌", rlm: "‏", rmoustache: "⎱", rmoust: "⎱", rnmid: "⫮", roang: "⟭", roarr: "⇾", robrk: "⟧", ropar: "⦆", ropf: "𝕣", Ropf: "ℝ", roplus: "⨮", rotimes: "⨵", RoundImplies: "⥰", rpar: ")", rpargt: "⦔", rppolint: "⨒", rrarr: "⇉", Rrightarrow: "⇛", rsaquo: "›", rscr: "𝓇", Rscr: "ℛ", rsh: "↱", Rsh: "↱", rsqb: "]", rsquo: "’", rsquor: "’", rthree: "⋌", rtimes: "⋊", rtri: "▹", rtrie: "⊵", rtrif: "▸", rtriltri: "⧎", RuleDelayed: "⧴", ruluhar: "⥨", rx: "℞", Sacute: "Ś", sacute: "ś", sbquo: "‚", scap: "⪸", Scaron: "Š", scaron: "š", Sc: "⪼", sc: "≻", sccue: "≽", sce: "⪰", scE: "⪴", Scedil: "Ş", scedil: "ş", Scirc: "Ŝ", scirc: "ŝ", scnap: "⪺", scnE: "⪶", scnsim: "⋩", scpolint: "⨓", scsim: "≿", Scy: "С", scy: "с", sdotb: "⊡", sdot: "⋅", sdote: "⩦", searhk: "⤥", searr: "↘", seArr: "⇘", searrow: "↘", sect: "§", semi: ";", seswar: "⤩", setminus: "∖", setmn: "∖", sext: "✶", Sfr: "𝔖", sfr: "𝔰", sfrown: "⌢", sharp: "♯", SHCHcy: "Щ", shchcy: "щ", SHcy: "Ш", shcy: "ш", ShortDownArrow: "↓", ShortLeftArrow: "←", shortmid: "∣", shortparallel: "∥", ShortRightArrow: "→", ShortUpArrow: "↑", shy: "­", Sigma: "Σ", sigma: "σ", sigmaf: "ς", sigmav: "ς", sim: "∼", simdot: "⩪", sime: "≃", simeq: "≃", simg: "⪞", simgE: "⪠", siml: "⪝", simlE: "⪟", simne: "≆", simplus: "⨤", simrarr: "⥲", slarr: "←", SmallCircle: "∘", smallsetminus: "∖", smashp: "⨳", smeparsl: "⧤", smid: "∣", smile: "⌣", smt: "⪪", smte: "⪬", smtes: "⪬︀", SOFTcy: "Ь", softcy: "ь", solbar: "⌿", solb: "⧄", sol: "/", Sopf: "𝕊", sopf: "𝕤", spades: "♠", spadesuit: "♠", spar: "∥", sqcap: "⊓", sqcaps: "⊓︀", sqcup: "⊔", sqcups: "⊔︀", Sqrt: "√", sqsub: "⊏", sqsube: "⊑", sqsubset: "⊏", sqsubseteq: "⊑", sqsup: "⊐", sqsupe: "⊒", sqsupset: "⊐", sqsupseteq: "⊒", square: "□", Square: "□", SquareIntersection: "⊓", SquareSubset: "⊏", SquareSubsetEqual: "⊑", SquareSuperset: "⊐", SquareSupersetEqual: "⊒", SquareUnion: "⊔", squarf: "▪", squ: "□", squf: "▪", srarr: "→", Sscr: "𝒮", sscr: "𝓈", ssetmn: "∖", ssmile: "⌣", sstarf: "⋆", Star: "⋆", star: "☆", starf: "★", straightepsilon: "ϵ", straightphi: "ϕ", strns: "¯", sub: "⊂", Sub: "⋐", subdot: "⪽", subE: "⫅", sube: "⊆", subedot: "⫃", submult: "⫁", subnE: "⫋", subne: "⊊", subplus: "⪿", subrarr: "⥹", subset: "⊂", Subset: "⋐", subseteq: "⊆", subseteqq: "⫅", SubsetEqual: "⊆", subsetneq: "⊊", subsetneqq: "⫋", subsim: "⫇", subsub: "⫕", subsup: "⫓", succapprox: "⪸", succ: "≻", succcurlyeq: "≽", Succeeds: "≻", SucceedsEqual: "⪰", SucceedsSlantEqual: "≽", SucceedsTilde: "≿", succeq: "⪰", succnapprox: "⪺", succneqq: "⪶", succnsim: "⋩", succsim: "≿", SuchThat: "∋", sum: "∑", Sum: "∑", sung: "♪", sup1: "¹", sup2: "²", sup3: "³", sup: "⊃", Sup: "⋑", supdot: "⪾", supdsub: "⫘", supE: "⫆", supe: "⊇", supedot: "⫄", Superset: "⊃", SupersetEqual: "⊇", suphsol: "⟉", suphsub: "⫗", suplarr: "⥻", supmult: "⫂", supnE: "⫌", supne: "⊋", supplus: "⫀", supset: "⊃", Supset: "⋑", supseteq: "⊇", supseteqq: "⫆", supsetneq: "⊋", supsetneqq: "⫌", supsim: "⫈", supsub: "⫔", supsup: "⫖", swarhk: "⤦", swarr: "↙", swArr: "⇙", swarrow: "↙", swnwar: "⤪", szlig: "ß", Tab: " ", target: "⌖", Tau: "Τ", tau: "τ", tbrk: "⎴", Tcaron: "Ť", tcaron: "ť", Tcedil: "Ţ", tcedil: "ţ", Tcy: "Т", tcy: "т", tdot: "⃛", telrec: "⌕", Tfr: "𝔗", tfr: "𝔱", there4: "∴", therefore: "∴", Therefore: "∴", Theta: "Θ", theta: "θ", thetasym: "ϑ", thetav: "ϑ", thickapprox: "≈", thicksim: "∼", ThickSpace: "  ", ThinSpace: " ", thinsp: " ", thkap: "≈", thksim: "∼", THORN: "Þ", thorn: "þ", tilde: "˜", Tilde: "∼", TildeEqual: "≃", TildeFullEqual: "≅", TildeTilde: "≈", timesbar: "⨱", timesb: "⊠", times: "×", timesd: "⨰", tint: "∭", toea: "⤨", topbot: "⌶", topcir: "⫱", top: "⊤", Topf: "𝕋", topf: "𝕥", topfork: "⫚", tosa: "⤩", tprime: "‴", trade: "™", TRADE: "™", triangle: "▵", triangledown: "▿", triangleleft: "◃", trianglelefteq: "⊴", triangleq: "≜", triangleright: "▹", trianglerighteq: "⊵", tridot: "◬", trie: "≜", triminus: "⨺", TripleDot: "⃛", triplus: "⨹", trisb: "⧍", tritime: "⨻", trpezium: "⏢", Tscr: "𝒯", tscr: "𝓉", TScy: "Ц", tscy: "ц", TSHcy: "Ћ", tshcy: "ћ", Tstrok: "Ŧ", tstrok: "ŧ", twixt: "≬", twoheadleftarrow: "↞", twoheadrightarrow: "↠", Uacute: "Ú", uacute: "ú", uarr: "↑", Uarr: "↟", uArr: "⇑", Uarrocir: "⥉", Ubrcy: "Ў", ubrcy: "ў", Ubreve: "Ŭ", ubreve: "ŭ", Ucirc: "Û", ucirc: "û", Ucy: "У", ucy: "у", udarr: "⇅", Udblac: "Ű", udblac: "ű", udhar: "⥮", ufisht: "⥾", Ufr: "𝔘", ufr: "𝔲", Ugrave: "Ù", ugrave: "ù", uHar: "⥣", uharl: "↿", uharr: "↾", uhblk: "▀", ulcorn: "⌜", ulcorner: "⌜", ulcrop: "⌏", ultri: "◸", Umacr: "Ū", umacr: "ū", uml: "¨", UnderBar: "_", UnderBrace: "⏟", UnderBracket: "⎵", UnderParenthesis: "⏝", Union: "⋃", UnionPlus: "⊎", Uogon: "Ų", uogon: "ų", Uopf: "𝕌", uopf: "𝕦", UpArrowBar: "⤒", uparrow: "↑", UpArrow: "↑", Uparrow: "⇑", UpArrowDownArrow: "⇅", updownarrow: "↕", UpDownArrow: "↕", Updownarrow: "⇕", UpEquilibrium: "⥮", upharpoonleft: "↿", upharpoonright: "↾", uplus: "⊎", UpperLeftArrow: "↖", UpperRightArrow: "↗", upsi: "υ", Upsi: "ϒ", upsih: "ϒ", Upsilon: "Υ", upsilon: "υ", UpTeeArrow: "↥", UpTee: "⊥", upuparrows: "⇈", urcorn: "⌝", urcorner: "⌝", urcrop: "⌎", Uring: "Ů", uring: "ů", urtri: "◹", Uscr: "𝒰", uscr: "𝓊", utdot: "⋰", Utilde: "Ũ", utilde: "ũ", utri: "▵", utrif: "▴", uuarr: "⇈", Uuml: "Ü", uuml: "ü", uwangle: "⦧", vangrt: "⦜", varepsilon: "ϵ", varkappa: "ϰ", varnothing: "∅", varphi: "ϕ", varpi: "ϖ", varpropto: "∝", varr: "↕", vArr: "⇕", varrho: "ϱ", varsigma: "ς", varsubsetneq: "⊊︀", varsubsetneqq: "⫋︀", varsupsetneq: "⊋︀", varsupsetneqq: "⫌︀", vartheta: "ϑ", vartriangleleft: "⊲", vartriangleright: "⊳", vBar: "⫨", Vbar: "⫫", vBarv: "⫩", Vcy: "В", vcy: "в", vdash: "⊢", vDash: "⊨", Vdash: "⊩", VDash: "⊫", Vdashl: "⫦", veebar: "⊻", vee: "∨", Vee: "⋁", veeeq: "≚", vellip: "⋮", verbar: "|", Verbar: "‖", vert: "|", Vert: "‖", VerticalBar: "∣", VerticalLine: "|", VerticalSeparator: "❘", VerticalTilde: "≀", VeryThinSpace: " ", Vfr: "𝔙", vfr: "𝔳", vltri: "⊲", vnsub: "⊂⃒", vnsup: "⊃⃒", Vopf: "𝕍", vopf: "𝕧", vprop: "∝", vrtri: "⊳", Vscr: "𝒱", vscr: "𝓋", vsubnE: "⫋︀", vsubne: "⊊︀", vsupnE: "⫌︀", vsupne: "⊋︀", Vvdash: "⊪", vzigzag: "⦚", Wcirc: "Ŵ", wcirc: "ŵ", wedbar: "⩟", wedge: "∧", Wedge: "⋀", wedgeq: "≙", weierp: "℘", Wfr: "𝔚", wfr: "𝔴", Wopf: "𝕎", wopf: "𝕨", wp: "℘", wr: "≀", wreath: "≀", Wscr: "𝒲", wscr: "𝓌", xcap: "⋂", xcirc: "◯", xcup: "⋃", xdtri: "▽", Xfr: "𝔛", xfr: "𝔵", xharr: "⟷", xhArr: "⟺", Xi: "Ξ", xi: "ξ", xlarr: "⟵", xlArr: "⟸", xmap: "⟼", xnis: "⋻", xodot: "⨀", Xopf: "𝕏", xopf: "𝕩", xoplus: "⨁", xotime: "⨂", xrarr: "⟶", xrArr: "⟹", Xscr: "𝒳", xscr: "𝓍", xsqcup: "⨆", xuplus: "⨄", xutri: "△", xvee: "⋁", xwedge: "⋀", Yacute: "Ý", yacute: "ý", YAcy: "Я", yacy: "я", Ycirc: "Ŷ", ycirc: "ŷ", Ycy: "Ы", ycy: "ы", yen: "¥", Yfr: "𝔜", yfr: "𝔶", YIcy: "Ї", yicy: "ї", Yopf: "𝕐", yopf: "𝕪", Yscr: "𝒴", yscr: "𝓎", YUcy: "Ю", yucy: "ю", yuml: "ÿ", Yuml: "Ÿ", Zacute: "Ź", zacute: "ź", Zcaron: "Ž", zcaron: "ž", Zcy: "З", zcy: "з", Zdot: "Ż", zdot: "ż", zeetrf: "ℨ", ZeroWidthSpace: "​", Zeta: "Ζ", zeta: "ζ", zfr: "𝔷", Zfr: "ℨ", ZHcy: "Ж", zhcy: "ж", zigrarr: "⇝", zopf: "𝕫", Zopf: "ℤ", Zscr: "𝒵", zscr: "𝓏", zwj: "‍", zwnj: "‌" };
3540
+ }
3541
+ }), Su = $({
3542
+ "../node_modules/entities/lib/maps/legacy.json"(t, u) {
3543
+ u.exports = { Aacute: "Á", aacute: "á", Acirc: "Â", acirc: "â", acute: "´", AElig: "Æ", aelig: "æ", Agrave: "À", agrave: "à", amp: "&", AMP: "&", Aring: "Å", aring: "å", Atilde: "Ã", atilde: "ã", Auml: "Ä", auml: "ä", brvbar: "¦", Ccedil: "Ç", ccedil: "ç", cedil: "¸", cent: "¢", copy: "©", COPY: "©", curren: "¤", deg: "°", divide: "÷", Eacute: "É", eacute: "é", Ecirc: "Ê", ecirc: "ê", Egrave: "È", egrave: "è", ETH: "Ð", eth: "ð", Euml: "Ë", euml: "ë", frac12: "½", frac14: "¼", frac34: "¾", gt: ">", GT: ">", Iacute: "Í", iacute: "í", Icirc: "Î", icirc: "î", iexcl: "¡", Igrave: "Ì", igrave: "ì", iquest: "¿", Iuml: "Ï", iuml: "ï", laquo: "«", lt: "<", LT: "<", macr: "¯", micro: "µ", middot: "·", nbsp: " ", not: "¬", Ntilde: "Ñ", ntilde: "ñ", Oacute: "Ó", oacute: "ó", Ocirc: "Ô", ocirc: "ô", Ograve: "Ò", ograve: "ò", ordf: "ª", ordm: "º", Oslash: "Ø", oslash: "ø", Otilde: "Õ", otilde: "õ", Ouml: "Ö", ouml: "ö", para: "¶", plusmn: "±", pound: "£", quot: '"', QUOT: '"', raquo: "»", reg: "®", REG: "®", sect: "§", shy: "­", sup1: "¹", sup2: "²", sup3: "³", szlig: "ß", THORN: "Þ", thorn: "þ", times: "×", Uacute: "Ú", uacute: "ú", Ucirc: "Û", ucirc: "û", Ugrave: "Ù", ugrave: "ù", uml: "¨", Uuml: "Ü", uuml: "ü", Yacute: "Ý", yacute: "ý", yen: "¥", yuml: "ÿ" };
3544
+ }
3545
+ }), Bt = $({
3546
+ "../node_modules/entities/lib/maps/xml.json"(t, u) {
3547
+ u.exports = { amp: "&", apos: "'", gt: ">", lt: "<", quot: '"' };
3548
+ }
3549
+ }), Ju = $({
3550
+ "../node_modules/entities/lib/maps/decode.json"(t, u) {
3551
+ u.exports = { 0: 65533, 128: 8364, 130: 8218, 131: 402, 132: 8222, 133: 8230, 134: 8224, 135: 8225, 136: 710, 137: 8240, 138: 352, 139: 8249, 140: 338, 142: 381, 145: 8216, 146: 8217, 147: 8220, 148: 8221, 149: 8226, 150: 8211, 151: 8212, 152: 732, 153: 8482, 154: 353, 155: 8250, 156: 339, 158: 382, 159: 376 };
3552
+ }
3553
+ }), Nu = $({
3554
+ "../node_modules/entities/lib/decode_codepoint.js"(t) {
3555
+ var u = t && t.__importDefault || function(i) {
3556
+ return i && i.__esModule ? i : { default: i };
3557
+ };
3558
+ Object.defineProperty(t, "__esModule", { value: !0 });
3559
+ var n = u(Ju()), o = (
3560
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
3561
+ String.fromCodePoint || function(i) {
3562
+ var p = "";
3563
+ return i > 65535 && (i -= 65536, p += String.fromCharCode(i >>> 10 & 1023 | 55296), i = 56320 | i & 1023), p += String.fromCharCode(i), p;
3564
+ }
3565
+ );
3566
+ function s(i) {
3567
+ return i >= 55296 && i <= 57343 || i > 1114111 ? "�" : (i in n.default && (i = n.default[i]), o(i));
3568
+ }
3569
+ t.default = s;
3570
+ }
3571
+ }), ot = $({
3572
+ "../node_modules/entities/lib/decode.js"(t) {
3573
+ var u = t && t.__importDefault || function(b) {
3574
+ return b && b.__esModule ? b : { default: b };
3575
+ };
3576
+ Object.defineProperty(t, "__esModule", { value: !0 }), t.decodeHTML = t.decodeHTMLStrict = t.decodeXML = void 0;
3577
+ var n = u(Ft()), o = u(Su()), s = u(Bt()), i = u(Nu()), p = /&(?:[a-zA-Z0-9]+|#[xX][\da-fA-F]+|#\d+);/g;
3578
+ t.decodeXML = d(s.default), t.decodeHTMLStrict = d(n.default);
3579
+ function d(b) {
3580
+ var D = f(b);
3581
+ return function(v) {
3582
+ return String(v).replace(p, D);
3583
+ };
3584
+ }
3585
+ var m = function(b, D) {
3586
+ return b < D ? 1 : -1;
3587
+ };
3588
+ t.decodeHTML = (function() {
3589
+ for (var b = Object.keys(o.default).sort(m), D = Object.keys(n.default).sort(m), v = 0, C = 0; v < D.length; v++)
3590
+ b[C] === D[v] ? (D[v] += ";?", C++) : D[v] += ";";
3591
+ var F = new RegExp("&(?:" + D.join("|") + "|#[xX][\\da-fA-F]+;?|#\\d+;?)", "g"), w = f(n.default);
3592
+ function L(O) {
3593
+ return O.substr(-1) !== ";" && (O += ";"), w(O);
3594
+ }
3595
+ return function(O) {
3596
+ return String(O).replace(F, L);
3597
+ };
3598
+ })();
3599
+ function f(b) {
3600
+ return function(D) {
3601
+ if (D.charAt(1) === "#") {
3602
+ var v = D.charAt(2);
3603
+ return v === "X" || v === "x" ? i.default(parseInt(D.substr(3), 16)) : i.default(parseInt(D.substr(2), 10));
3604
+ }
3605
+ return b[D.slice(1, -1)] || D;
3606
+ };
3607
+ }
3608
+ }
3609
+ }), it = $({
3610
+ "../node_modules/entities/lib/encode.js"(t) {
3611
+ var u = t && t.__importDefault || function(x) {
3612
+ return x && x.__esModule ? x : { default: x };
3613
+ };
3614
+ Object.defineProperty(t, "__esModule", { value: !0 }), t.escapeUTF8 = t.escape = t.encodeNonAsciiHTML = t.encodeHTML = t.encodeXML = void 0;
3615
+ var n = u(Bt()), o = m(n.default), s = f(o);
3616
+ t.encodeXML = O(o);
3617
+ var i = u(Ft()), p = m(i.default), d = f(p);
3618
+ t.encodeHTML = C(p, d), t.encodeNonAsciiHTML = O(p);
3619
+ function m(x) {
3620
+ return Object.keys(x).sort().reduce(function(P, N) {
3621
+ return P[x[N]] = "&" + N + ";", P;
3622
+ }, {});
3623
+ }
3624
+ function f(x) {
3625
+ for (var P = [], N = [], Y = 0, S = Object.keys(x); Y < S.length; Y++) {
3626
+ var U = S[Y];
3627
+ U.length === 1 ? P.push("\\" + U) : N.push(U);
3628
+ }
3629
+ P.sort();
3630
+ for (var R = 0; R < P.length - 1; R++) {
3631
+ for (var q = R; q < P.length - 1 && P[q].charCodeAt(1) + 1 === P[q + 1].charCodeAt(1); )
3632
+ q += 1;
3633
+ var _ = 1 + q - R;
3634
+ _ < 3 || P.splice(R, _, P[R] + "-" + P[q]);
3635
+ }
3636
+ return N.unshift("[" + P.join("") + "]"), new RegExp(N.join("|"), "g");
3637
+ }
3638
+ var b = /(?:[\x80-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/g, D = (
3639
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
3640
+ String.prototype.codePointAt != null ? (
3641
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
3642
+ (function(x) {
3643
+ return x.codePointAt(0);
3644
+ })
3645
+ ) : (
3646
+ // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
3647
+ (function(x) {
3648
+ return (x.charCodeAt(0) - 55296) * 1024 + x.charCodeAt(1) - 56320 + 65536;
3649
+ })
3650
+ )
3651
+ );
3652
+ function v(x) {
3653
+ return "&#x" + (x.length > 1 ? D(x) : x.charCodeAt(0)).toString(16).toUpperCase() + ";";
3654
+ }
3655
+ function C(x, P) {
3656
+ return function(N) {
3657
+ return N.replace(P, function(Y) {
3658
+ return x[Y];
3659
+ }).replace(b, v);
3660
+ };
3661
+ }
3662
+ var F = new RegExp(s.source + "|" + b.source, "g");
3663
+ function w(x) {
3664
+ return x.replace(F, v);
3665
+ }
3666
+ t.escape = w;
3667
+ function L(x) {
3668
+ return x.replace(s, v);
3669
+ }
3670
+ t.escapeUTF8 = L;
3671
+ function O(x) {
3672
+ return function(P) {
3673
+ return P.replace(F, function(N) {
3674
+ return x[N] || v(N);
3675
+ });
3676
+ };
3677
+ }
3678
+ }
3679
+ }), Ou = $({
3680
+ "../node_modules/entities/lib/index.js"(t) {
3681
+ Object.defineProperty(t, "__esModule", { value: !0 }), t.decodeXMLStrict = t.decodeHTML5Strict = t.decodeHTML4Strict = t.decodeHTML5 = t.decodeHTML4 = t.decodeHTMLStrict = t.decodeHTML = t.decodeXML = t.encodeHTML5 = t.encodeHTML4 = t.escapeUTF8 = t.escape = t.encodeNonAsciiHTML = t.encodeHTML = t.encodeXML = t.encode = t.decodeStrict = t.decode = void 0;
3682
+ var u = ot(), n = it();
3683
+ function o(m, f) {
3684
+ return (!f || f <= 0 ? u.decodeXML : u.decodeHTML)(m);
3685
+ }
3686
+ t.decode = o;
3687
+ function s(m, f) {
3688
+ return (!f || f <= 0 ? u.decodeXML : u.decodeHTMLStrict)(m);
3689
+ }
3690
+ t.decodeStrict = s;
3691
+ function i(m, f) {
3692
+ return (!f || f <= 0 ? n.encodeXML : n.encodeHTML)(m);
3693
+ }
3694
+ t.encode = i;
3695
+ var p = it();
3696
+ Object.defineProperty(t, "encodeXML", { enumerable: !0, get: function() {
3697
+ return p.encodeXML;
3698
+ } }), Object.defineProperty(t, "encodeHTML", { enumerable: !0, get: function() {
3699
+ return p.encodeHTML;
3700
+ } }), Object.defineProperty(t, "encodeNonAsciiHTML", { enumerable: !0, get: function() {
3701
+ return p.encodeNonAsciiHTML;
3702
+ } }), Object.defineProperty(t, "escape", { enumerable: !0, get: function() {
3703
+ return p.escape;
3704
+ } }), Object.defineProperty(t, "escapeUTF8", { enumerable: !0, get: function() {
3705
+ return p.escapeUTF8;
3706
+ } }), Object.defineProperty(t, "encodeHTML4", { enumerable: !0, get: function() {
3707
+ return p.encodeHTML;
3708
+ } }), Object.defineProperty(t, "encodeHTML5", { enumerable: !0, get: function() {
3709
+ return p.encodeHTML;
3710
+ } });
3711
+ var d = ot();
3712
+ Object.defineProperty(t, "decodeXML", { enumerable: !0, get: function() {
3713
+ return d.decodeXML;
3714
+ } }), Object.defineProperty(t, "decodeHTML", { enumerable: !0, get: function() {
3715
+ return d.decodeHTML;
3716
+ } }), Object.defineProperty(t, "decodeHTMLStrict", { enumerable: !0, get: function() {
3717
+ return d.decodeHTMLStrict;
3718
+ } }), Object.defineProperty(t, "decodeHTML4", { enumerable: !0, get: function() {
3719
+ return d.decodeHTML;
3720
+ } }), Object.defineProperty(t, "decodeHTML5", { enumerable: !0, get: function() {
3721
+ return d.decodeHTML;
3722
+ } }), Object.defineProperty(t, "decodeHTML4Strict", { enumerable: !0, get: function() {
3723
+ return d.decodeHTMLStrict;
3724
+ } }), Object.defineProperty(t, "decodeHTML5Strict", { enumerable: !0, get: function() {
3725
+ return d.decodeHTMLStrict;
3726
+ } }), Object.defineProperty(t, "decodeXMLStrict", { enumerable: !0, get: function() {
3727
+ return d.decodeXML;
3728
+ } });
3729
+ }
3730
+ }), Pu = $({
3731
+ "../node_modules/ansi-to-html/lib/ansi_to_html.js"(t, u) {
3732
+ function n(c, y) {
3733
+ if (!(c instanceof y))
3734
+ throw new TypeError("Cannot call a class as a function");
3735
+ }
3736
+ function o(c, y) {
3737
+ for (var h = 0; h < y.length; h++) {
3738
+ var A = y[h];
3739
+ A.enumerable = A.enumerable || !1, A.configurable = !0, "value" in A && (A.writable = !0), Object.defineProperty(c, A.key, A);
3740
+ }
3741
+ }
3742
+ function s(c, y, h) {
3743
+ return y && o(c.prototype, y), c;
3744
+ }
3745
+ function i(c, y) {
3746
+ var h = typeof Symbol < "u" && c[Symbol.iterator] || c["@@iterator"];
3747
+ if (!h) {
3748
+ if (Array.isArray(c) || (h = p(c)) || y) {
3749
+ h && (c = h);
3750
+ var A = 0, J = function() {
3751
+ };
3752
+ return { s: J, n: function() {
3753
+ return A >= c.length ? { done: !0 } : { done: !1, value: c[A++] };
3754
+ }, e: function(G) {
3755
+ throw G;
3756
+ }, f: J };
3757
+ }
3758
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
3759
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
3760
+ }
3761
+ var k = !0, X = !1, I;
3762
+ return { s: function() {
3763
+ h = h.call(c);
3764
+ }, n: function() {
3765
+ var G = h.next();
3766
+ return k = G.done, G;
3767
+ }, e: function(G) {
3768
+ X = !0, I = G;
3769
+ }, f: function() {
3770
+ try {
3771
+ !k && h.return != null && h.return();
3772
+ } finally {
3773
+ if (X) throw I;
3774
+ }
3775
+ } };
3776
+ }
3777
+ function p(c, y) {
3778
+ if (c) {
3779
+ if (typeof c == "string") return d(c, y);
3780
+ var h = Object.prototype.toString.call(c).slice(8, -1);
3781
+ if (h === "Object" && c.constructor && (h = c.constructor.name), h === "Map" || h === "Set") return Array.from(c);
3782
+ if (h === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(h)) return d(c, y);
3783
+ }
3784
+ }
3785
+ function d(c, y) {
3786
+ (y == null || y > c.length) && (y = c.length);
3787
+ for (var h = 0, A = new Array(y); h < y; h++)
3788
+ A[h] = c[h];
3789
+ return A;
3790
+ }
3791
+ var m = Ou(), f = {
3792
+ fg: "#FFF",
3793
+ bg: "#000",
3794
+ newline: !1,
3795
+ escapeXML: !1,
3796
+ stream: !1,
3797
+ colors: b()
3798
+ };
3799
+ function b() {
3800
+ var c = {
3801
+ 0: "#000",
3802
+ 1: "#A00",
3803
+ 2: "#0A0",
3804
+ 3: "#A50",
3805
+ 4: "#00A",
3806
+ 5: "#A0A",
3807
+ 6: "#0AA",
3808
+ 7: "#AAA",
3809
+ 8: "#555",
3810
+ 9: "#F55",
3811
+ 10: "#5F5",
3812
+ 11: "#FF5",
3813
+ 12: "#55F",
3814
+ 13: "#F5F",
3815
+ 14: "#5FF",
3816
+ 15: "#FFF"
3817
+ };
3818
+ return x(0, 5).forEach(function(y) {
3819
+ x(0, 5).forEach(function(h) {
3820
+ x(0, 5).forEach(function(A) {
3821
+ return D(y, h, A, c);
3822
+ });
3823
+ });
3824
+ }), x(0, 23).forEach(function(y) {
3825
+ var h = y + 232, A = v(y * 10 + 8);
3826
+ c[h] = "#" + A + A + A;
3827
+ }), c;
3828
+ }
3829
+ function D(c, y, h, A) {
3830
+ var J = 16 + c * 36 + y * 6 + h, k = c > 0 ? c * 40 + 55 : 0, X = y > 0 ? y * 40 + 55 : 0, I = h > 0 ? h * 40 + 55 : 0;
3831
+ A[J] = C([k, X, I]);
3832
+ }
3833
+ function v(c) {
3834
+ for (var y = c.toString(16); y.length < 2; )
3835
+ y = "0" + y;
3836
+ return y;
3837
+ }
3838
+ function C(c) {
3839
+ var y = [], h = i(c), A;
3840
+ try {
3841
+ for (h.s(); !(A = h.n()).done; ) {
3842
+ var J = A.value;
3843
+ y.push(v(J));
3844
+ }
3845
+ } catch (k) {
3846
+ h.e(k);
3847
+ } finally {
3848
+ h.f();
3849
+ }
3850
+ return "#" + y.join("");
3851
+ }
3852
+ function F(c, y, h, A) {
3853
+ var J;
3854
+ return y === "text" ? J = Y(h, A) : y === "display" ? J = L(c, h, A) : y === "xterm256Foreground" ? J = R(c, A.colors[h]) : y === "xterm256Background" ? J = q(c, A.colors[h]) : y === "rgb" && (J = w(c, h)), J;
3855
+ }
3856
+ function w(c, y) {
3857
+ y = y.substring(2).slice(0, -1);
3858
+ var h = +y.substr(0, 2), A = y.substring(5).split(";"), J = A.map(function(k) {
3859
+ return ("0" + Number(k).toString(16)).substr(-2);
3860
+ }).join("");
3861
+ return U(c, (h === 38 ? "color:#" : "background-color:#") + J);
3862
+ }
3863
+ function L(c, y, h) {
3864
+ y = parseInt(y, 10);
3865
+ var A = {
3866
+ "-1": function() {
3867
+ return "<br/>";
3868
+ },
3869
+ 0: function() {
3870
+ return c.length && O(c);
3871
+ },
3872
+ 1: function() {
3873
+ return S(c, "b");
3874
+ },
3875
+ 3: function() {
3876
+ return S(c, "i");
3877
+ },
3878
+ 4: function() {
3879
+ return S(c, "u");
3880
+ },
3881
+ 8: function() {
3882
+ return U(c, "display:none");
3883
+ },
3884
+ 9: function() {
3885
+ return S(c, "strike");
3886
+ },
3887
+ 22: function() {
3888
+ return U(c, "font-weight:normal;text-decoration:none;font-style:normal");
3889
+ },
3890
+ 23: function() {
3891
+ return _(c, "i");
3892
+ },
3893
+ 24: function() {
3894
+ return _(c, "u");
3895
+ },
3896
+ 39: function() {
3897
+ return R(c, h.fg);
3898
+ },
3899
+ 49: function() {
3900
+ return q(c, h.bg);
3901
+ },
3902
+ 53: function() {
3903
+ return U(c, "text-decoration:overline");
3904
+ }
3905
+ }, J;
3906
+ return A[y] ? J = A[y]() : 4 < y && y < 7 ? J = S(c, "blink") : 29 < y && y < 38 ? J = R(c, h.colors[y - 30]) : 39 < y && y < 48 ? J = q(c, h.colors[y - 40]) : 89 < y && y < 98 ? J = R(c, h.colors[8 + (y - 90)]) : 99 < y && y < 108 && (J = q(c, h.colors[8 + (y - 100)])), J;
3907
+ }
3908
+ function O(c) {
3909
+ var y = c.slice(0);
3910
+ return c.length = 0, y.reverse().map(function(h) {
3911
+ return "</" + h + ">";
3912
+ }).join("");
3913
+ }
3914
+ function x(c, y) {
3915
+ for (var h = [], A = c; A <= y; A++)
3916
+ h.push(A);
3917
+ return h;
3918
+ }
3919
+ function P(c) {
3920
+ return function(y) {
3921
+ return (c === null || y.category !== c) && c !== "all";
3922
+ };
3923
+ }
3924
+ function N(c) {
3925
+ c = parseInt(c, 10);
3926
+ var y = null;
3927
+ return c === 0 ? y = "all" : c === 1 ? y = "bold" : 2 < c && c < 5 ? y = "underline" : 4 < c && c < 7 ? y = "blink" : c === 8 ? y = "hide" : c === 9 ? y = "strike" : 29 < c && c < 38 || c === 39 || 89 < c && c < 98 ? y = "foreground-color" : (39 < c && c < 48 || c === 49 || 99 < c && c < 108) && (y = "background-color"), y;
3928
+ }
3929
+ function Y(c, y) {
3930
+ return y.escapeXML ? m.encodeXML(c) : c;
3931
+ }
3932
+ function S(c, y, h) {
3933
+ return h || (h = ""), c.push(y), "<".concat(y).concat(h ? ' style="'.concat(h, '"') : "", ">");
3934
+ }
3935
+ function U(c, y) {
3936
+ return S(c, "span", y);
3937
+ }
3938
+ function R(c, y) {
3939
+ return S(c, "span", "color:" + y);
3940
+ }
3941
+ function q(c, y) {
3942
+ return S(c, "span", "background-color:" + y);
3943
+ }
3944
+ function _(c, y) {
3945
+ var h;
3946
+ if (c.slice(-1)[0] === y && (h = c.pop()), h)
3947
+ return "</" + y + ">";
3948
+ }
3949
+ function V(c, y, h) {
3950
+ var A = !1, J = 3;
3951
+ function k() {
3952
+ return "";
3953
+ }
3954
+ function X(Z, ee) {
3955
+ return h("xterm256Foreground", ee), "";
3956
+ }
3957
+ function I(Z, ee) {
3958
+ return h("xterm256Background", ee), "";
3959
+ }
3960
+ function G(Z) {
3961
+ return y.newline ? h("display", -1) : h("text", Z), "";
3962
+ }
3963
+ function ie(Z, ee) {
3964
+ A = !0, ee.trim().length === 0 && (ee = "0"), ee = ee.trimRight(";").split(";");
3965
+ var he = i(ee), ve;
3966
+ try {
3967
+ for (he.s(); !(ve = he.n()).done; ) {
3968
+ var we = ve.value;
3969
+ h("display", we);
3970
+ }
3971
+ } catch (Ce) {
3972
+ he.e(Ce);
3973
+ } finally {
3974
+ he.f();
3975
+ }
3976
+ return "";
3977
+ }
3978
+ function Te(Z) {
3979
+ return h("text", Z), "";
3980
+ }
3981
+ function z(Z) {
3982
+ return h("rgb", Z), "";
3983
+ }
3984
+ var te = [{
3985
+ pattern: /^\x08+/,
3986
+ sub: k
3987
+ }, {
3988
+ pattern: /^\x1b\[[012]?K/,
3989
+ sub: k
3990
+ }, {
3991
+ pattern: /^\x1b\[\(B/,
3992
+ sub: k
3993
+ }, {
3994
+ pattern: /^\x1b\[[34]8;2;\d+;\d+;\d+m/,
3995
+ sub: z
3996
+ }, {
3997
+ pattern: /^\x1b\[38;5;(\d+)m/,
3998
+ sub: X
3999
+ }, {
4000
+ pattern: /^\x1b\[48;5;(\d+)m/,
4001
+ sub: I
4002
+ }, {
4003
+ pattern: /^\n/,
4004
+ sub: G
4005
+ }, {
4006
+ pattern: /^\r+\n/,
4007
+ sub: G
4008
+ }, {
4009
+ pattern: /^\r/,
4010
+ sub: G
4011
+ }, {
4012
+ pattern: /^\x1b\[((?:\d{1,3};?)+|)m/,
4013
+ sub: ie
4014
+ }, {
4015
+ // CSI n J
4016
+ // ED - Erase in Display Clears part of the screen.
4017
+ // If n is 0 (or missing), clear from cursor to end of screen.
4018
+ // If n is 1, clear from cursor to beginning of the screen.
4019
+ // If n is 2, clear entire screen (and moves cursor to upper left on DOS ANSI.SYS).
4020
+ // If n is 3, clear entire screen and delete all lines saved in the scrollback buffer
4021
+ // (this feature was added for xterm and is supported by other terminal applications).
4022
+ pattern: /^\x1b\[\d?J/,
4023
+ sub: k
4024
+ }, {
4025
+ // CSI n ; m f
4026
+ // HVP - Horizontal Vertical Position Same as CUP
4027
+ pattern: /^\x1b\[\d{0,3};\d{0,3}f/,
4028
+ sub: k
4029
+ }, {
4030
+ // catch-all for CSI sequences?
4031
+ pattern: /^\x1b\[?[\d;]{0,3}/,
4032
+ sub: k
4033
+ }, {
4034
+ /**
4035
+ * extracts real text - not containing:
4036
+ * - `\x1b' - ESC - escape (Ascii 27)
4037
+ * - '\x08' - BS - backspace (Ascii 8)
4038
+ * - `\n` - Newline - linefeed (LF) (ascii 10)
4039
+ * - `\r` - Windows Carriage Return (CR)
4040
+ */
4041
+ pattern: /^(([^\x1b\x08\r\n])+)/,
4042
+ sub: Te
4043
+ }];
4044
+ function ue(Z, ee) {
4045
+ ee > J && A || (A = !1, c = c.replace(Z.pattern, Z.sub));
4046
+ }
4047
+ var ne = [], fe = c, oe = fe.length;
4048
+ e: for (; oe > 0; ) {
4049
+ for (var be = 0, se = 0, Ee = te.length; se < Ee; be = ++se) {
4050
+ var Re = te[be];
4051
+ if (ue(Re, be), c.length !== oe) {
4052
+ oe = c.length;
4053
+ continue e;
4054
+ }
4055
+ }
4056
+ if (c.length === oe)
4057
+ break;
4058
+ ne.push(0), oe = c.length;
4059
+ }
4060
+ return ne;
4061
+ }
4062
+ function H(c, y, h) {
4063
+ return y !== "text" && (c = c.filter(P(N(h))), c.push({
4064
+ token: y,
4065
+ data: h,
4066
+ category: N(h)
4067
+ })), c;
4068
+ }
4069
+ var T = (function() {
4070
+ function c(y) {
4071
+ n(this, c), y = y || {}, y.colors && (y.colors = Object.assign({}, f.colors, y.colors)), this.options = Object.assign({}, f, y), this.stack = [], this.stickyStack = [];
4072
+ }
4073
+ return s(c, [{
4074
+ key: "toHtml",
4075
+ value: function(y) {
4076
+ var h = this;
4077
+ y = typeof y == "string" ? [y] : y;
4078
+ var A = this.stack, J = this.options, k = [];
4079
+ return this.stickyStack.forEach(function(X) {
4080
+ var I = F(A, X.token, X.data, J);
4081
+ I && k.push(I);
4082
+ }), V(y.join(""), J, function(X, I) {
4083
+ var G = F(A, X, I, J);
4084
+ G && k.push(G), J.stream && (h.stickyStack = H(h.stickyStack, X, I));
4085
+ }), A.length && k.push(O(A)), k.join("");
4086
+ }
4087
+ }]), c;
4088
+ })();
4089
+ u.exports = T;
4090
+ }
4091
+ }), St = $({
4092
+ "../node_modules/memoizerific/memoizerific.js"(t, u) {
4093
+ (function(n) {
4094
+ if (typeof t == "object" && typeof u < "u")
4095
+ u.exports = n();
4096
+ else if (typeof define == "function" && define.amd)
4097
+ define([], n);
4098
+ else {
4099
+ var o;
4100
+ typeof window < "u" ? o = window : typeof global < "u" ? o = global : typeof self < "u" ? o = self : o = this, o.memoizerific = n();
4101
+ }
4102
+ })(function() {
4103
+ return (function n(o, s, i) {
4104
+ function p(f, b) {
4105
+ if (!s[f]) {
4106
+ if (!o[f]) {
4107
+ var D = typeof qe == "function" && qe;
4108
+ if (!b && D) return D(f, !0);
4109
+ if (d) return d(f, !0);
4110
+ var v = new Error("Cannot find module '" + f + "'");
4111
+ throw v.code = "MODULE_NOT_FOUND", v;
4112
+ }
4113
+ var C = s[f] = { exports: {} };
4114
+ o[f][0].call(C.exports, function(F) {
4115
+ var w = o[f][1][F];
4116
+ return p(w || F);
4117
+ }, C, C.exports, n, o, s, i);
4118
+ }
4119
+ return s[f].exports;
4120
+ }
4121
+ for (var d = typeof qe == "function" && qe, m = 0; m < i.length; m++) p(i[m]);
4122
+ return p;
4123
+ })({ 1: [function(n, o, s) {
4124
+ o.exports = function(i) {
4125
+ if (typeof Map != "function" || i) {
4126
+ var p = n("./similar");
4127
+ return new p();
4128
+ } else
4129
+ return /* @__PURE__ */ new Map();
4130
+ };
4131
+ }, { "./similar": 2 }], 2: [function(n, o, s) {
4132
+ function i() {
4133
+ return this.list = [], this.lastItem = void 0, this.size = 0, this;
4134
+ }
4135
+ i.prototype.get = function(p) {
4136
+ var d;
4137
+ if (this.lastItem && this.isEqual(this.lastItem.key, p))
4138
+ return this.lastItem.val;
4139
+ if (d = this.indexOf(p), d >= 0)
4140
+ return this.lastItem = this.list[d], this.list[d].val;
4141
+ }, i.prototype.set = function(p, d) {
4142
+ var m;
4143
+ return this.lastItem && this.isEqual(this.lastItem.key, p) ? (this.lastItem.val = d, this) : (m = this.indexOf(p), m >= 0 ? (this.lastItem = this.list[m], this.list[m].val = d, this) : (this.lastItem = { key: p, val: d }, this.list.push(this.lastItem), this.size++, this));
4144
+ }, i.prototype.delete = function(p) {
4145
+ var d;
4146
+ if (this.lastItem && this.isEqual(this.lastItem.key, p) && (this.lastItem = void 0), d = this.indexOf(p), d >= 0)
4147
+ return this.size--, this.list.splice(d, 1)[0];
4148
+ }, i.prototype.has = function(p) {
4149
+ var d;
4150
+ return this.lastItem && this.isEqual(this.lastItem.key, p) ? !0 : (d = this.indexOf(p), d >= 0 ? (this.lastItem = this.list[d], !0) : !1);
4151
+ }, i.prototype.forEach = function(p, d) {
4152
+ var m;
4153
+ for (m = 0; m < this.size; m++)
4154
+ p.call(d || this, this.list[m].val, this.list[m].key, this);
4155
+ }, i.prototype.indexOf = function(p) {
4156
+ var d;
4157
+ for (d = 0; d < this.size; d++)
4158
+ if (this.isEqual(this.list[d].key, p))
4159
+ return d;
4160
+ return -1;
4161
+ }, i.prototype.isEqual = function(p, d) {
4162
+ return p === d || p !== p && d !== d;
4163
+ }, o.exports = i;
4164
+ }, {}], 3: [function(n, o, s) {
4165
+ var i = n("map-or-similar");
4166
+ o.exports = function(f) {
4167
+ var b = new i(!1), D = [];
4168
+ return function(v) {
4169
+ var C = function() {
4170
+ var F = b, w, L, O = arguments.length - 1, x = Array(O + 1), P = !0, N;
4171
+ if ((C.numArgs || C.numArgs === 0) && C.numArgs !== O + 1)
4172
+ throw new Error("Memoizerific functions should always be called with the same number of arguments");
4173
+ for (N = 0; N < O; N++) {
4174
+ if (x[N] = {
4175
+ cacheItem: F,
4176
+ arg: arguments[N]
4177
+ }, F.has(arguments[N])) {
4178
+ F = F.get(arguments[N]);
4179
+ continue;
4180
+ }
4181
+ P = !1, w = new i(!1), F.set(arguments[N], w), F = w;
4182
+ }
4183
+ return P && (F.has(arguments[O]) ? L = F.get(arguments[O]) : P = !1), P || (L = v.apply(null, arguments), F.set(arguments[O], L)), f > 0 && (x[O] = {
4184
+ cacheItem: F,
4185
+ arg: arguments[O]
4186
+ }, P ? p(D, x) : D.push(x), D.length > f && d(D.shift())), C.wasMemoized = P, C.numArgs = O + 1, L;
4187
+ };
4188
+ return C.limit = f, C.wasMemoized = !1, C.cache = b, C.lru = D, C;
4189
+ };
4190
+ };
4191
+ function p(f, b) {
4192
+ var D = f.length, v = b.length, C, F, w;
4193
+ for (F = 0; F < D; F++) {
4194
+ for (C = !0, w = 0; w < v; w++)
4195
+ if (!m(f[F][w].arg, b[w].arg)) {
4196
+ C = !1;
4197
+ break;
4198
+ }
4199
+ if (C)
4200
+ break;
4201
+ }
4202
+ f.push(f.splice(F, 1)[0]);
4203
+ }
4204
+ function d(f) {
4205
+ var b = f.length, D = f[b - 1], v, C;
4206
+ for (D.cacheItem.delete(D.arg), C = b - 2; C >= 0 && (D = f[C], v = D.cacheItem.get(D.arg), !v || !v.size); C--)
4207
+ D.cacheItem.delete(D.arg);
4208
+ }
4209
+ function m(f, b) {
4210
+ return f === b || f !== f && b !== b;
4211
+ }
4212
+ }, { "map-or-similar": 1 }] }, {}, [3])(3);
4213
+ });
4214
+ }
4215
+ }), qu = (t) => t.transports !== void 0, ku = () => Math.random().toString(16).slice(2), _u = class {
4216
+ constructor(t = {}) {
4217
+ this.sender = ku(), this.events = {}, this.data = {}, this.transports = [], this.isAsync = t.async || !1, qu(t) ? (this.transports = t.transports || [], this.transports.forEach((u) => {
4218
+ u.setHandler((n) => this.handleEvent(n));
4219
+ })) : this.transports = t.transport ? [t.transport] : [], this.transports.forEach((u) => {
4220
+ u.setHandler((n) => this.handleEvent(n));
4221
+ });
4222
+ }
4223
+ get hasTransport() {
4224
+ return this.transports.length > 0;
4225
+ }
4226
+ addListener(t, u) {
4227
+ this.events[t] = this.events[t] || [], this.events[t].push(u);
4228
+ }
4229
+ emit(t, ...u) {
4230
+ let n = { type: t, args: u, from: this.sender }, o = {};
4231
+ u.length >= 1 && u[0] && u[0].options && (o = u[0].options);
4232
+ let s = () => {
4233
+ this.transports.forEach((i) => {
4234
+ i.send(n, o);
4235
+ }), this.handleEvent(n);
4236
+ };
4237
+ this.isAsync ? setImmediate(s) : s();
4238
+ }
4239
+ last(t) {
4240
+ return this.data[t];
4241
+ }
4242
+ eventNames() {
4243
+ return Object.keys(this.events);
4244
+ }
4245
+ listenerCount(t) {
4246
+ let u = this.listeners(t);
4247
+ return u ? u.length : 0;
4248
+ }
4249
+ listeners(t) {
4250
+ return this.events[t] || void 0;
4251
+ }
4252
+ once(t, u) {
4253
+ let n = this.onceListener(t, u);
4254
+ this.addListener(t, n);
4255
+ }
4256
+ removeAllListeners(t) {
4257
+ t ? this.events[t] && delete this.events[t] : this.events = {};
4258
+ }
4259
+ removeListener(t, u) {
4260
+ let n = this.listeners(t);
4261
+ n && (this.events[t] = n.filter((o) => o !== u));
4262
+ }
4263
+ on(t, u) {
4264
+ this.addListener(t, u);
4265
+ }
4266
+ off(t, u) {
4267
+ this.removeListener(t, u);
4268
+ }
4269
+ handleEvent(t) {
4270
+ let u = this.listeners(t.type);
4271
+ u && u.length && u.forEach((n) => {
4272
+ n.apply(t, t.args);
4273
+ }), this.data[t.type] = t.args;
4274
+ }
4275
+ onceListener(t, u) {
4276
+ let n = (...o) => (this.removeListener(t, n), u(...o));
4277
+ return n;
4278
+ }
4279
+ }, { document: un, location: nn } = re, { WebSocket: an } = re, { CONFIG_TYPE: on } = re;
4280
+ function Lu() {
4281
+ let t = {
4282
+ setHandler: () => {
4283
+ },
4284
+ send: () => {
4285
+ }
4286
+ };
4287
+ return new _u({ transport: t });
4288
+ }
4289
+ var Ru = class {
4290
+ constructor() {
4291
+ this.getChannel = () => {
4292
+ if (!this.channel) {
4293
+ let t = Lu();
4294
+ return this.setChannel(t), t;
4295
+ }
4296
+ return this.channel;
4297
+ }, this.ready = () => this.promise, this.hasChannel = () => !!this.channel, this.setChannel = (t) => {
4298
+ this.channel = t, this.resolve();
4299
+ }, this.promise = new Promise((t) => {
4300
+ this.resolve = () => t(this.getChannel());
4301
+ });
4302
+ }
4303
+ }, Ve = "__STORYBOOK_ADDONS_PREVIEW";
4304
+ function Iu() {
4305
+ return re[Ve] || (re[Ve] = new Ru()), re[Ve];
4306
+ }
4307
+ var ju = Iu(), Uu = (t, u) => t.length === u.length && t.every((n, o) => n === u[o]), Jt = () => new Error("Storybook preview hooks can only be called inside decorators and story functions.");
4308
+ function Mu() {
4309
+ return re.STORYBOOK_HOOKS_CONTEXT || null;
4310
+ }
4311
+ function Nt() {
4312
+ let t = Mu();
4313
+ if (t == null)
4314
+ throw Jt();
4315
+ return t;
4316
+ }
4317
+ function Vu(t, u, n) {
4318
+ let o = Nt();
4319
+ if (o.currentPhase === "MOUNT") {
4320
+ n != null && !Array.isArray(n) && ke.warn(
4321
+ `${t} received a final argument that is not an array (instead, received ${n}). When specified, the final argument must be an array.`
4322
+ );
4323
+ let s = { name: t, deps: n };
4324
+ return o.currentHooks.push(s), u(s), s;
4325
+ }
4326
+ if (o.currentPhase === "UPDATE") {
4327
+ let s = o.getNextHook();
4328
+ if (s == null)
4329
+ throw new Error("Rendered more hooks than during the previous render.");
4330
+ return s.name !== t && ke.warn(
4331
+ `Storybook has detected a change in the order of Hooks${o.currentDecoratorName ? ` called by ${o.currentDecoratorName}` : ""}. This will lead to bugs and errors if not fixed.`
4332
+ ), n != null && s.deps == null && ke.warn(
4333
+ `${t} received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.`
4334
+ ), n != null && s.deps != null && n.length !== s.deps.length && ke.warn(`The final argument passed to ${t} changed size between renders. The order and size of this array must remain constant.
4335
+ Previous: ${s.deps}
4336
+ Incoming: ${n}`), (n == null || s.deps == null || !Uu(n, s.deps)) && (u(s), s.deps = n), s;
4337
+ }
4338
+ throw Jt();
4339
+ }
4340
+ function Ot(t, u, n) {
4341
+ let { memoizedState: o } = Vu(
4342
+ t,
4343
+ (s) => {
4344
+ s.memoizedState = u();
4345
+ },
4346
+ n
4347
+ );
4348
+ return o;
4349
+ }
4350
+ function Hu(t, u) {
4351
+ return Ot(t, () => ({ current: u }), []);
4352
+ }
4353
+ function sn(t) {
4354
+ return Hu("useRef", t);
4355
+ }
4356
+ function ln(t, u) {
4357
+ let n = Nt(), o = Ot("useEffect", () => ({ create: t }), u);
4358
+ n.currentEffects.includes(o) || n.currentEffects.push(o);
4359
+ }
4360
+ Ae(St(), 1);
4361
+ var Ku = Ae(St(), 1);
4362
+ (0, Ku.default)(1)(
4363
+ (t) => Object.values(t).reduce(
4364
+ (u, n) => (u[n.importPath] = u[n.importPath] || n, u),
4365
+ {}
4366
+ )
4367
+ );
4368
+ var Gu = (t) => Array.isArray(t) ? t : t ? [t] : [];
4369
+ He`
4370
+ CSF .story annotations deprecated; annotate story functions directly:
4371
+ - StoryFn.story.name => StoryFn.storyName
4372
+ - StoryFn.story.(parameters|decorators) => StoryFn.(parameters|decorators)
4373
+ See https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#hoisted-csf-annotations for details and codemod.
4374
+ `;
4375
+ function zu(t, u, n) {
4376
+ let o = n(t);
4377
+ return (s) => u(o, s);
4378
+ }
4379
+ function Yu({
4380
+ componentId: t,
4381
+ title: u,
4382
+ kind: n,
4383
+ id: o,
4384
+ name: s,
4385
+ story: i,
4386
+ parameters: p,
4387
+ initialArgs: d,
4388
+ argTypes: m,
4389
+ ...f
4390
+ } = {}) {
4391
+ return f;
4392
+ }
4393
+ function cn(t, u) {
4394
+ let n = {}, o = (i) => (p) => {
4395
+ if (!n.value)
4396
+ throw new Error("Decorated function called without init");
4397
+ return n.value = {
4398
+ ...n.value,
4399
+ ...Yu(p)
4400
+ }, i(n.value);
4401
+ }, s = u.reduce(
4402
+ (i, p) => zu(i, p, o),
4403
+ t
4404
+ );
4405
+ return (i) => (n.value = i, s(i));
4406
+ }
4407
+ var Xu = (t) => async () => {
4408
+ let u = [];
4409
+ for (let n of t) {
4410
+ let o = await n();
4411
+ o && u.unshift(o);
4412
+ }
4413
+ return async () => {
4414
+ for (let n of u)
4415
+ await n();
4416
+ };
4417
+ };
4418
+ function Wu(t) {
4419
+ return async (u, n, o) => {
4420
+ await t.reduceRight(
4421
+ (s, i) => async () => i(u, s, o),
4422
+ async () => n(o)
4423
+ )();
4424
+ };
4425
+ }
4426
+ function Oe(t, u) {
4427
+ return t.map((n) => n.default?.[u] ?? n[u]).filter(Boolean);
4428
+ }
4429
+ function de(t, u, n = {}) {
4430
+ return Oe(t, u).reduce((o, s) => {
4431
+ let i = Gu(s);
4432
+ return n.reverseFileOrder ? [...i, ...o] : [...o, ...i];
4433
+ }, []);
4434
+ }
4435
+ function _e(t, u) {
4436
+ return Object.assign({}, ...Oe(t, u));
4437
+ }
4438
+ function Be(t, u) {
4439
+ return Oe(t, u).pop();
4440
+ }
4441
+ function pn(t) {
4442
+ let u = de(t, "argTypesEnhancers"), n = Oe(t, "runStep"), o = de(t, "beforeAll");
4443
+ return {
4444
+ parameters: We(...Oe(t, "parameters")),
4445
+ decorators: de(t, "decorators", {
4446
+ reverseFileOrder: !(re.FEATURES?.legacyDecoratorFileOrder ?? !1)
4447
+ }),
4448
+ args: _e(t, "args"),
4449
+ argsEnhancers: de(t, "argsEnhancers"),
4450
+ argTypes: _e(t, "argTypes"),
4451
+ argTypesEnhancers: [
4452
+ ...u.filter((s) => !s.secondPass),
4453
+ ...u.filter((s) => s.secondPass)
4454
+ ],
4455
+ initialGlobals: _e(t, "initialGlobals"),
4456
+ globalTypes: _e(t, "globalTypes"),
4457
+ loaders: de(t, "loaders"),
4458
+ beforeAll: Xu(o),
4459
+ beforeEach: de(t, "beforeEach"),
4460
+ afterEach: de(t, "afterEach"),
4461
+ render: Be(t, "render"),
4462
+ renderToCanvas: Be(t, "renderToCanvas"),
4463
+ applyDecorators: Be(t, "applyDecorators"),
4464
+ runStep: Wu(n),
4465
+ tags: de(t, "tags"),
4466
+ mount: Be(t, "mount"),
4467
+ testingLibraryRender: Be(t, "testingLibraryRender")
4468
+ };
4469
+ }
4470
+ var { fetch: dn } = re;
4471
+ Ae(Ge(), 1);
4472
+ Ae(Ge(), 1);
4473
+ var { history: yn, document: mn } = re, $u = Ae(Pu(), 1);
4474
+ Ae(Ge(), 1);
4475
+ var { document: fn } = re;
4476
+ new $u.default({
4477
+ escapeXML: !0
4478
+ });
4479
+ var { document: hn } = re;
4480
+ async function gn(t, u) {
4481
+ let n = u.parameters?.docs?.source?.transform, { id: o, unmappedArgs: s } = u, i = n && t ? n?.(t, u) : t, p = i ? await i : void 0;
4482
+ ju.getChannel().emit(Fu, {
4483
+ id: o,
4484
+ source: p,
4485
+ args: s
4486
+ });
4487
+ }
4488
+ export {
4489
+ Zu as I,
4490
+ Bu as S,
4491
+ Tr as T,
4492
+ ju as a,
4493
+ rn as b,
4494
+ W as c,
4495
+ cn as d,
4496
+ tn as e,
4497
+ en as f,
4498
+ Dt as g,
4499
+ ft as h,
4500
+ nu as i,
4501
+ ln as j,
4502
+ gn as k,
4503
+ vr as l,
4504
+ pn as m,
4505
+ sn as u
4506
+ };
4507
+ //# sourceMappingURL=chunk-SS2NHR7W-qmI2h7CJ.js.map