@kubb/core 4.3.1 → 4.4.1

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 (147) hide show
  1. package/dist/{URLPath-BYceu_vY.js → URLPath-DbWtfVa1.js} +2 -3
  2. package/dist/{URLPath-BYceu_vY.js.map → URLPath-DbWtfVa1.js.map} +1 -1
  3. package/dist/{URLPath-8WVzHBnA.cjs → URLPath-Dir2mxRT.cjs} +6 -7
  4. package/dist/{URLPath-8WVzHBnA.cjs.map → URLPath-Dir2mxRT.cjs.map} +1 -1
  5. package/dist/{chunk-CZg_9w7l.cjs → chunk-CUT6urMc.cjs} +0 -23
  6. package/dist/hooks.cjs +6 -6
  7. package/dist/hooks.cjs.map +1 -1
  8. package/dist/hooks.d.cts +5 -5
  9. package/dist/hooks.d.ts +5 -5
  10. package/dist/hooks.js +1 -1
  11. package/dist/hooks.js.map +1 -1
  12. package/dist/index.cjs +128 -62
  13. package/dist/index.cjs.map +1 -1
  14. package/dist/index.d.cts +22 -18
  15. package/dist/index.d.ts +22 -18
  16. package/dist/index.js +116 -53
  17. package/dist/index.js.map +1 -1
  18. package/dist/{logger-BXL0YCrv.cjs → logger-BIzTtBYJ.cjs} +48 -5
  19. package/dist/logger-BIzTtBYJ.cjs.map +1 -0
  20. package/dist/{logger-DpoDtxfo.d.cts → logger-BjfDkvkn.d.cts} +1 -1
  21. package/dist/{logger-BA-za85-.d.ts → logger-BwhJWK-H.d.ts} +1 -1
  22. package/dist/{logger-CDxSrFkR.js → logger-Bxe022ug.js} +39 -4
  23. package/dist/logger-Bxe022ug.js.map +1 -0
  24. package/dist/logger.cjs +1 -2
  25. package/dist/logger.d.cts +1 -1
  26. package/dist/logger.d.ts +1 -1
  27. package/dist/logger.js +1 -2
  28. package/dist/{prompt-DgONOpPH.cjs → prompt-D5DZPtWc.cjs} +2 -2
  29. package/dist/{prompt-DgONOpPH.cjs.map → prompt-D5DZPtWc.cjs.map} +1 -1
  30. package/dist/{prompt-DBVnG4Me.js → prompt-xM0onfy8.js} +1 -1
  31. package/dist/{prompt-DBVnG4Me.js.map → prompt-xM0onfy8.js.map} +1 -1
  32. package/dist/transformers-CeNW0G32.js +339 -0
  33. package/dist/transformers-CeNW0G32.js.map +1 -0
  34. package/dist/transformers-DWLXDYKb.cjs +443 -0
  35. package/dist/transformers-DWLXDYKb.cjs.map +1 -0
  36. package/dist/transformers.cjs +7 -6
  37. package/dist/transformers.js +1 -3
  38. package/dist/{types-DPeNK0FO.d.ts → types-CVONMhN_.d.cts} +51 -53
  39. package/dist/{types-DNxlynJr.d.cts → types-CyDeSlGF.d.ts} +51 -53
  40. package/dist/{types-BzI9JlV8.d.ts → types-DCR_QgGt.d.ts} +1 -1
  41. package/dist/{types-C3ea5qNG.d.cts → types-DueAg3XP.d.cts} +1 -1
  42. package/dist/utils.cjs +7 -7
  43. package/dist/utils.cjs.map +1 -1
  44. package/dist/utils.d.cts +1 -1
  45. package/dist/utils.d.ts +1 -1
  46. package/dist/utils.js +4 -6
  47. package/dist/utils.js.map +1 -1
  48. package/package.json +15 -20
  49. package/src/BarrelManager.ts +1 -1
  50. package/src/FileManager.ts +5 -2
  51. package/src/PluginManager.ts +4 -8
  52. package/src/build.ts +39 -42
  53. package/src/fs/index.ts +0 -7
  54. package/src/hooks/useMode.ts +2 -2
  55. package/src/hooks/usePlugin.ts +1 -1
  56. package/src/hooks/usePluginManager.ts +1 -1
  57. package/src/plugin.ts +10 -5
  58. package/src/types.ts +3 -2
  59. package/src/utils/TreeNode.ts +1 -1
  60. package/dist/acorn-BAVXZMtK.cjs +0 -5082
  61. package/dist/acorn-BAVXZMtK.cjs.map +0 -1
  62. package/dist/acorn-D-VhIOLw.js +0 -5080
  63. package/dist/acorn-D-VhIOLw.js.map +0 -1
  64. package/dist/angular-Bp0XO9db.cjs +0 -3631
  65. package/dist/angular-Bp0XO9db.cjs.map +0 -1
  66. package/dist/angular-Czhp4eq5.js +0 -3629
  67. package/dist/angular-Czhp4eq5.js.map +0 -1
  68. package/dist/babel-DCR_B4Qn.js +0 -10033
  69. package/dist/babel-DCR_B4Qn.js.map +0 -1
  70. package/dist/babel-NI0v59ga.cjs +0 -10035
  71. package/dist/babel-NI0v59ga.cjs.map +0 -1
  72. package/dist/casing-BSeq_teY.js +0 -100
  73. package/dist/casing-BSeq_teY.js.map +0 -1
  74. package/dist/casing-CP-9GGdK.cjs +0 -112
  75. package/dist/casing-CP-9GGdK.cjs.map +0 -1
  76. package/dist/chunk-1SJ2vVWa.js +0 -35
  77. package/dist/estree-C3BZPlpU.cjs +0 -6930
  78. package/dist/estree-C3BZPlpU.cjs.map +0 -1
  79. package/dist/estree-DU2NummP.js +0 -6926
  80. package/dist/estree-DU2NummP.js.map +0 -1
  81. package/dist/flow-CWUBUkoi.cjs +0 -52252
  82. package/dist/flow-CWUBUkoi.cjs.map +0 -1
  83. package/dist/flow-JiEbweKj.js +0 -52250
  84. package/dist/flow-JiEbweKj.js.map +0 -1
  85. package/dist/fs-BIPMUfpW.js +0 -90
  86. package/dist/fs-BIPMUfpW.js.map +0 -1
  87. package/dist/fs-RSVoUw3S.cjs +0 -141
  88. package/dist/fs-RSVoUw3S.cjs.map +0 -1
  89. package/dist/fs.cjs +0 -17
  90. package/dist/fs.d.cts +0 -2
  91. package/dist/fs.d.ts +0 -2
  92. package/dist/fs.js +0 -4
  93. package/dist/glimmer-CX9OqG1j.cjs +0 -7275
  94. package/dist/glimmer-CX9OqG1j.cjs.map +0 -1
  95. package/dist/glimmer-t9nWn9aE.js +0 -7271
  96. package/dist/glimmer-t9nWn9aE.js.map +0 -1
  97. package/dist/graphql-DjErlIi5.js +0 -1897
  98. package/dist/graphql-DjErlIi5.js.map +0 -1
  99. package/dist/graphql-GOxQAKxM.cjs +0 -1902
  100. package/dist/graphql-GOxQAKxM.cjs.map +0 -1
  101. package/dist/html-CWrdYAhQ.cjs +0 -6560
  102. package/dist/html-CWrdYAhQ.cjs.map +0 -1
  103. package/dist/html-_apcbx34.js +0 -6555
  104. package/dist/html-_apcbx34.js.map +0 -1
  105. package/dist/index-BTe91LHd.d.ts +0 -145
  106. package/dist/index-BmQIxvw0.d.cts +0 -144
  107. package/dist/logger-BXL0YCrv.cjs.map +0 -1
  108. package/dist/logger-CDxSrFkR.js.map +0 -1
  109. package/dist/markdown-ckUc3Q6q.js +0 -6750
  110. package/dist/markdown-ckUc3Q6q.js.map +0 -1
  111. package/dist/markdown-pzqiRmft.cjs +0 -6755
  112. package/dist/markdown-pzqiRmft.cjs.map +0 -1
  113. package/dist/meriyah-BjnGqpUs.js +0 -8928
  114. package/dist/meriyah-BjnGqpUs.js.map +0 -1
  115. package/dist/meriyah-D_x7itbT.cjs +0 -8930
  116. package/dist/meriyah-D_x7itbT.cjs.map +0 -1
  117. package/dist/mocks.cjs +0 -16830
  118. package/dist/mocks.cjs.map +0 -1
  119. package/dist/mocks.d.cts +0 -13
  120. package/dist/mocks.d.ts +0 -13
  121. package/dist/mocks.js +0 -16818
  122. package/dist/mocks.js.map +0 -1
  123. package/dist/postcss-B_c2wbFu.cjs +0 -6689
  124. package/dist/postcss-B_c2wbFu.cjs.map +0 -1
  125. package/dist/postcss-v7BP6SZ-.js +0 -6684
  126. package/dist/postcss-v7BP6SZ-.js.map +0 -1
  127. package/dist/transformers-BH0KLJJP.cjs +0 -804
  128. package/dist/transformers-BH0KLJJP.cjs.map +0 -1
  129. package/dist/transformers-DzHGqYO2.js +0 -702
  130. package/dist/transformers-DzHGqYO2.js.map +0 -1
  131. package/dist/typescript-6kMN6Wqz.cjs +0 -23014
  132. package/dist/typescript-6kMN6Wqz.cjs.map +0 -1
  133. package/dist/typescript-B_IBfKSe.js +0 -23002
  134. package/dist/typescript-B_IBfKSe.js.map +0 -1
  135. package/dist/typescript-C5hce4HG.cjs +0 -4
  136. package/dist/typescript-Cas1XcNz.js +0 -3
  137. package/dist/write-BJfM7G1_.cjs +0 -49
  138. package/dist/write-BJfM7G1_.cjs.map +0 -1
  139. package/dist/write-CxO1CDML.js +0 -40
  140. package/dist/write-CxO1CDML.js.map +0 -1
  141. package/dist/yaml-BfWM_B73.js +0 -5209
  142. package/dist/yaml-BfWM_B73.js.map +0 -1
  143. package/dist/yaml-DZs6MhV1.cjs +0 -5215
  144. package/dist/yaml-DZs6MhV1.cjs.map +0 -1
  145. package/src/fs/types.ts +0 -132
  146. package/src/fs/unlink.ts +0 -5
  147. package/src/mocks/index.ts +0 -82
@@ -0,0 +1,339 @@
1
+ import { merge, merge as merge$1 } from "remeda";
2
+ import { orderBy, orderBy as orderBy$1 } from "natural-orderby";
3
+
4
+ //#region src/transformers/transformReservedWord.ts
5
+ /**
6
+ * @link https://github.com/jonschlinkert/reserved/blob/master/index.js
7
+ */
8
+ const reservedWords = [
9
+ "abstract",
10
+ "arguments",
11
+ "boolean",
12
+ "break",
13
+ "byte",
14
+ "case",
15
+ "catch",
16
+ "char",
17
+ "class",
18
+ "const",
19
+ "continue",
20
+ "debugger",
21
+ "default",
22
+ "delete",
23
+ "do",
24
+ "double",
25
+ "else",
26
+ "enum",
27
+ "eval",
28
+ "export",
29
+ "extends",
30
+ "false",
31
+ "final",
32
+ "finally",
33
+ "float",
34
+ "for",
35
+ "function",
36
+ "goto",
37
+ "if",
38
+ "implements",
39
+ "import",
40
+ "in",
41
+ "instanceof",
42
+ "int",
43
+ "interface",
44
+ "let",
45
+ "long",
46
+ "native",
47
+ "new",
48
+ "null",
49
+ "package",
50
+ "private",
51
+ "protected",
52
+ "public",
53
+ "return",
54
+ "short",
55
+ "static",
56
+ "super",
57
+ "switch",
58
+ "synchronized",
59
+ "this",
60
+ "throw",
61
+ "throws",
62
+ "transient",
63
+ "true",
64
+ "try",
65
+ "typeof",
66
+ "var",
67
+ "void",
68
+ "volatile",
69
+ "while",
70
+ "with",
71
+ "yield",
72
+ "Array",
73
+ "Date",
74
+ "eval",
75
+ "function",
76
+ "hasOwnProperty",
77
+ "Infinity",
78
+ "isFinite",
79
+ "isNaN",
80
+ "isPrototypeOf",
81
+ "length",
82
+ "Math",
83
+ "name",
84
+ "NaN",
85
+ "Number",
86
+ "Object",
87
+ "prototype",
88
+ "String",
89
+ "toString",
90
+ "undefined",
91
+ "valueOf"
92
+ ];
93
+ function transformReservedWord(word) {
94
+ if (word && reservedWords.includes(word) || word?.match(/^\d/)) return `_${word}`;
95
+ return word;
96
+ }
97
+ function isValidVarName(name) {
98
+ try {
99
+ Function(`var ${name}`);
100
+ } catch (_e) {
101
+ return false;
102
+ }
103
+ return true;
104
+ }
105
+
106
+ //#endregion
107
+ //#region src/transformers/trim.ts
108
+ function trim(text) {
109
+ return text.replaceAll(/\n/g, "").trim();
110
+ }
111
+ function trimQuotes(text) {
112
+ if (text.match(/^"(.*)"$/)) return text.replace(/^"(.*)"$/, "$1");
113
+ if (text.match(/^'(.*)'$/)) return text.replace(/^'(.*)'$/, "$1");
114
+ if (text.match(/^`(.*)`$/)) return text.replace(/^`(.*)`$/, "$1");
115
+ return text;
116
+ }
117
+
118
+ //#endregion
119
+ //#region ../../node_modules/.pnpm/camelcase@8.0.0/node_modules/camelcase/index.js
120
+ const UPPERCASE = /[\p{Lu}]/u;
121
+ const LOWERCASE = /[\p{Ll}]/u;
122
+ const LEADING_CAPITAL = /^[\p{Lu}](?![\p{Lu}])/gu;
123
+ const IDENTIFIER = /([\p{Alpha}\p{N}_]|$)/u;
124
+ const SEPARATORS = /[_.\- ]+/;
125
+ const LEADING_SEPARATORS = /* @__PURE__ */ new RegExp("^" + SEPARATORS.source);
126
+ const SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, "gu");
127
+ const NUMBERS_AND_IDENTIFIER = new RegExp("\\d+" + IDENTIFIER.source, "gu");
128
+ const preserveCamelCase = (string, toLowerCase, toUpperCase, preserveConsecutiveUppercase$1) => {
129
+ let isLastCharLower = false;
130
+ let isLastCharUpper = false;
131
+ let isLastLastCharUpper = false;
132
+ let isLastLastCharPreserved = false;
133
+ for (let index = 0; index < string.length; index++) {
134
+ const character = string[index];
135
+ isLastLastCharPreserved = index > 2 ? string[index - 3] === "-" : true;
136
+ if (isLastCharLower && UPPERCASE.test(character)) {
137
+ string = string.slice(0, index) + "-" + string.slice(index);
138
+ isLastCharLower = false;
139
+ isLastLastCharUpper = isLastCharUpper;
140
+ isLastCharUpper = true;
141
+ index++;
142
+ } else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE.test(character) && (!isLastLastCharPreserved || preserveConsecutiveUppercase$1)) {
143
+ string = string.slice(0, index - 1) + "-" + string.slice(index - 1);
144
+ isLastLastCharUpper = isLastCharUpper;
145
+ isLastCharUpper = false;
146
+ isLastCharLower = true;
147
+ } else {
148
+ isLastCharLower = toLowerCase(character) === character && toUpperCase(character) !== character;
149
+ isLastLastCharUpper = isLastCharUpper;
150
+ isLastCharUpper = toUpperCase(character) === character && toLowerCase(character) !== character;
151
+ }
152
+ }
153
+ return string;
154
+ };
155
+ const preserveConsecutiveUppercase = (input, toLowerCase) => {
156
+ LEADING_CAPITAL.lastIndex = 0;
157
+ return input.replaceAll(LEADING_CAPITAL, (match) => toLowerCase(match));
158
+ };
159
+ const postProcess = (input, toUpperCase) => {
160
+ SEPARATORS_AND_IDENTIFIER.lastIndex = 0;
161
+ NUMBERS_AND_IDENTIFIER.lastIndex = 0;
162
+ return input.replaceAll(NUMBERS_AND_IDENTIFIER, (match, pattern, offset) => ["_", "-"].includes(input.charAt(offset + match.length)) ? match : toUpperCase(match)).replaceAll(SEPARATORS_AND_IDENTIFIER, (_, identifier) => toUpperCase(identifier));
163
+ };
164
+ function camelCase$1(input, options) {
165
+ if (!(typeof input === "string" || Array.isArray(input))) throw new TypeError("Expected the input to be `string | string[]`");
166
+ options = {
167
+ pascalCase: false,
168
+ preserveConsecutiveUppercase: false,
169
+ ...options
170
+ };
171
+ if (Array.isArray(input)) input = input.map((x) => x.trim()).filter((x) => x.length).join("-");
172
+ else input = input.trim();
173
+ if (input.length === 0) return "";
174
+ const toLowerCase = options.locale === false ? (string) => string.toLowerCase() : (string) => string.toLocaleLowerCase(options.locale);
175
+ const toUpperCase = options.locale === false ? (string) => string.toUpperCase() : (string) => string.toLocaleUpperCase(options.locale);
176
+ if (input.length === 1) {
177
+ if (SEPARATORS.test(input)) return "";
178
+ return options.pascalCase ? toUpperCase(input) : toLowerCase(input);
179
+ }
180
+ if (input !== toLowerCase(input)) input = preserveCamelCase(input, toLowerCase, toUpperCase, options.preserveConsecutiveUppercase);
181
+ input = input.replace(LEADING_SEPARATORS, "");
182
+ input = options.preserveConsecutiveUppercase ? preserveConsecutiveUppercase(input, toLowerCase) : toLowerCase(input);
183
+ if (options.pascalCase) input = toUpperCase(input.charAt(0)) + input.slice(1);
184
+ return postProcess(input, toUpperCase);
185
+ }
186
+
187
+ //#endregion
188
+ //#region src/transformers/casing.ts
189
+ function camelCase(text, { isFile, prefix = "", suffix = "" } = {}) {
190
+ if (isFile) {
191
+ const splitArray = text.split(".");
192
+ return splitArray.map((item, i) => i === splitArray.length - 1 ? camelCase(item, {
193
+ prefix,
194
+ suffix
195
+ }) : camelCase(item)).join("/");
196
+ }
197
+ return camelCase$1(`${prefix} ${text} ${suffix}`, {
198
+ pascalCase: false,
199
+ preserveConsecutiveUppercase: true
200
+ }).replace(/[^a-zA-Z0-9]/g, "");
201
+ }
202
+ function pascalCase(text, { isFile, prefix = "", suffix = "" } = {}) {
203
+ if (isFile) {
204
+ const splitArray = text.split(".");
205
+ return splitArray.map((item, i) => i === splitArray.length - 1 ? pascalCase(item, {
206
+ prefix,
207
+ suffix
208
+ }) : camelCase(item)).join("/");
209
+ }
210
+ return camelCase$1(`${prefix} ${text} ${suffix}`, {
211
+ pascalCase: true,
212
+ preserveConsecutiveUppercase: true
213
+ }).replace(/[^a-zA-Z0-9]/g, "");
214
+ }
215
+
216
+ //#endregion
217
+ //#region src/transformers/combineCodes.ts
218
+ function combineCodes(codes) {
219
+ return codes.join("\n");
220
+ }
221
+
222
+ //#endregion
223
+ //#region src/transformers/createJSDocBlockText.ts
224
+ function createJSDocBlockText({ comments }) {
225
+ const filteredComments = comments.filter(Boolean);
226
+ if (!filteredComments.length) return "";
227
+ return `/**\n * ${filteredComments.join("\n * ")}\n */`;
228
+ }
229
+
230
+ //#endregion
231
+ //#region src/transformers/escape.ts
232
+ function escape(text) {
233
+ return text ? text.replaceAll("`", "\\`") : "";
234
+ }
235
+ /**
236
+ * Escape all characters not included in SingleStringCharacters and DoubleStringCharacters on
237
+ * @link http://www.ecma-international.org/ecma-262/5.1/#sec-7.8.4
238
+ * @link https://github.com/joliss/js-string-escape/blob/master/index.js
239
+ */
240
+ function jsStringEscape(input) {
241
+ return `${input}`.replace(/["'\\\n\r\u2028\u2029]/g, (character) => {
242
+ switch (character) {
243
+ case "\"":
244
+ case "'":
245
+ case "\\": return `\\${character}`;
246
+ case "\n": return "\\n";
247
+ case "\r": return "\\r";
248
+ case "\u2028": return "\\u2028";
249
+ case "\u2029": return "\\u2029";
250
+ default: return "";
251
+ }
252
+ });
253
+ }
254
+
255
+ //#endregion
256
+ //#region src/transformers/indent.ts
257
+ function createIndent(size) {
258
+ return Array.from({ length: size + 1 }).join(" ");
259
+ }
260
+
261
+ //#endregion
262
+ //#region src/transformers/nameSorter.ts
263
+ function nameSorter(a, b) {
264
+ if (a.name < b.name) return -1;
265
+ if (a.name > b.name) return 1;
266
+ return 0;
267
+ }
268
+
269
+ //#endregion
270
+ //#region src/transformers/searchAndReplace.ts
271
+ function searchAndReplace(options) {
272
+ const { text, replaceBy, prefix = "", key } = options;
273
+ return (options.searchValues?.(prefix, key) || [
274
+ `${prefix}["${key}"]`,
275
+ `${prefix}['${key}']`,
276
+ `${prefix}[\`${key}\`]`,
277
+ `${prefix}"${key}"`,
278
+ `${prefix}'${key}'`,
279
+ `${prefix}\`${key}\``,
280
+ new RegExp(`${prefix}${key}`, "g")
281
+ ]).reduce((prev, searchValue) => {
282
+ return prev.toString().replaceAll(searchValue, replaceBy);
283
+ }, text);
284
+ }
285
+
286
+ //#endregion
287
+ //#region src/transformers/stringify.ts
288
+ function stringify(value) {
289
+ if (value === void 0 || value === null) return "\"\"";
290
+ return JSON.stringify(trimQuotes(value.toString()));
291
+ }
292
+ function stringifyObject(value) {
293
+ return Object.entries(value).map(([key, value$1]) => {
294
+ if (typeof value$1 === "object") return `${key}: {
295
+ ${stringifyObject(value$1)}
296
+ }`;
297
+ return `${key}: ${value$1}`;
298
+ }).filter(Boolean).join(",\n");
299
+ }
300
+
301
+ //#endregion
302
+ //#region src/transformers/toRegExp.ts
303
+ function toRegExpString(text, func = "RegExp") {
304
+ const raw = trimQuotes(text);
305
+ const [, replacementTarget = "", matchedFlags] = raw.match(/^\^(\(\?([igmsuy]+)\))/i) ?? [];
306
+ const cleaned = raw.replace(/^\\?\//, "").replace(/\\?\/$/, "").replace(replacementTarget, "");
307
+ const regex = new RegExp(cleaned, matchedFlags);
308
+ const source = regex.source;
309
+ const flags = regex.flags;
310
+ if (func === null) return `/${source}/${flags}`;
311
+ return `new ${func}(${JSON.stringify(source)}${flags ? `, ${JSON.stringify(flags)}` : ""})`;
312
+ }
313
+
314
+ //#endregion
315
+ //#region src/transformers/index.ts
316
+ var transformers_default = {
317
+ combineCodes,
318
+ escape,
319
+ jsStringEscape,
320
+ createIndent,
321
+ transformReservedWord,
322
+ isValidVarName,
323
+ nameSorter,
324
+ searchAndReplace,
325
+ stringify,
326
+ stringifyObject,
327
+ toRegExpString,
328
+ trim,
329
+ trimQuotes,
330
+ JSDoc: { createJSDocBlockText },
331
+ orderBy,
332
+ merge,
333
+ camelCase,
334
+ pascalCase
335
+ };
336
+
337
+ //#endregion
338
+ export { trimQuotes as _, stringify as a, nameSorter as c, jsStringEscape as d, createJSDocBlockText as f, trim as g, pascalCase as h, toRegExpString as i, createIndent as l, camelCase as m, orderBy$1 as n, stringifyObject as o, combineCodes as p, transformers_default as r, searchAndReplace as s, merge$1 as t, escape as u, isValidVarName as v, transformReservedWord as y };
339
+ //# sourceMappingURL=transformers-CeNW0G32.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformers-CeNW0G32.js","names":["preserveConsecutiveUppercase","camelCase","_camelcase","value"],"sources":["../src/transformers/transformReservedWord.ts","../src/transformers/trim.ts","../../../node_modules/.pnpm/camelcase@8.0.0/node_modules/camelcase/index.js","../src/transformers/casing.ts","../src/transformers/combineCodes.ts","../src/transformers/createJSDocBlockText.ts","../src/transformers/escape.ts","../src/transformers/indent.ts","../src/transformers/nameSorter.ts","../src/transformers/searchAndReplace.ts","../src/transformers/stringify.ts","../src/transformers/toRegExp.ts","../src/transformers/index.ts"],"sourcesContent":["/**\n * @link https://github.com/jonschlinkert/reserved/blob/master/index.js\n */\nconst reservedWords = [\n 'abstract',\n 'arguments',\n 'boolean',\n 'break',\n 'byte',\n 'case',\n 'catch',\n 'char',\n 'class',\n 'const',\n 'continue',\n 'debugger',\n 'default',\n 'delete',\n 'do',\n 'double',\n 'else',\n 'enum',\n 'eval',\n 'export',\n 'extends',\n 'false',\n 'final',\n 'finally',\n 'float',\n 'for',\n 'function',\n 'goto',\n 'if',\n 'implements',\n 'import',\n 'in',\n 'instanceof',\n 'int',\n 'interface',\n 'let',\n 'long',\n 'native',\n 'new',\n 'null',\n 'package',\n 'private',\n 'protected',\n 'public',\n 'return',\n 'short',\n 'static',\n 'super',\n 'switch',\n 'synchronized',\n 'this',\n 'throw',\n 'throws',\n 'transient',\n 'true',\n 'try',\n 'typeof',\n 'var',\n 'void',\n 'volatile',\n 'while',\n 'with',\n 'yield',\n\n 'Array',\n 'Date',\n 'eval',\n 'function',\n 'hasOwnProperty',\n 'Infinity',\n 'isFinite',\n 'isNaN',\n 'isPrototypeOf',\n 'length',\n 'Math',\n 'name',\n 'NaN',\n 'Number',\n 'Object',\n 'prototype',\n 'String',\n 'toString',\n 'undefined',\n 'valueOf',\n]\n\nexport function transformReservedWord(word: string): string {\n if ((word && reservedWords.includes(word)) || word?.match(/^\\d/)) {\n return `_${word}`\n }\n\n return word\n}\n\nexport function isValidVarName(name: string) {\n try {\n Function(`var ${name}`)\n } catch (_e) {\n return false\n }\n return true\n}\n","export function trim(text: string): string {\n return text.replaceAll(/\\n/g, '').trim()\n}\n\nexport function trimQuotes(text: string): string {\n if (text.match(/^\"(.*)\"$/)) {\n return text.replace(/^\"(.*)\"$/, '$1')\n }\n if (text.match(/^'(.*)'$/)) {\n return text.replace(/^'(.*)'$/, '$1')\n }\n\n if (text.match(/^`(.*)`$/)) {\n return text.replace(/^`(.*)`$/, '$1')\n }\n\n return text\n}\n","const UPPERCASE = /[\\p{Lu}]/u;\nconst LOWERCASE = /[\\p{Ll}]/u;\nconst LEADING_CAPITAL = /^[\\p{Lu}](?![\\p{Lu}])/gu;\nconst IDENTIFIER = /([\\p{Alpha}\\p{N}_]|$)/u;\nconst SEPARATORS = /[_.\\- ]+/;\n\nconst LEADING_SEPARATORS = new RegExp('^' + SEPARATORS.source);\nconst SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, 'gu');\nconst NUMBERS_AND_IDENTIFIER = new RegExp('\\\\d+' + IDENTIFIER.source, 'gu');\n\nconst preserveCamelCase = (string, toLowerCase, toUpperCase, preserveConsecutiveUppercase) => {\n\tlet isLastCharLower = false;\n\tlet isLastCharUpper = false;\n\tlet isLastLastCharUpper = false;\n\tlet isLastLastCharPreserved = false;\n\n\tfor (let index = 0; index < string.length; index++) {\n\t\tconst character = string[index];\n\t\tisLastLastCharPreserved = index > 2 ? string[index - 3] === '-' : true;\n\n\t\tif (isLastCharLower && UPPERCASE.test(character)) {\n\t\t\tstring = string.slice(0, index) + '-' + string.slice(index);\n\t\t\tisLastCharLower = false;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = true;\n\t\t\tindex++;\n\t\t} else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE.test(character) && (!isLastLastCharPreserved || preserveConsecutiveUppercase)) {\n\t\t\tstring = string.slice(0, index - 1) + '-' + string.slice(index - 1);\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = false;\n\t\t\tisLastCharLower = true;\n\t\t} else {\n\t\t\tisLastCharLower = toLowerCase(character) === character && toUpperCase(character) !== character;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = toUpperCase(character) === character && toLowerCase(character) !== character;\n\t\t}\n\t}\n\n\treturn string;\n};\n\nconst preserveConsecutiveUppercase = (input, toLowerCase) => {\n\tLEADING_CAPITAL.lastIndex = 0;\n\n\treturn input.replaceAll(LEADING_CAPITAL, match => toLowerCase(match));\n};\n\nconst postProcess = (input, toUpperCase) => {\n\tSEPARATORS_AND_IDENTIFIER.lastIndex = 0;\n\tNUMBERS_AND_IDENTIFIER.lastIndex = 0;\n\n\treturn input\n\t\t.replaceAll(NUMBERS_AND_IDENTIFIER, (match, pattern, offset) => ['_', '-'].includes(input.charAt(offset + match.length)) ? match : toUpperCase(match))\n\t\t.replaceAll(SEPARATORS_AND_IDENTIFIER, (_, identifier) => toUpperCase(identifier));\n};\n\nexport default function camelCase(input, options) {\n\tif (!(typeof input === 'string' || Array.isArray(input))) {\n\t\tthrow new TypeError('Expected the input to be `string | string[]`');\n\t}\n\n\toptions = {\n\t\tpascalCase: false,\n\t\tpreserveConsecutiveUppercase: false,\n\t\t...options,\n\t};\n\n\tif (Array.isArray(input)) {\n\t\tinput = input.map(x => x.trim())\n\t\t\t.filter(x => x.length)\n\t\t\t.join('-');\n\t} else {\n\t\tinput = input.trim();\n\t}\n\n\tif (input.length === 0) {\n\t\treturn '';\n\t}\n\n\tconst toLowerCase = options.locale === false\n\t\t? string => string.toLowerCase()\n\t\t: string => string.toLocaleLowerCase(options.locale);\n\n\tconst toUpperCase = options.locale === false\n\t\t? string => string.toUpperCase()\n\t\t: string => string.toLocaleUpperCase(options.locale);\n\n\tif (input.length === 1) {\n\t\tif (SEPARATORS.test(input)) {\n\t\t\treturn '';\n\t\t}\n\n\t\treturn options.pascalCase ? toUpperCase(input) : toLowerCase(input);\n\t}\n\n\tconst hasUpperCase = input !== toLowerCase(input);\n\n\tif (hasUpperCase) {\n\t\tinput = preserveCamelCase(input, toLowerCase, toUpperCase, options.preserveConsecutiveUppercase);\n\t}\n\n\tinput = input.replace(LEADING_SEPARATORS, '');\n\tinput = options.preserveConsecutiveUppercase ? preserveConsecutiveUppercase(input, toLowerCase) : toLowerCase(input);\n\n\tif (options.pascalCase) {\n\t\tinput = toUpperCase(input.charAt(0)) + input.slice(1);\n\t}\n\n\treturn postProcess(input, toUpperCase);\n}\n","import _camelcase from 'camelcase'\n\ntype Options = {\n /**\n * When set it will replace all `.` with `/`.\n */\n isFile?: boolean\n prefix?: string\n suffix?: string\n}\n\nexport function camelCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {\n if (isFile) {\n const splitArray = text.split('.')\n return splitArray.map((item, i) => (i === splitArray.length - 1 ? camelCase(item, { prefix, suffix }) : camelCase(item))).join('/')\n }\n\n return _camelcase(`${prefix} ${text} ${suffix}`, { pascalCase: false, preserveConsecutiveUppercase: true }).replace(/[^a-zA-Z0-9]/g, '')\n}\n\nexport function pascalCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {\n if (isFile) {\n const splitArray = text.split('.')\n return splitArray.map((item, i) => (i === splitArray.length - 1 ? pascalCase(item, { prefix, suffix }) : camelCase(item))).join('/')\n }\n\n return _camelcase(`${prefix} ${text} ${suffix}`, { pascalCase: true, preserveConsecutiveUppercase: true }).replace(/[^a-zA-Z0-9]/g, '')\n}\n","export function combineCodes(codes: string[]): string {\n return codes.join('\\n')\n}\n","export function createJSDocBlockText({ comments }: { comments: Array<string> }): string {\n const filteredComments = comments.filter(Boolean)\n\n if (!filteredComments.length) {\n return ''\n }\n\n return `/**\\n * ${filteredComments.join('\\n * ')}\\n */`\n}\n","export function escape(text?: string): string {\n return text ? text.replaceAll('`', '\\\\`') : ''\n}\n\n/**\n * Escape all characters not included in SingleStringCharacters and DoubleStringCharacters on\n * @link http://www.ecma-international.org/ecma-262/5.1/#sec-7.8.4\n * @link https://github.com/joliss/js-string-escape/blob/master/index.js\n */\n\nexport function jsStringEscape(input: any): string {\n return `${input}`.replace(/[\"'\\\\\\n\\r\\u2028\\u2029]/g, (character) => {\n switch (character) {\n case '\"':\n case \"'\":\n case '\\\\':\n return `\\\\${character}`\n // Four possible LineTerminator characters need to be escaped:\n case '\\n':\n return '\\\\n'\n case '\\r':\n return '\\\\r'\n case '\\u2028':\n return '\\\\u2028'\n case '\\u2029':\n return '\\\\u2029'\n default:\n return ''\n }\n })\n}\n","export function createIndent(size: number): string {\n return Array.from({ length: size + 1 }).join(' ')\n}\n","export function nameSorter<T extends { name: string }>(a: T, b: T): 0 | 1 | -1 {\n if (a.name < b.name) {\n return -1\n }\n if (a.name > b.name) {\n return 1\n }\n return 0\n}\n","type Options = {\n text: string\n replaceBy: string\n prefix?: string\n key: string\n searchValues?: (prefix: string, key: string) => Array<RegExp | string>\n}\n\nexport function searchAndReplace(options: Options): string {\n const { text, replaceBy, prefix = '', key } = options\n\n const searchValues = options.searchValues?.(prefix, key) || [\n `${prefix}[\"${key}\"]`,\n `${prefix}['${key}']`,\n `${prefix}[\\`${key}\\`]`,\n `${prefix}\"${key}\"`,\n `${prefix}'${key}'`,\n `${prefix}\\`${key}\\``,\n new RegExp(`${prefix}${key}`, 'g'),\n ]\n\n return searchValues.reduce((prev, searchValue) => {\n return prev.toString().replaceAll(searchValue, replaceBy)\n }, text) as string\n}\n","import { trimQuotes } from './trim'\n\nexport function stringify(value: string | number | boolean | undefined): string {\n if (value === undefined || value === null) {\n return '\"\"'\n }\n\n return JSON.stringify(trimQuotes(value.toString()))\n}\n\nexport function stringifyObject(value: object): string {\n const items = Object.entries(value)\n .map(([key, value]) => {\n if (typeof value === 'object') {\n return `${key}: {\n ${stringifyObject(value)}\n }`\n }\n\n return `${key}: ${value}`\n })\n .filter(Boolean)\n\n return items.join(',\\n')\n}\n","import { trimQuotes } from './trim'\n\nexport function toRegExpString(text: string, func: string | null = 'RegExp'): string {\n const raw = trimQuotes(text)\n\n const [, replacementTarget = '', matchedFlags] = raw.match(/^\\^(\\(\\?([igmsuy]+)\\))/i) ?? []\n const cleaned = raw\n .replace(/^\\\\?\\//, '')\n .replace(/\\\\?\\/$/, '')\n .replace(replacementTarget, '')\n\n const regex = new RegExp(cleaned, matchedFlags)\n const source = regex.source\n const flags = regex.flags\n\n if (func === null) {\n return `/${source}/${flags}`\n }\n\n // return as constructor → new RegExp(\"pattern\", \"flags\")\n return `new ${func}(${JSON.stringify(source)}${flags ? `, ${JSON.stringify(flags)}` : ''})`\n}\n","import { orderBy } from 'natural-orderby'\nimport { merge } from 'remeda'\n\nimport { camelCase, pascalCase } from './casing.ts'\nimport { combineCodes } from './combineCodes.ts'\nimport { createJSDocBlockText } from './createJSDocBlockText.ts'\nimport { escape, jsStringEscape } from './escape.ts'\nimport { createIndent } from './indent.ts'\nimport { nameSorter } from './nameSorter.ts'\nimport { searchAndReplace } from './searchAndReplace.ts'\nimport { stringify, stringifyObject } from './stringify.ts'\nimport { toRegExpString } from './toRegExp.ts'\nimport { isValidVarName, transformReservedWord } from './transformReservedWord.ts'\nimport { trim, trimQuotes } from './trim.ts'\n\nexport { orderBy } from 'natural-orderby'\nexport { merge } from 'remeda'\nexport { camelCase, pascalCase } from './casing.ts'\nexport { combineCodes } from './combineCodes.ts'\nexport { createJSDocBlockText } from './createJSDocBlockText.ts'\nexport { escape, jsStringEscape } from './escape.ts'\nexport { createIndent } from './indent.ts'\nexport { nameSorter } from './nameSorter.ts'\nexport { searchAndReplace } from './searchAndReplace.ts'\nexport { stringify, stringifyObject } from './stringify.ts'\nexport { toRegExpString } from './toRegExp.ts'\nexport { isValidVarName, transformReservedWord } from './transformReservedWord.ts'\nexport { trim, trimQuotes } from './trim.ts'\n\nexport default {\n combineCodes,\n escape,\n jsStringEscape,\n createIndent,\n transformReservedWord,\n isValidVarName,\n nameSorter,\n searchAndReplace,\n stringify,\n stringifyObject,\n toRegExpString,\n trim,\n trimQuotes,\n JSDoc: {\n createJSDocBlockText,\n },\n orderBy,\n merge,\n camelCase,\n pascalCase,\n} as const\n"],"x_google_ignoreList":[2],"mappings":";;;;;;;AAGA,MAAM,gBAAgB;CACpB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD;AAED,SAAgB,sBAAsB,MAAsB;AAC1D,KAAK,QAAQ,cAAc,SAAS,KAAK,IAAK,MAAM,MAAM,MAAM,CAC9D,QAAO,IAAI;AAGb,QAAO;;AAGT,SAAgB,eAAe,MAAc;AAC3C,KAAI;AACF,WAAS,OAAO,OAAO;UAChB,IAAI;AACX,SAAO;;AAET,QAAO;;;;;ACxGT,SAAgB,KAAK,MAAsB;AACzC,QAAO,KAAK,WAAW,OAAO,GAAG,CAAC,MAAM;;AAG1C,SAAgB,WAAW,MAAsB;AAC/C,KAAI,KAAK,MAAM,WAAW,CACxB,QAAO,KAAK,QAAQ,YAAY,KAAK;AAEvC,KAAI,KAAK,MAAM,WAAW,CACxB,QAAO,KAAK,QAAQ,YAAY,KAAK;AAGvC,KAAI,KAAK,MAAM,WAAW,CACxB,QAAO,KAAK,QAAQ,YAAY,KAAK;AAGvC,QAAO;;;;;AChBT,MAAM,YAAY;AAClB,MAAM,YAAY;AAClB,MAAM,kBAAkB;AACxB,MAAM,aAAa;AACnB,MAAM,aAAa;AAEnB,MAAM,qCAAqB,IAAI,OAAO,MAAM,WAAW,OAAO;AAC9D,MAAM,4BAA4B,IAAI,OAAO,WAAW,SAAS,WAAW,QAAQ,KAAK;AACzF,MAAM,yBAAyB,IAAI,OAAO,SAAS,WAAW,QAAQ,KAAK;AAE3E,MAAM,qBAAqB,QAAQ,aAAa,aAAa,mCAAiC;CAC7F,IAAI,kBAAkB;CACtB,IAAI,kBAAkB;CACtB,IAAI,sBAAsB;CAC1B,IAAI,0BAA0B;AAE9B,MAAK,IAAI,QAAQ,GAAG,QAAQ,OAAO,QAAQ,SAAS;EACnD,MAAM,YAAY,OAAO;AACzB,4BAA0B,QAAQ,IAAI,OAAO,QAAQ,OAAO,MAAM;AAElE,MAAI,mBAAmB,UAAU,KAAK,UAAU,EAAE;AACjD,YAAS,OAAO,MAAM,GAAG,MAAM,GAAG,MAAM,OAAO,MAAM,MAAM;AAC3D,qBAAkB;AAClB,yBAAsB;AACtB,qBAAkB;AAClB;aACU,mBAAmB,uBAAuB,UAAU,KAAK,UAAU,KAAK,CAAC,2BAA2BA,iCAA+B;AAC7I,YAAS,OAAO,MAAM,GAAG,QAAQ,EAAE,GAAG,MAAM,OAAO,MAAM,QAAQ,EAAE;AACnE,yBAAsB;AACtB,qBAAkB;AAClB,qBAAkB;SACZ;AACN,qBAAkB,YAAY,UAAU,KAAK,aAAa,YAAY,UAAU,KAAK;AACrF,yBAAsB;AACtB,qBAAkB,YAAY,UAAU,KAAK,aAAa,YAAY,UAAU,KAAK;;;AAIvF,QAAO;;AAGR,MAAM,gCAAgC,OAAO,gBAAgB;AAC5D,iBAAgB,YAAY;AAE5B,QAAO,MAAM,WAAW,kBAAiB,UAAS,YAAY,MAAM,CAAC;;AAGtE,MAAM,eAAe,OAAO,gBAAgB;AAC3C,2BAA0B,YAAY;AACtC,wBAAuB,YAAY;AAEnC,QAAO,MACL,WAAW,yBAAyB,OAAO,SAAS,WAAW,CAAC,KAAK,IAAI,CAAC,SAAS,MAAM,OAAO,SAAS,MAAM,OAAO,CAAC,GAAG,QAAQ,YAAY,MAAM,CAAC,CACrJ,WAAW,4BAA4B,GAAG,eAAe,YAAY,WAAW,CAAC;;AAGpF,SAAwBC,YAAU,OAAO,SAAS;AACjD,KAAI,EAAE,OAAO,UAAU,YAAY,MAAM,QAAQ,MAAM,EACtD,OAAM,IAAI,UAAU,+CAA+C;AAGpE,WAAU;EACT,YAAY;EACZ,8BAA8B;EAC9B,GAAG;EACH;AAED,KAAI,MAAM,QAAQ,MAAM,CACvB,SAAQ,MAAM,KAAI,MAAK,EAAE,MAAM,CAAC,CAC9B,QAAO,MAAK,EAAE,OAAO,CACrB,KAAK,IAAI;KAEX,SAAQ,MAAM,MAAM;AAGrB,KAAI,MAAM,WAAW,EACpB,QAAO;CAGR,MAAM,cAAc,QAAQ,WAAW,SACpC,WAAU,OAAO,aAAa,IAC9B,WAAU,OAAO,kBAAkB,QAAQ,OAAO;CAErD,MAAM,cAAc,QAAQ,WAAW,SACpC,WAAU,OAAO,aAAa,IAC9B,WAAU,OAAO,kBAAkB,QAAQ,OAAO;AAErD,KAAI,MAAM,WAAW,GAAG;AACvB,MAAI,WAAW,KAAK,MAAM,CACzB,QAAO;AAGR,SAAO,QAAQ,aAAa,YAAY,MAAM,GAAG,YAAY,MAAM;;AAKpE,KAFqB,UAAU,YAAY,MAAM,CAGhD,SAAQ,kBAAkB,OAAO,aAAa,aAAa,QAAQ,6BAA6B;AAGjG,SAAQ,MAAM,QAAQ,oBAAoB,GAAG;AAC7C,SAAQ,QAAQ,+BAA+B,6BAA6B,OAAO,YAAY,GAAG,YAAY,MAAM;AAEpH,KAAI,QAAQ,WACX,SAAQ,YAAY,MAAM,OAAO,EAAE,CAAC,GAAG,MAAM,MAAM,EAAE;AAGtD,QAAO,YAAY,OAAO,YAAY;;;;;ACjGvC,SAAgB,UAAU,MAAc,EAAE,QAAQ,SAAS,IAAI,SAAS,OAAgB,EAAE,EAAU;AAClG,KAAI,QAAQ;EACV,MAAM,aAAa,KAAK,MAAM,IAAI;AAClC,SAAO,WAAW,KAAK,MAAM,MAAO,MAAM,WAAW,SAAS,IAAI,UAAU,MAAM;GAAE;GAAQ;GAAQ,CAAC,GAAG,UAAU,KAAK,CAAE,CAAC,KAAK,IAAI;;AAGrI,QAAOC,YAAW,GAAG,OAAO,GAAG,KAAK,GAAG,UAAU;EAAE,YAAY;EAAO,8BAA8B;EAAM,CAAC,CAAC,QAAQ,iBAAiB,GAAG;;AAG1I,SAAgB,WAAW,MAAc,EAAE,QAAQ,SAAS,IAAI,SAAS,OAAgB,EAAE,EAAU;AACnG,KAAI,QAAQ;EACV,MAAM,aAAa,KAAK,MAAM,IAAI;AAClC,SAAO,WAAW,KAAK,MAAM,MAAO,MAAM,WAAW,SAAS,IAAI,WAAW,MAAM;GAAE;GAAQ;GAAQ,CAAC,GAAG,UAAU,KAAK,CAAE,CAAC,KAAK,IAAI;;AAGtI,QAAOA,YAAW,GAAG,OAAO,GAAG,KAAK,GAAG,UAAU;EAAE,YAAY;EAAM,8BAA8B;EAAM,CAAC,CAAC,QAAQ,iBAAiB,GAAG;;;;;AC1BzI,SAAgB,aAAa,OAAyB;AACpD,QAAO,MAAM,KAAK,KAAK;;;;;ACDzB,SAAgB,qBAAqB,EAAE,YAAiD;CACtF,MAAM,mBAAmB,SAAS,OAAO,QAAQ;AAEjD,KAAI,CAAC,iBAAiB,OACpB,QAAO;AAGT,QAAO,WAAW,iBAAiB,KAAK,QAAQ,CAAC;;;;;ACPnD,SAAgB,OAAO,MAAuB;AAC5C,QAAO,OAAO,KAAK,WAAW,KAAK,MAAM,GAAG;;;;;;;AAS9C,SAAgB,eAAe,OAAoB;AACjD,QAAO,GAAG,QAAQ,QAAQ,4BAA4B,cAAc;AAClE,UAAQ,WAAR;GACE,KAAK;GACL,KAAK;GACL,KAAK,KACH,QAAO,KAAK;GAEd,KAAK,KACH,QAAO;GACT,KAAK,KACH,QAAO;GACT,KAAK,SACH,QAAO;GACT,KAAK,SACH,QAAO;GACT,QACE,QAAO;;GAEX;;;;;AC7BJ,SAAgB,aAAa,MAAsB;AACjD,QAAO,MAAM,KAAK,EAAE,QAAQ,OAAO,GAAG,CAAC,CAAC,KAAK,IAAI;;;;;ACDnD,SAAgB,WAAuC,GAAM,GAAkB;AAC7E,KAAI,EAAE,OAAO,EAAE,KACb,QAAO;AAET,KAAI,EAAE,OAAO,EAAE,KACb,QAAO;AAET,QAAO;;;;;ACCT,SAAgB,iBAAiB,SAA0B;CACzD,MAAM,EAAE,MAAM,WAAW,SAAS,IAAI,QAAQ;AAY9C,SAVqB,QAAQ,eAAe,QAAQ,IAAI,IAAI;EAC1D,GAAG,OAAO,IAAI,IAAI;EAClB,GAAG,OAAO,IAAI,IAAI;EAClB,GAAG,OAAO,KAAK,IAAI;EACnB,GAAG,OAAO,GAAG,IAAI;EACjB,GAAG,OAAO,GAAG,IAAI;EACjB,GAAG,OAAO,IAAI,IAAI;EAClB,IAAI,OAAO,GAAG,SAAS,OAAO,IAAI;EACnC,EAEmB,QAAQ,MAAM,gBAAgB;AAChD,SAAO,KAAK,UAAU,CAAC,WAAW,aAAa,UAAU;IACxD,KAAK;;;;;ACrBV,SAAgB,UAAU,OAAsD;AAC9E,KAAI,UAAU,UAAa,UAAU,KACnC,QAAO;AAGT,QAAO,KAAK,UAAU,WAAW,MAAM,UAAU,CAAC,CAAC;;AAGrD,SAAgB,gBAAgB,OAAuB;AAarD,QAZc,OAAO,QAAQ,MAAM,CAChC,KAAK,CAAC,KAAKC,aAAW;AACrB,MAAI,OAAOA,YAAU,SACnB,QAAO,GAAG,IAAI;UACZ,gBAAgBA,QAAM,CAAC;;AAI3B,SAAO,GAAG,IAAI,IAAIA;GAClB,CACD,OAAO,QAAQ,CAEL,KAAK,MAAM;;;;;ACrB1B,SAAgB,eAAe,MAAc,OAAsB,UAAkB;CACnF,MAAM,MAAM,WAAW,KAAK;CAE5B,MAAM,GAAG,oBAAoB,IAAI,gBAAgB,IAAI,MAAM,0BAA0B,IAAI,EAAE;CAC3F,MAAM,UAAU,IACb,QAAQ,UAAU,GAAG,CACrB,QAAQ,UAAU,GAAG,CACrB,QAAQ,mBAAmB,GAAG;CAEjC,MAAM,QAAQ,IAAI,OAAO,SAAS,aAAa;CAC/C,MAAM,SAAS,MAAM;CACrB,MAAM,QAAQ,MAAM;AAEpB,KAAI,SAAS,KACX,QAAO,IAAI,OAAO,GAAG;AAIvB,QAAO,OAAO,KAAK,GAAG,KAAK,UAAU,OAAO,GAAG,QAAQ,KAAK,KAAK,UAAU,MAAM,KAAK,GAAG;;;;;ACS3F,2BAAe;CACb;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA,OAAO,EACL,sBACD;CACD;CACA;CACA;CACA;CACD"}