@venok/core 1.0.1-canary.5 → 2.0.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 (579) hide show
  1. package/dist/application/config.js +92 -0
  2. package/dist/application/context.js +252 -0
  3. package/dist/application/factory.js +136 -0
  4. package/dist/constants.js +100 -0
  5. package/dist/context/context-id.factory.js +58 -0
  6. package/dist/context/context.js +186 -0
  7. package/dist/context/creator.js +49 -0
  8. package/dist/context/execution-host.js +51 -0
  9. package/dist/context/proxy.js +55 -0
  10. package/dist/decorators/apply.decorator.js +33 -0
  11. package/dist/decorators/bind.decorator.js +28 -0
  12. package/dist/decorators/catch.decorator.js +29 -0
  13. package/dist/decorators/dependencies.decorator.js +30 -0
  14. package/dist/decorators/exception-filters.decorator.js +40 -0
  15. package/dist/decorators/global.decorator.js +28 -0
  16. package/dist/decorators/inject.decorator.js +42 -0
  17. package/dist/decorators/injectable.decorator.js +38 -0
  18. package/dist/decorators/module.decorator.js +42 -0
  19. package/dist/decorators/optional.decorator.js +35 -0
  20. package/dist/decorators/set-metadata.decorator.js +35 -0
  21. package/dist/decorators/use-guards.decorator.js +39 -0
  22. package/dist/decorators/use-interceptors.decorator.js +39 -0
  23. package/dist/decorators/use-pipes.decorator.js +38 -0
  24. package/dist/enums/scope.enum.js +28 -0
  25. package/dist/enums/shutdown-signal.enum.js +36 -0
  26. package/dist/errors/exceptions/circular-dependency.exception.js +30 -0
  27. package/dist/errors/exceptions/invalid-class-module.exception.js +30 -0
  28. package/dist/errors/exceptions/invalid-class-scope.exception.js +33 -0
  29. package/dist/errors/exceptions/invalid-class.exception.js +30 -0
  30. package/dist/errors/exceptions/invalid-exception-filter.exception.js +30 -0
  31. package/dist/errors/exceptions/invalid-module.exception.js +30 -0
  32. package/dist/errors/exceptions/runtime.exception.js +30 -0
  33. package/dist/errors/exceptions/undefined-dependency.exception.js +30 -0
  34. package/dist/errors/exceptions/undefined-forwardref.exception.js +30 -0
  35. package/dist/errors/exceptions/undefined-module.exception.js +30 -0
  36. package/dist/errors/exceptions/unknown-dependencies.exception.js +38 -0
  37. package/dist/errors/exceptions/unknown-element.exception.js +31 -0
  38. package/dist/errors/exceptions/unknown-export.exception.js +30 -0
  39. package/dist/errors/exceptions/unknown-module.exception.js +29 -0
  40. package/dist/errors/messages.js +134 -0
  41. package/dist/exceptions/handler.js +53 -0
  42. package/dist/exceptions/zone/handler.js +30 -0
  43. package/dist/exceptions/zone/zone.js +49 -0
  44. package/dist/filters/context-creator.js +65 -0
  45. package/dist/filters/context.js +58 -0
  46. package/dist/filters/filter.js +36 -0
  47. package/dist/guards/consumer.js +54 -0
  48. package/dist/guards/context-creator.js +76 -0
  49. package/dist/helpers/color.helper.js +35 -0
  50. package/dist/helpers/context-id-factory.helper.js +25 -0
  51. package/dist/helpers/context.helper.js +65 -0
  52. package/dist/helpers/create-param-decorator.helper.js +73 -0
  53. package/dist/helpers/filter-log-levels.util.js +38 -0
  54. package/dist/helpers/flatten.helper.js +26 -0
  55. package/dist/helpers/is-log-level-enabled.util.js +39 -0
  56. package/dist/helpers/is-log-level.util.js +26 -0
  57. package/dist/helpers/messages.helper.js +23 -0
  58. package/dist/helpers/metadata.helper.js +51 -0
  59. package/dist/helpers/noop.helper.js +23 -0
  60. package/dist/helpers/random-string-generator.helper.js +24 -0
  61. package/dist/helpers/rethrow.helper.js +25 -0
  62. package/dist/helpers/shared.helper.js +49 -0
  63. package/dist/helpers/silent.helper.js +34 -0
  64. package/dist/helpers/transient.helper.js +30 -0
  65. package/dist/helpers/uuid.helper.js +60 -0
  66. package/dist/helpers/validate-each.helper.js +42 -0
  67. package/dist/hooks/before-app-shutdown.hook.js +43 -0
  68. package/dist/hooks/on-app-bootstrap.hook.js +43 -0
  69. package/dist/hooks/on-app-shutdown.hook.js +43 -0
  70. package/dist/hooks/on-module-destroy.hook.js +43 -0
  71. package/dist/hooks/on-module-init.hook.js +43 -0
  72. package/dist/index.d.ts +3142 -0
  73. package/dist/index.js +115 -0
  74. package/dist/injector/constants.js +28 -0
  75. package/dist/injector/container.js +229 -0
  76. package/dist/injector/helpers/barrier.js +48 -0
  77. package/dist/injector/helpers/class-scope.helper.js +27 -0
  78. package/dist/injector/helpers/classifier.helper.js +35 -0
  79. package/dist/injector/helpers/is-durable.helper.js +27 -0
  80. package/dist/injector/injector.js +490 -0
  81. package/dist/injector/instance/links-host.js +68 -0
  82. package/dist/injector/instance/loader.js +95 -0
  83. package/dist/injector/instance/resolver.js +61 -0
  84. package/dist/injector/instance/wrapper.js +324 -0
  85. package/dist/injector/internal-core-module/core-providers.js +42 -0
  86. package/dist/injector/internal-core-module/internal-core-module-factory.js +66 -0
  87. package/dist/injector/internal-core-module/internal-core-module.js +46 -0
  88. package/dist/injector/module/compiler.js +47 -0
  89. package/dist/injector/module/container.js +33 -0
  90. package/dist/injector/module/lazy/loader.js +71 -0
  91. package/dist/injector/module/module.js +395 -0
  92. package/dist/injector/module/ref.js +78 -0
  93. package/dist/injector/module/token-factory.js +82 -0
  94. package/dist/injector/settlement-signal.js +50 -0
  95. package/dist/injector/topology-tree/topology-tree.js +68 -0
  96. package/dist/injector/topology-tree/tree-node.js +68 -0
  97. package/dist/inspector/graph-inspector.js +182 -0
  98. package/dist/inspector/initialize-on-preview.allowlist.js +31 -0
  99. package/dist/inspector/noop-graph-inspector.js +27 -0
  100. package/dist/inspector/partial-graph.host.js +34 -0
  101. package/dist/inspector/serialized-graph.js +128 -0
  102. package/dist/interceptors/consumer.js +54 -0
  103. package/dist/interceptors/context-creator.js +75 -0
  104. package/dist/interfaces/application/context-options.interface.js +31 -0
  105. package/dist/interfaces/application/context.interface.js +0 -0
  106. package/dist/interfaces/application/index.js +3 -0
  107. package/dist/interfaces/context/arguments-host.interface.js +0 -0
  108. package/dist/interfaces/context/context-id-factory.interface.js +0 -0
  109. package/dist/interfaces/context/context.interface.js +0 -0
  110. package/dist/interfaces/context/creator.interface.js +0 -0
  111. package/dist/interfaces/context/execution.interface.js +0 -0
  112. package/dist/interfaces/context/index.js +7 -0
  113. package/dist/interfaces/context/params.interface.js +0 -0
  114. package/dist/interfaces/features/exception-filter.interface.js +0 -0
  115. package/dist/interfaces/features/guards.interface.js +0 -0
  116. package/dist/interfaces/features/index.js +5 -0
  117. package/dist/interfaces/features/interceptor.interface.js +0 -0
  118. package/dist/interfaces/features/pipes.interface.js +0 -0
  119. package/dist/interfaces/helper.interface.js +0 -0
  120. package/dist/interfaces/hooks/before-application-shutdown.interface.js +0 -0
  121. package/dist/interfaces/hooks/index.js +6 -0
  122. package/dist/interfaces/hooks/on-application-bootstrap.interface.js +0 -0
  123. package/dist/interfaces/hooks/on-application-shutdown.interface.js +0 -0
  124. package/dist/interfaces/hooks/on-destroy.interface.js +0 -0
  125. package/dist/interfaces/hooks/on-init.interface.js +0 -0
  126. package/dist/interfaces/index.js +16 -0
  127. package/dist/interfaces/injectable.interface.js +0 -0
  128. package/dist/interfaces/injector/index.js +6 -0
  129. package/dist/interfaces/injector/injector.interface.js +0 -0
  130. package/dist/interfaces/injector/instance-wrapper.interface.js +0 -0
  131. package/dist/interfaces/injector/lazy-module-options.interface.js +0 -0
  132. package/dist/interfaces/injector/module-compiler.interface.js +0 -0
  133. package/dist/interfaces/injector/module-ref.interface.js +0 -0
  134. package/dist/interfaces/inspector/edge.interface.js +0 -0
  135. package/dist/interfaces/inspector/enhancer-metadata-cache-entry.interface.js +0 -0
  136. package/dist/interfaces/inspector/entrypoint.interface.js +0 -0
  137. package/dist/interfaces/inspector/extras.interface.js +0 -0
  138. package/dist/interfaces/inspector/index.js +8 -0
  139. package/dist/interfaces/inspector/node.interface.js +0 -0
  140. package/dist/interfaces/inspector/serialized-graph-json.interface.js +0 -0
  141. package/dist/interfaces/inspector/serialized-graph-metadata.interface.js +0 -0
  142. package/dist/interfaces/modules/definition.interface.js +0 -0
  143. package/dist/interfaces/modules/dynamic-module.interface.js +0 -0
  144. package/dist/interfaces/modules/forward-reference.interface.js +0 -0
  145. package/dist/interfaces/modules/index.js +10 -0
  146. package/dist/interfaces/modules/injection-token.interface.js +0 -0
  147. package/dist/interfaces/modules/introspection-result.interface.js +0 -0
  148. package/dist/interfaces/modules/module-metadata.interface.js +0 -0
  149. package/dist/interfaces/modules/module.interface.js +0 -0
  150. package/dist/interfaces/modules/optional-factory-dependency.interface.js +0 -0
  151. package/dist/interfaces/modules/override.interface.js +0 -0
  152. package/dist/interfaces/modules/provider.interface.js +0 -0
  153. package/dist/interfaces/param-decorator.interface.js +0 -0
  154. package/dist/interfaces/scope.interface.js +0 -0
  155. package/dist/interfaces/services/console.interface.js +0 -0
  156. package/dist/interfaces/services/index.js +4 -0
  157. package/dist/interfaces/services/logger.interface.js +0 -0
  158. package/dist/interfaces/services/reflector.interface.js +0 -0
  159. package/dist/interfaces/set-metadata.interface.js +0 -0
  160. package/dist/interfaces/type.interface.js +0 -0
  161. package/dist/metadata-scanner.js +50 -0
  162. package/dist/pipes/consumer.js +33 -0
  163. package/dist/pipes/context-creator.js +78 -0
  164. package/dist/scanner.js +371 -0
  165. package/dist/services/console.service.js +347 -0
  166. package/dist/services/logger.service.js +276 -0
  167. package/dist/services/reflector.service.js +82 -0
  168. package/dist/storage/handler-metadata.storage.js +42 -0
  169. package/dist/storage/meta-host.storage.js +62 -0
  170. package/package.json +52 -40
  171. package/application/config.d.ts +0 -35
  172. package/application/config.js +0 -85
  173. package/application/context.d.ts +0 -198
  174. package/application/context.js +0 -325
  175. package/application/factory.d.ts +0 -43
  176. package/application/factory.js +0 -147
  177. package/constants.d.ts +0 -44
  178. package/constants.js +0 -51
  179. package/context/context.d.ts +0 -66
  180. package/context/context.js +0 -156
  181. package/context/creator.d.ts +0 -9
  182. package/context/creator.js +0 -32
  183. package/context/execution-host.d.ts +0 -16
  184. package/context/execution-host.js +0 -30
  185. package/context/index.d.ts +0 -4
  186. package/context/index.js +0 -20
  187. package/context/proxy.d.ts +0 -6
  188. package/context/proxy.js +0 -33
  189. package/decorators/apply.decorator.d.ts +0 -10
  190. package/decorators/apply.decorator.js +0 -24
  191. package/decorators/bind.decorator.d.ts +0 -11
  192. package/decorators/bind.decorator.js +0 -20
  193. package/decorators/catch.decorator.d.ts +0 -17
  194. package/decorators/catch.decorator.js +0 -26
  195. package/decorators/create-param.decorator.d.ts +0 -29
  196. package/decorators/create-param.decorator.js +0 -51
  197. package/decorators/dependencies.decorator.d.ts +0 -6
  198. package/decorators/dependencies.decorator.js +0 -17
  199. package/decorators/exception-filters.decorator.d.ts +0 -21
  200. package/decorators/exception-filters.decorator.js +0 -41
  201. package/decorators/global.decorator.d.ts +0 -10
  202. package/decorators/global.decorator.js +0 -19
  203. package/decorators/index.d.ts +0 -15
  204. package/decorators/index.js +0 -31
  205. package/decorators/inject.decorator.d.ts +0 -26
  206. package/decorators/inject.decorator.js +0 -45
  207. package/decorators/injectable.decorator.d.ts +0 -40
  208. package/decorators/injectable.decorator.js +0 -51
  209. package/decorators/module.decorator.d.ts +0 -14
  210. package/decorators/module.decorator.js +0 -38
  211. package/decorators/optional.decorator.d.ts +0 -14
  212. package/decorators/optional.decorator.js +0 -30
  213. package/decorators/set-metadata.decorator.d.ts +0 -18
  214. package/decorators/set-metadata.decorator.js +0 -30
  215. package/decorators/use-guards.decorator.d.ts +0 -21
  216. package/decorators/use-guards.decorator.js +0 -40
  217. package/decorators/use-interceptors.decorator.d.ts +0 -21
  218. package/decorators/use-interceptors.decorator.js +0 -40
  219. package/decorators/use-pipes.decorator.d.ts +0 -21
  220. package/decorators/use-pipes.decorator.js +0 -39
  221. package/discovery/meta-host-collection.d.ts +0 -32
  222. package/discovery/meta-host-collection.js +0 -79
  223. package/discovery/module.d.ts +0 -5
  224. package/discovery/module.js +0 -24
  225. package/discovery/service.d.ts +0 -68
  226. package/discovery/service.js +0 -90
  227. package/errors/exceptions/circular-dependency.exception.d.ts +0 -4
  228. package/errors/exceptions/circular-dependency.exception.js +0 -11
  229. package/errors/exceptions/index.d.ts +0 -8
  230. package/errors/exceptions/index.js +0 -24
  231. package/errors/exceptions/invalid-class-module.exception.d.ts +0 -4
  232. package/errors/exceptions/invalid-class-module.exception.js +0 -11
  233. package/errors/exceptions/invalid-class-scope.exception.d.ts +0 -5
  234. package/errors/exceptions/invalid-class-scope.exception.js +0 -14
  235. package/errors/exceptions/invalid-class.exception.d.ts +0 -4
  236. package/errors/exceptions/invalid-class.exception.js +0 -11
  237. package/errors/exceptions/invalid-exception-filter.exception.d.ts +0 -4
  238. package/errors/exceptions/invalid-exception-filter.exception.js +0 -11
  239. package/errors/exceptions/invalid-module.exception.d.ts +0 -4
  240. package/errors/exceptions/invalid-module.exception.js +0 -11
  241. package/errors/exceptions/runtime.exception.d.ts +0 -4
  242. package/errors/exceptions/runtime.exception.js +0 -12
  243. package/errors/exceptions/undefined-dependency.exception.d.ts +0 -6
  244. package/errors/exceptions/undefined-dependency.exception.js +0 -11
  245. package/errors/exceptions/undefined-forwardref.exception.d.ts +0 -5
  246. package/errors/exceptions/undefined-forwardref.exception.js +0 -11
  247. package/errors/exceptions/undefined-module.exception.d.ts +0 -4
  248. package/errors/exceptions/undefined-module.exception.js +0 -11
  249. package/errors/exceptions/unknown-dependencies.exception.d.ts +0 -16
  250. package/errors/exceptions/unknown-dependencies.exception.js +0 -15
  251. package/errors/exceptions/unknown-element.exception.d.ts +0 -4
  252. package/errors/exceptions/unknown-element.exception.js +0 -12
  253. package/errors/exceptions/unknown-export.exception.d.ts +0 -4
  254. package/errors/exceptions/unknown-export.exception.js +0 -11
  255. package/errors/exceptions/unknown-module.exception.d.ts +0 -4
  256. package/errors/exceptions/unknown-module.exception.js +0 -10
  257. package/errors/messages.d.ts +0 -15
  258. package/errors/messages.js +0 -126
  259. package/exceptions/handler.d.ts +0 -10
  260. package/exceptions/handler.js +0 -34
  261. package/exceptions/index.d.ts +0 -2
  262. package/exceptions/index.js +0 -18
  263. package/exceptions/zone/handler.d.ts +0 -5
  264. package/exceptions/zone/handler.js +0 -15
  265. package/exceptions/zone/index.d.ts +0 -2
  266. package/exceptions/zone/index.js +0 -18
  267. package/exceptions/zone/zone.d.ts +0 -5
  268. package/exceptions/zone/zone.js +0 -32
  269. package/filters/context-creator.d.ts +0 -14
  270. package/filters/context-creator.js +0 -48
  271. package/filters/context.d.ts +0 -12
  272. package/filters/context.js +0 -41
  273. package/filters/filter.d.ts +0 -6
  274. package/filters/filter.js +0 -16
  275. package/filters/index.d.ts +0 -3
  276. package/filters/index.js +0 -19
  277. package/guards/consumer.d.ts +0 -9
  278. package/guards/consumer.js +0 -33
  279. package/guards/context-creator.d.ts +0 -17
  280. package/guards/context-creator.js +0 -69
  281. package/guards/index.d.ts +0 -2
  282. package/guards/index.js +0 -18
  283. package/helpers/color.helper.d.ts +0 -9
  284. package/helpers/color.helper.js +0 -14
  285. package/helpers/context-id-factory.helper.d.ts +0 -2
  286. package/helpers/context-id-factory.helper.js +0 -15
  287. package/helpers/context.helper.d.ts +0 -23
  288. package/helpers/context.helper.js +0 -49
  289. package/helpers/extends-metadata.helper.d.ts +0 -1
  290. package/helpers/extends-metadata.helper.js +0 -9
  291. package/helpers/flatten.helper.d.ts +0 -1
  292. package/helpers/flatten.helper.js +0 -9
  293. package/helpers/messages.helper.d.ts +0 -2
  294. package/helpers/messages.helper.js +0 -7
  295. package/helpers/noop.helper.d.ts +0 -1
  296. package/helpers/noop.helper.js +0 -5
  297. package/helpers/random-string-generator.helper.d.ts +0 -1
  298. package/helpers/random-string-generator.helper.js +0 -6
  299. package/helpers/rethrow.helper.d.ts +0 -1
  300. package/helpers/rethrow.helper.js +0 -7
  301. package/helpers/shared.helper.d.ts +0 -10
  302. package/helpers/shared.helper.js +0 -33
  303. package/helpers/silent.helper.d.ts +0 -10
  304. package/helpers/silent.helper.js +0 -18
  305. package/helpers/transient.helper.d.ts +0 -12
  306. package/helpers/transient.helper.js +0 -26
  307. package/helpers/uuid.helper.d.ts +0 -15
  308. package/helpers/uuid.helper.js +0 -54
  309. package/helpers/validate-each.helper.d.ts +0 -8
  310. package/helpers/validate-each.helper.js +0 -25
  311. package/hooks/before-app-shutdown.hook.d.ts +0 -9
  312. package/hooks/before-app-shutdown.hook.js +0 -45
  313. package/hooks/index.d.ts +0 -5
  314. package/hooks/index.js +0 -21
  315. package/hooks/on-app-bootstrap.hook.d.ts +0 -8
  316. package/hooks/on-app-bootstrap.hook.js +0 -45
  317. package/hooks/on-app-shutdown.hook.d.ts +0 -9
  318. package/hooks/on-app-shutdown.hook.js +0 -46
  319. package/hooks/on-module-destroy.hook.d.ts +0 -8
  320. package/hooks/on-module-destroy.hook.js +0 -45
  321. package/hooks/on-module-init.hook.d.ts +0 -8
  322. package/hooks/on-module-init.hook.js +0 -45
  323. package/index.d.ts +0 -10
  324. package/index.js +0 -32
  325. package/injector/constants.d.ts +0 -2
  326. package/injector/constants.js +0 -7
  327. package/injector/container.d.ts +0 -61
  328. package/injector/container.js +0 -194
  329. package/injector/helpers/class-scope.helper.d.ts +0 -2
  330. package/injector/helpers/class-scope.helper.js +0 -9
  331. package/injector/helpers/classifier.helper.d.ts +0 -4
  332. package/injector/helpers/classifier.helper.js +0 -17
  333. package/injector/helpers/is-durable.helper.d.ts +0 -2
  334. package/injector/helpers/is-durable.helper.js +0 -9
  335. package/injector/index.d.ts +0 -5
  336. package/injector/index.js +0 -20
  337. package/injector/injector.d.ts +0 -87
  338. package/injector/injector.js +0 -452
  339. package/injector/instance/links-host.d.ts +0 -22
  340. package/injector/instance/links-host.js +0 -50
  341. package/injector/instance/loader.d.ts +0 -21
  342. package/injector/instance/loader.js +0 -73
  343. package/injector/instance/resolver.d.ts +0 -16
  344. package/injector/instance/resolver.js +0 -43
  345. package/injector/instance/wrapper.d.ts +0 -90
  346. package/injector/instance/wrapper.js +0 -272
  347. package/injector/internal-core-module/core-providers.d.ts +0 -4
  348. package/injector/internal-core-module/core-providers.js +0 -21
  349. package/injector/internal-core-module/internal-core-module-factory.d.ts +0 -8
  350. package/injector/internal-core-module/internal-core-module-factory.js +0 -47
  351. package/injector/internal-core-module/internal-core-module.d.ts +0 -4
  352. package/injector/internal-core-module/internal-core-module.js +0 -31
  353. package/injector/module/compiler.d.ts +0 -19
  354. package/injector/module/compiler.js +0 -27
  355. package/injector/module/container.d.ts +0 -6
  356. package/injector/module/container.js +0 -24
  357. package/injector/module/lazy/loader.d.ts +0 -21
  358. package/injector/module/lazy/loader.js +0 -49
  359. package/injector/module/lazy/options.d.ts +0 -6
  360. package/injector/module/lazy/options.js +0 -2
  361. package/injector/module/module.d.ts +0 -74
  362. package/injector/module/module.js +0 -383
  363. package/injector/module/ref.d.ts +0 -106
  364. package/injector/module/ref.js +0 -62
  365. package/injector/module/token-factory.d.ts +0 -13
  366. package/injector/module/token-factory.js +0 -71
  367. package/injector/settlement-signal.d.ts +0 -37
  368. package/injector/settlement-signal.js +0 -55
  369. package/inspector/graph-inspector.d.ts +0 -26
  370. package/inspector/graph-inspector.js +0 -163
  371. package/inspector/initialize-on-preview.allowlist.d.ts +0 -6
  372. package/inspector/initialize-on-preview.allowlist.js +0 -13
  373. package/inspector/interfaces/edge.interface.d.ts +0 -28
  374. package/inspector/interfaces/edge.interface.js +0 -2
  375. package/inspector/interfaces/enhancer-metadata-cache-entry.interface.d.ts +0 -12
  376. package/inspector/interfaces/enhancer-metadata-cache-entry.interface.js +0 -2
  377. package/inspector/interfaces/entrypoint.interface.d.ts +0 -10
  378. package/inspector/interfaces/entrypoint.interface.js +0 -2
  379. package/inspector/interfaces/extras.interface.d.ts +0 -18
  380. package/inspector/interfaces/extras.interface.js +0 -2
  381. package/inspector/interfaces/node.interface.d.ts +0 -49
  382. package/inspector/interfaces/node.interface.js +0 -2
  383. package/inspector/interfaces/serialized-graph-json.interface.d.ts +0 -14
  384. package/inspector/interfaces/serialized-graph-json.interface.js +0 -2
  385. package/inspector/interfaces/serialized-graph-metadata.interface.d.ts +0 -10
  386. package/inspector/interfaces/serialized-graph-metadata.interface.js +0 -2
  387. package/inspector/noop-graph-inspector.d.ts +0 -2
  388. package/inspector/noop-graph-inspector.js +0 -8
  389. package/inspector/partial-graph.host.d.ts +0 -7
  390. package/inspector/partial-graph.host.js +0 -15
  391. package/inspector/serialized-graph.d.ts +0 -52
  392. package/inspector/serialized-graph.js +0 -121
  393. package/interceptors/consumer.d.ts +0 -9
  394. package/interceptors/consumer.js +0 -37
  395. package/interceptors/context-creator.d.ts +0 -17
  396. package/interceptors/context-creator.js +0 -67
  397. package/interceptors/index.d.ts +0 -2
  398. package/interceptors/index.js +0 -18
  399. package/interfaces/abstract.interface.d.ts +0 -3
  400. package/interfaces/abstract.interface.js +0 -2
  401. package/interfaces/application/context-options.interface.d.ts +0 -41
  402. package/interfaces/application/context-options.interface.js +0 -9
  403. package/interfaces/application/context.interface.d.ts +0 -162
  404. package/interfaces/application/context.interface.js +0 -2
  405. package/interfaces/application/index.d.ts +0 -1
  406. package/interfaces/application/index.js +0 -17
  407. package/interfaces/context/arguments-host.interface.d.ts +0 -22
  408. package/interfaces/context/arguments-host.interface.js +0 -2
  409. package/interfaces/context/execution.interface.d.ts +0 -18
  410. package/interfaces/context/execution.interface.js +0 -2
  411. package/interfaces/context/index.d.ts +0 -2
  412. package/interfaces/context/index.js +0 -18
  413. package/interfaces/features/exception-filter.interface.d.ts +0 -21
  414. package/interfaces/features/exception-filter.interface.js +0 -2
  415. package/interfaces/features/guards.interface.d.ts +0 -20
  416. package/interfaces/features/guards.interface.js +0 -2
  417. package/interfaces/features/index.d.ts +0 -4
  418. package/interfaces/features/index.js +0 -20
  419. package/interfaces/features/interceptor.interface.d.ts +0 -30
  420. package/interfaces/features/interceptor.interface.js +0 -2
  421. package/interfaces/features/pipes.interface.d.ts +0 -37
  422. package/interfaces/features/pipes.interface.js +0 -2
  423. package/interfaces/helper.interface.d.ts +0 -3
  424. package/interfaces/helper.interface.js +0 -2
  425. package/interfaces/hooks/before-application-shutdown.interface.d.ts +0 -3
  426. package/interfaces/hooks/before-application-shutdown.interface.js +0 -2
  427. package/interfaces/hooks/index.d.ts +0 -5
  428. package/interfaces/hooks/index.js +0 -21
  429. package/interfaces/hooks/on-application-bootstrap.interface.d.ts +0 -9
  430. package/interfaces/hooks/on-application-bootstrap.interface.js +0 -2
  431. package/interfaces/hooks/on-application-shutdown.interface.d.ts +0 -9
  432. package/interfaces/hooks/on-application-shutdown.interface.js +0 -2
  433. package/interfaces/hooks/on-destroy.interface.d.ts +0 -10
  434. package/interfaces/hooks/on-destroy.interface.js +0 -2
  435. package/interfaces/hooks/on-init.interface.d.ts +0 -8
  436. package/interfaces/hooks/on-init.interface.js +0 -2
  437. package/interfaces/index.d.ts +0 -8
  438. package/interfaces/index.js +0 -24
  439. package/interfaces/injectable.interface.d.ts +0 -1
  440. package/interfaces/injectable.interface.js +0 -2
  441. package/interfaces/modules/configurable/async-options.interface.d.ts +0 -42
  442. package/interfaces/modules/configurable/async-options.interface.js +0 -2
  443. package/interfaces/modules/configurable/cls.interface.d.ts +0 -13
  444. package/interfaces/modules/configurable/cls.interface.js +0 -2
  445. package/interfaces/modules/configurable/host.interface.d.ts +0 -62
  446. package/interfaces/modules/configurable/host.interface.js +0 -2
  447. package/interfaces/modules/configurable/index.d.ts +0 -3
  448. package/interfaces/modules/configurable/index.js +0 -19
  449. package/interfaces/modules/definition.interface.d.ts +0 -4
  450. package/interfaces/modules/definition.interface.js +0 -2
  451. package/interfaces/modules/dynamic-module.interface.d.ts +0 -23
  452. package/interfaces/modules/dynamic-module.interface.js +0 -2
  453. package/interfaces/modules/forward-reference.interface.d.ts +0 -3
  454. package/interfaces/modules/forward-reference.interface.js +0 -2
  455. package/interfaces/modules/index.d.ts +0 -9
  456. package/interfaces/modules/index.js +0 -25
  457. package/interfaces/modules/injection-token.interface.d.ts +0 -5
  458. package/interfaces/modules/injection-token.interface.js +0 -2
  459. package/interfaces/modules/introspection-result.interface.d.ts +0 -10
  460. package/interfaces/modules/introspection-result.interface.js +0 -2
  461. package/interfaces/modules/module-metadata.interface.d.ts +0 -24
  462. package/interfaces/modules/module-metadata.interface.js +0 -2
  463. package/interfaces/modules/module.interface.d.ts +0 -2
  464. package/interfaces/modules/module.interface.js +0 -2
  465. package/interfaces/modules/optional-factory-dependency.interface.d.ts +0 -8
  466. package/interfaces/modules/optional-factory-dependency.interface.js +0 -2
  467. package/interfaces/modules/override.interface.d.ts +0 -5
  468. package/interfaces/modules/override.interface.js +0 -2
  469. package/interfaces/modules/provider.interface.d.ts +0 -142
  470. package/interfaces/modules/provider.interface.js +0 -2
  471. package/interfaces/scope.interface.d.ts +0 -35
  472. package/interfaces/scope.interface.js +0 -23
  473. package/interfaces/type.interface.d.ts +0 -3
  474. package/interfaces/type.interface.js +0 -2
  475. package/metadata-scanner.d.ts +0 -4
  476. package/metadata-scanner.js +0 -34
  477. package/module/configurable-module.builder.d.ts +0 -93
  478. package/module/configurable-module.builder.js +0 -204
  479. package/module/constants.d.ts +0 -4
  480. package/module/constants.js +0 -7
  481. package/module/helpers/generate-options-injection-token.helper.d.ts +0 -1
  482. package/module/helpers/generate-options-injection-token.helper.js +0 -9
  483. package/module/helpers/get-injection-providers.helper.d.ts +0 -8
  484. package/module/helpers/get-injection-providers.helper.js +0 -36
  485. package/module/helpers/index.d.ts +0 -2
  486. package/module/helpers/index.js +0 -18
  487. package/module/index.d.ts +0 -2
  488. package/module/index.js +0 -18
  489. package/pipes/consumer.d.ts +0 -9
  490. package/pipes/consumer.js +0 -15
  491. package/pipes/context-creator.d.ts +0 -18
  492. package/pipes/context-creator.js +0 -70
  493. package/pipes/index.d.ts +0 -2
  494. package/pipes/index.js +0 -18
  495. package/scanner.d.ts +0 -81
  496. package/scanner.js +0 -374
  497. package/services/console.service.d.ts +0 -86
  498. package/services/console.service.js +0 -233
  499. package/services/index.d.ts +0 -1
  500. package/services/index.js +0 -17
  501. package/services/logger.service.d.ts +0 -157
  502. package/services/logger.service.js +0 -269
  503. package/services/reflector.service.d.ts +0 -110
  504. package/services/reflector.service.js +0 -87
  505. package/test/context/creator.spec.d.ts +0 -1
  506. package/test/context/creator.spec.js +0 -149
  507. package/test/context/execution-host.spec.d.ts +0 -1
  508. package/test/context/execution-host.spec.js +0 -31
  509. package/test/context/proxy.spec.d.ts +0 -1
  510. package/test/context/proxy.spec.js +0 -46
  511. package/test/exceptions/handler.spec.d.ts +0 -1
  512. package/test/exceptions/handler.spec.js +0 -90
  513. package/test/exceptions/messages.spec.js +0 -201
  514. package/test/exceptions/zona/handler.spec.d.ts +0 -1
  515. package/test/exceptions/zona/handler.spec.js +0 -51
  516. package/test/exceptions/zona/zone.spec.d.ts +0 -1
  517. package/test/exceptions/zona/zone.spec.js +0 -66
  518. package/test/filters/context-creator.spec.d.ts +0 -2
  519. package/test/filters/context-creator.spec.js +0 -91
  520. package/test/guards/consumer.spec.d.ts +0 -1
  521. package/test/guards/consumer.spec.js +0 -47
  522. package/test/guards/context-creator.spec.d.ts +0 -1
  523. package/test/guards/context-creator.spec.js +0 -138
  524. package/test/helpers/context-id-factory.spec.d.ts +0 -1
  525. package/test/helpers/context-id-factory.spec.js +0 -9
  526. package/test/helpers/shared.spec.d.ts +0 -1
  527. package/test/helpers/shared.spec.js +0 -122
  528. package/test/hooks/before-app-shutdown.hook.spec.d.ts +0 -1
  529. package/test/hooks/before-app-shutdown.hook.spec.js +0 -44
  530. package/test/hooks/on-app-bootstrap.hook.spec.d.ts +0 -1
  531. package/test/hooks/on-app-bootstrap.hook.spec.js +0 -43
  532. package/test/hooks/on-app-shutdown.hook.spec.d.ts +0 -1
  533. package/test/hooks/on-app-shutdown.hook.spec.js +0 -43
  534. package/test/hooks/on-module-destroy.hook.spec.d.ts +0 -1
  535. package/test/hooks/on-module-destroy.hook.spec.js +0 -43
  536. package/test/hooks/on-module-init.hook.spec.d.ts +0 -1
  537. package/test/hooks/on-module-init.hook.spec.js +0 -43
  538. package/test/injector/compiler.spec.d.ts +0 -1
  539. package/test/injector/compiler.spec.js +0 -42
  540. package/test/injector/container.spec.d.ts +0 -1
  541. package/test/injector/container.spec.js +0 -203
  542. package/test/injector/helpers/classifier.spec.d.ts +0 -1
  543. package/test/injector/helpers/classifier.spec.js +0 -102
  544. package/test/injector/injector.spec.d.ts +0 -1
  545. package/test/injector/injector.spec.js +0 -678
  546. package/test/injector/instance/loader.spec.d.ts +0 -1
  547. package/test/injector/instance/loader.spec.js +0 -108
  548. package/test/injector/instance/wrapper.spec.d.ts +0 -1
  549. package/test/injector/instance/wrapper.spec.js +0 -772
  550. package/test/injector/internal-core-module/internal-core-module-factory.spec.d.ts +0 -1
  551. package/test/injector/internal-core-module/internal-core-module-factory.spec.js +0 -27
  552. package/test/injector/module/lazy/loader.spec.d.ts +0 -1
  553. package/test/injector/module/lazy/loader.spec.js +0 -71
  554. package/test/injector/module/module.spec.d.ts +0 -1
  555. package/test/injector/module/module.spec.js +0 -410
  556. package/test/injector/module/token-factory.spec.d.ts +0 -1
  557. package/test/injector/module/token-factory.spec.js +0 -84
  558. package/test/interceptors/consumer.spec.d.ts +0 -1
  559. package/test/interceptors/consumer.spec.js +0 -136
  560. package/test/interceptors/context-creator.spec.d.ts +0 -1
  561. package/test/interceptors/context-creator.spec.js +0 -139
  562. package/test/metadata-scanner.spec.d.ts +0 -1
  563. package/test/metadata-scanner.spec.js +0 -41
  564. package/test/module/configurable-module.builder.spec.d.ts +0 -1
  565. package/test/module/configurable-module.builder.spec.js +0 -102
  566. package/test/module/helpers/get-injection-providers.helper.spec.d.ts +0 -1
  567. package/test/module/helpers/get-injection-providers.helper.spec.js +0 -49
  568. package/test/pipes/consumer.spec.d.ts +0 -1
  569. package/test/pipes/consumer.spec.js +0 -42
  570. package/test/pipes/context-creator.spec.d.ts +0 -1
  571. package/test/pipes/context-creator.spec.js +0 -108
  572. package/test/scanner.spec.d.ts +0 -1
  573. package/test/scanner.spec.js +0 -620
  574. package/test/services/logger.service.spec.d.ts +0 -1
  575. package/test/services/logger.service.spec.js +0 -487
  576. package/test/services/reflector.service.spec.d.ts +0 -1
  577. package/test/services/reflector.service.spec.js +0 -105
  578. package/tsconfig.tsbuildinfo +0 -1
  579. /package/{test/exceptions/messages.spec.d.ts → dist/interfaces/abstract.interface.js} +0 -0
@@ -1,31 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./apply.decorator"), exports);
18
- __exportStar(require("./bind.decorator"), exports);
19
- __exportStar(require("./catch.decorator"), exports);
20
- __exportStar(require("./create-param.decorator"), exports);
21
- __exportStar(require("./dependencies.decorator"), exports);
22
- __exportStar(require("./exception-filters.decorator"), exports);
23
- __exportStar(require("./global.decorator"), exports);
24
- __exportStar(require("./inject.decorator"), exports);
25
- __exportStar(require("./injectable.decorator"), exports);
26
- __exportStar(require("./module.decorator"), exports);
27
- __exportStar(require("./optional.decorator"), exports);
28
- __exportStar(require("./set-metadata.decorator"), exports);
29
- __exportStar(require("./use-guards.decorator"), exports);
30
- __exportStar(require("./use-pipes.decorator"), exports);
31
- __exportStar(require("./use-interceptors.decorator"), exports);
@@ -1,26 +0,0 @@
1
- /**
2
- * Decorator that marks a constructor parameter as a target for
3
- * Dependency Injection (DI).
4
- *
5
- * Any injected provider must be visible within the module scope (loosely
6
- * speaking, the containing module) of the class it is being injected into. This
7
- * can be done by:
8
- *
9
- * - defining the provider in the same module scope
10
- * - exporting the provider from one module scope and importing that module into the
11
- * module scope of the class being injected into
12
- * - exporting the provider from a module that is marked as global using the
13
- * `@Global()` decorator
14
- *
15
- * #### Injection tokens
16
- * Can be *types* (class names), *strings* or *symbols*. This depends on how the
17
- * provider with which it is associated was defined. Providers defined with the
18
- * `@Injectable()` decorator use the class name. Custom Providers may use strings
19
- * or symbols as the injection token.
20
- *
21
- * @param token lookup key for the provider to be injected (assigned to the constructor
22
- * parameter).
23
- *
24
- * @publicApi
25
- */
26
- export declare function Inject<T = any>(token?: T): PropertyDecorator & ParameterDecorator;
@@ -1,45 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Inject = void 0;
4
- const shared_helper_1 = require("@venok/core/helpers/shared.helper");
5
- const constants_1 = require("@venok/core/constants");
6
- /**
7
- * Decorator that marks a constructor parameter as a target for
8
- * Dependency Injection (DI).
9
- *
10
- * Any injected provider must be visible within the module scope (loosely
11
- * speaking, the containing module) of the class it is being injected into. This
12
- * can be done by:
13
- *
14
- * - defining the provider in the same module scope
15
- * - exporting the provider from one module scope and importing that module into the
16
- * module scope of the class being injected into
17
- * - exporting the provider from a module that is marked as global using the
18
- * `@Global()` decorator
19
- *
20
- * #### Injection tokens
21
- * Can be *types* (class names), *strings* or *symbols*. This depends on how the
22
- * provider with which it is associated was defined. Providers defined with the
23
- * `@Injectable()` decorator use the class name. Custom Providers may use strings
24
- * or symbols as the injection token.
25
- *
26
- * @param token lookup key for the provider to be injected (assigned to the constructor
27
- * parameter).
28
- *
29
- * @publicApi
30
- */
31
- function Inject(token) {
32
- return (target, key, index) => {
33
- const type = token || Reflect.getMetadata("design:type", target, key);
34
- if (!(0, shared_helper_1.isUndefined)(index)) {
35
- let dependencies = Reflect.getMetadata(constants_1.SELF_DECLARED_DEPS_METADATA, target) || [];
36
- dependencies = [...dependencies, { index, param: type }];
37
- Reflect.defineMetadata(constants_1.SELF_DECLARED_DEPS_METADATA, dependencies, target);
38
- return;
39
- }
40
- let properties = Reflect.getMetadata(constants_1.PROPERTY_DEPS_METADATA, target.constructor) || [];
41
- properties = [...properties, { key, type }];
42
- Reflect.defineMetadata(constants_1.PROPERTY_DEPS_METADATA, properties, target.constructor);
43
- };
44
- }
45
- exports.Inject = Inject;
@@ -1,40 +0,0 @@
1
- import { ScopeOptions, Type } from "@venok/core/interfaces";
2
- /**
3
- * Defines the injection scope.
4
- *
5
- * @publicApi
6
- */
7
- export type InjectableOptions = ScopeOptions;
8
- /**
9
- * Decorator that marks a class as a provider(https://venok.com/providers).
10
- * Providers can be injected into other classes via constructor parameter injection
11
- * using Venok built-in [Dependency Injection (DI)](https://venok.com/providers#dependency-injection)
12
- * system.
13
- *
14
- * When injecting a provider, it must be visible within the module scope (loosely
15
- * speaking, the containing module) of the class it is being injected into. This
16
- * can be done by:
17
- *
18
- * - defining the provider in the same module scope
19
- * - exporting the provider from one module scope and importing that module into the
20
- * module scope of the class being injected into
21
- * - exporting the provider from a module that is marked as global using the
22
- * `@Global()` decorator
23
- *
24
- * Providers can also be defined in a more explicit and imperative form using
25
- * various [custom provider](https://venok.com/fundamentals/custom-providers) techniques that expose
26
- * more capabilities of the DI system.
27
- *
28
- * @param options options specifying scope of injectable
29
- *
30
- * @see [Providers](https://venok.com/providers)
31
- * @see [Custom Providers](https://venok.com/fundamentals/custom-providers)
32
- * @see [Injection Scopes](https://venok.com/fundamentals/injection-scopes)
33
- *
34
- * @publicApi
35
- */
36
- export declare function Injectable(options?: InjectableOptions): ClassDecorator;
37
- /**
38
- * @publicApi
39
- */
40
- export declare function mixin<T>(mixinClass: Type<T>): Type<T>;
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mixin = exports.Injectable = void 0;
4
- const uid_1 = require("uid");
5
- const constants_1 = require("@venok/core/constants");
6
- /**
7
- * Decorator that marks a class as a provider(https://venok.com/providers).
8
- * Providers can be injected into other classes via constructor parameter injection
9
- * using Venok built-in [Dependency Injection (DI)](https://venok.com/providers#dependency-injection)
10
- * system.
11
- *
12
- * When injecting a provider, it must be visible within the module scope (loosely
13
- * speaking, the containing module) of the class it is being injected into. This
14
- * can be done by:
15
- *
16
- * - defining the provider in the same module scope
17
- * - exporting the provider from one module scope and importing that module into the
18
- * module scope of the class being injected into
19
- * - exporting the provider from a module that is marked as global using the
20
- * `@Global()` decorator
21
- *
22
- * Providers can also be defined in a more explicit and imperative form using
23
- * various [custom provider](https://venok.com/fundamentals/custom-providers) techniques that expose
24
- * more capabilities of the DI system.
25
- *
26
- * @param options options specifying scope of injectable
27
- *
28
- * @see [Providers](https://venok.com/providers)
29
- * @see [Custom Providers](https://venok.com/fundamentals/custom-providers)
30
- * @see [Injection Scopes](https://venok.com/fundamentals/injection-scopes)
31
- *
32
- * @publicApi
33
- */
34
- function Injectable(options) {
35
- return (target) => {
36
- Reflect.defineMetadata(constants_1.INJECTABLE_WATERMARK, true, target);
37
- Reflect.defineMetadata(constants_1.SCOPE_OPTIONS_METADATA, options, target);
38
- };
39
- }
40
- exports.Injectable = Injectable;
41
- /**
42
- * @publicApi
43
- */
44
- function mixin(mixinClass) {
45
- Object.defineProperty(mixinClass, "name", {
46
- value: (0, uid_1.uid)(21),
47
- });
48
- Injectable()(mixinClass);
49
- return mixinClass;
50
- }
51
- exports.mixin = mixin;
@@ -1,14 +0,0 @@
1
- import { ModuleMetadata } from "@venok/core/interfaces/modules";
2
- export declare const INVALID_MODULE_CONFIG_MESSAGE: (text: TemplateStringsArray, property: string) => string;
3
- /**
4
- * Decorator that marks a class as a module.
5
- *
6
- * Modules are used by Venok to organize the application structure into scopes.
7
- * Providers are scoped by the module they are declared in. Modules and their
8
- * classes (Providers) form a graph that determines how Venok
9
- *
10
- * @param metadata module configuration metadata
11
- *
12
- * @publicApi
13
- */
14
- export declare function Module(metadata: ModuleMetadata): ClassDecorator;
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Module = exports.INVALID_MODULE_CONFIG_MESSAGE = void 0;
4
- const constants_1 = require("../constants");
5
- const INVALID_MODULE_CONFIG_MESSAGE = (text, property) => `Invalid property '${property}' passed into the @Module() decorator.`;
6
- exports.INVALID_MODULE_CONFIG_MESSAGE = INVALID_MODULE_CONFIG_MESSAGE;
7
- const metadataKeys = [constants_1.MODULE_METADATA.IMPORTS, constants_1.MODULE_METADATA.EXPORTS, constants_1.MODULE_METADATA.PROVIDERS];
8
- function validateModuleKeys(keys) {
9
- const validateKey = (key) => {
10
- if (metadataKeys.includes(key))
11
- return;
12
- throw new Error((0, exports.INVALID_MODULE_CONFIG_MESSAGE) `${key}`);
13
- };
14
- keys.forEach(validateKey);
15
- }
16
- /**
17
- * Decorator that marks a class as a module.
18
- *
19
- * Modules are used by Venok to organize the application structure into scopes.
20
- * Providers are scoped by the module they are declared in. Modules and their
21
- * classes (Providers) form a graph that determines how Venok
22
- *
23
- * @param metadata module configuration metadata
24
- *
25
- * @publicApi
26
- */
27
- function Module(metadata) {
28
- const propsKeys = Object.keys(metadata);
29
- validateModuleKeys(propsKeys);
30
- return (target) => {
31
- for (const property in metadata) {
32
- if (metadata.hasOwnProperty(property)) {
33
- Reflect.defineMetadata(property, metadata[property], target);
34
- }
35
- }
36
- };
37
- }
38
- exports.Module = Module;
@@ -1,14 +0,0 @@
1
- /**
2
- * Parameter decorator for an injected dependency marking the
3
- * dependency as optional.
4
- *
5
- * For example:
6
- * ```typescript
7
- * constructor(@Optional() @Inject('HTTP_OPTIONS')private readonly httpClient: T) {}
8
- * ```
9
- *
10
- * @see [Optional providers](https://venok.com/providers#optional-providers)
11
- *
12
- * @publicApi
13
- */
14
- export declare function Optional(): PropertyDecorator & ParameterDecorator;
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Optional = void 0;
4
- const constants_1 = require("@venok/core/constants");
5
- const shared_helper_1 = require("@venok/core/helpers/shared.helper");
6
- /**
7
- * Parameter decorator for an injected dependency marking the
8
- * dependency as optional.
9
- *
10
- * For example:
11
- * ```typescript
12
- * constructor(@Optional() @Inject('HTTP_OPTIONS')private readonly httpClient: T) {}
13
- * ```
14
- *
15
- * @see [Optional providers](https://venok.com/providers#optional-providers)
16
- *
17
- * @publicApi
18
- */
19
- function Optional() {
20
- return (target, key, index) => {
21
- if (!(0, shared_helper_1.isUndefined)(index)) {
22
- const args = Reflect.getMetadata(constants_1.OPTIONAL_DEPS_METADATA, target) || [];
23
- Reflect.defineMetadata(constants_1.OPTIONAL_DEPS_METADATA, [...args, index], target);
24
- return;
25
- }
26
- const properties = Reflect.getMetadata(constants_1.OPTIONAL_PROPERTY_DEPS_METADATA, target.constructor) || [];
27
- Reflect.defineMetadata(constants_1.OPTIONAL_PROPERTY_DEPS_METADATA, [...properties, key], target.constructor);
28
- };
29
- }
30
- exports.Optional = Optional;
@@ -1,18 +0,0 @@
1
- export type CustomDecorator<TKey = string> = MethodDecorator & ClassDecorator & {
2
- KEY: TKey;
3
- };
4
- /**
5
- * Decorator that assigns metadata to the class/function using the
6
- * specified `key`.
7
- *
8
- * Requires two parameters:
9
- * - `key` - a value defining the key under which the metadata is stored
10
- * - `value` - metadata to be associated with `key`
11
- *
12
- * This metadata can be reflected using the `Reflector` class.
13
- *
14
- * Example: `@SetMetadata('roles', ['admin'])`
15
- *
16
- * @publicApi
17
- */
18
- export declare const SetMetadata: <K = string, V = any>(metadataKey: K, metadataValue: V) => CustomDecorator<K>;
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SetMetadata = void 0;
4
- /**
5
- * Decorator that assigns metadata to the class/function using the
6
- * specified `key`.
7
- *
8
- * Requires two parameters:
9
- * - `key` - a value defining the key under which the metadata is stored
10
- * - `value` - metadata to be associated with `key`
11
- *
12
- * This metadata can be reflected using the `Reflector` class.
13
- *
14
- * Example: `@SetMetadata('roles', ['admin'])`
15
- *
16
- * @publicApi
17
- */
18
- const SetMetadata = (metadataKey, metadataValue) => {
19
- const decoratorFactory = (target, key, descriptor) => {
20
- if (descriptor) {
21
- Reflect.defineMetadata(metadataKey, metadataValue, descriptor.value);
22
- return descriptor;
23
- }
24
- Reflect.defineMetadata(metadataKey, metadataValue, target);
25
- return target;
26
- };
27
- decoratorFactory.KEY = metadataKey;
28
- return decoratorFactory;
29
- };
30
- exports.SetMetadata = SetMetadata;
@@ -1,21 +0,0 @@
1
- import { CanActivate } from "@venok/core/interfaces/features/guards.interface";
2
- /**
3
- * Decorator that binds guards to the scope of the provider or method,
4
- * depending on its context.
5
- *
6
- * When `@UseGuards` is used at the controller level, the guard will be
7
- * applied to every handler (method) in the provider.
8
- *
9
- * When `@UseGuards` is used at the individual handler level, the guard
10
- * will apply only to that specific method.
11
- *
12
- * @param guards a single guard instance or class, or a list of guard instances
13
- * or classes.
14
- *
15
- * @usageNotes
16
- * Guards can also be set up globally for all controllers and routes
17
- * using `app.useGlobalGuards()`.
18
- *
19
- * @publicApi
20
- */
21
- export declare function UseGuards(...guards: (CanActivate | Function)[]): MethodDecorator & ClassDecorator;
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UseGuards = void 0;
4
- const shared_helper_1 = require("@venok/core/helpers/shared.helper");
5
- const constants_1 = require("@venok/core/constants");
6
- const validate_each_helper_1 = require("@venok/core/helpers/validate-each.helper");
7
- const extends_metadata_helper_1 = require("@venok/core/helpers/extends-metadata.helper");
8
- /**
9
- * Decorator that binds guards to the scope of the provider or method,
10
- * depending on its context.
11
- *
12
- * When `@UseGuards` is used at the controller level, the guard will be
13
- * applied to every handler (method) in the provider.
14
- *
15
- * When `@UseGuards` is used at the individual handler level, the guard
16
- * will apply only to that specific method.
17
- *
18
- * @param guards a single guard instance or class, or a list of guard instances
19
- * or classes.
20
- *
21
- * @usageNotes
22
- * Guards can also be set up globally for all controllers and routes
23
- * using `app.useGlobalGuards()`.
24
- *
25
- * @publicApi
26
- */
27
- function UseGuards(...guards) {
28
- return (target, key, descriptor) => {
29
- const isGuardValid = (guard) => guard && ((0, shared_helper_1.isFunction)(guard) || (0, shared_helper_1.isFunction)(guard.canActivate));
30
- if (descriptor) {
31
- (0, validate_each_helper_1.validateEach)(target.constructor, guards, isGuardValid, "@UseGuards", "guard");
32
- (0, extends_metadata_helper_1.extendArrayMetadata)(constants_1.GUARDS_METADATA, guards, descriptor.value);
33
- return descriptor;
34
- }
35
- (0, validate_each_helper_1.validateEach)(target, guards, isGuardValid, "@UseGuards", "guard");
36
- (0, extends_metadata_helper_1.extendArrayMetadata)(constants_1.GUARDS_METADATA, guards, target);
37
- return target;
38
- };
39
- }
40
- exports.UseGuards = UseGuards;
@@ -1,21 +0,0 @@
1
- import { VenokInterceptor } from "@venok/core/interfaces/features/interceptor.interface";
2
- /**
3
- * Decorator that binds interceptors to the scope of the provider or method,
4
- * depending on its context.
5
- *
6
- * When `@UseInterceptors` is used at the controller level, the interceptor will
7
- * be applied to every handler (method) in the provider.
8
- *
9
- * When `@UseInterceptors` is used at the individual handler level, the interceptor
10
- * will apply only to that specific method.
11
- *
12
- * @param interceptors a single interceptor instance or class, or a list of
13
- * interceptor instances or classes.
14
- *
15
- * @usageNotes
16
- * Interceptors can also be set up globally for all controllers and routes
17
- * using `app.useGlobalInterceptors()`.
18
- *
19
- * @publicApi
20
- */
21
- export declare function UseInterceptors(...interceptors: (VenokInterceptor | Function)[]): MethodDecorator & ClassDecorator;
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UseInterceptors = void 0;
4
- const shared_helper_1 = require("@venok/core/helpers/shared.helper");
5
- const constants_1 = require("@venok/core/constants");
6
- const validate_each_helper_1 = require("@venok/core/helpers/validate-each.helper");
7
- const extends_metadata_helper_1 = require("@venok/core/helpers/extends-metadata.helper");
8
- /**
9
- * Decorator that binds interceptors to the scope of the provider or method,
10
- * depending on its context.
11
- *
12
- * When `@UseInterceptors` is used at the controller level, the interceptor will
13
- * be applied to every handler (method) in the provider.
14
- *
15
- * When `@UseInterceptors` is used at the individual handler level, the interceptor
16
- * will apply only to that specific method.
17
- *
18
- * @param interceptors a single interceptor instance or class, or a list of
19
- * interceptor instances or classes.
20
- *
21
- * @usageNotes
22
- * Interceptors can also be set up globally for all controllers and routes
23
- * using `app.useGlobalInterceptors()`.
24
- *
25
- * @publicApi
26
- */
27
- function UseInterceptors(...interceptors) {
28
- return (target, key, descriptor) => {
29
- const isInterceptorValid = (interceptor) => interceptor && ((0, shared_helper_1.isFunction)(interceptor) || (0, shared_helper_1.isFunction)(interceptor.intercept));
30
- if (descriptor) {
31
- (0, validate_each_helper_1.validateEach)(target.constructor, interceptors, isInterceptorValid, "@UseInterceptors", "interceptor");
32
- (0, extends_metadata_helper_1.extendArrayMetadata)(constants_1.INTERCEPTORS_METADATA, interceptors, descriptor.value);
33
- return descriptor;
34
- }
35
- (0, validate_each_helper_1.validateEach)(target, interceptors, isInterceptorValid, "@UseInterceptors", "interceptor");
36
- (0, extends_metadata_helper_1.extendArrayMetadata)(constants_1.INTERCEPTORS_METADATA, interceptors, target);
37
- return target;
38
- };
39
- }
40
- exports.UseInterceptors = UseInterceptors;
@@ -1,21 +0,0 @@
1
- import { PipeTransform } from "@venok/core/interfaces/features/pipes.interface";
2
- /**
3
- * Decorator that binds pipes to the scope of the provider or method,
4
- * depending on its context.
5
- *
6
- * When `@UsePipes` is used at the controller level, the pipe will be
7
- * applied to every handler (method) in the provider.
8
- *
9
- * When `@UsePipes` is used at the individual handler level, the pipe
10
- * will apply only to that specific method.
11
- *
12
- * @param pipes a single pipe instance or class, or a list of pipe instances or
13
- * classes.
14
- *
15
- * @usageNotes
16
- * Pipes can also be set up globally for all controllers and routes
17
- * using `app.useGlobalPipes()`.
18
- *
19
- * @publicApi
20
- */
21
- export declare function UsePipes(...pipes: (PipeTransform | Function)[]): ClassDecorator & MethodDecorator;
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UsePipes = void 0;
4
- const shared_helper_1 = require("@venok/core/helpers/shared.helper");
5
- const constants_1 = require("@venok/core/constants");
6
- const extends_metadata_helper_1 = require("@venok/core/helpers/extends-metadata.helper");
7
- const validate_each_helper_1 = require("@venok/core/helpers/validate-each.helper");
8
- /**
9
- * Decorator that binds pipes to the scope of the provider or method,
10
- * depending on its context.
11
- *
12
- * When `@UsePipes` is used at the controller level, the pipe will be
13
- * applied to every handler (method) in the provider.
14
- *
15
- * When `@UsePipes` is used at the individual handler level, the pipe
16
- * will apply only to that specific method.
17
- *
18
- * @param pipes a single pipe instance or class, or a list of pipe instances or
19
- * classes.
20
- *
21
- * @usageNotes
22
- * Pipes can also be set up globally for all controllers and routes
23
- * using `app.useGlobalPipes()`.
24
- *
25
- * @publicApi
26
- */
27
- function UsePipes(...pipes) {
28
- return (target, key, descriptor) => {
29
- const isPipeValid = (pipe) => pipe && ((0, shared_helper_1.isFunction)(pipe) || (0, shared_helper_1.isFunction)(pipe.transform));
30
- if (descriptor) {
31
- (0, extends_metadata_helper_1.extendArrayMetadata)(constants_1.PIPES_METADATA, pipes, descriptor.value);
32
- return descriptor;
33
- }
34
- (0, validate_each_helper_1.validateEach)(target, pipes, isPipeValid, "@UsePipes", "pipe");
35
- (0, extends_metadata_helper_1.extendArrayMetadata)(constants_1.PIPES_METADATA, pipes, target);
36
- return target;
37
- };
38
- }
39
- exports.UsePipes = UsePipes;
@@ -1,32 +0,0 @@
1
- import { Type } from "@venok/core/interfaces";
2
- import { ModulesContainer } from "@venok/core/injector/module/container";
3
- import { InstanceWrapper } from "@venok/core/injector/instance/wrapper";
4
- export declare class DiscoverableMetaHostCollection {
5
- /**
6
- * A map of class references to metadata keys.
7
- */
8
- static readonly metaHostLinks: Map<Function | Type<any>, string>;
9
- /**
10
- * A map of metadata keys to instance wrappers (providers) with the corresponding metadata key.
11
- * The map is weakly referenced by the modules container (unique per application).
12
- */
13
- private static readonly providersByMetaKey;
14
- /**
15
- * Adds a link between a class reference and a metadata key.
16
- * @param target The class reference.
17
- * @param metadataKey The metadata key.
18
- */
19
- static addClassMetaHostLink(target: Type | Function, metadataKey: string): void;
20
- /**
21
- * Inspects a provider instance wrapper and adds it to the collection of providers
22
- * if it has a metadata key.
23
- * @param hostContainerRef A reference to the module's container.
24
- * @param instanceWrapper A provider instance wrapper.
25
- * @returns void
26
- */
27
- static inspectProvider(hostContainerRef: ModulesContainer, instanceWrapper: InstanceWrapper): void;
28
- static insertByMetaKey(metaKey: string, instanceWrapper: InstanceWrapper, collection: Map<string, Set<InstanceWrapper>>): void;
29
- static getProvidersByMetaKey(hostContainerRef: ModulesContainer, metaKey: string): Set<InstanceWrapper>;
30
- private static inspectInstanceWrapper;
31
- private static getMetaKeyByInstanceWrapper;
32
- }
@@ -1,79 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DiscoverableMetaHostCollection = void 0;
4
- class DiscoverableMetaHostCollection {
5
- /**
6
- * Adds a link between a class reference and a metadata key.
7
- * @param target The class reference.
8
- * @param metadataKey The metadata key.
9
- */
10
- static addClassMetaHostLink(target, metadataKey) {
11
- this.metaHostLinks.set(target, metadataKey);
12
- }
13
- /**
14
- * Inspects a provider instance wrapper and adds it to the collection of providers
15
- * if it has a metadata key.
16
- * @param hostContainerRef A reference to the module's container.
17
- * @param instanceWrapper A provider instance wrapper.
18
- * @returns void
19
- */
20
- static inspectProvider(hostContainerRef, instanceWrapper) {
21
- return this.inspectInstanceWrapper(hostContainerRef, instanceWrapper, this.providersByMetaKey);
22
- }
23
- static insertByMetaKey(metaKey, instanceWrapper, collection) {
24
- if (collection.has(metaKey)) {
25
- const wrappers = collection.get(metaKey);
26
- wrappers.add(instanceWrapper);
27
- }
28
- else {
29
- const wrappers = new Set();
30
- wrappers.add(instanceWrapper);
31
- collection.set(metaKey, wrappers);
32
- }
33
- }
34
- static getProvidersByMetaKey(hostContainerRef, metaKey) {
35
- const wrappersByMetaKey = this.providersByMetaKey.get(hostContainerRef);
36
- return wrappersByMetaKey.get(metaKey);
37
- }
38
- static inspectInstanceWrapper(hostContainerRef, instanceWrapper, wrapperByMetaKeyMap) {
39
- const metaKey = DiscoverableMetaHostCollection.getMetaKeyByInstanceWrapper(instanceWrapper);
40
- if (!metaKey) {
41
- return;
42
- }
43
- let collection;
44
- if (wrapperByMetaKeyMap.has(hostContainerRef)) {
45
- collection = wrapperByMetaKeyMap.get(hostContainerRef);
46
- }
47
- else {
48
- collection = new Map();
49
- wrapperByMetaKeyMap.set(hostContainerRef, collection);
50
- }
51
- this.insertByMetaKey(metaKey, instanceWrapper, collection);
52
- }
53
- static getMetaKeyByInstanceWrapper(instanceWrapper) {
54
- return this.metaHostLinks.get(
55
- // NOTE: Regarding the ternary statement below,
56
- // - The condition `!wrapper.metatype` is needed because when we use `useValue`
57
- // the value of `wrapper.metatype` will be `null`.
58
- // - The condition `wrapper.inject` is needed here because when we use
59
- // `useFactory`, the value of `wrapper.metatype` will be the supplied
60
- // factory function.
61
- // For both cases, we should use `wrapper.instance.constructor` instead
62
- // of `wrapper.metatype` to resolve processor's class properly.
63
- // But since calling `wrapper.instance` could degrade overall performance
64
- // we must defer it as much we can.
65
- instanceWrapper.metatype || instanceWrapper.inject
66
- ? instanceWrapper.instance?.constructor ?? instanceWrapper.metatype
67
- : instanceWrapper.metatype);
68
- }
69
- }
70
- exports.DiscoverableMetaHostCollection = DiscoverableMetaHostCollection;
71
- /**
72
- * A map of class references to metadata keys.
73
- */
74
- DiscoverableMetaHostCollection.metaHostLinks = new Map();
75
- /**
76
- * A map of metadata keys to instance wrappers (providers) with the corresponding metadata key.
77
- * The map is weakly referenced by the modules container (unique per application).
78
- */
79
- DiscoverableMetaHostCollection.providersByMetaKey = new WeakMap();
@@ -1,5 +0,0 @@
1
- /**
2
- * @publicApi
3
- */
4
- export declare class DiscoveryModule {
5
- }