@tsed/di 8.11.1 → 8.11.2-rc.1

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 (381) hide show
  1. package/lib/esm/common/constants/constants.js +0 -1
  2. package/lib/esm/common/decorators/autoInjectable.js +0 -1
  3. package/lib/esm/common/decorators/configuration.js +0 -1
  4. package/lib/esm/common/decorators/constant.js +0 -1
  5. package/lib/esm/common/decorators/controller.js +0 -1
  6. package/lib/esm/common/decorators/inject.js +0 -1
  7. package/lib/esm/common/decorators/injectable.js +0 -1
  8. package/lib/esm/common/decorators/intercept.js +0 -1
  9. package/lib/esm/common/decorators/interceptor.js +0 -1
  10. package/lib/esm/common/decorators/lazyInject.js +0 -1
  11. package/lib/esm/common/decorators/module.js +0 -1
  12. package/lib/esm/common/decorators/opts.js +0 -1
  13. package/lib/esm/common/decorators/overrideProvider.js +0 -1
  14. package/lib/esm/common/decorators/scope.js +0 -1
  15. package/lib/esm/common/decorators/service.js +0 -1
  16. package/lib/esm/common/decorators/useOpts.js +0 -1
  17. package/lib/esm/common/decorators/value.js +0 -1
  18. package/lib/esm/common/domain/Container.js +0 -1
  19. package/lib/esm/common/domain/ControllerProvider.js +0 -1
  20. package/lib/esm/common/domain/InjectablePropertyType.js +0 -1
  21. package/lib/esm/common/domain/LocalsContainer.js +0 -1
  22. package/lib/esm/common/domain/Provider.js +0 -1
  23. package/lib/esm/common/domain/ProviderScope.js +0 -1
  24. package/lib/esm/common/domain/ProviderType.js +0 -1
  25. package/lib/esm/common/errors/InjectionError.js +0 -1
  26. package/lib/esm/common/errors/InvalidPropertyTokenError.js +0 -1
  27. package/lib/esm/common/fn/configuration.js +0 -1
  28. package/lib/esm/common/fn/constant.js +0 -1
  29. package/lib/esm/common/fn/inject.js +0 -1
  30. package/lib/esm/common/fn/injectMany.js +0 -1
  31. package/lib/esm/common/fn/injectable.js +0 -1
  32. package/lib/esm/common/fn/injector.js +0 -1
  33. package/lib/esm/common/fn/lazyInject.js +0 -1
  34. package/lib/esm/common/fn/localsContainer.js +0 -1
  35. package/lib/esm/common/fn/logger.js +0 -1
  36. package/lib/esm/common/fn/refValue.js +0 -1
  37. package/lib/esm/common/index.js +0 -1
  38. package/lib/esm/common/interfaces/DIConfigurationOptions.js +0 -1
  39. package/lib/esm/common/interfaces/DILogger.js +0 -1
  40. package/lib/esm/common/interfaces/DILoggerOptions.js +0 -1
  41. package/lib/esm/common/interfaces/ImportTokenProviderOpts.js +0 -1
  42. package/lib/esm/common/interfaces/InterceptorContext.js +0 -1
  43. package/lib/esm/common/interfaces/InterceptorMethods.js +0 -1
  44. package/lib/esm/common/interfaces/InvokeOptions.js +0 -1
  45. package/lib/esm/common/interfaces/OnDestroy.js +0 -1
  46. package/lib/esm/common/interfaces/OnInit.js +0 -1
  47. package/lib/esm/common/interfaces/ProviderOpts.js +0 -1
  48. package/lib/esm/common/interfaces/RegistrySettings.js +0 -1
  49. package/lib/esm/common/interfaces/ResolvedInvokeOptions.js +0 -1
  50. package/lib/esm/common/interfaces/TokenProvider.js +0 -1
  51. package/lib/esm/common/interfaces/TokenRoute.js +0 -1
  52. package/lib/esm/common/registries/GlobalProviders.js +0 -1
  53. package/lib/esm/common/registries/ProviderRegistry.js +0 -1
  54. package/lib/esm/common/services/DIConfiguration.js +0 -1
  55. package/lib/esm/common/services/DILogger.js +0 -1
  56. package/lib/esm/common/services/InjectorService.js +0 -1
  57. package/lib/esm/common/utils/colors.js +0 -1
  58. package/lib/esm/common/utils/createContainer.js +0 -1
  59. package/lib/esm/common/utils/discoverHooks.js +0 -1
  60. package/lib/esm/common/utils/getConfiguration.js +0 -1
  61. package/lib/esm/common/utils/getConstructorDependencies.js +0 -1
  62. package/lib/esm/common/utils/providerBuilder.js +0 -1
  63. package/lib/esm/index.js +0 -1
  64. package/lib/esm/node/decorators/injectContext.js +0 -1
  65. package/lib/esm/node/domain/ContextLogger.js +0 -1
  66. package/lib/esm/node/domain/DIContext.js +0 -1
  67. package/lib/esm/node/fn/context.js +0 -1
  68. package/lib/esm/node/fn/contextLogger.js +0 -1
  69. package/lib/esm/node/index.js +0 -1
  70. package/lib/esm/node/interfaces/AlterRunInContext.js +0 -1
  71. package/lib/esm/node/services/DILogger.js +0 -1
  72. package/lib/esm/node/services/DITest.js +0 -1
  73. package/lib/esm/node/utils/asyncHookContext.js +0 -1
  74. package/lib/esm/node/utils/attachLogger.js +0 -1
  75. package/lib/esm/node/utils/setLoggerConfiguration.js +0 -1
  76. package/lib/esm/node/utils/setLoggerFormat.js +0 -1
  77. package/lib/esm/node/utils/setLoggerLevel.js +0 -1
  78. package/package.json +12 -10
  79. package/.barrelsby.json +0 -5
  80. package/lib/browser/chunks/injectable.js +0 -65
  81. package/lib/browser/chunks/injectable.js.map +0 -1
  82. package/lib/browser/common/constants/constants.js +0 -9
  83. package/lib/browser/common/constants/constants.js.map +0 -1
  84. package/lib/browser/common/decorators/autoInjectable.js +0 -26
  85. package/lib/browser/common/decorators/autoInjectable.js.map +0 -1
  86. package/lib/browser/common/decorators/configuration.js +0 -24
  87. package/lib/browser/common/decorators/configuration.js.map +0 -1
  88. package/lib/browser/common/decorators/constant.js +0 -27
  89. package/lib/browser/common/decorators/constant.js.map +0 -1
  90. package/lib/browser/common/decorators/controller.js +0 -23
  91. package/lib/browser/common/decorators/controller.js.map +0 -1
  92. package/lib/browser/common/decorators/inject.js +0 -62
  93. package/lib/browser/common/decorators/inject.js.map +0 -1
  94. package/lib/browser/common/decorators/injectable.js +0 -14
  95. package/lib/browser/common/decorators/injectable.js.map +0 -1
  96. package/lib/browser/common/decorators/intercept.js +0 -57
  97. package/lib/browser/common/decorators/intercept.js.map +0 -1
  98. package/lib/browser/common/decorators/interceptor.js +0 -11
  99. package/lib/browser/common/decorators/interceptor.js.map +0 -1
  100. package/lib/browser/common/decorators/lazyInject.js +0 -43
  101. package/lib/browser/common/decorators/lazyInject.js.map +0 -1
  102. package/lib/browser/common/decorators/module.js +0 -22
  103. package/lib/browser/common/decorators/module.js.map +0 -1
  104. package/lib/browser/common/decorators/opts.js +0 -12
  105. package/lib/browser/common/decorators/opts.js.map +0 -1
  106. package/lib/browser/common/decorators/overrideProvider.js +0 -10
  107. package/lib/browser/common/decorators/overrideProvider.js.map +0 -1
  108. package/lib/browser/common/decorators/scope.js +0 -9
  109. package/lib/browser/common/decorators/scope.js.map +0 -1
  110. package/lib/browser/common/decorators/service.js +0 -8
  111. package/lib/browser/common/decorators/service.js.map +0 -1
  112. package/lib/browser/common/decorators/useOpts.js +0 -23
  113. package/lib/browser/common/decorators/useOpts.js.map +0 -1
  114. package/lib/browser/common/decorators/value.js +0 -23
  115. package/lib/browser/common/decorators/value.js.map +0 -1
  116. package/lib/browser/common/domain/Container.js +0 -64
  117. package/lib/browser/common/domain/Container.js.map +0 -1
  118. package/lib/browser/common/domain/ControllerProvider.js +0 -35
  119. package/lib/browser/common/domain/ControllerProvider.js.map +0 -1
  120. package/lib/browser/common/domain/InjectablePropertyType.js +0 -5
  121. package/lib/browser/common/domain/InjectablePropertyType.js.map +0 -1
  122. package/lib/browser/common/domain/LocalsContainer.js +0 -13
  123. package/lib/browser/common/domain/LocalsContainer.js.map +0 -1
  124. package/lib/browser/common/domain/Provider.js +0 -144
  125. package/lib/browser/common/domain/Provider.js.map +0 -1
  126. package/lib/browser/common/domain/ProviderScope.js +0 -5
  127. package/lib/browser/common/domain/ProviderScope.js.map +0 -1
  128. package/lib/browser/common/domain/ProviderType.js +0 -5
  129. package/lib/browser/common/domain/ProviderType.js.map +0 -1
  130. package/lib/browser/common/errors/InjectionError.js +0 -31
  131. package/lib/browser/common/errors/InjectionError.js.map +0 -1
  132. package/lib/browser/common/errors/InvalidPropertyTokenError.js +0 -17
  133. package/lib/browser/common/errors/InvalidPropertyTokenError.js.map +0 -1
  134. package/lib/browser/common/fn/configuration.js +0 -13
  135. package/lib/browser/common/fn/configuration.js.map +0 -1
  136. package/lib/browser/common/fn/constant.js +0 -8
  137. package/lib/browser/common/fn/constant.js.map +0 -1
  138. package/lib/browser/common/fn/inject.js +0 -13
  139. package/lib/browser/common/fn/inject.js.map +0 -1
  140. package/lib/browser/common/fn/injectMany.js +0 -9
  141. package/lib/browser/common/fn/injectMany.js.map +0 -1
  142. package/lib/browser/common/fn/injectable.js +0 -8
  143. package/lib/browser/common/fn/injectable.js.map +0 -1
  144. package/lib/browser/common/fn/injector.js +0 -13
  145. package/lib/browser/common/fn/injector.js.map +0 -1
  146. package/lib/browser/common/fn/lazyInject.js +0 -23
  147. package/lib/browser/common/fn/lazyInject.js.map +0 -1
  148. package/lib/browser/common/fn/localsContainer.js +0 -29
  149. package/lib/browser/common/fn/localsContainer.js.map +0 -1
  150. package/lib/browser/common/fn/logger.js +0 -8
  151. package/lib/browser/common/fn/logger.js.map +0 -1
  152. package/lib/browser/common/fn/refValue.js +0 -15
  153. package/lib/browser/common/fn/refValue.js.map +0 -1
  154. package/lib/browser/common/index.js +0 -115
  155. package/lib/browser/common/index.js.map +0 -1
  156. package/lib/browser/common/registries/GlobalProviders.js +0 -102
  157. package/lib/browser/common/registries/GlobalProviders.js.map +0 -1
  158. package/lib/browser/common/registries/ProviderRegistry.js +0 -8
  159. package/lib/browser/common/registries/ProviderRegistry.js.map +0 -1
  160. package/lib/browser/common/services/DIConfiguration.js +0 -99
  161. package/lib/browser/common/services/DIConfiguration.js.map +0 -1
  162. package/lib/browser/common/services/DILogger.js +0 -8
  163. package/lib/browser/common/services/DILogger.js.map +0 -1
  164. package/lib/browser/common/services/InjectorService.js +0 -378
  165. package/lib/browser/common/services/InjectorService.js.map +0 -1
  166. package/lib/browser/common/utils/colors.js +0 -5
  167. package/lib/browser/common/utils/colors.js.map +0 -1
  168. package/lib/browser/common/utils/createContainer.js +0 -10
  169. package/lib/browser/common/utils/createContainer.js.map +0 -1
  170. package/lib/browser/common/utils/discoverHooks.js +0 -17
  171. package/lib/browser/common/utils/discoverHooks.js.map +0 -1
  172. package/lib/browser/common/utils/getConfiguration.js +0 -20
  173. package/lib/browser/common/utils/getConfiguration.js.map +0 -1
  174. package/lib/browser/common/utils/getConstructorDependencies.js +0 -12
  175. package/lib/browser/common/utils/getConstructorDependencies.js.map +0 -1
  176. package/lib/browser/common/utils/providerBuilder.js +0 -8
  177. package/lib/browser/common/utils/providerBuilder.js.map +0 -1
  178. package/lib/esm/common/constants/constants.js.map +0 -1
  179. package/lib/esm/common/decorators/autoInjectable.js.map +0 -1
  180. package/lib/esm/common/decorators/configuration.js.map +0 -1
  181. package/lib/esm/common/decorators/constant.js.map +0 -1
  182. package/lib/esm/common/decorators/controller.js.map +0 -1
  183. package/lib/esm/common/decorators/inject.js.map +0 -1
  184. package/lib/esm/common/decorators/injectable.js.map +0 -1
  185. package/lib/esm/common/decorators/intercept.js.map +0 -1
  186. package/lib/esm/common/decorators/interceptor.js.map +0 -1
  187. package/lib/esm/common/decorators/lazyInject.js.map +0 -1
  188. package/lib/esm/common/decorators/module.js.map +0 -1
  189. package/lib/esm/common/decorators/opts.js.map +0 -1
  190. package/lib/esm/common/decorators/overrideProvider.js.map +0 -1
  191. package/lib/esm/common/decorators/scope.js.map +0 -1
  192. package/lib/esm/common/decorators/service.js.map +0 -1
  193. package/lib/esm/common/decorators/useOpts.js.map +0 -1
  194. package/lib/esm/common/decorators/value.js.map +0 -1
  195. package/lib/esm/common/domain/Container.js.map +0 -1
  196. package/lib/esm/common/domain/ControllerProvider.js.map +0 -1
  197. package/lib/esm/common/domain/InjectablePropertyType.js.map +0 -1
  198. package/lib/esm/common/domain/LocalsContainer.js.map +0 -1
  199. package/lib/esm/common/domain/Provider.js.map +0 -1
  200. package/lib/esm/common/domain/ProviderScope.js.map +0 -1
  201. package/lib/esm/common/domain/ProviderType.js.map +0 -1
  202. package/lib/esm/common/errors/InjectionError.js.map +0 -1
  203. package/lib/esm/common/errors/InvalidPropertyTokenError.js.map +0 -1
  204. package/lib/esm/common/fn/configuration.js.map +0 -1
  205. package/lib/esm/common/fn/constant.js.map +0 -1
  206. package/lib/esm/common/fn/inject.js.map +0 -1
  207. package/lib/esm/common/fn/injectMany.js.map +0 -1
  208. package/lib/esm/common/fn/injectable.js.map +0 -1
  209. package/lib/esm/common/fn/injector.js.map +0 -1
  210. package/lib/esm/common/fn/lazyInject.js.map +0 -1
  211. package/lib/esm/common/fn/localsContainer.js.map +0 -1
  212. package/lib/esm/common/fn/logger.js.map +0 -1
  213. package/lib/esm/common/fn/refValue.js.map +0 -1
  214. package/lib/esm/common/index.js.map +0 -1
  215. package/lib/esm/common/interfaces/DIConfigurationOptions.js.map +0 -1
  216. package/lib/esm/common/interfaces/DILogger.js.map +0 -1
  217. package/lib/esm/common/interfaces/DILoggerOptions.js.map +0 -1
  218. package/lib/esm/common/interfaces/ImportTokenProviderOpts.js.map +0 -1
  219. package/lib/esm/common/interfaces/InterceptorContext.js.map +0 -1
  220. package/lib/esm/common/interfaces/InterceptorMethods.js.map +0 -1
  221. package/lib/esm/common/interfaces/InvokeOptions.js.map +0 -1
  222. package/lib/esm/common/interfaces/OnDestroy.js.map +0 -1
  223. package/lib/esm/common/interfaces/OnInit.js.map +0 -1
  224. package/lib/esm/common/interfaces/ProviderOpts.js.map +0 -1
  225. package/lib/esm/common/interfaces/RegistrySettings.js.map +0 -1
  226. package/lib/esm/common/interfaces/ResolvedInvokeOptions.js.map +0 -1
  227. package/lib/esm/common/interfaces/TokenProvider.js.map +0 -1
  228. package/lib/esm/common/interfaces/TokenRoute.js.map +0 -1
  229. package/lib/esm/common/registries/GlobalProviders.js.map +0 -1
  230. package/lib/esm/common/registries/ProviderRegistry.js.map +0 -1
  231. package/lib/esm/common/services/DIConfiguration.js.map +0 -1
  232. package/lib/esm/common/services/DILogger.js.map +0 -1
  233. package/lib/esm/common/services/InjectorService.js.map +0 -1
  234. package/lib/esm/common/utils/colors.js.map +0 -1
  235. package/lib/esm/common/utils/createContainer.js.map +0 -1
  236. package/lib/esm/common/utils/discoverHooks.js.map +0 -1
  237. package/lib/esm/common/utils/getConfiguration.js.map +0 -1
  238. package/lib/esm/common/utils/getConstructorDependencies.js.map +0 -1
  239. package/lib/esm/common/utils/providerBuilder.js.map +0 -1
  240. package/lib/esm/index.js.map +0 -1
  241. package/lib/esm/node/decorators/injectContext.js.map +0 -1
  242. package/lib/esm/node/domain/ContextLogger.js.map +0 -1
  243. package/lib/esm/node/domain/DIContext.js.map +0 -1
  244. package/lib/esm/node/fn/context.js.map +0 -1
  245. package/lib/esm/node/fn/contextLogger.js.map +0 -1
  246. package/lib/esm/node/index.js.map +0 -1
  247. package/lib/esm/node/interfaces/AlterRunInContext.js.map +0 -1
  248. package/lib/esm/node/services/DILogger.js.map +0 -1
  249. package/lib/esm/node/services/DITest.js.map +0 -1
  250. package/lib/esm/node/utils/asyncHookContext.js.map +0 -1
  251. package/lib/esm/node/utils/attachLogger.js.map +0 -1
  252. package/lib/esm/node/utils/setLoggerConfiguration.js.map +0 -1
  253. package/lib/esm/node/utils/setLoggerFormat.js.map +0 -1
  254. package/lib/esm/node/utils/setLoggerLevel.js.map +0 -1
  255. package/src/common/constants/constants.ts +0 -5
  256. package/src/common/decorators/autoInjectable.spec.ts +0 -135
  257. package/src/common/decorators/autoInjectable.ts +0 -60
  258. package/src/common/decorators/configuration.spec.ts +0 -45
  259. package/src/common/decorators/configuration.ts +0 -36
  260. package/src/common/decorators/constant.spec.ts +0 -67
  261. package/src/common/decorators/constant.ts +0 -73
  262. package/src/common/decorators/controller.spec.ts +0 -43
  263. package/src/common/decorators/controller.ts +0 -73
  264. package/src/common/decorators/inject.spec.ts +0 -298
  265. package/src/common/decorators/inject.ts +0 -150
  266. package/src/common/decorators/injectable.spec.ts +0 -43
  267. package/src/common/decorators/injectable.ts +0 -30
  268. package/src/common/decorators/intercept.spec.ts +0 -150
  269. package/src/common/decorators/intercept.ts +0 -89
  270. package/src/common/decorators/interceptor.ts +0 -17
  271. package/src/common/decorators/lazyInject.spec.ts +0 -53
  272. package/src/common/decorators/lazyInject.ts +0 -92
  273. package/src/common/decorators/module.ts +0 -52
  274. package/src/common/decorators/opts.ts +0 -51
  275. package/src/common/decorators/overrideProvider.spec.ts +0 -30
  276. package/src/common/decorators/overrideProvider.ts +0 -15
  277. package/src/common/decorators/scope.spec.ts +0 -25
  278. package/src/common/decorators/scope.ts +0 -13
  279. package/src/common/decorators/service.ts +0 -14
  280. package/src/common/decorators/useOpts.spec.ts +0 -90
  281. package/src/common/decorators/useOpts.ts +0 -64
  282. package/src/common/decorators/value.spec.ts +0 -59
  283. package/src/common/decorators/value.ts +0 -60
  284. package/src/common/domain/Container.spec.ts +0 -85
  285. package/src/common/domain/Container.ts +0 -80
  286. package/src/common/domain/ControllerProvider.spec.ts +0 -55
  287. package/src/common/domain/ControllerProvider.ts +0 -48
  288. package/src/common/domain/InjectablePropertyType.ts +0 -7
  289. package/src/common/domain/LocalsContainer.spec.ts +0 -20
  290. package/src/common/domain/LocalsContainer.ts +0 -11
  291. package/src/common/domain/Provider.spec.ts +0 -107
  292. package/src/common/domain/Provider.ts +0 -218
  293. package/src/common/domain/ProviderScope.ts +0 -5
  294. package/src/common/domain/ProviderType.ts +0 -8
  295. package/src/common/errors/InjectionError.spec.ts +0 -17
  296. package/src/common/errors/InjectionError.ts +0 -71
  297. package/src/common/errors/InvalidPropertyTokenError.ts +0 -14
  298. package/src/common/fn/configuration.spec.ts +0 -42
  299. package/src/common/fn/configuration.ts +0 -22
  300. package/src/common/fn/constant.spec.ts +0 -37
  301. package/src/common/fn/constant.ts +0 -7
  302. package/src/common/fn/inject.spec.ts +0 -54
  303. package/src/common/fn/inject.ts +0 -32
  304. package/src/common/fn/injectMany.ts +0 -16
  305. package/src/common/fn/injectable.spec.ts +0 -88
  306. package/src/common/fn/injectable.ts +0 -15
  307. package/src/common/fn/injector.ts +0 -26
  308. package/src/common/fn/lazyInject.spec.ts +0 -22
  309. package/src/common/fn/lazyInject.ts +0 -36
  310. package/src/common/fn/localsContainer.ts +0 -55
  311. package/src/common/fn/logger.ts +0 -8
  312. package/src/common/fn/refValue.spec.ts +0 -47
  313. package/src/common/fn/refValue.ts +0 -33
  314. package/src/common/index.ts +0 -64
  315. package/src/common/integration/async-factory.spec.ts +0 -60
  316. package/src/common/integration/di.spec.ts +0 -153
  317. package/src/common/integration/imports.spec.ts +0 -39
  318. package/src/common/integration/request.spec.ts +0 -79
  319. package/src/common/integration/singleton.spec.ts +0 -125
  320. package/src/common/interfaces/DIConfigurationOptions.ts +0 -29
  321. package/src/common/interfaces/DILogger.ts +0 -13
  322. package/src/common/interfaces/DILoggerOptions.ts +0 -54
  323. package/src/common/interfaces/ImportTokenProviderOpts.ts +0 -29
  324. package/src/common/interfaces/InterceptorContext.ts +0 -13
  325. package/src/common/interfaces/InterceptorMethods.ts +0 -5
  326. package/src/common/interfaces/InvokeOptions.ts +0 -28
  327. package/src/common/interfaces/OnDestroy.ts +0 -3
  328. package/src/common/interfaces/OnInit.ts +0 -3
  329. package/src/common/interfaces/ProviderOpts.ts +0 -57
  330. package/src/common/interfaces/RegistrySettings.ts +0 -11
  331. package/src/common/interfaces/ResolvedInvokeOptions.ts +0 -14
  332. package/src/common/interfaces/TokenProvider.ts +0 -8
  333. package/src/common/interfaces/TokenRoute.ts +0 -6
  334. package/src/common/registries/GlobalProviders.spec.ts +0 -94
  335. package/src/common/registries/GlobalProviders.ts +0 -132
  336. package/src/common/registries/ProviderRegistry.spec.ts +0 -36
  337. package/src/common/registries/ProviderRegistry.ts +0 -32
  338. package/src/common/services/DIConfiguration.spec.ts +0 -60
  339. package/src/common/services/DIConfiguration.ts +0 -142
  340. package/src/common/services/DILogger.spec.ts +0 -22
  341. package/src/common/services/DILogger.ts +0 -8
  342. package/src/common/services/InjectorService.spec.ts +0 -793
  343. package/src/common/services/InjectorService.ts +0 -612
  344. package/src/common/utils/colors.spec.ts +0 -9
  345. package/src/common/utils/colors.ts +0 -11
  346. package/src/common/utils/createContainer.spec.ts +0 -18
  347. package/src/common/utils/createContainer.ts +0 -14
  348. package/src/common/utils/discoverHooks.ts +0 -16
  349. package/src/common/utils/getConfiguration.spec.ts +0 -40
  350. package/src/common/utils/getConfiguration.ts +0 -21
  351. package/src/common/utils/getConstructorDependencies.ts +0 -9
  352. package/src/common/utils/providerBuilder.ts +0 -95
  353. package/src/index.ts +0 -2
  354. package/src/node/decorators/injectContext.spec.ts +0 -60
  355. package/src/node/decorators/injectContext.ts +0 -29
  356. package/src/node/domain/ContextLogger.spec.ts +0 -400
  357. package/src/node/domain/ContextLogger.ts +0 -155
  358. package/src/node/domain/DIContext.spec.ts +0 -105
  359. package/src/node/domain/DIContext.ts +0 -115
  360. package/src/node/fn/context.ts +0 -24
  361. package/src/node/fn/contextLogger.spec.ts +0 -47
  362. package/src/node/fn/contextLogger.ts +0 -9
  363. package/src/node/index.ts +0 -16
  364. package/src/node/integration/async-factory-invoke.spec.ts +0 -58
  365. package/src/node/integration/inject-context.spec.ts +0 -29
  366. package/src/node/integration/invoke-oninit.spec.ts +0 -25
  367. package/src/node/interfaces/AlterRunInContext.ts +0 -3
  368. package/src/node/services/DILogger.spec.ts +0 -24
  369. package/src/node/services/DILogger.ts +0 -6
  370. package/src/node/services/DITest.spec.ts +0 -109
  371. package/src/node/services/DITest.ts +0 -122
  372. package/src/node/utils/asyncHookContext.spec.ts +0 -147
  373. package/src/node/utils/asyncHookContext.ts +0 -48
  374. package/src/node/utils/attachLogger.spec.ts +0 -14
  375. package/src/node/utils/attachLogger.ts +0 -7
  376. package/src/node/utils/setLoggerConfiguration.spec.ts +0 -43
  377. package/src/node/utils/setLoggerConfiguration.ts +0 -7
  378. package/src/node/utils/setLoggerFormat.ts +0 -33
  379. package/src/node/utils/setLoggerLevel.ts +0 -12
  380. package/vite.config.mts +0 -45
  381. package/vitest.config.mts +0 -21
@@ -1,94 +0,0 @@
1
- import {LocalsContainer} from "../domain/LocalsContainer.js";
2
- import {Provider} from "../domain/Provider.js";
3
- import {ProviderType} from "../domain/ProviderType.js";
4
- import {InjectorService} from "../services/InjectorService.js";
5
- import {GlobalProviderRegistry, GlobalProviders} from "./GlobalProviders.js";
6
- import {registerProvider} from "./ProviderRegistry.js";
7
-
8
- describe("GlobalProviderRegistry", () => {
9
- describe("createRegistry()", () => {
10
- it("should create registry", () => {
11
- // GIVEN
12
- const providers = new GlobalProviderRegistry();
13
-
14
- // WHEN
15
- providers.createRegistry("test", Provider, {});
16
-
17
- // THEN
18
- expect(providers.getRegistrySettings("test")).toEqual({
19
- model: Provider
20
- });
21
- });
22
- });
23
- describe("getRegistrySettings()", () => {
24
- it("should get registry from provider type (CONTROLLER)", () => {
25
- // GIVEN
26
- const providers = new GlobalProviderRegistry();
27
- providers.createRegistry(ProviderType.CONTROLLER, Provider, {});
28
-
29
- const provider = new Provider(Symbol.for("token"));
30
- provider.type = ProviderType.CONTROLLER;
31
-
32
- providers.set(Symbol.for("token"), provider);
33
-
34
- // WHEN
35
- const settings = providers.getRegistrySettings(Symbol.for("token"));
36
-
37
- // THEN
38
- expect(settings).toEqual({
39
- model: Provider
40
- });
41
- });
42
- it("should get registry from provider type (PROVIDER)", () => {
43
- // GIVEN
44
- const providers = new GlobalProviderRegistry();
45
- const provider = new Provider("token");
46
- provider.type = ProviderType.PROVIDER;
47
- // WHEN
48
- const settings = providers.getRegistrySettings(provider as never);
49
-
50
- // THEN
51
- expect(settings).toEqual({
52
- model: Provider
53
- });
54
- });
55
- });
56
- describe("merge()", () => {
57
- it("should create new metadata", () => {
58
- const registry = new GlobalProviderRegistry();
59
- const clazz = class {};
60
-
61
- registry.merge(clazz, {attr1: 1});
62
- expect(registry.get(clazz)?.attr1).toEqual(1);
63
- });
64
-
65
- it("should merge metadata", () => {
66
- const registry = new GlobalProviderRegistry();
67
- const clazz = class {};
68
- registry.merge(clazz, {attr1: 1});
69
- registry.merge(clazz, {attr2: 2});
70
-
71
- expect(registry.get(clazz)?.attr1).toEqual(1);
72
- expect(registry.get(clazz)?.attr2).toEqual(2);
73
-
74
- registry.delete(clazz);
75
-
76
- expect(registry.get(clazz)).toBeUndefined();
77
- });
78
- });
79
- describe("hooks", () => {
80
- it("should collect hooks", () => {
81
- class MyService {
82
- $onInit() {}
83
-
84
- $onReady() {}
85
- }
86
-
87
- const provider = registerProvider({
88
- token: MyService
89
- });
90
-
91
- expect(Object.keys(provider.hooks || {})).toEqual(["$onInit", "$onReady"]);
92
- });
93
- });
94
- });
@@ -1,132 +0,0 @@
1
- import {Type} from "@tsed/core/types/Type.js";
2
- import {getClassOrSymbol} from "@tsed/core/utils/getClassOrSymbol.js";
3
-
4
- import {Provider} from "../domain/Provider.js";
5
- import {ProviderType} from "../domain/ProviderType.js";
6
- import {ProviderOpts} from "../interfaces/ProviderOpts.js";
7
- import {RegistrySettings} from "../interfaces/RegistrySettings.js";
8
- import {TokenProvider} from "../interfaces/TokenProvider.js";
9
-
10
- export class GlobalProviderRegistry extends Map<TokenProvider, Provider> {
11
- #settings: Map<TokenProvider, RegistrySettings> = new Map();
12
-
13
- /**
14
- * The get() method returns a specified element from a Map object.
15
- * @param key Required. The key of the element to return from the Map object.
16
- * @returns {T} Returns the element associated with the specified key or undefined if the key can't be found in the Map object.
17
- */
18
- get(key: TokenProvider): Provider | undefined {
19
- return super.get(getClassOrSymbol(key));
20
- }
21
-
22
- /**
23
- * The has() method returns a boolean indicating whether an element with the specified key exists or not.
24
- * @param key
25
- * @returns {boolean}
26
- */
27
- has(key: TokenProvider): boolean {
28
- return super.has(getClassOrSymbol(key));
29
- }
30
-
31
- /**
32
- * The set() method adds or updates an element with a specified key and value to a Map object.
33
- * @param key Required. The key of the element to add to the Map object.
34
- * @param metadata Required. The value of the element to add to the Map object.
35
- */
36
- set(key: TokenProvider, metadata: Provider): this {
37
- super.set(getClassOrSymbol(key), metadata);
38
-
39
- return this;
40
- }
41
-
42
- /**
43
- *
44
- * @param target
45
- * @param options
46
- */
47
- merge(target: TokenProvider, options: Partial<ProviderOpts>) {
48
- if (options.global === false) {
49
- return GlobalProviders.createProvider(target, options);
50
- }
51
-
52
- const meta = this.createIfNotExists(target, options);
53
-
54
- Object.keys(options).forEach((key) => {
55
- meta[key] = (options as never)[key];
56
- });
57
-
58
- this.set(target, meta);
59
-
60
- return meta;
61
- }
62
-
63
- /**
64
- * The delete() method removes the specified element from a Map object.
65
- * @param key Required. The key of the element to remove from the Map object.
66
- * @returns {boolean} Returns true if an element in the Map object existed and has been removed, or false if the element does not exist.
67
- */
68
- delete(key: TokenProvider): boolean {
69
- return super.delete(getClassOrSymbol(key));
70
- }
71
-
72
- createRegistry(type: string | symbol, model: Type<Provider>, options: Partial<RegistrySettings> = {}) {
73
- const defaultOptions = this.getRegistrySettings(type);
74
-
75
- options = Object.assign(defaultOptions, {
76
- ...options,
77
- model
78
- });
79
-
80
- this.#settings.set(type, options);
81
-
82
- return this;
83
- }
84
-
85
- getRegistrySettings(target: TokenProvider): RegistrySettings {
86
- let type: TokenProvider | ProviderType = ProviderType.PROVIDER;
87
-
88
- if (typeof target === "string") {
89
- type = target;
90
- } else {
91
- const provider = this.get(target);
92
- if (provider) {
93
- type = provider.type;
94
- }
95
- }
96
-
97
- return (
98
- this.#settings.get(type) || {
99
- model: Provider
100
- }
101
- );
102
- }
103
-
104
- protected createProvider(key: TokenProvider, options: Partial<ProviderOpts<any>>) {
105
- const type = options.type || ProviderType.PROVIDER;
106
- const {model = Provider} = this.#settings.get(type) || {};
107
-
108
- return new model(key, options);
109
- }
110
-
111
- /**
112
- *
113
- * @param key
114
- * @param options
115
- */
116
- protected createIfNotExists(key: TokenProvider, options: Partial<ProviderOpts>): Provider {
117
- if (!this.has(key)) {
118
- const item = this.createProvider(key, options);
119
-
120
- this.set(key, item);
121
- }
122
-
123
- return this.get(key)!;
124
- }
125
- }
126
-
127
- /**
128
- *
129
- * @type {GlobalProviders}
130
- */
131
- // tslint:disable-next-line: variable-name
132
- export const GlobalProviders = new GlobalProviderRegistry();
@@ -1,36 +0,0 @@
1
- import {GlobalProviders} from "./GlobalProviders.js";
2
- import {registerProvider} from "./ProviderRegistry.js";
3
-
4
- describe("ProviderRegistry", () => {
5
- describe("registerProvider()", () => {
6
- beforeEach(() => {
7
- vi.spyOn(GlobalProviders, "merge");
8
- vi.spyOn(GlobalProviders, "has").mockReturnValue(false);
9
- });
10
- afterEach(() => {
11
- vi.resetAllMocks();
12
- });
13
-
14
- it("should add provider (token)", () => {
15
- class Test {}
16
-
17
- registerProvider({token: Test});
18
-
19
- expect(GlobalProviders.merge).toHaveBeenCalledWith(Test, {
20
- token: Test,
21
- global: true
22
- });
23
- });
24
-
25
- it("should add provider (provide)", () => {
26
- class Test {}
27
-
28
- registerProvider({provide: Test});
29
-
30
- expect(GlobalProviders.merge).toHaveBeenCalledWith(Test, {
31
- token: Test,
32
- global: true
33
- });
34
- });
35
- });
36
- });
@@ -1,32 +0,0 @@
1
- import {ControllerProvider} from "../domain/ControllerProvider.js";
2
- import {ProviderType} from "../domain/ProviderType.js";
3
- import {injectable} from "../fn/injectable.js";
4
- import type {ProviderOpts} from "../interfaces/ProviderOpts.js";
5
- import type {TokenProvider} from "../interfaces/TokenProvider.js";
6
- import {GlobalProviders} from "./GlobalProviders.js";
7
-
8
- GlobalProviders.createRegistry(ProviderType.CONTROLLER, ControllerProvider);
9
-
10
- type Opts<Type = any> = Partial<ProviderOpts<Type>> &
11
- (
12
- | {
13
- token: TokenProvider<Type>;
14
- }
15
- | {
16
- /**
17
- * @deprecated use token prop instead
18
- */
19
- provide: TokenProvider<Type>;
20
- }
21
- );
22
-
23
- /**
24
- * Register a provider configuration.
25
- * @deprecated Since v8. Use injectable() function instead.
26
- */
27
- export function registerProvider<Type = any>({token, provide, ...opts}: Opts<Type>) {
28
- return injectable(token || provide, {
29
- ...opts,
30
- token: token || provide
31
- } as unknown as Partial<ProviderOpts>).inspect();
32
- }
@@ -1,60 +0,0 @@
1
- import {Env} from "@tsed/core";
2
-
3
- import {DIConfiguration} from "./DIConfiguration.js";
4
-
5
- describe("DIConfiguration", () => {
6
- describe("version()", () => {
7
- it("should get version", () => {
8
- // GIVEN
9
- const configuration = new DIConfiguration();
10
-
11
- configuration.version = "1.0.0";
12
- expect(configuration.version).toEqual("1.0.0");
13
- });
14
- });
15
- describe("env()", () => {
16
- it("should get env", () => {
17
- // GIVEN
18
- const configuration = new DIConfiguration();
19
-
20
- configuration.env = Env.DEV;
21
- expect(configuration.env).toEqual(Env.DEV);
22
- });
23
- });
24
- describe("debug()", () => {
25
- it("should return debug", () => {
26
- // GIVEN
27
- const configuration = new DIConfiguration();
28
-
29
- configuration.debug = true;
30
- expect(configuration.debug).toEqual(true);
31
-
32
- configuration.debug = false;
33
- expect(configuration.debug).toEqual(false);
34
- });
35
- });
36
- describe("forEach()", () => {
37
- it("should return all key, value", () => {
38
- // GIVEN
39
- const configuration = new DIConfiguration();
40
- const obj: any = {};
41
- configuration.forEach((value, key) => {
42
- obj[key] = value;
43
- });
44
- expect(obj).toEqual({
45
- imports: [],
46
- logger: {},
47
- routes: []
48
- });
49
- });
50
- });
51
- describe("imports()", () => {
52
- it("should get imports", () => {
53
- // GIVEN
54
- const configuration = new DIConfiguration();
55
-
56
- configuration.imports = [];
57
- expect(configuration.imports).toEqual([]);
58
- });
59
- });
60
- });
@@ -1,142 +0,0 @@
1
- import {Env} from "@tsed/core/types/Env.js";
2
- import {getValue} from "@tsed/core/utils/getValue.js";
3
- import {setValue} from "@tsed/core/utils/setValue.js";
4
-
5
- import type {DILoggerOptions} from "../interfaces/DILoggerOptions.js";
6
- import type {ImportTokenProviderOpts} from "../interfaces/ImportTokenProviderOpts.js";
7
- import type {TokenProvider} from "../interfaces/TokenProvider.js";
8
- import type {TokenRoute} from "../interfaces/TokenRoute.js";
9
-
10
- export const CONFIGURATION = Symbol.for("CONFIGURATION");
11
-
12
- export class DIConfiguration {
13
- readonly default: Map<string, any> = new Map();
14
- protected map: Map<string, any> = new Map();
15
-
16
- constructor(initialProps = {}) {
17
- Object.entries({
18
- imports: [],
19
- routes: [],
20
- logger: {},
21
- ...initialProps
22
- }).forEach(([key, value]) => {
23
- this.default.set(key, value);
24
- });
25
- }
26
-
27
- get version() {
28
- return this.get("version")!;
29
- }
30
-
31
- set version(v: string) {
32
- this.map.set("version", v);
33
- }
34
-
35
- get rootDir() {
36
- return this.get("rootDir")!;
37
- }
38
-
39
- set rootDir(value: string) {
40
- this.map.set("rootDir", value);
41
- }
42
-
43
- get env(): Env {
44
- return this.map.get("env");
45
- }
46
-
47
- set env(value: Env) {
48
- this.map.set("env", value);
49
- }
50
-
51
- get imports(): (TokenProvider | ImportTokenProviderOpts)[] {
52
- return this.get("imports")!;
53
- }
54
-
55
- set imports(imports: (TokenProvider | ImportTokenProviderOpts)[]) {
56
- this.map.set("imports", imports);
57
- }
58
-
59
- get routes(): TokenRoute[] {
60
- return this.get("routes")!;
61
- }
62
-
63
- set routes(routes: TokenRoute[]) {
64
- this.map.set("routes", routes);
65
- }
66
-
67
- get logger(): Partial<DILoggerOptions> {
68
- return this.get("logger")!;
69
- }
70
-
71
- set logger(value: Partial<DILoggerOptions>) {
72
- const logger = {...this.logger, ...value};
73
- this.map.set("logger", logger);
74
- }
75
-
76
- get debug(): boolean {
77
- return this.logger.level === "debug";
78
- }
79
-
80
- set debug(debug: boolean) {
81
- this.logger = {...this.logger, level: debug ? "debug" : "info"};
82
- }
83
-
84
- /**
85
- *
86
- * @param callbackfn
87
- * @param thisArg
88
- */
89
- forEach(callbackfn: (value: any, index: string, map: Map<string, any>) => void, thisArg?: any) {
90
- return new Set([...Array.from(this.default.keys()), ...Array.from(this.map.keys())]).forEach((key) => {
91
- callbackfn(this.getRaw(key), key, this.map);
92
- }, thisArg);
93
- }
94
-
95
- /**
96
- *
97
- * @param propertyKey
98
- * @param value
99
- */
100
- set(propertyKey: string | Partial<TsED.Configuration>, value?: any): this {
101
- if (typeof propertyKey === "string") {
102
- if (Reflect.has(this, propertyKey)) {
103
- // @ts-ignore
104
- this[propertyKey] = value;
105
- } else {
106
- this.setRaw(propertyKey, value);
107
- }
108
- } else {
109
- Object.entries(propertyKey).forEach(([key, value]) => {
110
- this.set(key, value);
111
- });
112
- }
113
-
114
- return this;
115
- }
116
-
117
- setRaw(propertyKey: string, value: any) {
118
- setValue(this.map, propertyKey, value);
119
-
120
- return this;
121
- }
122
-
123
- /**
124
- *
125
- * @param propertyKey
126
- * @param defaultValue
127
- * @returns {undefined|any}
128
- */
129
- get<T = any>(propertyKey: string, defaultValue?: T): T {
130
- return this.getRaw(propertyKey, defaultValue);
131
- }
132
-
133
- protected getRaw(propertyKey: string, defaultValue?: any): any {
134
- const value = getValue(this.map, propertyKey);
135
-
136
- if (value !== undefined) {
137
- return value;
138
- }
139
-
140
- return getValue(this.default, propertyKey, defaultValue);
141
- }
142
- }
@@ -1,22 +0,0 @@
1
- import {Container, destroyInjector, Inject, Injectable, injector, LOGGER} from "../../common/index.js";
2
-
3
- describe("DILogger", () => {
4
- afterEach(() => destroyInjector());
5
- it("should inject logger in another service", async () => {
6
- @Injectable()
7
- class MyService {
8
- @Inject(LOGGER)
9
- logger: LOGGER;
10
- }
11
-
12
- injector().logger = console;
13
-
14
- const container = new Container();
15
- container.add(MyService);
16
-
17
- await injector().load(container);
18
- const logger = injector().get(MyService)!.logger;
19
-
20
- expect(logger).toEqual(injector().logger);
21
- });
22
- });
@@ -1,8 +0,0 @@
1
- import {injectable} from "../fn/injectable.js";
2
- import {injector} from "../fn/injector.js";
3
- import {DILogger} from "../interfaces/DILogger.js";
4
-
5
- export const LOGGER = Symbol.for("LOGGER");
6
- export type LOGGER = DILogger;
7
-
8
- injectable(LOGGER).factory(() => injector().logger);