@kubb/core 3.0.0-alpha.11 → 3.0.0-alpha.13

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 (48) hide show
  1. package/README.md +13 -0
  2. package/dist/{FileManager-CpuFz6eH.d.ts → FileManager-B-fP5y5O.d.ts} +5 -10
  3. package/dist/{FileManager-BbUCeEyv.d.cts → FileManager-CL52wQgR.d.cts} +5 -10
  4. package/dist/{chunk-HMCSWG5L.cjs → chunk-2ESEP5LA.cjs} +9 -9
  5. package/dist/chunk-2ESEP5LA.cjs.map +1 -0
  6. package/dist/{chunk-YEVCYV36.cjs → chunk-DU3QBH4U.cjs} +10 -10
  7. package/dist/{chunk-YEVCYV36.cjs.map → chunk-DU3QBH4U.cjs.map} +1 -1
  8. package/dist/{chunk-TTDCUWK7.cjs → chunk-NDHS47GW.cjs} +4 -4
  9. package/dist/{chunk-TTDCUWK7.cjs.map → chunk-NDHS47GW.cjs.map} +1 -1
  10. package/dist/{chunk-52WA2JF5.cjs → chunk-Q2VSIEFB.cjs} +71 -68
  11. package/dist/chunk-Q2VSIEFB.cjs.map +1 -0
  12. package/dist/{chunk-PJLUPV3P.cjs → chunk-UTH63P4L.cjs} +8 -8
  13. package/dist/{chunk-PJLUPV3P.cjs.map → chunk-UTH63P4L.cjs.map} +1 -1
  14. package/dist/{chunk-ADFKVVPE.cjs → chunk-WG3GHGN2.cjs} +4 -4
  15. package/dist/{chunk-ADFKVVPE.cjs.map → chunk-WG3GHGN2.cjs.map} +1 -1
  16. package/dist/{chunk-L6YLVCKM.js → chunk-ZWL7JIMH.js} +42 -42
  17. package/dist/chunk-ZWL7JIMH.js.map +1 -0
  18. package/dist/index.cjs +54 -74
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.cts +2 -2
  21. package/dist/index.d.ts +2 -2
  22. package/dist/index.js +11 -42
  23. package/dist/index.js.map +1 -1
  24. package/dist/logger.cjs +7 -7
  25. package/dist/mocks.cjs +8 -8
  26. package/dist/mocks.d.cts +1 -1
  27. package/dist/mocks.d.ts +1 -1
  28. package/dist/mocks.js +1 -1
  29. package/dist/{prompt-L5KFKY73.cjs → prompt-R4OORXA5.cjs} +62 -62
  30. package/dist/{prompt-L5KFKY73.cjs.map → prompt-R4OORXA5.cjs.map} +1 -1
  31. package/dist/transformers.cjs +23 -23
  32. package/dist/utils.cjs +17 -17
  33. package/dist/utils.d.cts +1 -0
  34. package/dist/utils.d.ts +1 -0
  35. package/dist/utils.js +1 -1
  36. package/package.json +7 -7
  37. package/src/BarrelManager.ts +1 -1
  38. package/src/FileManager.ts +31 -40
  39. package/src/PluginManager.ts +7 -8
  40. package/src/build.ts +1 -1
  41. package/src/index.ts +1 -1
  42. package/src/plugin.ts +0 -3
  43. package/src/types.ts +0 -2
  44. package/src/utils/parser.ts +12 -4
  45. package/dist/chunk-52WA2JF5.cjs.map +0 -1
  46. package/dist/chunk-HMCSWG5L.cjs.map +0 -1
  47. package/dist/chunk-L6YLVCKM.js.map +0 -1
  48. package/src/utils/cache.ts +0 -35
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkHMCSWG5L_cjs = require('./chunk-HMCSWG5L.cjs');
4
- var chunkADFKVVPE_cjs = require('./chunk-ADFKVVPE.cjs');
3
+ var chunk2ESEP5LA_cjs = require('./chunk-2ESEP5LA.cjs');
4
+ var chunkWG3GHGN2_cjs = require('./chunk-WG3GHGN2.cjs');
5
5
  var path = require('path');
6
6
  var fs = require('@kubb/fs');
7
7
  var hash = require('object-hash');
@@ -12,9 +12,9 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
12
12
  var hash__default = /*#__PURE__*/_interopDefault(hash);
13
13
 
14
14
  // ../../node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.js
15
- var require_eventemitter3 = chunkADFKVVPE_cjs.__commonJS({
15
+ var require_eventemitter3 = chunkWG3GHGN2_cjs.__commonJS({
16
16
  "../../node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.js"(exports, module) {
17
- chunkADFKVVPE_cjs.init_cjs_shims();
17
+ chunkWG3GHGN2_cjs.init_cjs_shims();
18
18
  var has = Object.prototype.hasOwnProperty;
19
19
  var prefix = "~";
20
20
  function Events() {
@@ -174,10 +174,10 @@ var require_eventemitter3 = chunkADFKVVPE_cjs.__commonJS({
174
174
  });
175
175
 
176
176
  // src/utils/index.ts
177
- chunkADFKVVPE_cjs.init_cjs_shims();
177
+ chunkWG3GHGN2_cjs.init_cjs_shims();
178
178
 
179
179
  // src/utils/FunctionParams.ts
180
- chunkADFKVVPE_cjs.init_cjs_shims();
180
+ chunkWG3GHGN2_cjs.init_cjs_shims();
181
181
  var FunctionParams = class _FunctionParams {
182
182
  #items = [];
183
183
  constructor() {
@@ -198,7 +198,7 @@ var FunctionParams = class _FunctionParams {
198
198
  return this;
199
199
  }
200
200
  static #orderItems(items) {
201
- return chunkHMCSWG5L_cjs.orderBy(
201
+ return chunk2ESEP5LA_cjs.orderBy(
202
202
  items.filter(Boolean),
203
203
  [
204
204
  (v) => {
@@ -226,7 +226,7 @@ var FunctionParams = class _FunctionParams {
226
226
  acc.push(`${type}${rest.default ? ` = ${rest.default}` : ""}`);
227
227
  return acc;
228
228
  }
229
- const parameterName = name.startsWith("{") ? name : chunkHMCSWG5L_cjs.camelCase(name);
229
+ const parameterName = name.startsWith("{") ? name : chunk2ESEP5LA_cjs.camelCase(name);
230
230
  if (type) {
231
231
  if (required) {
232
232
  acc.push(`${parameterName}: ${type}${rest.default ? ` = ${rest.default}` : ""}`);
@@ -281,7 +281,7 @@ var FunctionParams = class _FunctionParams {
281
281
  };
282
282
 
283
283
  // src/utils/promise.ts
284
- chunkADFKVVPE_cjs.init_cjs_shims();
284
+ chunkWG3GHGN2_cjs.init_cjs_shims();
285
285
  function isPromise(result) {
286
286
  return !!result && typeof result?.then === "function";
287
287
  }
@@ -293,7 +293,7 @@ function isPromiseRejectedResult(result) {
293
293
  }
294
294
 
295
295
  // src/utils/renderTemplate.ts
296
- chunkADFKVVPE_cjs.init_cjs_shims();
296
+ chunkWG3GHGN2_cjs.init_cjs_shims();
297
297
  function renderTemplate(template, data = void 0) {
298
298
  if (!data || !Object.keys(data).length) {
299
299
  return template.replace(/{{(.*?)}}/g, "");
@@ -318,7 +318,7 @@ function renderTemplate(template, data = void 0) {
318
318
  }
319
319
 
320
320
  // src/utils/timeout.ts
321
- chunkADFKVVPE_cjs.init_cjs_shims();
321
+ chunkWG3GHGN2_cjs.init_cjs_shims();
322
322
  async function timeout(ms) {
323
323
  return new Promise((resolve) => {
324
324
  setTimeout(() => {
@@ -328,7 +328,7 @@ async function timeout(ms) {
328
328
  }
329
329
 
330
330
  // src/utils/uniqueName.ts
331
- chunkADFKVVPE_cjs.init_cjs_shims();
331
+ chunkWG3GHGN2_cjs.init_cjs_shims();
332
332
  function getUniqueName(originalName, data) {
333
333
  let used = data[originalName] || 0;
334
334
  if (used) {
@@ -349,7 +349,7 @@ function setUniqueName(originalName, data) {
349
349
  }
350
350
 
351
351
  // src/utils/URLPath.ts
352
- chunkADFKVVPE_cjs.init_cjs_shims();
352
+ chunkWG3GHGN2_cjs.init_cjs_shims();
353
353
  var URLPath = class {
354
354
  path;
355
355
  constructor(path) {
@@ -417,7 +417,7 @@ var URLPath = class {
417
417
  let newPath = this.path.replaceAll("{", "${");
418
418
  if (found) {
419
419
  newPath = found.reduce((prev, curr) => {
420
- const pathParam = replacer ? replacer(chunkHMCSWG5L_cjs.camelCase(curr)) : chunkHMCSWG5L_cjs.camelCase(curr);
420
+ const pathParam = replacer ? replacer(chunk2ESEP5LA_cjs.camelCase(curr)) : chunk2ESEP5LA_cjs.camelCase(curr);
421
421
  const replacement = `\${${pathParam}}`;
422
422
  return prev.replace(curr, replacement);
423
423
  }, this.path);
@@ -433,7 +433,7 @@ var URLPath = class {
433
433
  const params = {};
434
434
  found.forEach((item) => {
435
435
  item = item.replaceAll("{", "").replaceAll("}", "");
436
- const pathParam = replacer ? replacer(chunkHMCSWG5L_cjs.camelCase(item)) : chunkHMCSWG5L_cjs.camelCase(item);
436
+ const pathParam = replacer ? replacer(chunk2ESEP5LA_cjs.camelCase(item)) : chunk2ESEP5LA_cjs.camelCase(item);
437
437
  params[pathParam] = pathParam;
438
438
  }, this.path);
439
439
  return params;
@@ -448,16 +448,16 @@ var URLPath = class {
448
448
  };
449
449
 
450
450
  // src/utils/parser.ts
451
- chunkADFKVVPE_cjs.init_cjs_shims();
451
+ chunkWG3GHGN2_cjs.init_cjs_shims();
452
452
 
453
453
  // src/FileManager.ts
454
- chunkADFKVVPE_cjs.init_cjs_shims();
454
+ chunkWG3GHGN2_cjs.init_cjs_shims();
455
455
 
456
456
  // src/BarrelManager.ts
457
- chunkADFKVVPE_cjs.init_cjs_shims();
457
+ chunkWG3GHGN2_cjs.init_cjs_shims();
458
458
 
459
459
  // src/utils/TreeNode.ts
460
- chunkADFKVVPE_cjs.init_cjs_shims();
460
+ chunkWG3GHGN2_cjs.init_cjs_shims();
461
461
  var TreeNode = class _TreeNode {
462
462
  data;
463
463
  parent;
@@ -705,14 +705,14 @@ File: ${JSON.stringify(item.data.file, void 0, 2)}`
705
705
  };
706
706
 
707
707
  // ../../node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/index.js
708
- chunkADFKVVPE_cjs.init_cjs_shims();
708
+ chunkWG3GHGN2_cjs.init_cjs_shims();
709
709
 
710
710
  // ../../node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index.mjs
711
- chunkADFKVVPE_cjs.init_cjs_shims();
712
- var import_index = chunkADFKVVPE_cjs.__toESM(require_eventemitter3(), 1);
711
+ chunkWG3GHGN2_cjs.init_cjs_shims();
712
+ var import_index = chunkWG3GHGN2_cjs.__toESM(require_eventemitter3(), 1);
713
713
 
714
714
  // ../../node_modules/.pnpm/p-timeout@6.1.2/node_modules/p-timeout/index.js
715
- chunkADFKVVPE_cjs.init_cjs_shims();
715
+ chunkWG3GHGN2_cjs.init_cjs_shims();
716
716
  var TimeoutError = class extends Error {
717
717
  constructor(message) {
718
718
  super(message);
@@ -797,10 +797,10 @@ function pTimeout(promise, options) {
797
797
  }
798
798
 
799
799
  // ../../node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/priority-queue.js
800
- chunkADFKVVPE_cjs.init_cjs_shims();
800
+ chunkWG3GHGN2_cjs.init_cjs_shims();
801
801
 
802
802
  // ../../node_modules/.pnpm/p-queue@8.0.1/node_modules/p-queue/dist/lower-bound.js
803
- chunkADFKVVPE_cjs.init_cjs_shims();
803
+ chunkWG3GHGN2_cjs.init_cjs_shims();
804
804
  function lowerBound(array, value, comparator) {
805
805
  let first = 0;
806
806
  let count = array.length;
@@ -1144,27 +1144,29 @@ var PQueue = class extends import_index.default {
1144
1144
  // src/FileManager.ts
1145
1145
  var FileManager = class {
1146
1146
  #filesByPath = /* @__PURE__ */ new Map();
1147
- #files = /* @__PURE__ */ new Set();
1148
1147
  constructor() {
1149
1148
  return this;
1150
1149
  }
1151
1150
  get files() {
1152
- return Array.from(this.#files);
1151
+ return [...this.#filesByPath.values()];
1153
1152
  }
1154
1153
  get orderedFiles() {
1155
- return chunkHMCSWG5L_cjs.orderBy(Array.from(this.#files), [
1156
- (v) => v?.meta && "pluginKey" in v.meta && !v.meta.pluginKey,
1157
- (v) => v.path.length,
1158
- (v) => fs.trimExtName(v.path).endsWith("index"),
1159
- (v) => fs.trimExtName(v.baseName),
1160
- (v) => v.path.split(".").pop()
1161
- ]);
1154
+ return chunk2ESEP5LA_cjs.orderBy(
1155
+ [...this.#filesByPath.values()],
1156
+ [
1157
+ (v) => v?.meta && "pluginKey" in v.meta && !v.meta.pluginKey,
1158
+ (v) => v.path.length,
1159
+ (v) => fs.trimExtName(v.path).endsWith("index"),
1160
+ (v) => fs.trimExtName(v.baseName),
1161
+ (v) => v.path.split(".").pop()
1162
+ ]
1163
+ );
1162
1164
  }
1163
1165
  get groupedFiles() {
1164
- return buildDirectoryTree(Array.from(this.#files));
1166
+ return buildDirectoryTree([...this.#filesByPath.values()]);
1165
1167
  }
1166
1168
  get treeNode() {
1167
- return TreeNode.build(Array.from(this.#files));
1169
+ return TreeNode.build([...this.#filesByPath.values()]);
1168
1170
  }
1169
1171
  async add(...files) {
1170
1172
  const promises = files.map((file) => {
@@ -1182,30 +1184,21 @@ var FileManager = class {
1182
1184
  async #add(file) {
1183
1185
  const resolvedFile = createFile(file);
1184
1186
  this.#filesByPath.set(resolvedFile.path, resolvedFile);
1185
- this.#files.add(resolvedFile);
1186
1187
  return resolvedFile;
1187
1188
  }
1188
1189
  clear() {
1189
1190
  this.#filesByPath.clear();
1190
- this.#files.clear();
1191
1191
  }
1192
1192
  async #addOrAppend(file) {
1193
1193
  const previousFile = this.#filesByPath.get(file.path);
1194
1194
  if (previousFile) {
1195
1195
  this.#filesByPath.delete(previousFile.path);
1196
- this.#files.delete(previousFile);
1197
1196
  return this.#add(mergeFile(previousFile, file));
1198
1197
  }
1199
1198
  return this.#add(file);
1200
1199
  }
1201
1200
  getCacheById(id) {
1202
- let cache;
1203
- this.#files.forEach((file) => {
1204
- if (file.id === id) {
1205
- cache = file;
1206
- }
1207
- });
1208
- return cache;
1201
+ return [...this.#filesByPath.values()].find((file) => file.id === id);
1209
1202
  }
1210
1203
  getByPath(path) {
1211
1204
  return this.#filesByPath.get(path);
@@ -1216,7 +1209,6 @@ var FileManager = class {
1216
1209
  return;
1217
1210
  }
1218
1211
  this.#filesByPath.delete(path);
1219
- this.#files.delete(cacheItem);
1220
1212
  }
1221
1213
  async getBarrelFiles({ files, meta, root, output, logger }) {
1222
1214
  const { exportType = "barrelNamed" } = output;
@@ -1266,7 +1258,8 @@ var FileManager = class {
1266
1258
  };
1267
1259
  async function getSource(file, { logger } = {}) {
1268
1260
  const parser = await getFileParser(file.extName);
1269
- return parser.print(file, { logger });
1261
+ const source = await parser.print(file, { logger });
1262
+ return parser.format(source);
1270
1263
  }
1271
1264
  function mergeFile(a, b) {
1272
1265
  return {
@@ -1297,7 +1290,13 @@ function combineSources(sources) {
1297
1290
  );
1298
1291
  }
1299
1292
  function combineExports(exports) {
1300
- const combinedExports = exports.reduce(
1293
+ return chunk2ESEP5LA_cjs.orderBy(exports, [
1294
+ (v) => !!Array.isArray(v.name),
1295
+ (v) => !v.isTypeOnly,
1296
+ (v) => v.path,
1297
+ (v) => !!v.name,
1298
+ (v) => Array.isArray(v.name) ? chunk2ESEP5LA_cjs.orderBy(v.name) : v.name
1299
+ ]).reduce(
1301
1300
  (prev, curr) => {
1302
1301
  const name = curr.name;
1303
1302
  const prevByPath = prev.findLast((imp) => imp.path === curr.path);
@@ -1328,23 +1327,24 @@ function combineExports(exports) {
1328
1327
  },
1329
1328
  []
1330
1329
  );
1331
- return chunkHMCSWG5L_cjs.orderBy(combinedExports, [
1330
+ }
1331
+ function combineImports(imports, exports, source) {
1332
+ return chunk2ESEP5LA_cjs.orderBy(imports, [
1332
1333
  (v) => !!Array.isArray(v.name),
1333
1334
  (v) => !v.isTypeOnly,
1334
1335
  (v) => v.path,
1335
1336
  (v) => !!v.name,
1336
- (v) => Array.isArray(v.name) ? chunkHMCSWG5L_cjs.orderBy(v.name) : v.name
1337
- ]);
1338
- }
1339
- function combineImports(imports, exports, source) {
1340
- const combinedImports = imports.reduce(
1337
+ (v) => Array.isArray(v.name) ? chunk2ESEP5LA_cjs.orderBy(v.name) : v.name
1338
+ ]).reduce(
1341
1339
  (prev, curr) => {
1342
1340
  let name = Array.isArray(curr.name) ? [...new Set(curr.name)] : curr.name;
1343
1341
  const hasImportInSource = (importName) => {
1344
1342
  if (!source) {
1345
1343
  return true;
1346
1344
  }
1347
- const checker = (name2) => name2 && !!source.includes(name2);
1345
+ const checker = (name2) => {
1346
+ return name2 && !!source.includes(name2);
1347
+ };
1348
1348
  return checker(importName) || exports.some(({ name: name2 }) => Array.isArray(name2) ? name2.some(checker) : checker(name2));
1349
1349
  };
1350
1350
  if (curr.path === curr.root) {
@@ -1382,17 +1382,10 @@ function combineImports(imports, exports, source) {
1382
1382
  },
1383
1383
  []
1384
1384
  );
1385
- return chunkHMCSWG5L_cjs.orderBy(combinedImports, [
1386
- (v) => !!Array.isArray(v.name),
1387
- (v) => !v.isTypeOnly,
1388
- (v) => v.path,
1389
- (v) => !!v.name,
1390
- (v) => Array.isArray(v.name) ? chunkHMCSWG5L_cjs.orderBy(v.name) : v.name
1391
- ]);
1392
1385
  }
1393
1386
  var queue = new PQueue({ concurrency: 100 });
1394
1387
  async function processFiles({ dryRun, config, logger, files }) {
1395
- const orderedFiles = chunkHMCSWG5L_cjs.orderBy(files, [
1388
+ const orderedFiles = chunk2ESEP5LA_cjs.orderBy(files, [
1396
1389
  (v) => v?.meta && "pluginKey" in v.meta && !v.meta.pluginKey,
1397
1390
  (v) => v.path.length,
1398
1391
  (v) => fs.trimExtName(v.path).endsWith("index")
@@ -1463,8 +1456,13 @@ var typeScriptParser = createFileParser({
1463
1456
  render() {
1464
1457
  return void 0;
1465
1458
  },
1459
+ async format(source) {
1460
+ const module = await import('@kubb/parser-ts');
1461
+ return module.format(source);
1462
+ },
1466
1463
  async print(file) {
1467
1464
  const module = await import('@kubb/parser-ts');
1465
+ const source = file.sources.map((item) => item.value).join("\n\n");
1468
1466
  const importNodes = file.imports.map((item) => {
1469
1467
  const path = item.root ? fs.getRelativePath(item.root, item.path) : item.path;
1470
1468
  return module.factory.createImportDeclaration({
@@ -1481,14 +1479,16 @@ var typeScriptParser = createFileParser({
1481
1479
  asAlias: item.asAlias
1482
1480
  });
1483
1481
  }).filter(Boolean);
1484
- const source = [module.print([...importNodes, ...exportNodes]), file.sources.map((item) => item.value).join("\n\n")].join("\n");
1485
- return module.print([], { source, noEmitHelpers: false });
1482
+ return [module.print([...importNodes, ...exportNodes]), source].join("\n");
1486
1483
  }
1487
1484
  });
1488
1485
  var defaultParser = createFileParser({
1489
1486
  render() {
1490
1487
  return void 0;
1491
1488
  },
1489
+ async format(source) {
1490
+ return source;
1491
+ },
1492
1492
  async print(file, { logger }) {
1493
1493
  return file.sources.map((item) => item.value).join("\n\n");
1494
1494
  }
@@ -1518,6 +1518,9 @@ function trimExtName2(text) {
1518
1518
  exports.FileManager = FileManager;
1519
1519
  exports.FunctionParams = FunctionParams;
1520
1520
  exports.URLPath = URLPath;
1521
+ exports.combineExports = combineExports;
1522
+ exports.combineImports = combineImports;
1523
+ exports.combineSources = combineSources;
1521
1524
  exports.createFile = createFile;
1522
1525
  exports.createFileExport = createFileExport;
1523
1526
  exports.createFileImport = createFileImport;
@@ -1532,5 +1535,5 @@ exports.processFiles = processFiles;
1532
1535
  exports.renderTemplate = renderTemplate;
1533
1536
  exports.setUniqueName = setUniqueName;
1534
1537
  exports.timeout = timeout;
1535
- //# sourceMappingURL=chunk-52WA2JF5.cjs.map
1536
- //# sourceMappingURL=chunk-52WA2JF5.cjs.map
1538
+ //# sourceMappingURL=chunk-Q2VSIEFB.cjs.map
1539
+ //# sourceMappingURL=chunk-Q2VSIEFB.cjs.map