inversify 5.1.0 → 5.1.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 (393) hide show
  1. package/.nyc_output/{9608da81-ca67-4100-9d7e-60d47b391c2b.json → 4df1ad3a-a319-42b9-bb65-746cefa3318e.json} +1 -1
  2. package/.nyc_output/processinfo/{9608da81-ca67-4100-9d7e-60d47b391c2b.json → 4df1ad3a-a319-42b9-bb65-746cefa3318e.json} +1 -1
  3. package/.nyc_output/processinfo/index.json +1 -1
  4. package/CHANGELOG.md +4 -1
  5. package/amd/annotation/decorator_utils.js +60 -0
  6. package/amd/annotation/decorator_utils.js.map +1 -0
  7. package/amd/annotation/inject.js +31 -0
  8. package/amd/annotation/inject.js.map +1 -0
  9. package/amd/annotation/injectable.js +17 -0
  10. package/amd/annotation/injectable.js.map +1 -0
  11. package/amd/annotation/multi_inject.js +18 -0
  12. package/amd/annotation/multi_inject.js.map +1 -0
  13. package/amd/annotation/named.js +18 -0
  14. package/amd/annotation/named.js.map +1 -0
  15. package/amd/annotation/optional.js +18 -0
  16. package/amd/annotation/optional.js.map +1 -0
  17. package/amd/annotation/post_construct.js +16 -0
  18. package/amd/annotation/post_construct.js.map +1 -0
  19. package/amd/annotation/tagged.js +18 -0
  20. package/amd/annotation/tagged.js.map +1 -0
  21. package/amd/annotation/target_name.js +13 -0
  22. package/amd/annotation/target_name.js.map +1 -0
  23. package/amd/annotation/unmanaged.js +13 -0
  24. package/amd/annotation/unmanaged.js.map +1 -0
  25. package/amd/bindings/binding.js +38 -0
  26. package/amd/bindings/binding.js.map +1 -0
  27. package/amd/bindings/binding_count.js +12 -0
  28. package/amd/bindings/binding_count.js.map +1 -0
  29. package/amd/constants/error_msgs.js +68 -0
  30. package/amd/constants/error_msgs.js.map +1 -0
  31. package/amd/constants/literal_types.js +29 -0
  32. package/amd/constants/literal_types.js.map +1 -0
  33. package/amd/constants/metadata_keys.js +28 -0
  34. package/amd/constants/metadata_keys.js.map +1 -0
  35. package/amd/container/container.js +332 -0
  36. package/amd/container/container.js.map +1 -0
  37. package/amd/container/container_module.js +22 -0
  38. package/amd/container/container_module.js.map +1 -0
  39. package/amd/container/container_snapshot.js +18 -0
  40. package/amd/container/container_snapshot.js.map +1 -0
  41. package/amd/container/lookup.js +82 -0
  42. package/amd/container/lookup.js.map +1 -0
  43. package/amd/interfaces/interfaces.js +5 -0
  44. package/amd/interfaces/interfaces.js.map +1 -0
  45. package/amd/inversify.js +32 -0
  46. package/amd/inversify.js.map +1 -0
  47. package/amd/planning/context.js +20 -0
  48. package/amd/planning/context.js.map +1 -0
  49. package/amd/planning/metadata.js +22 -0
  50. package/amd/planning/metadata.js.map +1 -0
  51. package/amd/planning/metadata_reader.js +24 -0
  52. package/amd/planning/metadata_reader.js.map +1 -0
  53. package/amd/planning/plan.js +14 -0
  54. package/amd/planning/plan.js.map +1 -0
  55. package/amd/planning/planner.js +147 -0
  56. package/amd/planning/planner.js.map +1 -0
  57. package/amd/planning/queryable_string.js +31 -0
  58. package/amd/planning/queryable_string.js.map +1 -0
  59. package/amd/planning/reflection_utils.js +128 -0
  60. package/amd/planning/reflection_utils.js.map +1 -0
  61. package/amd/planning/request.js +27 -0
  62. package/amd/planning/request.js.map +1 -0
  63. package/amd/planning/target.js +80 -0
  64. package/amd/planning/target.js.map +1 -0
  65. package/amd/resolution/instantiation.js +56 -0
  66. package/amd/resolution/instantiation.js.map +1 -0
  67. package/amd/resolution/resolver.js +99 -0
  68. package/amd/resolution/resolver.js.map +1 -0
  69. package/amd/syntax/binding_in_syntax.js +25 -0
  70. package/amd/syntax/binding_in_syntax.js.map +1 -0
  71. package/amd/syntax/binding_in_when_on_syntax.js +73 -0
  72. package/amd/syntax/binding_in_when_on_syntax.js.map +1 -0
  73. package/amd/syntax/binding_on_syntax.js +17 -0
  74. package/amd/syntax/binding_on_syntax.js.map +1 -0
  75. package/amd/syntax/binding_to_syntax.js +79 -0
  76. package/amd/syntax/binding_to_syntax.js.map +1 -0
  77. package/amd/syntax/binding_when_on_syntax.js +63 -0
  78. package/amd/syntax/binding_when_on_syntax.js.map +1 -0
  79. package/amd/syntax/binding_when_syntax.js +100 -0
  80. package/amd/syntax/binding_when_syntax.js.map +1 -0
  81. package/amd/syntax/constraint_helpers.js +42 -0
  82. package/amd/syntax/constraint_helpers.js.map +1 -0
  83. package/amd/utils/binding_utils.js +18 -0
  84. package/amd/utils/binding_utils.js.map +1 -0
  85. package/amd/utils/exceptions.js +11 -0
  86. package/amd/utils/exceptions.js.map +1 -0
  87. package/amd/utils/id.js +11 -0
  88. package/amd/utils/id.js.map +1 -0
  89. package/amd/utils/serialization.js +106 -0
  90. package/amd/utils/serialization.js.map +1 -0
  91. package/es/annotation/decorator_utils.js +55 -0
  92. package/es/annotation/decorator_utils.js.map +1 -0
  93. package/es/annotation/inject.js +30 -0
  94. package/es/annotation/inject.js.map +1 -0
  95. package/es/annotation/injectable.js +14 -0
  96. package/es/annotation/injectable.js.map +1 -0
  97. package/es/annotation/multi_inject.js +16 -0
  98. package/es/annotation/multi_inject.js.map +1 -0
  99. package/es/annotation/named.js +16 -0
  100. package/es/annotation/named.js.map +1 -0
  101. package/es/annotation/optional.js +16 -0
  102. package/es/annotation/optional.js.map +1 -0
  103. package/es/annotation/post_construct.js +14 -0
  104. package/es/annotation/post_construct.js.map +1 -0
  105. package/es/annotation/tagged.js +15 -0
  106. package/es/annotation/tagged.js.map +1 -0
  107. package/es/annotation/target_name.js +11 -0
  108. package/es/annotation/target_name.js.map +1 -0
  109. package/es/annotation/unmanaged.js +11 -0
  110. package/es/annotation/unmanaged.js.map +1 -0
  111. package/es/bindings/binding.js +35 -0
  112. package/es/bindings/binding.js.map +1 -0
  113. package/es/bindings/binding_count.js +7 -0
  114. package/es/bindings/binding_count.js.map +1 -0
  115. package/es/constants/error_msgs.js +59 -0
  116. package/es/constants/error_msgs.js.map +1 -0
  117. package/es/constants/literal_types.js +22 -0
  118. package/es/constants/literal_types.js.map +1 -0
  119. package/es/constants/metadata_keys.js +23 -0
  120. package/es/constants/metadata_keys.js.map +1 -0
  121. package/es/container/container.js +339 -0
  122. package/es/container/container.js.map +1 -0
  123. package/es/container/container_module.js +18 -0
  124. package/es/container/container_module.js.map +1 -0
  125. package/es/container/container_snapshot.js +13 -0
  126. package/es/container/container_snapshot.js.map +1 -0
  127. package/es/container/lookup.js +78 -0
  128. package/es/container/lookup.js.map +1 -0
  129. package/es/interfaces/interfaces.js +2 -0
  130. package/es/interfaces/interfaces.js.map +1 -0
  131. package/es/inversify.js +21 -0
  132. package/es/inversify.js.map +1 -0
  133. package/es/planning/context.js +16 -0
  134. package/es/planning/context.js.map +1 -0
  135. package/es/planning/metadata.js +18 -0
  136. package/es/planning/metadata.js.map +1 -0
  137. package/es/planning/metadata_reader.js +20 -0
  138. package/es/planning/metadata_reader.js.map +1 -0
  139. package/es/planning/plan.js +9 -0
  140. package/es/planning/plan.js.map +1 -0
  141. package/es/planning/planner.js +152 -0
  142. package/es/planning/planner.js.map +1 -0
  143. package/es/planning/queryable_string.js +26 -0
  144. package/es/planning/queryable_string.js.map +1 -0
  145. package/es/planning/reflection_utils.js +127 -0
  146. package/es/planning/reflection_utils.js.map +1 -0
  147. package/es/planning/request.js +23 -0
  148. package/es/planning/request.js.map +1 -0
  149. package/es/planning/target.js +79 -0
  150. package/es/planning/target.js.map +1 -0
  151. package/es/resolution/instantiation.js +54 -0
  152. package/es/resolution/instantiation.js.map +1 -0
  153. package/es/resolution/resolver.js +99 -0
  154. package/es/resolution/resolver.js.map +1 -0
  155. package/es/syntax/binding_in_syntax.js +22 -0
  156. package/es/syntax/binding_in_syntax.js.map +1 -0
  157. package/es/syntax/binding_in_when_on_syntax.js +71 -0
  158. package/es/syntax/binding_in_when_on_syntax.js.map +1 -0
  159. package/es/syntax/binding_on_syntax.js +13 -0
  160. package/es/syntax/binding_on_syntax.js.map +1 -0
  161. package/es/syntax/binding_to_syntax.js +78 -0
  162. package/es/syntax/binding_to_syntax.js.map +1 -0
  163. package/es/syntax/binding_when_on_syntax.js +60 -0
  164. package/es/syntax/binding_when_on_syntax.js.map +1 -0
  165. package/es/syntax/binding_when_syntax.js +97 -0
  166. package/es/syntax/binding_when_syntax.js.map +1 -0
  167. package/es/syntax/constraint_helpers.js +36 -0
  168. package/es/syntax/constraint_helpers.js.map +1 -0
  169. package/es/utils/binding_utils.js +12 -0
  170. package/es/utils/binding_utils.js.map +1 -0
  171. package/es/utils/exceptions.js +6 -0
  172. package/es/utils/exceptions.js.map +1 -0
  173. package/es/utils/id.js +6 -0
  174. package/es/utils/id.js.map +1 -0
  175. package/es/utils/serialization.js +98 -0
  176. package/es/utils/serialization.js.map +1 -0
  177. package/es6/annotation/decorator_utils.js +59 -0
  178. package/es6/annotation/decorator_utils.js.map +1 -0
  179. package/es6/annotation/inject.js +32 -0
  180. package/es6/annotation/inject.js.map +1 -0
  181. package/es6/annotation/injectable.js +17 -0
  182. package/es6/annotation/injectable.js.map +1 -0
  183. package/es6/annotation/multi_inject.js +19 -0
  184. package/es6/annotation/multi_inject.js.map +1 -0
  185. package/es6/annotation/named.js +19 -0
  186. package/es6/annotation/named.js.map +1 -0
  187. package/es6/annotation/optional.js +19 -0
  188. package/es6/annotation/optional.js.map +1 -0
  189. package/es6/annotation/post_construct.js +17 -0
  190. package/es6/annotation/post_construct.js.map +1 -0
  191. package/es6/annotation/tagged.js +18 -0
  192. package/es6/annotation/tagged.js.map +1 -0
  193. package/es6/annotation/target_name.js +14 -0
  194. package/es6/annotation/target_name.js.map +1 -0
  195. package/es6/annotation/unmanaged.js +14 -0
  196. package/es6/annotation/unmanaged.js.map +1 -0
  197. package/es6/bindings/binding.js +37 -0
  198. package/es6/bindings/binding.js.map +1 -0
  199. package/es6/bindings/binding_count.js +10 -0
  200. package/es6/bindings/binding_count.js.map +1 -0
  201. package/es6/constants/error_msgs.js +46 -0
  202. package/es6/constants/error_msgs.js.map +1 -0
  203. package/es6/constants/literal_types.js +27 -0
  204. package/es6/constants/literal_types.js.map +1 -0
  205. package/es6/constants/metadata_keys.js +26 -0
  206. package/es6/constants/metadata_keys.js.map +1 -0
  207. package/es6/container/container.js +260 -0
  208. package/es6/container/container.js.map +1 -0
  209. package/es6/container/container_module.js +19 -0
  210. package/es6/container/container_module.js.map +1 -0
  211. package/es6/container/container_snapshot.js +13 -0
  212. package/es6/container/container_snapshot.js.map +1 -0
  213. package/es6/container/lookup.js +79 -0
  214. package/es6/container/lookup.js.map +1 -0
  215. package/es6/interfaces/interfaces.js +3 -0
  216. package/es6/interfaces/interfaces.js.map +1 -0
  217. package/es6/inversify.js +49 -0
  218. package/es6/inversify.js.map +1 -0
  219. package/es6/planning/context.js +18 -0
  220. package/es6/planning/context.js.map +1 -0
  221. package/es6/planning/metadata.js +20 -0
  222. package/es6/planning/metadata.js.map +1 -0
  223. package/es6/planning/metadata_reader.js +20 -0
  224. package/es6/planning/metadata_reader.js.map +1 -0
  225. package/es6/planning/plan.js +11 -0
  226. package/es6/planning/plan.js.map +1 -0
  227. package/es6/planning/planner.js +156 -0
  228. package/es6/planning/planner.js.map +1 -0
  229. package/es6/planning/queryable_string.js +28 -0
  230. package/es6/planning/queryable_string.js.map +1 -0
  231. package/es6/planning/reflection_utils.js +128 -0
  232. package/es6/planning/reflection_utils.js.map +1 -0
  233. package/es6/planning/request.js +25 -0
  234. package/es6/planning/request.js.map +1 -0
  235. package/es6/planning/target.js +78 -0
  236. package/es6/planning/target.js.map +1 -0
  237. package/es6/resolution/instantiation.js +48 -0
  238. package/es6/resolution/instantiation.js.map +1 -0
  239. package/es6/resolution/resolver.js +100 -0
  240. package/es6/resolution/resolver.js.map +1 -0
  241. package/es6/syntax/binding_in_syntax.js +24 -0
  242. package/es6/syntax/binding_in_syntax.js.map +1 -0
  243. package/es6/syntax/binding_in_when_on_syntax.js +73 -0
  244. package/es6/syntax/binding_in_when_on_syntax.js.map +1 -0
  245. package/es6/syntax/binding_on_syntax.js +15 -0
  246. package/es6/syntax/binding_on_syntax.js.map +1 -0
  247. package/es6/syntax/binding_to_syntax.js +80 -0
  248. package/es6/syntax/binding_to_syntax.js.map +1 -0
  249. package/es6/syntax/binding_when_on_syntax.js +62 -0
  250. package/es6/syntax/binding_when_on_syntax.js.map +1 -0
  251. package/es6/syntax/binding_when_syntax.js +77 -0
  252. package/es6/syntax/binding_when_syntax.js.map +1 -0
  253. package/es6/syntax/constraint_helpers.js +40 -0
  254. package/es6/syntax/constraint_helpers.js.map +1 -0
  255. package/es6/utils/binding_utils.js +6 -0
  256. package/es6/utils/binding_utils.js.map +1 -0
  257. package/es6/utils/exceptions.js +10 -0
  258. package/es6/utils/exceptions.js.map +1 -0
  259. package/es6/utils/id.js +9 -0
  260. package/es6/utils/id.js.map +1 -0
  261. package/es6/utils/serialization.js +104 -0
  262. package/es6/utils/serialization.js.map +1 -0
  263. package/lib/annotation/decorator_utils.d.ts +5 -0
  264. package/lib/annotation/decorator_utils.js +60 -0
  265. package/lib/annotation/decorator_utils.js.map +1 -0
  266. package/lib/annotation/inject.d.ts +9 -0
  267. package/lib/annotation/inject.js +33 -0
  268. package/lib/annotation/inject.js.map +1 -0
  269. package/lib/annotation/injectable.d.ts +2 -0
  270. package/lib/annotation/injectable.js +17 -0
  271. package/lib/annotation/injectable.js.map +1 -0
  272. package/lib/annotation/multi_inject.d.ts +3 -0
  273. package/lib/annotation/multi_inject.js +19 -0
  274. package/lib/annotation/multi_inject.js.map +1 -0
  275. package/lib/annotation/named.d.ts +2 -0
  276. package/lib/annotation/named.js +19 -0
  277. package/lib/annotation/named.js.map +1 -0
  278. package/lib/annotation/optional.d.ts +2 -0
  279. package/lib/annotation/optional.js +19 -0
  280. package/lib/annotation/optional.js.map +1 -0
  281. package/lib/annotation/post_construct.d.ts +2 -0
  282. package/lib/annotation/post_construct.js +17 -0
  283. package/lib/annotation/post_construct.js.map +1 -0
  284. package/lib/annotation/tagged.d.ts +2 -0
  285. package/lib/annotation/tagged.js +18 -0
  286. package/lib/annotation/tagged.js.map +1 -0
  287. package/lib/annotation/target_name.d.ts +2 -0
  288. package/lib/annotation/target_name.js +14 -0
  289. package/lib/annotation/target_name.js.map +1 -0
  290. package/lib/annotation/unmanaged.d.ts +2 -0
  291. package/lib/annotation/unmanaged.js +14 -0
  292. package/lib/annotation/unmanaged.js.map +1 -0
  293. package/lib/bindings/binding.d.ts +19 -0
  294. package/lib/bindings/binding.js +38 -0
  295. package/lib/bindings/binding.js.map +1 -0
  296. package/lib/bindings/binding_count.d.ts +6 -0
  297. package/lib/bindings/binding_count.js +10 -0
  298. package/lib/bindings/binding_count.js.map +1 -0
  299. package/lib/constants/error_msgs.d.ts +27 -0
  300. package/lib/constants/error_msgs.js +66 -0
  301. package/lib/constants/error_msgs.js.map +1 -0
  302. package/lib/constants/literal_types.d.ts +5 -0
  303. package/lib/constants/literal_types.js +27 -0
  304. package/lib/constants/literal_types.js.map +1 -0
  305. package/lib/constants/metadata_keys.d.ts +12 -0
  306. package/lib/constants/metadata_keys.js +26 -0
  307. package/lib/constants/metadata_keys.js.map +1 -0
  308. package/lib/container/container.d.ts +39 -0
  309. package/lib/container/container.js +342 -0
  310. package/lib/container/container.js.map +1 -0
  311. package/lib/container/container_module.d.ts +11 -0
  312. package/lib/container/container_module.js +21 -0
  313. package/lib/container/container_module.js.map +1 -0
  314. package/lib/container/container_snapshot.d.ts +7 -0
  315. package/lib/container/container_snapshot.js +16 -0
  316. package/lib/container/container_snapshot.js.map +1 -0
  317. package/lib/container/lookup.d.ts +14 -0
  318. package/lib/container/lookup.js +81 -0
  319. package/lib/container/lookup.js.map +1 -0
  320. package/lib/interfaces/interfaces.d.ts +237 -0
  321. package/lib/interfaces/interfaces.js +3 -0
  322. package/lib/interfaces/interfaces.js.map +1 -0
  323. package/lib/inversify.d.ts +21 -0
  324. package/lib/inversify.js +49 -0
  325. package/lib/inversify.js.map +1 -0
  326. package/lib/planning/context.d.ts +11 -0
  327. package/lib/planning/context.js +19 -0
  328. package/lib/planning/context.js.map +1 -0
  329. package/lib/planning/metadata.d.ts +8 -0
  330. package/lib/planning/metadata.js +21 -0
  331. package/lib/planning/metadata.js.map +1 -0
  332. package/lib/planning/metadata_reader.d.ts +6 -0
  333. package/lib/planning/metadata_reader.js +23 -0
  334. package/lib/planning/metadata_reader.js.map +1 -0
  335. package/lib/planning/plan.d.ts +7 -0
  336. package/lib/planning/plan.js +12 -0
  337. package/lib/planning/plan.js.map +1 -0
  338. package/lib/planning/planner.d.ts +5 -0
  339. package/lib/planning/planner.js +157 -0
  340. package/lib/planning/planner.js.map +1 -0
  341. package/lib/planning/queryable_string.d.ts +11 -0
  342. package/lib/planning/queryable_string.js +29 -0
  343. package/lib/planning/queryable_string.js.map +1 -0
  344. package/lib/planning/reflection_utils.d.ts +5 -0
  345. package/lib/planning/reflection_utils.js +132 -0
  346. package/lib/planning/reflection_utils.js.map +1 -0
  347. package/lib/planning/request.d.ts +14 -0
  348. package/lib/planning/request.js +26 -0
  349. package/lib/planning/request.js.map +1 -0
  350. package/lib/planning/target.d.ts +21 -0
  351. package/lib/planning/target.js +82 -0
  352. package/lib/planning/target.js.map +1 -0
  353. package/lib/resolution/instantiation.d.ts +3 -0
  354. package/lib/resolution/instantiation.js +57 -0
  355. package/lib/resolution/instantiation.js.map +1 -0
  356. package/lib/resolution/resolver.d.ts +3 -0
  357. package/lib/resolution/resolver.js +102 -0
  358. package/lib/resolution/resolver.js.map +1 -0
  359. package/lib/syntax/binding_in_syntax.d.ts +9 -0
  360. package/lib/syntax/binding_in_syntax.js +25 -0
  361. package/lib/syntax/binding_in_syntax.js.map +1 -0
  362. package/lib/syntax/binding_in_when_on_syntax.d.ts +28 -0
  363. package/lib/syntax/binding_in_when_on_syntax.js +74 -0
  364. package/lib/syntax/binding_in_when_on_syntax.js.map +1 -0
  365. package/lib/syntax/binding_on_syntax.d.ts +7 -0
  366. package/lib/syntax/binding_on_syntax.js +16 -0
  367. package/lib/syntax/binding_on_syntax.js.map +1 -0
  368. package/lib/syntax/binding_to_syntax.d.ts +16 -0
  369. package/lib/syntax/binding_to_syntax.js +81 -0
  370. package/lib/syntax/binding_to_syntax.js.map +1 -0
  371. package/lib/syntax/binding_when_on_syntax.d.ts +24 -0
  372. package/lib/syntax/binding_when_on_syntax.js +63 -0
  373. package/lib/syntax/binding_when_on_syntax.js.map +1 -0
  374. package/lib/syntax/binding_when_syntax.d.ts +21 -0
  375. package/lib/syntax/binding_when_syntax.js +100 -0
  376. package/lib/syntax/binding_when_syntax.js.map +1 -0
  377. package/lib/syntax/constraint_helpers.d.ts +6 -0
  378. package/lib/syntax/constraint_helpers.js +42 -0
  379. package/lib/syntax/constraint_helpers.js.map +1 -0
  380. package/lib/tsconfig.tsbuildinfo +719 -0
  381. package/lib/utils/binding_utils.d.ts +2 -0
  382. package/lib/utils/binding_utils.js +16 -0
  383. package/lib/utils/binding_utils.js.map +1 -0
  384. package/lib/utils/exceptions.d.ts +1 -0
  385. package/lib/utils/exceptions.js +10 -0
  386. package/lib/utils/exceptions.js.map +1 -0
  387. package/lib/utils/id.d.ts +2 -0
  388. package/lib/utils/id.js +9 -0
  389. package/lib/utils/id.js.map +1 -0
  390. package/lib/utils/serialization.d.ts +7 -0
  391. package/lib/utils/serialization.js +105 -0
  392. package/lib/utils/serialization.js.map +1 -0
  393. package/package.json +2 -2
@@ -0,0 +1,332 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (_) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ var __spreadArray = (this && this.__spreadArray) || function (to, from) {
38
+ for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
39
+ to[j] = from[i];
40
+ return to;
41
+ };
42
+ define(["require", "exports", "../bindings/binding", "../constants/error_msgs", "../constants/literal_types", "../constants/metadata_keys", "../planning/metadata_reader", "../planning/planner", "../resolution/resolver", "../syntax/binding_to_syntax", "../utils/id", "../utils/serialization", "./container_snapshot", "./lookup"], function (require, exports, binding_1, ERROR_MSGS, literal_types_1, METADATA_KEY, metadata_reader_1, planner_1, resolver_1, binding_to_syntax_1, id_1, serialization_1, container_snapshot_1, lookup_1) {
43
+ "use strict";
44
+ Object.defineProperty(exports, "__esModule", { value: true });
45
+ exports.Container = void 0;
46
+ var Container = (function () {
47
+ function Container(containerOptions) {
48
+ this._appliedMiddleware = [];
49
+ var options = containerOptions || {};
50
+ if (typeof options !== "object") {
51
+ throw new Error("" + ERROR_MSGS.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT);
52
+ }
53
+ if (options.defaultScope === undefined) {
54
+ options.defaultScope = literal_types_1.BindingScopeEnum.Transient;
55
+ }
56
+ else if (options.defaultScope !== literal_types_1.BindingScopeEnum.Singleton &&
57
+ options.defaultScope !== literal_types_1.BindingScopeEnum.Transient &&
58
+ options.defaultScope !== literal_types_1.BindingScopeEnum.Request) {
59
+ throw new Error("" + ERROR_MSGS.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE);
60
+ }
61
+ if (options.autoBindInjectable === undefined) {
62
+ options.autoBindInjectable = false;
63
+ }
64
+ else if (typeof options.autoBindInjectable !== "boolean") {
65
+ throw new Error("" + ERROR_MSGS.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE);
66
+ }
67
+ if (options.skipBaseClassChecks === undefined) {
68
+ options.skipBaseClassChecks = false;
69
+ }
70
+ else if (typeof options.skipBaseClassChecks !== "boolean") {
71
+ throw new Error("" + ERROR_MSGS.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK);
72
+ }
73
+ this.options = {
74
+ autoBindInjectable: options.autoBindInjectable,
75
+ defaultScope: options.defaultScope,
76
+ skipBaseClassChecks: options.skipBaseClassChecks
77
+ };
78
+ this.id = id_1.id();
79
+ this._bindingDictionary = new lookup_1.Lookup();
80
+ this._snapshots = [];
81
+ this._middleware = null;
82
+ this.parent = null;
83
+ this._metadataReader = new metadata_reader_1.MetadataReader();
84
+ }
85
+ Container.merge = function (container1, container2) {
86
+ var container3 = [];
87
+ for (var _i = 2; _i < arguments.length; _i++) {
88
+ container3[_i - 2] = arguments[_i];
89
+ }
90
+ var container = new Container();
91
+ var targetContainers = __spreadArray([container1, container2], container3).map(function (targetContainer) { return planner_1.getBindingDictionary(targetContainer); });
92
+ var bindingDictionary = planner_1.getBindingDictionary(container);
93
+ function copyDictionary(origin, destination) {
94
+ origin.traverse(function (key, value) {
95
+ value.forEach(function (binding) {
96
+ destination.add(binding.serviceIdentifier, binding.clone());
97
+ });
98
+ });
99
+ }
100
+ targetContainers.forEach(function (targetBindingDictionary) {
101
+ copyDictionary(targetBindingDictionary, bindingDictionary);
102
+ });
103
+ return container;
104
+ };
105
+ Container.prototype.load = function () {
106
+ var modules = [];
107
+ for (var _i = 0; _i < arguments.length; _i++) {
108
+ modules[_i] = arguments[_i];
109
+ }
110
+ var getHelpers = this._getContainerModuleHelpersFactory();
111
+ for (var _a = 0, modules_1 = modules; _a < modules_1.length; _a++) {
112
+ var currentModule = modules_1[_a];
113
+ var containerModuleHelpers = getHelpers(currentModule.id);
114
+ currentModule.registry(containerModuleHelpers.bindFunction, containerModuleHelpers.unbindFunction, containerModuleHelpers.isboundFunction, containerModuleHelpers.rebindFunction);
115
+ }
116
+ };
117
+ Container.prototype.loadAsync = function () {
118
+ var modules = [];
119
+ for (var _i = 0; _i < arguments.length; _i++) {
120
+ modules[_i] = arguments[_i];
121
+ }
122
+ return __awaiter(this, void 0, void 0, function () {
123
+ var getHelpers, _a, modules_2, currentModule, containerModuleHelpers;
124
+ return __generator(this, function (_b) {
125
+ switch (_b.label) {
126
+ case 0:
127
+ getHelpers = this._getContainerModuleHelpersFactory();
128
+ _a = 0, modules_2 = modules;
129
+ _b.label = 1;
130
+ case 1:
131
+ if (!(_a < modules_2.length)) return [3, 4];
132
+ currentModule = modules_2[_a];
133
+ containerModuleHelpers = getHelpers(currentModule.id);
134
+ return [4, currentModule.registry(containerModuleHelpers.bindFunction, containerModuleHelpers.unbindFunction, containerModuleHelpers.isboundFunction, containerModuleHelpers.rebindFunction)];
135
+ case 2:
136
+ _b.sent();
137
+ _b.label = 3;
138
+ case 3:
139
+ _a++;
140
+ return [3, 1];
141
+ case 4: return [2];
142
+ }
143
+ });
144
+ });
145
+ };
146
+ Container.prototype.unload = function () {
147
+ var _this = this;
148
+ var modules = [];
149
+ for (var _i = 0; _i < arguments.length; _i++) {
150
+ modules[_i] = arguments[_i];
151
+ }
152
+ var conditionFactory = function (expected) { return function (item) {
153
+ return item.moduleId === expected;
154
+ }; };
155
+ modules.forEach(function (module) {
156
+ var condition = conditionFactory(module.id);
157
+ _this._bindingDictionary.removeByCondition(condition);
158
+ });
159
+ };
160
+ Container.prototype.bind = function (serviceIdentifier) {
161
+ var scope = this.options.defaultScope || literal_types_1.BindingScopeEnum.Transient;
162
+ var binding = new binding_1.Binding(serviceIdentifier, scope);
163
+ this._bindingDictionary.add(serviceIdentifier, binding);
164
+ return new binding_to_syntax_1.BindingToSyntax(binding);
165
+ };
166
+ Container.prototype.rebind = function (serviceIdentifier) {
167
+ this.unbind(serviceIdentifier);
168
+ return this.bind(serviceIdentifier);
169
+ };
170
+ Container.prototype.unbind = function (serviceIdentifier) {
171
+ try {
172
+ this._bindingDictionary.remove(serviceIdentifier);
173
+ }
174
+ catch (e) {
175
+ throw new Error(ERROR_MSGS.CANNOT_UNBIND + " " + serialization_1.getServiceIdentifierAsString(serviceIdentifier));
176
+ }
177
+ };
178
+ Container.prototype.unbindAll = function () {
179
+ this._bindingDictionary = new lookup_1.Lookup();
180
+ };
181
+ Container.prototype.isBound = function (serviceIdentifier) {
182
+ var bound = this._bindingDictionary.hasKey(serviceIdentifier);
183
+ if (!bound && this.parent) {
184
+ bound = this.parent.isBound(serviceIdentifier);
185
+ }
186
+ return bound;
187
+ };
188
+ Container.prototype.isBoundNamed = function (serviceIdentifier, named) {
189
+ return this.isBoundTagged(serviceIdentifier, METADATA_KEY.NAMED_TAG, named);
190
+ };
191
+ Container.prototype.isBoundTagged = function (serviceIdentifier, key, value) {
192
+ var bound = false;
193
+ if (this._bindingDictionary.hasKey(serviceIdentifier)) {
194
+ var bindings = this._bindingDictionary.get(serviceIdentifier);
195
+ var request_1 = planner_1.createMockRequest(this, serviceIdentifier, key, value);
196
+ bound = bindings.some(function (b) { return b.constraint(request_1); });
197
+ }
198
+ if (!bound && this.parent) {
199
+ bound = this.parent.isBoundTagged(serviceIdentifier, key, value);
200
+ }
201
+ return bound;
202
+ };
203
+ Container.prototype.snapshot = function () {
204
+ this._snapshots.push(container_snapshot_1.ContainerSnapshot.of(this._bindingDictionary.clone(), this._middleware));
205
+ };
206
+ Container.prototype.restore = function () {
207
+ var snapshot = this._snapshots.pop();
208
+ if (snapshot === undefined) {
209
+ throw new Error(ERROR_MSGS.NO_MORE_SNAPSHOTS_AVAILABLE);
210
+ }
211
+ this._bindingDictionary = snapshot.bindings;
212
+ this._middleware = snapshot.middleware;
213
+ };
214
+ Container.prototype.createChild = function (containerOptions) {
215
+ var child = new Container(containerOptions || this.options);
216
+ child.parent = this;
217
+ return child;
218
+ };
219
+ Container.prototype.applyMiddleware = function () {
220
+ var middlewares = [];
221
+ for (var _i = 0; _i < arguments.length; _i++) {
222
+ middlewares[_i] = arguments[_i];
223
+ }
224
+ this._appliedMiddleware = this._appliedMiddleware.concat(middlewares);
225
+ var initial = (this._middleware) ? this._middleware : this._planAndResolve();
226
+ this._middleware = middlewares.reduce(function (prev, curr) { return curr(prev); }, initial);
227
+ };
228
+ Container.prototype.applyCustomMetadataReader = function (metadataReader) {
229
+ this._metadataReader = metadataReader;
230
+ };
231
+ Container.prototype.get = function (serviceIdentifier) {
232
+ return this._get(false, false, literal_types_1.TargetTypeEnum.Variable, serviceIdentifier);
233
+ };
234
+ Container.prototype.getTagged = function (serviceIdentifier, key, value) {
235
+ return this._get(false, false, literal_types_1.TargetTypeEnum.Variable, serviceIdentifier, key, value);
236
+ };
237
+ Container.prototype.getNamed = function (serviceIdentifier, named) {
238
+ return this.getTagged(serviceIdentifier, METADATA_KEY.NAMED_TAG, named);
239
+ };
240
+ Container.prototype.getAll = function (serviceIdentifier) {
241
+ return this._get(true, true, literal_types_1.TargetTypeEnum.Variable, serviceIdentifier);
242
+ };
243
+ Container.prototype.getAllTagged = function (serviceIdentifier, key, value) {
244
+ return this._get(false, true, literal_types_1.TargetTypeEnum.Variable, serviceIdentifier, key, value);
245
+ };
246
+ Container.prototype.getAllNamed = function (serviceIdentifier, named) {
247
+ return this.getAllTagged(serviceIdentifier, METADATA_KEY.NAMED_TAG, named);
248
+ };
249
+ Container.prototype.resolve = function (constructorFunction) {
250
+ var tempContainer = this.createChild();
251
+ tempContainer.bind(constructorFunction).toSelf();
252
+ this._appliedMiddleware.forEach(function (m) {
253
+ tempContainer.applyMiddleware(m);
254
+ });
255
+ return tempContainer.get(constructorFunction);
256
+ };
257
+ Container.prototype._getContainerModuleHelpersFactory = function () {
258
+ var _this = this;
259
+ var setModuleId = function (bindingToSyntax, moduleId) {
260
+ bindingToSyntax._binding.moduleId = moduleId;
261
+ };
262
+ var getBindFunction = function (moduleId) {
263
+ return function (serviceIdentifier) {
264
+ var _bind = _this.bind.bind(_this);
265
+ var bindingToSyntax = _bind(serviceIdentifier);
266
+ setModuleId(bindingToSyntax, moduleId);
267
+ return bindingToSyntax;
268
+ };
269
+ };
270
+ var getUnbindFunction = function (moduleId) {
271
+ return function (serviceIdentifier) {
272
+ var _unbind = _this.unbind.bind(_this);
273
+ _unbind(serviceIdentifier);
274
+ };
275
+ };
276
+ var getIsboundFunction = function (moduleId) {
277
+ return function (serviceIdentifier) {
278
+ var _isBound = _this.isBound.bind(_this);
279
+ return _isBound(serviceIdentifier);
280
+ };
281
+ };
282
+ var getRebindFunction = function (moduleId) {
283
+ return function (serviceIdentifier) {
284
+ var _rebind = _this.rebind.bind(_this);
285
+ var bindingToSyntax = _rebind(serviceIdentifier);
286
+ setModuleId(bindingToSyntax, moduleId);
287
+ return bindingToSyntax;
288
+ };
289
+ };
290
+ return function (mId) { return ({
291
+ bindFunction: getBindFunction(mId),
292
+ isboundFunction: getIsboundFunction(mId),
293
+ rebindFunction: getRebindFunction(mId),
294
+ unbindFunction: getUnbindFunction(mId)
295
+ }); };
296
+ };
297
+ Container.prototype._get = function (avoidConstraints, isMultiInject, targetType, serviceIdentifier, key, value) {
298
+ var result = null;
299
+ var defaultArgs = {
300
+ avoidConstraints: avoidConstraints,
301
+ contextInterceptor: function (context) { return context; },
302
+ isMultiInject: isMultiInject,
303
+ key: key,
304
+ serviceIdentifier: serviceIdentifier,
305
+ targetType: targetType,
306
+ value: value
307
+ };
308
+ if (this._middleware) {
309
+ result = this._middleware(defaultArgs);
310
+ if (result === undefined || result === null) {
311
+ throw new Error(ERROR_MSGS.INVALID_MIDDLEWARE_RETURN);
312
+ }
313
+ }
314
+ else {
315
+ result = this._planAndResolve()(defaultArgs);
316
+ }
317
+ return result;
318
+ };
319
+ Container.prototype._planAndResolve = function () {
320
+ var _this = this;
321
+ return function (args) {
322
+ var context = planner_1.plan(_this._metadataReader, _this, args.isMultiInject, args.targetType, args.serviceIdentifier, args.key, args.value, args.avoidConstraints);
323
+ context = args.contextInterceptor(context);
324
+ var result = resolver_1.resolve(context);
325
+ return result;
326
+ };
327
+ };
328
+ return Container;
329
+ }());
330
+ exports.Container = Container;
331
+ });
332
+ //# sourceMappingURL=container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../src/container/container.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ define(["require", "exports", "../utils/id"], function (require, exports, id_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.AsyncContainerModule = exports.ContainerModule = void 0;
5
+ var ContainerModule = (function () {
6
+ function ContainerModule(registry) {
7
+ this.id = id_1.id();
8
+ this.registry = registry;
9
+ }
10
+ return ContainerModule;
11
+ }());
12
+ exports.ContainerModule = ContainerModule;
13
+ var AsyncContainerModule = (function () {
14
+ function AsyncContainerModule(registry) {
15
+ this.id = id_1.id();
16
+ this.registry = registry;
17
+ }
18
+ return AsyncContainerModule;
19
+ }());
20
+ exports.AsyncContainerModule = AsyncContainerModule;
21
+ });
22
+ //# sourceMappingURL=container_module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container_module.js","sourceRoot":"","sources":["../../src/container/container_module.ts"],"names":[],"mappings":";;;;IAGA;QAKI,yBAAmB,QAA4C;YAC3D,IAAI,CAAC,EAAE,GAAG,OAAE,EAAE,CAAC;YACf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,CAAC;QAEL,sBAAC;IAAD,CAAC,AAVD,IAUC;IAVY,0CAAe;IAY5B;QAKI,8BAAmB,QAAiD;YAChE,IAAI,CAAC,EAAE,GAAG,OAAE,EAAE,CAAC;YACf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,CAAC;QAEL,2BAAC;IAAD,CAAC,AAVD,IAUC;IAVY,oDAAoB"}
@@ -0,0 +1,18 @@
1
+ define(["require", "exports"], function (require, exports) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ContainerSnapshot = void 0;
5
+ var ContainerSnapshot = (function () {
6
+ function ContainerSnapshot() {
7
+ }
8
+ ContainerSnapshot.of = function (bindings, middleware) {
9
+ var snapshot = new ContainerSnapshot();
10
+ snapshot.bindings = bindings;
11
+ snapshot.middleware = middleware;
12
+ return snapshot;
13
+ };
14
+ return ContainerSnapshot;
15
+ }());
16
+ exports.ContainerSnapshot = ContainerSnapshot;
17
+ });
18
+ //# sourceMappingURL=container_snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container_snapshot.js","sourceRoot":"","sources":["../../src/container/container_snapshot.ts"],"names":[],"mappings":";;;;IAEA;QAAA;QAYA,CAAC;QAPiB,oBAAE,GAAhB,UAAiB,QAAoD,EAAE,UAAkC;YACrG,IAAM,QAAQ,GAAG,IAAI,iBAAiB,EAAE,CAAC;YACzC,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAC7B,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAC;YACjC,OAAO,QAAQ,CAAC;QACpB,CAAC;QAEL,wBAAC;IAAD,CAAC,AAZD,IAYC;IAEQ,8CAAiB"}
@@ -0,0 +1,82 @@
1
+ define(["require", "exports", "../constants/error_msgs"], function (require, exports, ERROR_MSGS) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Lookup = void 0;
5
+ var Lookup = (function () {
6
+ function Lookup() {
7
+ this._map = new Map();
8
+ }
9
+ Lookup.prototype.getMap = function () {
10
+ return this._map;
11
+ };
12
+ Lookup.prototype.add = function (serviceIdentifier, value) {
13
+ if (serviceIdentifier === null || serviceIdentifier === undefined) {
14
+ throw new Error(ERROR_MSGS.NULL_ARGUMENT);
15
+ }
16
+ if (value === null || value === undefined) {
17
+ throw new Error(ERROR_MSGS.NULL_ARGUMENT);
18
+ }
19
+ var entry = this._map.get(serviceIdentifier);
20
+ if (entry !== undefined) {
21
+ entry.push(value);
22
+ this._map.set(serviceIdentifier, entry);
23
+ }
24
+ else {
25
+ this._map.set(serviceIdentifier, [value]);
26
+ }
27
+ };
28
+ Lookup.prototype.get = function (serviceIdentifier) {
29
+ if (serviceIdentifier === null || serviceIdentifier === undefined) {
30
+ throw new Error(ERROR_MSGS.NULL_ARGUMENT);
31
+ }
32
+ var entry = this._map.get(serviceIdentifier);
33
+ if (entry !== undefined) {
34
+ return entry;
35
+ }
36
+ else {
37
+ throw new Error(ERROR_MSGS.KEY_NOT_FOUND);
38
+ }
39
+ };
40
+ Lookup.prototype.remove = function (serviceIdentifier) {
41
+ if (serviceIdentifier === null || serviceIdentifier === undefined) {
42
+ throw new Error(ERROR_MSGS.NULL_ARGUMENT);
43
+ }
44
+ if (!this._map.delete(serviceIdentifier)) {
45
+ throw new Error(ERROR_MSGS.KEY_NOT_FOUND);
46
+ }
47
+ };
48
+ Lookup.prototype.removeByCondition = function (condition) {
49
+ var _this = this;
50
+ this._map.forEach(function (entries, key) {
51
+ var updatedEntries = entries.filter(function (entry) { return !condition(entry); });
52
+ if (updatedEntries.length > 0) {
53
+ _this._map.set(key, updatedEntries);
54
+ }
55
+ else {
56
+ _this._map.delete(key);
57
+ }
58
+ });
59
+ };
60
+ Lookup.prototype.hasKey = function (serviceIdentifier) {
61
+ if (serviceIdentifier === null || serviceIdentifier === undefined) {
62
+ throw new Error(ERROR_MSGS.NULL_ARGUMENT);
63
+ }
64
+ return this._map.has(serviceIdentifier);
65
+ };
66
+ Lookup.prototype.clone = function () {
67
+ var copy = new Lookup();
68
+ this._map.forEach(function (value, key) {
69
+ value.forEach(function (b) { return copy.add(key, b.clone()); });
70
+ });
71
+ return copy;
72
+ };
73
+ Lookup.prototype.traverse = function (func) {
74
+ this._map.forEach(function (value, key) {
75
+ func(key, value);
76
+ });
77
+ };
78
+ return Lookup;
79
+ }());
80
+ exports.Lookup = Lookup;
81
+ });
82
+ //# sourceMappingURL=lookup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../src/container/lookup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ define(["require", "exports"], function (require, exports) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ });
5
+ //# sourceMappingURL=interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces/interfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ define(["require", "exports", "./constants/metadata_keys", "./container/container", "./constants/literal_types", "./container/container_module", "./annotation/injectable", "./annotation/tagged", "./annotation/named", "./annotation/inject", "./annotation/optional", "./annotation/unmanaged", "./annotation/multi_inject", "./annotation/target_name", "./annotation/post_construct", "./planning/metadata_reader", "./utils/id", "./annotation/decorator_utils", "./syntax/constraint_helpers", "./utils/serialization", "./utils/binding_utils"], function (require, exports, keys, container_1, literal_types_1, container_module_1, injectable_1, tagged_1, named_1, inject_1, optional_1, unmanaged_1, multi_inject_1, target_name_1, post_construct_1, metadata_reader_1, id_1, decorator_utils_1, constraint_helpers_1, serialization_1, binding_utils_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.multiBindToService = exports.getServiceIdentifierAsString = exports.typeConstraint = exports.namedConstraint = exports.taggedConstraint = exports.traverseAncerstors = exports.decorate = exports.id = exports.MetadataReader = exports.postConstruct = exports.targetName = exports.multiInject = exports.unmanaged = exports.optional = exports.LazyServiceIdentifer = exports.inject = exports.named = exports.tagged = exports.injectable = exports.ContainerModule = exports.AsyncContainerModule = exports.TargetTypeEnum = exports.BindingTypeEnum = exports.BindingScopeEnum = exports.Container = exports.METADATA_KEY = void 0;
5
+ exports.METADATA_KEY = keys;
6
+ Object.defineProperty(exports, "Container", { enumerable: true, get: function () { return container_1.Container; } });
7
+ Object.defineProperty(exports, "BindingScopeEnum", { enumerable: true, get: function () { return literal_types_1.BindingScopeEnum; } });
8
+ Object.defineProperty(exports, "BindingTypeEnum", { enumerable: true, get: function () { return literal_types_1.BindingTypeEnum; } });
9
+ Object.defineProperty(exports, "TargetTypeEnum", { enumerable: true, get: function () { return literal_types_1.TargetTypeEnum; } });
10
+ Object.defineProperty(exports, "AsyncContainerModule", { enumerable: true, get: function () { return container_module_1.AsyncContainerModule; } });
11
+ Object.defineProperty(exports, "ContainerModule", { enumerable: true, get: function () { return container_module_1.ContainerModule; } });
12
+ Object.defineProperty(exports, "injectable", { enumerable: true, get: function () { return injectable_1.injectable; } });
13
+ Object.defineProperty(exports, "tagged", { enumerable: true, get: function () { return tagged_1.tagged; } });
14
+ Object.defineProperty(exports, "named", { enumerable: true, get: function () { return named_1.named; } });
15
+ Object.defineProperty(exports, "inject", { enumerable: true, get: function () { return inject_1.inject; } });
16
+ Object.defineProperty(exports, "LazyServiceIdentifer", { enumerable: true, get: function () { return inject_1.LazyServiceIdentifer; } });
17
+ Object.defineProperty(exports, "optional", { enumerable: true, get: function () { return optional_1.optional; } });
18
+ Object.defineProperty(exports, "unmanaged", { enumerable: true, get: function () { return unmanaged_1.unmanaged; } });
19
+ Object.defineProperty(exports, "multiInject", { enumerable: true, get: function () { return multi_inject_1.multiInject; } });
20
+ Object.defineProperty(exports, "targetName", { enumerable: true, get: function () { return target_name_1.targetName; } });
21
+ Object.defineProperty(exports, "postConstruct", { enumerable: true, get: function () { return post_construct_1.postConstruct; } });
22
+ Object.defineProperty(exports, "MetadataReader", { enumerable: true, get: function () { return metadata_reader_1.MetadataReader; } });
23
+ Object.defineProperty(exports, "id", { enumerable: true, get: function () { return id_1.id; } });
24
+ Object.defineProperty(exports, "decorate", { enumerable: true, get: function () { return decorator_utils_1.decorate; } });
25
+ Object.defineProperty(exports, "traverseAncerstors", { enumerable: true, get: function () { return constraint_helpers_1.traverseAncerstors; } });
26
+ Object.defineProperty(exports, "taggedConstraint", { enumerable: true, get: function () { return constraint_helpers_1.taggedConstraint; } });
27
+ Object.defineProperty(exports, "namedConstraint", { enumerable: true, get: function () { return constraint_helpers_1.namedConstraint; } });
28
+ Object.defineProperty(exports, "typeConstraint", { enumerable: true, get: function () { return constraint_helpers_1.typeConstraint; } });
29
+ Object.defineProperty(exports, "getServiceIdentifierAsString", { enumerable: true, get: function () { return serialization_1.getServiceIdentifierAsString; } });
30
+ Object.defineProperty(exports, "multiBindToService", { enumerable: true, get: function () { return binding_utils_1.multiBindToService; } });
31
+ });
32
+ //# sourceMappingURL=inversify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inversify.js","sourceRoot":"","sources":["../src/inversify.ts"],"names":[],"mappings":";;;;IACa,QAAA,YAAY,GAAG,IAAI,CAAC;IACxB,sGAAA,SAAS,OAAA;IACT,iHAAA,gBAAgB,OAAA;IAAE,gHAAA,eAAe,OAAA;IAAE,+GAAA,cAAc,OAAA;IACjD,wHAAA,oBAAoB,OAAA;IAAE,mHAAA,eAAe,OAAA;IACrC,wGAAA,UAAU,OAAA;IACV,gGAAA,MAAM,OAAA;IACN,8FAAA,KAAK,OAAA;IACL,gGAAA,MAAM,OAAA;IAAE,8GAAA,oBAAoB,OAAA;IAC5B,oGAAA,QAAQ,OAAA;IACR,sGAAA,SAAS,OAAA;IACT,2GAAA,WAAW,OAAA;IACX,yGAAA,UAAU,OAAA;IACV,+GAAA,aAAa,OAAA;IACb,iHAAA,cAAc,OAAA;IACd,wFAAA,EAAE,OAAA;IAEF,2GAAA,QAAQ,OAAA;IACR,wHAAA,kBAAkB,OAAA;IAAE,sHAAA,gBAAgB,OAAA;IAAE,qHAAA,eAAe,OAAA;IAAE,oHAAA,cAAc,OAAA;IACrE,6HAAA,4BAA4B,OAAA;IAC5B,mHAAA,kBAAkB,OAAA"}
@@ -0,0 +1,20 @@
1
+ define(["require", "exports", "../utils/id"], function (require, exports, id_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Context = void 0;
5
+ var Context = (function () {
6
+ function Context(container) {
7
+ this.id = id_1.id();
8
+ this.container = container;
9
+ }
10
+ Context.prototype.addPlan = function (plan) {
11
+ this.plan = plan;
12
+ };
13
+ Context.prototype.setCurrentRequest = function (currentRequest) {
14
+ this.currentRequest = currentRequest;
15
+ };
16
+ return Context;
17
+ }());
18
+ exports.Context = Context;
19
+ });
20
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/planning/context.ts"],"names":[],"mappings":";;;;IAGA;QAOI,iBACI,SAA+B;YAC/B,IAAI,CAAC,EAAE,GAAG,OAAE,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC/B,CAAC;QAEM,yBAAO,GAAd,UAAe,IAAqB;YAChC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACrB,CAAC;QAEM,mCAAiB,GAAxB,UAAyB,cAAkC;YACvD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACzC,CAAC;QAEL,cAAC;IAAD,CAAC,AArBD,IAqBC;IAEQ,0BAAO"}
@@ -0,0 +1,22 @@
1
+ define(["require", "exports", "../constants/metadata_keys"], function (require, exports, METADATA_KEY) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Metadata = void 0;
5
+ var Metadata = (function () {
6
+ function Metadata(key, value) {
7
+ this.key = key;
8
+ this.value = value;
9
+ }
10
+ Metadata.prototype.toString = function () {
11
+ if (this.key === METADATA_KEY.NAMED_TAG) {
12
+ return "named: " + this.value.toString() + " ";
13
+ }
14
+ else {
15
+ return "tagged: { key:" + this.key.toString() + ", value: " + this.value + " }";
16
+ }
17
+ };
18
+ return Metadata;
19
+ }());
20
+ exports.Metadata = Metadata;
21
+ });
22
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/planning/metadata.ts"],"names":[],"mappings":";;;;IAGA;QAKE,kBAAmB,GAA6B,EAAE,KAAU;YAC1D,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;YACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;QAEM,2BAAQ,GAAf;YACE,IAAI,IAAI,CAAC,GAAG,KAAK,YAAY,CAAC,SAAS,EAAE;gBACvC,OAAO,YAAU,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAG,CAAC;aAC3C;iBAAM;gBACL,OAAO,mBAAiB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,iBAAY,IAAI,CAAC,KAAK,OAAI,CAAC;aACvE;QACH,CAAC;QACH,eAAC;IAAD,CAAC,AAjBD,IAiBC;IAEQ,4BAAQ"}
@@ -0,0 +1,24 @@
1
+ define(["require", "exports", "../constants/metadata_keys"], function (require, exports, METADATA_KEY) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.MetadataReader = void 0;
5
+ var MetadataReader = (function () {
6
+ function MetadataReader() {
7
+ }
8
+ MetadataReader.prototype.getConstructorMetadata = function (constructorFunc) {
9
+ var compilerGeneratedMetadata = Reflect.getMetadata(METADATA_KEY.PARAM_TYPES, constructorFunc);
10
+ var userGeneratedMetadata = Reflect.getMetadata(METADATA_KEY.TAGGED, constructorFunc);
11
+ return {
12
+ compilerGeneratedMetadata: compilerGeneratedMetadata,
13
+ userGeneratedMetadata: userGeneratedMetadata || {}
14
+ };
15
+ };
16
+ MetadataReader.prototype.getPropertiesMetadata = function (constructorFunc) {
17
+ var userGeneratedMetadata = Reflect.getMetadata(METADATA_KEY.TAGGED_PROP, constructorFunc) || [];
18
+ return userGeneratedMetadata;
19
+ };
20
+ return MetadataReader;
21
+ }());
22
+ exports.MetadataReader = MetadataReader;
23
+ });
24
+ //# sourceMappingURL=metadata_reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata_reader.js","sourceRoot":"","sources":["../../src/planning/metadata_reader.ts"],"names":[],"mappings":";;;;IAGA;QAAA;QAuBA,CAAC;QArBU,+CAAsB,GAA7B,UAA8B,eAAyB;YAGnD,IAAM,yBAAyB,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;YAGjG,IAAM,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YAExF,OAAO;gBACH,yBAAyB,2BAAA;gBACzB,qBAAqB,EAAE,qBAAqB,IAAI,EAAE;aACrD,CAAC;QAEN,CAAC;QAEM,8CAAqB,GAA5B,UAA6B,eAAyB;YAElD,IAAM,qBAAqB,GAAI,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,EAAE,eAAe,CAAC,IAAI,EAAE,CAAC;YACpG,OAAO,qBAAqB,CAAC;QACjC,CAAC;QAEL,qBAAC;IAAD,CAAC,AAvBD,IAuBC;IAEQ,wCAAc"}
@@ -0,0 +1,14 @@
1
+ define(["require", "exports"], function (require, exports) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Plan = void 0;
5
+ var Plan = (function () {
6
+ function Plan(parentContext, rootRequest) {
7
+ this.parentContext = parentContext;
8
+ this.rootRequest = rootRequest;
9
+ }
10
+ return Plan;
11
+ }());
12
+ exports.Plan = Plan;
13
+ });
14
+ //# sourceMappingURL=plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/planning/plan.ts"],"names":[],"mappings":";;;;IAEA;QAKI,cAAmB,aAAiC,EAAE,WAA+B;YACjF,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;YACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QACnC,CAAC;QACL,WAAC;IAAD,CAAC,AATD,IASC;IAEQ,oBAAI"}