@kubb/core 1.12.0-canary.20231018T090722 → 1.12.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.
package/dist/index.cjs CHANGED
@@ -7,14 +7,14 @@ var crypto = require('crypto');
7
7
  var pathParser2 = require('path');
8
8
  var fs = require('fs-extra');
9
9
  var jsRuntime = require('js-runtime');
10
- var changeCase = require('change-case');
11
- var naturalOrderby = require('natural-orderby');
12
10
  var perf_hooks = require('perf_hooks');
13
11
  var dirTree = require('directory-tree');
14
12
  var mod = require('module');
15
13
  var os = require('os');
16
14
  var url = require('url');
17
15
  var seedrandom = require('seedrandom');
16
+ var changeCase = require('change-case');
17
+ var naturalOrderby = require('natural-orderby');
18
18
  var parser = require('@kubb/parser');
19
19
  var isEqual = require('lodash.isequal');
20
20
  var events = require('events');
@@ -139,28 +139,22 @@ var reader = jsRuntime.switcher(
139
139
  },
140
140
  "node"
141
141
  );
142
+ var syncReader = jsRuntime.switcher(
143
+ {
144
+ node: (path) => {
145
+ return fs__default.default.readFileSync(path, { encoding: "utf8" });
146
+ },
147
+ bun: () => {
148
+ throw new Error("Bun cannot read sync");
149
+ }
150
+ },
151
+ "node"
152
+ );
142
153
  async function read(path) {
143
154
  return reader(path);
144
155
  }
145
- function createFunctionParams(ast) {
146
- const sortedData = naturalOrderby.orderBy(ast, [(v) => !v.default, (v) => v.required ?? true], ["desc", "desc"]);
147
- return sortedData.filter(({ enabled = true }) => enabled).reduce((acc, { name, type, required = true, ...rest }) => {
148
- if (!name) {
149
- acc.push(`${type}${rest.default ? ` = ${rest.default}` : ""}`);
150
- return acc;
151
- }
152
- const parameterName = changeCase.camelCase(name, { delimiter: "", transform: changeCase.camelCaseTransformMerge });
153
- if (type) {
154
- if (required) {
155
- acc.push(`${parameterName}: ${type}${rest.default ? ` = ${rest.default}` : ""}`);
156
- } else {
157
- acc.push(`${parameterName}?: ${type}`);
158
- }
159
- } else {
160
- acc.push(`${parameterName}`);
161
- }
162
- return acc;
163
- }, []).join(", ");
156
+ function readSync(path) {
157
+ return syncReader(path);
164
158
  }
165
159
 
166
160
  // src/utils/nameSorter.ts
@@ -749,6 +743,45 @@ var URLPath = class _URLPath {
749
743
  return false;
750
744
  }
751
745
  };
746
+ var FunctionParams = class {
747
+ type;
748
+ items = [];
749
+ constructor(type) {
750
+ this.type = type;
751
+ return this;
752
+ }
753
+ add(item) {
754
+ if (!item) {
755
+ return this;
756
+ }
757
+ if (Array.isArray(item)) {
758
+ item.filter(Boolean).forEach((it) => this.items.push(it));
759
+ return this;
760
+ }
761
+ this.items.push(item);
762
+ return this;
763
+ }
764
+ toString() {
765
+ const sortedData = naturalOrderby.orderBy(this.items.filter(Boolean), [(v) => !v.default, (v) => v.required ?? true], ["desc", "desc"]);
766
+ return sortedData.filter(({ enabled = true }) => enabled).reduce((acc, { name, type, required = true, ...rest }) => {
767
+ if (!name) {
768
+ acc.push(`${type}${rest.default ? ` = ${rest.default}` : ""}`);
769
+ return acc;
770
+ }
771
+ const parameterName = changeCase.camelCase(name, { delimiter: "", transform: changeCase.camelCaseTransformMerge });
772
+ if (type) {
773
+ if (required) {
774
+ acc.push(`${parameterName}: ${type}${rest.default ? ` = ${rest.default}` : ""}`);
775
+ } else {
776
+ acc.push(`${parameterName}?: ${type}`);
777
+ }
778
+ } else {
779
+ acc.push(`${parameterName}`);
780
+ }
781
+ return acc;
782
+ }, []).join(", ");
783
+ }
784
+ };
752
785
  function getIndexes(root, options = {}) {
753
786
  const tree = TreeNode.build(root, { extensions: /\.ts/, ...options });
754
787
  if (!tree) {
@@ -772,7 +805,7 @@ function getIndexes(root, options = {}) {
772
805
  }).filter(Boolean);
773
806
  files2.push({
774
807
  path,
775
- fileName: "index.ts",
808
+ baseName: "index.ts",
776
809
  source: "",
777
810
  exports
778
811
  });
@@ -782,7 +815,7 @@ function getIndexes(root, options = {}) {
782
815
  const importPath = child.data.type === "directory" ? `./${child.data.name}` : `./${child.data.name.replace(/\.[^.]*$/, "")}`;
783
816
  files2.push({
784
817
  path,
785
- fileName: "index.ts",
818
+ baseName: "index.ts",
786
819
  source: "",
787
820
  exports: [{ path: importPath }]
788
821
  });
@@ -818,8 +851,8 @@ ${curr.source}` : "",
818
851
  }, []);
819
852
  }
820
853
  var extensions = [".js", ".ts", ".tsx"];
821
- function isExtensionAllowed(fileName) {
822
- return extensions.some((extension) => fileName.endsWith(extension));
854
+ function isExtensionAllowed(baseName) {
855
+ return extensions.some((extension) => baseName.endsWith(extension));
823
856
  }
824
857
  function combineExports(exports) {
825
858
  return exports.reduce((prev, curr) => {
@@ -883,7 +916,7 @@ function combineImports(imports, exports, source) {
883
916
  }
884
917
  function createFileSource(file) {
885
918
  let { source } = file;
886
- if (!isExtensionAllowed(file.fileName)) {
919
+ if (!isExtensionAllowed(file.baseName)) {
887
920
  return file.source;
888
921
  }
889
922
  const exports = file.exports ? combineExports(file.exports) : [];
@@ -1079,16 +1112,13 @@ var definePlugin = createPlugin((options) => {
1079
1112
  );
1080
1113
  },
1081
1114
  resolvePath,
1082
- resolveName: (params) => {
1083
- const name = resolveName(params);
1084
- return transformReservedWord(name);
1085
- },
1115
+ resolveName,
1086
1116
  cache: createPluginCache()
1087
1117
  };
1088
1118
  },
1089
- resolvePath(fileName) {
1119
+ resolvePath(baseName) {
1090
1120
  const root = pathParser2__default.default.resolve(this.config.root, this.config.output.path);
1091
- return pathParser2__default.default.resolve(root, fileName);
1121
+ return pathParser2__default.default.resolve(root, baseName);
1092
1122
  },
1093
1123
  resolveName(name) {
1094
1124
  return name;
@@ -1211,26 +1241,28 @@ var PluginManager = class {
1211
1241
  return this.hookForPluginSync({
1212
1242
  pluginName: params.pluginName,
1213
1243
  hookName: "resolvePath",
1214
- parameters: [params.fileName, params.directory, params.options]
1244
+ parameters: [params.baseName, params.directory, params.options]
1215
1245
  });
1216
1246
  }
1217
1247
  return this.hookFirstSync({
1218
1248
  hookName: "resolvePath",
1219
- parameters: [params.fileName, params.directory, params.options]
1249
+ parameters: [params.baseName, params.directory, params.options]
1220
1250
  }).result;
1221
1251
  };
1222
1252
  resolveName = (params) => {
1223
1253
  if (params.pluginName) {
1224
- return this.hookForPluginSync({
1254
+ const name2 = this.hookForPluginSync({
1225
1255
  pluginName: params.pluginName,
1226
1256
  hookName: "resolveName",
1227
- parameters: [params.name]
1257
+ parameters: [params.name, params.type]
1228
1258
  }) || params.name;
1259
+ return transformReservedWord(name2);
1229
1260
  }
1230
- return this.hookFirstSync({
1261
+ const name = this.hookFirstSync({
1231
1262
  hookName: "resolveName",
1232
- parameters: [params.name]
1263
+ parameters: [params.name, params.type]
1233
1264
  }).result;
1265
+ return transformReservedWord(name);
1234
1266
  };
1235
1267
  on(eventName, handler) {
1236
1268
  this.eventEmitter.on(eventName, handler);
@@ -1652,6 +1684,7 @@ Object.defineProperty(exports, 'pc', {
1652
1684
  get: function () { return pc3__default.default; }
1653
1685
  });
1654
1686
  exports.FileManager = FileManager;
1687
+ exports.FunctionParams = FunctionParams;
1655
1688
  exports.Generator = Generator;
1656
1689
  exports.LogLevel = LogLevel;
1657
1690
  exports.ParallelPluginError = ParallelPluginError;
@@ -1671,7 +1704,6 @@ exports.combineExports = combineExports;
1671
1704
  exports.combineFiles = combineFiles;
1672
1705
  exports.combineImports = combineImports;
1673
1706
  exports.createFileSource = createFileSource;
1674
- exports.createFunctionParams = createFunctionParams;
1675
1707
  exports.createJSDocBlockText = createJSDocBlockText;
1676
1708
  exports.createLogger = createLogger;
1677
1709
  exports.createPlugin = createPlugin;
@@ -1701,6 +1733,7 @@ exports.pluginName = pluginName;
1701
1733
  exports.randomColour = randomColour;
1702
1734
  exports.randomPicoColour = randomPicoColour;
1703
1735
  exports.read = read;
1736
+ exports.readSync = readSync;
1704
1737
  exports.renderTemplate = renderTemplate;
1705
1738
  exports.throttle = throttle;
1706
1739
  exports.timeout = timeout;