@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,40 +0,0 @@
1
- import {Configuration} from "../decorators/configuration.js";
2
- import {getConfiguration} from "./getConfiguration.js";
3
-
4
- class MyController1 {}
5
-
6
- class MyController2 {}
7
-
8
- describe("getConfiguration", () => {
9
- it("should return configuration", () => {
10
- @Configuration({test: "test"})
11
- class MyModule {}
12
-
13
- expect(getConfiguration(MyModule)).toEqual({
14
- test: "test",
15
- mount: {}
16
- });
17
- });
18
-
19
- it("should return configuration (2)", () => {
20
- @Configuration({
21
- mount: {
22
- "/v1": [MyController1]
23
- }
24
- })
25
- class MyModule {}
26
-
27
- expect(
28
- getConfiguration(MyModule, {
29
- mount: {
30
- "/v2": [MyController2]
31
- }
32
- })
33
- ).toEqual({
34
- mount: {
35
- "/v1": [MyController1],
36
- "/v2": [MyController2]
37
- }
38
- });
39
- });
40
- });
@@ -1,21 +0,0 @@
1
- import {Store} from "@tsed/core/types/Store.js";
2
- import {Type} from "@tsed/core/types/Type.js";
3
-
4
- export function mergeMount(m1: any = {}, m2: any = {}) {
5
- return Object.entries(m2).reduce((mount, [key, controllers]) => {
6
- return {
7
- ...mount,
8
- [key]: (mount[key] || []).concat(controllers)
9
- };
10
- }, m1);
11
- }
12
-
13
- export function getConfiguration(module: Type<any>, configuration: any = {}) {
14
- const store = Store.from(module).get("configuration") || {};
15
-
16
- return {
17
- ...store,
18
- ...configuration,
19
- mount: mergeMount(store.mount, configuration.mount)
20
- };
21
- }
@@ -1,9 +0,0 @@
1
- import {Metadata} from "@tsed/core/types/Metadata.js";
2
-
3
- export function getConstructorDependencies(target: any, propertyKey?: string | symbol | undefined) {
4
- return Metadata.getOwn("override:ctor:design:paramtypes", target, propertyKey) || [...Metadata.getParamTypes(target, propertyKey)] || [];
5
- }
6
-
7
- export function setConstructorDependencies(target: any, deps: any[]) {
8
- Metadata.set("override:ctor:design:paramtypes", deps, target);
9
- }
@@ -1,95 +0,0 @@
1
- import "../registries/ProviderRegistry.js";
2
-
3
- import {Store} from "@tsed/core/types/Store.js";
4
- import {type Type} from "@tsed/core/types/Type.js";
5
-
6
- import {ProviderType} from "../domain/ProviderType.js";
7
- import {injector} from "../fn/injector.js";
8
- import type {ProviderOpts} from "../interfaces/ProviderOpts.js";
9
- import type {FactoryTokenProvider, TokenProvider} from "../interfaces/TokenProvider.js";
10
- import {GlobalProviders} from "../registries/GlobalProviders.js";
11
-
12
- type BaseMethodsProvider<TypeOf, BaseProvider, T extends object> = {
13
- [K in keyof T as T[K] extends (...args: any[]) => any ? never : K]: (value: T[K]) => ProviderBuilder<TypeOf, BaseProvider, T>;
14
- };
15
-
16
- type ProviderBuilder<TypeOf, BaseProvider, T extends object> = BaseMethodsProvider<TypeOf, BaseProvider, T> & {
17
- inspect(): BaseProvider;
18
- store(): Store;
19
- token(): TypeOf;
20
- factory<FactoryReturn>(f: (...args: unknown[]) => FactoryReturn): ProviderBuilder<FactoryTokenProvider<FactoryReturn>, BaseProvider, T>;
21
- asyncFactory<FactoryReturn>(
22
- f: (...args: unknown[]) => Promise<FactoryReturn>
23
- ): ProviderBuilder<FactoryTokenProvider<FactoryReturn>, BaseProvider, T>;
24
- value<Value>(v: Value): ProviderBuilder<FactoryTokenProvider<Value>, BaseProvider, T>;
25
- class<TokenKlass>(c: Type<TokenKlass>): ProviderBuilder<TokenKlass, BaseProvider, T>;
26
- };
27
-
28
- export type ProviderBuilderFn<Provider, Picked extends keyof Provider> = <TypeOf extends TokenProvider>(
29
- token: TypeOf,
30
- options?: Partial<ProviderOpts<Type>>
31
- ) => ProviderBuilder<TypeOf, Provider, Pick<Provider, Picked>>;
32
-
33
- export function providerBuilder<Provider, Picked extends keyof Provider>(
34
- props: string[],
35
- baseOpts: Partial<ProviderOpts<Provider>> = {}
36
- ): ProviderBuilderFn<Provider, Picked> {
37
- return <TypeOf extends TokenProvider>(token: TypeOf, options: Partial<ProviderOpts<Type>> = {}) => {
38
- const merged = {
39
- global: !injector().isLoaded(),
40
- ...options,
41
- ...baseOpts,
42
- token
43
- };
44
-
45
- const provider = GlobalProviders.merge(token, merged);
46
-
47
- if (!merged.global) {
48
- injector().setProvider(token, provider);
49
- }
50
-
51
- return props.reduce(
52
- (acc, prop) => {
53
- return {
54
- ...acc,
55
- [prop]: function (value: any) {
56
- (provider as any)[prop] = value;
57
- return this;
58
- }
59
- };
60
- },
61
- {
62
- factory(factory: Function) {
63
- provider.reset();
64
- provider.useFactory = factory;
65
- return this;
66
- },
67
- asyncFactory(asyncFactory: Function) {
68
- provider.reset();
69
- provider.useAsyncFactory = asyncFactory;
70
- return this;
71
- },
72
- value(value: any) {
73
- provider.reset();
74
- provider.useValue = value;
75
- provider.type = ProviderType.VALUE;
76
- return this;
77
- },
78
- class(k: any) {
79
- provider.reset();
80
- provider.useClass = k;
81
- return this;
82
- },
83
- store() {
84
- return provider.store;
85
- },
86
- inspect() {
87
- return provider;
88
- },
89
- token() {
90
- return provider.token as TypeOf;
91
- }
92
- } as ProviderBuilder<TypeOf, Provider, Pick<Provider, Picked>>
93
- );
94
- };
95
- }
package/src/index.ts DELETED
@@ -1,2 +0,0 @@
1
- export * from "./common/index.js";
2
- export * from "./node/index.js";
@@ -1,60 +0,0 @@
1
- import {afterEach, beforeEach, expect} from "vitest";
2
-
3
- import {Injectable} from "../../common/index.js";
4
- import {DIContext} from "../domain/DIContext.js";
5
- import {DITest} from "../services/DITest.js";
6
- import {runInContext} from "../utils/asyncHookContext.js";
7
- import {InjectContext} from "./injectContext.js";
8
-
9
- describe("InjectContext", () => {
10
- beforeEach(() => DITest.create());
11
- afterEach(() => DITest.reset());
12
-
13
- it("should inject a context", async () => {
14
- @Injectable()
15
- class MyService {
16
- @InjectContext()
17
- ctx: DIContext;
18
- }
19
-
20
- const $ctx = new DIContext({
21
- id: "test",
22
- logger: DITest.injector.logger,
23
- injector: DITest.injector,
24
- maxStackSize: 0
25
- });
26
-
27
- const myService = await DITest.invoke(MyService);
28
-
29
- await runInContext($ctx, () => {
30
- expect(myService.ctx).toBeInstanceOf(DIContext);
31
- expect(myService.ctx).toEqual($ctx);
32
- });
33
-
34
- expect(myService.ctx).toBeInstanceOf(DIContext);
35
- expect(myService.ctx).not.toEqual($ctx);
36
- });
37
- it("should inject a context and get value", async () => {
38
- @Injectable()
39
- class MyService {
40
- @InjectContext((o) => o.get("test"))
41
- test: string;
42
- }
43
-
44
- const $ctx = new DIContext({
45
- id: "test",
46
- logger: DITest.injector.logger,
47
- injector: DITest.injector,
48
- maxStackSize: 0
49
- });
50
- $ctx.set("test", "value");
51
-
52
- const myService = await DITest.invoke(MyService);
53
-
54
- await runInContext($ctx, () => {
55
- expect(myService.test).toEqual("value");
56
- });
57
-
58
- expect(myService.test).toEqual(undefined);
59
- });
60
- });
@@ -1,29 +0,0 @@
1
- import {catchError} from "@tsed/core/utils/catchError.js";
2
-
3
- import {DIContext} from "../domain/DIContext.js";
4
- import {context} from "../fn/context.js";
5
-
6
- /**
7
- * Inject a context like PlatformContext or any BaseContext.
8
- *
9
- * ```typescript
10
- * @Injectable()
11
- * export class MyService {
12
- * @InjectContext()
13
- * ctx?: Context;
14
- * }
15
- * ```
16
- *
17
- * @returns {Function}
18
- * @decorator
19
- */
20
- export function InjectContext(transform: ($ctx: DIContext) => unknown = (o) => o): PropertyDecorator {
21
- return (target: any, propertyKey: string): any | void => {
22
- catchError(() => Reflect.deleteProperty(target, propertyKey));
23
- Reflect.defineProperty(target, propertyKey, {
24
- get() {
25
- return transform(context());
26
- }
27
- });
28
- };
29
- }
@@ -1,400 +0,0 @@
1
- import {levels, Logger} from "@tsed/logger";
2
-
3
- import {ContextLogger} from "./ContextLogger.js";
4
-
5
- function getIgnoreLogFixture(ignore: string[], url: string) {
6
- const ignoreReg = ignore.map((pattern: string | RegExp) => (typeof pattern === "string" ? new RegExp(pattern, "gi") : pattern));
7
- return (ignore: boolean, data: any) => {
8
- return !!ignoreReg.find((reg) => !!url.match(reg));
9
- };
10
- }
11
-
12
- describe("ContextLogger", () => {
13
- it("should create a new Context and log all", () => {
14
- const logger = {
15
- info: vi.fn(),
16
- debug: vi.fn(),
17
- warn: vi.fn(),
18
- error: vi.fn(),
19
- fatal: vi.fn(),
20
- trace: vi.fn()
21
- };
22
-
23
- const contextLogger = new ContextLogger({
24
- event: {
25
- request: {},
26
- response: {}
27
- },
28
- logger,
29
- id: "id",
30
- dateStart: new Date("2019-01-01")
31
- });
32
-
33
- contextLogger.alterIgnoreLog(getIgnoreLogFixture(["/admin"], "/"));
34
- contextLogger.alterLog((o: any, level: "debug" | "info" | "warn" | "error" | "off" | "all", withRequest: boolean) => {
35
- switch (level) {
36
- case "info":
37
- return {...o, minimal: "minimal"};
38
- default:
39
- return {...o, complete: "complete"};
40
- }
41
- });
42
-
43
- vi.spyOn(contextLogger as any, "getDuration").mockReturnValue(1);
44
-
45
- // WHEN
46
- contextLogger.debug({test: "test"});
47
- contextLogger.info({test: "test"});
48
- contextLogger.info("message");
49
- contextLogger.warn({test: "test"});
50
- contextLogger.error({test: "test"});
51
- contextLogger.fatal({test: "test"});
52
- contextLogger.trace({test: "test"});
53
-
54
- contextLogger.flush();
55
-
56
- // THEN
57
- expect(logger.info).toHaveBeenCalledWith({
58
- minimal: "minimal",
59
- duration: 1,
60
- reqId: "id",
61
- test: "test",
62
- time: expect.any(Date)
63
- });
64
- expect(logger.info).toHaveBeenCalledWith({
65
- minimal: "minimal",
66
- duration: 1,
67
- reqId: "id",
68
- message: "message",
69
- time: expect.any(Date)
70
- });
71
- expect(logger.debug).toHaveBeenCalledWith({
72
- complete: "complete",
73
- duration: 1,
74
- reqId: "id",
75
- test: "test",
76
- time: expect.any(Date)
77
- });
78
- expect(logger.warn).toHaveBeenCalledWith({
79
- complete: "complete",
80
- duration: 1,
81
- reqId: "id",
82
- test: "test",
83
- time: expect.any(Date)
84
- });
85
- expect(logger.error).toHaveBeenCalledWith({
86
- complete: "complete",
87
- duration: 1,
88
- reqId: "id",
89
- test: "test",
90
- time: expect.any(Date)
91
- });
92
- expect(logger.fatal).toHaveBeenCalledWith({
93
- complete: "complete",
94
- duration: 1,
95
- reqId: "id",
96
- test: "test",
97
- time: expect.any(Date)
98
- });
99
- expect(logger.trace).toHaveBeenCalledWith({
100
- complete: "complete",
101
- duration: 1,
102
- reqId: "id",
103
- test: "test",
104
- time: expect.any(Date)
105
- });
106
- });
107
- it("should create a new Context with initial log level (error) and change the request log level (debug)", () => {
108
- const logger = new Logger();
109
- logger.level = "error";
110
-
111
- vi.spyOn(logger, "error").mockReturnValue(undefined as never);
112
- vi.spyOn(logger, "debug").mockReturnValue(undefined as never);
113
- vi.spyOn(logger, "info").mockReturnValue(undefined as never);
114
- vi.spyOn(logger, "warn").mockReturnValue(undefined as never);
115
- vi.spyOn(logger, "trace").mockReturnValue(undefined as never);
116
- vi.spyOn(logger, "fatal").mockReturnValue(undefined as never);
117
-
118
- const contextLogger = new ContextLogger({
119
- event: {
120
- request: {},
121
- response: {}
122
- },
123
- logger,
124
- id: "id",
125
- dateStart: new Date("2019-01-01")
126
- });
127
-
128
- expect(logger.level).toEqual("ERROR");
129
- expect(contextLogger.level).toEqual(levels().ERROR);
130
-
131
- // WHEN
132
- contextLogger.level = levels().DEBUG;
133
-
134
- contextLogger.debug({test: "test"});
135
- contextLogger.info({test: "test"});
136
- contextLogger.warn({test: "test"});
137
- contextLogger.error({test: "test"});
138
- contextLogger.fatal({test: "test"});
139
- contextLogger.trace({test: "test"});
140
-
141
- contextLogger.flush();
142
-
143
- // THEN
144
- expect(logger.level).toEqual("ERROR");
145
-
146
- expect(logger.info).toHaveBeenCalledWith({
147
- duration: expect.any(Number),
148
- reqId: "id",
149
- test: "test",
150
- time: expect.any(Date)
151
- });
152
-
153
- expect(logger.debug).toHaveBeenCalledWith({
154
- duration: expect.any(Number),
155
- reqId: "id",
156
- test: "test",
157
- time: expect.any(Date)
158
- });
159
- expect(logger.warn).toHaveBeenCalledWith({
160
- duration: expect.any(Number),
161
- reqId: "id",
162
- test: "test",
163
- time: expect.any(Date)
164
- });
165
- expect(logger.error).toHaveBeenCalledWith({
166
- duration: expect.any(Number),
167
- reqId: "id",
168
- test: "test",
169
- time: expect.any(Date)
170
- });
171
- expect(logger.fatal).toHaveBeenCalledWith({
172
- duration: expect.any(Number),
173
- reqId: "id",
174
- test: "test",
175
- time: expect.any(Date)
176
- });
177
- });
178
- it("should create a new Context with initial log level (error) and not change the request log level", () => {
179
- const logger = new Logger();
180
- logger.level = "error";
181
-
182
- vi.spyOn(logger, "error").mockReturnValue(undefined as never);
183
- vi.spyOn(logger, "debug").mockReturnValue(undefined as never);
184
- vi.spyOn(logger, "info").mockReturnValue(undefined as never);
185
- vi.spyOn(logger, "warn").mockReturnValue(undefined as never);
186
- vi.spyOn(logger, "trace").mockReturnValue(undefined as never);
187
- vi.spyOn(logger, "fatal").mockReturnValue(undefined as never);
188
-
189
- const contextLogger = new ContextLogger({
190
- event: {
191
- request: {},
192
- response: {}
193
- },
194
- logger,
195
- id: "id",
196
- dateStart: new Date("2019-01-01")
197
- });
198
-
199
- expect(contextLogger.level).toEqual(levels().ERROR);
200
-
201
- // WHEN
202
- contextLogger.debug({test: "test"});
203
- contextLogger.info({test: "test"});
204
- contextLogger.warn({test: "test"});
205
- contextLogger.error({test: "test"});
206
- contextLogger.fatal({test: "test"});
207
- contextLogger.trace({test: "test"});
208
-
209
- contextLogger.flush();
210
-
211
- // THEN
212
- expect(logger.debug).not.toHaveBeenCalled();
213
- expect(logger.trace).not.toHaveBeenCalled();
214
- expect(logger.info).not.toHaveBeenCalled();
215
- expect(logger.error).toHaveBeenCalledWith({
216
- duration: expect.any(Number),
217
- reqId: "id",
218
- test: "test",
219
- time: expect.any(Date)
220
- });
221
- expect(logger.fatal).toHaveBeenCalledWith({
222
- duration: expect.any(Number),
223
- reqId: "id",
224
- test: "test",
225
- time: expect.any(Date)
226
- });
227
- });
228
- it("should create a new Context and log all (with minimalRequestPicker)", () => {
229
- const logger = {
230
- info: vi.fn(),
231
- debug: vi.fn(),
232
- warn: vi.fn(),
233
- error: vi.fn(),
234
- trace: vi.fn()
235
- };
236
-
237
- const contextLogger = new ContextLogger({
238
- event: {
239
- request: {},
240
- response: {}
241
- },
242
- logger,
243
- id: "id",
244
- startDate: new Date("2019-01-01")
245
- });
246
-
247
- contextLogger.alterIgnoreLog(getIgnoreLogFixture(["/admin"], "/url"));
248
-
249
- vi.spyOn(contextLogger as any, "getDuration").mockReturnValue(1);
250
-
251
- // WHEN
252
- contextLogger.debug({test: "test"});
253
- contextLogger.info({test: "test"});
254
- contextLogger.info("message");
255
- contextLogger.warn({test: "test"});
256
- contextLogger.error({test: "test"});
257
- contextLogger.trace({test: "test"});
258
-
259
- contextLogger.flush();
260
-
261
- // THEN
262
- expect(logger.info).toHaveBeenCalledWith({
263
- duration: 1,
264
- reqId: "id",
265
- test: "test",
266
- time: expect.any(Date)
267
- });
268
- expect(logger.info).toHaveBeenCalledWith({
269
- duration: 1,
270
- reqId: "id",
271
- message: "message",
272
- time: expect.any(Date)
273
- });
274
- expect(logger.debug).toHaveBeenCalledWith({
275
- duration: 1,
276
- reqId: "id",
277
- test: "test",
278
- time: expect.any(Date)
279
- });
280
- expect(logger.warn).toHaveBeenCalledWith({
281
- duration: 1,
282
- reqId: "id",
283
- test: "test",
284
- time: expect.any(Date)
285
- });
286
- expect(logger.error).toHaveBeenCalledWith({
287
- duration: 1,
288
- reqId: "id",
289
- test: "test",
290
- time: expect.any(Date)
291
- });
292
- expect(logger.trace).toHaveBeenCalledWith({
293
- duration: 1,
294
- reqId: "id",
295
- test: "test",
296
- time: expect.any(Date)
297
- });
298
- });
299
- it("should create a new Context and log nothing when pattern match with url", () => {
300
- const logger = {
301
- info: vi.fn(),
302
- debug: vi.fn(),
303
- warn: vi.fn(),
304
- error: vi.fn(),
305
- trace: vi.fn()
306
- };
307
-
308
- const contextLogger = new ContextLogger({
309
- logger,
310
- event: {
311
- request: {},
312
- response: {}
313
- },
314
- id: "id",
315
- startDate: new Date("2019-01-01"),
316
- additionalProps: {
317
- url: "/"
318
- }
319
- });
320
-
321
- contextLogger.alterIgnoreLog(getIgnoreLogFixture(["/admin"], "/admin"));
322
-
323
- vi.spyOn(contextLogger as any, "getDuration").mockReturnValue(1);
324
-
325
- // WHEN
326
- contextLogger.info({test: "test"});
327
- contextLogger.flush();
328
-
329
- // THEN
330
- return expect(logger.info).not.toHaveBeenCalled();
331
- });
332
- it("should create a new Context and flush log when maxStackSize is reached", () => {
333
- const logger = {
334
- info: vi.fn(),
335
- debug: vi.fn(),
336
- warn: vi.fn(),
337
- error: vi.fn(),
338
- trace: vi.fn()
339
- };
340
-
341
- const contextLogger = new ContextLogger({
342
- logger,
343
- event: {
344
- request: {},
345
- response: {}
346
- },
347
- id: "id",
348
- startDate: new Date("2019-01-01"),
349
- maxStackSize: 2
350
- });
351
-
352
- contextLogger.maxStackSize = 2;
353
-
354
- vi.spyOn(contextLogger as any, "getDuration").mockReturnValue(1);
355
-
356
- // WHEN
357
- contextLogger.info({test: "test"});
358
- contextLogger.info({test: "test"});
359
- contextLogger.info({test: "test"});
360
- contextLogger.info({test: "test"});
361
-
362
- // THEN
363
- return expect(logger.info).toHaveBeenCalledTimes(3);
364
- });
365
- it("should do nothing when the log level is off", () => {
366
- const logger = {
367
- info: vi.fn(),
368
- debug: vi.fn(),
369
- warn: vi.fn(),
370
- error: vi.fn(),
371
- trace: vi.fn()
372
- };
373
-
374
- const contextLogger = new ContextLogger({
375
- event: {
376
- request: {},
377
- response: {}
378
- },
379
- logger,
380
- id: "id",
381
- dateStart: new Date("2019-01-01"),
382
- level: "off"
383
- });
384
-
385
- vi.spyOn(contextLogger as any, "getDuration").mockReturnValue(1);
386
-
387
- // WHEN
388
- contextLogger.debug({test: "test"});
389
- contextLogger.info({test: "test"});
390
- contextLogger.info("message");
391
- contextLogger.warn({test: "test"});
392
- contextLogger.error({test: "test"});
393
- contextLogger.trace({test: "test"});
394
-
395
- contextLogger.flush();
396
-
397
- // THEN
398
- expect(logger.info).not.toHaveBeenCalled();
399
- });
400
- });