@tsoa-next/cli 8.0.4 → 8.0.5-dev.58.3748c499

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/api.d.ts CHANGED
@@ -1,15 +1,18 @@
1
- import { Config, RoutesConfig, SpecConfig, Tsoa } from '@tsoa-next/runtime';
1
+ import { Config, RoutesConfig, RuntimeSpecConfigSnapshot, SpecConfig, Tsoa } from '@tsoa-next/runtime';
2
2
  import { AbstractRouteGenerator } from './routeGeneration/routeGenerator';
3
3
  import type { Options as MulterOptions } from 'multer';
4
4
  import type { CompilerOptions } from 'typescript';
5
5
  export declare function validateCompilerOptions(config: Config, configBaseDir?: string): CompilerOptions;
6
6
  export declare function validateCompilerOptions(compilerOptions?: Record<string, unknown>, configBaseDir?: string): CompilerOptions;
7
+ /** Normalized spec-generation config returned by {@link validateSpecConfig}. */
7
8
  export interface ExtendedSpecConfig extends SpecConfig {
8
9
  entryFile: Config['entryFile'];
9
10
  noImplicitAdditionalProperties: Exclude<Config['noImplicitAdditionalProperties'], undefined>;
10
11
  controllerPathGlobs?: Config['controllerPathGlobs'];
11
12
  }
13
+ /** Validates and enriches the `spec` section of a tsoa config object. */
12
14
  export declare const validateSpecConfig: (config: Config) => Promise<ExtendedSpecConfig>;
15
+ /** Normalized route-generation config returned by {@link validateRoutesConfig}. */
13
16
  export interface ExtendedRoutesConfig extends RoutesConfig {
14
17
  entryFile: Config['entryFile'];
15
18
  noImplicitAdditionalProperties: Exclude<Config['noImplicitAdditionalProperties'], undefined>;
@@ -17,21 +20,29 @@ export interface ExtendedRoutesConfig extends RoutesConfig {
17
20
  controllerPathGlobs?: Config['controllerPathGlobs'];
18
21
  multerOpts?: MulterOptions;
19
22
  rootSecurity?: Config['spec']['rootSecurity'];
23
+ runtimeSpecConfig?: RuntimeSpecConfigSnapshot;
20
24
  routeGenerator?: string | (new (metadata: Tsoa.Metadata, options: ExtendedRoutesConfig) => AbstractRouteGenerator<ExtendedRoutesConfig>);
21
25
  }
26
+ /** Validates and enriches the `routes` section of a tsoa config object. */
22
27
  export declare const validateRoutesConfig: (config: Config) => Promise<ExtendedRoutesConfig>;
28
+ /** Shared CLI arguments accepted by the programmatic route and spec generators. */
23
29
  export interface ConfigArgs {
24
30
  basePath?: string;
25
31
  configuration?: string | Config;
26
32
  }
33
+ /** CLI arguments specific to OpenAPI spec generation. */
27
34
  export interface SwaggerArgs extends ConfigArgs {
28
35
  host?: string;
29
36
  json?: boolean;
30
37
  yaml?: boolean;
31
38
  }
39
+ /** Loads config and generates only the OpenAPI spec output. */
32
40
  export declare function generateSpecFromArgs(args: SwaggerArgs): Promise<void>;
41
+ /** Loads config and generates only the route output. */
33
42
  export declare function generateRoutesFromArgs(args: ConfigArgs): Promise<void>;
43
+ /** Loads config and generates both routes and the OpenAPI spec from a shared metadata snapshot. */
34
44
  export declare function generateSpecAndRoutes(args: SwaggerArgs, metadata?: Tsoa.Metadata): Promise<Tsoa.Metadata>;
45
+ /** Module shape expected when loading a custom route generator with `routes.routeGenerator`. */
35
46
  export type RouteGeneratorModule<Config extends ExtendedRoutesConfig> = {
36
47
  default: new (metadata: Tsoa.Metadata, routesConfig: Config) => {
37
48
  GenerateCustomRoutes: () => Promise<void>;
package/dist/api.js CHANGED
@@ -313,6 +313,9 @@ const hasFileOrTsSibling = async (path) => {
313
313
  const getLegacyMulterOptions = (config) => {
314
314
  return Reflect.get(config, 'multerOpts');
315
315
  };
316
+ /**
317
+ * Resolves compiler options for tsoa generation from either a full config object or a raw `compilerOptions` map.
318
+ */
316
319
  function validateCompilerOptions(configOrCompilerOptions, configBaseDir = workingDir) {
317
320
  if (!isConfig(configOrCompilerOptions)) {
318
321
  return configOrCompilerOptions ? parseCompilerOptionsObject(configOrCompilerOptions, configBaseDir, 'Invalid compilerOptions in tsoa-next config', false) : {};
@@ -327,6 +330,7 @@ function validateCompilerOptions(configOrCompilerOptions, configBaseDir = workin
327
330
  ...explicitCompilerOptions,
328
331
  };
329
332
  }
333
+ /** Validates and enriches the `spec` section of a tsoa config object. */
330
334
  const validateSpecConfig = async (config) => {
331
335
  if (!config.spec) {
332
336
  throw new Error('Missing spec: configuration must contain spec. Spec used to be called swagger in previous versions of tsoa.');
@@ -342,10 +346,11 @@ const validateSpecConfig = async (config) => {
342
346
  ...config.spec,
343
347
  noImplicitAdditionalProperties,
344
348
  entryFile: config.entryFile,
345
- controllerPathGlobs: config.controllerPathGlobs,
349
+ controllerPathGlobs: config.controllerPathGlobs?.length ? config.controllerPathGlobs : undefined,
346
350
  };
347
351
  };
348
352
  exports.validateSpecConfig = validateSpecConfig;
353
+ /** Validates and enriches the `routes` section of a tsoa config object. */
349
354
  const validateRoutesConfig = async (config) => {
350
355
  assertEntryPointConfiguration(config);
351
356
  await assertExistingEntryFile(config.entryFile, `EntryFile not found: ${config.entryFile} - Please check your tsoa config.`);
@@ -363,6 +368,16 @@ const validateRoutesConfig = async (config) => {
363
368
  throw new Error(`No iocModule file found at '${routes.iocModule}'`);
364
369
  }
365
370
  const noImplicitAdditionalProperties = determineNoImplicitAdditionalSetting(config.noImplicitAdditionalProperties);
371
+ const runtimeSpecConfig = config.spec && config.entryFile
372
+ ? {
373
+ compilerOptions: config.compilerOptions,
374
+ defaultNumberType: config.defaultNumberType,
375
+ ignore: config.ignore,
376
+ spec: {
377
+ ...(await (0, exports.validateSpecConfig)(config)),
378
+ },
379
+ }
380
+ : undefined;
366
381
  const bodyCoercion = routes.bodyCoercion ?? true;
367
382
  routes.basePath = routes.basePath || '/';
368
383
  return {
@@ -370,9 +385,10 @@ const validateRoutesConfig = async (config) => {
370
385
  entryFile: config.entryFile,
371
386
  noImplicitAdditionalProperties,
372
387
  bodyCoercion,
373
- controllerPathGlobs: config.controllerPathGlobs,
388
+ controllerPathGlobs: config.controllerPathGlobs?.length ? config.controllerPathGlobs : undefined,
374
389
  multerOpts: getLegacyMulterOptions(config),
375
390
  rootSecurity: config.spec?.rootSecurity,
391
+ runtimeSpecConfig,
376
392
  };
377
393
  };
378
394
  exports.validateRoutesConfig = validateRoutesConfig;
@@ -393,6 +409,7 @@ const applySwaggerArgs = (config, args) => {
393
409
  config.yaml = false;
394
410
  }
395
411
  };
412
+ /** Loads config and generates only the OpenAPI spec output. */
396
413
  async function generateSpecFromArgs(args) {
397
414
  const { config, configBaseDir } = await resolveConfig(args.configuration);
398
415
  const compilerOptions = validateCompilerOptions(config, configBaseDir);
@@ -400,6 +417,7 @@ async function generateSpecFromArgs(args) {
400
417
  applySwaggerArgs(swaggerConfig, args);
401
418
  await (0, generate_spec_1.generateSpec)(swaggerConfig, compilerOptions, config.ignore);
402
419
  }
420
+ /** Loads config and generates only the route output. */
403
421
  async function generateRoutesFromArgs(args) {
404
422
  const { config, configBaseDir } = await resolveConfig(args.configuration);
405
423
  const compilerOptions = validateCompilerOptions(config, configBaseDir);
@@ -407,6 +425,7 @@ async function generateRoutesFromArgs(args) {
407
425
  applyBasePathArg(routesConfig, args);
408
426
  await (0, generate_routes_1.generateRoutes)(routesConfig, compilerOptions, config.ignore);
409
427
  }
428
+ /** Loads config and generates both routes and the OpenAPI spec from a shared metadata snapshot. */
410
429
  async function generateSpecAndRoutes(args, metadata) {
411
430
  const { config, configBaseDir } = await resolveConfig(args.configuration);
412
431
  const compilerOptions = validateCompilerOptions(config, configBaseDir);
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6WA,0DAeC;AA2GD,oDAOC;AAED,wDAOC;AAED,sDAWC;AApgBD,+BAAyC;AAEzC,+CAAgC;AAChC,8EAA0E;AAC1E,8DAAyD;AACzD,0DAAqD;AACrD,mCAAiD;AAEjD,yCAAiE;AAIjE,MAAM,UAAU,GAAW,OAAO,CAAC,GAAG,EAAE,CAAA;AACxC,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAoC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAA;AAElH,IAAI,WAAgD,CAAA;AACpD,MAAM,mBAAmB,GAAG,KAAK,EAAE,GAAW,EAAE,YAAY,GAAG,EAAE,EAAmB,EAAE;IACpF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,MAAM,IAAA,eAAU,EAAC,GAAG,UAAU,eAAe,CAAC,CAAA;YACrE,MAAM,iBAAiB,GAAY,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;YAC9E,WAAW,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAA;QACpE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,YAAY,CAAA;QACrB,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAA;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAA;AACzD,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAC7D,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AACpE,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,mBAAmB,CAAC,aAAa,EAAE,6DAA6D,CAAC,CAAA;AAClI,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAA;AAC3D,MAAM,oCAAoC,GAAG,CAAC,8BAAwE,EAAgE,EAAE;IACtL,IAAI,8BAA8B,KAAK,wBAAwB,IAAI,8BAA8B,KAAK,iBAAiB,IAAI,8BAA8B,KAAK,QAAQ,EAAE,CAAC;QACvK,OAAO,8BAA8B,CAAA;IACvC,CAAC;SAAM,CAAC;QACN,OAAO,QAAQ,CAAA;IACjB,CAAC;AACH,CAAC,CAAA;AAQD,MAAM,kBAAkB,GAAG,CAAC,IAAwB,EAAW,EAAE,CAAC,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,CAAA;AAEjI,MAAM,oBAAoB,GAAG,CAAC,KAAa,EAAE,KAAa,EAAU,EAAE;IACpE,IAAI,YAAY,GAAG,KAAK,CAAA;IAExB,OAAO,YAAY,GAAG,KAAK,CAAC,MAAM,IAAI,kBAAkB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QAC9E,YAAY,IAAI,CAAC,CAAA;IACnB,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,KAAa,EAAsB,EAAE;IAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC5B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;AACjD,CAAC,CAAA;AAED,MAAM,sBAAsB,GAAG,CAAC,MAAc,EAAE,UAAkB,EAAU,EAAE;IAC5E,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAA;IAE5B,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;QACpD,IAAI,UAAU,KAAK,CAAC,CAAC,IAAI,UAAU,GAAG,QAAQ,EAAE,CAAC;YAC/C,QAAQ,GAAG,UAAU,CAAA;QACvB,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAED,MAAM,qBAAqB,GAAG,CAAC,OAA4B,EAAE,GAA8B,EAAE,KAAyB,EAAE,EAAE;IACxH,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IACtB,CAAC;AACH,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,CAAC,MAAc,EAAE,KAAa,EAAE,YAAoB,EAAE,YAAoB,EAAyC,EAAE;IACpJ,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,YAAY,EAAE,CAAC;QACnC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;IAC7B,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;IAC5D,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;IAC7B,CAAC;IAED,OAAO;QACL,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;QAC7D,SAAS,EAAE,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,CAAC,CAAC;KAC1D,CAAA;AACH,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAuB,EAAE;IACjE,MAAM,OAAO,GAAwB,EAAE,CAAA;IACvC,IAAI,KAAK,GAAG,oBAAoB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IAC3C,MAAM,YAAY,GAAG,sBAAsB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC1D,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAA;IAC/D,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAE5C,KAAK,GAAG,oBAAoB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IAElD,MAAM,WAAW,GAAG,wBAAwB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IACrE,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAA;IAE1D,MAAM,SAAS,GAAG,wBAAwB,CAAC,MAAM,EAAE,WAAW,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IACnF,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAA;IAEtD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,iBAAiB,GAOnB,mBAAmB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;AAE5C,MAAM,eAAe,GAAG,CAAC,SAAiB,EAAW,EAAE,CAAC,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,MAAM,CAAA;AAErG,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAW,EAAE,CAAC,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,MAAM,CAAA;AAOjG,MAAM,mBAAmB,GAAG,KAAK,EAAE,cAAsB,EAAE,SAAiB,EAAE,UAAkB,EAAmB,EAAE;IACnH,IAAI,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,MAAM,IAAA,eAAU,EAAC,cAAc,CAAC,CAAA;QAClD,OAAO,gBAAgB,CAAC,IAAA,YAAS,EAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAChE,CAAC;IAED,IAAI,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAY,yBAAa,cAAc,uCAAC,CAAA;QAC5D,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,gCAAgC,UAAU,GAAG,CAAC,CAAA;QAChE,CAAC;QACD,OAAO,iBAAiB,CAAC,cAAc,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,IAAA,eAAU,EAAC,cAAc,CAAC,CAAA;IAClD,OAAO,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;AACjE,CAAC,CAAA;AAED,MAAM,sBAAsB,GAAG,CAAC,GAAY,EAAE,UAAkB,EAAE,SAAiB,EAAS,EAAE;IAC5F,IAAI,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAClB,MAAM,IAAI,KAAK,CAAC,wCAAwC,UAAU,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACxF,CAAC;IAED,IAAI,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,4BAA4B,UAAU,GAAG,CAAC,CAAA;IAC5D,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAClB,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAA;QAC1D,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,yBAAyB,UAAU,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;IAC7F,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClB,MAAM,IAAI,KAAK,CAAC,wCAAwC,UAAU,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;AACxF,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,KAAK,EAAE,UAAU,GAAG,WAAW,EAA8B,EAAE;IAC/E,MAAM,GAAG,GAAG,IAAA,mBAAO,EAAC,UAAU,CAAC,CAAA;IAC/B,MAAM,cAAc,GAAG,IAAA,sBAAU,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,UAAU,EAAE,CAAA;IAC1F,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,cAAc,EAAE,GAAG,EAAE,UAAU,CAAC,CAAA;QACzE,OAAO;YACL,MAAM;YACN,aAAa,EAAE,IAAA,mBAAO,EAAC,cAAc,CAAC;SACvC,CAAA;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,sBAAsB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,CAAA;IACrD,CAAC;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,KAAK,EAAE,MAAwB,EAA8B,EAAE;IACnF,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAClD,OAAO;YACL,MAAM;YACN,aAAa,EAAE,UAAU;SAC1B,CAAA;IACH,CAAC;IAED,OAAO,SAAS,CAAC,MAAM,CAAC,CAAA;AAC1B,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAAC,OAAe,EAAE,MAAgC,EAAE,EAAE;IACxF,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,4BAA4B,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAC5H,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,KAAK,OAAO,EAAE,CAAC,CAAA;AAC3C,CAAC,CAAA;AAED,MAAM,0BAA0B,GAAG,CAAC,eAAwC,EAAE,aAAqB,EAAE,OAAe,EAAE,mBAAmB,GAAG,IAAI,EAAmB,EAAE;IACnK,MAAM,MAAM,GAAG,EAAE,CAAC,8BAA8B,CAAC,eAAe,EAAE,aAAa,CAAC,CAAA;IAEhF,IAAI,mBAAmB,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,2BAA2B,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IACrD,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,mBAAmB,GAAG,CAAC,MAAc,EAAE,aAAqB,EAAsB,EAAE;IACxF,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,EAAE,CAAC,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC,CAAA;IACnG,CAAC;IAED,OAAO,IAAA,sBAAU,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;AAChG,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAAC,MAAc,EAAE,aAAqB,EAAmB,EAAE;IAC7F,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAEvE,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,UAAU,GAAG,EAAE,CAAC,cAAc,CAAC,oBAAoB,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;IACjG,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,2BAA2B,CAAC,+BAA+B,oBAAoB,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;IACzG,CAAC;IAED,MAAM,MAAM,GAAG,EAAE,CAAC,0BAA0B,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,IAAA,mBAAO,EAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAA;IACvI,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAA;IAC1E,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,2BAA2B,CAAC,kCAAkC,oBAAoB,GAAG,EAAE,cAAc,CAAC,CAAA;IACxG,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAmB,EAAE;IACnD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,KAAK,IAAI,QAAQ,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,UAAU,IAAI,KAAK,CAAC,CAAA;AACjH,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAU,EAAE;IAClD,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;AACnD,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,aAAsC,EAAU,EAAE;IAC3E,MAAM,aAAa,GAAG,SAAS,IAAI,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAA;IACxF,OAAO,gBAAgB,CAAC,aAAa,CAAC,CAAA;AACxC,CAAC,CAAA;AAED,MAAM,0BAA0B,GAAG,CAAC,MAAyD,EAAW,EAAE;IACxG,OAAO,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAA;AACnE,CAAC,CAAA;AAED,MAAM,6BAA6B,GAAG,CAAC,MAAyD,EAAQ,EAAE;IACxG,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,qHAAqH,CAAC,CAAA;IACxI,CAAC;AACH,CAAC,CAAA;AAED,MAAM,uBAAuB,GAAG,KAAK,EAAE,SAA8B,EAAE,OAAe,EAAiB,EAAE;IACvG,IAAI,SAAS,IAAI,CAAC,CAAC,MAAM,IAAA,aAAQ,EAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;IAC1B,CAAC;AACH,CAAC,CAAA;AAED,MAAM,qBAAqB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAU,CAAA;AAElD,SAAS,0BAA0B,CAAC,WAAsC;IACxE,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,WAAqD,CAAC,EAAE,CAAC;QAC3F,MAAM,IAAI,KAAK,CAAC,6BAA6B,WAAW,GAAG,CAAC,CAAA;IAC9D,CAAC;AACH,CAAC;AAED,MAAM,sBAAsB,GAAG,CAAC,IAAgB,EAAQ,EAAE;IACxD,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAChG,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;IACpE,CAAC;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,IAAgB,EAAsC,EAAE;IAC7E,IAAI,CAAC,OAAO,KAAK,EAAE,CAAA;IACnB,OAAO,IAAI,CAAC,OAAO,CAAA;AACrB,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,CAAC,OAA2C,EAAE,GAA6C,EAAE,KAAyB,EAAE,EAAE;IACzJ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IACtB,CAAC;AACH,CAAC,CAAA;AAED,MAAM,yBAAyB,GAAG,CAAC,OAA2C,EAAE,MAAgE,EAAE,EAAE;IAClJ,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,aAAa,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;QAChD,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,CAAA;QAC7D,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;QAC/D,wBAAwB,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;QAC3D,OAAM;IACR,CAAC;IAED,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;IACtD,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IACxD,wBAAwB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAA;AACtD,CAAC,CAAA;AAED,MAAM,uBAAuB,GAAG,CAAC,YAAwC,EAAQ,EAAE;IACjF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAM;IACR,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,SAAS,CAAC,oCAAoC,CAAC,CAAA;IAC3D,CAAC;IAED,MAAM,mBAAmB,GAAG,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC7K,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,oHAAoH,CAAC,CAAA;IACvI,CAAC;AACH,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,KAAK,EAAE,MAAc,EAAiB,EAAE;IAChE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;IAExB,IAAI,CAAC,OAAO,KAAK,MAAM,cAAc,EAAE,CAAA;IACvC,IAAI,CAAC,WAAW,KAAK,CAAC,CAAA;IACtB,0BAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC5C,sBAAsB,CAAC,IAAI,CAAC,CAAA;IAC5B,IAAI,CAAC,IAAI,KAAK,MAAM,WAAW,EAAE,CAAA;IACjC,IAAI,CAAC,WAAW,KAAK,MAAM,kBAAkB,EAAE,CAAA;IAC/C,IAAI,CAAC,QAAQ,KAAK,GAAG,CAAA;IACrB,mEAAmE;IACnE,qDAAqD;IACrD,IAAI,CAAC,mBAAmB,KAAK,2BAA2B,CAAA;IAExD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,cAAc,EAAE,CAAA;IACxE,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,cAAc,CAAA;IAC/B,CAAC;IAED,yBAAyB,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,iBAAiB,CAAC,CAAA;IACvE,MAAM,CAAC,iBAAiB,KAAK,QAAQ,CAAA;IACrC,uBAAuB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;AAC5C,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;IAClE,OAAO,CAAC,MAAM,IAAA,aAAQ,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAA,aAAQ,EAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAA;AACjE,CAAC,CAAA;AAED,MAAM,sBAAsB,GAAG,CAAC,MAAc,EAA6B,EAAE;IAC3E,OAAO,OAAO,CAAC,GAAG,CAAC,MAAgB,EAAE,YAAY,CAA8B,CAAA;AACjF,CAAC,CAAA;AAID,SAAgB,uBAAuB,CAAC,uBAA0D,EAAE,aAAa,GAAG,UAAU;IAC5H,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACvC,OAAO,uBAAuB,CAAC,CAAC,CAAC,0BAA0B,CAAC,uBAAuB,EAAE,aAAa,EAAE,6CAA6C,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAChK,CAAC;IAED,MAAM,uBAAuB,GAAG,2BAA2B,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAA;IACnG,MAAM,sBAAsB,GAAG,OAAO,uBAAuB,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,aAAa,CAAA;IAC3J,MAAM,uBAAuB,GAAG,uBAAuB,CAAC,eAAe;QACrE,CAAC,CAAC,0BAA0B,CAAC,uBAAuB,CAAC,eAAe,EAAE,sBAAsB,EAAE,6CAA6C,CAAC;QAC5I,CAAC,CAAC,EAAE,CAAA;IAEN,OAAO;QACL,GAAG,uBAAuB;QAC1B,GAAG,uBAAuB;KAC3B,CAAA;AACH,CAAC;AAQM,MAAM,kBAAkB,GAAG,KAAK,EAAE,MAAc,EAA+B,EAAE;IACtF,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,6GAA6G,CAAC,CAAA;IAChI,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;IAC1F,CAAC;IACD,6BAA6B,CAAC,MAAM,CAAC,CAAA;IACrC,MAAM,uBAAuB,CAAC,MAAM,CAAC,SAAS,EAAE,wBAAwB,MAAM,CAAC,SAAS,mCAAmC,CAAC,CAAA;IAC5H,MAAM,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAE/B,MAAM,8BAA8B,GAAG,oCAAoC,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAA;IAElH,OAAO;QACL,GAAG,MAAM,CAAC,IAAI;QACd,8BAA8B;QAC9B,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;KAChD,CAAA;AACH,CAAC,CAAA;AAnBY,QAAA,kBAAkB,sBAmB9B;AAYM,MAAM,oBAAoB,GAAG,KAAK,EAAE,MAAc,EAAiC,EAAE;IAC1F,6BAA6B,CAAC,MAAM,CAAC,CAAA;IACrC,MAAM,uBAAuB,CAAC,MAAM,CAAC,SAAS,EAAE,wBAAwB,MAAM,CAAC,SAAS,mCAAmC,CAAC,CAAA;IAC5H,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IAE5B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;IACvE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAA;IAClG,CAAC;IAED,IAAI,MAAM,CAAC,oBAAoB,IAAI,CAAC,CAAC,MAAM,kBAAkB,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC;QAC5F,MAAM,IAAI,KAAK,CAAC,0CAA0C,MAAM,CAAC,oBAAoB,GAAG,CAAC,CAAA;IAC3F,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACtE,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,SAAS,GAAG,CAAC,CAAA;IACrE,CAAC;IAED,MAAM,8BAA8B,GAAG,oCAAoC,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAA;IAElH,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,IAAI,CAAA;IAEhD,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,GAAG,CAAA;IAExC,OAAO;QACL,GAAG,MAAM;QACT,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,8BAA8B;QAC9B,YAAY;QACZ,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;QAC/C,UAAU,EAAE,sBAAsB,CAAC,MAAM,CAAC;QAC1C,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE,YAAY;KACxC,CAAA;AACH,CAAC,CAAA;AAnCY,QAAA,oBAAoB,wBAmChC;AAaD,MAAM,gBAAgB,GAAG,CAAkC,MAAS,EAAE,IAAgB,EAAE,EAAE;IACxF,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;IACjC,CAAC;AACH,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,MAA0B,EAAE,IAAiB,EAAE,EAAE;IACzE,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAE9B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IACzB,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IACzB,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,CAAC,IAAI,GAAG,KAAK,CAAA;IACrB,CAAC;AACH,CAAC,CAAA;AAEM,KAAK,UAAU,oBAAoB,CAAC,IAAiB;IAC1D,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACzE,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACtE,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAkB,EAAC,MAAM,CAAC,CAAA;IACtD,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;IAErC,MAAM,IAAA,4BAAY,EAAC,aAAa,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;AACnE,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAAC,IAAgB;IAC3D,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACzE,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACtE,MAAM,YAAY,GAAG,MAAM,IAAA,4BAAoB,EAAC,MAAM,CAAC,CAAA;IACvD,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAEpC,MAAM,IAAA,gCAAc,EAAC,YAAY,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;AACpE,CAAC;AAEM,KAAK,UAAU,qBAAqB,CAAC,IAAiB,EAAE,QAAwB;IACrF,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACzE,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACtE,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAA,0BAAkB,EAAC,MAAM,CAAC,EAAE,IAAA,4BAAoB,EAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IACnH,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;IACrC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAEpC,QAAQ,KAAK,IAAI,qCAAiB,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,mBAAmB,EAAE,aAAa,CAAC,YAAY,EAAE,MAAM,CAAC,iBAAiB,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAA;IAEnM,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAA,gCAAc,EAAC,YAAY,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,IAAA,4BAAY,EAAC,aAAa,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;IAClK,OAAO,QAAQ,CAAA;AACjB,CAAC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export type DiscoveryMode = 'path' | 'glob';
2
+ export interface DiscoveredConfigFile {
3
+ absolutePath: string;
4
+ displayPath: string;
5
+ sortKey: string;
6
+ }
7
+ export interface DiscoveryResult {
8
+ effectiveRoot: string;
9
+ matches: DiscoveredConfigFile[];
10
+ mode: DiscoveryMode;
11
+ }
12
+ export declare const getDefaultDiscoverRoot: () => string;
13
+ export declare function discoverConfigs(input?: string): Promise<DiscoveryResult>;
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getDefaultDiscoverRoot = void 0;
4
+ exports.discoverConfigs = discoverConfigs;
5
+ const promises_1 = require("node:fs/promises");
6
+ const node_path_1 = require("node:path");
7
+ const glob_1 = require("glob");
8
+ const discoverableConfigFileNames = new Set(['tsoa.json', 'tsoa.yaml', 'tsoa.yml', 'tsoa.config.js', 'tsoa.config.cjs']);
9
+ const skippedDirectoryNames = new Set(['.git', 'node_modules', 'dist', 'build', 'coverage', '.turbo', '.cache']);
10
+ const normalizePathForDisplay = (value) => value.replaceAll(node_path_1.sep, '/');
11
+ const toDisplayPath = (basePath, absolutePath) => {
12
+ const relativePath = (0, node_path_1.relative)(basePath, absolutePath);
13
+ return normalizePathForDisplay(relativePath.length > 0 ? relativePath : (0, node_path_1.basename)(absolutePath));
14
+ };
15
+ const isDiscoverableConfigPath = (path) => discoverableConfigFileNames.has((0, node_path_1.basename)(path));
16
+ const getGlobOptions = () => ({
17
+ absolute: true,
18
+ dot: true,
19
+ follow: true,
20
+ nodir: false,
21
+ windowsPathsNoEscape: node_path_1.sep === '\\',
22
+ });
23
+ const isFileSystemMissingError = (error) => {
24
+ return !!error && typeof error === 'object' && 'code' in error && (error.code === 'ENOENT' || error.code === 'ENOTDIR');
25
+ };
26
+ const addDiscoveredConfig = async (path, displayBasePath, seenRealPaths, results) => {
27
+ if (!isDiscoverableConfigPath(path)) {
28
+ return;
29
+ }
30
+ const resolvedRealPath = await (0, promises_1.realpath)(path);
31
+ if (seenRealPaths.has(resolvedRealPath)) {
32
+ return;
33
+ }
34
+ seenRealPaths.add(resolvedRealPath);
35
+ const displayPath = toDisplayPath(displayBasePath, path);
36
+ results.push({
37
+ absolutePath: path,
38
+ displayPath,
39
+ sortKey: normalizePathForDisplay(displayPath),
40
+ });
41
+ };
42
+ const createDiscoveryAccumulator = () => ({
43
+ results: [],
44
+ seenDirectoryRealPaths: new Set(),
45
+ seenFileRealPaths: new Set(),
46
+ });
47
+ const sortDiscoveredConfigs = (results) => {
48
+ results.sort((left, right) => left.sortKey.localeCompare(right.sortKey));
49
+ };
50
+ const enqueueDirectoryIfIncluded = (pendingDirectories, parentPath, name) => {
51
+ if (skippedDirectoryNames.has(name)) {
52
+ return;
53
+ }
54
+ pendingDirectories.push({
55
+ path: (0, node_path_1.join)(parentPath, name),
56
+ });
57
+ };
58
+ const getOptionalSymbolicTargetStats = async (symbolicPath) => {
59
+ try {
60
+ return await (0, promises_1.stat)(symbolicPath);
61
+ }
62
+ catch (error) {
63
+ if (isFileSystemMissingError(error)) {
64
+ return undefined;
65
+ }
66
+ throw error;
67
+ }
68
+ };
69
+ const getRequiredSymbolicTargetStats = async (input, symbolicPath) => {
70
+ const symbolicTargetStats = await getOptionalSymbolicTargetStats(symbolicPath);
71
+ if (!symbolicTargetStats) {
72
+ throw new Error(`Discover path '${input}' does not exist.`);
73
+ }
74
+ return symbolicTargetStats;
75
+ };
76
+ const processDirectoryEntry = async (entry, currentDirectoryPath, displayBasePath, pendingDirectories, accumulator) => {
77
+ if (entry.isDirectory()) {
78
+ enqueueDirectoryIfIncluded(pendingDirectories, currentDirectoryPath, entry.name);
79
+ return;
80
+ }
81
+ const entryPath = (0, node_path_1.join)(currentDirectoryPath, entry.name);
82
+ if (entry.isFile()) {
83
+ await addDiscoveredConfig(entryPath, displayBasePath, accumulator.seenFileRealPaths, accumulator.results);
84
+ return;
85
+ }
86
+ if (!entry.isSymbolicLink()) {
87
+ return;
88
+ }
89
+ const symbolicTargetStats = await getOptionalSymbolicTargetStats(entryPath);
90
+ if (!symbolicTargetStats) {
91
+ return;
92
+ }
93
+ if (symbolicTargetStats.isDirectory()) {
94
+ enqueueDirectoryIfIncluded(pendingDirectories, currentDirectoryPath, entry.name);
95
+ return;
96
+ }
97
+ if (symbolicTargetStats.isFile()) {
98
+ await addDiscoveredConfig(entryPath, displayBasePath, accumulator.seenFileRealPaths, accumulator.results);
99
+ }
100
+ };
101
+ const processRootPath = async (rootPath, rootStats, displayBasePath, accumulator) => {
102
+ if (rootStats.isDirectory()) {
103
+ await scanDirectoryTree(rootPath, displayBasePath, accumulator);
104
+ return;
105
+ }
106
+ if (rootStats.isFile()) {
107
+ await addDiscoveredConfig(rootPath, displayBasePath, accumulator.seenFileRealPaths, accumulator.results);
108
+ }
109
+ };
110
+ const scanDirectoryTree = async (rootPath, displayBasePath, accumulator) => {
111
+ const pendingDirectories = [{ path: rootPath }];
112
+ while (pendingDirectories.length > 0) {
113
+ const currentDirectory = pendingDirectories.pop();
114
+ if (!currentDirectory) {
115
+ continue;
116
+ }
117
+ const currentRealPath = await (0, promises_1.realpath)(currentDirectory.path);
118
+ if (accumulator.seenDirectoryRealPaths.has(currentRealPath)) {
119
+ continue;
120
+ }
121
+ accumulator.seenDirectoryRealPaths.add(currentRealPath);
122
+ const directoryEntries = await (0, promises_1.readdir)(currentDirectory.path, { withFileTypes: true });
123
+ for (const entry of directoryEntries) {
124
+ await processDirectoryEntry(entry, currentDirectory.path, displayBasePath, pendingDirectories, accumulator);
125
+ }
126
+ }
127
+ };
128
+ const expandGlobInput = async (input) => {
129
+ return await (0, glob_1.glob)(input, getGlobOptions());
130
+ };
131
+ const resolvePathInput = (input) => {
132
+ return (0, node_path_1.isAbsolute)(input) ? input : (0, node_path_1.resolve)(input);
133
+ };
134
+ const discoverFromPath = async (input) => {
135
+ const resolvedPath = resolvePathInput(input);
136
+ let rootStats;
137
+ try {
138
+ rootStats = await (0, promises_1.lstat)(resolvedPath);
139
+ }
140
+ catch (error) {
141
+ if (isFileSystemMissingError(error)) {
142
+ throw new Error(`Discover path '${input}' does not exist.`);
143
+ }
144
+ throw error;
145
+ }
146
+ const accumulator = createDiscoveryAccumulator();
147
+ if (rootStats.isSymbolicLink()) {
148
+ const symbolicTargetStats = await getRequiredSymbolicTargetStats(input, resolvedPath);
149
+ await processRootPath(resolvedPath, symbolicTargetStats, resolvedPath, accumulator);
150
+ }
151
+ else {
152
+ await processRootPath(resolvedPath, rootStats, resolvedPath, accumulator);
153
+ }
154
+ sortDiscoveredConfigs(accumulator.results);
155
+ return {
156
+ effectiveRoot: resolvedPath,
157
+ matches: accumulator.results,
158
+ mode: 'path',
159
+ };
160
+ };
161
+ const processGlobMatch = async (expandedPath, displayBasePath, accumulator) => {
162
+ const expandedPathStats = await (0, promises_1.lstat)(expandedPath);
163
+ if (expandedPathStats.isSymbolicLink()) {
164
+ const symbolicTargetStats = await getOptionalSymbolicTargetStats(expandedPath);
165
+ if (!symbolicTargetStats) {
166
+ return;
167
+ }
168
+ await processRootPath(expandedPath, symbolicTargetStats, displayBasePath, accumulator);
169
+ return;
170
+ }
171
+ await processRootPath(expandedPath, expandedPathStats, displayBasePath, accumulator);
172
+ };
173
+ const discoverFromGlob = async (input) => {
174
+ const expandedPaths = await expandGlobInput(input);
175
+ if (expandedPaths.length === 0) {
176
+ throw new Error(`No filesystem entries matched discover glob '${input}'.`);
177
+ }
178
+ const accumulator = createDiscoveryAccumulator();
179
+ const displayBasePath = process.cwd();
180
+ for (const expandedPath of expandedPaths) {
181
+ await processGlobMatch(expandedPath, displayBasePath, accumulator);
182
+ }
183
+ sortDiscoveredConfigs(accumulator.results);
184
+ return {
185
+ effectiveRoot: displayBasePath,
186
+ matches: accumulator.results,
187
+ mode: 'glob',
188
+ };
189
+ };
190
+ const getDefaultDiscoverRoot = () => process.cwd();
191
+ exports.getDefaultDiscoverRoot = getDefaultDiscoverRoot;
192
+ async function discoverConfigs(input = (0, exports.getDefaultDiscoverRoot)()) {
193
+ return (0, glob_1.hasMagic)(input) ? discoverFromGlob(input) : discoverFromPath(input);
194
+ }
195
+ //# sourceMappingURL=discovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,13 @@
1
1
  import * as ts from 'typescript';
2
2
  import type { ExtendedRoutesConfig } from '../api';
3
3
  import { Config as BaseConfig, Tsoa } from '@tsoa-next/runtime';
4
+ /**
5
+ * Generates route files on disk and returns the metadata used to build them.
6
+ */
4
7
  export declare function generateRoutes<Config extends ExtendedRoutesConfig>(routesConfig: Config, compilerOptions?: ts.CompilerOptions, ignorePaths?: string[],
5
8
  /**
6
9
  * pass in cached metadata returned in a previous step to speed things up
7
10
  */
8
11
  metadata?: Tsoa.Metadata, defaultNumberType?: BaseConfig['defaultNumberType']): Promise<Tsoa.Metadata>;
12
+ /** Returns import specifiers that should be attempted when loading a custom route generator module. */
9
13
  export declare function getRouteGeneratorImportAttempts(routeGenerator: string): string[];
@@ -40,6 +40,9 @@ const defaultRouteGenerator_1 = require("../routeGeneration/defaultRouteGenerato
40
40
  const fs_1 = require("../utils/fs");
41
41
  const path = __importStar(require("node:path"));
42
42
  const node_fs_1 = require("node:fs");
43
+ /**
44
+ * Generates route files on disk and returns the metadata used to build them.
45
+ */
43
46
  async function generateRoutes(routesConfig, compilerOptions, ignorePaths,
44
47
  /**
45
48
  * pass in cached metadata returned in a previous step to speed things up
@@ -76,6 +79,7 @@ function localImportCandidateExists(targetPath) {
76
79
  }
77
80
  return false;
78
81
  }
82
+ /** Returns import specifiers that should be attempted when loading a custom route generator module. */
79
83
  function getRouteGeneratorImportAttempts(routeGenerator) {
80
84
  const relativeImportPath = normalizeRelativeImportPath(routeGenerator);
81
85
  const shouldPreferLocalImport = isExplicitPathLikeSpecifier(routeGenerator) && localImportCandidateExists(routeGenerator);
@@ -1 +1 @@
1
- {"version":3,"file":"generate-routes.js","sourceRoot":"","sources":["../../src/module/generate-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-routes.js","sourceRoot":"","sources":["../../src/module/generate-routes.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,19 @@
1
1
  import * as ts from 'typescript';
2
2
  import type { ExtendedSpecConfig } from '../api';
3
- import { Tsoa, Config } from '@tsoa-next/runtime';
3
+ import { Tsoa, Swagger, Config } from '@tsoa-next/runtime';
4
+ /** Returns the final output path for the generated OpenAPI document. */
4
5
  export declare const getSwaggerOutputPath: (swaggerConfig: ExtendedSpecConfig) => string;
6
+ /**
7
+ * Generates an OpenAPI document on disk and returns the metadata used to build it.
8
+ */
5
9
  export declare const generateSpec: (swaggerConfig: ExtendedSpecConfig, compilerOptions?: ts.CompilerOptions, ignorePaths?: string[],
6
10
  /**
7
11
  * pass in cached metadata returned in a previous step to speed things up
8
12
  */
9
13
  metadata?: Tsoa.Metadata, defaultNumberType?: Config["defaultNumberType"]) => Promise<Tsoa.Metadata>;
14
+ /**
15
+ * Builds an OpenAPI document in memory without writing it to disk.
16
+ */
17
+ export declare const buildSpec: (swaggerConfig: ExtendedSpecConfig, compilerOptions?: ts.CompilerOptions, ignorePaths?: string[], metadata?: Tsoa.Metadata, defaultNumberType?: Config["defaultNumberType"]) => Swagger.Spec;
18
+ /** Serializes an OpenAPI document to JSON or YAML text. */
19
+ export declare const serializeSpec: (spec: Swagger.Spec, yaml?: boolean) => string;
@@ -33,45 +33,62 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.generateSpec = exports.getSwaggerOutputPath = void 0;
36
+ exports.serializeSpec = exports.buildSpec = exports.generateSpec = exports.getSwaggerOutputPath = void 0;
37
37
  const YAML = __importStar(require("yaml"));
38
38
  const metadataGenerator_1 = require("../metadataGeneration/metadataGenerator");
39
39
  const specGenerator2_1 = require("../swagger/specGenerator2");
40
40
  const specGenerator3_1 = require("../swagger/specGenerator3");
41
41
  const specGenerator31_1 = require("../swagger/specGenerator31");
42
42
  const fs_1 = require("../utils/fs");
43
+ /** Returns the final output path for the generated OpenAPI document. */
43
44
  const getSwaggerOutputPath = (swaggerConfig) => {
44
45
  const ext = swaggerConfig.yaml ? 'yaml' : 'json';
45
46
  const specFileBaseName = swaggerConfig.specFileBaseName || 'swagger';
46
47
  return `${swaggerConfig.outputDirectory}/${specFileBaseName}.${ext}`;
47
48
  };
48
49
  exports.getSwaggerOutputPath = getSwaggerOutputPath;
50
+ /**
51
+ * Generates an OpenAPI document on disk and returns the metadata used to build it.
52
+ */
49
53
  const generateSpec = async (swaggerConfig, compilerOptions, ignorePaths,
50
54
  /**
51
55
  * pass in cached metadata returned in a previous step to speed things up
52
56
  */
53
57
  metadata, defaultNumberType) => {
54
- metadata ??= new metadataGenerator_1.MetadataGenerator(swaggerConfig.entryFile, compilerOptions, ignorePaths, swaggerConfig.controllerPathGlobs, swaggerConfig.rootSecurity, defaultNumberType).Generate();
55
- let spec;
56
- switch (swaggerConfig.specVersion) {
58
+ const controllerPathGlobs = swaggerConfig.controllerPathGlobs?.length ? swaggerConfig.controllerPathGlobs : undefined;
59
+ metadata ??= new metadataGenerator_1.MetadataGenerator(swaggerConfig.entryFile, compilerOptions, ignorePaths, controllerPathGlobs, swaggerConfig.rootSecurity, defaultNumberType).Generate();
60
+ const spec = (0, exports.buildSpec)(swaggerConfig, compilerOptions, ignorePaths, metadata, defaultNumberType);
61
+ await (0, fs_1.fsMkDir)(swaggerConfig.outputDirectory, { recursive: true });
62
+ const outputPath = (0, exports.getSwaggerOutputPath)(swaggerConfig);
63
+ await (0, fs_1.fsWriteFile)(outputPath, (0, exports.serializeSpec)(spec, swaggerConfig.yaml), { encoding: 'utf8' });
64
+ return metadata;
65
+ };
66
+ exports.generateSpec = generateSpec;
67
+ /**
68
+ * Builds an OpenAPI document in memory without writing it to disk.
69
+ */
70
+ const buildSpec = (swaggerConfig, compilerOptions, ignorePaths, metadata, defaultNumberType) => {
71
+ const controllerPathGlobs = swaggerConfig.controllerPathGlobs?.length ? swaggerConfig.controllerPathGlobs : undefined;
72
+ metadata ??= new metadataGenerator_1.MetadataGenerator(swaggerConfig.entryFile, compilerOptions, ignorePaths, controllerPathGlobs, swaggerConfig.rootSecurity, defaultNumberType).Generate();
73
+ const specVersion = swaggerConfig.specVersion ?? 2;
74
+ switch (specVersion) {
57
75
  case 2:
58
- spec = new specGenerator2_1.SpecGenerator2(metadata, swaggerConfig).GetSpec();
59
- break;
76
+ return new specGenerator2_1.SpecGenerator2(metadata, swaggerConfig).GetSpec();
60
77
  case 3:
61
- spec = new specGenerator3_1.SpecGenerator3(metadata, swaggerConfig).GetSpec();
62
- break;
78
+ return new specGenerator3_1.SpecGenerator3(metadata, swaggerConfig).GetSpec();
63
79
  case 3.1:
64
80
  default:
65
- spec = new specGenerator31_1.SpecGenerator31(metadata, swaggerConfig).GetSpec();
81
+ return new specGenerator31_1.SpecGenerator31(metadata, swaggerConfig).GetSpec();
66
82
  }
67
- await (0, fs_1.fsMkDir)(swaggerConfig.outputDirectory, { recursive: true });
68
- let data = JSON.stringify(spec, null, '\t');
69
- if (swaggerConfig.yaml) {
70
- data = YAML.stringify(JSON.parse(data));
83
+ };
84
+ exports.buildSpec = buildSpec;
85
+ /** Serializes an OpenAPI document to JSON or YAML text. */
86
+ const serializeSpec = (spec, yaml = false) => {
87
+ const data = JSON.stringify(spec, null, '\t');
88
+ if (!yaml) {
89
+ return data;
71
90
  }
72
- const outputPath = (0, exports.getSwaggerOutputPath)(swaggerConfig);
73
- await (0, fs_1.fsWriteFile)(outputPath, data, { encoding: 'utf8' });
74
- return metadata;
91
+ return YAML.stringify(JSON.parse(data));
75
92
  };
76
- exports.generateSpec = generateSpec;
93
+ exports.serializeSpec = serializeSpec;
77
94
  //# sourceMappingURL=generate-spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate-spec.js","sourceRoot":"","sources":["../../src/module/generate-spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2CAA4B;AAE5B,+EAA2E;AAE3E,8DAA0D;AAC1D,8DAA0D;AAC1D,gEAA4D;AAC5D,oCAAkD;AAE3C,MAAM,oBAAoB,GAAG,CAAC,aAAiC,EAAE,EAAE;IACxE,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAA;IAChD,MAAM,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,IAAI,SAAS,CAAA;IAEpE,OAAO,GAAG,aAAa,CAAC,eAAe,IAAI,gBAAgB,IAAI,GAAG,EAAE,CAAA;AACtE,CAAC,CAAA;AALY,QAAA,oBAAoB,wBAKhC;AAEM,MAAM,YAAY,GAAG,KAAK,EAC/B,aAAiC,EACjC,eAAoC,EACpC,WAAsB;AACtB;;GAEG;AACH,QAAwB,EACxB,iBAA+C,EAC/C,EAAE;IACF,QAAQ,KAAK,IAAI,qCAAiB,CAAC,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,CAAC,mBAAmB,EAAE,aAAa,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAA;IAEtL,IAAI,IAAkB,CAAA;IAEtB,QAAQ,aAAa,CAAC,WAAW,EAAE,CAAC;QAClC,KAAK,CAAC;YACJ,IAAI,GAAG,IAAI,+BAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,OAAO,EAAE,CAAA;YAC5D,MAAK;QACP,KAAK,CAAC;YACJ,IAAI,GAAG,IAAI,+BAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,OAAO,EAAE,CAAA;YAC5D,MAAK;QACP,KAAK,GAAG,CAAC;QACT;YACE,IAAI,GAAG,IAAI,iCAAe,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,OAAO,EAAE,CAAA;IACjE,CAAC;IAED,MAAM,IAAA,YAAO,EAAC,aAAa,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEjE,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IAC3C,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IACzC,CAAC;IAED,MAAM,UAAU,GAAG,IAAA,4BAAoB,EAAC,aAAa,CAAC,CAAA;IACtD,MAAM,IAAA,gBAAW,EAAC,UAAU,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAA;IAEzD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AArCY,QAAA,YAAY,gBAqCxB"}
1
+ {"version":3,"file":"generate-spec.js","sourceRoot":"","sources":["../../src/module/generate-spec.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,16 @@
1
1
  import type { ExtendedRoutesConfig } from '../api';
2
2
  import { Tsoa } from '@tsoa-next/runtime';
3
3
  import { AbstractRouteGenerator } from './routeGenerator';
4
+ /** Default route generator for the built-in Express, Koa, and Hapi templates. */
4
5
  export declare class DefaultRouteGenerator extends AbstractRouteGenerator<ExtendedRoutesConfig> {
5
6
  pathTransformerFn: (path: string) => string;
6
7
  template: string;
7
8
  constructor(metadata: Tsoa.Metadata, options: ExtendedRoutesConfig);
9
+ /** Loads the selected template file and generates the route output. */
8
10
  GenerateCustomRoutes(): Promise<void>;
11
+ /** Writes the generated route file to disk. */
9
12
  GenerateRoutes(middlewareTemplate: string): Promise<void>;
10
13
  protected pathTransformer(path: string): string;
14
+ /** Renders the route template with the current metadata context. */
11
15
  buildContent(middlewareTemplate: string): string;
12
16
  }