@tsed/components-scan 7.0.0-beta.1 → 7.0.0-beta.12

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 (88) hide show
  1. package/lib/cjs/{data → __mock__}/Test1.js +0 -0
  2. package/lib/cjs/__mock__/Test1.js.map +1 -0
  3. package/lib/cjs/{data → __mock__}/Test2.js +0 -0
  4. package/lib/cjs/__mock__/Test2.js.map +1 -0
  5. package/lib/cjs/__mock__/controllers/rest/TestCtrl.js +12 -0
  6. package/lib/cjs/__mock__/controllers/rest/TestCtrl.js.map +1 -0
  7. package/lib/cjs/__mock__/module1/Module1.js +19 -0
  8. package/lib/cjs/__mock__/module1/Module1.js.map +1 -0
  9. package/lib/cjs/__mock__/module1/controllers/M1Ctrl1.js +17 -0
  10. package/lib/cjs/__mock__/module1/controllers/M1Ctrl1.js.map +1 -0
  11. package/lib/cjs/__mock__/module1/services/M1Service.js +17 -0
  12. package/lib/cjs/__mock__/module1/services/M1Service.js.map +1 -0
  13. package/lib/cjs/__mock__/module1/submodule/SubModule.js +15 -0
  14. package/lib/cjs/__mock__/module1/submodule/SubModule.js.map +1 -0
  15. package/lib/cjs/__mock__/module1/submodule/SubService.js +12 -0
  16. package/lib/cjs/__mock__/module1/submodule/SubService.js.map +1 -0
  17. package/lib/cjs/__mock__/module2/Module2.js +18 -0
  18. package/lib/cjs/__mock__/module2/Module2.js.map +1 -0
  19. package/lib/cjs/__mock__/module2/controllers/M2Ctrl.js +12 -0
  20. package/lib/cjs/__mock__/module2/controllers/M2Ctrl.js.map +1 -0
  21. package/lib/cjs/importComponents.js +9 -0
  22. package/lib/cjs/importComponents.js.map +1 -1
  23. package/lib/cjs/importFiles.js +8 -12
  24. package/lib/cjs/importFiles.js.map +1 -1
  25. package/lib/cjs/importProviders.js +38 -17
  26. package/lib/cjs/importProviders.js.map +1 -1
  27. package/lib/cjs/index.js +9 -5
  28. package/lib/cjs/index.js.map +1 -1
  29. package/lib/cjs/isTsEnv.js +9 -1
  30. package/lib/cjs/isTsEnv.js.map +1 -1
  31. package/lib/cjs/normalizePath.js +3 -2
  32. package/lib/cjs/normalizePath.js.map +1 -1
  33. package/lib/cjs/package.json +3 -0
  34. package/lib/esm/{data → __mock__}/Test1.js +0 -0
  35. package/lib/esm/__mock__/Test1.js.map +1 -0
  36. package/lib/esm/{data → __mock__}/Test2.js +0 -0
  37. package/lib/esm/__mock__/Test2.js.map +1 -0
  38. package/lib/esm/__mock__/controllers/rest/TestCtrl.js +9 -0
  39. package/lib/esm/__mock__/controllers/rest/TestCtrl.js.map +1 -0
  40. package/lib/esm/__mock__/module1/Module1.js +16 -0
  41. package/lib/esm/__mock__/module1/Module1.js.map +1 -0
  42. package/lib/esm/__mock__/module1/controllers/M1Ctrl1.js +14 -0
  43. package/lib/esm/__mock__/module1/controllers/M1Ctrl1.js.map +1 -0
  44. package/lib/esm/__mock__/module1/services/M1Service.js +14 -0
  45. package/lib/esm/__mock__/module1/services/M1Service.js.map +1 -0
  46. package/lib/esm/__mock__/module1/submodule/SubModule.js +12 -0
  47. package/lib/esm/__mock__/module1/submodule/SubModule.js.map +1 -0
  48. package/lib/esm/__mock__/module1/submodule/SubService.js +9 -0
  49. package/lib/esm/__mock__/module1/submodule/SubService.js.map +1 -0
  50. package/lib/esm/__mock__/module2/Module2.js +15 -0
  51. package/lib/esm/__mock__/module2/Module2.js.map +1 -0
  52. package/lib/esm/__mock__/module2/controllers/M2Ctrl.js +9 -0
  53. package/lib/esm/__mock__/module2/controllers/M2Ctrl.js.map +1 -0
  54. package/lib/esm/cleanGlobPatterns.js +2 -2
  55. package/lib/esm/importComponents.js +10 -1
  56. package/lib/esm/importComponents.js.map +1 -1
  57. package/lib/esm/importFiles.js +4 -12
  58. package/lib/esm/importFiles.js.map +1 -1
  59. package/lib/esm/importProviders.js +38 -17
  60. package/lib/esm/importProviders.js.map +1 -1
  61. package/lib/esm/index.js +9 -5
  62. package/lib/esm/index.js.map +1 -1
  63. package/lib/esm/isTsEnv.js +9 -1
  64. package/lib/esm/isTsEnv.js.map +1 -1
  65. package/lib/esm/normalizePath.js +1 -1
  66. package/lib/esm/normalizePath.js.map +1 -1
  67. package/lib/esm/package.json +3 -0
  68. package/lib/types/{data → __mock__}/Test1.d.ts +0 -0
  69. package/lib/types/{data → __mock__}/Test2.d.ts +0 -0
  70. package/lib/types/__mock__/controllers/rest/TestCtrl.d.ts +2 -0
  71. package/lib/types/__mock__/module1/Module1.d.ts +2 -0
  72. package/lib/types/__mock__/module1/controllers/M1Ctrl1.d.ts +5 -0
  73. package/lib/types/__mock__/module1/services/M1Service.d.ts +5 -0
  74. package/lib/types/__mock__/module1/submodule/SubModule.d.ts +2 -0
  75. package/lib/types/__mock__/module1/submodule/SubService.d.ts +2 -0
  76. package/lib/types/__mock__/module2/Module2.d.ts +2 -0
  77. package/lib/types/__mock__/module2/controllers/M2Ctrl.d.ts +2 -0
  78. package/lib/types/importComponents.d.ts +6 -0
  79. package/lib/types/importProviders.d.ts +2 -6
  80. package/lib/types/index.d.ts +6 -2
  81. package/lib/types/isTsEnv.d.ts +1 -2
  82. package/package.json +14 -11
  83. package/readme.md +2 -3
  84. package/tsconfig.compile.esm.json +2 -13
  85. package/lib/cjs/data/Test1.js.map +0 -1
  86. package/lib/cjs/data/Test2.js.map +0 -1
  87. package/lib/esm/data/Test1.js.map +0 -1
  88. package/lib/esm/data/Test2.js.map +0 -1
@@ -0,0 +1,9 @@
1
+ import { __decorate } from "tslib";
2
+ import { Controller } from "@tsed/di";
3
+ let M2Ctrl = class M2Ctrl {
4
+ };
5
+ M2Ctrl = __decorate([
6
+ Controller("/m2")
7
+ ], M2Ctrl);
8
+ export { M2Ctrl };
9
+ //# sourceMappingURL=M2Ctrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"M2Ctrl.js","sourceRoot":"","sources":["../../../../../src/__mock__/module2/controllers/M2Ctrl.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAGpC,IAAa,MAAM,GAAnB,MAAa,MAAM;CAAG,CAAA;AAAT,MAAM;IADlB,UAAU,CAAC,KAAK,CAAC;GACL,MAAM,CAAG;SAAT,MAAM","sourcesContent":["import {Controller} from \"@tsed/di\";\n\n@Controller(\"/m2\")\nexport class M2Ctrl {}\n"]}
@@ -1,6 +1,6 @@
1
1
  import { resolve } from "path";
2
- import { isTsEnv } from "./isTsEnv";
3
- import { normalizePath } from "./normalizePath";
2
+ import { isTsEnv } from "./isTsEnv.js";
3
+ import { normalizePath } from "./normalizePath.js";
4
4
  function mapExcludes(excludes) {
5
5
  return excludes.map((s) => `!${s.replace(/!/gi, "")}`);
6
6
  }
@@ -1,5 +1,8 @@
1
1
  import { isArray, isClass } from "@tsed/core";
2
- import { importFiles } from "./importFiles";
2
+ import { importFiles } from "./importFiles.js";
3
+ /**
4
+ * @deprecated
5
+ */
3
6
  async function resolveSymbols(item, excludes, disableComponentsScan = false) {
4
7
  if (isClass(item)) {
5
8
  return [item];
@@ -11,6 +14,9 @@ async function resolveSymbols(item, excludes, disableComponentsScan = false) {
11
14
  /* istanbul ignore next */
12
15
  return [];
13
16
  }
17
+ /**
18
+ * @deprecated
19
+ */
14
20
  export function mapConfiguration(config) {
15
21
  if (isArray(config)) {
16
22
  return config.map((value) => {
@@ -27,6 +33,9 @@ export function mapConfiguration(config) {
27
33
  return list;
28
34
  }, []);
29
35
  }
36
+ /**
37
+ * @deprecated
38
+ */
30
39
  export async function importComponents(config, excludes, disableComponentsScan = false) {
31
40
  if (!config) {
32
41
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"importComponents.js","sourceRoot":"","sources":["../../src/importComponents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,OAAO,EAAC,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C,KAAK,UAAU,cAAc,CAAC,IAAS,EAAE,QAAkB,EAAE,qBAAqB,GAAG,KAAK;IACxF,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC;KACf;IACD,0BAA0B;IAC1B,IAAI,CAAC,qBAAqB,EAAE;QAC1B,OAAO,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;KACpC;IAED,0BAA0B;IAC1B,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAW;IAC1C,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE;QACnB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;YAC/B,OAAO;gBACL,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;aACzB,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAW,EAAE,GAAW,EAAE,EAAE;QAC7D,IAAI,CAAC,IAAI,CAAC;YACR,QAAQ,EAAE,GAAG;YACb,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SAC/B,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAW,EACX,QAAkB,EAClB,qBAAqB,GAAG,KAAK;IAE7B,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,EAAE,CAAC;KACX;IAED,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAElC,MAAM,QAAQ,GAAQ,EAAE,CAAC;IAEzB,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE;QAC3B,QAAQ,CAAC,IAAI,CACX,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAU,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;YAE7E,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAC,CAAC,CAAC,CAAC;QAC5F,CAAC,CAAC,CACH,CAAC;KACH;IAED,MAAM,MAAM,GAAwC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEhF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC","sourcesContent":["import {isArray, isClass} from \"@tsed/core\";\nimport {importFiles} from \"./importFiles\";\n\nasync function resolveSymbols(item: any, excludes: string[], disableComponentsScan = false) {\n if (isClass(item)) {\n return [item];\n }\n /* istanbul ignore else */\n if (!disableComponentsScan) {\n return importFiles(item, excludes);\n }\n\n /* istanbul ignore next */\n return [];\n}\n\nexport function mapConfiguration(config: any): {endpoint?: string; values: any[]}[] {\n if (isArray(config)) {\n return config.map((value: any) => {\n return {\n values: [].concat(value)\n };\n });\n }\n\n return Object.keys(config).reduce((list: any[], key: string) => {\n list.push({\n endpoint: key,\n values: [].concat(config[key])\n });\n\n return list;\n }, []);\n}\n\nexport async function importComponents(\n config: any,\n excludes: string[],\n disableComponentsScan = false\n): Promise<{token: string; route?: string}[]> {\n if (!config) {\n return [];\n }\n\n config = mapConfiguration(config);\n\n const promises: any = [];\n\n for (const option of config) {\n promises.push(\n ...option.values.map(async (value: any) => {\n const symbols = await resolveSymbols(value, excludes, disableComponentsScan);\n\n return symbols.filter(isClass).map((symbol) => ({token: symbol, route: option.endpoint}));\n })\n );\n }\n\n const result: {token: string; route?: string}[][] = await Promise.all(promises);\n\n return result.flat();\n}\n"]}
1
+ {"version":3,"file":"importComponents.js","sourceRoot":"","sources":["../../src/importComponents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,OAAO,EAAC,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C;;GAEG;AACH,KAAK,UAAU,cAAc,CAAC,IAAS,EAAE,QAAkB,EAAE,qBAAqB,GAAG,KAAK;IACxF,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC;KACf;IACD,0BAA0B;IAC1B,IAAI,CAAC,qBAAqB,EAAE;QAC1B,OAAO,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;KACpC;IAED,0BAA0B;IAC1B,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAW;IAC1C,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE;QACnB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;YAC/B,OAAO;gBACL,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;aACzB,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAW,EAAE,GAAW,EAAE,EAAE;QAC7D,IAAI,CAAC,IAAI,CAAC;YACR,QAAQ,EAAE,GAAG;YACb,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SAC/B,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAW,EACX,QAAkB,EAClB,qBAAqB,GAAG,KAAK;IAE7B,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,EAAE,CAAC;KACX;IAED,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAElC,MAAM,QAAQ,GAAQ,EAAE,CAAC;IAEzB,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE;QAC3B,QAAQ,CAAC,IAAI,CACX,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAU,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;YAE7E,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAC,CAAC,CAAC,CAAC;QAC5F,CAAC,CAAC,CACH,CAAC;KACH;IAED,MAAM,MAAM,GAAwC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEhF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC","sourcesContent":["import {isArray, isClass} from \"@tsed/core\";\nimport {importFiles} from \"./importFiles\";\n\n/**\n * @deprecated\n */\nasync function resolveSymbols(item: any, excludes: string[], disableComponentsScan = false) {\n if (isClass(item)) {\n return [item];\n }\n /* istanbul ignore else */\n if (!disableComponentsScan) {\n return importFiles(item, excludes);\n }\n\n /* istanbul ignore next */\n return [];\n}\n\n/**\n * @deprecated\n */\nexport function mapConfiguration(config: any): {endpoint?: string; values: any[]}[] {\n if (isArray(config)) {\n return config.map((value: any) => {\n return {\n values: [].concat(value)\n };\n });\n }\n\n return Object.keys(config).reduce((list: any[], key: string) => {\n list.push({\n endpoint: key,\n values: [].concat(config[key])\n });\n\n return list;\n }, []);\n}\n\n/**\n * @deprecated\n */\nexport async function importComponents(\n config: any,\n excludes: string[],\n disableComponentsScan = false\n): Promise<{token: string; route?: string}[]> {\n if (!config) {\n return [];\n }\n\n config = mapConfiguration(config);\n\n const promises: any = [];\n\n for (const option of config) {\n promises.push(\n ...option.values.map(async (value: any) => {\n const symbols = await resolveSymbols(value, excludes, disableComponentsScan);\n\n return symbols.filter(isClass).map((symbol) => ({token: symbol, route: option.endpoint}));\n })\n );\n }\n\n const result: {token: string; route?: string}[][] = await Promise.all(promises);\n\n return result.flat();\n}\n"]}
@@ -1,22 +1,14 @@
1
1
  import { importPackage } from "@tsed/core";
2
- import { cleanGlobPatterns } from "./cleanGlobPatterns";
2
+ import { cleanGlobPatterns } from "./cleanGlobPatterns.js";
3
3
  export async function importFiles(patterns, exclude) {
4
4
  const { default: globby } = await import("globby");
5
5
  const files = await globby(cleanGlobPatterns(patterns, exclude));
6
6
  const symbols = [];
7
- for (const file of files) {
7
+ for (const file of files.sort((a, b) => (a < b ? -1 : 1))) {
8
8
  if (!file.endsWith(".d.ts")) {
9
9
  // prevent .d.ts import if the global pattern isn't correctly configured
10
- try {
11
- const exports = await importPackage(file);
12
- Object.keys(exports).forEach((key) => symbols.push(exports[key]));
13
- }
14
- catch (er) {
15
- // istanbul ignore next
16
- console.error(er);
17
- // istanbul ignore next
18
- process.exit(1);
19
- }
10
+ const exports = await importPackage(file);
11
+ Object.keys(exports).forEach((key) => symbols.push(exports[key]));
20
12
  }
21
13
  }
22
14
  return symbols;
@@ -1 +1 @@
1
- {"version":3,"file":"importFiles.js","sourceRoot":"","sources":["../../src/importFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AACzC,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAA2B,EAAE,OAAiB;IAC9E,MAAM,EAAC,OAAO,EAAE,MAAM,EAAC,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACjE,MAAM,OAAO,GAAU,EAAE,CAAC;IAE1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC3B,wEAAwE;YACxE,IAAI;gBACF,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC;gBAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aACnE;YAAC,OAAO,EAAE,EAAE;gBACX,uBAAuB;gBACvB,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAClB,uBAAuB;gBACvB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACjB;SACF;KACF;IAED,OAAO,OAAO,CAAC;AACjB,CAAC","sourcesContent":["import {importPackage} from \"@tsed/core\";\nimport {cleanGlobPatterns} from \"./cleanGlobPatterns\";\n\nexport async function importFiles(patterns: string | string[], exclude: string[]): Promise<any[]> {\n const {default: globby} = await import(\"globby\");\n const files = await globby(cleanGlobPatterns(patterns, exclude));\n const symbols: any[] = [];\n\n for (const file of files) {\n if (!file.endsWith(\".d.ts\")) {\n // prevent .d.ts import if the global pattern isn't correctly configured\n try {\n const exports = await importPackage(file);\n Object.keys(exports).forEach((key) => symbols.push(exports[key]));\n } catch (er) {\n // istanbul ignore next\n console.error(er);\n // istanbul ignore next\n process.exit(1);\n }\n }\n }\n\n return symbols;\n}\n"]}
1
+ {"version":3,"file":"importFiles.js","sourceRoot":"","sources":["../../src/importFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AACzC,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAA2B,EAAE,OAAiB;IAC9E,MAAM,EAAC,OAAO,EAAE,MAAM,EAAC,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEjD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACjE,MAAM,OAAO,GAAU,EAAE,CAAC;IAE1B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;QACzD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC3B,wEAAwE;YACxE,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SACnE;KACF;IAED,OAAO,OAAO,CAAC;AACjB,CAAC","sourcesContent":["import {importPackage} from \"@tsed/core\";\nimport {cleanGlobPatterns} from \"./cleanGlobPatterns\";\n\nexport async function importFiles(patterns: string | string[], exclude: string[]): Promise<any[]> {\n const {default: globby} = await import(\"globby\");\n\n const files = await globby(cleanGlobPatterns(patterns, exclude));\n const symbols: any[] = [];\n\n for (const file of files.sort((a, b) => (a < b ? -1 : 1))) {\n if (!file.endsWith(\".d.ts\")) {\n // prevent .d.ts import if the global pattern isn't correctly configured\n const exports = await importPackage(file);\n Object.keys(exports).forEach((key) => symbols.push(exports[key]));\n }\n }\n\n return symbols;\n}\n"]}
@@ -1,25 +1,46 @@
1
1
  import { GlobalProviders, ProviderType } from "@tsed/di";
2
- import { importComponents } from "./importComponents";
3
- async function recursiveImports(providers, settings, properties) {
4
- const { exclude = [] } = settings;
5
- const promises = providers
6
- .map(({ token }) => GlobalProviders.get(token))
7
- .filter((provider) => (provider === null || provider === void 0 ? void 0 : provider.type) === ProviderType.MODULE && provider.configuration)
8
- .map((provider) => importProviders({ exclude, ...provider.configuration }, properties));
9
- return (await Promise.all(promises)).flat();
2
+ import { isArray, isClass, isString } from "@tsed/core";
3
+ import { importFiles } from "./importFiles.js";
4
+ const lookup = ["imports", "componentsScan", "mount"];
5
+ async function resolveRecursively(items, exclude, rootDir) {
6
+ for (const index in items) {
7
+ if (isString(items[index])) {
8
+ items[index] = await importFiles(items[index].replace("${rootDir}", rootDir), exclude);
9
+ }
10
+ }
11
+ const providers = items.flat().filter(isClass);
12
+ for (const token of providers) {
13
+ const provider = GlobalProviders.get(token);
14
+ if ((provider === null || provider === void 0 ? void 0 : provider.type) === ProviderType.MODULE && provider.configuration) {
15
+ provider.configuration.exclude = exclude;
16
+ provider.configuration.rootDir = provider.configuration.rootDir || rootDir;
17
+ provider.configuration = await importProviders(provider.configuration);
18
+ }
19
+ }
20
+ return providers;
10
21
  }
11
22
  /**
12
- * Import providers from given patterns.
23
+ * Lookup settings and replace glob pattern by the resolved providers
13
24
  *
14
25
  * @param settings
15
- * @param properties
16
26
  */
17
- export async function importProviders(settings, properties = ["imports"]) {
18
- const { exclude = [] } = settings;
19
- const disableComponentsScan = settings.disableComponentsScan || !!process.env.WEBPACK;
20
- const promises = properties.map((key) => importComponents(settings[key], exclude, disableComponentsScan));
21
- const providers = (await Promise.all(promises)).flat();
22
- const children = await recursiveImports(providers, settings, properties);
23
- return [...children, ...providers];
27
+ export async function importProviders(settings) {
28
+ const { exclude = [], rootDir } = settings;
29
+ for (const property of lookup) {
30
+ if (settings[property]) {
31
+ if (!isArray(settings[property])) {
32
+ const current = settings[property];
33
+ const promises = Object.entries(current).map(async ([key, items]) => {
34
+ current[key] = await resolveRecursively([].concat(items), exclude, rootDir);
35
+ });
36
+ await Promise.all(promises);
37
+ }
38
+ else {
39
+ settings[property] = await resolveRecursively(settings[property], exclude, rootDir);
40
+ }
41
+ }
42
+ }
43
+ settings.disableComponentsScan = true;
44
+ return settings;
24
45
  }
25
46
  //# sourceMappingURL=importProviders.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"importProviders.js","sourceRoot":"","sources":["../../src/importProviders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAY,YAAY,EAAC,MAAM,UAAU,CAAC;AACjE,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAEpD,KAAK,UAAU,gBAAgB,CAAC,SAA4C,EAAE,QAAqC,EAAE,UAAoB;IACvI,MAAM,EAAC,OAAO,GAAG,EAAE,EAAC,GAAG,QAAQ,CAAC;IAEhC,MAAM,QAAQ,GAAG,SAAS;SACvB,GAAG,CAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SAC5C,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,MAAK,YAAY,CAAC,MAAM,IAAI,QAAQ,CAAC,aAAa,CAAC;SACtF,GAAG,CAAC,CAAC,QAAkB,EAAE,EAAE,CAAC,eAAe,CAAC,EAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,aAAa,EAAC,EAAE,UAAU,CAAC,CAAC,CAAC;IAElG,OAAO,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9C,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAqC,EACrC,aAAuB,CAAC,SAAS,CAAC;IAElC,MAAM,EAAC,OAAO,GAAG,EAAE,EAAC,GAAG,QAAQ,CAAC;IAChC,MAAM,qBAAqB,GAAG,QAAQ,CAAC,qBAAqB,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;IAEtF,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAC1G,MAAM,SAAS,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IAEzE,OAAO,CAAC,GAAG,QAAQ,EAAE,GAAG,SAAS,CAAC,CAAC;AACrC,CAAC","sourcesContent":["import {GlobalProviders, Provider, ProviderType} from \"@tsed/di\";\nimport {importComponents} from \"./importComponents\";\n\nasync function recursiveImports(providers: {token: string; route?: string}[], settings: Partial<TsED.Configuration>, properties: string[]) {\n const {exclude = []} = settings;\n\n const promises = providers\n .map(({token}) => GlobalProviders.get(token))\n .filter((provider) => provider?.type === ProviderType.MODULE && provider.configuration)\n .map((provider: Provider) => importProviders({exclude, ...provider.configuration}, properties));\n\n return (await Promise.all(promises)).flat();\n}\n\n/**\n * Import providers from given patterns.\n *\n * @param settings\n * @param properties\n */\nexport async function importProviders(\n settings: Partial<TsED.Configuration>,\n properties: string[] = [\"imports\"]\n): Promise<{token: string; route?: string}[]> {\n const {exclude = []} = settings;\n const disableComponentsScan = settings.disableComponentsScan || !!process.env.WEBPACK;\n\n const promises = properties.map((key) => importComponents(settings[key], exclude, disableComponentsScan));\n const providers = (await Promise.all(promises)).flat();\n const children = await recursiveImports(providers, settings, properties);\n\n return [...children, ...providers];\n}\n"]}
1
+ {"version":3,"file":"importProviders.js","sourceRoot":"","sources":["../../src/importProviders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAE,YAAY,EAAC,MAAM,UAAU,CAAC;AACvD,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,YAAY,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C,MAAM,MAAM,GAAG,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;AAEtD,KAAK,UAAU,kBAAkB,CAAC,KAAY,EAAE,OAAiB,EAAE,OAAe;IAChF,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE;QACzB,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;YAC1B,KAAK,CAAC,KAAK,CAAC,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;SACxF;KACF;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE/C,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE;QAC7B,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAE5C,IAAI,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,MAAK,YAAY,CAAC,MAAM,IAAI,QAAQ,CAAC,aAAa,EAAE;YACpE,QAAQ,CAAC,aAAa,CAAC,OAAO,GAAG,OAAO,CAAC;YACzC,QAAQ,CAAC,aAAa,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,IAAI,OAAO,CAAC;YAE3E,QAAQ,CAAC,aAAa,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;SACxE;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,QAAqC;IACzE,MAAM,EAAC,OAAO,GAAG,EAAE,EAAE,OAAO,EAAC,GAAG,QAAQ,CAAC;IAEzC,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE;QAC7B,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACtB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE;gBAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACnC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,CAAgB,EAAE,EAAE;oBACjF,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,kBAAkB,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC9E,CAAC,CAAC,CAAC;gBAEH,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;aAC7B;iBAAM;gBACL,QAAQ,CAAC,QAAQ,CAAC,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;aACrF;SACF;KACF;IAED,QAAQ,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAEtC,OAAO,QAAQ,CAAC;AAClB,CAAC","sourcesContent":["import {GlobalProviders, ProviderType} from \"@tsed/di\";\nimport {isArray, isClass, isString} from \"@tsed/core\";\nimport {importFiles} from \"./importFiles\";\n\nconst lookup = [\"imports\", \"componentsScan\", \"mount\"];\n\nasync function resolveRecursively(items: any[], exclude: string[], rootDir: string) {\n for (const index in items) {\n if (isString(items[index])) {\n items[index] = await importFiles(items[index].replace(\"${rootDir}\", rootDir), exclude);\n }\n }\n\n const providers = items.flat().filter(isClass);\n\n for (const token of providers) {\n const provider = GlobalProviders.get(token);\n\n if (provider?.type === ProviderType.MODULE && provider.configuration) {\n provider.configuration.exclude = exclude;\n provider.configuration.rootDir = provider.configuration.rootDir || rootDir;\n\n provider.configuration = await importProviders(provider.configuration);\n }\n }\n\n return providers;\n}\n\n/**\n * Lookup settings and replace glob pattern by the resolved providers\n *\n * @param settings\n */\nexport async function importProviders(settings: Partial<TsED.Configuration>): Promise<Partial<TsED.Configuration>> {\n const {exclude = [], rootDir} = settings;\n\n for (const property of lookup) {\n if (settings[property]) {\n if (!isArray(settings[property])) {\n const current = settings[property];\n const promises = Object.entries(current).map(async ([key, items]: [string, any]) => {\n current[key] = await resolveRecursively([].concat(items), exclude, rootDir);\n });\n\n await Promise.all(promises);\n } else {\n settings[property] = await resolveRecursively(settings[property], exclude, rootDir);\n }\n }\n }\n\n settings.disableComponentsScan = true;\n\n return settings;\n}\n"]}
package/lib/esm/index.js CHANGED
@@ -1,6 +1,10 @@
1
- export * from "./importFiles";
2
- export * from "./importComponents";
3
- export * from "./importProviders";
4
- export * from "./cleanGlobPatterns";
5
- export * from "./normalizePath";
1
+ /**
2
+ * @file Automatically generated by barrelsby.
3
+ */
4
+ export * from "./cleanGlobPatterns.js";
5
+ export * from "./importComponents.js";
6
+ export * from "./importFiles.js";
7
+ export * from "./importProviders.js";
8
+ export * from "./isTsEnv.js";
9
+ export * from "./normalizePath.js";
6
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC","sourcesContent":["export * from \"./importFiles\";\nexport * from \"./importComponents\";\nexport * from \"./importProviders\";\nexport * from \"./cleanGlobPatterns\";\nexport * from \"./normalizePath\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC","sourcesContent":["/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./cleanGlobPatterns\";\nexport * from \"./importComponents\";\nexport * from \"./importFiles\";\nexport * from \"./importProviders\";\nexport * from \"./isTsEnv\";\nexport * from \"./normalizePath\";\n"]}
@@ -1,5 +1,13 @@
1
1
  export function isTsEnv() {
2
- return ((require && require.extensions && require.extensions[".ts"]) ||
2
+ var _a;
3
+ try {
4
+ if (require && require.extensions && require.extensions[".ts"]) {
5
+ return true;
6
+ }
7
+ }
8
+ catch (er) { }
9
+ return (process.env["TS_NODE_DEV"] ||
10
+ ((_a = process.env["_"]) === null || _a === void 0 ? void 0 : _a.includes("ts-node")) ||
3
11
  process.env["TS_TEST"] ||
4
12
  process.env.JEST_WORKER_ID !== undefined ||
5
13
  process.env.NODE_ENV === "test");
@@ -1 +1 @@
1
- {"version":3,"file":"isTsEnv.js","sourceRoot":"","sources":["../../src/isTsEnv.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,OAAO;IACrB,OAAO,CACL,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,SAAS;QACxC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,CAChC,CAAC;AACJ,CAAC","sourcesContent":["export function isTsEnv() {\n return (\n (require && require.extensions && require.extensions[\".ts\"]) ||\n process.env[\"TS_TEST\"] ||\n process.env.JEST_WORKER_ID !== undefined ||\n process.env.NODE_ENV === \"test\"\n );\n}\n"]}
1
+ {"version":3,"file":"isTsEnv.js","sourceRoot":"","sources":["../../src/isTsEnv.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,OAAO;;IACrB,IAAI;QACF,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YAC9D,OAAO,IAAI,CAAC;SACb;KACF;IAAC,OAAO,EAAE,EAAE,GAAE;IACf,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;SAC1B,MAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,0CAAE,QAAQ,CAAC,SAAS,CAAC,CAAA;QACrC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,SAAS;QACxC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,CAChC,CAAC;AACJ,CAAC","sourcesContent":["export function isTsEnv() {\n try {\n if (require && require.extensions && require.extensions[\".ts\"]) {\n return true;\n }\n } catch (er) {}\n return (\n process.env[\"TS_NODE_DEV\"] ||\n process.env[\"_\"]?.includes(\"ts-node\") ||\n process.env[\"TS_TEST\"] ||\n process.env.JEST_WORKER_ID !== undefined ||\n process.env.NODE_ENV === \"test\"\n );\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  import { isArray, isString } from "@tsed/core";
2
2
  import { join } from "path";
3
- const fixPath = require("normalize-path");
3
+ import fixPath from "normalize-path";
4
4
  export function normalizePath(item, ...paths) {
5
5
  if (isString(item)) {
6
6
  const path = join(item, ...paths);
@@ -1 +1 @@
1
- {"version":3,"file":"normalizePath.js","sourceRoot":"","sources":["../../src/normalizePath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAC,IAAI,EAAC,MAAM,MAAM,CAAC;AAE1B,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAI1C,MAAM,UAAU,aAAa,CAAC,IAAS,EAAE,GAAG,KAAe;IACzD,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE;QAClB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC;QAClC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;KACtB;IAED,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;KACrD;IAED,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import {isArray, isString} from \"@tsed/core\";\nimport {join} from \"path\";\n\nconst fixPath = require(\"normalize-path\");\n\nexport function normalizePath(item: string, ...paths: string[]): string;\nexport function normalizePath(item: (string | any)[]): (string | any)[];\nexport function normalizePath(item: any, ...paths: string[]) {\n if (isString(item)) {\n const path = join(item, ...paths);\n return fixPath(path);\n }\n\n if (isArray(item)) {\n return item.map((item: any) => normalizePath(item));\n }\n\n return item;\n}\n"]}
1
+ {"version":3,"file":"normalizePath.js","sourceRoot":"","sources":["../../src/normalizePath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAC,IAAI,EAAC,MAAM,MAAM,CAAC;AAC1B,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAIrC,MAAM,UAAU,aAAa,CAAC,IAAS,EAAE,GAAG,KAAe;IACzD,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE;QAClB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC;QAClC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;KACtB;IAED,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;KACrD;IAED,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import {isArray, isString} from \"@tsed/core\";\nimport {join} from \"path\";\nimport fixPath from \"normalize-path\";\n\nexport function normalizePath(item: string, ...paths: string[]): string;\nexport function normalizePath(item: (string | any)[]): (string | any)[];\nexport function normalizePath(item: any, ...paths: string[]) {\n if (isString(item)) {\n const path = join(item, ...paths);\n return fixPath(path);\n }\n\n if (isArray(item)) {\n return item.map((item: any) => normalizePath(item));\n }\n\n return item;\n}\n"]}
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "module"
3
+ }
File without changes
File without changes
@@ -0,0 +1,2 @@
1
+ export declare class TestCtrl {
2
+ }
@@ -0,0 +1,2 @@
1
+ export declare class Module1 {
2
+ }
@@ -0,0 +1,5 @@
1
+ import { M1Service } from "../services/M1Service";
2
+ export declare class M1Ctrl1 {
3
+ service: M1Service;
4
+ constructor(service: M1Service);
5
+ }
@@ -0,0 +1,5 @@
1
+ import { SubService } from "../submodule/SubService";
2
+ export declare class M1Service {
3
+ subService: SubService;
4
+ constructor(subService: SubService);
5
+ }
@@ -0,0 +1,2 @@
1
+ export declare class SubModule {
2
+ }
@@ -0,0 +1,2 @@
1
+ export declare class SubService {
2
+ }
@@ -0,0 +1,2 @@
1
+ export declare class Module2 {
2
+ }
@@ -0,0 +1,2 @@
1
+ export declare class M2Ctrl {
2
+ }
@@ -1,7 +1,13 @@
1
+ /**
2
+ * @deprecated
3
+ */
1
4
  export declare function mapConfiguration(config: any): {
2
5
  endpoint?: string;
3
6
  values: any[];
4
7
  }[];
8
+ /**
9
+ * @deprecated
10
+ */
5
11
  export declare function importComponents(config: any, excludes: string[], disableComponentsScan?: boolean): Promise<{
6
12
  token: string;
7
13
  route?: string;
@@ -1,10 +1,6 @@
1
1
  /**
2
- * Import providers from given patterns.
2
+ * Lookup settings and replace glob pattern by the resolved providers
3
3
  *
4
4
  * @param settings
5
- * @param properties
6
5
  */
7
- export declare function importProviders(settings: Partial<TsED.Configuration>, properties?: string[]): Promise<{
8
- token: string;
9
- route?: string;
10
- }[]>;
6
+ export declare function importProviders(settings: Partial<TsED.Configuration>): Promise<Partial<TsED.Configuration>>;
@@ -1,5 +1,9 @@
1
- export * from "./importFiles";
1
+ /**
2
+ * @file Automatically generated by barrelsby.
3
+ */
4
+ export * from "./cleanGlobPatterns";
2
5
  export * from "./importComponents";
6
+ export * from "./importFiles";
3
7
  export * from "./importProviders";
4
- export * from "./cleanGlobPatterns";
8
+ export * from "./isTsEnv";
5
9
  export * from "./normalizePath";
@@ -1,2 +1 @@
1
- /// <reference types="node" />
2
- export declare function isTsEnv(): string | boolean | ((m: NodeJS.Module, filename: string) => any);
1
+ export declare function isTsEnv(): string | boolean;
package/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "@tsed/components-scan",
3
- "version": "7.0.0-beta.1",
3
+ "version": "7.0.0-beta.12",
4
4
  "description": "Components scan utilities for Ts.ED Framework",
5
5
  "private": false,
6
6
  "source": "./src/index.ts",
7
7
  "main": "./lib/cjs/index.js",
8
+ "module": "./lib/esm/index.js",
8
9
  "typings": "./lib/types/index.d.ts",
9
10
  "exports": {
10
11
  "types": "./lib/types/index.d.ts",
@@ -13,29 +14,31 @@
13
14
  "default": "./lib/esm/index.js"
14
15
  },
15
16
  "scripts": {
16
- "build": "yarn run build:esm && yarn run build:cjs",
17
+ "build": "yarn barrels && yarn run build:esm && yarn run build:cjs",
17
18
  "build:cjs": "tsc --build tsconfig.compile.json",
18
19
  "build:esm": "tsc --build tsconfig.compile.esm.json",
20
+ "barrels": "yarn barrelsby --delete -d ./src -e \"\\.spec\\.ts\" -e \"__mock__\" -e \".benchmark.ts\"",
19
21
  "test": "cross-env NODE_ENV=test jest"
20
22
  },
21
23
  "dependencies": {
22
- "@tsed/core": "7.0.0-beta.1",
23
- "@tsed/di": "7.0.0-beta.1",
24
24
  "globby": "11.0.3",
25
25
  "normalize-path": "3.0.0",
26
- "tslib": "2.2.0"
26
+ "tslib": "2.3.1"
27
27
  },
28
28
  "devDependencies": {
29
- "@tsed/logger": "^6.0.0"
30
- },
31
- "peerDependencies": {
32
- "@tsed/logger": ">=6.0.0"
29
+ "@tsed/core": "7.0.0-beta.12",
30
+ "@tsed/di": "7.0.0-beta.12",
31
+ "@types/normalize-path": "^3.0.0"
33
32
  },
33
+ "peerDependencies": {},
34
34
  "repository": "https://github.com/tsedio/tsed",
35
35
  "bugs": {
36
36
  "url": "https://github.com/tsedio/tsed/issues"
37
37
  },
38
- "homepage": "https://github.com/tsedio/tsed/tree/alpha/packages/utils/components-scan",
38
+ "homepage": "https://github.com/tsedio/tsed/tree/beta/packages/third-parties/components-scan",
39
39
  "author": "Romain Lenzotti",
40
- "license": "MIT"
40
+ "license": "MIT",
41
+ "publishConfig": {
42
+ "tag": "beta"
43
+ }
41
44
  }
package/readme.md CHANGED
@@ -11,7 +11,8 @@
11
11
  [![npm version](https://badge.fury.io/js/%40tsed%2Fcommon.svg)](https://badge.fury.io/js/%40tsed%2Fcommon)
12
12
  [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)
13
13
  [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
14
- [![backers](https://opencollective.com/tsed/tiers/badge.svg)](https://opencollective.com/tsed)
14
+ [![github](https://img.shields.io/static/v1?label=Github%20sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86)](https://github.com/sponsors/romakita)
15
+ [![opencollective](https://img.shields.io/static/v1?label=OpenCollective%20sponsor&message=%E2%9D%A4&logo=OpenCollective&color=%23fe8e86)](https://opencollective.com/tsed)
15
16
 
16
17
  </div>
17
18
 
@@ -35,14 +36,12 @@ A package of Ts.ED framework. See website: https://tsed.io/
35
36
  npm install --save @tsed/components-scan
36
37
  ```
37
38
 
38
-
39
39
  ## Backers
40
40
 
41
41
  Thank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/tsed#backer)]
42
42
 
43
43
  <a href="https://opencollective.com/tsed#backers" target="_blank"><img src="https://opencollective.com/tsed/tiers/backer.svg?width=890"></a>
44
44
 
45
-
46
45
  ## Sponsors
47
46
 
48
47
  Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/tsed#sponsor)]
@@ -1,23 +1,12 @@
1
1
  {
2
2
  "extends": "./tsconfig.compile.json",
3
3
  "compilerOptions": {
4
- "baseUrl": ".",
4
+ "baseUrl": "./",
5
5
  "module": "ES2020",
6
6
  "rootDir": "src",
7
7
  "outDir": "./lib/esm",
8
8
  "declaration": true,
9
9
  "declarationDir": "./lib/types"
10
10
  },
11
- "exclude": [
12
- "node_modules",
13
- "test",
14
- "lib",
15
- "benchmark",
16
- "coverage",
17
- "spec",
18
- "**/*.benchmark.ts",
19
- "**/*.spec.ts",
20
- "keys",
21
- "jest.config.js"
22
- ]
11
+ "exclude": ["node_modules", "test", "lib", "benchmark", "coverage", "spec", "**/*.benchmark.ts", "**/*.spec.ts", "keys", "jest.config.js"]
23
12
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"Test1.js","sourceRoot":"","sources":["../../../src/data/Test1.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG,OAAO,CAAC;AAE9B,MAAa,KAAK;CAAG;AAArB,sBAAqB","sourcesContent":["export const value1 = \"value\";\n\nexport class Test1 {}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Test2.js","sourceRoot":"","sources":["../../../src/data/Test2.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG,OAAO,CAAC;AAE9B,MAAa,KAAK;CAAG;AAArB,sBAAqB","sourcesContent":["export const value2 = \"value\";\n\nexport class Test2 {}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Test1.js","sourceRoot":"","sources":["../../../src/data/Test1.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC;AAE9B,MAAM,OAAO,KAAK;CAAG","sourcesContent":["export const value1 = \"value\";\n\nexport class Test1 {}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Test2.js","sourceRoot":"","sources":["../../../src/data/Test2.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC;AAE9B,MAAM,OAAO,KAAK;CAAG","sourcesContent":["export const value2 = \"value\";\n\nexport class Test2 {}\n"]}