@tsoa-next/cli 8.0.1 → 8.0.2-dev.48.4fd45317

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 (78) hide show
  1. package/dist/api.d.ts +2 -1
  2. package/dist/api.js +171 -148
  3. package/dist/api.js.map +1 -1
  4. package/dist/cli.d.ts +1 -2
  5. package/dist/cli.js +2 -1
  6. package/dist/cli.js.map +1 -1
  7. package/dist/metadataGeneration/controllerGenerator.js +10 -13
  8. package/dist/metadataGeneration/controllerGenerator.js.map +1 -1
  9. package/dist/metadataGeneration/exceptions.d.ts +3 -3
  10. package/dist/metadataGeneration/exceptions.js +5 -12
  11. package/dist/metadataGeneration/exceptions.js.map +1 -1
  12. package/dist/metadataGeneration/extension.js +2 -2
  13. package/dist/metadataGeneration/extension.js.map +1 -1
  14. package/dist/metadataGeneration/initializer-value.js +90 -80
  15. package/dist/metadataGeneration/initializer-value.js.map +1 -1
  16. package/dist/metadataGeneration/metadataGenerator.js +20 -22
  17. package/dist/metadataGeneration/metadataGenerator.js.map +1 -1
  18. package/dist/metadataGeneration/methodGenerator.d.ts +1 -0
  19. package/dist/metadataGeneration/methodGenerator.js +39 -27
  20. package/dist/metadataGeneration/methodGenerator.js.map +1 -1
  21. package/dist/metadataGeneration/parameterGenerator.d.ts +5 -0
  22. package/dist/metadataGeneration/parameterGenerator.js +80 -91
  23. package/dist/metadataGeneration/parameterGenerator.js.map +1 -1
  24. package/dist/metadataGeneration/transformer/dateTransformer.js +3 -5
  25. package/dist/metadataGeneration/transformer/dateTransformer.js.map +1 -1
  26. package/dist/metadataGeneration/transformer/enumTransformer.d.ts +2 -0
  27. package/dist/metadataGeneration/transformer/enumTransformer.js +34 -12
  28. package/dist/metadataGeneration/transformer/enumTransformer.js.map +1 -1
  29. package/dist/metadataGeneration/transformer/primitiveTransformer.js +2 -4
  30. package/dist/metadataGeneration/transformer/primitiveTransformer.js.map +1 -1
  31. package/dist/metadataGeneration/transformer/propertyTransformer.d.ts +1 -0
  32. package/dist/metadataGeneration/transformer/propertyTransformer.js +14 -19
  33. package/dist/metadataGeneration/transformer/propertyTransformer.js.map +1 -1
  34. package/dist/metadataGeneration/transformer/referenceTransformer.d.ts +2 -0
  35. package/dist/metadataGeneration/transformer/referenceTransformer.js +35 -18
  36. package/dist/metadataGeneration/transformer/referenceTransformer.js.map +1 -1
  37. package/dist/metadataGeneration/transformer/transformer.js +3 -4
  38. package/dist/metadataGeneration/transformer/transformer.js.map +1 -1
  39. package/dist/metadataGeneration/typeResolver.d.ts +79 -0
  40. package/dist/metadataGeneration/typeResolver.js +908 -737
  41. package/dist/metadataGeneration/typeResolver.js.map +1 -1
  42. package/dist/module/generate-routes.d.ts +1 -2
  43. package/dist/module/generate-routes.js +18 -17
  44. package/dist/module/generate-routes.js.map +1 -1
  45. package/dist/module/generate-spec.js +1 -3
  46. package/dist/module/generate-spec.js.map +1 -1
  47. package/dist/routeGeneration/defaultRouteGenerator.js +2 -2
  48. package/dist/routeGeneration/defaultRouteGenerator.js.map +1 -1
  49. package/dist/routeGeneration/routeGenerator.d.ts +2 -0
  50. package/dist/routeGeneration/routeGenerator.js +20 -30
  51. package/dist/routeGeneration/routeGenerator.js.map +1 -1
  52. package/dist/swagger/specGenerator.js +1 -1
  53. package/dist/swagger/specGenerator.js.map +1 -1
  54. package/dist/swagger/specGenerator2.d.ts +12 -0
  55. package/dist/swagger/specGenerator2.js +200 -170
  56. package/dist/swagger/specGenerator2.js.map +1 -1
  57. package/dist/swagger/specGenerator3.d.ts +17 -87
  58. package/dist/swagger/specGenerator3.js +178 -172
  59. package/dist/swagger/specGenerator3.js.map +1 -1
  60. package/dist/utils/decoratorUtils.js +25 -32
  61. package/dist/utils/decoratorUtils.js.map +1 -1
  62. package/dist/utils/fs.d.ts +1 -1
  63. package/dist/utils/fs.js +5 -5
  64. package/dist/utils/fs.js.map +1 -1
  65. package/dist/utils/headerTypeHelpers.js +2 -5
  66. package/dist/utils/headerTypeHelpers.js.map +1 -1
  67. package/dist/utils/importClassesFromDirectories.js +2 -2
  68. package/dist/utils/importClassesFromDirectories.js.map +1 -1
  69. package/dist/utils/jsDocUtils.d.ts +2 -1
  70. package/dist/utils/jsDocUtils.js +43 -12
  71. package/dist/utils/jsDocUtils.js.map +1 -1
  72. package/dist/utils/pathUtils.js +2 -2
  73. package/dist/utils/pathUtils.js.map +1 -1
  74. package/dist/utils/swaggerUtils.js +7 -1
  75. package/dist/utils/swaggerUtils.js.map +1 -1
  76. package/dist/utils/validatorUtils.js +60 -97
  77. package/dist/utils/validatorUtils.js.map +1 -1
  78. package/package.json +2 -2
package/dist/api.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Config, RoutesConfig, SpecConfig, Tsoa } from '@tsoa-next/runtime';
2
2
  import { AbstractRouteGenerator } from './routeGeneration/routeGenerator';
3
+ import type { Options as MulterOptions } from 'multer';
3
4
  import type { CompilerOptions } from 'typescript';
4
5
  export declare function validateCompilerOptions(config: Config, configBaseDir?: string): CompilerOptions;
5
6
  export declare function validateCompilerOptions(compilerOptions?: Record<string, unknown>, configBaseDir?: string): CompilerOptions;
@@ -14,7 +15,7 @@ export interface ExtendedRoutesConfig extends RoutesConfig {
14
15
  noImplicitAdditionalProperties: Exclude<Config['noImplicitAdditionalProperties'], undefined>;
15
16
  bodyCoercion: Exclude<RoutesConfig['bodyCoercion'], undefined>;
16
17
  controllerPathGlobs?: Config['controllerPathGlobs'];
17
- multerOpts?: Config['multerOpts'];
18
+ multerOpts?: MulterOptions;
18
19
  rootSecurity?: Config['spec']['rootSecurity'];
19
20
  routeGenerator?: string | (new (metadata: Tsoa.Metadata, options: ExtendedRoutesConfig) => AbstractRouteGenerator<ExtendedRoutesConfig>);
20
21
  }
package/dist/api.js CHANGED
@@ -86,90 +86,94 @@ const trimToUndefined = (value) => {
86
86
  const trimmed = value.trim();
87
87
  return trimmed.length > 0 ? trimmed : undefined;
88
88
  };
89
+ const findAuthorNameBoundary = (author, startIndex) => {
90
+ let boundary = author.length;
91
+ for (const token of ['<', '(']) {
92
+ const tokenIndex = author.indexOf(token, startIndex);
93
+ if (tokenIndex !== -1 && tokenIndex < boundary) {
94
+ boundary = tokenIndex;
95
+ }
96
+ }
97
+ return boundary;
98
+ };
99
+ const setParsedContactValue = (contact, key, value) => {
100
+ if (value) {
101
+ contact[key] = value;
102
+ }
103
+ };
104
+ const readDelimitedAuthorValue = (author, index, openingToken, closingToken) => {
105
+ if (author[index] !== openingToken) {
106
+ return { nextIndex: index };
107
+ }
108
+ const closingIndex = author.indexOf(closingToken, index + 1);
109
+ if (closingIndex === -1) {
110
+ return { nextIndex: index };
111
+ }
112
+ return {
113
+ value: trimToUndefined(author.slice(index + 1, closingIndex)),
114
+ nextIndex: skipAuthorWhitespace(author, closingIndex + 1),
115
+ };
116
+ };
89
117
  const parseAuthorContact = (author) => {
90
118
  const contact = {};
91
119
  let index = skipAuthorWhitespace(author, 0);
92
- let nameBoundary = author.length;
93
- const emailStart = author.indexOf('<', index);
94
- if (emailStart !== -1 && emailStart < nameBoundary) {
95
- nameBoundary = emailStart;
96
- }
97
- const urlStart = author.indexOf('(', index);
98
- if (urlStart !== -1 && urlStart < nameBoundary) {
99
- nameBoundary = urlStart;
100
- }
120
+ const nameBoundary = findAuthorNameBoundary(author, index);
101
121
  const name = trimToUndefined(author.slice(index, nameBoundary));
102
- if (name) {
103
- contact.name = name;
104
- }
122
+ setParsedContactValue(contact, 'name', name);
105
123
  index = skipAuthorWhitespace(author, nameBoundary);
106
- if (author[index] === '<') {
107
- const emailEnd = author.indexOf('>', index + 1);
108
- if (emailEnd !== -1) {
109
- const email = trimToUndefined(author.slice(index + 1, emailEnd));
110
- if (email) {
111
- contact.email = email;
112
- }
113
- index = skipAuthorWhitespace(author, emailEnd + 1);
114
- }
115
- }
116
- if (author[index] === '(') {
117
- const urlEnd = author.indexOf(')', index + 1);
118
- if (urlEnd !== -1) {
119
- const url = trimToUndefined(author.slice(index + 1, urlEnd));
120
- if (url) {
121
- contact.url = url;
122
- }
123
- }
124
- }
124
+ const emailResult = readDelimitedAuthorValue(author, index, '<', '>');
125
+ setParsedContactValue(contact, 'email', emailResult.value);
126
+ const urlResult = readDelimitedAuthorValue(author, emailResult.nextIndex, '(', ')');
127
+ setParsedContactValue(contact, 'url', urlResult.value);
125
128
  return contact;
126
129
  };
127
130
  const authorInformation = getPackageJsonValue('author', 'unknown');
128
131
  const isYamlExtension = (extension) => extension === '.yaml' || extension === '.yml';
129
132
  const isJsExtension = (extension) => extension === '.js' || extension === '.cjs';
133
+ const parseConfigContents = async (configFullPath, extension, configPath) => {
134
+ if (isYamlExtension(extension)) {
135
+ const configRaw = await (0, fs_1.fsReadFile)(configFullPath);
136
+ return parseConfigValue((0, yaml_1.parse)(configRaw.toString('utf8')));
137
+ }
138
+ if (isJsExtension(extension)) {
139
+ const importedConfig = await Promise.resolve(`${configFullPath}`).then(s => __importStar(require(s)));
140
+ if (!isRecord(importedConfig)) {
141
+ throw new Error(`Invalid JS config export at '${configPath}'`);
142
+ }
143
+ return parseConfigModule(importedConfig);
144
+ }
145
+ const configRaw = await (0, fs_1.fsReadFile)(configFullPath);
146
+ return parseConfigValue(JSON.parse(configRaw.toString('utf8')));
147
+ };
148
+ const rethrowConfigLoadError = (err, configPath, extension) => {
149
+ if (!(err instanceof Error)) {
150
+ console.error(err);
151
+ throw new Error(`Unhandled error encountered loading '${configPath}': ${String(err)}`);
152
+ }
153
+ if ('code' in err && err.code === 'MODULE_NOT_FOUND') {
154
+ throw new Error(`No config file found at '${configPath}'`);
155
+ }
156
+ if (err.name === 'SyntaxError') {
157
+ console.error(err);
158
+ const errorType = isJsExtension(extension) ? 'JS' : 'JSON';
159
+ throw new Error(`Invalid ${errorType} syntax in config at '${configPath}': ${err.message}`);
160
+ }
161
+ console.error(err);
162
+ throw new Error(`Unhandled error encountered loading '${configPath}': ${err.message}`);
163
+ };
130
164
  const getConfig = async (configPath = 'tsoa.json') => {
131
- let config;
132
165
  const ext = (0, node_path_1.extname)(configPath);
133
166
  const configFullPath = (0, node_path_1.isAbsolute)(configPath) ? configPath : `${workingDir}/${configPath}`;
134
167
  try {
135
- if (isYamlExtension(ext)) {
136
- const configRaw = await (0, fs_1.fsReadFile)(configFullPath);
137
- config = parseConfigValue((0, yaml_1.parse)(configRaw.toString('utf8')));
138
- }
139
- else if (isJsExtension(ext)) {
140
- const importedConfig = await Promise.resolve(`${configFullPath}`).then(s => __importStar(require(s)));
141
- if (!isRecord(importedConfig)) {
142
- throw new Error(`Invalid JS config export at '${configPath}'`);
143
- }
144
- config = parseConfigModule(importedConfig);
145
- }
146
- else {
147
- const configRaw = await (0, fs_1.fsReadFile)(configFullPath);
148
- config = parseConfigValue(JSON.parse(configRaw.toString('utf8')));
149
- }
168
+ const config = await parseConfigContents(configFullPath, ext, configPath);
169
+ return {
170
+ config,
171
+ configBaseDir: (0, node_path_1.dirname)(configFullPath),
172
+ };
150
173
  }
151
174
  catch (err) {
152
- if (!(err instanceof Error)) {
153
- console.error(err);
154
- throw Error(`Unhandled error encountered loading '${configPath}': ${String(err)}`);
155
- }
156
- else if ('code' in err && err.code === 'MODULE_NOT_FOUND') {
157
- throw Error(`No config file found at '${configPath}'`);
158
- }
159
- else if (err.name === 'SyntaxError') {
160
- console.error(err);
161
- const errorType = isJsExtension(ext) ? 'JS' : 'JSON';
162
- throw Error(`Invalid ${errorType} syntax in config at '${configPath}': ${err.message}`);
163
- }
164
- else {
165
- console.error(err);
166
- throw Error(`Unhandled error encountered loading '${configPath}': ${err.message}`);
167
- }
175
+ return rethrowConfigLoadError(err, configPath, ext);
168
176
  }
169
- return {
170
- config,
171
- configBaseDir: (0, node_path_1.dirname)(configFullPath),
172
- };
173
177
  };
174
178
  const resolveConfig = async (config) => {
175
179
  if (typeof config === 'object' && config !== null) {
@@ -191,19 +195,18 @@ const parseCompilerOptionsObject = (compilerOptions, configBaseDir, context, val
191
195
  }
192
196
  return parsed.options;
193
197
  };
198
+ const resolveTsconfigPath = (config, configBaseDir) => {
199
+ if (config.tsconfig === undefined) {
200
+ return ts.findConfigFile(configBaseDir, fileName => ts.sys.fileExists(fileName), 'tsconfig.json');
201
+ }
202
+ return (0, node_path_1.isAbsolute)(config.tsconfig) ? config.tsconfig : (0, node_path_1.resolve)(configBaseDir, config.tsconfig);
203
+ };
194
204
  const loadTsConfigCompilerOptions = (config, configBaseDir) => {
195
- const configuredTsconfig = config.tsconfig;
196
- const fileExists = (fileName) => ts.sys.fileExists(fileName);
197
- const readFile = (fileName) => ts.sys.readFile(fileName);
198
- const resolvedTsconfigPath = configuredTsconfig !== undefined
199
- ? (0, node_path_1.isAbsolute)(configuredTsconfig)
200
- ? configuredTsconfig
201
- : (0, node_path_1.resolve)(configBaseDir, configuredTsconfig)
202
- : ts.findConfigFile(configBaseDir, fileExists, 'tsconfig.json');
205
+ const resolvedTsconfigPath = resolveTsconfigPath(config, configBaseDir);
203
206
  if (!resolvedTsconfigPath) {
204
207
  return {};
205
208
  }
206
- const readResult = ts.readConfigFile(resolvedTsconfigPath, readFile);
209
+ const readResult = ts.readConfigFile(resolvedTsconfigPath, fileName => ts.sys.readFile(fileName));
207
210
  if (readResult.error) {
208
211
  formatCompilerOptionsErrors(`Failed to read tsconfig at '${resolvedTsconfigPath}'`, [readResult.error]);
209
212
  }
@@ -227,6 +230,89 @@ const parseConfigModule = (moduleExports) => {
227
230
  const defaultExport = 'default' in moduleExports ? moduleExports.default : moduleExports;
228
231
  return parseConfigValue(defaultExport);
229
232
  };
233
+ const hasEntryPointConfiguration = (config) => {
234
+ return !!config.entryFile || !!config.controllerPathGlobs?.length;
235
+ };
236
+ const assertEntryPointConfiguration = (config) => {
237
+ if (!hasEntryPointConfiguration(config)) {
238
+ throw new Error('Missing entryFile and controllerPathGlobs: Configuration must contain an entry point file or controller path globs.');
239
+ }
240
+ };
241
+ const assertExistingEntryFile = async (entryFile, message) => {
242
+ if (entryFile && !(await (0, fs_1.fsExists)(entryFile))) {
243
+ throw new Error(message);
244
+ }
245
+ };
246
+ const supportedSpecVersions = [2, 3, 3.1];
247
+ function assertSupportedSpecVersion(specVersion) {
248
+ if (!supportedSpecVersions.includes(specVersion)) {
249
+ throw new Error(`Unsupported Spec version: ${specVersion}.`);
250
+ }
251
+ }
252
+ const assertValidSpecMerging = (spec) => {
253
+ if (spec.spec && !['immediate', 'recursive', 'deepmerge', undefined].includes(spec.specMerging)) {
254
+ throw new Error(`Invalid specMerging config: ${spec.specMerging}`);
255
+ }
256
+ };
257
+ const ensureContact = (spec) => {
258
+ spec.contact ??= {};
259
+ return spec.contact;
260
+ };
261
+ const setContactValueIfMissing = (contact, key, value) => {
262
+ if (!contact[key] && value !== undefined) {
263
+ contact[key] = value;
264
+ }
265
+ };
266
+ const populateContactFromAuthor = (contact, author) => {
267
+ if (typeof author === 'string') {
268
+ const parsedContact = parseAuthorContact(author);
269
+ setContactValueIfMissing(contact, 'name', parsedContact.name);
270
+ setContactValueIfMissing(contact, 'email', parsedContact.email);
271
+ setContactValueIfMissing(contact, 'url', parsedContact.url);
272
+ return;
273
+ }
274
+ setContactValueIfMissing(contact, 'name', author.name);
275
+ setContactValueIfMissing(contact, 'email', author.email);
276
+ setContactValueIfMissing(contact, 'url', author.url);
277
+ };
278
+ const assertValidRootSecurity = (rootSecurity) => {
279
+ if (!rootSecurity) {
280
+ return;
281
+ }
282
+ if (!Array.isArray(rootSecurity)) {
283
+ throw new TypeError('spec.rootSecurity must be an array');
284
+ }
285
+ const isValidRootSecurity = rootSecurity.every(security => typeof security === 'object' && security !== null && Object.values(security).every(scope => Array.isArray(scope)));
286
+ if (!isValidRootSecurity) {
287
+ throw new Error('spec.rootSecurity must be an array of objects whose keys are security scheme names and values are arrays of scopes');
288
+ }
289
+ };
290
+ const applySpecDefaults = async (config) => {
291
+ const spec = config.spec;
292
+ spec.version ??= await versionDefault();
293
+ spec.specVersion ??= 2;
294
+ assertSupportedSpecVersion(spec.specVersion);
295
+ assertValidSpecMerging(spec);
296
+ spec.name ??= await nameDefault();
297
+ spec.description ??= await descriptionDefault();
298
+ spec.basePath ??= '/';
299
+ // defaults to template that may generate non-unique operation ids.
300
+ // @see https://github.com/lukeautry/tsoa/issues/1005
301
+ spec.operationIdTemplate ??= '{{titleCase method.name}}';
302
+ const packageLicense = spec.license ? undefined : await licenseDefault();
303
+ if (packageLicense) {
304
+ spec.license = packageLicense;
305
+ }
306
+ populateContactFromAuthor(ensureContact(spec), await authorInformation);
307
+ config.defaultNumberType ??= 'double';
308
+ assertValidRootSecurity(spec.rootSecurity);
309
+ };
310
+ const hasFileOrTsSibling = async (path) => {
311
+ return (await (0, fs_1.fsExists)(path)) || (await (0, fs_1.fsExists)(`${path}.ts`));
312
+ };
313
+ const getLegacyMulterOptions = (config) => {
314
+ return Reflect.get(config, 'multerOpts');
315
+ };
230
316
  function validateCompilerOptions(configOrCompilerOptions, configBaseDir = workingDir) {
231
317
  if (!isConfig(configOrCompilerOptions)) {
232
318
  return configOrCompilerOptions ? parseCompilerOptionsObject(configOrCompilerOptions, configBaseDir, 'Invalid compilerOptions in tsoa-next config', false) : {};
@@ -248,67 +334,10 @@ const validateSpecConfig = async (config) => {
248
334
  if (!config.spec.outputDirectory) {
249
335
  throw new Error('Missing outputDirectory: configuration must contain output directory.');
250
336
  }
251
- if (!config.entryFile && (!config.controllerPathGlobs || !config.controllerPathGlobs.length)) {
252
- throw new Error('Missing entryFile and controllerPathGlobs: Configuration must contain an entry point file or controller path globals.');
253
- }
254
- if (config.entryFile && !(await (0, fs_1.fsExists)(config.entryFile))) {
255
- throw new Error(`EntryFile not found: ${config.entryFile} - please check your tsoa config.`);
256
- }
257
- config.spec.version = config.spec.version || (await versionDefault());
258
- config.spec.specVersion = config.spec.specVersion || 2;
259
- const supportedVersions = [2, 3, 3.1];
260
- if (!supportedVersions.includes(config.spec.specVersion)) {
261
- throw new Error(`Unsupported Spec version: ${config.spec.specVersion}.`);
262
- }
263
- if (config.spec.spec && !['immediate', 'recursive', 'deepmerge', undefined].includes(config.spec.specMerging)) {
264
- throw new Error(`Invalid specMerging config: ${config.spec.specMerging}`);
265
- }
337
+ assertEntryPointConfiguration(config);
338
+ await assertExistingEntryFile(config.entryFile, `EntryFile not found: ${config.entryFile} - please check your tsoa config.`);
339
+ await applySpecDefaults(config);
266
340
  const noImplicitAdditionalProperties = determineNoImplicitAdditionalSetting(config.noImplicitAdditionalProperties);
267
- config.spec.name = config.spec.name || (await nameDefault());
268
- config.spec.description = config.spec.description || (await descriptionDefault());
269
- if (!config.spec.license) {
270
- const packageLicense = await licenseDefault();
271
- if (packageLicense) {
272
- config.spec.license = packageLicense;
273
- }
274
- }
275
- config.spec.basePath = config.spec.basePath || '/';
276
- // defaults to template that may generate non-unique operation ids.
277
- // @see https://github.com/lukeautry/tsoa/issues/1005
278
- config.spec.operationIdTemplate = config.spec.operationIdTemplate || '{{titleCase method.name}}';
279
- if (!config.spec.contact) {
280
- config.spec.contact = {};
281
- }
282
- const specContact = config.spec.contact;
283
- const setContactValue = (key, value) => {
284
- if (!specContact[key] && value !== undefined) {
285
- specContact[key] = value;
286
- }
287
- };
288
- const author = await authorInformation;
289
- if (typeof author === 'string') {
290
- const contact = parseAuthorContact(author);
291
- setContactValue('name', contact.name);
292
- setContactValue('email', contact.email);
293
- setContactValue('url', contact.url);
294
- }
295
- else if (typeof author === 'object') {
296
- setContactValue('name', author?.name);
297
- setContactValue('email', author?.email);
298
- setContactValue('url', author?.url);
299
- }
300
- if (!config.defaultNumberType) {
301
- config.defaultNumberType = 'double';
302
- }
303
- if (config.spec.rootSecurity) {
304
- if (!Array.isArray(config.spec.rootSecurity)) {
305
- throw new Error('spec.rootSecurity must be an array');
306
- }
307
- const ok = config.spec.rootSecurity.every(security => typeof security === 'object' && security !== null && Object.values(security).every(scope => Array.isArray(scope)));
308
- if (!ok) {
309
- throw new Error('spec.rootSecurity must be an array of objects whose keys are security scheme names and values are arrays of scopes');
310
- }
311
- }
312
341
  return {
313
342
  ...config.spec,
314
343
  noImplicitAdditionalProperties,
@@ -318,12 +347,8 @@ const validateSpecConfig = async (config) => {
318
347
  };
319
348
  exports.validateSpecConfig = validateSpecConfig;
320
349
  const validateRoutesConfig = async (config) => {
321
- if (!config.entryFile && (!config.controllerPathGlobs || !config.controllerPathGlobs.length)) {
322
- throw new Error('Missing entryFile and controllerPathGlobs: Configuration must contain an entry point file or controller path globals.');
323
- }
324
- if (config.entryFile && !(await (0, fs_1.fsExists)(config.entryFile))) {
325
- throw new Error(`EntryFile not found: ${config.entryFile} - Please check your tsoa config.`);
326
- }
350
+ assertEntryPointConfiguration(config);
351
+ await assertExistingEntryFile(config.entryFile, `EntryFile not found: ${config.entryFile} - Please check your tsoa config.`);
327
352
  const routes = config.routes;
328
353
  if (!routes) {
329
354
  throw new Error('Missing routes: configuration must contain routes.');
@@ -331,10 +356,10 @@ const validateRoutesConfig = async (config) => {
331
356
  if (!routes.routesDir) {
332
357
  throw new Error('Missing routesDir: Configuration must contain a routes file output directory.');
333
358
  }
334
- if (routes.authenticationModule && !((await (0, fs_1.fsExists)(routes.authenticationModule)) || (await (0, fs_1.fsExists)(routes.authenticationModule + '.ts')))) {
359
+ if (routes.authenticationModule && !(await hasFileOrTsSibling(routes.authenticationModule))) {
335
360
  throw new Error(`No authenticationModule file found at '${routes.authenticationModule}'`);
336
361
  }
337
- if (routes.iocModule && !((await (0, fs_1.fsExists)(routes.iocModule)) || (await (0, fs_1.fsExists)(routes.iocModule + '.ts')))) {
362
+ if (routes.iocModule && !(await hasFileOrTsSibling(routes.iocModule))) {
338
363
  throw new Error(`No iocModule file found at '${routes.iocModule}'`);
339
364
  }
340
365
  const noImplicitAdditionalProperties = determineNoImplicitAdditionalSetting(config.noImplicitAdditionalProperties);
@@ -346,7 +371,7 @@ const validateRoutesConfig = async (config) => {
346
371
  noImplicitAdditionalProperties,
347
372
  bodyCoercion,
348
373
  controllerPathGlobs: config.controllerPathGlobs,
349
- multerOpts: config.multerOpts,
374
+ multerOpts: getLegacyMulterOptions(config),
350
375
  rootSecurity: config.spec?.rootSecurity,
351
376
  };
352
377
  };
@@ -389,9 +414,7 @@ async function generateSpecAndRoutes(args, metadata) {
389
414
  const routesConfig = await (0, exports.validateRoutesConfig)(config);
390
415
  applySwaggerArgs(swaggerConfig, args);
391
416
  applyBasePathArg(routesConfig, args);
392
- if (!metadata) {
393
- metadata = new metadataGenerator_1.MetadataGenerator(config.entryFile, compilerOptions, config.ignore, config.controllerPathGlobs, swaggerConfig.rootSecurity, config.defaultNumberType, routesConfig.esm).Generate();
394
- }
417
+ metadata ??= new metadataGenerator_1.MetadataGenerator(config.entryFile, compilerOptions, config.ignore, config.controllerPathGlobs, swaggerConfig.rootSecurity, config.defaultNumberType, routesConfig.esm).Generate();
395
418
  await Promise.all([(0, generate_routes_1.generateRoutes)(routesConfig, compilerOptions, config.ignore, metadata), (0, generate_spec_1.generateSpec)(swaggerConfig, compilerOptions, config.ignore, metadata)]);
396
419
  return metadata;
397
420
  }
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -1,3 +1,2 @@
1
1
  #!/usr/bin/env node
2
- import { runCLI } from './runCLI';
3
- export { runCLI };
2
+ export { runCLI } from './runCLI';
package/dist/cli.js CHANGED
@@ -3,7 +3,8 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.runCLI = void 0;
5
5
  const runCLI_1 = require("./runCLI");
6
- Object.defineProperty(exports, "runCLI", { enumerable: true, get: function () { return runCLI_1.runCLI; } });
6
+ var runCLI_2 = require("./runCLI");
7
+ Object.defineProperty(exports, "runCLI", { enumerable: true, get: function () { return runCLI_2.runCLI; } });
7
8
  if (require.main === module) {
8
9
  void (async () => {
9
10
  try {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;AACA,qCAAiC;AAExB,uFAFA,eAAM,OAEA;AAEf,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,IAAI,CAAC;YACH,MAAM,IAAA,eAAM,GAAE,CAAA;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC,CAAC,EAAE,CAAA;AACN,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;AACA,qCAAgD;AAChD,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AAEf,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,IAAI,CAAC;YACH,MAAM,IAAA,eAAW,GAAE,CAAA;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC,CAAC,EAAE,CAAA;AACN,CAAC"}
@@ -60,7 +60,7 @@ class ControllerGenerator {
60
60
  }
61
61
  // Process from base to derived so derived classes can override inherited names.
62
62
  const methodsByName = new Map();
63
- inheritanceChain.reverse().forEach(classDeclaration => {
63
+ [...inheritanceChain].reverse().forEach(classDeclaration => {
64
64
  classDeclaration.members.filter(typescript_1.isMethodDeclaration).forEach(method => {
65
65
  const key = this.getMethodKey(method);
66
66
  if (!key) {
@@ -134,10 +134,7 @@ class ControllerGenerator {
134
134
  return false;
135
135
  }
136
136
  const moduleSpecifier = this.getImportModuleSpecifier(declaration);
137
- if (!moduleSpecifier) {
138
- return false;
139
- }
140
- return moduleSpecifier.getText().replace(/['"]/g, '') === '@tsoa-next/runtime';
137
+ return moduleSpecifier === '@tsoa-next/runtime';
141
138
  });
142
139
  }
143
140
  getMethodKey(method) {
@@ -149,12 +146,12 @@ class ControllerGenerator {
149
146
  getImportModuleSpecifier(declaration) {
150
147
  // ImportSpecifier -> NamedImports -> ImportClause -> ImportDeclaration
151
148
  const importDeclaration = declaration.parent.parent.parent;
152
- return 'moduleSpecifier' in importDeclaration ? importDeclaration.moduleSpecifier : undefined;
149
+ return 'moduleSpecifier' in importDeclaration && (0, typescript_1.isStringLiteralLike)(importDeclaration.moduleSpecifier) ? importDeclaration.moduleSpecifier.text : undefined;
153
150
  }
154
151
  getPath() {
155
152
  const decorators = (0, decoratorUtils_1.getDecorators)(this.node, (_identifier, canonicalName) => canonicalName === 'Route', this.current.typeChecker);
156
- if (!decorators || !decorators.length) {
157
- return;
153
+ if (!decorators?.length) {
154
+ return undefined;
158
155
  }
159
156
  if (decorators.length > 1) {
160
157
  throw new exceptions_1.GenerateMetadataError(`Only one Route decorator allowed in '${this.node.name.text}' class.`);
@@ -166,7 +163,7 @@ class ControllerGenerator {
166
163
  }
167
164
  getCommonResponses() {
168
165
  const decorators = (0, decoratorUtils_1.getDecorators)(this.node, (_identifier, canonicalName) => canonicalName === 'Response', this.current.typeChecker);
169
- if (!decorators || !decorators.length) {
166
+ if (!decorators?.length) {
170
167
  return [];
171
168
  }
172
169
  return decorators.map(decorator => {
@@ -186,8 +183,8 @@ class ControllerGenerator {
186
183
  }
187
184
  getTags() {
188
185
  const decorators = (0, decoratorUtils_1.getDecorators)(this.node, (_identifier, canonicalName) => canonicalName === 'Tags', this.current.typeChecker);
189
- if (!decorators || !decorators.length) {
190
- return;
186
+ if (!decorators?.length) {
187
+ return undefined;
191
188
  }
192
189
  if (decorators.length > 1) {
193
190
  throw new exceptions_1.GenerateMetadataError(`Only one Tags decorator allowed in '${this.node.name.text}' class.`);
@@ -205,14 +202,14 @@ class ControllerGenerator {
205
202
  if (noSecurityDecorators?.length) {
206
203
  return [];
207
204
  }
208
- if (!securityDecorators || !securityDecorators.length) {
205
+ if (!securityDecorators?.length) {
209
206
  return this.parentSecurity;
210
207
  }
211
208
  return securityDecorators.map(d => (0, decoratorUtils_1.getSecurites)(d, this.current.typeChecker));
212
209
  }
213
210
  getIsHidden() {
214
211
  const hiddenDecorators = (0, decoratorUtils_1.getDecorators)(this.node, (_identifier, canonicalName) => canonicalName === 'Hidden', this.current.typeChecker);
215
- if (!hiddenDecorators || !hiddenDecorators.length) {
212
+ if (!hiddenDecorators?.length) {
216
213
  return false;
217
214
  }
218
215
  if (hiddenDecorators.length > 1) {
@@ -1 +1 @@
1
- {"version":3,"file":"controllerGenerator.js","sourceRoot":"","sources":["../../src/metadataGeneration/controllerGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controllerGenerator.js","sourceRoot":"","sources":["../../src/metadataGeneration/controllerGenerator.ts"],"names":[],"mappings":"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"}