@kubb/fabric-core 0.11.5 → 0.11.7
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.
- package/dist/{Fabric-Cpp4iNdY.d.ts → Fabric-BoTE1-WX.d.cts} +2 -2
- package/dist/{Fabric-DqRpv9I1.d.cts → Fabric-CWquRFa2.d.ts} +4 -1
- package/dist/{TreeNode-BYnCGtlk.d.cts → TreeNode-C1VnIF0o.d.ts} +3 -2
- package/dist/{TreeNode-DE18I-6p.js → TreeNode-CC3a0Bae.js} +83 -75
- package/dist/TreeNode-CC3a0Bae.js.map +1 -0
- package/dist/{TreeNode-BiX1Ng_y.cjs → TreeNode-CFchatCw.cjs} +82 -75
- package/dist/TreeNode-CFchatCw.cjs.map +1 -0
- package/dist/{TreeNode-BE0-dn6I.d.ts → TreeNode-DomNP5og.d.cts} +2 -2
- package/dist/chunk-8X4u0d05.js +22 -0
- package/dist/{defaultParser-CIF-0xIK.cjs → defaultParser-CFIT3sEE.cjs} +3 -2
- package/dist/{defaultParser-CIF-0xIK.cjs.map → defaultParser-CFIT3sEE.cjs.map} +1 -1
- package/dist/{defaultParser-DPHcM2NR.js → defaultParser-DZ2kzujH.js} +3 -2
- package/dist/{defaultParser-DPHcM2NR.js.map → defaultParser-DZ2kzujH.js.map} +1 -1
- package/dist/{defineParser-DODGK4rM.cjs → defineParser-CVCxqqzB.cjs} +2 -1
- package/dist/{defineParser-DODGK4rM.cjs.map → defineParser-CVCxqqzB.cjs.map} +1 -1
- package/dist/{defineParser-Bxv4mb-N.js → defineParser-Lco7nlj0.js} +3 -1
- package/dist/{defineParser-Bxv4mb-N.js.map → defineParser-Lco7nlj0.js.map} +1 -1
- package/dist/{getRelativePath-D8QLC7JD.cjs → getRelativePath-BllDunh0.cjs} +11 -1
- package/dist/{getRelativePath-D8QLC7JD.cjs.map → getRelativePath-BllDunh0.cjs.map} +1 -1
- package/dist/{getRelativePath-BSA6Fd-F.js → getRelativePath-y7WcYR5C.js} +2 -1
- package/dist/{getRelativePath-BSA6Fd-F.js.map → getRelativePath-y7WcYR5C.js.map} +1 -1
- package/dist/index.cjs +4 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +4 -3
- package/dist/index.js +5 -4
- package/dist/index.js.map +1 -1
- package/dist/parsers/typescript.cjs +2 -2
- package/dist/parsers/typescript.cjs.map +1 -1
- package/dist/parsers/typescript.d.cts +1 -1
- package/dist/parsers/typescript.d.ts +2 -2
- package/dist/parsers/typescript.js +3 -2
- package/dist/parsers/typescript.js.map +1 -1
- package/dist/parsers.cjs +3 -2
- package/dist/parsers.cjs.map +1 -1
- package/dist/parsers.d.cts +1 -1
- package/dist/parsers.d.ts +2 -1
- package/dist/parsers.js +3 -2
- package/dist/parsers.js.map +1 -1
- package/dist/plugins.cjs +2 -2
- package/dist/plugins.cjs.map +1 -1
- package/dist/plugins.d.cts +1 -1
- package/dist/plugins.d.ts +2 -1
- package/dist/plugins.js +3 -2
- package/dist/plugins.js.map +1 -1
- package/dist/{types-CroUAaLF.d.cts → types-DYepTJ6F.d.cts} +3 -3
- package/dist/{types-gW_Bfog7.d.ts → types-yNaQHNUB.d.ts} +4 -3
- package/dist/types.d.cts +2 -2
- package/dist/types.d.ts +2 -2
- package/package.json +1 -1
- package/dist/TreeNode-BiX1Ng_y.cjs.map +0 -1
- package/dist/TreeNode-DE18I-6p.js.map +0 -1
|
@@ -414,5 +414,5 @@ interface Fabric<T extends FabricOptions = FabricOptions> extends Kubb.Fabric {
|
|
|
414
414
|
upsertFile(...files: File[]): Promise<void>;
|
|
415
415
|
}
|
|
416
416
|
//#endregion
|
|
417
|
-
export { KubbFile_d_exports as _, FabricOptions as a, Source as b, FileManager as c, UserParser as d, BaseName as f, Import as g, File as h, FabricMode as i, FileProcessor as l, Extname as m, FabricConfig as n, Plugin as o, Export as p, FabricContext as r, UserPlugin as s, Fabric as t, Parser as u, Path as v, ResolvedFile as y };
|
|
418
|
-
//# sourceMappingURL=Fabric-
|
|
417
|
+
export { KubbFile_d_exports as _, FabricOptions as a, Source as b, FileManager as c, UserParser as d, BaseName as f, Import as g, File as h, FabricMode as i, FileProcessor as l, Extname as m, FabricConfig as n, Plugin as o, Export as p, FabricContext as r, UserPlugin as s, Fabric as t, Parser as u, Path as v, __name as x, ResolvedFile as y };
|
|
418
|
+
//# sourceMappingURL=Fabric-BoTE1-WX.d.cts.map
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import { n as __name, t as __exportAll } from "./chunk-8X4u0d05.js";
|
|
2
|
+
|
|
3
|
+
//#region src/KubbFile.d.ts
|
|
1
4
|
declare namespace KubbFile_d_exports {
|
|
2
5
|
export { AdvancedPath, BaseName, Export, Extname, File, Import, Mode, Path, ResolvedExport, ResolvedFile, ResolvedImport, Source };
|
|
3
6
|
}
|
|
@@ -415,4 +418,4 @@ interface Fabric<T extends FabricOptions = FabricOptions> extends Kubb.Fabric {
|
|
|
415
418
|
}
|
|
416
419
|
//#endregion
|
|
417
420
|
export { KubbFile_d_exports as _, FabricOptions as a, Source as b, FileManager as c, UserParser as d, BaseName as f, Import as g, File as h, FabricMode as i, FileProcessor as l, Extname as m, FabricConfig as n, Plugin as o, Export as p, FabricContext as r, UserPlugin as s, Fabric as t, Parser as u, Path as v, ResolvedFile as y };
|
|
418
|
-
//# sourceMappingURL=Fabric-
|
|
421
|
+
//# sourceMappingURL=Fabric-CWquRFa2.d.ts.map
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { n as __name } from "./chunk-8X4u0d05.js";
|
|
2
|
+
import { h as File } from "./Fabric-CWquRFa2.js";
|
|
2
3
|
|
|
3
4
|
//#region src/utils/TreeNode.d.ts
|
|
4
5
|
type BarrelData = {
|
|
@@ -32,4 +33,4 @@ declare class TreeNode<TData = unknown> {
|
|
|
32
33
|
}
|
|
33
34
|
//#endregion
|
|
34
35
|
export { TreeNode as t };
|
|
35
|
-
//# sourceMappingURL=TreeNode-
|
|
36
|
+
//# sourceMappingURL=TreeNode-C1VnIF0o.d.ts.map
|
|
@@ -1,52 +1,51 @@
|
|
|
1
|
-
import { n as
|
|
1
|
+
import { n as __name } from "./chunk-8X4u0d05.js";
|
|
2
|
+
import { n as trimExtName } from "./getRelativePath-y7WcYR5C.js";
|
|
2
3
|
import { orderBy } from "natural-orderby";
|
|
3
4
|
import { createHash } from "node:crypto";
|
|
4
5
|
import path from "node:path";
|
|
5
6
|
|
|
6
7
|
//#region ../../node_modules/.pnpm/remeda@2.33.4/node_modules/remeda/dist/utilityEvaluators-D7O7U3FY.js
|
|
7
|
-
const
|
|
8
|
-
done: !0,
|
|
9
|
-
hasNext: !1
|
|
10
|
-
}, t$2 = {
|
|
8
|
+
const t$2 = {
|
|
11
9
|
done: !1,
|
|
12
10
|
hasNext: !1
|
|
13
|
-
}
|
|
14
|
-
hasNext: !0,
|
|
15
|
-
next: e$1,
|
|
16
|
-
done: !1
|
|
17
|
-
});
|
|
11
|
+
};
|
|
18
12
|
|
|
19
13
|
//#endregion
|
|
20
14
|
//#region ../../node_modules/.pnpm/remeda@2.33.4/node_modules/remeda/dist/pipe-CRsqNjLF.js
|
|
21
|
-
function t$1(e
|
|
22
|
-
let a = e
|
|
15
|
+
function t$1(e, ...t$3) {
|
|
16
|
+
let a = e;
|
|
17
|
+
let o = t$3.map((e$1) => `lazy` in e$1 ? r$1(e$1) : void 0);
|
|
18
|
+
let s = 0;
|
|
23
19
|
for (; s < t$3.length;) {
|
|
24
20
|
if (o[s] === void 0 || !i(a)) {
|
|
25
|
-
let e$
|
|
26
|
-
a = e$
|
|
21
|
+
let e$2 = t$3[s];
|
|
22
|
+
a = e$2(a), s += 1;
|
|
27
23
|
continue;
|
|
28
24
|
}
|
|
29
|
-
let e$
|
|
30
|
-
for (let n$
|
|
31
|
-
let t$4 = o[n$
|
|
32
|
-
if (t$4 === void 0 || (e$
|
|
25
|
+
let e$1 = [];
|
|
26
|
+
for (let n$2 = s; n$2 < t$3.length; n$2++) {
|
|
27
|
+
let t$4 = o[n$2];
|
|
28
|
+
if (t$4 === void 0 || (e$1.push(t$4), t$4.isSingle)) break;
|
|
33
29
|
}
|
|
34
|
-
let r$
|
|
35
|
-
for (let t$4 of a) if (n$1(t$4, r$
|
|
36
|
-
let { isSingle: c } = e$
|
|
37
|
-
a = c ? r$
|
|
30
|
+
let r$2 = [];
|
|
31
|
+
for (let t$4 of a) if (n$1(t$4, r$2, e$1)) break;
|
|
32
|
+
let { isSingle: c } = e$1.at(-1);
|
|
33
|
+
a = c ? r$2[0] : r$2, s += e$1.length;
|
|
38
34
|
}
|
|
39
35
|
return a;
|
|
40
36
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
37
|
+
__name(t$1, "t");
|
|
38
|
+
function n$1(t$3, r$2, i$1) {
|
|
39
|
+
if (i$1.length === 0) return r$2.push(t$3), !1;
|
|
40
|
+
let a = t$3;
|
|
41
|
+
let o = t$2;
|
|
42
|
+
let s = !1;
|
|
43
|
+
for (let [e, t$4] of i$1.entries()) {
|
|
45
44
|
let { index: c, items: l } = t$4;
|
|
46
45
|
if (l.push(a), o = t$4(a, c, l), t$4.index += 1, o.hasNext) {
|
|
47
46
|
var _o$hasMany;
|
|
48
47
|
if ((_o$hasMany = o.hasMany) !== null && _o$hasMany !== void 0 ? _o$hasMany : !1) {
|
|
49
|
-
for (let t$5 of o.next) if (n$1(t$5, r$
|
|
48
|
+
for (let t$5 of o.next) if (n$1(t$5, r$2, i$1.slice(e + 1))) return !0;
|
|
50
49
|
return s;
|
|
51
50
|
}
|
|
52
51
|
a = o.next;
|
|
@@ -54,52 +53,56 @@ function n$1(t$3, r$3, i$1) {
|
|
|
54
53
|
if (!o.hasNext) break;
|
|
55
54
|
o.done && (s = !0);
|
|
56
55
|
}
|
|
57
|
-
return o.hasNext && r$
|
|
56
|
+
return o.hasNext && r$2.push(a), s;
|
|
58
57
|
}
|
|
59
|
-
|
|
58
|
+
__name(n$1, "n");
|
|
59
|
+
function r$1(e) {
|
|
60
60
|
var _t$single;
|
|
61
|
-
let { lazy: t$3, lazyArgs: n$
|
|
62
|
-
|
|
61
|
+
let { lazy: t$3, lazyArgs: n$2 } = e;
|
|
62
|
+
let r$2 = t$3(...n$2);
|
|
63
|
+
return Object.assign(r$2, {
|
|
63
64
|
isSingle: (_t$single = t$3.single) !== null && _t$single !== void 0 ? _t$single : !1,
|
|
64
65
|
index: 0,
|
|
65
66
|
items: []
|
|
66
67
|
});
|
|
67
68
|
}
|
|
68
|
-
|
|
69
|
-
|
|
69
|
+
__name(r$1, "r");
|
|
70
|
+
function i(e) {
|
|
71
|
+
return typeof e == `string` || typeof e == `object` && !!e && Symbol.iterator in e;
|
|
70
72
|
}
|
|
71
73
|
|
|
72
74
|
//#endregion
|
|
73
75
|
//#region ../../node_modules/.pnpm/remeda@2.33.4/node_modules/remeda/dist/purryFromLazy-C1RBdBlx.js
|
|
74
|
-
function t(t$3, n$
|
|
75
|
-
let r$
|
|
76
|
-
if (r$
|
|
77
|
-
let [r$
|
|
78
|
-
return t$1(r$
|
|
76
|
+
function t(t$3, n$2) {
|
|
77
|
+
let r$2 = n$2.length - t$3.length;
|
|
78
|
+
if (r$2 === 1) {
|
|
79
|
+
let [r$3, ...i$1] = n$2;
|
|
80
|
+
return t$1(r$3, {
|
|
79
81
|
lazy: t$3,
|
|
80
82
|
lazyArgs: i$1
|
|
81
83
|
});
|
|
82
84
|
}
|
|
83
|
-
if (r$
|
|
84
|
-
let r$
|
|
85
|
+
if (r$2 === 0) {
|
|
86
|
+
let r$3 = {
|
|
85
87
|
lazy: t$3,
|
|
86
|
-
lazyArgs: n$
|
|
88
|
+
lazyArgs: n$2
|
|
87
89
|
};
|
|
88
|
-
return Object.assign((t$4) => t$1(t$4, r$
|
|
90
|
+
return Object.assign((t$4) => t$1(t$4, r$3), r$3);
|
|
89
91
|
}
|
|
90
92
|
throw Error(`Wrong number of arguments`);
|
|
91
93
|
}
|
|
92
94
|
|
|
93
95
|
//#endregion
|
|
94
96
|
//#region ../../node_modules/.pnpm/remeda@2.33.4/node_modules/remeda/dist/uniqueBy.js
|
|
95
|
-
function n(...e
|
|
96
|
-
return t(r, e
|
|
97
|
+
function n(...e) {
|
|
98
|
+
return t(r, e);
|
|
97
99
|
}
|
|
98
100
|
function r(t$3) {
|
|
99
|
-
let n$
|
|
101
|
+
let n$2 = t$3;
|
|
102
|
+
let r$2 = /* @__PURE__ */ new Set();
|
|
100
103
|
return (t$4, i$1, a) => {
|
|
101
|
-
let o = n$
|
|
102
|
-
return r$
|
|
104
|
+
let o = n$2(t$4, i$1, a);
|
|
105
|
+
return r$2.has(o) ? t$2 : (r$2.add(o), {
|
|
103
106
|
done: !1,
|
|
104
107
|
hasNext: !0,
|
|
105
108
|
next: t$4
|
|
@@ -111,7 +114,10 @@ function r(t$3) {
|
|
|
111
114
|
//#region src/createFile.ts
|
|
112
115
|
function combineSources(sources) {
|
|
113
116
|
return n(sources, (obj) => {
|
|
114
|
-
var _ref
|
|
117
|
+
var _ref;
|
|
118
|
+
var _obj$name;
|
|
119
|
+
var _obj$isExportable;
|
|
120
|
+
var _obj$isTypeOnly;
|
|
115
121
|
return `${(_ref = (_obj$name = obj.name) !== null && _obj$name !== void 0 ? _obj$name : obj.value) !== null && _ref !== void 0 ? _ref : ""}:${(_obj$isExportable = obj.isExportable) !== null && _obj$isExportable !== void 0 ? _obj$isExportable : false}:${(_obj$isTypeOnly = obj.isTypeOnly) !== null && _obj$isTypeOnly !== void 0 ? _obj$isTypeOnly : false}`;
|
|
116
122
|
});
|
|
117
123
|
}
|
|
@@ -227,7 +233,9 @@ function combineImports(imports, exports, source) {
|
|
|
227
233
|
* Helper to create a file with name and id set
|
|
228
234
|
*/
|
|
229
235
|
function createFile(file) {
|
|
230
|
-
var _file$exports
|
|
236
|
+
var _file$exports;
|
|
237
|
+
var _file$imports;
|
|
238
|
+
var _file$sources;
|
|
231
239
|
const extname = path.extname(file.baseName);
|
|
232
240
|
if (!extname) throw new Error(`No extname found for ${file.baseName}`);
|
|
233
241
|
const source = file.sources.map((item) => item.value).join("\n\n");
|
|
@@ -247,38 +255,38 @@ function createFile(file) {
|
|
|
247
255
|
}
|
|
248
256
|
|
|
249
257
|
//#endregion
|
|
250
|
-
//#region \0@oxc-project+runtime@0.
|
|
251
|
-
function _checkPrivateRedeclaration(e
|
|
252
|
-
if (t$3.has(e
|
|
258
|
+
//#region \0@oxc-project+runtime@0.107.0/helpers/checkPrivateRedeclaration.js
|
|
259
|
+
function _checkPrivateRedeclaration(e, t$3) {
|
|
260
|
+
if (t$3.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object");
|
|
253
261
|
}
|
|
254
262
|
|
|
255
263
|
//#endregion
|
|
256
|
-
//#region \0@oxc-project+runtime@0.
|
|
257
|
-
function _classPrivateFieldInitSpec(e
|
|
258
|
-
_checkPrivateRedeclaration(e
|
|
264
|
+
//#region \0@oxc-project+runtime@0.107.0/helpers/classPrivateFieldInitSpec.js
|
|
265
|
+
function _classPrivateFieldInitSpec(e, t$3, a) {
|
|
266
|
+
_checkPrivateRedeclaration(e, t$3), t$3.set(e, a);
|
|
259
267
|
}
|
|
260
268
|
|
|
261
269
|
//#endregion
|
|
262
|
-
//#region \0@oxc-project+runtime@0.
|
|
263
|
-
function _assertClassBrand(e
|
|
264
|
-
if ("function" == typeof e
|
|
270
|
+
//#region \0@oxc-project+runtime@0.107.0/helpers/assertClassBrand.js
|
|
271
|
+
function _assertClassBrand(e, t$3, n$2) {
|
|
272
|
+
if ("function" == typeof e ? e === t$3 : e.has(t$3)) return arguments.length < 3 ? t$3 : n$2;
|
|
265
273
|
throw new TypeError("Private element is not present on this object");
|
|
266
274
|
}
|
|
267
275
|
|
|
268
276
|
//#endregion
|
|
269
|
-
//#region \0@oxc-project+runtime@0.
|
|
277
|
+
//#region \0@oxc-project+runtime@0.107.0/helpers/classPrivateFieldGet2.js
|
|
270
278
|
function _classPrivateFieldGet2(s, a) {
|
|
271
279
|
return s.get(_assertClassBrand(s, a));
|
|
272
280
|
}
|
|
273
281
|
|
|
274
282
|
//#endregion
|
|
275
|
-
//#region \0@oxc-project+runtime@0.
|
|
276
|
-
function _classPrivateFieldSet2(s, a, r$
|
|
277
|
-
return s.set(_assertClassBrand(s, a), r$
|
|
283
|
+
//#region \0@oxc-project+runtime@0.107.0/helpers/classPrivateFieldSet2.js
|
|
284
|
+
function _classPrivateFieldSet2(s, a, r$2) {
|
|
285
|
+
return s.set(_assertClassBrand(s, a), r$2), r$2;
|
|
278
286
|
}
|
|
279
287
|
|
|
280
288
|
//#endregion
|
|
281
|
-
//#region \0@oxc-project+runtime@0.
|
|
289
|
+
//#region \0@oxc-project+runtime@0.107.0/helpers/typeof.js
|
|
282
290
|
function _typeof(o) {
|
|
283
291
|
"@babel/helpers - typeof";
|
|
284
292
|
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o$1) {
|
|
@@ -289,34 +297,34 @@ function _typeof(o) {
|
|
|
289
297
|
}
|
|
290
298
|
|
|
291
299
|
//#endregion
|
|
292
|
-
//#region \0@oxc-project+runtime@0.
|
|
293
|
-
function toPrimitive(t$3, r$
|
|
300
|
+
//#region \0@oxc-project+runtime@0.107.0/helpers/toPrimitive.js
|
|
301
|
+
function toPrimitive(t$3, r$2) {
|
|
294
302
|
if ("object" != _typeof(t$3) || !t$3) return t$3;
|
|
295
|
-
var e
|
|
296
|
-
if (void 0 !== e
|
|
297
|
-
var i$1 = e
|
|
303
|
+
var e = t$3[Symbol.toPrimitive];
|
|
304
|
+
if (void 0 !== e) {
|
|
305
|
+
var i$1 = e.call(t$3, r$2 || "default");
|
|
298
306
|
if ("object" != _typeof(i$1)) return i$1;
|
|
299
307
|
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
300
308
|
}
|
|
301
|
-
return ("string" === r$
|
|
309
|
+
return ("string" === r$2 ? String : Number)(t$3);
|
|
302
310
|
}
|
|
303
311
|
|
|
304
312
|
//#endregion
|
|
305
|
-
//#region \0@oxc-project+runtime@0.
|
|
313
|
+
//#region \0@oxc-project+runtime@0.107.0/helpers/toPropertyKey.js
|
|
306
314
|
function toPropertyKey(t$3) {
|
|
307
315
|
var i$1 = toPrimitive(t$3, "string");
|
|
308
316
|
return "symbol" == _typeof(i$1) ? i$1 : i$1 + "";
|
|
309
317
|
}
|
|
310
318
|
|
|
311
319
|
//#endregion
|
|
312
|
-
//#region \0@oxc-project+runtime@0.
|
|
313
|
-
function _defineProperty(e
|
|
314
|
-
return (r$
|
|
320
|
+
//#region \0@oxc-project+runtime@0.107.0/helpers/defineProperty.js
|
|
321
|
+
function _defineProperty(e, r$2, t$3) {
|
|
322
|
+
return (r$2 = toPropertyKey(r$2)) in e ? Object.defineProperty(e, r$2, {
|
|
315
323
|
value: t$3,
|
|
316
324
|
enumerable: !0,
|
|
317
325
|
configurable: !0,
|
|
318
326
|
writable: !0
|
|
319
|
-
}) : e
|
|
327
|
+
}) : e[r$2] = t$3, e;
|
|
320
328
|
}
|
|
321
329
|
|
|
322
330
|
//#endregion
|
|
@@ -436,4 +444,4 @@ var TreeNode = class TreeNode {
|
|
|
436
444
|
|
|
437
445
|
//#endregion
|
|
438
446
|
export { _assertClassBrand as a, createFile as c, _classPrivateFieldGet2 as i, _defineProperty as n, _classPrivateFieldInitSpec as o, _classPrivateFieldSet2 as r, _checkPrivateRedeclaration as s, TreeNode as t };
|
|
439
|
-
//# sourceMappingURL=TreeNode-
|
|
447
|
+
//# sourceMappingURL=TreeNode-CC3a0Bae.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TreeNode-CC3a0Bae.js","names":["t","t","e","r","n","i","r","n","t","i","e","n","t","r","i","e","uniqueBy","i"],"sources":["../../../node_modules/.pnpm/remeda@2.33.4/node_modules/remeda/dist/utilityEvaluators-D7O7U3FY.js","../../../node_modules/.pnpm/remeda@2.33.4/node_modules/remeda/dist/pipe-CRsqNjLF.js","../../../node_modules/.pnpm/remeda@2.33.4/node_modules/remeda/dist/purryFromLazy-C1RBdBlx.js","../../../node_modules/.pnpm/remeda@2.33.4/node_modules/remeda/dist/uniqueBy.js","../src/createFile.ts","../src/utils/TreeNode.ts"],"sourcesContent":["const e={done:!0,hasNext:!1},t={done:!1,hasNext:!1},n=()=>e,r=e=>({hasNext:!0,next:e,done:!1});export{n,r,t};\n//# sourceMappingURL=utilityEvaluators-D7O7U3FY.js.map","import{t as e}from\"./utilityEvaluators-D7O7U3FY.js\";function t(e,...t){let a=e,o=t.map(e=>`lazy`in e?r(e):void 0),s=0;for(;s<t.length;){if(o[s]===void 0||!i(a)){let e=t[s];a=e(a),s+=1;continue}let e=[];for(let n=s;n<t.length;n++){let t=o[n];if(t===void 0||(e.push(t),t.isSingle))break}let r=[];for(let t of a)if(n(t,r,e))break;let{isSingle:c}=e.at(-1);a=c?r[0]:r,s+=e.length}return a}function n(t,r,i){if(i.length===0)return r.push(t),!1;let a=t,o=e,s=!1;for(let[e,t]of i.entries()){let{index:c,items:l}=t;if(l.push(a),o=t(a,c,l),t.index+=1,o.hasNext){if(o.hasMany??!1){for(let t of o.next)if(n(t,r,i.slice(e+1)))return!0;return s}a=o.next}if(!o.hasNext)break;o.done&&(s=!0)}return o.hasNext&&r.push(a),s}function r(e){let{lazy:t,lazyArgs:n}=e,r=t(...n);return Object.assign(r,{isSingle:t.single??!1,index:0,items:[]})}function i(e){return typeof e==`string`||typeof e==`object`&&!!e&&Symbol.iterator in e}export{t};\n//# sourceMappingURL=pipe-CRsqNjLF.js.map","import{t as e}from\"./pipe-CRsqNjLF.js\";function t(t,n){let r=n.length-t.length;if(r===1){let[r,...i]=n;return e(r,{lazy:t,lazyArgs:i})}if(r===0){let r={lazy:t,lazyArgs:n};return Object.assign(t=>e(t,r),r)}throw Error(`Wrong number of arguments`)}export{t};\n//# sourceMappingURL=purryFromLazy-C1RBdBlx.js.map","import{t as e}from\"./utilityEvaluators-D7O7U3FY.js\";import{t}from\"./purryFromLazy-C1RBdBlx.js\";function n(...e){return t(r,e)}function r(t){let n=t,r=new Set;return(t,i,a)=>{let o=n(t,i,a);return r.has(o)?e:(r.add(o),{done:!1,hasNext:!0,next:t})}}export{n as uniqueBy};\n//# sourceMappingURL=uniqueBy.js.map","import { createHash } from 'node:crypto'\nimport path from 'node:path'\nimport { orderBy } from 'natural-orderby'\nimport { uniqueBy } from 'remeda'\nimport type * as KubbFile from './KubbFile.ts'\nimport { trimExtName } from './utils/trimExtName.ts'\n\nexport function combineSources(sources: Array<KubbFile.Source>): Array<KubbFile.Source> {\n return uniqueBy(sources, (obj) => {\n // For named sources, deduplicate by name, isExportable, and isTypeOnly\n // For unnamed sources, include the value to avoid deduplicating different code blocks\n // If both name and value are undefined, use an empty string as the unique identifier\n const uniqueId = obj.name ?? obj.value ?? ''\n const isExportable = obj.isExportable ?? false\n const isTypeOnly = obj.isTypeOnly ?? false\n return `${uniqueId}:${isExportable}:${isTypeOnly}`\n })\n}\n\nexport function combineExports(exports: Array<KubbFile.Export>): Array<KubbFile.Export> {\n const sorted = orderBy(exports, [\n (v) => !!Array.isArray(v.name),\n (v) => !v.isTypeOnly,\n (v) => v.path,\n (v) => !!v.name,\n (v) => (Array.isArray(v.name) ? orderBy(v.name) : v.name),\n ])\n\n const prev: Array<KubbFile.Export> = []\n // Map to track items by path for O(1) lookup\n const pathMap = new Map<string, KubbFile.Export>()\n // Map to track unique items by path+name+isTypeOnly+asAlias\n const uniqueMap = new Map<string, KubbFile.Export>()\n // Map to track items by path+name where isTypeOnly=true (for type-only check)\n const pathNameTypeTrueMap = new Map<string, KubbFile.Export>()\n\n for (const curr of sorted) {\n const name = curr.name\n const pathKey = curr.path\n const prevByPath = pathMap.get(pathKey)\n\n // Create unique key for path+name+isTypeOnly\n const nameKey = Array.isArray(name) ? JSON.stringify(name) : name || ''\n const pathNameTypeKey = `${pathKey}:${nameKey}:${curr.isTypeOnly}`\n // Check if there's already an item with the same path+name but with isTypeOnly=true\n const pathNameKey = `${pathKey}:${nameKey}`\n const prevByPathAndIsTypeOnly = pathNameTypeTrueMap.get(pathNameKey)\n\n if (prevByPathAndIsTypeOnly) {\n // we already have an export that has the same path and name but uses `isTypeOnly` (export type ...)\n continue\n }\n\n // Create unique key for path+name+isTypeOnly+asAlias\n const uniqueKey = `${pathNameTypeKey}:${curr.asAlias || ''}`\n const uniquePrev = uniqueMap.get(uniqueKey)\n\n // we already have an item that was unique enough or name field is empty or prev asAlias is set but current has no changes\n if (uniquePrev || (Array.isArray(name) && !name.length) || (prevByPath?.asAlias && !curr.asAlias)) {\n continue\n }\n\n if (!prevByPath) {\n const newItem = {\n ...curr,\n name: Array.isArray(name) ? [...new Set(name)] : name,\n }\n prev.push(newItem)\n pathMap.set(pathKey, newItem)\n uniqueMap.set(uniqueKey, newItem)\n // Track items with isTypeOnly=true for the type-only check\n if (newItem.isTypeOnly) {\n pathNameTypeTrueMap.set(pathNameKey, newItem)\n }\n continue\n }\n\n // merge all names when prev and current both have the same isTypeOnly set\n if (prevByPath && Array.isArray(prevByPath.name) && Array.isArray(curr.name) && prevByPath.isTypeOnly === curr.isTypeOnly) {\n prevByPath.name = [...new Set([...prevByPath.name, ...curr.name])]\n continue\n }\n\n prev.push(curr)\n uniqueMap.set(uniqueKey, curr)\n // Track items with isTypeOnly=true for the type-only check\n if (curr.isTypeOnly) {\n pathNameTypeTrueMap.set(pathNameKey, curr)\n }\n }\n\n return prev\n}\n\nexport function combineImports(imports: Array<KubbFile.Import>, exports: Array<KubbFile.Export>, source?: string): Array<KubbFile.Import> {\n const exportedNameLookup = new Set<string>()\n for (const item of exports) {\n const { name } = item\n if (!name) {\n continue\n }\n\n if (Array.isArray(name)) {\n for (const value of name) {\n if (value) {\n exportedNameLookup.add(value)\n }\n }\n continue\n }\n\n exportedNameLookup.add(name)\n }\n\n const usageCache = new Map<string, boolean>()\n const hasImportInSource = (importName: string): boolean => {\n if (!source) {\n return true\n }\n\n const cached = usageCache.get(importName)\n if (cached !== undefined) {\n return cached\n }\n\n const isUsed = source.includes(importName) || exportedNameLookup.has(importName)\n usageCache.set(importName, isUsed)\n\n return isUsed\n }\n\n const sorted = orderBy(imports, [\n (v) => !!Array.isArray(v.name),\n (v) => !v.isTypeOnly,\n (v) => v.path,\n (v) => !!v.name,\n (v) => (Array.isArray(v.name) ? orderBy(v.name) : v.name),\n ])\n\n const prev: Array<KubbFile.Import> = []\n // Map to track items by path+isTypeOnly for O(1) lookup\n const pathTypeMap = new Map<string, KubbFile.Import>()\n // Map to track unique items by path+name+isTypeOnly\n const uniqueMap = new Map<string, KubbFile.Import>()\n // Map to track items by path+name where isTypeOnly=true (for type-only check)\n const pathNameTypeTrueMap = new Map<string, KubbFile.Import>()\n\n for (const curr of sorted) {\n let name = Array.isArray(curr.name) ? [...new Set(curr.name)] : curr.name\n\n if (curr.path === curr.root) {\n // root and path are the same file, remove the \"./\" import\n continue\n }\n\n // merge all names and check if the importName is being used in the generated source and if not filter those imports out\n if (Array.isArray(name)) {\n name = name.filter((item) => (typeof item === 'string' ? hasImportInSource(item) : hasImportInSource(item.propertyName)))\n }\n\n const pathTypeKey = `${curr.path}:${curr.isTypeOnly}`\n const prevByPath = pathTypeMap.get(pathTypeKey)\n\n // Create key for name comparison\n const nameKey = Array.isArray(name) ? JSON.stringify(name) : name || ''\n const pathNameTypeKey = `${curr.path}:${nameKey}:${curr.isTypeOnly}`\n const uniquePrev = uniqueMap.get(pathNameTypeKey)\n // Check if there's already an item with the same path+name but with isTypeOnly=true\n const pathNameKey = `${curr.path}:${nameKey}`\n const prevByPathNameAndIsTypeOnly = pathNameTypeTrueMap.get(pathNameKey)\n\n if (prevByPathNameAndIsTypeOnly) {\n // we already have an import that has the same path and name but uses `isTypeOnly` (import type ...)\n continue\n }\n\n // already unique enough or name is empty\n if (uniquePrev || (Array.isArray(name) && !name.length)) {\n continue\n }\n\n // new item, append name\n if (!prevByPath) {\n const newItem = {\n ...curr,\n name,\n }\n prev.push(newItem)\n pathTypeMap.set(pathTypeKey, newItem)\n uniqueMap.set(pathNameTypeKey, newItem)\n // Track items with isTypeOnly=true for the type-only check\n if (newItem.isTypeOnly) {\n pathNameTypeTrueMap.set(pathNameKey, newItem)\n }\n continue\n }\n\n // merge all names when prev and current both have the same isTypeOnly set\n if (prevByPath && Array.isArray(prevByPath.name) && Array.isArray(name) && prevByPath.isTypeOnly === curr.isTypeOnly) {\n prevByPath.name = [...new Set([...prevByPath.name, ...name])]\n continue\n }\n\n // no import was found in the source, ignore import\n if (!Array.isArray(name) && name && !hasImportInSource(name)) {\n continue\n }\n\n prev.push(curr)\n uniqueMap.set(pathNameTypeKey, curr)\n // Track items with isTypeOnly=true for the type-only check\n if (curr.isTypeOnly) {\n pathNameTypeTrueMap.set(pathNameKey, curr)\n }\n }\n\n return prev\n}\n\n/**\n * Helper to create a file with name and id set\n */\nexport function createFile<TMeta extends object = object>(file: KubbFile.File<TMeta>): KubbFile.ResolvedFile<TMeta> {\n const extname = path.extname(file.baseName) as KubbFile.Extname\n if (!extname) {\n throw new Error(`No extname found for ${file.baseName}`)\n }\n\n const source = file.sources.map((item) => item.value).join('\\n\\n')\n const exports = file.exports?.length ? combineExports(file.exports) : []\n const imports = file.imports?.length && source ? combineImports(file.imports, exports, source) : []\n const sources = file.sources?.length ? combineSources(file.sources) : []\n\n return {\n ...file,\n id: createHash('sha256').update(file.path).digest('hex'),\n name: trimExtName(file.baseName),\n extname,\n imports: imports,\n exports: exports,\n sources: sources,\n meta: file.meta || ({} as TMeta),\n }\n}\n","import type * as KubbFile from '../KubbFile.ts'\n\ntype BarrelData = {\n file?: KubbFile.File\n path: string\n name: string\n}\n\nexport type Graph = {\n nodes: Array<{ id: string; label: string }>\n edges: Array<{ from: string; to: string }>\n}\n\nexport class TreeNode<TData = unknown> {\n data: TData\n parent?: TreeNode<TData>\n children: Array<TreeNode<TData>> = []\n #childrenMap = new Map<string, TreeNode<TData>>()\n #cachedLeaves?: Array<TreeNode<TData>>\n\n constructor(data: TData, parent?: TreeNode<TData>) {\n this.data = data\n this.parent = parent\n }\n\n addChild(data: TData): TreeNode<TData> {\n const child = new TreeNode(data, this)\n this.children.push(child)\n // Update Map if data has a name property (for BarrelData)\n if (typeof data === 'object' && data !== null && 'name' in data) {\n this.#childrenMap.set((data as { name: string }).name, child)\n }\n this.#cachedLeaves = undefined // invalidate cached leaves\n return child\n }\n\n getChildByName(name: string): TreeNode<TData> | undefined {\n return this.#childrenMap.get(name)\n }\n\n get leaves(): Array<TreeNode<TData>> {\n if (this.#cachedLeaves) return this.#cachedLeaves\n if (this.children.length === 0) return [this]\n\n const result: Array<TreeNode<TData>> = []\n const stack: Array<TreeNode<TData>> = [...this.children]\n const visited = new Set<TreeNode<TData>>()\n\n while (stack.length > 0) {\n const node = stack.pop()!\n if (visited.has(node)) {\n continue\n }\n visited.add(node)\n\n if (node.children.length > 0) {\n stack.push(...node.children)\n } else {\n result.push(node)\n }\n }\n\n this.#cachedLeaves = result\n return result\n }\n\n forEach(callback: (node: TreeNode<TData>) => void): this {\n const stack: Array<TreeNode<TData>> = [this]\n\n for (let i = 0; i < stack.length; i++) {\n const node = stack[i]!\n callback(node)\n\n if (node.children.length > 0) {\n stack.push(...node.children)\n }\n }\n\n return this\n }\n\n findDeep(predicate: (node: TreeNode<TData>) => boolean): TreeNode<TData> | undefined {\n for (const leaf of this.leaves) {\n if (predicate(leaf)) return leaf\n }\n return undefined\n }\n\n static toGraph(root: TreeNode<BarrelData>): Graph {\n const nodes: Array<{ id: string; label: string }> = []\n const edges: Array<{ from: string; to: string }> = []\n\n const stack: Array<TreeNode<BarrelData>> = [root]\n\n for (let i = 0; i < stack.length; i++) {\n const node = stack[i]!\n\n nodes.push({\n id: node.data.path,\n label: node.data.name,\n })\n\n const children = node.children\n if (children.length > 0) {\n for (let j = 0, len = children.length; j < len; j++) {\n const child = children[j]!\n edges.push({\n from: node.data.path,\n to: child.data.path,\n })\n stack.push(child)\n }\n }\n }\n\n return { nodes, edges }\n }\n\n static fromFiles(files: Array<KubbFile.File>, rootFolder = ''): TreeNode<BarrelData> | null {\n const normalizePath = (p: string): string => p.replace(/\\\\/g, '/')\n const normalizedRoot = normalizePath(rootFolder)\n const rootPrefix = normalizedRoot.endsWith('/') ? normalizedRoot : `${normalizedRoot}/`\n\n const normalizedPaths = new Map<KubbFile.File, string>()\n const filteredFiles: Array<KubbFile.File> = []\n for (const file of files) {\n const filePath = normalizedPaths.get(file) ?? normalizePath(file.path)\n normalizedPaths.set(file, filePath)\n if (!filePath.endsWith('.json') && (!rootFolder || filePath.startsWith(rootPrefix))) {\n filteredFiles.push(file)\n }\n }\n\n if (filteredFiles.length === 0) {\n return null\n }\n\n const treeNode = new TreeNode<BarrelData>({\n name: rootFolder || '',\n path: rootFolder || '',\n file: undefined,\n })\n\n for (const file of filteredFiles) {\n const filePath = normalizedPaths.get(file)!\n const relPath = filePath.slice(rootPrefix.length)\n const parts = relPath.split('/')\n\n let current = treeNode\n let currentPath = rootFolder\n\n for (const [index, part] of parts.entries()) {\n const isLast = index === parts.length - 1\n currentPath += (currentPath.endsWith('/') ? '' : '/') + part\n\n let next = current.getChildByName(part)\n\n if (!next) {\n next = current.addChild({\n name: part,\n path: currentPath,\n file: isLast ? file : undefined,\n })\n }\n\n current = next\n }\n }\n\n return treeNode\n }\n}\n"],"x_google_ignoreList":[0,1,2,3],"mappings":"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"}
|