@nexus-ioc/core 0.6.1 → 0.7.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 (222) hide show
  1. package/README.md +731 -1
  2. package/dist/cjs/browser.js +2 -2
  3. package/dist/cjs/browser.js.map +1 -1
  4. package/dist/cjs/core/child-module.js +32 -0
  5. package/dist/cjs/core/child-module.js.map +1 -0
  6. package/dist/cjs/core/graph/analyze-lazy-module.js +54 -0
  7. package/dist/cjs/core/graph/analyze-lazy-module.js.map +1 -0
  8. package/dist/cjs/core/graph/analyze-module.js +11 -0
  9. package/dist/cjs/core/graph/analyze-module.js.map +1 -1
  10. package/dist/cjs/core/graph/module-graph.js +685 -70
  11. package/dist/cjs/core/graph/module-graph.js.map +1 -1
  12. package/dist/cjs/core/injection/injection-context.js +29 -0
  13. package/dist/cjs/core/injection/injection-context.js.map +1 -0
  14. package/dist/cjs/core/lazy-module-loader.js +41 -0
  15. package/dist/cjs/core/lazy-module-loader.js.map +1 -0
  16. package/dist/cjs/core/module-ref.js +84 -0
  17. package/dist/cjs/core/module-ref.js.map +1 -0
  18. package/dist/cjs/core/modules/container.js +305 -17
  19. package/dist/cjs/core/modules/container.js.map +1 -1
  20. package/dist/cjs/core/modules/module-container-factory.js +2 -2
  21. package/dist/cjs/core/modules/module-container-factory.js.map +1 -1
  22. package/dist/cjs/core/modules/module-container.js +54 -16
  23. package/dist/cjs/core/modules/module-container.js.map +1 -1
  24. package/dist/cjs/core/modules/module-token-factory.js.map +1 -1
  25. package/dist/cjs/core/modules/modules-container.js +43 -3
  26. package/dist/cjs/core/modules/modules-container.js.map +1 -1
  27. package/dist/cjs/core/nexus-applications.browser.js +57 -15
  28. package/dist/cjs/core/nexus-applications.browser.js.map +1 -1
  29. package/dist/cjs/core/nexus-applications.js +440 -82
  30. package/dist/cjs/core/nexus-applications.js.map +1 -1
  31. package/dist/cjs/core/nexus-applications.server.js +57 -15
  32. package/dist/cjs/core/nexus-applications.server.js.map +1 -1
  33. package/dist/cjs/core/resolver/providers-container.js.map +1 -1
  34. package/dist/cjs/core/resolver/resolution-context.js +62 -0
  35. package/dist/cjs/core/resolver/resolution-context.js.map +1 -0
  36. package/dist/cjs/core/resolver/resolver.js +523 -99
  37. package/dist/cjs/core/resolver/resolver.js.map +1 -1
  38. package/dist/cjs/decorators/inject.js +6 -3
  39. package/dist/cjs/decorators/inject.js.map +1 -1
  40. package/dist/cjs/decorators/injectable.js +0 -7
  41. package/dist/cjs/decorators/injectable.js.map +1 -1
  42. package/dist/cjs/decorators/{nsModule.js → module.js} +9 -7
  43. package/dist/cjs/decorators/module.js.map +1 -0
  44. package/dist/cjs/errors/bootstrap-error.js +47 -0
  45. package/dist/cjs/errors/bootstrap-error.js.map +1 -0
  46. package/dist/cjs/errors/child-errors.js +21 -0
  47. package/dist/cjs/errors/child-errors.js.map +1 -0
  48. package/dist/cjs/errors/index.js +24 -0
  49. package/dist/cjs/errors/index.js.map +1 -0
  50. package/dist/cjs/errors/injection-errors.js +25 -0
  51. package/dist/cjs/errors/injection-errors.js.map +1 -0
  52. package/dist/cjs/errors/lazy-module-errors.js +26 -0
  53. package/dist/cjs/errors/lazy-module-errors.js.map +1 -0
  54. package/dist/cjs/errors/provider-errors.js +95 -0
  55. package/dist/cjs/errors/provider-errors.js.map +1 -0
  56. package/dist/cjs/index.js +30 -6
  57. package/dist/cjs/index.js.map +1 -1
  58. package/dist/cjs/interfaces/index.js +1 -0
  59. package/dist/cjs/interfaces/index.js.map +1 -1
  60. package/dist/cjs/interfaces/modules/index.js +1 -0
  61. package/dist/cjs/interfaces/modules/index.js.map +1 -1
  62. package/dist/cjs/interfaces/modules/module-graph.interface.js +2 -0
  63. package/dist/cjs/interfaces/modules/module-graph.interface.js.map +1 -1
  64. package/dist/cjs/interfaces/modules/parent-link.interface.js +3 -0
  65. package/dist/cjs/interfaces/modules/parent-link.interface.js.map +1 -0
  66. package/dist/cjs/interfaces/on-module-destroy.interface.js +3 -0
  67. package/dist/cjs/interfaces/on-module-destroy.interface.js.map +1 -0
  68. package/dist/cjs/interfaces/scope.interface.js +2 -55
  69. package/dist/cjs/interfaces/scope.interface.js.map +1 -1
  70. package/dist/cjs/interfaces/validate-module-keys.js +2 -0
  71. package/dist/cjs/interfaces/validate-module-keys.js.map +1 -1
  72. package/dist/cjs/internal.js +9 -0
  73. package/dist/cjs/internal.js.map +1 -0
  74. package/dist/cjs/server.js +2 -2
  75. package/dist/cjs/server.js.map +1 -1
  76. package/dist/cjs/utils/forward-ref.js +14 -0
  77. package/dist/cjs/utils/forward-ref.js.map +1 -0
  78. package/dist/cjs/utils/helpers.js +14 -4
  79. package/dist/cjs/utils/helpers.js.map +1 -1
  80. package/dist/cjs/utils/lazy-module.js +33 -0
  81. package/dist/cjs/utils/lazy-module.js.map +1 -0
  82. package/dist/esm/browser.js +1 -1
  83. package/dist/esm/browser.js.map +1 -1
  84. package/dist/esm/core/child-module.js +29 -0
  85. package/dist/esm/core/child-module.js.map +1 -0
  86. package/dist/esm/core/graph/analyze-lazy-module.js +50 -0
  87. package/dist/esm/core/graph/analyze-lazy-module.js.map +1 -0
  88. package/dist/esm/core/graph/analyze-module.js +11 -0
  89. package/dist/esm/core/graph/analyze-module.js.map +1 -1
  90. package/dist/esm/core/graph/module-graph.js +686 -71
  91. package/dist/esm/core/graph/module-graph.js.map +1 -1
  92. package/dist/esm/core/injection/injection-context.js +25 -0
  93. package/dist/esm/core/injection/injection-context.js.map +1 -0
  94. package/dist/esm/core/lazy-module-loader.js +36 -0
  95. package/dist/esm/core/lazy-module-loader.js.map +1 -0
  96. package/dist/esm/core/module-ref.js +80 -0
  97. package/dist/esm/core/module-ref.js.map +1 -0
  98. package/dist/esm/core/modules/container.js +305 -17
  99. package/dist/esm/core/modules/container.js.map +1 -1
  100. package/dist/esm/core/modules/module-container-factory.js +2 -2
  101. package/dist/esm/core/modules/module-container-factory.js.map +1 -1
  102. package/dist/esm/core/modules/module-container.js +55 -17
  103. package/dist/esm/core/modules/module-container.js.map +1 -1
  104. package/dist/esm/core/modules/module-token-factory.js.map +1 -1
  105. package/dist/esm/core/modules/modules-container.js +43 -3
  106. package/dist/esm/core/modules/modules-container.js.map +1 -1
  107. package/dist/esm/core/nexus-applications.browser.js +55 -13
  108. package/dist/esm/core/nexus-applications.browser.js.map +1 -1
  109. package/dist/esm/core/nexus-applications.js +439 -81
  110. package/dist/esm/core/nexus-applications.js.map +1 -1
  111. package/dist/esm/core/nexus-applications.server.js +55 -13
  112. package/dist/esm/core/nexus-applications.server.js.map +1 -1
  113. package/dist/esm/core/resolver/providers-container.js.map +1 -1
  114. package/dist/esm/core/resolver/resolution-context.js +58 -0
  115. package/dist/esm/core/resolver/resolution-context.js.map +1 -0
  116. package/dist/esm/core/resolver/resolver.js +524 -100
  117. package/dist/esm/core/resolver/resolver.js.map +1 -1
  118. package/dist/esm/decorators/inject.js +6 -3
  119. package/dist/esm/decorators/inject.js.map +1 -1
  120. package/dist/esm/decorators/injectable.js +0 -7
  121. package/dist/esm/decorators/injectable.js.map +1 -1
  122. package/dist/esm/decorators/{nsModule.js → module.js} +8 -6
  123. package/dist/esm/decorators/module.js.map +1 -0
  124. package/dist/esm/errors/bootstrap-error.js +42 -0
  125. package/dist/esm/errors/bootstrap-error.js.map +1 -0
  126. package/dist/esm/errors/child-errors.js +17 -0
  127. package/dist/esm/errors/child-errors.js.map +1 -0
  128. package/dist/esm/errors/index.js +6 -0
  129. package/dist/esm/errors/index.js.map +1 -0
  130. package/dist/esm/errors/injection-errors.js +20 -0
  131. package/dist/esm/errors/injection-errors.js.map +1 -0
  132. package/dist/esm/errors/lazy-module-errors.js +21 -0
  133. package/dist/esm/errors/lazy-module-errors.js.map +1 -0
  134. package/dist/esm/errors/provider-errors.js +84 -0
  135. package/dist/esm/errors/provider-errors.js.map +1 -0
  136. package/dist/esm/index.js +9 -4
  137. package/dist/esm/index.js.map +1 -1
  138. package/dist/esm/interfaces/index.js +1 -0
  139. package/dist/esm/interfaces/index.js.map +1 -1
  140. package/dist/esm/interfaces/modules/index.js +1 -0
  141. package/dist/esm/interfaces/modules/index.js.map +1 -1
  142. package/dist/esm/interfaces/modules/module-graph.interface.js +2 -0
  143. package/dist/esm/interfaces/modules/module-graph.interface.js.map +1 -1
  144. package/dist/esm/interfaces/modules/parent-link.interface.js +2 -0
  145. package/dist/esm/interfaces/modules/parent-link.interface.js.map +1 -0
  146. package/dist/esm/interfaces/on-module-destroy.interface.js +2 -0
  147. package/dist/esm/interfaces/on-module-destroy.interface.js.map +1 -0
  148. package/dist/esm/interfaces/scope.interface.js +1 -55
  149. package/dist/esm/interfaces/scope.interface.js.map +1 -1
  150. package/dist/esm/interfaces/validate-module-keys.js +2 -0
  151. package/dist/esm/interfaces/validate-module-keys.js.map +1 -1
  152. package/dist/esm/internal.js +3 -0
  153. package/dist/esm/internal.js.map +1 -0
  154. package/dist/esm/server.js +1 -1
  155. package/dist/esm/server.js.map +1 -1
  156. package/dist/esm/utils/forward-ref.js +10 -0
  157. package/dist/esm/utils/forward-ref.js.map +1 -0
  158. package/dist/esm/utils/helpers.js +14 -4
  159. package/dist/esm/utils/helpers.js.map +1 -1
  160. package/dist/esm/utils/lazy-module.js +29 -0
  161. package/dist/esm/utils/lazy-module.js.map +1 -0
  162. package/dist/types/browser.d.ts +1 -1
  163. package/dist/types/core/child-module.d.ts +8 -0
  164. package/dist/types/core/graph/analyze-lazy-module.d.ts +28 -0
  165. package/dist/types/core/graph/analyze-module.d.ts +4 -2
  166. package/dist/types/core/graph/analyze-provider.d.ts +4 -4
  167. package/dist/types/core/graph/module-graph.d.ts +200 -7
  168. package/dist/types/core/graph/providers/analyze-class-provider.d.ts +1 -1
  169. package/dist/types/core/graph/providers/analyze-factory-provider.d.ts +2 -2
  170. package/dist/types/core/graph/providers/analyze-value-provider.d.ts +1 -1
  171. package/dist/types/core/injection/injection-context.d.ts +29 -0
  172. package/dist/types/core/lazy-module-loader.d.ts +17 -0
  173. package/dist/types/core/module-ref.d.ts +34 -0
  174. package/dist/types/core/modules/container.d.ts +134 -18
  175. package/dist/types/core/modules/module-container-factory.d.ts +3 -3
  176. package/dist/types/core/modules/module-container.d.ts +44 -5
  177. package/dist/types/core/modules/module-token-factory.d.ts +2 -2
  178. package/dist/types/core/modules/modules-container.d.ts +23 -4
  179. package/dist/types/core/nexus-applications.browser.d.ts +30 -8
  180. package/dist/types/core/nexus-applications.d.ts +219 -55
  181. package/dist/types/core/nexus-applications.server.d.ts +30 -8
  182. package/dist/types/core/resolver/providers-container.d.ts +2 -2
  183. package/dist/types/core/resolver/resolution-context.d.ts +22 -0
  184. package/dist/types/core/resolver/resolver.d.ts +122 -4
  185. package/dist/types/decorators/inject.d.ts +9 -5
  186. package/dist/types/decorators/injectable.d.ts +0 -7
  187. package/dist/types/decorators/{nsModule.d.ts → module.d.ts} +6 -5
  188. package/dist/types/errors/bootstrap-error.d.ts +6 -0
  189. package/dist/types/errors/child-errors.d.ts +10 -0
  190. package/dist/types/errors/index.d.ts +5 -0
  191. package/dist/types/errors/injection-errors.d.ts +11 -0
  192. package/dist/types/errors/lazy-module-errors.d.ts +12 -0
  193. package/dist/types/errors/provider-errors.d.ts +47 -0
  194. package/dist/types/index.d.ts +13 -4
  195. package/dist/types/interfaces/abstract.interface.d.ts +1 -3
  196. package/dist/types/interfaces/dynamic-module.interface.d.ts +7 -5
  197. package/dist/types/interfaces/index.d.ts +1 -0
  198. package/dist/types/interfaces/injection-token.interface.d.ts +1 -3
  199. package/dist/types/interfaces/module-metadata.interface.d.ts +12 -4
  200. package/dist/types/interfaces/module-types.interface.d.ts +21 -24
  201. package/dist/types/interfaces/modules/container.interface.d.ts +10 -4
  202. package/dist/types/interfaces/modules/index.d.ts +1 -0
  203. package/dist/types/interfaces/modules/module-container-factory.interface.d.ts +2 -2
  204. package/dist/types/interfaces/modules/module-graph.interface.d.ts +85 -12
  205. package/dist/types/interfaces/modules/module-token-factory.interface.d.ts +2 -2
  206. package/dist/types/interfaces/modules/modules-container.interface.d.ts +5 -4
  207. package/dist/types/interfaces/modules/parent-link.interface.d.ts +12 -0
  208. package/dist/types/interfaces/nexus-application.interface.d.ts +49 -6
  209. package/dist/types/interfaces/on-module-destroy.interface.d.ts +3 -0
  210. package/dist/types/interfaces/plugins/scanner-plugin.interface.d.ts +1 -1
  211. package/dist/types/interfaces/scope.interface.d.ts +1 -54
  212. package/dist/types/interfaces/validate-module-keys.d.ts +1 -0
  213. package/dist/types/internal.d.ts +3 -0
  214. package/dist/types/server.d.ts +1 -1
  215. package/dist/types/utils/forward-ref.d.ts +5 -0
  216. package/dist/types/utils/helpers.d.ts +8 -8
  217. package/dist/types/utils/lazy-module.d.ts +20 -0
  218. package/package.json +23 -7
  219. package/dist/cjs/decorators/nsModule.js.map +0 -1
  220. package/dist/esm/decorators/nsModule.js.map +0 -1
  221. package/dist/tsconfig.cjs.tsbuildinfo +0 -1
  222. package/dist/tsconfig.esm.tsbuildinfo +0 -1
@@ -1,59 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Scope = void 0;
4
- /**
5
- * Defines the lifecycle scope of a provider.
6
- *
7
- * The scope determines how instances are created and cached:
8
- *
9
- * - **Singleton**: One instance is created and shared across the entire application.
10
- * The instance is cached globally and reused for all requests.
11
- *
12
- * - **Request**: A new instance is created for each `container.get()` call, but
13
- * the same instance is reused within that call's dependency tree. This is useful
14
- * for request-scoped data in web applications.
15
- *
16
- * - **Transient**: A new instance is created every time the provider is injected,
17
- * even within the same dependency tree. No caching is performed.
18
- *
19
- * @example
20
- * ```typescript
21
- * // Singleton - shared across the application
22
- * @Injectable({ scope: Scope.Singleton })
23
- * class DatabaseConnection {
24
- * // Only one instance exists
25
- * }
26
- *
27
- * // Request - new instance per request
28
- * @Injectable({ scope: Scope.Request })
29
- * class RequestContext {
30
- * requestId = Math.random();
31
- * // Different requestId for each container.get() call
32
- * }
33
- *
34
- * // Transient - new instance every time
35
- * @Injectable({ scope: Scope.Transient })
36
- * class Logger {
37
- * timestamp = Date.now();
38
- * // Different timestamp for each injection
39
- * }
40
- * ```
41
- */
42
- var Scope;
43
- (function (Scope) {
44
- /**
45
- * Singleton scope - one instance shared across the entire application.
46
- * This is the default scope.
47
- */
48
- Scope[Scope["Singleton"] = 0] = "Singleton";
49
- /**
50
- * Request scope - new instance for each container.get() call,
51
- * but shared within that call's dependency tree.
52
- */
53
- Scope[Scope["Request"] = 1] = "Request";
54
- /**
55
- * Transient scope - new instance every time, no caching.
56
- */
57
- Scope[Scope["Transient"] = 2] = "Transient";
58
- })(Scope || (exports.Scope = Scope = {}));
4
+ var shared_1 = require("@nexus-ioc/shared");
5
+ Object.defineProperty(exports, "Scope", { enumerable: true, get: function () { return shared_1.Scope; } });
59
6
  //# sourceMappingURL=scope.interface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scope.interface.js","sourceRoot":"","sources":["../../../src/interfaces/scope.interface.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,IAAY,KAiBX;AAjBD,WAAY,KAAK;IAChB;;;OAGG;IACH,2CAAa,CAAA;IAEb;;;OAGG;IACH,uCAAW,CAAA;IAEX;;OAEG;IACH,2CAAa,CAAA;AACd,CAAC,EAjBW,KAAK,qBAAL,KAAK,QAiBhB"}
1
+ {"version":3,"file":"scope.interface.js","sourceRoot":"","sources":["../../../src/interfaces/scope.interface.ts"],"names":[],"mappings":";;;AAAA,4CAA0C;AAAjC,+FAAA,KAAK,OAAA"}
@@ -6,6 +6,7 @@ exports.MODULE_METADATA = {
6
6
  IMPORTS: "imports",
7
7
  PROVIDERS: "providers",
8
8
  EXPORTS: "exports",
9
+ CHILDREN: "children",
9
10
  };
10
11
  const INVALID_MODULE_CONFIG_MESSAGE = (_text, property) => `Invalid property '${property}' passed into the @Module() decorator.`;
11
12
  exports.INVALID_MODULE_CONFIG_MESSAGE = INVALID_MODULE_CONFIG_MESSAGE;
@@ -13,6 +14,7 @@ const metadataKeys = [
13
14
  exports.MODULE_METADATA.IMPORTS,
14
15
  exports.MODULE_METADATA.EXPORTS,
15
16
  exports.MODULE_METADATA.PROVIDERS,
17
+ exports.MODULE_METADATA.CHILDREN,
16
18
  ];
17
19
  function validateModuleKeys(keys) {
18
20
  const validateKey = (key) => {
@@ -1 +1 @@
1
- {"version":3,"file":"validate-module-keys.js","sourceRoot":"","sources":["../../../src/interfaces/validate-module-keys.ts"],"names":[],"mappings":";;;AAiBA,gDAQC;AAzBY,QAAA,eAAe,GAAG;IAC9B,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;CAClB,CAAC;AAEK,MAAM,6BAA6B,GAAG,CAC5C,KAA2B,EAC3B,QAAgB,EACf,EAAE,CAAC,qBAAqB,QAAQ,wCAAwC,CAAC;AAH9D,QAAA,6BAA6B,iCAGiC;AAE3E,MAAM,YAAY,GAAG;IACpB,uBAAe,CAAC,OAAO;IACvB,uBAAe,CAAC,OAAO;IACvB,uBAAe,CAAC,SAAS;CACzB,CAAC;AAEF,SAAgB,kBAAkB,CAAC,IAAc;IAChD,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE;QACnC,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO;QACR,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,IAAA,qCAA6B,EAAA,GAAG,GAAG,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC;IACF,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AAC3B,CAAC"}
1
+ {"version":3,"file":"validate-module-keys.js","sourceRoot":"","sources":["../../../src/interfaces/validate-module-keys.ts"],"names":[],"mappings":";;;AAmBA,gDAQC;AA3BY,QAAA,eAAe,GAAG;IAC9B,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;CACpB,CAAC;AAEK,MAAM,6BAA6B,GAAG,CAC5C,KAA2B,EAC3B,QAAgB,EACf,EAAE,CAAC,qBAAqB,QAAQ,wCAAwC,CAAC;AAH9D,QAAA,6BAA6B,iCAGiC;AAE3E,MAAM,YAAY,GAAG;IACpB,uBAAe,CAAC,OAAO;IACvB,uBAAe,CAAC,OAAO;IACvB,uBAAe,CAAC,SAAS;IACzB,uBAAe,CAAC,QAAQ;CACxB,CAAC;AAEF,SAAgB,kBAAkB,CAAC,IAAc;IAChD,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE;QACnC,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO;QACR,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,IAAA,qCAA6B,EAAA,GAAG,GAAG,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC;IACF,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AAC3B,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Container = exports.LazyModuleLoader = exports.createInternalModule = void 0;
4
+ var lazy_module_loader_1 = require("./core/lazy-module-loader");
5
+ Object.defineProperty(exports, "createInternalModule", { enumerable: true, get: function () { return lazy_module_loader_1.createInternalModule; } });
6
+ Object.defineProperty(exports, "LazyModuleLoader", { enumerable: true, get: function () { return lazy_module_loader_1.LazyModuleLoader; } });
7
+ var container_1 = require("./core/modules/container");
8
+ Object.defineProperty(exports, "Container", { enumerable: true, get: function () { return container_1.Container; } });
9
+ //# sourceMappingURL=internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/internal.ts"],"names":[],"mappings":";;;AAAA,gEAGmC;AAFlC,0HAAA,oBAAoB,OAAA;AACpB,sHAAA,gBAAgB,OAAA;AAEjB,sDAAqD;AAA5C,sGAAA,SAAS,OAAA"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NexusApplicationsServer = void 0;
3
+ exports.NexusApplicationServer = void 0;
4
4
  var nexus_applications_server_1 = require("./core/nexus-applications.server");
5
- Object.defineProperty(exports, "NexusApplicationsServer", { enumerable: true, get: function () { return nexus_applications_server_1.NexusApplicationsServer; } });
5
+ Object.defineProperty(exports, "NexusApplicationServer", { enumerable: true, get: function () { return nexus_applications_server_1.NexusApplicationServer; } });
6
6
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;;AAAA,8EAA2E;AAAlE,oIAAA,uBAAuB,OAAA"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;;AAAA,8EAA0E;AAAjE,mIAAA,sBAAsB,OAAA"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.forwardRef = forwardRef;
4
+ exports.isForwardRef = isForwardRef;
5
+ function forwardRef(fn) {
6
+ return { forwardRef: fn };
7
+ }
8
+ function isForwardRef(token) {
9
+ return (typeof token === "object" &&
10
+ token !== null &&
11
+ "forwardRef" in token &&
12
+ typeof token.forwardRef === "function");
13
+ }
14
+ //# sourceMappingURL=forward-ref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forward-ref.js","sourceRoot":"","sources":["../../../src/utils/forward-ref.ts"],"names":[],"mappings":";;AAIA,gCAEC;AAED,oCAOC;AAXD,SAAgB,UAAU,CAAc,EAAW;IAClD,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;AAC3B,CAAC;AAED,SAAgB,YAAY,CAAC,KAAc;IAC1C,OAAO,CACN,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,YAAY,IAAI,KAAK;QACrB,OAAQ,KAAoB,CAAC,UAAU,KAAK,UAAU,CACtD,CAAC;AACH,CAAC"}
@@ -14,6 +14,7 @@ exports.isGlobalModule = isGlobalModule;
14
14
  exports.getModuleLabel = getModuleLabel;
15
15
  exports.getProviderScope = getProviderScope;
16
16
  require("reflect-metadata");
17
+ const provider_errors_1 = require("../errors/provider-errors");
17
18
  const interfaces_1 = require("../interfaces");
18
19
  function isFunctionProvider(target) {
19
20
  return typeof target === "function";
@@ -62,17 +63,26 @@ function getModuleLabel(module) {
62
63
  return module.name;
63
64
  }
64
65
  function getProviderScope(target) {
66
+ const scope = declaredScope(target) ?? interfaces_1.Scope.Singleton;
67
+ if (scope !== interfaces_1.Scope.Singleton && scope !== interfaces_1.Scope.Transient) {
68
+ throw new provider_errors_1.InvalidScopeError(getProviderToken(target), scope);
69
+ }
70
+ return scope;
71
+ }
72
+ /** The scope a provider declares, or undefined when it declares none. */
73
+ function declaredScope(target) {
65
74
  if (isFactoryProvider(target)) {
66
- return target.scope || interfaces_1.Scope.Singleton;
75
+ return target.scope;
67
76
  }
68
77
  if (isClassProvider(target)) {
78
+ // A Singleton (0) on the class falls through to the provider object,
79
+ // so `{ useClass, scope: Scope.Transient }` overrides it.
69
80
  return (Reflect.getMetadata(interfaces_1.INJECTABLE_OPTIONS, target.useClass)?.scope ||
70
- target.scope ||
71
- interfaces_1.Scope.Singleton);
81
+ target.scope);
72
82
  }
73
83
  if (isValueProvider(target)) {
74
84
  return interfaces_1.Scope.Singleton;
75
85
  }
76
- return (Reflect.getMetadata(interfaces_1.INJECTABLE_OPTIONS, target)?.scope || interfaces_1.Scope.Singleton);
86
+ return Reflect.getMetadata(interfaces_1.INJECTABLE_OPTIONS, target)?.scope;
77
87
  }
78
88
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":";;AAgBA,gDAEC;AAED,4BAEC;AAED,0CAEC;AAED,0CAEC;AAED,0CAGC;AAED,8CAEC;AAED,4CAMC;AAED,gCAEC;AAED,gDAMC;AAED,0CAIC;AAED,wCAEC;AAED,wCAMC;AAED,4CAoBC;AAnGD,4BAA0B;AAC1B,8CAauB;AAEvB,SAAgB,kBAAkB,CAAC,MAAgB;IAClD,OAAO,OAAO,MAAM,KAAK,UAAU,CAAC;AACrC,CAAC;AAED,SAAgB,QAAQ,CAAC,MAA+B;IACvD,OAAO,OAAO,MAAM,KAAK,UAAU,CAAC;AACrC,CAAC;AAED,SAAgB,eAAe,CAAC,MAAsB;IACrD,OAAO,OAAO,MAAM,KAAK,UAAU,CAAC;AACrC,CAAC;AAED,SAAgB,eAAe,CAAC,MAAgB;IAC/C,OAAO,CAAC,CAAE,MAAwB,CAAC,QAAQ,CAAC;AAC7C,CAAC;AAED,SAAgB,eAAe,CAAC,MAAgB;IAC/C,2EAA2E;IAC3E,OAAO,UAAU,IAAK,MAAiB,CAAC;AACzC,CAAC;AAED,SAAgB,iBAAiB,CAAC,MAAgB;IACjD,OAAO,CAAC,CAAE,MAA0B,CAAC,UAAU,CAAC;AACjD,CAAC;AAED,SAAgB,gBAAgB,CAAC,MAAgB;IAChD,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IACf,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC;AACvB,CAAC;AAED,SAAgB,UAAU,CAAC,QAAkB;IAC5C,OAAO,OAAO,CAAC,WAAW,CAAC,iCAAoB,EAAE,QAAQ,CAAC,IAAI,KAAK,CAAC;AACrE,CAAC;AAED,SAAgB,kBAAkB,CAAC,MAAgB;IAClD,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IACf,CAAC;IAED,OAAO,MAAmC,CAAC;AAC5C,CAAC;AAED,SAAgB,eAAe,CAC9B,MAA8B;IAE9B,OAAO,QAAQ,IAAI,MAAM,CAAC;AAC3B,CAAC;AAED,SAAgB,cAAc,CAAC,MAAc;IAC5C,OAAO,OAAO,CAAC,WAAW,CAAC,oCAAuB,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;AACtE,CAAC;AAED,SAAgB,cAAc,CAAC,MAA8B;IAC5D,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC;AACpB,CAAC;AAED,SAAgB,gBAAgB,CAAC,MAAgB;IAChD,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC,KAAK,IAAI,kBAAK,CAAC,SAAS,CAAC;IACxC,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,CACN,OAAO,CAAC,WAAW,CAAC,+BAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,KAAK;YAC/D,MAAM,CAAC,KAAK;YACZ,kBAAK,CAAC,SAAS,CACf,CAAC;IACH,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,kBAAK,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,OAAO,CACN,OAAO,CAAC,WAAW,CAAC,+BAAkB,EAAE,MAAM,CAAC,EAAE,KAAK,IAAI,kBAAK,CAAC,SAAS,CACzE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":";;AAgBA,gDAEC;AAED,4BAEC;AAED,0CAEC;AAED,0CAEC;AAED,0CAGC;AAED,8CAEC;AAED,4CAMC;AAED,gCAEC;AAED,gDAMC;AAED,0CAIC;AAED,wCAEC;AAED,wCAMC;AAED,4CAMC;AArFD,4BAA0B;AAC1B,+DAA8D;AAC9D,8CAYuB;AAEvB,SAAgB,kBAAkB,CAAC,MAAgB;IAClD,OAAO,OAAO,MAAM,KAAK,UAAU,CAAC;AACrC,CAAC;AAED,SAAgB,QAAQ,CAAC,MAA4B;IACpD,OAAO,OAAO,MAAM,KAAK,UAAU,CAAC;AACrC,CAAC;AAED,SAAgB,eAAe,CAAC,MAAqB;IACpD,OAAO,OAAO,MAAM,KAAK,UAAU,CAAC;AACrC,CAAC;AAED,SAAgB,eAAe,CAAC,MAAgB;IAC/C,OAAO,CAAC,CAAE,MAAwB,CAAC,QAAQ,CAAC;AAC7C,CAAC;AAED,SAAgB,eAAe,CAAC,MAAgB;IAC/C,2EAA2E;IAC3E,OAAO,UAAU,IAAK,MAAiB,CAAC;AACzC,CAAC;AAED,SAAgB,iBAAiB,CAAC,MAAgB;IACjD,OAAO,CAAC,CAAE,MAA0B,CAAC,UAAU,CAAC;AACjD,CAAC;AAED,SAAgB,gBAAgB,CAAC,MAAgB;IAChD,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IACf,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC;AACvB,CAAC;AAED,SAAgB,UAAU,CAAC,QAAkB;IAC5C,OAAO,OAAO,CAAC,WAAW,CAAC,iCAAoB,EAAE,QAAQ,CAAC,IAAI,KAAK,CAAC;AACrE,CAAC;AAED,SAAgB,kBAAkB,CAAC,MAAgB;IAClD,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IACf,CAAC;IAED,OAAO,MAAkC,CAAC;AAC3C,CAAC;AAED,SAAgB,eAAe,CAC9B,MAA4B;IAE5B,OAAO,QAAQ,IAAI,MAAM,CAAC;AAC3B,CAAC;AAED,SAAgB,cAAc,CAAC,MAAY;IAC1C,OAAO,OAAO,CAAC,WAAW,CAAC,oCAAuB,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;AACtE,CAAC;AAED,SAAgB,cAAc,CAAC,MAA4B;IAC1D,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC;AACpB,CAAC;AAED,SAAgB,gBAAgB,CAAC,MAAgB;IAChD,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,kBAAK,CAAC,SAAS,CAAC;IACvD,IAAI,KAAK,KAAK,kBAAK,CAAC,SAAS,IAAI,KAAK,KAAK,kBAAK,CAAC,SAAS,EAAE,CAAC;QAC5D,MAAM,IAAI,mCAAiB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,yEAAyE;AACzE,SAAS,aAAa,CAAC,MAAgB;IACtC,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC,KAAK,CAAC;IACrB,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,qEAAqE;QACrE,0DAA0D;QAC1D,OAAO,CACN,OAAO,CAAC,WAAW,CAAC,+BAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,KAAK;YAC/D,MAAM,CAAC,KAAK,CACZ,CAAC;IACH,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,kBAAK,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,OAAO,OAAO,CAAC,WAAW,CAAC,+BAAkB,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC;AAC/D,CAAC"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.lazy = lazy;
4
+ exports.isLazyModule = isLazyModule;
5
+ /**
6
+ * Declares a lazily loaded module import.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * export const FeatureLazy = lazy(() =>
11
+ * import("./feature/feature.module").then((m) => m.FeatureModule),
12
+ * );
13
+ *
14
+ * @Module({ imports: [CoreModule, FeatureLazy] })
15
+ * class AppModule {}
16
+ * ```
17
+ */
18
+ function lazy(loader, options = {}) {
19
+ const name = options.name ?? "LazyModule";
20
+ return Object.freeze({
21
+ id: Symbol(name),
22
+ name,
23
+ load: loader,
24
+ });
25
+ }
26
+ function isLazyModule(value) {
27
+ return (typeof value === "object" &&
28
+ value !== null &&
29
+ typeof value.id === "symbol" &&
30
+ typeof value.load === "function" &&
31
+ typeof value.name === "string");
32
+ }
33
+ //# sourceMappingURL=lazy-module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lazy-module.js","sourceRoot":"","sources":["../../../src/utils/lazy-module.ts"],"names":[],"mappings":";;AAoBA,oBAUC;AAED,oCAQC;AAjCD;;;;;;;;;;;;GAYG;AACH,SAAgB,IAAI,CACnB,MAAwC,EACxC,UAA6B,EAAE;IAE/B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,YAAY,CAAC;IAC1C,OAAO,MAAM,CAAC,MAAM,CAAC;QACpB,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC;QAChB,IAAI;QACJ,IAAI,EAAE,MAAM;KACZ,CAAC,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY,CAAC,KAAc;IAC1C,OAAO,CACN,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,OAAQ,KAAoB,CAAC,EAAE,KAAK,QAAQ;QAC5C,OAAQ,KAAoB,CAAC,IAAI,KAAK,UAAU;QAChD,OAAQ,KAAoB,CAAC,IAAI,KAAK,QAAQ,CAC9C,CAAC;AACH,CAAC"}
@@ -1,2 +1,2 @@
1
- export { NexusApplicationsBrowser } from "./core/nexus-applications.browser.js";
1
+ export { NexusApplicationBrowser } from "./core/nexus-applications.browser.js";
2
2
  //# sourceMappingURL=browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC"}
@@ -0,0 +1,29 @@
1
+ import "reflect-metadata";
2
+ import { MODULE_METADATA, } from "../interfaces/index.js";
3
+ import { isDynamicModule } from "../utils/helpers.js";
4
+ /**
5
+ * Returns `module` with `providers` appended to its root providers, as a
6
+ * `DynamicModule`. A `Type` keeps its decorator imports and exports. Returns
7
+ * `module` itself when there is nothing to add.
8
+ */
9
+ export function withExtraProviders(module, providers) {
10
+ if (!providers || providers.length === 0) {
11
+ return module;
12
+ }
13
+ if (isDynamicModule(module)) {
14
+ return {
15
+ ...module,
16
+ providers: [...(module.providers ?? []), ...providers],
17
+ };
18
+ }
19
+ return {
20
+ module,
21
+ imports: Reflect.getMetadata(MODULE_METADATA.IMPORTS, module) ?? [],
22
+ providers: [
23
+ ...(Reflect.getMetadata(MODULE_METADATA.PROVIDERS, module) ?? []),
24
+ ...providers,
25
+ ],
26
+ exports: Reflect.getMetadata(MODULE_METADATA.EXPORTS, module) ?? [],
27
+ };
28
+ }
29
+ //# sourceMappingURL=child-module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"child-module.js","sourceRoot":"","sources":["../../../src/core/child-module.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAEN,eAAe,GAGf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CACjC,MAA4B,EAC5B,SAAiC;IAEjC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1C,OAAO,MAAM,CAAC;IACf,CAAC;IACD,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO;YACN,GAAG,MAAM;YACT,SAAS,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC;SACtD,CAAC;IACH,CAAC;IACD,OAAO;QACN,MAAM;QACN,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE;QACnE,SAAS,EAAE;YACV,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YACjE,GAAG,SAAS;SACZ;QACD,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE;KACnE,CAAC;AACH,CAAC"}
@@ -0,0 +1,50 @@
1
+ import { NodeTypeEnum } from "../../interfaces/index.js";
2
+ /**
3
+ * Placeholder graph node for a `lazy()` import. It carries no providers.
4
+ * `isProviderExported` never looks through it, so eager providers cannot
5
+ * depend on anything the lazy module will provide.
6
+ */
7
+ export class AnalyzeLazyModule {
8
+ constructor(_lazyModule) {
9
+ this._lazyModule = _lazyModule;
10
+ this._loaded = false;
11
+ this._moduleToken = null;
12
+ }
13
+ get type() {
14
+ return NodeTypeEnum.LAZY;
15
+ }
16
+ get id() {
17
+ return this._lazyModule.id;
18
+ }
19
+ get label() {
20
+ return this._lazyModule.name;
21
+ }
22
+ get lazyModule() {
23
+ return this._lazyModule;
24
+ }
25
+ get loaded() {
26
+ return this._loaded;
27
+ }
28
+ /** Token of the real module node once loaded; null before. */
29
+ get moduleToken() {
30
+ return this._moduleToken;
31
+ }
32
+ markLoaded(moduleToken) {
33
+ this._loaded = true;
34
+ this._moduleToken = moduleToken;
35
+ }
36
+ markUnloaded() {
37
+ this._loaded = false;
38
+ this._moduleToken = null;
39
+ }
40
+ get node() {
41
+ return {
42
+ type: this.type,
43
+ id: this.id,
44
+ label: this.label,
45
+ loaded: this.loaded,
46
+ moduleToken: this.moduleToken,
47
+ };
48
+ }
49
+ }
50
+ //# sourceMappingURL=analyze-lazy-module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze-lazy-module.js","sourceRoot":"","sources":["../../../../src/core/graph/analyze-lazy-module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEjE;;;;GAIG;AACH,MAAM,OAAO,iBAAiB;IAI7B,YAA6B,WAAuB;QAAvB,gBAAW,GAAX,WAAW,CAAY;QAH5C,YAAO,GAAG,KAAK,CAAC;QAChB,iBAAY,GAAkB,IAAI,CAAC;IAEY,CAAC;IAExD,IAAW,IAAI;QACd,OAAO,YAAY,CAAC,IAAI,CAAC;IAC1B,CAAC;IAED,IAAW,EAAE;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;IAC5B,CAAC;IAED,IAAW,KAAK;QACf,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IAC9B,CAAC;IAED,IAAW,UAAU;QACpB,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,IAAW,MAAM;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,8DAA8D;IAC9D,IAAW,WAAW;QACrB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,WAAmB;QACpC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACjC,CAAC;IAEM,YAAY;QAClB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,IAAW,IAAI;QACd,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,WAAW,EAAE,IAAI,CAAC,WAAW;SAC7B,CAAC;IACH,CAAC;CACD"}
@@ -55,6 +55,17 @@ export class AnalyzeModule {
55
55
  });
56
56
  });
57
57
  }
58
+ get lazyImports() {
59
+ return this._module.lazyImports;
60
+ }
61
+ get lazyEdges() {
62
+ return this.lazyImports.map((lazyModule) => ({
63
+ type: EdgeTypeEnum.LAZY,
64
+ source: this.id,
65
+ target: lazyModule.id,
66
+ metadata: { isCircular: false, unreached: false },
67
+ }));
68
+ }
58
69
  get providers() {
59
70
  return [...this._module.providers];
60
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"analyze-module.js","sourceRoot":"","sources":["../../../../src/core/graph/analyze-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyze-module.js","sourceRoot":"","sources":["../../../../src/core/graph/analyze-module.ts"],"names":[],"mappings":"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"}