@depup/nestjs__core 11.2.3-depup.0 → 12.0.2-depup.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (361) hide show
  1. package/README.md +2 -2
  2. package/adapters/http-adapter.d.ts +372 -3
  3. package/adapters/http-adapter.js +135 -5
  4. package/adapters/index.d.ts +1 -1
  5. package/adapters/index.js +1 -4
  6. package/application-config.d.ts +13 -4
  7. package/application-config.js +34 -15
  8. package/changes.json +1 -1
  9. package/constants.d.ts +1 -1
  10. package/constants.js +10 -13
  11. package/discovery/discoverable-meta-host-collection.d.ts +3 -3
  12. package/discovery/discoverable-meta-host-collection.js +25 -20
  13. package/discovery/discovery-module.js +9 -12
  14. package/discovery/discovery-service.d.ts +4 -4
  15. package/discovery/discovery-service.js +17 -19
  16. package/discovery/index.d.ts +2 -2
  17. package/discovery/index.js +2 -5
  18. package/errors/exception-handler.js +3 -7
  19. package/errors/exceptions/circular-dependency.exception.d.ts +1 -1
  20. package/errors/exceptions/circular-dependency.exception.js +2 -6
  21. package/errors/exceptions/index.d.ts +9 -8
  22. package/errors/exceptions/index.js +9 -11
  23. package/errors/exceptions/invalid-class-module.exception.d.ts +1 -1
  24. package/errors/exceptions/invalid-class-module.exception.js +4 -8
  25. package/errors/exceptions/invalid-class-scope.exception.d.ts +2 -2
  26. package/errors/exceptions/invalid-class-scope.exception.js +6 -10
  27. package/errors/exceptions/invalid-class.exception.d.ts +1 -1
  28. package/errors/exceptions/invalid-class.exception.js +4 -8
  29. package/errors/exceptions/invalid-exception-filter.exception.d.ts +1 -1
  30. package/errors/exceptions/invalid-exception-filter.exception.js +4 -8
  31. package/errors/exceptions/invalid-middleware-configuration.exception.d.ts +1 -1
  32. package/errors/exceptions/invalid-middleware-configuration.exception.js +4 -8
  33. package/errors/exceptions/invalid-middleware.exception.d.ts +1 -1
  34. package/errors/exceptions/invalid-middleware.exception.js +4 -8
  35. package/errors/exceptions/invalid-module.exception.d.ts +1 -1
  36. package/errors/exceptions/invalid-module.exception.js +4 -8
  37. package/errors/exceptions/route-conflict.exception.d.ts +4 -0
  38. package/errors/exceptions/route-conflict.exception.js +7 -0
  39. package/errors/exceptions/runtime.exception.js +1 -5
  40. package/errors/exceptions/undefined-dependency.exception.d.ts +3 -3
  41. package/errors/exceptions/undefined-dependency.exception.js +4 -8
  42. package/errors/exceptions/undefined-forwardref.exception.d.ts +2 -2
  43. package/errors/exceptions/undefined-forwardref.exception.js +4 -8
  44. package/errors/exceptions/undefined-module.exception.d.ts +1 -1
  45. package/errors/exceptions/undefined-module.exception.js +4 -8
  46. package/errors/exceptions/unknown-dependencies.exception.d.ts +3 -3
  47. package/errors/exceptions/unknown-dependencies.exception.js +8 -8
  48. package/errors/exceptions/unknown-element.exception.d.ts +1 -1
  49. package/errors/exceptions/unknown-element.exception.js +2 -6
  50. package/errors/exceptions/unknown-export.exception.d.ts +1 -1
  51. package/errors/exceptions/unknown-export.exception.js +4 -8
  52. package/errors/exceptions/unknown-module.exception.d.ts +1 -1
  53. package/errors/exceptions/unknown-module.exception.js +2 -6
  54. package/errors/exceptions/unknown-request-mapping.exception.d.ts +1 -1
  55. package/errors/exceptions/unknown-request-mapping.exception.js +4 -8
  56. package/errors/exceptions-zone.js +6 -10
  57. package/errors/messages.d.ts +5 -2
  58. package/errors/messages.js +26 -32
  59. package/exceptions/base-exception-filter-context.d.ts +6 -7
  60. package/exceptions/base-exception-filter-context.js +13 -16
  61. package/exceptions/base-exception-filter.d.ts +4 -4
  62. package/exceptions/base-exception-filter.js +46 -23
  63. package/exceptions/exceptions-handler.d.ts +4 -4
  64. package/exceptions/exceptions-handler.js +8 -16
  65. package/exceptions/external-exception-filter-context.d.ts +8 -8
  66. package/exceptions/external-exception-filter-context.js +14 -18
  67. package/exceptions/external-exception-filter.d.ts +1 -1
  68. package/exceptions/external-exception-filter.js +4 -8
  69. package/exceptions/external-exceptions-handler.d.ts +3 -3
  70. package/exceptions/external-exceptions-handler.js +8 -16
  71. package/exceptions/index.d.ts +1 -1
  72. package/exceptions/index.js +1 -4
  73. package/guards/constants.js +1 -4
  74. package/guards/guards-consumer.d.ts +4 -3
  75. package/guards/guards-consumer.js +8 -12
  76. package/guards/guards-context-creator.d.ts +11 -10
  77. package/guards/guards-context-creator.js +18 -20
  78. package/guards/index.d.ts +3 -3
  79. package/guards/index.js +3 -6
  80. package/helpers/barrier.js +5 -5
  81. package/helpers/context-creator.d.ts +2 -2
  82. package/helpers/context-creator.js +3 -7
  83. package/helpers/context-id-factory.d.ts +1 -1
  84. package/helpers/context-id-factory.js +10 -14
  85. package/helpers/context-utils.d.ts +6 -3
  86. package/helpers/context-utils.js +7 -12
  87. package/helpers/execution-context-host.d.ts +3 -3
  88. package/helpers/execution-context-host.js +5 -6
  89. package/helpers/external-context-creator.d.ts +15 -18
  90. package/helpers/external-context-creator.js +54 -43
  91. package/helpers/external-proxy.d.ts +2 -2
  92. package/helpers/external-proxy.js +3 -7
  93. package/helpers/get-class-scope.d.ts +2 -2
  94. package/helpers/get-class-scope.js +3 -6
  95. package/helpers/handler-metadata-storage.d.ts +4 -4
  96. package/helpers/handler-metadata-storage.js +7 -15
  97. package/helpers/http-adapter-host.d.ts +1 -1
  98. package/helpers/http-adapter-host.js +6 -11
  99. package/helpers/index.d.ts +3 -3
  100. package/helpers/index.js +3 -6
  101. package/helpers/interfaces/external-handler-metadata.interface.d.ts +2 -2
  102. package/helpers/interfaces/external-handler-metadata.interface.js +1 -2
  103. package/helpers/interfaces/index.d.ts +2 -2
  104. package/helpers/interfaces/index.js +2 -5
  105. package/helpers/interfaces/params-metadata.interface.d.ts +1 -1
  106. package/helpers/interfaces/params-metadata.interface.js +1 -2
  107. package/helpers/is-durable.d.ts +1 -1
  108. package/helpers/is-durable.js +3 -6
  109. package/helpers/load-adapter.d.ts +1 -1
  110. package/helpers/load-adapter.js +5 -8
  111. package/helpers/messages.d.ts +1 -1
  112. package/helpers/messages.js +10 -20
  113. package/helpers/optional-require.d.ts +1 -1
  114. package/helpers/optional-require.js +2 -5
  115. package/helpers/rethrow.js +1 -5
  116. package/helpers/router-method-factory.d.ts +2 -2
  117. package/helpers/router-method-factory.js +21 -25
  118. package/helpers/safe-instance-decorator.js +3 -6
  119. package/hooks/before-app-shutdown.hook.d.ts +3 -3
  120. package/hooks/before-app-shutdown.hook.js +25 -23
  121. package/hooks/index.d.ts +5 -5
  122. package/hooks/index.js +5 -8
  123. package/hooks/on-app-bootstrap.hook.d.ts +3 -3
  124. package/hooks/on-app-bootstrap.hook.js +15 -22
  125. package/hooks/on-app-shutdown.hook.d.ts +3 -3
  126. package/hooks/on-app-shutdown.hook.js +25 -23
  127. package/hooks/on-module-destroy.hook.d.ts +3 -3
  128. package/hooks/on-module-destroy.hook.js +25 -23
  129. package/hooks/on-module-init.hook.d.ts +3 -3
  130. package/hooks/on-module-init.hook.js +15 -22
  131. package/hooks/utils/get-instances-grouped-by-hierarchy-level.d.ts +3 -0
  132. package/hooks/utils/get-instances-grouped-by-hierarchy-level.js +27 -0
  133. package/hooks/utils/get-sorted-hierarchy-levels.d.ts +1 -0
  134. package/hooks/utils/get-sorted-hierarchy-levels.js +7 -0
  135. package/index.d.ts +16 -16
  136. package/index.js +17 -26
  137. package/injector/abstract-instance-resolver.d.ts +6 -6
  138. package/injector/abstract-instance-resolver.js +7 -11
  139. package/injector/compiler.d.ts +2 -2
  140. package/injector/compiler.js +2 -5
  141. package/injector/constants.d.ts +1 -1
  142. package/injector/constants.js +2 -5
  143. package/injector/container.d.ts +13 -14
  144. package/injector/container.js +40 -40
  145. package/injector/helpers/is-debug-mode.util.d.ts +1 -0
  146. package/injector/helpers/is-debug-mode.util.js +3 -0
  147. package/injector/helpers/provider-classifier.d.ts +1 -1
  148. package/injector/helpers/provider-classifier.js +5 -10
  149. package/injector/helpers/silent-logger.js +9 -16
  150. package/injector/index.d.ts +6 -6
  151. package/injector/index.js +5 -8
  152. package/injector/injector.d.ts +7 -7
  153. package/injector/injector.js +104 -93
  154. package/injector/inquirer/index.d.ts +1 -1
  155. package/injector/inquirer/index.js +1 -4
  156. package/injector/inquirer/inquirer-constants.js +1 -4
  157. package/injector/inquirer/inquirer-providers.d.ts +1 -1
  158. package/injector/inquirer/inquirer-providers.js +5 -8
  159. package/injector/instance-links-host.d.ts +3 -3
  160. package/injector/instance-links-host.js +8 -11
  161. package/injector/instance-loader.d.ts +5 -5
  162. package/injector/instance-loader.js +17 -11
  163. package/injector/instance-wrapper.d.ts +8 -6
  164. package/injector/instance-wrapper.js +98 -81
  165. package/injector/internal-core-module/index.d.ts +1 -1
  166. package/injector/internal-core-module/index.js +1 -4
  167. package/injector/internal-core-module/internal-core-module-factory.d.ts +6 -6
  168. package/injector/internal-core-module/internal-core-module-factory.js +23 -27
  169. package/injector/internal-core-module/internal-core-module.d.ts +2 -2
  170. package/injector/internal-core-module/internal-core-module.js +17 -20
  171. package/injector/internal-providers-storage.d.ts +2 -2
  172. package/injector/internal-providers-storage.js +4 -9
  173. package/injector/lazy-module-loader/lazy-module-loader-options.interface.js +1 -2
  174. package/injector/lazy-module-loader/lazy-module-loader.d.ts +8 -8
  175. package/injector/lazy-module-loader/lazy-module-loader.js +36 -27
  176. package/injector/module-ref.d.ts +7 -7
  177. package/injector/module-ref.js +30 -35
  178. package/injector/module.d.ts +5 -5
  179. package/injector/module.js +97 -83
  180. package/injector/modules-container.d.ts +1 -1
  181. package/injector/modules-container.js +5 -12
  182. package/injector/opaque-key-factory/by-reference-module-opaque-key-factory.d.ts +2 -4
  183. package/injector/opaque-key-factory/by-reference-module-opaque-key-factory.js +6 -9
  184. package/injector/opaque-key-factory/deep-hashed-module-opaque-key-factory.d.ts +2 -3
  185. package/injector/opaque-key-factory/deep-hashed-module-opaque-key-factory.js +17 -22
  186. package/injector/opaque-key-factory/interfaces/module-opaque-key-factory.interface.d.ts +1 -3
  187. package/injector/opaque-key-factory/interfaces/module-opaque-key-factory.interface.js +1 -2
  188. package/injector/settlement-signal.js +5 -7
  189. package/injector/topology-tree/topology-tree.d.ts +1 -1
  190. package/injector/topology-tree/topology-tree.js +6 -9
  191. package/injector/topology-tree/tree-node.js +4 -6
  192. package/inspector/deterministic-uuid-registry.js +2 -6
  193. package/inspector/graph-inspector.d.ts +7 -7
  194. package/inspector/graph-inspector.js +10 -12
  195. package/inspector/index.d.ts +4 -4
  196. package/inspector/index.js +4 -7
  197. package/inspector/initialize-on-preview.allowlist.d.ts +1 -1
  198. package/inspector/initialize-on-preview.allowlist.js +2 -6
  199. package/inspector/interfaces/edge.interface.d.ts +1 -1
  200. package/inspector/interfaces/edge.interface.js +1 -2
  201. package/inspector/interfaces/enhancer-metadata-cache-entry.interface.d.ts +3 -3
  202. package/inspector/interfaces/enhancer-metadata-cache-entry.interface.js +1 -2
  203. package/inspector/interfaces/entrypoint.interface.d.ts +2 -2
  204. package/inspector/interfaces/entrypoint.interface.js +1 -2
  205. package/inspector/interfaces/extras.interface.d.ts +1 -1
  206. package/inspector/interfaces/extras.interface.js +1 -2
  207. package/inspector/interfaces/node.interface.d.ts +2 -2
  208. package/inspector/interfaces/node.interface.js +1 -2
  209. package/inspector/interfaces/serialized-graph-json.interface.d.ts +6 -6
  210. package/inspector/interfaces/serialized-graph-json.interface.js +1 -2
  211. package/inspector/interfaces/serialized-graph-metadata.interface.d.ts +1 -1
  212. package/inspector/interfaces/serialized-graph-metadata.interface.js +1 -2
  213. package/inspector/noop-graph-inspector.d.ts +1 -1
  214. package/inspector/noop-graph-inspector.js +2 -5
  215. package/inspector/partial-graph.host.d.ts +2 -2
  216. package/inspector/partial-graph.host.js +2 -5
  217. package/inspector/serialized-graph.d.ts +7 -7
  218. package/inspector/serialized-graph.js +35 -40
  219. package/inspector/uuid-factory.js +8 -12
  220. package/interceptors/index.d.ts +2 -2
  221. package/interceptors/index.js +2 -5
  222. package/interceptors/interceptors-consumer.d.ts +4 -3
  223. package/interceptors/interceptors-consumer.js +14 -18
  224. package/interceptors/interceptors-context-creator.d.ts +10 -9
  225. package/interceptors/interceptors-context-creator.js +18 -20
  226. package/interfaces/index.d.ts +2 -0
  227. package/interfaces/index.js +2 -0
  228. package/interfaces/module-definition.interface.d.ts +2 -2
  229. package/interfaces/module-definition.interface.js +1 -2
  230. package/interfaces/module-override.interface.d.ts +1 -1
  231. package/interfaces/module-override.interface.js +1 -2
  232. package/internal.d.ts +42 -0
  233. package/internal.js +50 -0
  234. package/metadata-scanner.d.ts +1 -1
  235. package/metadata-scanner.js +8 -14
  236. package/middleware/builder.d.ts +4 -4
  237. package/middleware/builder.js +82 -80
  238. package/middleware/container.d.ts +4 -4
  239. package/middleware/container.js +10 -13
  240. package/middleware/index.d.ts +1 -1
  241. package/middleware/index.js +1 -4
  242. package/middleware/middleware-module.d.ts +8 -9
  243. package/middleware/middleware-module.js +49 -46
  244. package/middleware/resolver.d.ts +3 -3
  245. package/middleware/resolver.js +3 -5
  246. package/middleware/route-info-path-extractor.d.ts +2 -2
  247. package/middleware/route-info-path-extractor.js +26 -25
  248. package/middleware/routes-mapper.d.ts +4 -3
  249. package/middleware/routes-mapper.js +22 -24
  250. package/middleware/utils.d.ts +3 -2
  251. package/middleware/utils.js +34 -45
  252. package/nest-application-context.d.ts +26 -11
  253. package/nest-application-context.js +79 -67
  254. package/nest-application.d.ts +19 -11
  255. package/nest-application.js +168 -65
  256. package/nest-factory.d.ts +4 -5
  257. package/nest-factory.js +61 -68
  258. package/package.json +17 -9
  259. package/pipes/index.d.ts +3 -3
  260. package/pipes/index.js +3 -6
  261. package/pipes/params-token-factory.d.ts +2 -2
  262. package/pipes/params-token-factory.js +5 -9
  263. package/pipes/pipes-consumer.d.ts +3 -7
  264. package/pipes/pipes-consumer.js +17 -18
  265. package/pipes/pipes-context-creator.d.ts +10 -9
  266. package/pipes/pipes-context-creator.js +18 -20
  267. package/repl/assign-to-object.util.js +1 -4
  268. package/repl/constants.js +1 -4
  269. package/repl/index.d.ts +1 -1
  270. package/repl/index.js +1 -4
  271. package/repl/native-functions/debug-repl-fn.d.ts +2 -2
  272. package/repl/native-functions/debug-repl-fn.js +14 -21
  273. package/repl/native-functions/get-repl-fn.d.ts +2 -2
  274. package/repl/native-functions/get-repl-fn.js +8 -15
  275. package/repl/native-functions/help-repl-fn.d.ts +2 -2
  276. package/repl/native-functions/help-repl-fn.js +13 -20
  277. package/repl/native-functions/index.d.ts +6 -6
  278. package/repl/native-functions/index.js +6 -9
  279. package/repl/native-functions/methods-repl-fn.d.ts +2 -2
  280. package/repl/native-functions/methods-repl-fn.js +12 -19
  281. package/repl/native-functions/resolve-repl-fn.d.ts +2 -2
  282. package/repl/native-functions/resolve-repl-fn.js +7 -14
  283. package/repl/native-functions/select-relp-fn.d.ts +2 -2
  284. package/repl/native-functions/select-relp-fn.js +7 -14
  285. package/repl/repl-context.d.ts +3 -3
  286. package/repl/repl-context.js +21 -23
  287. package/repl/repl-function.d.ts +3 -3
  288. package/repl/repl-function.js +5 -7
  289. package/repl/repl-logger.js +10 -14
  290. package/repl/repl-native-commands.js +1 -4
  291. package/repl/repl.d.ts +1 -1
  292. package/repl/repl.interfaces.d.ts +2 -2
  293. package/repl/repl.interfaces.js +1 -2
  294. package/repl/repl.js +17 -20
  295. package/router/index.d.ts +3 -3
  296. package/router/index.js +3 -8
  297. package/router/interfaces/exceptions-filter.interface.d.ts +3 -3
  298. package/router/interfaces/exceptions-filter.interface.js +1 -2
  299. package/router/interfaces/exclude-route-metadata.interface.d.ts +1 -1
  300. package/router/interfaces/exclude-route-metadata.interface.js +1 -2
  301. package/router/interfaces/index.d.ts +4 -1
  302. package/router/interfaces/index.js +4 -4
  303. package/router/interfaces/resolved-route.interface.d.ts +32 -0
  304. package/router/interfaces/resolved-route.interface.js +1 -0
  305. package/router/interfaces/resolver.interface.d.ts +5 -1
  306. package/router/interfaces/resolver.interface.js +1 -2
  307. package/router/interfaces/route-conflict.interface.d.ts +14 -0
  308. package/router/interfaces/route-conflict.interface.js +1 -0
  309. package/router/interfaces/route-params-factory.interface.d.ts +1 -1
  310. package/router/interfaces/route-params-factory.interface.js +1 -2
  311. package/router/interfaces/route-path-metadata.interface.d.ts +2 -2
  312. package/router/interfaces/route-path-metadata.interface.js +1 -2
  313. package/router/interfaces/route-resolution-options.interface.d.ts +24 -0
  314. package/router/interfaces/route-resolution-options.interface.js +1 -0
  315. package/router/interfaces/routes.interface.d.ts +1 -1
  316. package/router/interfaces/routes.interface.js +1 -2
  317. package/router/legacy-route-converter.js +3 -7
  318. package/router/paths-explorer.d.ts +4 -5
  319. package/router/paths-explorer.js +11 -15
  320. package/router/request/index.d.ts +1 -1
  321. package/router/request/index.js +1 -5
  322. package/router/request/request-constants.js +2 -5
  323. package/router/request/request-providers.d.ts +1 -1
  324. package/router/request/request-providers.js +5 -8
  325. package/router/route-conflict-detector.d.ts +71 -0
  326. package/router/route-conflict-detector.js +276 -0
  327. package/router/route-params-factory.d.ts +2 -2
  328. package/router/route-params-factory.js +15 -19
  329. package/router/route-path-factory.d.ts +4 -4
  330. package/router/route-path-factory.js +19 -22
  331. package/router/route-specificity-sorter.d.ts +23 -0
  332. package/router/route-specificity-sorter.js +59 -0
  333. package/router/router-exception-filters.d.ts +9 -9
  334. package/router/router-exception-filters.js +15 -18
  335. package/router/router-execution-context.d.ts +17 -20
  336. package/router/router-execution-context.js +62 -55
  337. package/router/router-explorer.d.ts +25 -18
  338. package/router/router-explorer.js +116 -73
  339. package/router/router-module.d.ts +4 -4
  340. package/router/router-module.js +21 -23
  341. package/router/router-proxy.d.ts +1 -1
  342. package/router/router-proxy.js +4 -8
  343. package/router/router-response-controller.d.ts +2 -2
  344. package/router/router-response-controller.js +23 -27
  345. package/router/routes-resolver.d.ts +13 -11
  346. package/router/routes-resolver.js +42 -55
  347. package/router/sse-stream.d.ts +2 -1
  348. package/router/sse-stream.js +29 -24
  349. package/router/utils/exclude-route.util.d.ts +1 -1
  350. package/router/utils/exclude-route.util.js +7 -12
  351. package/router/utils/flatten-route-paths.util.d.ts +2 -2
  352. package/router/utils/flatten-route-paths.util.js +4 -7
  353. package/router/utils/index.d.ts +2 -2
  354. package/router/utils/index.js +2 -5
  355. package/scanner.d.ts +11 -11
  356. package/scanner.js +66 -67
  357. package/services/index.d.ts +1 -1
  358. package/services/index.js +1 -4
  359. package/services/reflector.service.d.ts +1 -1
  360. package/services/reflector.service.js +9 -13
  361. package/tsconfig.build.json +1 -9
package/scanner.js CHANGED
@@ -1,27 +1,27 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DependenciesScanner = void 0;
4
- const constants_1 = require("@nestjs/common/constants");
5
- const interfaces_1 = require("@nestjs/common/interfaces");
6
- const shared_utils_1 = require("@nestjs/common/utils/shared.utils");
7
- const iterare_1 = require("iterare");
8
- const application_config_1 = require("./application-config");
9
- const constants_2 = require("./constants");
10
- const circular_dependency_exception_1 = require("./errors/exceptions/circular-dependency.exception");
11
- const invalid_class_module_exception_1 = require("./errors/exceptions/invalid-class-module.exception");
12
- const invalid_module_exception_1 = require("./errors/exceptions/invalid-module.exception");
13
- const undefined_module_exception_1 = require("./errors/exceptions/undefined-module.exception");
14
- const get_class_scope_1 = require("./helpers/get-class-scope");
15
- const internal_core_module_factory_1 = require("./injector/internal-core-module/internal-core-module-factory");
16
- const topology_tree_1 = require("./injector/topology-tree/topology-tree");
17
- const uuid_factory_1 = require("./inspector/uuid-factory");
18
- class DependenciesScanner {
19
- constructor(container, metadataScanner, graphInspector, applicationConfig = new application_config_1.ApplicationConfig()) {
1
+ import { iterate } from 'iterare';
2
+ import { ApplicationConfig } from './application-config.js';
3
+ import { APP_FILTER, APP_GUARD, APP_INTERCEPTOR, APP_PIPE, ENHANCER_TOKEN_TO_SUBTYPE_MAP, } from './constants.js';
4
+ import { CircularDependencyException } from './errors/exceptions/circular-dependency.exception.js';
5
+ import { InvalidClassModuleException } from './errors/exceptions/invalid-class-module.exception.js';
6
+ import { InvalidModuleException } from './errors/exceptions/invalid-module.exception.js';
7
+ import { UndefinedModuleException } from './errors/exceptions/undefined-module.exception.js';
8
+ import { getClassScope } from './helpers/get-class-scope.js';
9
+ import { InternalCoreModuleFactory } from './injector/internal-core-module/internal-core-module-factory.js';
10
+ import { TopologyTree } from './injector/topology-tree/topology-tree.js';
11
+ import { UuidFactory } from './inspector/uuid-factory.js';
12
+ import { CATCH_WATERMARK, CONTROLLER_WATERMARK, ENHANCER_KEY_TO_SUBTYPE_MAP, EXCEPTION_FILTERS_METADATA, GUARDS_METADATA, INJECTABLE_WATERMARK, INTERCEPTORS_METADATA, MODULE_METADATA, PIPES_METADATA, ROUTE_ARGS_METADATA, isFunction, isNil, isUndefined, } from '@nestjs/common/internal';
13
+ import { Scope, } from '@nestjs/common';
14
+ export class DependenciesScanner {
15
+ container;
16
+ metadataScanner;
17
+ graphInspector;
18
+ applicationConfig;
19
+ applicationProvidersApplyMap = [];
20
+ constructor(container, metadataScanner, graphInspector, applicationConfig = new ApplicationConfig()) {
20
21
  this.container = container;
21
22
  this.metadataScanner = metadataScanner;
22
23
  this.graphInspector = graphInspector;
23
24
  this.applicationConfig = applicationConfig;
24
- this.applicationProvidersApplyMap = [];
25
25
  }
26
26
  async scan(module, options) {
27
27
  await this.registerCoreModule(options?.overrides);
@@ -55,19 +55,19 @@ class DependenciesScanner {
55
55
  moduleDefinition = moduleDefinition.forwardRef();
56
56
  }
57
57
  const modules = !this.isDynamicModule(moduleDefinition)
58
- ? this.reflectMetadata(constants_1.MODULE_METADATA.IMPORTS, moduleDefinition)
58
+ ? this.reflectMetadata(MODULE_METADATA.IMPORTS, moduleDefinition)
59
59
  : [
60
- ...this.reflectMetadata(constants_1.MODULE_METADATA.IMPORTS, moduleDefinition.module),
60
+ ...this.reflectMetadata(MODULE_METADATA.IMPORTS, moduleDefinition.module),
61
61
  ...(moduleDefinition.imports || []),
62
62
  ];
63
63
  let registeredModuleRefs = [];
64
64
  for (const [index, innerModule] of modules.entries()) {
65
65
  // In case of a circular dependency (ES module system), JavaScript will resolve the type to `undefined`.
66
66
  if (innerModule === undefined) {
67
- throw new undefined_module_exception_1.UndefinedModuleException(moduleDefinition, index, scope);
67
+ throw new UndefinedModuleException(moduleDefinition, index, scope);
68
68
  }
69
69
  if (!innerModule) {
70
- throw new invalid_module_exception_1.InvalidModuleException(moduleDefinition, index, scope, innerModule);
70
+ throw new InvalidModuleException(moduleDefinition, index, scope, innerModule);
71
71
  }
72
72
  if (ctxRegistry.includes(innerModule)) {
73
73
  continue;
@@ -94,13 +94,13 @@ class DependenciesScanner {
94
94
  ? moduleDefinition.forwardRef()
95
95
  : moduleDefinition;
96
96
  if (this.isInjectable(moduleToAdd)) {
97
- throw new invalid_class_module_exception_1.InvalidClassModuleException(moduleDefinition, scope, 'provider');
97
+ throw new InvalidClassModuleException(moduleDefinition, scope, 'provider');
98
98
  }
99
99
  if (this.isController(moduleToAdd)) {
100
- throw new invalid_class_module_exception_1.InvalidClassModuleException(moduleDefinition, scope, 'controller');
100
+ throw new InvalidClassModuleException(moduleDefinition, scope, 'controller');
101
101
  }
102
102
  if (this.isExceptionFilter(moduleToAdd)) {
103
- throw new invalid_class_module_exception_1.InvalidClassModuleException(moduleDefinition, scope, 'filter');
103
+ throw new InvalidClassModuleException(moduleDefinition, scope, 'filter');
104
104
  }
105
105
  return this.container.addModule(moduleToAdd, scope);
106
106
  }
@@ -114,8 +114,8 @@ class DependenciesScanner {
114
114
  }
115
115
  async reflectImports(module, token, context) {
116
116
  const modules = [
117
- ...this.reflectMetadata(constants_1.MODULE_METADATA.IMPORTS, module),
118
- ...this.container.getDynamicMetadataByToken(token, constants_1.MODULE_METADATA.IMPORTS),
117
+ ...this.reflectMetadata(MODULE_METADATA.IMPORTS, module),
118
+ ...this.container.getDynamicMetadataByToken(token, MODULE_METADATA.IMPORTS),
119
119
  ];
120
120
  for (const related of modules) {
121
121
  await this.insertImport(related, token, context);
@@ -123,8 +123,8 @@ class DependenciesScanner {
123
123
  }
124
124
  reflectProviders(module, token) {
125
125
  const providers = [
126
- ...this.reflectMetadata(constants_1.MODULE_METADATA.PROVIDERS, module),
127
- ...this.container.getDynamicMetadataByToken(token, constants_1.MODULE_METADATA.PROVIDERS),
126
+ ...this.reflectMetadata(MODULE_METADATA.PROVIDERS, module),
127
+ ...this.container.getDynamicMetadataByToken(token, MODULE_METADATA.PROVIDERS),
128
128
  ];
129
129
  providers.forEach(provider => {
130
130
  this.insertProvider(provider, token);
@@ -133,8 +133,8 @@ class DependenciesScanner {
133
133
  }
134
134
  reflectControllers(module, token) {
135
135
  const controllers = [
136
- ...this.reflectMetadata(constants_1.MODULE_METADATA.CONTROLLERS, module),
137
- ...this.container.getDynamicMetadataByToken(token, constants_1.MODULE_METADATA.CONTROLLERS),
136
+ ...this.reflectMetadata(MODULE_METADATA.CONTROLLERS, module),
137
+ ...this.container.getDynamicMetadataByToken(token, MODULE_METADATA.CONTROLLERS),
138
138
  ];
139
139
  controllers.forEach(item => {
140
140
  this.insertController(item, token);
@@ -145,16 +145,16 @@ class DependenciesScanner {
145
145
  if (!cls || !cls.prototype) {
146
146
  return;
147
147
  }
148
- this.reflectInjectables(cls, token, constants_1.GUARDS_METADATA);
149
- this.reflectInjectables(cls, token, constants_1.INTERCEPTORS_METADATA);
150
- this.reflectInjectables(cls, token, constants_1.EXCEPTION_FILTERS_METADATA);
151
- this.reflectInjectables(cls, token, constants_1.PIPES_METADATA);
152
- this.reflectParamInjectables(cls, token, constants_1.ROUTE_ARGS_METADATA);
148
+ this.reflectInjectables(cls, token, GUARDS_METADATA);
149
+ this.reflectInjectables(cls, token, INTERCEPTORS_METADATA);
150
+ this.reflectInjectables(cls, token, EXCEPTION_FILTERS_METADATA);
151
+ this.reflectInjectables(cls, token, PIPES_METADATA);
152
+ this.reflectParamInjectables(cls, token, ROUTE_ARGS_METADATA);
153
153
  }
154
154
  reflectExports(module, token) {
155
155
  const exports = [
156
- ...this.reflectMetadata(constants_1.MODULE_METADATA.EXPORTS, module),
157
- ...this.container.getDynamicMetadataByToken(token, constants_1.MODULE_METADATA.EXPORTS),
156
+ ...this.reflectMetadata(MODULE_METADATA.EXPORTS, module),
157
+ ...this.container.getDynamicMetadataByToken(token, MODULE_METADATA.EXPORTS),
158
158
  ];
159
159
  exports.forEach(exportedProvider => this.insertExportedProviderOrModule(exportedProvider, token));
160
160
  }
@@ -169,9 +169,9 @@ class DependenciesScanner {
169
169
  }
170
170
  return acc;
171
171
  }, []);
172
- controllerInjectables.forEach(injectable => this.insertInjectable(injectable, token, component, constants_1.ENHANCER_KEY_TO_SUBTYPE_MAP[metadataKey]));
172
+ controllerInjectables.forEach(injectable => this.insertInjectable(injectable, token, component, ENHANCER_KEY_TO_SUBTYPE_MAP[metadataKey]));
173
173
  methodInjectables.forEach(methodInjectable => {
174
- methodInjectable.metadata.forEach(injectable => this.insertInjectable(injectable, token, component, constants_1.ENHANCER_KEY_TO_SUBTYPE_MAP[metadataKey], methodInjectable.methodKey));
174
+ methodInjectable.metadata.forEach(injectable => this.insertInjectable(injectable, token, component, ENHANCER_KEY_TO_SUBTYPE_MAP[metadataKey], methodInjectable.methodKey));
175
175
  });
176
176
  }
177
177
  reflectParamInjectables(component, token, metadataKey) {
@@ -215,7 +215,7 @@ class DependenciesScanner {
215
215
  return;
216
216
  }
217
217
  // Convert modules to an acyclic connected graph
218
- const tree = new topology_tree_1.TopologyTree(rootModule);
218
+ const tree = new TopologyTree(rootModule);
219
219
  tree.walk((moduleRef, depth) => {
220
220
  if (moduleRef.isGlobal) {
221
221
  return;
@@ -224,8 +224,8 @@ class DependenciesScanner {
224
224
  });
225
225
  }
226
226
  async insertImport(related, token, context) {
227
- if ((0, shared_utils_1.isUndefined)(related)) {
228
- throw new circular_dependency_exception_1.CircularDependencyException(context);
227
+ if (isUndefined(related)) {
228
+ throw new CircularDependencyException(context);
229
229
  }
230
230
  if (this.isForwardReference(related)) {
231
231
  return this.container.addImport(related.forwardRef(), token);
@@ -233,7 +233,7 @@ class DependenciesScanner {
233
233
  await this.container.addImport(related, token);
234
234
  }
235
235
  isCustomProvider(provider) {
236
- return provider && !(0, shared_utils_1.isNil)(provider.provide);
236
+ return provider && !isNil(provider.provide);
237
237
  }
238
238
  insertProvider(provider, token) {
239
239
  const isCustomProvider = this.isCustomProvider(provider);
@@ -246,11 +246,11 @@ class DependenciesScanner {
246
246
  if (!providersKeys.includes(type)) {
247
247
  return this.container.addProvider(provider, token);
248
248
  }
249
- const uuid = uuid_factory_1.UuidFactory.get(type.toString());
249
+ const uuid = UuidFactory.get(type.toString());
250
250
  const providerToken = `${type} (UUID: ${uuid})`;
251
251
  let scope = provider.scope;
252
- if ((0, shared_utils_1.isNil)(scope) && provider.useClass) {
253
- scope = (0, get_class_scope_1.getClassScope)(provider.useClass);
252
+ if (isNil(scope) && provider.useClass) {
253
+ scope = getClassScope(provider.useClass);
254
254
  }
255
255
  this.applicationProvidersApplyMap.push({
256
256
  type,
@@ -263,7 +263,7 @@ class DependenciesScanner {
263
263
  provide: providerToken,
264
264
  scope,
265
265
  };
266
- const enhancerSubtype = constants_2.ENHANCER_TOKEN_TO_SUBTYPE_MAP[type];
266
+ const enhancerSubtype = ENHANCER_TOKEN_TO_SUBTYPE_MAP[type];
267
267
  const factoryOrClassProvider = newProvider;
268
268
  if (this.isRequestOrTransient(factoryOrClassProvider.scope)) {
269
269
  return this.container.addInjectable(newProvider, token, enhancerSubtype);
@@ -271,7 +271,7 @@ class DependenciesScanner {
271
271
  this.container.addProvider(newProvider, token, enhancerSubtype);
272
272
  }
273
273
  insertInjectable(injectable, token, host, subtype, methodKey) {
274
- if ((0, shared_utils_1.isFunction)(injectable)) {
274
+ if (isFunction(injectable)) {
275
275
  const instanceWrapper = this.container.addInjectable(injectable, token, subtype, host);
276
276
  this.graphInspector.insertEnhancerMetadataCache({
277
277
  moduleToken: token,
@@ -327,7 +327,7 @@ class DependenciesScanner {
327
327
  return Reflect.getMetadata(metadataKey, metatype) || [];
328
328
  }
329
329
  async registerCoreModule(overrides) {
330
- const moduleDefinition = internal_core_module_factory_1.InternalCoreModuleFactory.create(this.container, this, this.container.getModuleCompiler(), this.container.getHttpAdapterHostRef(), this.graphInspector, overrides);
330
+ const moduleDefinition = InternalCoreModuleFactory.create(this.container, this, this.container.getModuleCompiler(), this.container.getHttpAdapterHostRef(), this.graphInspector, overrides);
331
331
  const [instance] = await this.scanForModules({
332
332
  moduleDefinition,
333
333
  overrides,
@@ -339,14 +339,14 @@ class DependenciesScanner {
339
339
  * to all controllers metadata storage
340
340
  */
341
341
  addScopedEnhancersMetadata() {
342
- (0, iterare_1.iterate)(this.applicationProvidersApplyMap)
342
+ iterate(this.applicationProvidersApplyMap)
343
343
  .filter(wrapper => this.isRequestOrTransient(wrapper.scope))
344
344
  .forEach(({ moduleKey, providerKey }) => {
345
345
  const modulesContainer = this.container.getModules();
346
346
  const { injectables } = modulesContainer.get(moduleKey);
347
347
  const instanceWrapper = injectables.get(providerKey);
348
348
  const iterableIterator = modulesContainer.values();
349
- (0, iterare_1.iterate)(iterableIterator)
349
+ iterate(iterableIterator)
350
350
  .map(moduleRef => Array.from(moduleRef.controllers.values()).concat(moduleRef.entryProviders))
351
351
  .flatten()
352
352
  .forEach(controllerOrEntryProvider => controllerOrEntryProvider.addEnhancerMetadata(instanceWrapper));
@@ -375,18 +375,18 @@ class DependenciesScanner {
375
375
  }
376
376
  getApplyProvidersMap() {
377
377
  return {
378
- [constants_2.APP_INTERCEPTOR]: (interceptor) => this.applicationConfig.addGlobalInterceptor(interceptor),
379
- [constants_2.APP_PIPE]: (pipe) => this.applicationConfig.addGlobalPipe(pipe),
380
- [constants_2.APP_GUARD]: (guard) => this.applicationConfig.addGlobalGuard(guard),
381
- [constants_2.APP_FILTER]: (filter) => this.applicationConfig.addGlobalFilter(filter),
378
+ [APP_INTERCEPTOR]: (interceptor) => this.applicationConfig.addGlobalInterceptor(interceptor),
379
+ [APP_PIPE]: (pipe) => this.applicationConfig.addGlobalPipe(pipe),
380
+ [APP_GUARD]: (guard) => this.applicationConfig.addGlobalGuard(guard),
381
+ [APP_FILTER]: (filter) => this.applicationConfig.addGlobalFilter(filter),
382
382
  };
383
383
  }
384
384
  getApplyRequestProvidersMap() {
385
385
  return {
386
- [constants_2.APP_INTERCEPTOR]: (interceptor) => this.applicationConfig.addGlobalRequestInterceptor(interceptor),
387
- [constants_2.APP_PIPE]: (pipe) => this.applicationConfig.addGlobalRequestPipe(pipe),
388
- [constants_2.APP_GUARD]: (guard) => this.applicationConfig.addGlobalRequestGuard(guard),
389
- [constants_2.APP_FILTER]: (filter) => this.applicationConfig.addGlobalRequestFilter(filter),
386
+ [APP_INTERCEPTOR]: (interceptor) => this.applicationConfig.addGlobalRequestInterceptor(interceptor),
387
+ [APP_PIPE]: (pipe) => this.applicationConfig.addGlobalRequestPipe(pipe),
388
+ [APP_GUARD]: (guard) => this.applicationConfig.addGlobalRequestGuard(guard),
389
+ [APP_FILTER]: (filter) => this.applicationConfig.addGlobalRequestFilter(filter),
390
390
  };
391
391
  }
392
392
  isDynamicModule(module) {
@@ -397,27 +397,26 @@ class DependenciesScanner {
397
397
  * @returns `true` if `metatype` is annotated with the `@Injectable()` decorator.
398
398
  */
399
399
  isInjectable(metatype) {
400
- return !!Reflect.getMetadata(constants_1.INJECTABLE_WATERMARK, metatype);
400
+ return !!Reflect.getMetadata(INJECTABLE_WATERMARK, metatype);
401
401
  }
402
402
  /**
403
403
  * @param metatype
404
404
  * @returns `true` if `metatype` is annotated with the `@Controller()` decorator.
405
405
  */
406
406
  isController(metatype) {
407
- return !!Reflect.getMetadata(constants_1.CONTROLLER_WATERMARK, metatype);
407
+ return !!Reflect.getMetadata(CONTROLLER_WATERMARK, metatype);
408
408
  }
409
409
  /**
410
410
  * @param metatype
411
411
  * @returns `true` if `metatype` is annotated with the `@Catch()` decorator.
412
412
  */
413
413
  isExceptionFilter(metatype) {
414
- return !!Reflect.getMetadata(constants_1.CATCH_WATERMARK, metatype);
414
+ return !!Reflect.getMetadata(CATCH_WATERMARK, metatype);
415
415
  }
416
416
  isForwardReference(module) {
417
417
  return module && !!module.forwardRef;
418
418
  }
419
419
  isRequestOrTransient(scope) {
420
- return scope === interfaces_1.Scope.REQUEST || scope === interfaces_1.Scope.TRANSIENT;
420
+ return scope === Scope.REQUEST || scope === Scope.TRANSIENT;
421
421
  }
422
422
  }
423
- exports.DependenciesScanner = DependenciesScanner;
@@ -1 +1 @@
1
- export * from './reflector.service';
1
+ export * from './reflector.service.js';
package/services/index.js CHANGED
@@ -1,4 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./reflector.service"), exports);
1
+ export * from './reflector.service.js';
@@ -1,4 +1,4 @@
1
- import { CustomDecorator, Type } from '@nestjs/common';
1
+ import { type CustomDecorator, type Type } from '@nestjs/common';
2
2
  /**
3
3
  * @publicApi
4
4
  */
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Reflector = void 0;
4
- const common_1 = require("@nestjs/common");
5
- const shared_utils_1 = require("@nestjs/common/utils/shared.utils");
6
- const uid_1 = require("uid");
1
+ import { SetMetadata } from '@nestjs/common';
2
+ import { uid } from 'uid';
3
+ import { isEmptyArray, isObject } from '@nestjs/common/internal';
7
4
  /**
8
5
  * Helper class providing Nest reflection capabilities.
9
6
  *
@@ -11,14 +8,14 @@ const uid_1 = require("uid");
11
8
  *
12
9
  * @publicApi
13
10
  */
14
- class Reflector {
11
+ export class Reflector {
15
12
  static createDecorator(options = {}) {
16
- const metadataKey = options.key ?? (0, uid_1.uid)(21);
13
+ const metadataKey = options.key ?? uid(21);
17
14
  const decoratorFn = (metadataValue) => (target, key, descriptor) => {
18
15
  const value = options.transform
19
16
  ? options.transform(metadataValue)
20
17
  : metadataValue;
21
- (0, common_1.SetMetadata)(metadataKey, value ?? {})(target, key, descriptor);
18
+ SetMetadata(metadataKey, value ?? {})(target, key, descriptor);
22
19
  };
23
20
  decoratorFn.KEY = metadataKey;
24
21
  return decoratorFn;
@@ -57,12 +54,12 @@ class Reflector {
57
54
  */
58
55
  getAllAndMerge(metadataKeyOrDecorator, targets) {
59
56
  const metadataCollection = this.getAll(metadataKeyOrDecorator, targets).filter(item => item !== undefined);
60
- if ((0, shared_utils_1.isEmpty)(metadataCollection)) {
57
+ if (isEmptyArray(metadataCollection)) {
61
58
  return metadataCollection;
62
59
  }
63
60
  if (metadataCollection.length === 1) {
64
61
  const value = metadataCollection[0];
65
- if ((0, shared_utils_1.isObject)(value)) {
62
+ if (isObject(value)) {
66
63
  return value;
67
64
  }
68
65
  return metadataCollection;
@@ -71,7 +68,7 @@ class Reflector {
71
68
  if (Array.isArray(a)) {
72
69
  return a.concat(b);
73
70
  }
74
- if ((0, shared_utils_1.isObject)(a) && (0, shared_utils_1.isObject)(b)) {
71
+ if (isObject(a) && isObject(b)) {
75
72
  return {
76
73
  ...a,
77
74
  ...b,
@@ -97,4 +94,3 @@ class Reflector {
97
94
  return undefined;
98
95
  }
99
96
  }
100
- exports.Reflector = Reflector;
@@ -2,15 +2,7 @@
2
2
  "extends": "../tsconfig.build.json",
3
3
  "compilerOptions": {
4
4
  "outDir": ".",
5
- "rootDir": ".",
6
- "paths": {
7
- "@nestjs/common": ["../common"],
8
- "@nestjs/common/*": ["../common/*"],
9
- "@nestjs/microservices": ["../microservices"],
10
- "@nestjs/microservices/*": ["../microservices/*"],
11
- "@nestjs/websockets": ["../websockets"],
12
- "@nestjs/websockets/*": ["../websockets/*"]
13
- }
5
+ "rootDir": "."
14
6
  },
15
7
  "exclude": ["node_modules", "dist", "test/**/*", "*.spec.ts"],
16
8
  "references": [