@tsed/di 7.83.3 → 8.0.0-alpha.10

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 (289) hide show
  1. package/lib/browser/di.umd.min.js +1 -1
  2. package/lib/browser/di.umd.min.js.map +1 -1
  3. package/lib/esm/common/constants/constants.js +5 -3
  4. package/lib/esm/common/constants/constants.js.map +1 -1
  5. package/lib/esm/common/decorators/autoInjectable.js +23 -3
  6. package/lib/esm/common/decorators/autoInjectable.js.map +1 -1
  7. package/lib/esm/common/decorators/configuration.js.map +1 -1
  8. package/lib/esm/common/decorators/constant.js +28 -11
  9. package/lib/esm/common/decorators/constant.js.map +1 -1
  10. package/lib/esm/common/decorators/controller.js.map +1 -1
  11. package/lib/esm/common/decorators/inject.js +63 -73
  12. package/lib/esm/common/decorators/inject.js.map +1 -1
  13. package/lib/esm/common/decorators/intercept.js +40 -13
  14. package/lib/esm/common/decorators/intercept.js.map +1 -1
  15. package/lib/esm/common/decorators/lazyInject.js +15 -15
  16. package/lib/esm/common/decorators/lazyInject.js.map +1 -1
  17. package/lib/esm/common/decorators/module.js +1 -1
  18. package/lib/esm/common/decorators/module.js.map +1 -1
  19. package/lib/esm/common/decorators/opts.js +2 -2
  20. package/lib/esm/common/decorators/opts.js.map +1 -1
  21. package/lib/esm/common/decorators/overrideProvider.js.map +1 -1
  22. package/lib/esm/common/decorators/scope.js.map +1 -1
  23. package/lib/esm/common/decorators/useOpts.js +3 -7
  24. package/lib/esm/common/decorators/useOpts.js.map +1 -1
  25. package/lib/esm/common/decorators/value.js +17 -11
  26. package/lib/esm/common/decorators/value.js.map +1 -1
  27. package/lib/esm/common/domain/Container.js +3 -3
  28. package/lib/esm/common/domain/Container.js.map +1 -1
  29. package/lib/esm/common/domain/LocalsContainer.js.map +1 -1
  30. package/lib/esm/common/domain/Provider.js +1 -1
  31. package/lib/esm/common/domain/Provider.js.map +1 -1
  32. package/lib/esm/common/errors/InjectionError.js.map +1 -1
  33. package/lib/esm/common/index.js +0 -2
  34. package/lib/esm/common/index.js.map +1 -1
  35. package/lib/esm/common/registries/GlobalProviders.js +7 -7
  36. package/lib/esm/common/registries/GlobalProviders.js.map +1 -1
  37. package/lib/esm/common/registries/ProviderRegistry.js.map +1 -1
  38. package/lib/esm/common/services/DIConfiguration.js.map +1 -1
  39. package/lib/esm/common/services/InjectorService.js +50 -167
  40. package/lib/esm/common/services/InjectorService.js.map +1 -1
  41. package/lib/esm/common/utils/createContainer.js.map +1 -1
  42. package/lib/esm/common/utils/resolveControllers.js +1 -1
  43. package/lib/esm/common/utils/resolveControllers.js.map +1 -1
  44. package/lib/esm/node/decorators/injectContext.js +14 -5
  45. package/lib/esm/node/decorators/injectContext.js.map +1 -1
  46. package/lib/esm/node/domain/ContextLogger.js +2 -2
  47. package/lib/esm/node/domain/ContextLogger.js.map +1 -1
  48. package/lib/esm/node/domain/DIContext.js.map +1 -1
  49. package/lib/esm/node/services/DILogger.js.map +1 -1
  50. package/lib/esm/node/services/DITest.js +10 -5
  51. package/lib/esm/node/services/DITest.js.map +1 -1
  52. package/lib/esm/node/utils/asyncHookContext.js +3 -2
  53. package/lib/esm/node/utils/asyncHookContext.js.map +1 -1
  54. package/lib/esm/node/utils/setLoggerFormat.js.map +1 -1
  55. package/lib/esm/node/utils/setLoggerLevel.js.map +1 -1
  56. package/lib/types/common/constants/constants.d.ts +5 -3
  57. package/lib/types/common/decorators/constant.d.ts +4 -1
  58. package/lib/types/common/decorators/inject.d.ts +17 -4
  59. package/lib/types/common/decorators/intercept.d.ts +3 -0
  60. package/lib/types/common/decorators/module.d.ts +1 -1
  61. package/lib/types/common/decorators/value.d.ts +2 -1
  62. package/lib/types/common/domain/Container.d.ts +4 -4
  63. package/lib/types/common/domain/Provider.d.ts +6 -6
  64. package/lib/types/common/index.d.ts +0 -2
  65. package/lib/types/common/interfaces/ImportTokenProviderOpts.d.ts +2 -2
  66. package/lib/types/common/interfaces/InterceptorContext.d.ts +1 -1
  67. package/lib/types/common/interfaces/InvokeOptions.d.ts +8 -2
  68. package/lib/types/common/interfaces/ProviderOpts.d.ts +2 -2
  69. package/lib/types/common/interfaces/RegistrySettings.d.ts +2 -1
  70. package/lib/types/common/interfaces/ResolvedInvokeOptions.d.ts +1 -1
  71. package/lib/types/common/interfaces/TokenProvider.d.ts +2 -6
  72. package/lib/types/common/registries/GlobalProviders.d.ts +2 -2
  73. package/lib/types/common/services/InjectorService.d.ts +30 -54
  74. package/lib/types/node/decorators/injectContext.d.ts +2 -1
  75. package/lib/types/node/domain/ContextLogger.d.ts +3 -3
  76. package/lib/types/node/domain/DIContext.d.ts +1 -1
  77. package/lib/types/node/services/DITest.d.ts +1 -1
  78. package/lib/types/node/utils/asyncHookContext.d.ts +4 -3
  79. package/package.json +21 -18
  80. package/lib/cjs/common/constants/constants.js +0 -7
  81. package/lib/cjs/common/constants/constants.js.map +0 -1
  82. package/lib/cjs/common/decorators/autoInjectable.js +0 -18
  83. package/lib/cjs/common/decorators/autoInjectable.js.map +0 -1
  84. package/lib/cjs/common/decorators/configuration.js +0 -24
  85. package/lib/cjs/common/decorators/configuration.js.map +0 -1
  86. package/lib/cjs/common/decorators/constant.js +0 -55
  87. package/lib/cjs/common/decorators/constant.js.map +0 -1
  88. package/lib/cjs/common/decorators/controller.js +0 -53
  89. package/lib/cjs/common/decorators/controller.js.map +0 -1
  90. package/lib/cjs/common/decorators/inject.js +0 -93
  91. package/lib/cjs/common/decorators/inject.js.map +0 -1
  92. package/lib/cjs/common/decorators/injectable.js +0 -32
  93. package/lib/cjs/common/decorators/injectable.js.map +0 -1
  94. package/lib/cjs/common/decorators/intercept.js +0 -36
  95. package/lib/cjs/common/decorators/intercept.js.map +0 -1
  96. package/lib/cjs/common/decorators/interceptor.js +0 -21
  97. package/lib/cjs/common/decorators/interceptor.js.map +0 -1
  98. package/lib/cjs/common/decorators/lazyInject.js +0 -71
  99. package/lib/cjs/common/decorators/lazyInject.js.map +0 -1
  100. package/lib/cjs/common/decorators/module.js +0 -32
  101. package/lib/cjs/common/decorators/module.js.map +0 -1
  102. package/lib/cjs/common/decorators/opts.js +0 -54
  103. package/lib/cjs/common/decorators/opts.js.map +0 -1
  104. package/lib/cjs/common/decorators/overrideProvider.js +0 -17
  105. package/lib/cjs/common/decorators/overrideProvider.js.map +0 -1
  106. package/lib/cjs/common/decorators/scope.js +0 -16
  107. package/lib/cjs/common/decorators/scope.js.map +0 -1
  108. package/lib/cjs/common/decorators/service.js +0 -18
  109. package/lib/cjs/common/decorators/service.js.map +0 -1
  110. package/lib/cjs/common/decorators/useOpts.js +0 -65
  111. package/lib/cjs/common/decorators/useOpts.js.map +0 -1
  112. package/lib/cjs/common/decorators/value.js +0 -55
  113. package/lib/cjs/common/decorators/value.js.map +0 -1
  114. package/lib/cjs/common/domain/Container.js +0 -72
  115. package/lib/cjs/common/domain/Container.js.map +0 -1
  116. package/lib/cjs/common/domain/ControllerProvider.js +0 -36
  117. package/lib/cjs/common/domain/ControllerProvider.js.map +0 -1
  118. package/lib/cjs/common/domain/InjectablePropertyType.js +0 -12
  119. package/lib/cjs/common/domain/InjectablePropertyType.js.map +0 -1
  120. package/lib/cjs/common/domain/LocalsContainer.js +0 -15
  121. package/lib/cjs/common/domain/LocalsContainer.js.map +0 -1
  122. package/lib/cjs/common/domain/Provider.js +0 -134
  123. package/lib/cjs/common/domain/Provider.js.map +0 -1
  124. package/lib/cjs/common/domain/ProviderScope.js +0 -10
  125. package/lib/cjs/common/domain/ProviderScope.js.map +0 -1
  126. package/lib/cjs/common/domain/ProviderType.js +0 -15
  127. package/lib/cjs/common/domain/ProviderType.js.map +0 -1
  128. package/lib/cjs/common/errors/InjectionError.js +0 -58
  129. package/lib/cjs/common/errors/InjectionError.js.map +0 -1
  130. package/lib/cjs/common/errors/InvalidPropertyTokenError.js +0 -12
  131. package/lib/cjs/common/errors/InvalidPropertyTokenError.js.map +0 -1
  132. package/lib/cjs/common/errors/UndefinedTokenError.js +0 -11
  133. package/lib/cjs/common/errors/UndefinedTokenError.js.map +0 -1
  134. package/lib/cjs/common/index.js +0 -60
  135. package/lib/cjs/common/index.js.map +0 -1
  136. package/lib/cjs/common/interfaces/DIConfigurationOptions.js +0 -3
  137. package/lib/cjs/common/interfaces/DIConfigurationOptions.js.map +0 -1
  138. package/lib/cjs/common/interfaces/DILogger.js +0 -3
  139. package/lib/cjs/common/interfaces/DILogger.js.map +0 -1
  140. package/lib/cjs/common/interfaces/DILoggerOptions.js +0 -3
  141. package/lib/cjs/common/interfaces/DILoggerOptions.js.map +0 -1
  142. package/lib/cjs/common/interfaces/DIResolver.js +0 -3
  143. package/lib/cjs/common/interfaces/DIResolver.js.map +0 -1
  144. package/lib/cjs/common/interfaces/ImportTokenProviderOpts.js +0 -3
  145. package/lib/cjs/common/interfaces/ImportTokenProviderOpts.js.map +0 -1
  146. package/lib/cjs/common/interfaces/InjectableProperties.js +0 -3
  147. package/lib/cjs/common/interfaces/InjectableProperties.js.map +0 -1
  148. package/lib/cjs/common/interfaces/InterceptorContext.js +0 -3
  149. package/lib/cjs/common/interfaces/InterceptorContext.js.map +0 -1
  150. package/lib/cjs/common/interfaces/InterceptorMethods.js +0 -3
  151. package/lib/cjs/common/interfaces/InterceptorMethods.js.map +0 -1
  152. package/lib/cjs/common/interfaces/InvokeOptions.js +0 -3
  153. package/lib/cjs/common/interfaces/InvokeOptions.js.map +0 -1
  154. package/lib/cjs/common/interfaces/OnDestroy.js +0 -3
  155. package/lib/cjs/common/interfaces/OnDestroy.js.map +0 -1
  156. package/lib/cjs/common/interfaces/OnInit.js +0 -3
  157. package/lib/cjs/common/interfaces/OnInit.js.map +0 -1
  158. package/lib/cjs/common/interfaces/ProviderOpts.js +0 -3
  159. package/lib/cjs/common/interfaces/ProviderOpts.js.map +0 -1
  160. package/lib/cjs/common/interfaces/RegistrySettings.js +0 -3
  161. package/lib/cjs/common/interfaces/RegistrySettings.js.map +0 -1
  162. package/lib/cjs/common/interfaces/ResolvedInvokeOptions.js +0 -3
  163. package/lib/cjs/common/interfaces/ResolvedInvokeOptions.js.map +0 -1
  164. package/lib/cjs/common/interfaces/TokenProvider.js +0 -3
  165. package/lib/cjs/common/interfaces/TokenProvider.js.map +0 -1
  166. package/lib/cjs/common/interfaces/TokenRoute.js +0 -3
  167. package/lib/cjs/common/interfaces/TokenRoute.js.map +0 -1
  168. package/lib/cjs/common/registries/GlobalProviders.js +0 -117
  169. package/lib/cjs/common/registries/GlobalProviders.js.map +0 -1
  170. package/lib/cjs/common/registries/ProviderRegistry.js +0 -86
  171. package/lib/cjs/common/registries/ProviderRegistry.js.map +0 -1
  172. package/lib/cjs/common/services/DIConfiguration.js +0 -142
  173. package/lib/cjs/common/services/DIConfiguration.js.map +0 -1
  174. package/lib/cjs/common/services/DILogger.js +0 -14
  175. package/lib/cjs/common/services/DILogger.js.map +0 -1
  176. package/lib/cjs/common/services/InjectorService.js +0 -653
  177. package/lib/cjs/common/services/InjectorService.js.map +0 -1
  178. package/lib/cjs/common/utils/colors.js +0 -10
  179. package/lib/cjs/common/utils/colors.js.map +0 -1
  180. package/lib/cjs/common/utils/createContainer.js +0 -14
  181. package/lib/cjs/common/utils/createContainer.js.map +0 -1
  182. package/lib/cjs/common/utils/getConfiguration.js +0 -23
  183. package/lib/cjs/common/utils/getConfiguration.js.map +0 -1
  184. package/lib/cjs/common/utils/getConstructorDependencies.js +0 -13
  185. package/lib/cjs/common/utils/getConstructorDependencies.js.map +0 -1
  186. package/lib/cjs/common/utils/resolveControllers.js +0 -47
  187. package/lib/cjs/common/utils/resolveControllers.js.map +0 -1
  188. package/lib/cjs/index.js +0 -6
  189. package/lib/cjs/index.js.map +0 -1
  190. package/lib/cjs/node/decorators/injectContext.js +0 -30
  191. package/lib/cjs/node/decorators/injectContext.js.map +0 -1
  192. package/lib/cjs/node/domain/ContextLogger.js +0 -99
  193. package/lib/cjs/node/domain/ContextLogger.js.map +0 -1
  194. package/lib/cjs/node/domain/DIContext.js +0 -102
  195. package/lib/cjs/node/domain/DIContext.js.map +0 -1
  196. package/lib/cjs/node/index.js +0 -18
  197. package/lib/cjs/node/index.js.map +0 -1
  198. package/lib/cjs/node/interfaces/AlterRunInContext.js +0 -3
  199. package/lib/cjs/node/interfaces/AlterRunInContext.js.map +0 -1
  200. package/lib/cjs/node/services/DILogger.js +0 -12
  201. package/lib/cjs/node/services/DILogger.js.map +0 -1
  202. package/lib/cjs/node/services/DITest.js +0 -121
  203. package/lib/cjs/node/services/DITest.js.map +0 -1
  204. package/lib/cjs/node/utils/asyncHookContext.js +0 -42
  205. package/lib/cjs/node/utils/asyncHookContext.js.map +0 -1
  206. package/lib/cjs/node/utils/attachLogger.js +0 -10
  207. package/lib/cjs/node/utils/attachLogger.js.map +0 -1
  208. package/lib/cjs/node/utils/setLoggerConfiguration.js +0 -11
  209. package/lib/cjs/node/utils/setLoggerConfiguration.js.map +0 -1
  210. package/lib/cjs/node/utils/setLoggerFormat.js +0 -33
  211. package/lib/cjs/node/utils/setLoggerFormat.js.map +0 -1
  212. package/lib/cjs/node/utils/setLoggerLevel.js +0 -15
  213. package/lib/cjs/node/utils/setLoggerLevel.js.map +0 -1
  214. package/lib/cjs/package.json +0 -3
  215. package/lib/esm/common/errors/UndefinedTokenError.js +0 -7
  216. package/lib/esm/common/errors/UndefinedTokenError.js.map +0 -1
  217. package/lib/esm/common/interfaces/InjectableProperties.js +0 -2
  218. package/lib/esm/common/interfaces/InjectableProperties.js.map +0 -1
  219. package/lib/esm/package.json +0 -3
  220. package/lib/types/common/errors/UndefinedTokenError.d.ts +0 -4
  221. package/lib/types/common/interfaces/InjectableProperties.d.ts +0 -25
  222. package/lib/types-esm/common/constants/constants.d.ts +0 -3
  223. package/lib/types-esm/common/decorators/autoInjectable.d.ts +0 -1
  224. package/lib/types-esm/common/decorators/configuration.d.ts +0 -8
  225. package/lib/types-esm/common/decorators/constant.d.ts +0 -36
  226. package/lib/types-esm/common/decorators/controller.d.ts +0 -42
  227. package/lib/types-esm/common/decorators/inject.d.ts +0 -22
  228. package/lib/types-esm/common/decorators/injectable.d.ts +0 -20
  229. package/lib/types-esm/common/decorators/intercept.d.ts +0 -10
  230. package/lib/types-esm/common/decorators/interceptor.d.ts +0 -10
  231. package/lib/types-esm/common/decorators/lazyInject.d.ts +0 -43
  232. package/lib/types-esm/common/decorators/module.d.ts +0 -37
  233. package/lib/types-esm/common/decorators/opts.d.ts +0 -41
  234. package/lib/types-esm/common/decorators/overrideProvider.d.ts +0 -8
  235. package/lib/types-esm/common/decorators/scope.d.ts +0 -8
  236. package/lib/types-esm/common/decorators/service.d.ts +0 -10
  237. package/lib/types-esm/common/decorators/useOpts.d.ts +0 -42
  238. package/lib/types-esm/common/decorators/value.d.ts +0 -36
  239. package/lib/types-esm/common/domain/Container.d.ts +0 -43
  240. package/lib/types-esm/common/domain/ControllerProvider.d.ts +0 -17
  241. package/lib/types-esm/common/domain/InjectablePropertyType.d.ts +0 -7
  242. package/lib/types-esm/common/domain/LocalsContainer.d.ts +0 -6
  243. package/lib/types-esm/common/domain/Provider.d.ts +0 -71
  244. package/lib/types-esm/common/domain/ProviderScope.d.ts +0 -5
  245. package/lib/types-esm/common/domain/ProviderType.d.ts +0 -10
  246. package/lib/types-esm/common/errors/InjectionError.d.ts +0 -8
  247. package/lib/types-esm/common/errors/InvalidPropertyTokenError.d.ts +0 -4
  248. package/lib/types-esm/common/errors/UndefinedTokenError.d.ts +0 -4
  249. package/lib/types-esm/common/index.d.ts +0 -56
  250. package/lib/types-esm/common/interfaces/DIConfigurationOptions.d.ts +0 -29
  251. package/lib/types-esm/common/interfaces/DILogger.d.ts +0 -8
  252. package/lib/types-esm/common/interfaces/DILoggerOptions.d.ts +0 -53
  253. package/lib/types-esm/common/interfaces/DIResolver.d.ts +0 -5
  254. package/lib/types-esm/common/interfaces/ImportTokenProviderOpts.d.ts +0 -19
  255. package/lib/types-esm/common/interfaces/InjectableProperties.d.ts +0 -25
  256. package/lib/types-esm/common/interfaces/InterceptorContext.d.ts +0 -11
  257. package/lib/types-esm/common/interfaces/InterceptorMethods.d.ts +0 -4
  258. package/lib/types-esm/common/interfaces/InvokeOptions.d.ts +0 -24
  259. package/lib/types-esm/common/interfaces/OnDestroy.d.ts +0 -3
  260. package/lib/types-esm/common/interfaces/OnInit.d.ts +0 -3
  261. package/lib/types-esm/common/interfaces/ProviderOpts.d.ts +0 -59
  262. package/lib/types-esm/common/interfaces/RegistrySettings.d.ts +0 -20
  263. package/lib/types-esm/common/interfaces/ResolvedInvokeOptions.d.ts +0 -12
  264. package/lib/types-esm/common/interfaces/TokenProvider.d.ts +0 -6
  265. package/lib/types-esm/common/interfaces/TokenRoute.d.ts +0 -5
  266. package/lib/types-esm/common/registries/GlobalProviders.d.ts +0 -58
  267. package/lib/types-esm/common/registries/ProviderRegistry.d.ts +0 -58
  268. package/lib/types-esm/common/services/DIConfiguration.d.ts +0 -57
  269. package/lib/types-esm/common/services/DILogger.d.ts +0 -3
  270. package/lib/types-esm/common/services/InjectorService.d.ts +0 -227
  271. package/lib/types-esm/common/utils/colors.d.ts +0 -5
  272. package/lib/types-esm/common/utils/createContainer.d.ts +0 -3
  273. package/lib/types-esm/common/utils/getConfiguration.d.ts +0 -3
  274. package/lib/types-esm/common/utils/getConstructorDependencies.d.ts +0 -2
  275. package/lib/types-esm/common/utils/resolveControllers.d.ts +0 -12
  276. package/lib/types-esm/index.d.ts +0 -2
  277. package/lib/types-esm/node/decorators/injectContext.d.ts +0 -15
  278. package/lib/types-esm/node/domain/ContextLogger.d.ts +0 -37
  279. package/lib/types-esm/node/domain/DIContext.d.ts +0 -61
  280. package/lib/types-esm/node/index.d.ts +0 -14
  281. package/lib/types-esm/node/interfaces/AlterRunInContext.d.ts +0 -3
  282. package/lib/types-esm/node/services/DILogger.d.ts +0 -1
  283. package/lib/types-esm/node/services/DITest.d.ts +0 -37
  284. package/lib/types-esm/node/utils/asyncHookContext.d.ts +0 -14
  285. package/lib/types-esm/node/utils/attachLogger.d.ts +0 -2
  286. package/lib/types-esm/node/utils/setLoggerConfiguration.d.ts +0 -2
  287. package/lib/types-esm/node/utils/setLoggerFormat.d.ts +0 -6
  288. package/lib/types-esm/node/utils/setLoggerLevel.d.ts +0 -6
  289. /package/{webpack.config.js → webpack.config.cjs} +0 -0
@@ -1,227 +0,0 @@
1
- import { type Type } from "@tsed/core";
2
- import { Container } from "../domain/Container.js";
3
- import { LocalsContainer } from "../domain/LocalsContainer.js";
4
- import { Provider } from "../domain/Provider.js";
5
- import { ProviderScope } from "../domain/ProviderScope.js";
6
- import type { DILogger } from "../interfaces/DILogger.js";
7
- import { InjectablePropertyOptions, InjectablePropertyValue } from "../interfaces/InjectableProperties.js";
8
- import type { InvokeOptions } from "../interfaces/InvokeOptions.js";
9
- import type { TokenProvider } from "../interfaces/TokenProvider.js";
10
- import { DIConfiguration } from "./DIConfiguration.js";
11
- /**
12
- * This service contain all services collected by `@Service` or services declared manually with `InjectorService.factory()` or `InjectorService.service()`.
13
- *
14
- * ### Example:
15
- *
16
- * ```typescript
17
- * import {InjectorService} from "@tsed/di";
18
- *
19
- * // Import the services (all services are decorated with @Service()";
20
- * import MyService1 from "./services/service1.js";
21
- * import MyService2 from "./services/service2.js";
22
- * import MyService3 from "./services/service3.js";
23
- *
24
- * // When all services are imported, you can load InjectorService.
25
- * const injector = new InjectorService()
26
- *
27
- * await injector.load();
28
- *
29
- * const myService1 = injector.get<MyService1>(MyServcice1);
30
- * ```
31
- */
32
- export declare class InjectorService extends Container {
33
- #private;
34
- settings: DIConfiguration;
35
- logger: DILogger;
36
- private resolvedConfiguration;
37
- constructor();
38
- get resolvers(): import("../index.js").DIResolver[];
39
- get scopes(): Record<string, ProviderScope>;
40
- static resolveAutoInjectableArgs(token: Type, locals: LocalsContainer, args: unknown[]): any[];
41
- static bind(instance: any, locals: LocalsContainer): void;
42
- /**
43
- * Retrieve default scope for a given provider.
44
- * @param provider
45
- */
46
- scopeOf(provider: Provider): ProviderScope;
47
- /**
48
- * Return a list of instance build by the injector.
49
- */
50
- toArray(): any[];
51
- /**
52
- * Get a service or factory already constructed from his symbol or class.
53
- *
54
- * #### Example
55
- *
56
- * ```typescript
57
- * import {InjectorService} from "@tsed/di";
58
- * import MyService from "./services.js";
59
- *
60
- * class OtherService {
61
- * constructor(injectorService: InjectorService) {
62
- * const myService = injectorService.get<MyService>(MyService);
63
- * }
64
- * }
65
- * ```
66
- *
67
- * @param token The class or symbol registered in InjectorService.
68
- * @param options
69
- * @returns {boolean}
70
- */
71
- get<T = any>(token: TokenProvider<T>, options?: any): T | undefined;
72
- /**
73
- * Return all instance of the same provider type
74
- * @param type
75
- * @param locals
76
- * @param options
77
- */
78
- getMany<Type = any>(type: any, locals?: LocalsContainer, options?: Partial<InvokeOptions>): Type[];
79
- /**
80
- * The has() method returns a boolean indicating whether an element with the specified key exists or not.
81
- * @returns {boolean}
82
- * @param token
83
- */
84
- has(token: TokenProvider): boolean;
85
- alias(token: TokenProvider, alias: TokenProvider): this;
86
- /**
87
- * Invoke the class and inject all services that required by the class constructor.
88
- *
89
- * #### Example
90
- *
91
- * ```typescript
92
- * import {InjectorService} from "@tsed/di";
93
- * import MyService from "./services.js";
94
- *
95
- * class OtherService {
96
- * constructor(injectorService: InjectorService) {
97
- * const myService = injectorService.invoke<MyService>(MyService);
98
- * }
99
- * }
100
- * ```
101
- *
102
- * @param token The injectable class to invoke. Class parameters are injected according constructor signature.
103
- * @param locals Optional object. If preset then any argument Class are read from this object first, before the `InjectorService` is consulted.
104
- * @param options
105
- * @returns {Type} The class constructed.
106
- */
107
- invoke<Type = any>(token: TokenProvider, locals?: LocalsContainer, options?: Partial<InvokeOptions>): Type;
108
- /**
109
- * Build only providers which are asynchronous.
110
- */
111
- loadAsync(): Promise<void>;
112
- loadSync(): void;
113
- /**
114
- * Boostrap injector from container and resolve configuration.
115
- *
116
- * @param container
117
- */
118
- bootstrap(container?: Container): this;
119
- /**
120
- * Load injector from a given module
121
- * @param rootModule
122
- */
123
- loadModule(rootModule: TokenProvider): Promise<void>;
124
- /**
125
- * Build all providers from given container (or GlobalProviders) and emit `$onInit` event.
126
- *
127
- * @param container
128
- */
129
- load(container?: Container): Promise<void>;
130
- /**
131
- * Load all configurations registered on providers
132
- */
133
- resolveConfiguration(): void;
134
- /**
135
- *
136
- * @param instance
137
- * @param locals
138
- * @param options
139
- */
140
- bindInjectableProperties(instance: any, locals: LocalsContainer, options: Partial<InvokeOptions>): void;
141
- /**
142
- * Create an injectable property.
143
- *
144
- * @param instance
145
- * @param {string} propertyKey
146
- * @param {any} useType
147
- * @param resolver
148
- * @param options
149
- * @param locals
150
- * @param invokeOptions
151
- */
152
- bindProperty(instance: any, { propertyKey, resolver, options }: InjectablePropertyOptions, locals: LocalsContainer, invokeOptions: Partial<InvokeOptions>): void;
153
- /**
154
- *
155
- * @param instance
156
- * @param {string} propertyKey
157
- * @param {any} useType
158
- */
159
- bindValue(instance: any, { propertyKey, expression, defaultValue }: InjectablePropertyValue): void;
160
- /**
161
- *
162
- * @param instance
163
- * @param {string} propertyKey
164
- * @param {any} useType
165
- */
166
- bindConstant(instance: any, { propertyKey, expression, defaultValue }: InjectablePropertyValue): void;
167
- /**
168
- *
169
- * @param instance
170
- * @param propertyKey
171
- * @param useType
172
- * @param options
173
- */
174
- bindInterceptor(instance: any, { propertyKey, useType, options }: InjectablePropertyOptions): void;
175
- lazyInvoke<T = any>(token: TokenProvider): Promise<any>;
176
- /**
177
- * Emit an event to all service. See service [lifecycle hooks](/docs/services.md#lifecycle-hooks).
178
- * @param eventName The event name to emit at all services.
179
- * @param args List of the parameters to give to each service.
180
- * @returns {Promise<any[]>} A list of promises.
181
- */
182
- emit(eventName: string, ...args: any[]): Promise<void>;
183
- /**
184
- * @param eventName
185
- * @param value
186
- * @param args
187
- */
188
- alter<T = any>(eventName: string, value: any, ...args: any[]): T;
189
- /**
190
- * @param eventName
191
- * @param value
192
- * @param args
193
- */
194
- alterAsync<T = any>(eventName: string, value: any, ...args: any[]): Promise<T>;
195
- destroy(): Promise<void>;
196
- protected ensureProvider(token: TokenProvider, force: true): Provider;
197
- protected ensureProvider(token: TokenProvider, force: false): Provider | undefined;
198
- protected ensureProvider(token: TokenProvider): Provider | undefined;
199
- protected getInstance(token: any): any;
200
- /**
201
- * Invoke a class method and inject service.
202
- *
203
- * #### IInjectableMethod options
204
- *
205
- * * **target**: Optional. The class instance.
206
- * * **methodName**: `string` Optional. The method name.
207
- * * **designParamTypes**: `any[]` Optional. List of injectable types.
208
- * * **locals**: `Map<Function, any>` Optional. If preset then any argument Class are read from this object first, before the `InjectorService` is consulted.
209
- *
210
- * #### Example
211
- *
212
- * @param target
213
- * @param locals
214
- * @param options
215
- * @private
216
- */
217
- protected resolve<T>(target: TokenProvider, locals?: LocalsContainer, options?: Partial<InvokeOptions>): T | Promise<T>;
218
- private resolveImportsProviders;
219
- /**
220
- * Create options to invoke a provider or class.
221
- * @param token
222
- * @param locals
223
- * @param options
224
- */
225
- private mapInvokeOptions;
226
- private registerHooks;
227
- }
@@ -1,5 +0,0 @@
1
- export declare const colors: {
2
- red: (text: string) => string;
3
- yellow: (text: string) => string;
4
- green: (text: string) => string;
5
- };
@@ -1,3 +0,0 @@
1
- import { Type } from "@tsed/core";
2
- import { Container } from "../domain/Container.js";
3
- export declare function createContainer(rootModule?: Type<any>): Container;
@@ -1,3 +0,0 @@
1
- import { Type } from "@tsed/core";
2
- export declare function mergeMount(m1?: any, m2?: any): any;
3
- export declare function getConfiguration(module: Type<any>, configuration?: any): any;
@@ -1,2 +0,0 @@
1
- export declare function getConstructorDependencies(target: any, propertyKey?: string | symbol | undefined): any;
2
- export declare function setConstructorDependencies(target: any, deps: any[]): void;
@@ -1,12 +0,0 @@
1
- import { TokenProvider } from "../interfaces/TokenProvider.js";
2
- import { TokenRoute } from "../interfaces/TokenRoute.js";
3
- export declare function getTokens(config: any): {
4
- route?: string;
5
- token: TokenProvider;
6
- }[];
7
- /**
8
- * Return controllers and is base route according to his configuration in module configuration.
9
- *
10
- * @param settings
11
- */
12
- export declare function resolveControllers(settings: Partial<TsED.Configuration>): TokenRoute[];
@@ -1,2 +0,0 @@
1
- export * from "./common/index.js";
2
- export * from "./node/index.js";
@@ -1,15 +0,0 @@
1
- /**
2
- * Inject a context like PlatformContext or any BaseContext.
3
- *
4
- * ```typescript
5
- * @Injectable()
6
- * export class MyService {
7
- * @InjectContext()
8
- * ctx?: Context;
9
- * }
10
- * ```
11
- *
12
- * @returns {Function}
13
- * @decorator
14
- */
15
- export declare function InjectContext(): PropertyDecorator;
@@ -1,37 +0,0 @@
1
- import { DILogger } from "../../common/index.js";
2
- import { Hooks } from "@tsed/core";
3
- import { LogLevel } from "@tsed/logger";
4
- export interface ContextLoggerOptions extends Record<string, any> {
5
- id: string;
6
- logger?: DILogger;
7
- level?: "debug" | "info" | "warn" | "error" | "off" | "all";
8
- maxStackSize?: number;
9
- additionalProps?: Record<any, any>;
10
- }
11
- export declare class ContextLogger {
12
- #private;
13
- readonly dateStart: Date;
14
- readonly id: string;
15
- maxStackSize: number;
16
- level: LogLevel;
17
- constructor({ id, logger, dateStart, level, maxStackSize, additionalProps }: ContextLoggerOptions);
18
- get hooks(): Hooks;
19
- private get stack();
20
- alterLog(cb: (data: any, level: "debug" | "info" | "warn" | "error" | "off" | "all", withRequest: boolean) => any): Hooks;
21
- alterIgnoreLog(cb: (ignore: boolean, data: any) => boolean): Hooks;
22
- info(obj: any): this;
23
- debug(obj: any, withRequest?: boolean): this;
24
- warn(obj: any): this;
25
- error(obj: any): this;
26
- fatal(obj: any): this;
27
- trace(obj: any): this;
28
- flush(stream?: boolean): void;
29
- isLevelEnabled(otherLevel: string | LogLevel): boolean;
30
- /**
31
- * Return the duration between the time when LogIncomingRequest has handle the request and now.
32
- * @returns {number}
33
- */
34
- protected getDuration(): number;
35
- protected getData(obj: any): any;
36
- protected run(level: LogLevel, obj: any, withRequest?: boolean): void;
37
- }
@@ -1,61 +0,0 @@
1
- import { InjectorService, LocalsContainer } from "../../common/index.js";
2
- import { ContextLogger, ContextLoggerOptions } from "./ContextLogger.js";
3
- export interface DIContextOptions extends Omit<ContextLoggerOptions, "dateStart"> {
4
- id: string;
5
- injector: InjectorService;
6
- logger: any;
7
- platform?: string;
8
- }
9
- export declare class DIContext {
10
- #private;
11
- opts: DIContextOptions;
12
- [x: string]: any;
13
- readonly PLATFORM: string;
14
- constructor(opts: DIContextOptions);
15
- /**
16
- * Logger attached to the context request.
17
- */
18
- get logger(): ContextLogger;
19
- /**
20
- * Request id generated by @@contextMiddleware@@.
21
- *
22
- * ::: tip
23
- * By default Ts.ED generate uuid like that `uuidv4().replace(/-/gi, ""))`.
24
- * Dash are removed to simplify tracking logs in Kibana
25
- * :::
26
- *
27
- * ::: tip
28
- * Request id can by customized by changing the server configuration.
29
- *
30
- * ```typescript
31
- * @Configuration({
32
- * logger: {
33
- * reqIdBuilder: createUniqId // give your own id generator function
34
- * }
35
- * })
36
- * class Server {
37
- *
38
- * }
39
- * ```
40
- * :::
41
- *
42
- */
43
- get id(): string;
44
- get dateStart(): Date;
45
- get injector(): InjectorService;
46
- get env(): any;
47
- /**
48
- * The request container used by the Ts.ED DI. It contains all services annotated with `@Scope(ProviderScope.REQUEST)`
49
- */
50
- get container(): LocalsContainer;
51
- destroy(): Promise<any>;
52
- emit(eventName: string, ...args: any[]): Promise<void>;
53
- runInContext(next: Function): Promise<any>;
54
- cache<Value = any>(key: string, cb: () => Value): Value;
55
- cacheAsync<Value = any>(key: string, cb: () => Promise<Value>): Promise<Value>;
56
- delete(key: any): boolean;
57
- get<T = any>(key: any): T;
58
- has(key: any): boolean;
59
- set(key: any, value: any): this;
60
- }
61
- export type BaseContext = DIContext & TsED.Context;
@@ -1,14 +0,0 @@
1
- /**
2
- * @file Automatically generated by @tsed/barrels.
3
- */
4
- export * from "./decorators/injectContext.js";
5
- export * from "./domain/ContextLogger.js";
6
- export * from "./domain/DIContext.js";
7
- export * from "./interfaces/AlterRunInContext.js";
8
- export * from "./services/DILogger.js";
9
- export * from "./services/DITest.js";
10
- export * from "./utils/asyncHookContext.js";
11
- export * from "./utils/attachLogger.js";
12
- export * from "./utils/setLoggerConfiguration.js";
13
- export * from "./utils/setLoggerFormat.js";
14
- export * from "./utils/setLoggerLevel.js";
@@ -1,3 +0,0 @@
1
- export interface AlterRunInContext {
2
- $alterRunInContext(next: (...args: unknown[]) => unknown): () => unknown | Promise<() => unknown>;
3
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,37 +0,0 @@
1
- import { InjectorService, TokenProvider, type UseImportTokenProviderOpts } from "../../common/index.js";
2
- import { DIContext } from "../domain/DIContext.js";
3
- /**
4
- * Tool to run test with lightweight DI sandbox.
5
- */
6
- export declare class DITest {
7
- static options: Partial<TsED.Configuration>;
8
- protected static _injector: InjectorService | null;
9
- static get injector(): InjectorService;
10
- static set injector(injector: InjectorService);
11
- static set(key: string, value: any): void;
12
- static hasInjector(): boolean;
13
- static create(settings?: Partial<TsED.Configuration>): Promise<void>;
14
- static createContainer(): Promise<void>;
15
- /**
16
- * Create a new injector with the right default services
17
- */
18
- static createInjector(settings?: any): InjectorService;
19
- /**
20
- * Resets the test injector of the test context, so it won't pollute your next test. Call this in your `tearDown` logic.
21
- */
22
- static reset(): Promise<void>;
23
- /**
24
- * Invoke a provider and return a fresh instance
25
- * @param target
26
- * @param providers
27
- */
28
- static invoke<T = any>(target: TokenProvider, providers?: UseImportTokenProviderOpts[]): Promise<T>;
29
- /**
30
- * Return the instance from injector registry
31
- * @param target
32
- * @param options
33
- */
34
- static get<T = any>(target: TokenProvider, options?: any): T;
35
- static createDIContext(): DIContext;
36
- protected static configure(settings?: Partial<TsED.Configuration>): Partial<TsED.Configuration>;
37
- }
@@ -1,14 +0,0 @@
1
- /// <reference types="node" />
2
- import { AsyncLocalStorage } from "async_hooks";
3
- import { InjectorService } from "../../common/index.js";
4
- import type { DIContext } from "../domain/DIContext.js";
5
- export declare function getAsyncStore(): AsyncLocalStorage<{
6
- current: DIContext | undefined;
7
- }>;
8
- export declare function useContextRef(): {
9
- current: DIContext | undefined;
10
- } | undefined;
11
- export declare function getContext<Context = DIContext>(): Context | undefined;
12
- export declare function runInContext(ctx: DIContext | undefined, cb: any, injector?: InjectorService): Promise<any>;
13
- export declare function setContext(ctx: DIContext): void;
14
- export declare function bindContext(cb: any): any;
@@ -1,2 +0,0 @@
1
- import { DILogger, InjectorService } from "../../common/index.js";
2
- export declare function attachLogger(injector: InjectorService, $log: DILogger): void;
@@ -1,2 +0,0 @@
1
- import type { InjectorService } from "../../common/index.js";
2
- export declare function setLoggerConfiguration(injector: InjectorService): void;
@@ -1,6 +0,0 @@
1
- import type { InjectorService } from "../../common/index.js";
2
- /**
3
- * @ignore
4
- * @param injector
5
- */
6
- export declare function setLoggerFormat(injector: InjectorService): void;
@@ -1,6 +0,0 @@
1
- import type { InjectorService } from "../../common/index.js";
2
- /**
3
- * @ignore
4
- * @param injector
5
- */
6
- export declare function setLoggerLevel(injector: InjectorService): void;
File without changes