inversify 6.1.4 → 6.1.5-beta.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 (529) hide show
  1. package/CHANGELOG.md +16 -1
  2. package/README.md +6 -15
  3. package/{amd → lib/cjs}/annotation/decorator_utils.d.ts +1 -0
  4. package/lib/cjs/annotation/decorator_utils.d.ts.map +1 -0
  5. package/{es6 → lib/cjs}/annotation/decorator_utils.js +25 -7
  6. package/lib/cjs/annotation/decorator_utils.js.map +1 -0
  7. package/{es6 → lib/cjs}/annotation/inject.d.ts +1 -0
  8. package/lib/cjs/annotation/inject.d.ts.map +1 -0
  9. package/{es6 → lib/cjs}/annotation/inject.js +18 -7
  10. package/lib/cjs/annotation/inject.js.map +1 -0
  11. package/{amd → lib/cjs}/annotation/inject_base.d.ts +1 -0
  12. package/lib/cjs/annotation/inject_base.d.ts.map +1 -0
  13. package/{es6 → lib/cjs}/annotation/inject_base.js +2 -0
  14. package/lib/cjs/annotation/inject_base.js.map +1 -0
  15. package/{amd → lib/cjs}/annotation/injectable.d.ts +1 -0
  16. package/lib/cjs/annotation/injectable.d.ts.map +1 -0
  17. package/{es6 → lib/cjs}/annotation/injectable.js +19 -7
  18. package/lib/cjs/annotation/injectable.js.map +1 -0
  19. package/{es → lib/cjs}/annotation/multi_inject.d.ts +1 -0
  20. package/lib/cjs/annotation/multi_inject.d.ts.map +1 -0
  21. package/{es6 → lib/cjs}/annotation/multi_inject.js +18 -7
  22. package/lib/cjs/annotation/multi_inject.js.map +1 -0
  23. package/{amd → lib/cjs}/annotation/named.d.ts +1 -0
  24. package/lib/cjs/annotation/named.d.ts.map +1 -0
  25. package/{es6 → lib/cjs}/annotation/named.js +19 -7
  26. package/lib/cjs/annotation/named.js.map +1 -0
  27. package/{amd → lib/cjs}/annotation/optional.d.ts +1 -0
  28. package/lib/cjs/annotation/optional.d.ts.map +1 -0
  29. package/{es6 → lib/cjs}/annotation/optional.js +18 -7
  30. package/lib/cjs/annotation/optional.js.map +1 -0
  31. package/{amd → lib/cjs}/annotation/post_construct.d.ts +1 -0
  32. package/lib/cjs/annotation/post_construct.d.ts.map +1 -0
  33. package/{es6 → lib/cjs}/annotation/post_construct.js +18 -7
  34. package/lib/cjs/annotation/post_construct.js.map +1 -0
  35. package/{es6 → lib/cjs}/annotation/pre_destroy.d.ts +1 -0
  36. package/lib/cjs/annotation/pre_destroy.d.ts.map +1 -0
  37. package/{es6 → lib/cjs}/annotation/pre_destroy.js +18 -7
  38. package/lib/cjs/annotation/pre_destroy.js.map +1 -0
  39. package/{es → lib/cjs}/annotation/property_event_decorator.d.ts +1 -0
  40. package/lib/cjs/annotation/property_event_decorator.d.ts.map +1 -0
  41. package/{es6 → lib/cjs}/annotation/property_event_decorator.js +1 -0
  42. package/lib/cjs/annotation/property_event_decorator.js.map +1 -0
  43. package/{amd → lib/cjs}/annotation/tagged.d.ts +1 -0
  44. package/lib/cjs/annotation/tagged.d.ts.map +1 -0
  45. package/{es6 → lib/cjs}/annotation/tagged.js +2 -0
  46. package/lib/cjs/annotation/tagged.js.map +1 -0
  47. package/{es6 → lib/cjs}/annotation/target_name.d.ts +1 -0
  48. package/lib/cjs/annotation/target_name.d.ts.map +1 -0
  49. package/{es6 → lib/cjs}/annotation/target_name.js +18 -7
  50. package/lib/cjs/annotation/target_name.js.map +1 -0
  51. package/{es6 → lib/cjs}/annotation/unmanaged.d.ts +1 -0
  52. package/lib/cjs/annotation/unmanaged.d.ts.map +1 -0
  53. package/{es6 → lib/cjs}/annotation/unmanaged.js +18 -7
  54. package/lib/cjs/annotation/unmanaged.js.map +1 -0
  55. package/{es6 → lib/cjs}/bindings/binding.d.ts +1 -0
  56. package/lib/cjs/bindings/binding.d.ts.map +1 -0
  57. package/{es6 → lib/cjs}/bindings/binding.js +29 -0
  58. package/lib/cjs/bindings/binding.js.map +1 -0
  59. package/{amd → lib/cjs}/bindings/binding_count.d.ts +1 -0
  60. package/lib/cjs/bindings/binding_count.d.ts.map +1 -0
  61. package/lib/{bindings → cjs/bindings}/binding_count.js +1 -0
  62. package/lib/cjs/bindings/binding_count.js.map +1 -0
  63. package/{amd → lib/cjs}/constants/error_msgs.d.ts +1 -0
  64. package/lib/cjs/constants/error_msgs.d.ts.map +1 -0
  65. package/{es6 → lib/cjs}/constants/error_msgs.js +2 -0
  66. package/lib/cjs/constants/error_msgs.js.map +1 -0
  67. package/{es → lib/cjs}/constants/literal_types.d.ts +1 -0
  68. package/lib/cjs/constants/literal_types.d.ts.map +1 -0
  69. package/{es6 → lib/cjs}/constants/literal_types.js +4 -0
  70. package/lib/cjs/constants/literal_types.js.map +1 -0
  71. package/{amd → lib/cjs}/constants/metadata_keys.d.ts +1 -0
  72. package/lib/cjs/constants/metadata_keys.d.ts.map +1 -0
  73. package/{es6 → lib/cjs}/constants/metadata_keys.js +13 -0
  74. package/lib/cjs/constants/metadata_keys.js.map +1 -0
  75. package/{es6 → lib/cjs}/container/container.d.ts +3 -0
  76. package/lib/cjs/container/container.d.ts.map +1 -0
  77. package/{es6 → lib/cjs}/container/container.js +157 -147
  78. package/lib/cjs/container/container.js.map +1 -0
  79. package/{amd → lib/cjs}/container/container_module.d.ts +1 -0
  80. package/lib/cjs/container/container_module.d.ts.map +1 -0
  81. package/{es6 → lib/cjs}/container/container_module.js +5 -0
  82. package/lib/cjs/container/container_module.js.map +1 -0
  83. package/{es → lib/cjs}/container/container_snapshot.d.ts +1 -0
  84. package/lib/cjs/container/container_snapshot.d.ts.map +1 -0
  85. package/{es6 → lib/cjs}/container/container_snapshot.js +6 -0
  86. package/lib/cjs/container/container_snapshot.js.map +1 -0
  87. package/{es → lib/cjs}/container/lookup.d.ts +1 -0
  88. package/lib/cjs/container/lookup.d.ts.map +1 -0
  89. package/{es6 → lib/cjs}/container/lookup.js +26 -7
  90. package/lib/cjs/container/lookup.js.map +1 -0
  91. package/{es6 → lib/cjs}/container/module_activation_store.d.ts +3 -2
  92. package/lib/cjs/container/module_activation_store.d.ts.map +1 -0
  93. package/{es6 → lib/cjs}/container/module_activation_store.js +2 -3
  94. package/lib/cjs/container/module_activation_store.js.map +1 -0
  95. package/{amd/inversify.d.ts → lib/cjs/index.d.ts} +2 -0
  96. package/lib/cjs/index.d.ts.map +1 -0
  97. package/{es6/inversify.js → lib/cjs/index.js} +20 -7
  98. package/lib/cjs/index.js.map +1 -0
  99. package/{amd → lib/cjs}/interfaces/interfaces.d.ts +3 -2
  100. package/lib/cjs/interfaces/interfaces.d.ts.map +1 -0
  101. package/lib/{interfaces → cjs/interfaces}/interfaces.js +1 -0
  102. package/lib/cjs/interfaces/interfaces.js.map +1 -0
  103. package/lib/cjs/package.json +3 -0
  104. package/{es6 → lib/cjs}/planning/context.d.ts +1 -0
  105. package/lib/cjs/planning/context.d.ts.map +1 -0
  106. package/{es6 → lib/cjs}/planning/context.js +5 -0
  107. package/lib/cjs/planning/context.js.map +1 -0
  108. package/{es6 → lib/cjs}/planning/metadata.d.ts +1 -0
  109. package/lib/cjs/planning/metadata.d.ts.map +1 -0
  110. package/{es6 → lib/cjs}/planning/metadata.js +20 -7
  111. package/lib/cjs/planning/metadata.js.map +1 -0
  112. package/{es → lib/cjs}/planning/metadata_reader.d.ts +1 -0
  113. package/lib/cjs/planning/metadata_reader.d.ts.map +1 -0
  114. package/{es6 → lib/cjs}/planning/metadata_reader.js +24 -12
  115. package/lib/cjs/planning/metadata_reader.js.map +1 -0
  116. package/{amd → lib/cjs}/planning/plan.d.ts +1 -0
  117. package/lib/cjs/planning/plan.d.ts.map +1 -0
  118. package/{es6 → lib/cjs}/planning/plan.js +3 -0
  119. package/lib/cjs/planning/plan.js.map +1 -0
  120. package/{amd → lib/cjs}/planning/planner.d.ts +1 -0
  121. package/lib/cjs/planning/planner.d.ts.map +1 -0
  122. package/{es6 → lib/cjs}/planning/planner.js +27 -7
  123. package/lib/cjs/planning/planner.js.map +1 -0
  124. package/{amd → lib/cjs}/planning/queryable_string.d.ts +1 -0
  125. package/lib/cjs/planning/queryable_string.d.ts.map +1 -0
  126. package/{es6 → lib/cjs}/planning/queryable_string.js +3 -0
  127. package/lib/cjs/planning/queryable_string.js.map +1 -0
  128. package/{amd → lib/cjs}/planning/reflection_utils.d.ts +1 -0
  129. package/lib/cjs/planning/reflection_utils.d.ts.map +1 -0
  130. package/{es6 → lib/cjs}/planning/reflection_utils.js +25 -8
  131. package/lib/cjs/planning/reflection_utils.js.map +1 -0
  132. package/{amd → lib/cjs}/planning/request.d.ts +1 -0
  133. package/lib/cjs/planning/request.d.ts.map +1 -0
  134. package/{es6 → lib/cjs}/planning/request.js +13 -1
  135. package/lib/cjs/planning/request.js.map +1 -0
  136. package/{es → lib/cjs}/resolution/instantiation.d.ts +1 -0
  137. package/lib/cjs/resolution/instantiation.d.ts.map +1 -0
  138. package/{es6 → lib/cjs}/resolution/instantiation.js +40 -37
  139. package/lib/cjs/resolution/instantiation.js.map +1 -0
  140. package/{amd → lib/cjs}/resolution/resolver.d.ts +1 -0
  141. package/lib/cjs/resolution/resolver.d.ts.map +1 -0
  142. package/{es6 → lib/cjs}/resolution/resolver.js +39 -20
  143. package/lib/cjs/resolution/resolver.js.map +1 -0
  144. package/{amd → lib/cjs}/scope/scope.d.ts +1 -0
  145. package/lib/cjs/scope/scope.d.ts.map +1 -0
  146. package/{es6 → lib/cjs}/scope/scope.js +10 -12
  147. package/lib/cjs/scope/scope.js.map +1 -0
  148. package/{amd → lib/cjs}/syntax/binding_in_syntax.d.ts +1 -0
  149. package/lib/cjs/syntax/binding_in_syntax.d.ts.map +1 -0
  150. package/{es6 → lib/cjs}/syntax/binding_in_syntax.js +2 -0
  151. package/lib/cjs/syntax/binding_in_syntax.js.map +1 -0
  152. package/{es6 → lib/cjs}/syntax/binding_in_when_on_syntax.d.ts +1 -0
  153. package/lib/cjs/syntax/binding_in_when_on_syntax.d.ts.map +1 -0
  154. package/{es6 → lib/cjs}/syntax/binding_in_when_on_syntax.js +5 -0
  155. package/lib/cjs/syntax/binding_in_when_on_syntax.js.map +1 -0
  156. package/{es6 → lib/cjs}/syntax/binding_on_syntax.d.ts +1 -0
  157. package/lib/cjs/syntax/binding_on_syntax.d.ts.map +1 -0
  158. package/{es6 → lib/cjs}/syntax/binding_on_syntax.js +2 -0
  159. package/lib/cjs/syntax/binding_on_syntax.js.map +1 -0
  160. package/{es → lib/cjs}/syntax/binding_to_syntax.d.ts +1 -0
  161. package/lib/cjs/syntax/binding_to_syntax.d.ts.map +1 -0
  162. package/{es6 → lib/cjs}/syntax/binding_to_syntax.js +43 -8
  163. package/lib/cjs/syntax/binding_to_syntax.js.map +1 -0
  164. package/{amd → lib/cjs}/syntax/binding_when_on_syntax.d.ts +1 -0
  165. package/lib/cjs/syntax/binding_when_on_syntax.d.ts.map +1 -0
  166. package/{es6 → lib/cjs}/syntax/binding_when_on_syntax.js +4 -0
  167. package/lib/cjs/syntax/binding_when_on_syntax.js.map +1 -0
  168. package/{es6 → lib/cjs}/syntax/binding_when_syntax.d.ts +1 -0
  169. package/lib/cjs/syntax/binding_when_syntax.d.ts.map +1 -0
  170. package/{es6 → lib/cjs}/syntax/binding_when_syntax.js +5 -1
  171. package/lib/cjs/syntax/binding_when_syntax.js.map +1 -0
  172. package/{amd → lib/cjs}/syntax/constraint_helpers.d.ts +1 -0
  173. package/lib/cjs/syntax/constraint_helpers.d.ts.map +1 -0
  174. package/{es6 → lib/cjs}/syntax/constraint_helpers.js +22 -7
  175. package/lib/cjs/syntax/constraint_helpers.js.map +1 -0
  176. package/{amd → lib/cjs}/utils/async.d.ts +1 -0
  177. package/lib/cjs/utils/async.d.ts.map +1 -0
  178. package/{es6 → lib/cjs}/utils/async.js +1 -0
  179. package/lib/cjs/utils/async.js.map +1 -0
  180. package/{es6 → lib/cjs}/utils/binding_utils.d.ts +1 -0
  181. package/lib/cjs/utils/binding_utils.d.ts.map +1 -0
  182. package/{es6 → lib/cjs}/utils/binding_utils.js +21 -7
  183. package/lib/cjs/utils/binding_utils.js.map +1 -0
  184. package/{es6 → lib/cjs}/utils/clonable.d.ts +1 -0
  185. package/lib/cjs/utils/clonable.d.ts.map +1 -0
  186. package/{es6 → lib/cjs}/utils/clonable.js +1 -0
  187. package/lib/cjs/utils/clonable.js.map +1 -0
  188. package/{amd → lib/cjs}/utils/exceptions.d.ts +1 -0
  189. package/lib/cjs/utils/exceptions.d.ts.map +1 -0
  190. package/{es6 → lib/cjs}/utils/exceptions.js +18 -7
  191. package/lib/cjs/utils/exceptions.js.map +1 -0
  192. package/{es6 → lib/cjs}/utils/factory_type.d.ts +1 -0
  193. package/lib/cjs/utils/factory_type.d.ts.map +1 -0
  194. package/{es6 → lib/cjs}/utils/factory_type.js +1 -0
  195. package/lib/cjs/utils/factory_type.js.map +1 -0
  196. package/{amd → lib/cjs}/utils/id.d.ts +1 -0
  197. package/lib/cjs/utils/id.d.ts.map +1 -0
  198. package/{es6 → lib/cjs}/utils/id.js +1 -0
  199. package/lib/cjs/utils/id.js.map +1 -0
  200. package/{amd → lib/cjs}/utils/js.d.ts +1 -0
  201. package/lib/cjs/utils/js.d.ts.map +1 -0
  202. package/{es6 → lib/cjs}/utils/js.js +1 -0
  203. package/lib/cjs/utils/js.js.map +1 -0
  204. package/{amd → lib/cjs}/utils/serialization.d.ts +1 -0
  205. package/lib/cjs/utils/serialization.d.ts.map +1 -0
  206. package/{es6 → lib/cjs}/utils/serialization.js +23 -7
  207. package/lib/cjs/utils/serialization.js.map +1 -0
  208. package/{es6/interfaces/interfaces.d.ts → lib/esm/index.d.ts} +207 -8
  209. package/lib/esm/index.d.ts.map +1 -0
  210. package/lib/esm/index.js +2 -0
  211. package/lib/esm/index.js.map +1 -0
  212. package/package.json +30 -34
  213. package/amd/annotation/decorator_utils.js +0 -119
  214. package/amd/annotation/inject.d.ts +0 -5
  215. package/amd/annotation/inject.js +0 -31
  216. package/amd/annotation/inject_base.js +0 -16
  217. package/amd/annotation/injectable.js +0 -40
  218. package/amd/annotation/lazy_service_identifier.js +0 -4
  219. package/amd/annotation/multi_inject.d.ts +0 -5
  220. package/amd/annotation/multi_inject.js +0 -31
  221. package/amd/annotation/named.js +0 -32
  222. package/amd/annotation/optional.js +0 -32
  223. package/amd/annotation/post_construct.js +0 -32
  224. package/amd/annotation/pre_destroy.d.ts +0 -4
  225. package/amd/annotation/pre_destroy.js +0 -32
  226. package/amd/annotation/property_event_decorator.d.ts +0 -4
  227. package/amd/annotation/property_event_decorator.js +0 -16
  228. package/amd/annotation/tagged.js +0 -8
  229. package/amd/annotation/target_name.d.ts +0 -3
  230. package/amd/annotation/target_name.js +0 -35
  231. package/amd/annotation/unmanaged.d.ts +0 -3
  232. package/amd/annotation/unmanaged.js +0 -35
  233. package/amd/bindings/binding.d.ts +0 -20
  234. package/amd/bindings/binding.js +0 -40
  235. package/amd/bindings/binding_count.js +0 -11
  236. package/amd/constants/error_msgs.js +0 -75
  237. package/amd/constants/literal_types.d.ts +0 -5
  238. package/amd/constants/literal_types.js +0 -28
  239. package/amd/constants/metadata_keys.js +0 -28
  240. package/amd/container/container.d.ts +0 -73
  241. package/amd/container/container.js +0 -766
  242. package/amd/container/container_module.js +0 -21
  243. package/amd/container/container_snapshot.d.ts +0 -10
  244. package/amd/container/container_snapshot.js +0 -20
  245. package/amd/container/lookup.d.ts +0 -17
  246. package/amd/container/lookup.js +0 -132
  247. package/amd/container/module_activation_store.d.ts +0 -10
  248. package/amd/container/module_activation_store.js +0 -51
  249. package/amd/interfaces/interfaces.js +0 -4
  250. package/amd/inversify.js +0 -57
  251. package/amd/planning/context.d.ts +0 -11
  252. package/amd/planning/context.js +0 -19
  253. package/amd/planning/metadata.d.ts +0 -8
  254. package/amd/planning/metadata.js +0 -45
  255. package/amd/planning/metadata_reader.d.ts +0 -6
  256. package/amd/planning/metadata_reader.js +0 -49
  257. package/amd/planning/plan.js +0 -13
  258. package/amd/planning/planner.js +0 -187
  259. package/amd/planning/queryable_string.js +0 -33
  260. package/amd/planning/reflection_utils.js +0 -55
  261. package/amd/planning/request.js +0 -24
  262. package/amd/planning/target.js +0 -111
  263. package/amd/resolution/instantiation.d.ts +0 -3
  264. package/amd/resolution/instantiation.js +0 -219
  265. package/amd/resolution/resolver.js +0 -234
  266. package/amd/scope/scope.js +0 -93
  267. package/amd/syntax/binding_in_syntax.js +0 -24
  268. package/amd/syntax/binding_in_when_on_syntax.d.ts +0 -29
  269. package/amd/syntax/binding_in_when_on_syntax.js +0 -75
  270. package/amd/syntax/binding_on_syntax.d.ts +0 -8
  271. package/amd/syntax/binding_on_syntax.js +0 -20
  272. package/amd/syntax/binding_to_syntax.d.ts +0 -18
  273. package/amd/syntax/binding_to_syntax.js +0 -116
  274. package/amd/syntax/binding_when_on_syntax.js +0 -65
  275. package/amd/syntax/binding_when_syntax.d.ts +0 -21
  276. package/amd/syntax/binding_when_syntax.js +0 -107
  277. package/amd/syntax/constraint_helpers.js +0 -66
  278. package/amd/utils/async.js +0 -17
  279. package/amd/utils/binding_utils.d.ts +0 -4
  280. package/amd/utils/binding_utils.js +0 -86
  281. package/amd/utils/clonable.d.ts +0 -3
  282. package/amd/utils/clonable.js +0 -11
  283. package/amd/utils/exceptions.js +0 -46
  284. package/amd/utils/factory_type.d.ts +0 -5
  285. package/amd/utils/factory_type.js +0 -11
  286. package/amd/utils/id.js +0 -9
  287. package/amd/utils/js.js +0 -18
  288. package/amd/utils/serialization.js +0 -135
  289. package/es/annotation/decorator_utils.d.ts +0 -16
  290. package/es/annotation/decorator_utils.js +0 -90
  291. package/es/annotation/inject.d.ts +0 -5
  292. package/es/annotation/inject.js +0 -4
  293. package/es/annotation/inject_base.d.ts +0 -4
  294. package/es/annotation/inject_base.js +0 -14
  295. package/es/annotation/injectable.d.ts +0 -2
  296. package/es/annotation/injectable.js +0 -13
  297. package/es/annotation/lazy_service_identifier.js +0 -1
  298. package/es/annotation/multi_inject.js +0 -4
  299. package/es/annotation/named.d.ts +0 -2
  300. package/es/annotation/named.js +0 -7
  301. package/es/annotation/optional.d.ts +0 -2
  302. package/es/annotation/optional.js +0 -7
  303. package/es/annotation/post_construct.d.ts +0 -4
  304. package/es/annotation/post_construct.js +0 -5
  305. package/es/annotation/pre_destroy.d.ts +0 -4
  306. package/es/annotation/pre_destroy.js +0 -5
  307. package/es/annotation/property_event_decorator.js +0 -13
  308. package/es/annotation/tagged.d.ts +0 -2
  309. package/es/annotation/tagged.js +0 -6
  310. package/es/annotation/target_name.d.ts +0 -3
  311. package/es/annotation/target_name.js +0 -10
  312. package/es/annotation/unmanaged.d.ts +0 -3
  313. package/es/annotation/unmanaged.js +0 -10
  314. package/es/bindings/binding.d.ts +0 -20
  315. package/es/bindings/binding.js +0 -37
  316. package/es/bindings/binding_count.d.ts +0 -5
  317. package/es/bindings/binding_count.js +0 -6
  318. package/es/constants/error_msgs.d.ts +0 -30
  319. package/es/constants/error_msgs.js +0 -62
  320. package/es/constants/literal_types.js +0 -21
  321. package/es/constants/metadata_keys.d.ts +0 -13
  322. package/es/constants/metadata_keys.js +0 -23
  323. package/es/container/container.d.ts +0 -73
  324. package/es/container/container.js +0 -750
  325. package/es/container/container_module.d.ts +0 -11
  326. package/es/container/container_module.js +0 -17
  327. package/es/container/container_snapshot.js +0 -15
  328. package/es/container/lookup.js +0 -105
  329. package/es/container/module_activation_store.d.ts +0 -10
  330. package/es/container/module_activation_store.js +0 -47
  331. package/es/interfaces/interfaces.d.ts +0 -269
  332. package/es/interfaces/interfaces.js +0 -1
  333. package/es/inversify.d.ts +0 -24
  334. package/es/inversify.js +0 -2
  335. package/es/planning/context.d.ts +0 -11
  336. package/es/planning/context.js +0 -15
  337. package/es/planning/metadata.d.ts +0 -8
  338. package/es/planning/metadata.js +0 -17
  339. package/es/planning/metadata_reader.js +0 -21
  340. package/es/planning/plan.d.ts +0 -7
  341. package/es/planning/plan.js +0 -8
  342. package/es/planning/planner.d.ts +0 -5
  343. package/es/planning/planner.js +0 -168
  344. package/es/planning/queryable_string.d.ts +0 -10
  345. package/es/planning/queryable_string.js +0 -28
  346. package/es/planning/reflection_utils.d.ts +0 -5
  347. package/es/planning/reflection_utils.js +0 -27
  348. package/es/planning/request.d.ts +0 -14
  349. package/es/planning/request.js +0 -20
  350. package/es/planning/target.js +0 -87
  351. package/es/resolution/instantiation.js +0 -195
  352. package/es/resolution/resolver.d.ts +0 -3
  353. package/es/resolution/resolver.js +0 -214
  354. package/es/scope/scope.d.ts +0 -3
  355. package/es/scope/scope.js +0 -88
  356. package/es/syntax/binding_in_syntax.d.ts +0 -9
  357. package/es/syntax/binding_in_syntax.js +0 -21
  358. package/es/syntax/binding_in_when_on_syntax.d.ts +0 -29
  359. package/es/syntax/binding_in_when_on_syntax.js +0 -73
  360. package/es/syntax/binding_on_syntax.d.ts +0 -8
  361. package/es/syntax/binding_on_syntax.js +0 -16
  362. package/es/syntax/binding_to_syntax.js +0 -91
  363. package/es/syntax/binding_when_on_syntax.d.ts +0 -25
  364. package/es/syntax/binding_when_on_syntax.js +0 -62
  365. package/es/syntax/binding_when_syntax.d.ts +0 -21
  366. package/es/syntax/binding_when_syntax.js +0 -104
  367. package/es/syntax/constraint_helpers.d.ts +0 -6
  368. package/es/syntax/constraint_helpers.js +0 -36
  369. package/es/utils/async.d.ts +0 -3
  370. package/es/utils/async.js +0 -12
  371. package/es/utils/binding_utils.d.ts +0 -4
  372. package/es/utils/binding_utils.js +0 -58
  373. package/es/utils/clonable.d.ts +0 -3
  374. package/es/utils/clonable.js +0 -7
  375. package/es/utils/exceptions.d.ts +0 -2
  376. package/es/utils/exceptions.js +0 -16
  377. package/es/utils/factory_type.d.ts +0 -5
  378. package/es/utils/factory_type.js +0 -6
  379. package/es/utils/id.d.ts +0 -2
  380. package/es/utils/id.js +0 -5
  381. package/es/utils/js.d.ts +0 -1
  382. package/es/utils/js.js +0 -13
  383. package/es/utils/serialization.d.ts +0 -10
  384. package/es/utils/serialization.js +0 -103
  385. package/es6/annotation/decorator_utils.d.ts +0 -16
  386. package/es6/annotation/inject_base.d.ts +0 -4
  387. package/es6/annotation/injectable.d.ts +0 -2
  388. package/es6/annotation/lazy_service_identifier.js +0 -2
  389. package/es6/annotation/multi_inject.d.ts +0 -5
  390. package/es6/annotation/named.d.ts +0 -2
  391. package/es6/annotation/optional.d.ts +0 -2
  392. package/es6/annotation/post_construct.d.ts +0 -4
  393. package/es6/annotation/property_event_decorator.d.ts +0 -4
  394. package/es6/annotation/tagged.d.ts +0 -2
  395. package/es6/bindings/binding_count.d.ts +0 -5
  396. package/es6/bindings/binding_count.js +0 -9
  397. package/es6/constants/error_msgs.d.ts +0 -30
  398. package/es6/constants/literal_types.d.ts +0 -5
  399. package/es6/constants/metadata_keys.d.ts +0 -13
  400. package/es6/container/container_module.d.ts +0 -11
  401. package/es6/container/container_snapshot.d.ts +0 -10
  402. package/es6/container/lookup.d.ts +0 -17
  403. package/es6/interfaces/interfaces.js +0 -2
  404. package/es6/inversify.d.ts +0 -24
  405. package/es6/planning/metadata_reader.d.ts +0 -6
  406. package/es6/planning/plan.d.ts +0 -7
  407. package/es6/planning/planner.d.ts +0 -5
  408. package/es6/planning/queryable_string.d.ts +0 -10
  409. package/es6/planning/reflection_utils.d.ts +0 -5
  410. package/es6/planning/request.d.ts +0 -14
  411. package/es6/planning/target.js +0 -105
  412. package/es6/resolution/instantiation.d.ts +0 -3
  413. package/es6/resolution/resolver.d.ts +0 -3
  414. package/es6/scope/scope.d.ts +0 -3
  415. package/es6/syntax/binding_in_syntax.d.ts +0 -9
  416. package/es6/syntax/binding_to_syntax.d.ts +0 -18
  417. package/es6/syntax/binding_when_on_syntax.d.ts +0 -25
  418. package/es6/syntax/constraint_helpers.d.ts +0 -6
  419. package/es6/utils/async.d.ts +0 -3
  420. package/es6/utils/exceptions.d.ts +0 -2
  421. package/es6/utils/id.d.ts +0 -2
  422. package/es6/utils/js.d.ts +0 -1
  423. package/es6/utils/serialization.d.ts +0 -10
  424. package/lib/annotation/decorator_utils.d.ts +0 -16
  425. package/lib/annotation/decorator_utils.js +0 -118
  426. package/lib/annotation/inject.d.ts +0 -5
  427. package/lib/annotation/inject.js +0 -30
  428. package/lib/annotation/inject_base.d.ts +0 -4
  429. package/lib/annotation/inject_base.js +0 -17
  430. package/lib/annotation/injectable.d.ts +0 -2
  431. package/lib/annotation/injectable.js +0 -38
  432. package/lib/annotation/lazy_service_identifier.d.ts +0 -3
  433. package/lib/annotation/lazy_service_identifier.js +0 -2
  434. package/lib/annotation/multi_inject.d.ts +0 -5
  435. package/lib/annotation/multi_inject.js +0 -30
  436. package/lib/annotation/named.d.ts +0 -2
  437. package/lib/annotation/named.js +0 -32
  438. package/lib/annotation/optional.d.ts +0 -2
  439. package/lib/annotation/optional.js +0 -32
  440. package/lib/annotation/post_construct.d.ts +0 -4
  441. package/lib/annotation/post_construct.js +0 -31
  442. package/lib/annotation/pre_destroy.d.ts +0 -4
  443. package/lib/annotation/pre_destroy.js +0 -31
  444. package/lib/annotation/property_event_decorator.d.ts +0 -4
  445. package/lib/annotation/property_event_decorator.js +0 -15
  446. package/lib/annotation/tagged.d.ts +0 -2
  447. package/lib/annotation/tagged.js +0 -8
  448. package/lib/annotation/target_name.d.ts +0 -3
  449. package/lib/annotation/target_name.js +0 -35
  450. package/lib/annotation/unmanaged.d.ts +0 -3
  451. package/lib/annotation/unmanaged.js +0 -35
  452. package/lib/bindings/binding.d.ts +0 -20
  453. package/lib/bindings/binding.js +0 -40
  454. package/lib/bindings/binding_count.d.ts +0 -5
  455. package/lib/constants/error_msgs.d.ts +0 -30
  456. package/lib/constants/error_msgs.js +0 -73
  457. package/lib/constants/literal_types.d.ts +0 -5
  458. package/lib/constants/literal_types.js +0 -26
  459. package/lib/constants/metadata_keys.d.ts +0 -13
  460. package/lib/constants/metadata_keys.js +0 -26
  461. package/lib/container/container.d.ts +0 -73
  462. package/lib/container/container.js +0 -776
  463. package/lib/container/container_module.d.ts +0 -11
  464. package/lib/container/container_module.js +0 -20
  465. package/lib/container/container_snapshot.d.ts +0 -10
  466. package/lib/container/container_snapshot.js +0 -18
  467. package/lib/container/lookup.d.ts +0 -17
  468. package/lib/container/lookup.js +0 -131
  469. package/lib/container/module_activation_store.d.ts +0 -10
  470. package/lib/container/module_activation_store.js +0 -50
  471. package/lib/interfaces/interfaces.d.ts +0 -269
  472. package/lib/inversify.d.ts +0 -24
  473. package/lib/inversify.js +0 -76
  474. package/lib/planning/context.d.ts +0 -11
  475. package/lib/planning/context.js +0 -18
  476. package/lib/planning/metadata.d.ts +0 -8
  477. package/lib/planning/metadata.js +0 -43
  478. package/lib/planning/metadata_reader.d.ts +0 -6
  479. package/lib/planning/metadata_reader.js +0 -47
  480. package/lib/planning/plan.d.ts +0 -7
  481. package/lib/planning/plan.js +0 -11
  482. package/lib/planning/planner.d.ts +0 -5
  483. package/lib/planning/planner.js +0 -195
  484. package/lib/planning/queryable_string.d.ts +0 -10
  485. package/lib/planning/queryable_string.js +0 -31
  486. package/lib/planning/reflection_utils.d.ts +0 -5
  487. package/lib/planning/reflection_utils.js +0 -55
  488. package/lib/planning/request.d.ts +0 -14
  489. package/lib/planning/request.js +0 -23
  490. package/lib/planning/target.d.ts +0 -23
  491. package/lib/planning/target.js +0 -113
  492. package/lib/resolution/instantiation.d.ts +0 -3
  493. package/lib/resolution/instantiation.js +0 -220
  494. package/lib/resolution/resolver.d.ts +0 -3
  495. package/lib/resolution/resolver.js +0 -239
  496. package/lib/scope/scope.d.ts +0 -3
  497. package/lib/scope/scope.js +0 -93
  498. package/lib/syntax/binding_in_syntax.d.ts +0 -9
  499. package/lib/syntax/binding_in_syntax.js +0 -24
  500. package/lib/syntax/binding_in_when_on_syntax.d.ts +0 -29
  501. package/lib/syntax/binding_in_when_on_syntax.js +0 -76
  502. package/lib/syntax/binding_on_syntax.d.ts +0 -8
  503. package/lib/syntax/binding_on_syntax.js +0 -19
  504. package/lib/syntax/binding_to_syntax.d.ts +0 -18
  505. package/lib/syntax/binding_to_syntax.js +0 -117
  506. package/lib/syntax/binding_when_on_syntax.d.ts +0 -25
  507. package/lib/syntax/binding_when_on_syntax.js +0 -65
  508. package/lib/syntax/binding_when_syntax.d.ts +0 -21
  509. package/lib/syntax/binding_when_syntax.js +0 -107
  510. package/lib/syntax/constraint_helpers.d.ts +0 -6
  511. package/lib/syntax/constraint_helpers.js +0 -65
  512. package/lib/tsconfig.tsbuildinfo +0 -1
  513. package/lib/utils/async.d.ts +0 -3
  514. package/lib/utils/async.js +0 -15
  515. package/lib/utils/binding_utils.d.ts +0 -4
  516. package/lib/utils/binding_utils.js +0 -87
  517. package/lib/utils/clonable.d.ts +0 -3
  518. package/lib/utils/clonable.js +0 -9
  519. package/lib/utils/exceptions.d.ts +0 -2
  520. package/lib/utils/exceptions.js +0 -44
  521. package/lib/utils/factory_type.d.ts +0 -5
  522. package/lib/utils/factory_type.js +0 -9
  523. package/lib/utils/id.d.ts +0 -2
  524. package/lib/utils/id.js +0 -7
  525. package/lib/utils/js.d.ts +0 -1
  526. package/lib/utils/js.js +0 -16
  527. package/lib/utils/serialization.d.ts +0 -10
  528. package/lib/utils/serialization.js +0 -133
  529. /package/{es → lib/esm}/package.json +0 -0
@@ -1,6 +1,44 @@
1
- import { Newable as CommonNewable, ServiceIdentifier as CommonServiceIdentifier } from '@inversifyjs/common';
1
+ import { Newable, ServiceIdentifier, LazyServiceIdentifier } from '@inversifyjs/common';
2
+ export { LazyServiceIdentifier } from '@inversifyjs/common';
2
3
  import { LegacyTarget } from '@inversifyjs/core';
3
- import { FactoryType } from '../utils/factory_type';
4
+
5
+ declare const NAMED_TAG: string;
6
+ declare const NAME_TAG: string;
7
+ declare const UNMANAGED_TAG: string;
8
+ declare const OPTIONAL_TAG: string;
9
+ declare const INJECT_TAG: string;
10
+ declare const MULTI_INJECT_TAG: string;
11
+ declare const TAGGED: string;
12
+ declare const TAGGED_PROP: string;
13
+ declare const PARAM_TYPES: string;
14
+ declare const DESIGN_PARAM_TYPES: string;
15
+ declare const POST_CONSTRUCT: string;
16
+ declare const PRE_DESTROY: string;
17
+ declare const NON_CUSTOM_TAG_KEYS: string[];
18
+
19
+ declare const keys_DESIGN_PARAM_TYPES: typeof DESIGN_PARAM_TYPES;
20
+ declare const keys_INJECT_TAG: typeof INJECT_TAG;
21
+ declare const keys_MULTI_INJECT_TAG: typeof MULTI_INJECT_TAG;
22
+ declare const keys_NAMED_TAG: typeof NAMED_TAG;
23
+ declare const keys_NAME_TAG: typeof NAME_TAG;
24
+ declare const keys_NON_CUSTOM_TAG_KEYS: typeof NON_CUSTOM_TAG_KEYS;
25
+ declare const keys_OPTIONAL_TAG: typeof OPTIONAL_TAG;
26
+ declare const keys_PARAM_TYPES: typeof PARAM_TYPES;
27
+ declare const keys_POST_CONSTRUCT: typeof POST_CONSTRUCT;
28
+ declare const keys_PRE_DESTROY: typeof PRE_DESTROY;
29
+ declare const keys_TAGGED: typeof TAGGED;
30
+ declare const keys_TAGGED_PROP: typeof TAGGED_PROP;
31
+ declare const keys_UNMANAGED_TAG: typeof UNMANAGED_TAG;
32
+ declare namespace keys {
33
+ export { keys_DESIGN_PARAM_TYPES as DESIGN_PARAM_TYPES, keys_INJECT_TAG as INJECT_TAG, keys_MULTI_INJECT_TAG as MULTI_INJECT_TAG, keys_NAMED_TAG as NAMED_TAG, keys_NAME_TAG as NAME_TAG, keys_NON_CUSTOM_TAG_KEYS as NON_CUSTOM_TAG_KEYS, keys_OPTIONAL_TAG as OPTIONAL_TAG, keys_PARAM_TYPES as PARAM_TYPES, keys_POST_CONSTRUCT as POST_CONSTRUCT, keys_PRE_DESTROY as PRE_DESTROY, keys_TAGGED as TAGGED, keys_TAGGED_PROP as TAGGED_PROP, keys_UNMANAGED_TAG as UNMANAGED_TAG };
34
+ }
35
+
36
+ declare enum FactoryType {
37
+ DynamicValue = "toDynamicValue",
38
+ Factory = "toFactory",
39
+ Provider = "toProvider"
40
+ }
41
+
4
42
  declare namespace interfaces {
5
43
  export type DynamicValue<T> = (context: interfaces.Context) => T | Promise<T>;
6
44
  export type ContainerResolution<T> = T | Promise<T> | (T | Promise<T>)[];
@@ -28,12 +66,12 @@ declare namespace interfaces {
28
66
  ClassProperty: interfaces.TargetType;
29
67
  Variable: interfaces.TargetType;
30
68
  }
31
- export type Newable<TInstance = unknown> = CommonNewable<TInstance>;
69
+ export type Newable<TInstance = unknown> = Newable<TInstance>;
32
70
  export type Instance<T> = T & Record<string, () => void>;
33
71
  export interface Abstract<T> {
34
72
  prototype: T;
35
73
  }
36
- export type ServiceIdentifier<T = unknown> = CommonServiceIdentifier<T>;
74
+ export type ServiceIdentifier<T = unknown> = ServiceIdentifier<T>;
37
75
  export interface Clonable<T> {
38
76
  clone(): T;
39
77
  }
@@ -182,8 +220,8 @@ declare namespace interfaces {
182
220
  onDeactivations: Lookup<BindingDeactivation<unknown>>;
183
221
  }
184
222
  export interface ModuleActivationStore extends Clonable<ModuleActivationStore> {
185
- addDeactivation(moduleId: ContainerModuleBase['id'], serviceIdentifier: ServiceIdentifier<unknown>, onDeactivation: interfaces.BindingDeactivation<unknown>): void;
186
- addActivation(moduleId: ContainerModuleBase['id'], serviceIdentifier: ServiceIdentifier<unknown>, onActivation: interfaces.BindingActivation<unknown>): void;
223
+ addDeactivation<T>(moduleId: ContainerModuleBase['id'], serviceIdentifier: ServiceIdentifier<T>, onDeactivation: interfaces.BindingDeactivation<T>): void;
224
+ addActivation<T>(moduleId: ContainerModuleBase['id'], serviceIdentifier: ServiceIdentifier<T>, onActivation: interfaces.BindingActivation<T>): void;
187
225
  remove(moduleId: ContainerModuleBase['id']): ModuleActivationHandlers;
188
226
  }
189
227
  export type ContainerModuleCallBack = (bind: interfaces.Bind, unbind: interfaces.Unbind, isBound: interfaces.IsBound, rebind: interfaces.Rebind, unbindAsync: interfaces.UnbindAsync, onActivation: interfaces.Container['onActivation'], onDeactivation: interfaces.Container['onDeactivation']) => void;
@@ -264,6 +302,167 @@ declare namespace interfaces {
264
302
  compilerGeneratedMetadata: NewableFunction[] | undefined;
265
303
  userGeneratedMetadata: MetadataMap;
266
304
  }
267
- export {};
305
+ export { };
306
+ }
307
+ //# sourceMappingURL=interfaces.d.ts.map
308
+
309
+ declare class Container implements interfaces.Container {
310
+ id: number;
311
+ parent: interfaces.Container | null;
312
+ readonly options: interfaces.ContainerOptions;
313
+ private _middleware;
314
+ private _bindingDictionary;
315
+ private _activations;
316
+ private _deactivations;
317
+ private readonly _snapshots;
318
+ private _metadataReader;
319
+ private _moduleActivationStore;
320
+ constructor(containerOptions?: interfaces.ContainerOptions);
321
+ static merge(container1: interfaces.Container, container2: interfaces.Container, ...containers: interfaces.Container[]): interfaces.Container;
322
+ load(...modules: interfaces.ContainerModule[]): void;
323
+ loadAsync(...modules: interfaces.AsyncContainerModule[]): Promise<void>;
324
+ unload(...modules: interfaces.ContainerModuleBase[]): void;
325
+ unloadAsync(...modules: interfaces.ContainerModuleBase[]): Promise<void>;
326
+ bind<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): interfaces.BindingToSyntax<T>;
327
+ rebind<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): interfaces.BindingToSyntax<T>;
328
+ rebindAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): Promise<interfaces.BindingToSyntax<T>>;
329
+ unbind(serviceIdentifier: interfaces.ServiceIdentifier): void;
330
+ unbindAsync(serviceIdentifier: interfaces.ServiceIdentifier): Promise<void>;
331
+ unbindAll(): void;
332
+ unbindAllAsync(): Promise<void>;
333
+ onActivation<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, onActivation: interfaces.BindingActivation<T>): void;
334
+ onDeactivation<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, onDeactivation: interfaces.BindingDeactivation<T>): void;
335
+ isBound(serviceIdentifier: interfaces.ServiceIdentifier<unknown>): boolean;
336
+ isCurrentBound<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): boolean;
337
+ isBoundNamed(serviceIdentifier: interfaces.ServiceIdentifier, named: string | number | symbol): boolean;
338
+ isBoundTagged(serviceIdentifier: interfaces.ServiceIdentifier, key: string | number | symbol, value: unknown): boolean;
339
+ snapshot(): void;
340
+ restore(): void;
341
+ createChild(containerOptions?: interfaces.ContainerOptions): Container;
342
+ applyMiddleware(...middlewares: interfaces.Middleware[]): void;
343
+ applyCustomMetadataReader(metadataReader: interfaces.MetadataReader): void;
344
+ get<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): T;
345
+ getAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): Promise<T>;
346
+ getTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T;
347
+ getTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T>;
348
+ getNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T;
349
+ getNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T>;
350
+ getAll<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): T[];
351
+ getAllAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): Promise<T[]>;
352
+ getAllTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T[];
353
+ getAllTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T[]>;
354
+ getAllNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T[];
355
+ getAllNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T[]>;
356
+ resolve<T>(constructorFunction: interfaces.Newable<T>): T;
357
+ private _preDestroy;
358
+ private _removeModuleHandlers;
359
+ private _removeModuleBindings;
360
+ private _deactivate;
361
+ private _handleDeactivationError;
362
+ private _deactivateContainer;
363
+ private _deactivateContainerAsync;
364
+ private _getContainerModuleHelpersFactory;
365
+ private _bind;
366
+ private _buildBinding;
367
+ private _getAll;
368
+ private _get;
369
+ private _getButThrowIfAsync;
370
+ private _getAllArgs;
371
+ private _getNotAllArgs;
372
+ private _planAndResolve;
373
+ private _deactivateIfSingleton;
374
+ private _deactivateSingletons;
375
+ private _deactivateSingletonsAsync;
376
+ private _propagateContainerDeactivationThenBindingAndPreDestroy;
377
+ private _propagateContainerDeactivationThenBindingAndPreDestroyAsync;
378
+ private _removeServiceFromDictionary;
379
+ private _bindingDeactivationAndPreDestroy;
380
+ private _bindingDeactivationAndPreDestroyAsync;
381
+ }
382
+ //# sourceMappingURL=container.d.ts.map
383
+
384
+ declare const BindingScopeEnum: interfaces.BindingScopeEnum;
385
+ declare const BindingTypeEnum: interfaces.BindingTypeEnum;
386
+ declare const TargetTypeEnum: interfaces.TargetTypeEnum;
387
+ //# sourceMappingURL=literal_types.d.ts.map
388
+
389
+ declare class ContainerModule implements interfaces.ContainerModule {
390
+ id: number;
391
+ registry: interfaces.ContainerModuleCallBack;
392
+ constructor(registry: interfaces.ContainerModuleCallBack);
393
+ }
394
+ declare class AsyncContainerModule implements interfaces.AsyncContainerModule {
395
+ id: number;
396
+ registry: interfaces.AsyncContainerModuleCallBack;
397
+ constructor(registry: interfaces.AsyncContainerModuleCallBack);
398
+ }
399
+
400
+ type Prototype<T> = {
401
+ [Property in keyof T]: T[Property] extends NewableFunction ? T[Property] : T[Property] | undefined;
402
+ } & {
403
+ constructor: NewableFunction;
404
+ };
405
+ interface ConstructorFunction<T = Record<string, unknown>> {
406
+ prototype: Prototype<T>;
407
+ new (...args: unknown[]): T;
408
+ }
409
+ type DecoratorTarget<T = unknown> = ConstructorFunction<T> | Prototype<T>;
410
+ declare function createTaggedDecorator(metadata: interfaces.MetadataOrMetadataArray): <T>(target: DecoratorTarget, targetKey?: string | symbol, indexOrPropertyDescriptor?: number | TypedPropertyDescriptor<T>) => void;
411
+ declare function decorate(decorator: DecoratorTarget | ParameterDecorator | MethodDecorator, target: object, parameterIndexOrProperty?: number | string): void;
412
+
413
+ declare function injectable(): <T extends abstract new (...args: any) => unknown>(target: T) => T;
414
+ //# sourceMappingURL=injectable.d.ts.map
415
+
416
+ declare function tagged(metadataKey: string | number | symbol, metadataValue: unknown): <T>(target: DecoratorTarget, targetKey?: string | symbol, indexOrPropertyDescriptor?: number | TypedPropertyDescriptor<T>) => void;
417
+ //# sourceMappingURL=tagged.d.ts.map
418
+
419
+ declare function named(name: string | number | symbol): <T>(target: DecoratorTarget, targetKey?: string | symbol, indexOrPropertyDescriptor?: number | TypedPropertyDescriptor<T>) => void;
420
+ //# sourceMappingURL=named.d.ts.map
421
+
422
+ declare const inject: <T = unknown>(serviceIdentifier: interfaces.ServiceIdentifier<T> | LazyServiceIdentifier<T>) => (target: DecoratorTarget, targetKey?: string | symbol, indexOrPropertyDescriptor?: number | TypedPropertyDescriptor<T>) => void;
423
+ //# sourceMappingURL=inject.d.ts.map
424
+
425
+ declare function optional(): <T>(target: DecoratorTarget, targetKey?: string | symbol, indexOrPropertyDescriptor?: number | TypedPropertyDescriptor<T>) => void;
426
+ //# sourceMappingURL=optional.d.ts.map
427
+
428
+ declare function unmanaged(): (target: DecoratorTarget, targetKey: string | undefined, index: number) => void;
429
+ //# sourceMappingURL=unmanaged.d.ts.map
430
+
431
+ declare const multiInject: <T = unknown>(serviceIdentifier: interfaces.ServiceIdentifier<T> | LazyServiceIdentifier<T>) => (target: DecoratorTarget, targetKey?: string | symbol, indexOrPropertyDescriptor?: number | TypedPropertyDescriptor<T>) => void;
432
+ //# sourceMappingURL=multi_inject.d.ts.map
433
+
434
+ declare function targetName(name: string): (target: DecoratorTarget, targetKey: string | undefined, index: number) => void;
435
+ //# sourceMappingURL=target_name.d.ts.map
436
+
437
+ declare const postConstruct: () => (target: {
438
+ constructor: NewableFunction;
439
+ }, propertyKey: string) => void;
440
+ //# sourceMappingURL=post_construct.d.ts.map
441
+
442
+ declare const preDestroy: () => (target: {
443
+ constructor: NewableFunction;
444
+ }, propertyKey: string) => void;
445
+ //# sourceMappingURL=pre_destroy.d.ts.map
446
+
447
+ declare class MetadataReader implements interfaces.MetadataReader {
448
+ getConstructorMetadata(constructorFunc: NewableFunction): interfaces.ConstructorMetadata;
449
+ getPropertiesMetadata(constructorFunc: NewableFunction): interfaces.MetadataMap;
268
450
  }
269
- export type { interfaces };
451
+ //# sourceMappingURL=metadata_reader.d.ts.map
452
+
453
+ declare function id(): number;
454
+ //# sourceMappingURL=id.d.ts.map
455
+
456
+ declare const traverseAncerstors: (request: interfaces.Request, constraint: interfaces.ConstraintFunction) => boolean;
457
+ declare const taggedConstraint: (key: string | number | symbol) => (value: unknown) => interfaces.ConstraintFunction;
458
+ declare const namedConstraint: (value: unknown) => interfaces.ConstraintFunction;
459
+ declare const typeConstraint: (type: NewableFunction | string) => (request: interfaces.Request | null) => boolean;
460
+ //# sourceMappingURL=constraint_helpers.d.ts.map
461
+
462
+ declare function getServiceIdentifierAsString(serviceIdentifier: interfaces.ServiceIdentifier): string;//# sourceMappingURL=serialization.d.ts.map
463
+
464
+ declare const multiBindToService: (container: interfaces.Container) => (service: interfaces.ServiceIdentifier) => (...types: interfaces.ServiceIdentifier[]) => void;
465
+
466
+ declare const METADATA_KEY: typeof keys;
467
+
468
+ export { AsyncContainerModule, BindingScopeEnum, BindingTypeEnum, Container, ContainerModule, METADATA_KEY, MetadataReader, TargetTypeEnum, createTaggedDecorator, decorate, getServiceIdentifierAsString, id, inject, injectable, interfaces, multiBindToService, multiInject, named, namedConstraint, optional, postConstruct, preDestroy, tagged, taggedConstraint, targetName, traverseAncerstors, typeConstraint, unmanaged };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,KAAK,IAAI,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,eAAO,MAAM,YAAY,aAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,eAAe,GAChB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import"reflect-metadata";export{LazyServiceIdentifier}from"@inversifyjs/common";import{getTargets as n,getClassElementMetadataFromLegacyMetadata as t,ClassElementMetadataKind as e,LegacyTargetImpl as i}from"@inversifyjs/core";const r="named",o="name",s="unmanaged",a="optional",c="inject",d="multi_inject",u="inversify:tagged",h="inversify:tagged_props",l="inversify:paramtypes",g="design:paramtypes",y="post_construct",p="pre_destroy";const f=[c,d,o,s,r,a];var _=Object.freeze({__proto__:null,DESIGN_PARAM_TYPES:g,INJECT_TAG:c,MULTI_INJECT_TAG:d,NAMED_TAG:r,NAME_TAG:o,NON_CUSTOM_TAG_KEYS:f,OPTIONAL_TAG:a,PARAM_TYPES:l,POST_CONSTRUCT:y,PRE_DESTROY:p,TAGGED:u,TAGGED_PROP:h,UNMANAGED_TAG:s});const v={Request:"Request",Singleton:"Singleton",Transient:"Transient"},b={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"},w={ClassProperty:"ClassProperty",ConstructorArgument:"ConstructorArgument",Variable:"Variable"};let m=0;function A(){return m++}class S{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(n,t){this.id=A(),this.activated=!1,this.serviceIdentifier=n,this.scope=t,this.type=b.Invalid,this.constraint=n=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const n=new S(this.serviceIdentifier,this.scope);return n.activated=n.scope===v.Singleton&&this.activated,n.implementationType=this.implementationType,n.dynamicValue=this.dynamicValue,n.scope=this.scope,n.type=this.type,n.factory=this.factory,n.provider=this.provider,n.constraint=this.constraint,n.onActivation=this.onActivation,n.onDeactivation=this.onDeactivation,n.cache=this.cache,n}}const I="Metadata key was used more than once in a parameter:",T="NULL argument",D="Key Not Found",N="Ambiguous match found for serviceIdentifier:",C="No matching bindings found for serviceIdentifier:",R="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",x=(n,t)=>`onDeactivation() error in class ${n}: ${t}`;class E{getConstructorMetadata(n){return{compilerGeneratedMetadata:Reflect.getMetadata(g,n)??[],userGeneratedMetadata:Reflect.getMetadata(u,n)??{}}}getPropertiesMetadata(n){return Reflect.getMetadata(h,n)??{}}}var M;function q(n){return n instanceof RangeError||"Maximum call stack size exceeded"===n.message}!function(n){n[n.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",n[n.NoBindingsAvailable=0]="NoBindingsAvailable",n[n.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"}(M||(M={}));function P(n){return"function"==typeof n?n.name:"symbol"==typeof n?n.toString():n}function B(n,t,e){let i="";const r=e(n,t);return 0!==r.length&&(i="\nRegistered bindings:",r.forEach((n=>{let t="Object";null!==n.implementationType&&(t=j(n.implementationType)),i=`${i}\n ${t}`,n.constraint.metaData&&(i=`${i} - ${n.constraint.metaData}`)}))),i}function F(n,t){return null!==n.parentRequest&&(n.parentRequest.serviceIdentifier===t||F(n.parentRequest,t))}function k(n){n.childRequests.forEach((t=>{if(F(n,t.serviceIdentifier)){const n=function(n){const t=function n(t,e=[]){const i=P(t.serviceIdentifier);return e.push(i),null!==t.parentRequest?n(t.parentRequest,e):e}(n);return t.reverse().join(" --\x3e ")}(t);throw new Error(`Circular dependency found: ${n}`)}k(t)}))}function j(n){if(null!=n.name&&""!==n.name)return n.name;{const t=n.toString(),e=t.match(/^function\s*([^\s(]+)/);return null===e?`Anonymous function: ${t}`:e[1]}}function $(n){return`{"key":"${n.key.toString()}","value":"${n.value.toString()}"}`}class O{id;container;plan;currentRequest;constructor(n){this.id=A(),this.container=n}addPlan(n){this.plan=n}setCurrentRequest(n){this.currentRequest=n}}class V{key;value;constructor(n,t){this.key=n,this.value=t}toString(){return this.key===r?`named: ${String(this.value).toString()} `:`tagged: { key:${this.key.toString()}, value: ${String(this.value)} }`}}class W{parentContext;rootRequest;constructor(n,t){this.parentContext=n,this.rootRequest=t}}function G(t,e){const i=Object.getPrototypeOf(e.prototype).constructor;if(i!==Object){const e=n(t)(i),r=e.map((n=>n.metadata.filter((n=>n.key===s)))),o=[].concat.apply([],r).length,a=e.length-o;return a>0?a:G(t,i)}return 0}class K{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(n,t,e,i,r){this.id=A(),this.serviceIdentifier=n,this.parentContext=t,this.parentRequest=e,this.target=r,this.childRequests=[],this.bindings=Array.isArray(i)?i:[i],this.requestScope=null===e?new Map:null}addChildRequest(n,t,e){const i=new K(n,this.parentContext,this,t,e);return this.childRequests.push(i),i}}function H(n){return n._bindingDictionary}function U(n,t,e,i,r){let o=z(e.container,r.serviceIdentifier),s=[];return o.length===M.NoBindingsAvailable&&!0===e.container.options.autoBindInjectable&&"function"==typeof r.serviceIdentifier&&n.getConstructorMetadata(r.serviceIdentifier).compilerGeneratedMetadata&&(e.container.bind(r.serviceIdentifier).toSelf(),o=z(e.container,r.serviceIdentifier)),s=t?o:o.filter((n=>{const t=new K(n.serviceIdentifier,e,i,n,r);return n.constraint(t)})),function(n,t,e,i,r){switch(t.length){case M.NoBindingsAvailable:if(i.isOptional())return t;{const t=P(n);let o=C;throw o+=function(n,t){if(t.isTagged()||t.isNamed()){let e="";const i=t.getNamedTag(),r=t.getCustomTags();return null!==i&&(e+=$(i)+"\n"),null!==r&&r.forEach((n=>{e+=$(n)+"\n"})),` ${n}\n ${n} - ${e}`}return` ${n}`}(t,i),o+=B(r,t,z),null!==e&&(o+="\n"+`Trying to resolve bindings for "${P(e.serviceIdentifier)}"`),new Error(o)}case M.OnlyOneBindingAvailable:return t;case M.MultipleBindingsAvailable:default:if(i.isArray())return t;{const t=P(n);let e=`${N} ${t}`;throw e+=B(r,t,z),new Error(e)}}}(r.serviceIdentifier,s,i,r,e.container),s}function L(n,t,e,i){const r=[new V(n?d:c,t)];return void 0!==e&&r.push(new V(e,i)),r}function Y(t,e,i,r,o,s){let a,c;if(null===o){a=U(t,e,r,null,s),c=new K(i,r,null,a,s);const n=new W(r,c);r.addPlan(n)}else a=U(t,e,r,o,s),c=o.addChildRequest(s.serviceIdentifier,a,s);a.forEach((e=>{let i=null;if(s.isArray())i=c.addChildRequest(e.serviceIdentifier,e,s);else{if(null!==e.cache)return;i=c}if(e.type===b.Instance&&null!==e.implementationType){const o=function(t,e){return n(t)(e)}(t,e.implementationType);if(!0!==r.container.options.skipBaseClassChecks){const n=G(t,e.implementationType);if(o.length<n){const n=`The number of constructor arguments in the derived class ${j(e.implementationType)} must be >= than the number of constructor arguments of its base class.`;throw new Error(n)}}o.forEach((n=>{Y(t,!1,n.serviceIdentifier,r,i,n)}))}}))}function z(n,t){let e=[];const i=H(n);return i.hasKey(t)?e=i.get(t):null!==n.parent&&(e=z(n.parent,t)),e}function J(n,r,o,s,a,c,d,u=!1){const h=new O(r),l=function(n,r,o,s,a,c){const d=L(n,o,a,c),u=t(d);if(u.kind===e.unmanaged)throw new Error("Unexpected metadata when creating target");return new i(s,u,r)}(o,s,a,"",c,d);try{return Y(n,u,a,h,null,l),h}catch(n){throw q(n)&&k(h.plan.rootRequest),n}}function Q(n){return("object"==typeof n&&null!==n||"function"==typeof n)&&"function"==typeof n.then}function X(n){return!!Q(n)||Array.isArray(n)&&n.some(Q)}const Z=(n,t,e)=>{n.has(t.id)||n.set(t.id,e)},nn=(n,t)=>{n.cache=t,n.activated=!0,Q(t)&&tn(n,t)},tn=async(n,t)=>{try{const e=await t;n.cache=e}catch(t){throw n.cache=null,n.activated=!1,t}};var en;!function(n){n.DynamicValue="toDynamicValue",n.Factory="toFactory",n.Provider="toProvider"}(en||(en={}));const rn=n=>t=>(...e)=>{e.forEach((e=>{n.bind(e).toService(t)}))};function on(n,t,e){let i;if(t.length>0){const r=function(n,t){return n.reduce(((n,e)=>{const i=t(e);return e.target.type===w.ConstructorArgument?n.constructorInjections.push(i):(n.propertyRequests.push(e),n.propertyInjections.push(i)),n.isAsync||(n.isAsync=X(i)),n}),{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})}(t,e),o={...r,constr:n};i=r.isAsync?async function(n){const t=await an(n.constructorInjections),e=await an(n.propertyInjections);return sn({...n,constructorInjections:t,propertyInjections:e})}(o):sn(o)}else i=new n;return i}function sn(n){const t=new n.constr(...n.constructorInjections);return n.propertyRequests.forEach(((e,i)=>{const r=e.target.identifier,o=n.propertyInjections[i];e.target.isOptional()&&void 0===o||(t[r]=o)})),t}async function an(n){const t=[];for(const e of n)Array.isArray(e)?t.push(Promise.all(e)):t.push(e);return Promise.all(t)}function cn(n,t){const e=function(n,t){if(Reflect.hasMetadata(y,n)){const r=Reflect.getMetadata(y,n);try{return t[r.value]?.()}catch(t){if(t instanceof Error)throw new Error((e=n.name,i=t.message,`@postConstruct error in class ${e}: ${i}`))}}var e,i}(n,t);return Q(e)?e.then((()=>t)):t}function dn(n,t){n.scope!==v.Singleton&&function(n,t){const e=`Class cannot be instantiated in ${n.scope===v.Request?"request":"transient"} scope.`;if("function"==typeof n.onDeactivation)throw new Error(x(t.name,e));if(Reflect.hasMetadata(p,t))throw new Error(`@preDestroy error in class ${t.name}: ${e}`)}(n,t)}const un=n=>t=>{t.parentContext.setCurrentRequest(t);const e=t.bindings,i=t.childRequests,r=t.target&&t.target.isArray(),o=!(t.parentRequest&&t.parentRequest.target&&t.target&&t.parentRequest.target.matchesArray(t.target.serviceIdentifier));if(r&&o)return i.map((t=>un(n)(t)));{if(t.target.isOptional()&&0===e.length)return;const i=e[0];return yn(n,t,i)}},hn=(n,t)=>{const e=(n=>{switch(n.type){case b.Factory:return{factory:n.factory,factoryType:en.Factory};case b.Provider:return{factory:n.provider,factoryType:en.Provider};case b.DynamicValue:return{factory:n.dynamicValue,factoryType:en.DynamicValue};default:throw new Error(`Unexpected factory type ${n.type}`)}})(n);return((n,t)=>{try{return n()}catch(n){if(q(n))throw t();throw n}})((()=>e.factory.bind(n)(t)),(()=>{return new Error((n=e.factoryType,i=t.currentRequest.serviceIdentifier.toString(),`It looks like there is a circular dependency in one of the '${n}' bindings. Please investigate bindings with service identifier '${i}'.`));var n,i}))},ln=(n,t,e)=>{let i;const r=t.childRequests;switch((n=>{let t=null;switch(n.type){case b.ConstantValue:case b.Function:t=n.cache;break;case b.Constructor:case b.Instance:t=n.implementationType;break;case b.DynamicValue:t=n.dynamicValue;break;case b.Provider:t=n.provider;break;case b.Factory:t=n.factory}if(null===t){const t=P(n.serviceIdentifier);throw new Error(`Invalid binding type: ${t}`)}})(e),e.type){case b.ConstantValue:case b.Function:i=e.cache;break;case b.Constructor:i=e.implementationType;break;case b.Instance:i=function(n,t,e,i){dn(n,t);const r=on(t,e,i);return Q(r)?r.then((n=>cn(t,n))):cn(t,r)}(e,e.implementationType,r,un(n));break;default:i=hn(e,t.parentContext)}return i},gn=(n,t,e)=>{let i=((n,t)=>t.scope===v.Singleton&&t.activated?t.cache:t.scope===v.Request&&n.has(t.id)?n.get(t.id):null)(n,t);return null!==i||(i=e(),((n,t,e)=>{t.scope===v.Singleton&&nn(t,e),t.scope===v.Request&&Z(n,t,e)})(n,t,i)),i},yn=(n,t,e)=>gn(n,e,(()=>{let i=ln(n,t,e);return i=Q(i)?i.then((n=>pn(t,e,n))):pn(t,e,i),i}));function pn(n,t,e){let i=fn(n.parentContext,t,e);const r=wn(n.parentContext.container);let o,s=r.next();do{o=s.value;const t=n.parentContext,e=n.serviceIdentifier,a=bn(o,e);i=Q(i)?vn(a,t,i):_n(a,t,i),s=r.next()}while(!0!==s.done&&!H(o).hasKey(n.serviceIdentifier));return i}const fn=(n,t,e)=>{let i;return i="function"==typeof t.onActivation?t.onActivation(n,e):e,i},_n=(n,t,e)=>{let i=n.next();for(;!0!==i.done;){if(Q(e=i.value(t,e)))return vn(n,t,e);i=n.next()}return e},vn=async(n,t,e)=>{let i=await e,r=n.next();for(;!0!==r.done;)i=await r.value(t,i),r=n.next();return i},bn=(n,t)=>{const e=n._activations;return e.hasKey(t)?e.get(t).values():[].values()},wn=n=>{const t=[n];let e=n.parent;for(;null!==e;)t.push(e),e=e.parent;return{next:()=>{const n=t.pop();return void 0!==n?{done:!1,value:n}:{done:!0,value:void 0}}}};const mn=(n,t)=>{const e=n.parentRequest;return null!==e&&(!!t(e)||mn(e,t))},An=n=>t=>{const e=e=>null!==e&&null!==e.target&&e.target.matchesTag(n)(t);return e.metaData=new V(n,t),e},Sn=An(r),In=n=>t=>{let e=null;if(null!==t){if(e=t.bindings[0],"string"==typeof n)return e.serviceIdentifier===n;{const e=t.bindings[0].implementationType;return n===e}}return!1};class Tn{_binding;constructor(n){this._binding=n}when(n){return this._binding.constraint=n,new Dn(this._binding)}whenTargetNamed(n){return this._binding.constraint=Sn(n),new Dn(this._binding)}whenTargetIsDefault(){return this._binding.constraint=n=>{if(null===n)return!1;return null!==n.target&&!n.target.isNamed()&&!n.target.isTagged()},new Dn(this._binding)}whenTargetTagged(n,t){return this._binding.constraint=An(n)(t),new Dn(this._binding)}whenInjectedInto(n){return this._binding.constraint=t=>null!==t&&In(n)(t.parentRequest),new Dn(this._binding)}whenParentNamed(n){return this._binding.constraint=t=>null!==t&&Sn(n)(t.parentRequest),new Dn(this._binding)}whenParentTagged(n,t){return this._binding.constraint=e=>null!==e&&An(n)(t)(e.parentRequest),new Dn(this._binding)}whenAnyAncestorIs(n){return this._binding.constraint=t=>null!==t&&mn(t,In(n)),new Dn(this._binding)}whenNoAncestorIs(n){return this._binding.constraint=t=>null!==t&&!mn(t,In(n)),new Dn(this._binding)}whenAnyAncestorNamed(n){return this._binding.constraint=t=>null!==t&&mn(t,Sn(n)),new Dn(this._binding)}whenNoAncestorNamed(n){return this._binding.constraint=t=>null!==t&&!mn(t,Sn(n)),new Dn(this._binding)}whenAnyAncestorTagged(n,t){return this._binding.constraint=e=>null!==e&&mn(e,An(n)(t)),new Dn(this._binding)}whenNoAncestorTagged(n,t){return this._binding.constraint=e=>null!==e&&!mn(e,An(n)(t)),new Dn(this._binding)}whenAnyAncestorMatches(n){return this._binding.constraint=t=>null!==t&&mn(t,n),new Dn(this._binding)}whenNoAncestorMatches(n){return this._binding.constraint=t=>null!==t&&!mn(t,n),new Dn(this._binding)}}class Dn{_binding;constructor(n){this._binding=n}onActivation(n){return this._binding.onActivation=n,new Tn(this._binding)}onDeactivation(n){return this._binding.onDeactivation=n,new Tn(this._binding)}}class Nn{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(n){this._binding=n,this._bindingWhenSyntax=new Tn(this._binding),this._bindingOnSyntax=new Dn(this._binding)}when(n){return this._bindingWhenSyntax.when(n)}whenTargetNamed(n){return this._bindingWhenSyntax.whenTargetNamed(n)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(n,t){return this._bindingWhenSyntax.whenTargetTagged(n,t)}whenInjectedInto(n){return this._bindingWhenSyntax.whenInjectedInto(n)}whenParentNamed(n){return this._bindingWhenSyntax.whenParentNamed(n)}whenParentTagged(n,t){return this._bindingWhenSyntax.whenParentTagged(n,t)}whenAnyAncestorIs(n){return this._bindingWhenSyntax.whenAnyAncestorIs(n)}whenNoAncestorIs(n){return this._bindingWhenSyntax.whenNoAncestorIs(n)}whenAnyAncestorNamed(n){return this._bindingWhenSyntax.whenAnyAncestorNamed(n)}whenAnyAncestorTagged(n,t){return this._bindingWhenSyntax.whenAnyAncestorTagged(n,t)}whenNoAncestorNamed(n){return this._bindingWhenSyntax.whenNoAncestorNamed(n)}whenNoAncestorTagged(n,t){return this._bindingWhenSyntax.whenNoAncestorTagged(n,t)}whenAnyAncestorMatches(n){return this._bindingWhenSyntax.whenAnyAncestorMatches(n)}whenNoAncestorMatches(n){return this._bindingWhenSyntax.whenNoAncestorMatches(n)}onActivation(n){return this._bindingOnSyntax.onActivation(n)}onDeactivation(n){return this._bindingOnSyntax.onDeactivation(n)}}class Cn{_binding;constructor(n){this._binding=n}inRequestScope(){return this._binding.scope=v.Request,new Nn(this._binding)}inSingletonScope(){return this._binding.scope=v.Singleton,new Nn(this._binding)}inTransientScope(){return this._binding.scope=v.Transient,new Nn(this._binding)}}class Rn{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(n){this._binding=n,this._bindingWhenSyntax=new Tn(this._binding),this._bindingOnSyntax=new Dn(this._binding),this._bindingInSyntax=new Cn(n)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(n){return this._bindingWhenSyntax.when(n)}whenTargetNamed(n){return this._bindingWhenSyntax.whenTargetNamed(n)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(n,t){return this._bindingWhenSyntax.whenTargetTagged(n,t)}whenInjectedInto(n){return this._bindingWhenSyntax.whenInjectedInto(n)}whenParentNamed(n){return this._bindingWhenSyntax.whenParentNamed(n)}whenParentTagged(n,t){return this._bindingWhenSyntax.whenParentTagged(n,t)}whenAnyAncestorIs(n){return this._bindingWhenSyntax.whenAnyAncestorIs(n)}whenNoAncestorIs(n){return this._bindingWhenSyntax.whenNoAncestorIs(n)}whenAnyAncestorNamed(n){return this._bindingWhenSyntax.whenAnyAncestorNamed(n)}whenAnyAncestorTagged(n,t){return this._bindingWhenSyntax.whenAnyAncestorTagged(n,t)}whenNoAncestorNamed(n){return this._bindingWhenSyntax.whenNoAncestorNamed(n)}whenNoAncestorTagged(n,t){return this._bindingWhenSyntax.whenNoAncestorTagged(n,t)}whenAnyAncestorMatches(n){return this._bindingWhenSyntax.whenAnyAncestorMatches(n)}whenNoAncestorMatches(n){return this._bindingWhenSyntax.whenNoAncestorMatches(n)}onActivation(n){return this._bindingOnSyntax.onActivation(n)}onDeactivation(n){return this._bindingOnSyntax.onDeactivation(n)}}class xn{_binding;constructor(n){this._binding=n}to(n){return this._binding.type=b.Instance,this._binding.implementationType=n,new Rn(this._binding)}toSelf(){if("function"!=typeof this._binding.serviceIdentifier)throw new Error("The toSelf function can only be applied when a constructor is used as service identifier");const n=this._binding.serviceIdentifier;return this.to(n)}toConstantValue(n){return this._binding.type=b.ConstantValue,this._binding.cache=n,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=v.Singleton,new Nn(this._binding)}toDynamicValue(n){return this._binding.type=b.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=n,this._binding.implementationType=null,new Rn(this._binding)}toConstructor(n){return this._binding.type=b.Constructor,this._binding.implementationType=n,this._binding.scope=v.Singleton,new Nn(this._binding)}toFactory(n){return this._binding.type=b.Factory,this._binding.factory=n,this._binding.scope=v.Singleton,new Nn(this._binding)}toFunction(n){if("function"!=typeof n)throw new Error("Value provided to function binding must be a function!");const t=this.toConstantValue(n);return this._binding.type=b.Function,this._binding.scope=v.Singleton,t}toAutoFactory(n){return this._binding.type=b.Factory,this._binding.factory=t=>()=>t.container.get(n),this._binding.scope=v.Singleton,new Nn(this._binding)}toAutoNamedFactory(n){return this._binding.type=b.Factory,this._binding.factory=t=>e=>t.container.getNamed(n,e),new Nn(this._binding)}toProvider(n){return this._binding.type=b.Provider,this._binding.provider=n,this._binding.scope=v.Singleton,new Nn(this._binding)}toService(n){this._binding.type=b.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get:()=>null,set(n){}}),this._binding.dynamicValue=t=>{try{return t.container.get(n)}catch(e){return t.container.getAsync(n)}},this._binding.implementationType=null}}class En{bindings;activations;deactivations;middleware;moduleActivationStore;static of(n,t,e,i,r){const o=new En;return o.bindings=n,o.middleware=t,o.deactivations=i,o.activations=e,o.moduleActivationStore=r,o}}class Mn{_map;constructor(){this._map=new Map}getMap(){return this._map}add(n,t){if(this._checkNonNulish(n),null==t)throw new Error(T);const e=this._map.get(n);void 0!==e?e.push(t):this._map.set(n,[t])}get(n){this._checkNonNulish(n);const t=this._map.get(n);if(void 0!==t)return t;throw new Error(D)}remove(n){if(this._checkNonNulish(n),!this._map.delete(n))throw new Error(D)}removeIntersection(n){this.traverse(((t,e)=>{const i=n.hasKey(t)?n.get(t):void 0;if(void 0!==i){const n=e.filter((n=>!i.some((t=>n===t))));this._setValue(t,n)}}))}removeByCondition(n){const t=[];return this._map.forEach(((e,i)=>{const r=[];for(const i of e){n(i)?t.push(i):r.push(i)}this._setValue(i,r)})),t}hasKey(n){return this._checkNonNulish(n),this._map.has(n)}clone(){const n=new Mn;return this._map.forEach(((t,e)=>{t.forEach((t=>{var i;n.add(e,"object"==typeof(i=t)&&null!==i&&"clone"in i&&"function"==typeof i.clone?t.clone():t)}))})),n}traverse(n){this._map.forEach(((t,e)=>{n(e,t)}))}_checkNonNulish(n){if(null==n)throw new Error(T)}_setValue(n,t){t.length>0?this._map.set(n,t):this._map.delete(n)}}class qn{_map=new Map;remove(n){const t=this._map.get(n);return void 0===t?this._getEmptyHandlersStore():(this._map.delete(n),t)}addDeactivation(n,t,e){this._getModuleActivationHandlers(n).onDeactivations.add(t,e)}addActivation(n,t,e){this._getModuleActivationHandlers(n).onActivations.add(t,e)}clone(){const n=new qn;return this._map.forEach(((t,e)=>{n._map.set(e,{onActivations:t.onActivations.clone(),onDeactivations:t.onDeactivations.clone()})})),n}_getModuleActivationHandlers(n){let t=this._map.get(n);return void 0===t&&(t=this._getEmptyHandlersStore(),this._map.set(n,t)),t}_getEmptyHandlersStore(){return{onActivations:new Mn,onDeactivations:new Mn}}}class Pn{id;parent;options;_middleware;_bindingDictionary;_activations;_deactivations;_snapshots;_metadataReader;_moduleActivationStore;constructor(n){const t=n||{};if("object"!=typeof t)throw new Error("Invalid Container constructor argument. Container options must be an object.");if(void 0===t.defaultScope)t.defaultScope=v.Transient;else if(t.defaultScope!==v.Singleton&&t.defaultScope!==v.Transient&&t.defaultScope!==v.Request)throw new Error('Invalid Container option. Default scope must be a string ("singleton" or "transient").');if(void 0===t.autoBindInjectable)t.autoBindInjectable=!1;else if("boolean"!=typeof t.autoBindInjectable)throw new Error("Invalid Container option. Auto bind injectable must be a boolean");if(void 0===t.skipBaseClassChecks)t.skipBaseClassChecks=!1;else if("boolean"!=typeof t.skipBaseClassChecks)throw new Error("Invalid Container option. Skip base check must be a boolean");this.options={autoBindInjectable:t.autoBindInjectable,defaultScope:t.defaultScope,skipBaseClassChecks:t.skipBaseClassChecks},this.id=A(),this._bindingDictionary=new Mn,this._snapshots=[],this._middleware=null,this._activations=new Mn,this._deactivations=new Mn,this.parent=null,this._metadataReader=new E,this._moduleActivationStore=new qn}static merge(n,t,...e){const i=new Pn,r=[n,t,...e].map((n=>H(n))),o=H(i);return r.forEach((n=>{var t;t=o,n.traverse(((n,e)=>{e.forEach((n=>{t.add(n.serviceIdentifier,n.clone())}))}))})),i}load(...n){const t=this._getContainerModuleHelpersFactory();for(const e of n){const n=t(e.id);e.registry(n.bindFunction,n.unbindFunction,n.isboundFunction,n.rebindFunction,n.unbindAsyncFunction,n.onActivationFunction,n.onDeactivationFunction)}}async loadAsync(...n){const t=this._getContainerModuleHelpersFactory();for(const e of n){const n=t(e.id);await e.registry(n.bindFunction,n.unbindFunction,n.isboundFunction,n.rebindFunction,n.unbindAsyncFunction,n.onActivationFunction,n.onDeactivationFunction)}}unload(...n){n.forEach((n=>{const t=this._removeModuleBindings(n.id);this._deactivateSingletons(t),this._removeModuleHandlers(n.id)}))}async unloadAsync(...n){for(const t of n){const n=this._removeModuleBindings(t.id);await this._deactivateSingletonsAsync(n),this._removeModuleHandlers(t.id)}}bind(n){return this._bind(this._buildBinding(n))}rebind(n){return this.unbind(n),this.bind(n)}async rebindAsync(n){return await this.unbindAsync(n),this.bind(n)}unbind(n){if(this._bindingDictionary.hasKey(n)){const t=this._bindingDictionary.get(n);this._deactivateSingletons(t)}this._removeServiceFromDictionary(n)}async unbindAsync(n){if(this._bindingDictionary.hasKey(n)){const t=this._bindingDictionary.get(n);await this._deactivateSingletonsAsync(t)}this._removeServiceFromDictionary(n)}unbindAll(){this._bindingDictionary.traverse(((n,t)=>{this._deactivateSingletons(t)})),this._bindingDictionary=new Mn}async unbindAllAsync(){const n=[];this._bindingDictionary.traverse(((t,e)=>{n.push(this._deactivateSingletonsAsync(e))})),await Promise.all(n),this._bindingDictionary=new Mn}onActivation(n,t){this._activations.add(n,t)}onDeactivation(n,t){this._deactivations.add(n,t)}isBound(n){let t=this._bindingDictionary.hasKey(n);return!t&&this.parent&&(t=this.parent.isBound(n)),t}isCurrentBound(n){return this._bindingDictionary.hasKey(n)}isBoundNamed(n,t){return this.isBoundTagged(n,r,t)}isBoundTagged(n,r,o){let s=!1;if(this._bindingDictionary.hasKey(n)){const a=this._bindingDictionary.get(n),c=function(n,r,o,s){const a=L(!1,r,o,s),c=t(a);if(c.kind===e.unmanaged)throw new Error("Unexpected metadata when creating target");const d=new i("",c,"Variable"),u=new O(n);return new K(r,u,null,[],d)}(this,n,r,o);s=a.some((n=>n.constraint(c)))}return!s&&this.parent&&(s=this.parent.isBoundTagged(n,r,o)),s}snapshot(){this._snapshots.push(En.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const n=this._snapshots.pop();if(void 0===n)throw new Error("No snapshot available to restore.");this._bindingDictionary=n.bindings,this._activations=n.activations,this._deactivations=n.deactivations,this._middleware=n.middleware,this._moduleActivationStore=n.moduleActivationStore}createChild(n){const t=new Pn(n||this.options);return t.parent=this,t}applyMiddleware(...n){const t=this._middleware?this._middleware:this._planAndResolve();this._middleware=n.reduce(((n,t)=>t(n)),t)}applyCustomMetadataReader(n){this._metadataReader=n}get(n){const t=this._getNotAllArgs(n,!1);return this._getButThrowIfAsync(t)}async getAsync(n){const t=this._getNotAllArgs(n,!1);return this._get(t)}getTagged(n,t,e){const i=this._getNotAllArgs(n,!1,t,e);return this._getButThrowIfAsync(i)}async getTaggedAsync(n,t,e){const i=this._getNotAllArgs(n,!1,t,e);return this._get(i)}getNamed(n,t){return this.getTagged(n,r,t)}async getNamedAsync(n,t){return this.getTaggedAsync(n,r,t)}getAll(n){const t=this._getAllArgs(n);return this._getButThrowIfAsync(t)}async getAllAsync(n){const t=this._getAllArgs(n);return this._getAll(t)}getAllTagged(n,t,e){const i=this._getNotAllArgs(n,!0,t,e);return this._getButThrowIfAsync(i)}async getAllTaggedAsync(n,t,e){const i=this._getNotAllArgs(n,!0,t,e);return this._getAll(i)}getAllNamed(n,t){return this.getAllTagged(n,r,t)}async getAllNamedAsync(n,t){return this.getAllTaggedAsync(n,r,t)}resolve(n){const t=this.isBound(n);t||this.bind(n).toSelf();const e=this.get(n);return t||this.unbind(n),e}_preDestroy(n,t){if(void 0!==n&&Reflect.hasMetadata(p,n)){const e=Reflect.getMetadata(p,n);return t[e.value]?.()}}_removeModuleHandlers(n){const t=this._moduleActivationStore.remove(n);this._activations.removeIntersection(t.onActivations),this._deactivations.removeIntersection(t.onDeactivations)}_removeModuleBindings(n){return this._bindingDictionary.removeByCondition((t=>t.moduleId===n))}_deactivate(n,t){const e=null==t?void 0:Object.getPrototypeOf(t).constructor;try{if(this._deactivations.hasKey(n.serviceIdentifier)){const i=this._deactivateContainer(t,this._deactivations.get(n.serviceIdentifier).values());if(Q(i))return this._handleDeactivationError(i.then((async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(n,t,e))),n.serviceIdentifier)}const i=this._propagateContainerDeactivationThenBindingAndPreDestroy(n,t,e);if(Q(i))return this._handleDeactivationError(i,n.serviceIdentifier)}catch(t){if(t instanceof Error)throw new Error(x(P(n.serviceIdentifier),t.message))}}async _handleDeactivationError(n,t){try{await n}catch(n){if(n instanceof Error)throw new Error(x(P(t),n.message))}}_deactivateContainer(n,t){let e=t.next();for(;"function"==typeof e.value;){const i=e.value(n);if(Q(i))return i.then((async()=>this._deactivateContainerAsync(n,t)));e=t.next()}}async _deactivateContainerAsync(n,t){let e=t.next();for(;"function"==typeof e.value;)await e.value(n),e=t.next()}_getContainerModuleHelpersFactory(){const n=n=>t=>{const e=this._buildBinding(t);return e.moduleId=n,this._bind(e)},t=()=>n=>{this.unbind(n)},e=()=>async n=>this.unbindAsync(n),i=()=>n=>this.isBound(n),r=t=>{const e=n(t);return n=>(this.unbind(n),e(n))},o=n=>(t,e)=>{this._moduleActivationStore.addActivation(n,t,e),this.onActivation(t,e)},s=n=>(t,e)=>{this._moduleActivationStore.addDeactivation(n,t,e),this.onDeactivation(t,e)};return a=>({bindFunction:n(a),isboundFunction:i(),onActivationFunction:o(a),onDeactivationFunction:s(a),rebindFunction:r(a),unbindAsyncFunction:e(),unbindFunction:t()})}_bind(n){return this._bindingDictionary.add(n.serviceIdentifier,n),new xn(n)}_buildBinding(n){const t=this.options.defaultScope||v.Transient;return new S(n,t)}async _getAll(n){return Promise.all(this._get(n))}_get(n){const t={...n,contextInterceptor:n=>n,targetType:w.Variable};if(this._middleware){const n=this._middleware(t);if(null==n)throw new Error("Invalid return type in middleware. Middleware must return!");return n}return this._planAndResolve()(t)}_getButThrowIfAsync(n){const t=this._get(n);if(X(t))throw new Error(`You are attempting to construct ${function(n){return"function"==typeof n?`[function/class ${n.name||"<anonymous>"}]`:"symbol"==typeof n?n.toString():`'${n}'`}(n.serviceIdentifier)} in a synchronous way but it has asynchronous dependencies.`);return t}_getAllArgs(n){return{avoidConstraints:!0,isMultiInject:!0,serviceIdentifier:n}}_getNotAllArgs(n,t,e,i){return{avoidConstraints:!1,isMultiInject:t,key:e,serviceIdentifier:n,value:i}}_planAndResolve(){return n=>{let t=J(this._metadataReader,this,n.isMultiInject,n.targetType,n.serviceIdentifier,n.key,n.value,n.avoidConstraints);t=n.contextInterceptor(t);const e=function(n){return un(n.plan.rootRequest.requestScope)(n.plan.rootRequest)}(t);return e}}_deactivateIfSingleton(n){if(n.activated)return Q(n.cache)?n.cache.then((t=>this._deactivate(n,t))):this._deactivate(n,n.cache)}_deactivateSingletons(n){for(const t of n){if(Q(this._deactivateIfSingleton(t)))throw new Error("Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)")}}async _deactivateSingletonsAsync(n){await Promise.all(n.map((async n=>this._deactivateIfSingleton(n))))}_propagateContainerDeactivationThenBindingAndPreDestroy(n,t,e){return this.parent?this._deactivate.bind(this.parent)(n,t):this._bindingDeactivationAndPreDestroy(n,t,e)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(n,t,e){this.parent?await this._deactivate.bind(this.parent)(n,t):await this._bindingDeactivationAndPreDestroyAsync(n,t,e)}_removeServiceFromDictionary(n){try{this._bindingDictionary.remove(n)}catch(t){throw new Error(`Could not unbind serviceIdentifier: ${P(n)}`)}}_bindingDeactivationAndPreDestroy(n,t,e){if("function"==typeof n.onDeactivation){const i=n.onDeactivation(t);if(Q(i))return i.then((()=>this._preDestroy(e,t)))}return this._preDestroy(e,t)}async _bindingDeactivationAndPreDestroyAsync(n,t,e){"function"==typeof n.onDeactivation&&await n.onDeactivation(t),await this._preDestroy(e,t)}}class Bn{id;registry;constructor(n){this.id=A(),this.registry=n}}class Fn{id;registry;constructor(n){this.id=A(),this.registry=n}}function kn(n,t,e,i){!function(n){if(void 0!==n)throw new Error(R)}(t),$n(u,n,e.toString(),i)}function jn(n){let t=[];if(Array.isArray(n)){t=n;const e=function(n){const t=new Set;for(const e of n){if(t.has(e))return e;t.add(e)}}(t.map((n=>n.key)));if(void 0!==e)throw new Error(`${I} ${e.toString()}`)}else t=[n];return t}function $n(n,t,e,i){const r=jn(i);let o={};Reflect.hasOwnMetadata(n,t)&&(o=Reflect.getMetadata(n,t));let s=o[e];if(void 0===s)s=[];else for(const n of s)if(r.some((t=>t.key===n.key)))throw new Error(`${I} ${n.key.toString()}`);s.push(...r),o[e]=s,Reflect.defineMetadata(n,o,t)}function On(n){return(t,e,i)=>{"number"==typeof i?kn(t,e,i,n):function(n,t,e){if(void 0!==n.prototype)throw new Error(R);$n(h,n.constructor,t,e)}(t,e,n)}}function Vn(n,t){Reflect.decorate(n,t)}function Wn(n,t){return function(e,i){t(e,i,n)}}function Gn(n,t,e){"number"==typeof e?Vn([Wn(e,n)],t):"string"==typeof e?Reflect.decorate([n],t,e):Vn([n],t)}function Kn(){return function(n){if(Reflect.hasOwnMetadata(l,n))throw new Error("Cannot apply @injectable decorator multiple times.");const t=Reflect.getMetadata(g,n)||[];return Reflect.defineMetadata(l,t,n),n}}function Hn(n,t){return On(new V(n,t))}function Un(n){return On(new V(r,n))}function Ln(n){return t=>(e,i,r)=>{if(void 0===t){const n="function"==typeof e?e.name:e.constructor.name;throw new Error(`@inject called with undefined this could mean that the class ${n} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`)}On(new V(n,t))(e,i,r)}}const Yn=Ln(c);function zn(){return On(new V(a,!0))}function Jn(){return function(n,t,e){kn(n,t,e,new V(s,!0))}}const Qn=Ln(d);function Xn(n){return function(t,e,i){kn(t,e,i,new V(o,n))}}function Zn(n,t){return()=>(e,i)=>{const r=new V(n,i);if(Reflect.hasOwnMetadata(n,e.constructor))throw new Error(t);Reflect.defineMetadata(n,r,e.constructor)}}const nt=Zn(y,"Cannot apply @postConstruct decorator multiple times in the same class"),tt=Zn(p,"Cannot apply @preDestroy decorator multiple times in the same class"),et=_;export{Fn as AsyncContainerModule,v as BindingScopeEnum,b as BindingTypeEnum,Pn as Container,Bn as ContainerModule,et as METADATA_KEY,E as MetadataReader,w as TargetTypeEnum,On as createTaggedDecorator,Gn as decorate,P as getServiceIdentifierAsString,A as id,Yn as inject,Kn as injectable,rn as multiBindToService,Qn as multiInject,Un as named,Sn as namedConstraint,zn as optional,nt as postConstruct,tt as preDestroy,Hn as tagged,An as taggedConstraint,Xn as targetName,mn as traverseAncerstors,In as typeConstraint,Jn as unmanaged};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../src/constants/metadata_keys.ts","../../../src/constants/literal_types.ts","../../../src/utils/id.ts","../../../src/bindings/binding.ts","../../../src/constants/error_msgs.ts","../../../src/planning/metadata_reader.ts","../../../src/bindings/binding_count.ts","../../../src/utils/exceptions.ts","../../../src/utils/serialization.ts","../../../src/planning/context.ts","../../../src/planning/metadata.ts","../../../src/planning/plan.ts","../../../src/planning/reflection_utils.ts","../../../src/planning/request.ts","../../../src/planning/planner.ts","../../../src/utils/async.ts","../../../src/scope/scope.ts","../../../src/utils/factory_type.ts","../../../src/utils/binding_utils.ts","../../../src/resolution/instantiation.ts","../../../src/resolution/resolver.ts","../../../src/syntax/constraint_helpers.ts","../../../src/syntax/binding_when_syntax.ts","../../../src/syntax/binding_on_syntax.ts","../../../src/syntax/binding_when_on_syntax.ts","../../../src/syntax/binding_in_syntax.ts","../../../src/syntax/binding_in_when_on_syntax.ts","../../../src/syntax/binding_to_syntax.ts","../../../src/container/container_snapshot.ts","../../../src/container/lookup.ts","../../../src/utils/clonable.ts","../../../src/container/module_activation_store.ts","../../../src/container/container.ts","../../../src/container/container_module.ts","../../../src/annotation/decorator_utils.ts","../../../src/utils/js.ts","../../../src/annotation/injectable.ts","../../../src/annotation/tagged.ts","../../../src/annotation/named.ts","../../../src/annotation/inject_base.ts","../../../src/annotation/inject.ts","../../../src/annotation/optional.ts","../../../src/annotation/unmanaged.ts","../../../src/annotation/multi_inject.ts","../../../src/annotation/target_name.ts","../../../src/annotation/property_event_decorator.ts","../../../src/annotation/post_construct.ts","../../../src/annotation/pre_destroy.ts","../../../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["NAMED_TAG","NAME_TAG","UNMANAGED_TAG","OPTIONAL_TAG","INJECT_TAG","MULTI_INJECT_TAG","TAGGED","TAGGED_PROP","PARAM_TYPES","DESIGN_PARAM_TYPES","POST_CONSTRUCT","PRE_DESTROY","NON_CUSTOM_TAG_KEYS","BindingScopeEnum","Request","Singleton","Transient","BindingTypeEnum","ConstantValue","Constructor","DynamicValue","Factory","Function","Instance","Invalid","Provider","TargetTypeEnum","ClassProperty","ConstructorArgument","Variable","idCounter","id","Binding","moduleId","activated","serviceIdentifier","implementationType","cache","dynamicValue","scope","type","factory","provider","constraint","onActivation","onDeactivation","constructor","this","_request","clone","DUPLICATED_METADATA","NULL_ARGUMENT","KEY_NOT_FOUND","AMBIGUOUS_MATCH","NOT_REGISTERED","INVALID_DECORATOR_OPERATION","ON_DEACTIVATION_ERROR","clazz","errorMessage","MetadataReader","getConstructorMetadata","constructorFunc","compilerGeneratedMetadata","Reflect","getMetadata","METADATA_KEY.DESIGN_PARAM_TYPES","userGeneratedMetadata","METADATA_KEY.TAGGED","getPropertiesMetadata","METADATA_KEY.TAGGED_PROP","BindingCount","isStackOverflowException","error","RangeError","message","getServiceIdentifierAsString","name","toString","listRegisteredBindingsForServiceIdentifier","container","getBindings","registeredBindingsList","registeredBindings","length","forEach","binding","getFunctionName","metaData","alreadyDependencyChain","request","parentRequest","circularDependencyToException","childRequests","childRequest","services","stringArr","_createStringArr","req","result","push","reverse","join","dependencyChainToString","Error","func","match","stringifyMetadata","metadata","key","value","Context","plan","currentRequest","addPlan","setCurrentRequest","Metadata","METADATA_KEY.NAMED_TAG","String","Plan","parentContext","rootRequest","getBaseClassDependencyCount","metadataReader","baseConstructor","Object","getPrototypeOf","prototype","targets","getTargets","map","t","filter","m","METADATA_KEY.UNMANAGED_TAG","unmanagedCount","concat","apply","dependencyCount","bindings","target","requestScope","Array","isArray","Map","addChildRequest","child","getBindingDictionary","cntnr","_bindingDictionary","_getActiveBindings","avoidConstraints","context","activeBindings","NoBindingsAvailable","options","autoBindInjectable","bind","toSelf","isOptional","serviceIdentifierString","msg","ERROR_MSGS.NOT_REGISTERED","isTagged","isNamed","namedTag","getNamedTag","otherTags","getCustomTags","tag","listMetadataForTarget","OnlyOneBindingAvailable","MultipleBindingsAvailable","ERROR_MSGS.AMBIGUOUS_MATCH","_validateActiveBindingCount","_getTargetMetadata","isMultiInject","metadataList","METADATA_KEY.MULTI_INJECT_TAG","METADATA_KEY.INJECT_TAG","undefined","_createSubRequests","thePlan","subChildRequest","dependencies","getDependencies","skipBaseClassChecks","baseClassDependencyCount","dependency","bindingDictionary","hasKey","get","parent","targetType","classElementMetadata","getClassElementMetadataFromLegacyMetadata","kind","ClassElementMetadataKind","unmanaged","TargetImpl","_createTarget","isPromise","object","then","isPromiseOrContainsPromise","some","_saveToRequestScope","has","set","_saveToSingletonScope","_saveAsyncResultToSingletonScope","async","asyncResult","ex","FactoryType","multiBindToService","service","types","toService","_createInstance","constr","resolveRequest","resolved","reduce","resolvedRequests","injection","constructorInjections","propertyRequests","propertyInjections","isAsync","_resolveRequests","createInstanceWithInjectionsArg","args","possiblyWaitInjections","createInstanceWithInjections","createInstanceWithInjectionsAsync","instance","r","index","property","identifier","possiblePromiseinjections","injections","Promise","all","_getInstanceAfterPostConstruct","postConstructResult","hasMetadata","METADATA_KEY.POST_CONSTRUCT","data","e","_postConstruct","_validateInstanceResolution","scopeErrorMessage","METADATA_KEY.PRE_DESTROY","_throwIfHandlingDeactivation","_resolveRequest","targetIsAnArray","targetParentIsNotAnArray","matchesArray","_resolveBinding","_resolveFactoryFromBinding","factoryDetails","factoryType","getFactoryDetails","fn","errorCallback","tryAndThrowErrorIfStackOverflow","_getResolvedFromBinding","boundValue","serviceIdentifierAsString","ensureFullyBound","resolvedResult","resolveInstance","_resolveInScope","resolveFromBinding","tryGetFromScope","saveToScope","_onActivation","_bindingActivation","containersIterator","_getContainersIterator","containersIteratorResult","next","activationsIterator","_getContainerActivationsForService","_activateContainerAsync","_activateContainer","done","previousResult","activation","resultPromise","activations","_activations","values","containersStack","nextContainer","pop","traverseAncerstors","taggedConstraint","matchesTag","namedConstraint","typeConstraint","BindingWhenSyntax","_binding","when","BindingOnSyntax","whenTargetNamed","whenTargetIsDefault","whenTargetTagged","whenInjectedInto","whenParentNamed","whenParentTagged","whenAnyAncestorIs","ancestor","whenNoAncestorIs","whenAnyAncestorNamed","whenNoAncestorNamed","whenAnyAncestorTagged","whenNoAncestorTagged","whenAnyAncestorMatches","whenNoAncestorMatches","handler","BindingWhenOnSyntax","_bindingWhenSyntax","_bindingOnSyntax","BindingInSyntax","inRequestScope","inSingletonScope","inTransientScope","BindingInWhenOnSyntax","_bindingInSyntax","BindingToSyntax","to","self","toConstantValue","toDynamicValue","toConstructor","toFactory","toFunction","bindingWhenOnSyntax","toAutoFactory","toAutoNamedFactory","named","getNamed","toProvider","defineProperty","configurable","enumerable","_value","_error","getAsync","ContainerSnapshot","deactivations","middleware","moduleActivationStore","of","snapshot","Lookup","_map","getMap","add","_checkNonNulish","ERROR_MSGS.NULL_ARGUMENT","entry","ERROR_MSGS.KEY_NOT_FOUND","remove","delete","removeIntersection","lookup","traverse","lookupActivations","filteredValues","lookupValue","moduleActivation","_setValue","removeByCondition","condition","removals","entries","updatedEntries","copy","b","obj","ModuleActivationStore","handlers","_getEmptyHandlersStore","addDeactivation","_getModuleActivationHandlers","onDeactivations","addActivation","onActivations","handlersStore","moduleActivationHandlers","Container","_middleware","_deactivations","_snapshots","_metadataReader","_moduleActivationStore","containerOptions","defaultScope","merge","container1","container2","containers","targetContainers","targetContainer","targetBindingDictionary","destination","_key","load","modules","getHelpers","_getContainerModuleHelpersFactory","currentModule","containerModuleHelpers","registry","bindFunction","unbindFunction","isboundFunction","rebindFunction","unbindAsyncFunction","onActivationFunction","onDeactivationFunction","loadAsync","unload","module","_removeModuleBindings","_deactivateSingletons","_removeModuleHandlers","unloadAsync","_deactivateSingletonsAsync","_bind","_buildBinding","rebind","unbind","rebindAsync","unbindAsync","_removeServiceFromDictionary","unbindAll","unbindAllAsync","promises","isBound","bound","isCurrentBound","isBoundNamed","isBoundTagged","createMockRequest","restore","createChild","applyMiddleware","middlewares","initial","_planAndResolve","prev","curr","applyCustomMetadataReader","getArgs","_getNotAllArgs","_getButThrowIfAsync","_get","getTagged","getTaggedAsync","getNamedAsync","getAll","_getAllArgs","getAllAsync","_getAll","getAllTagged","getAllTaggedAsync","getAllNamed","getAllNamedAsync","resolve","constructorFunction","_preDestroy","moduleActivationsHandlers","_deactivate","_deactivateContainer","_handleDeactivationError","_propagateContainerDeactivationThenBindingAndPreDestroyAsync","propagateDeactivationResult","_propagateContainerDeactivationThenBindingAndPreDestroy","ERROR_MSGS.ON_DEACTIVATION_ERROR","deactivationsIterator","deactivation","_deactivateContainerAsync","getBindFunction","getUnbindFunction","getUnbindAsyncFunction","getIsboundFunction","getRebindFunction","getOnActivationFunction","getOnDeactivationFunction","mId","planAndResolveArgs","contextInterceptor","middlewareResult","keyToString","resolveRequestFunction","_deactivateIfSingleton","_bindingDeactivationAndPreDestroy","_bindingDeactivationAndPreDestroyAsync","_e","ContainerModule","AsyncContainerModule","tagParameter","annotationTarget","parameterName","parameterIndex","ERROR_MSGS.INVALID_DECORATOR_OPERATION","_throwIfMethodParameter","_tagParameterOrProperty","_ensureNoMetadataKeyDuplicates","metadatas","duplicate","array","seenValues","Set","getFirstArrayDuplicate","md","ERROR_MSGS.DUPLICATED_METADATA","metadataKey","paramsOrPropertiesMetadata","hasOwnMetadata","paramOrPropertyMetadata","defineMetadata","createTaggedDecorator","targetKey","indexOrPropertyDescriptor","propertyName","tagProperty","_decorate","decorators","decorate","_param","paramIndex","decorator","parameterIndexOrProperty","injectable","METADATA_KEY.PARAM_TYPES","tagged","metadataValue","injectBase","className","inject","optional","METADATA_KEY.OPTIONAL_TAG","multiInject","targetName","METADATA_KEY.NAME_TAG","propertyEventDecorator","eventKey","propertyKey","postConstruct","preDestroy","METADATA_KEY","keys"],"mappings":"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"}
package/package.json CHANGED
@@ -5,35 +5,36 @@
5
5
  },
6
6
  "description": "A powerful and lightweight inversion of control container for JavaScript and Node.js apps powered by TypeScript.",
7
7
  "dependencies": {
8
- "@inversifyjs/common": "1.3.3",
9
- "@inversifyjs/core": "1.3.4"
8
+ "@inversifyjs/common": "1.4.0",
9
+ "@inversifyjs/core": "1.3.5"
10
10
  },
11
11
  "devDependencies": {
12
- "@eslint/js": "9.14.0",
12
+ "@eslint/js": "9.15.0",
13
+ "@rollup/plugin-terser": "0.4.4",
14
+ "@rollup/plugin-typescript": "12.1.1",
13
15
  "@types/chai": "4.3.20",
14
- "@types/mocha": "10.0.9",
16
+ "@types/mocha": "10.0.10",
15
17
  "@types/sinon": "17.0.3",
16
- "@typescript-eslint/eslint-plugin": "8.14.0",
17
- "@typescript-eslint/parser": "8.14.0",
18
+ "@typescript-eslint/eslint-plugin": "8.16.0",
19
+ "@typescript-eslint/parser": "8.16.0",
18
20
  "chai": "4.5.0",
19
- "eslint": "9.14.0",
21
+ "eslint": "9.15.0",
20
22
  "eslint-config-prettier": "9.1.0",
21
23
  "eslint-plugin-prettier": "5.2.1",
22
24
  "eslint-plugin-simple-import-sort": "12.1.1",
23
25
  "mocha": "10.8.2",
24
26
  "nyc": "17.1.0",
25
- "prettier": "3.3.3",
26
- "publish-please": "5.5.2",
27
- "reflect-metadata": "0.2.2",
27
+ "prettier": "3.4.1",
28
28
  "rimraf": "6.0.1",
29
+ "rollup-plugin-dts": "6.1.1",
29
30
  "sinon": "19.0.2",
30
31
  "ts-loader": "9.5.1",
31
32
  "ts-node": "10.9.2",
32
- "typescript": "5.6.3",
33
- "typescript-eslint": "8.14.0",
34
- "updates": "16.4.0",
35
- "webpack": "5.96.1",
36
- "webpack-cli": "5.1.4"
33
+ "typescript": "5.7.2",
34
+ "typescript-eslint": "8.16.0"
35
+ },
36
+ "peerDependencies": {
37
+ "reflect-metadata": "~0.2.2"
37
38
  },
38
39
  "engines": {},
39
40
  "homepage": "http://inversify.io",
@@ -49,12 +50,12 @@
49
50
  "typescript"
50
51
  ],
51
52
  "license": "MIT",
52
- "main": "lib/inversify.js",
53
- "module": "es/inversify.js",
53
+ "main": "lib/cjs/index.js",
54
+ "module": "lib/esm/index.js",
54
55
  "exports": {
55
56
  ".": {
56
- "import": "./es/inversify.js",
57
- "require": "./lib/inversify.js"
57
+ "import": "./lib/esm/index.js",
58
+ "require": "./lib/cjs/index.js"
58
59
  }
59
60
  },
60
61
  "name": "inversify",
@@ -63,21 +64,16 @@
63
64
  "url": "https://github.com/inversify/InversifyJS.git"
64
65
  },
65
66
  "scripts": {
66
- "build": "npm run build:lib && npm run build:amd && npm run build:es && npm run build:es6",
67
- "build:amd": "tsc -p src/tsconfig-amd.json",
68
- "build:es": "webpack && node ./scripts/writeEsmPackageJson.mjs ./es",
69
- "build:es6": "tsc -p src/tsconfig-es6.json",
70
- "build:lib": "tsc -p src/tsconfig.json",
71
- "clean": "rimraf amd es es6 lib",
72
- "format": "prettier --write ./src/*.ts ./src/**/*.ts ./test/*.ts ./test/**/*.ts",
73
- "lint": "eslint ./src ./test",
74
- "postupdate": "git diff-files --quiet package-lock.json || npm test",
75
- "prepublish": "npm run build && publish-please guard",
76
- "publish-please": "publish-please",
77
- "test": "nyc --reporter=lcov --require ts-node/register mocha ./test/*.test.ts test/**/*.test.ts --reporter spec --retries 3 --require 'node_modules/reflect-metadata/Reflect.js' --exit",
78
- "update": "updates --update --minor && npm install"
67
+ "build": "npm run build:cjs && npm run build:esm",
68
+ "build:cjs": "tsc --build tsconfig.cjs.json && node ./scripts/writeCommonJsPackageJson.mjs ./lib/cjs",
69
+ "build:esm": "rollup -c ./rollup.config.mjs && node ./scripts/writeEsmPackageJson.mjs ./lib/esm",
70
+ "build:clean": "rimraf lib",
71
+ "format": "prettier --write ./src/**/*.ts",
72
+ "lint": "eslint ./src",
73
+ "prebuild": "npm run build:clean",
74
+ "prepublish": "npm run build",
75
+ "test": "nyc --reporter=lcov --require ts-node/register mocha ./test/*.test.ts test/**/*.test.ts --reporter spec --retries 3 --require 'node_modules/reflect-metadata/Reflect.js' --exit"
79
76
  },
80
77
  "sideEffects": false,
81
- "types": "lib/inversify.d.ts",
82
- "version": "6.1.4"
78
+ "version": "6.1.5-beta.1"
83
79
  }