inversify 6.0.2 → 6.0.3

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 (275) hide show
  1. package/.nyc_output/c29b2307-4e95-47d0-b220-9efcfa7ee49f.json +1 -0
  2. package/.nyc_output/processinfo/c29b2307-4e95-47d0-b220-9efcfa7ee49f.json +1 -0
  3. package/.nyc_output/processinfo/index.json +1 -1
  4. package/CHANGELOG.md +86 -81
  5. package/LICENSE +22 -22
  6. package/README.md +311 -309
  7. package/amd/annotation/decorator_utils.js +117 -114
  8. package/amd/annotation/inject.js +31 -27
  9. package/amd/annotation/inject_base.js +16 -17
  10. package/amd/annotation/injectable.js +40 -37
  11. package/amd/annotation/lazy_service_identifier.js +15 -15
  12. package/amd/annotation/multi_inject.js +31 -27
  13. package/amd/annotation/named.js +32 -29
  14. package/amd/annotation/optional.js +32 -29
  15. package/amd/annotation/post_construct.js +32 -28
  16. package/amd/annotation/pre_destroy.js +32 -28
  17. package/amd/annotation/property_event_decorator.js +16 -17
  18. package/amd/annotation/tagged.js +8 -9
  19. package/amd/annotation/target_name.js +35 -32
  20. package/amd/annotation/unmanaged.js +35 -32
  21. package/amd/bindings/binding.js +39 -39
  22. package/amd/bindings/binding_count.js +10 -10
  23. package/amd/constants/error_msgs.js +74 -64
  24. package/amd/constants/literal_types.js +28 -28
  25. package/amd/constants/metadata_keys.js +28 -28
  26. package/amd/container/container.js +723 -719
  27. package/amd/container/container_module.js +21 -21
  28. package/amd/container/container_snapshot.js +20 -20
  29. package/amd/container/lookup.js +131 -127
  30. package/amd/container/module_activation_store.js +53 -53
  31. package/amd/interfaces/interfaces.js +9 -10
  32. package/amd/inversify.js +59 -55
  33. package/amd/planning/context.js +19 -19
  34. package/amd/planning/metadata.js +45 -41
  35. package/amd/planning/metadata_reader.js +47 -43
  36. package/amd/planning/plan.js +13 -13
  37. package/amd/planning/planner.js +166 -163
  38. package/amd/planning/queryable_string.js +30 -30
  39. package/amd/planning/reflection_utils.js +161 -157
  40. package/amd/planning/request.js +26 -26
  41. package/amd/planning/target.js +105 -101
  42. package/amd/resolution/instantiation.js +214 -211
  43. package/amd/resolution/resolver.js +225 -222
  44. package/amd/scope/scope.js +93 -93
  45. package/amd/syntax/binding_in_syntax.js +24 -24
  46. package/amd/syntax/binding_in_when_on_syntax.js +75 -75
  47. package/amd/syntax/binding_on_syntax.js +20 -20
  48. package/amd/syntax/binding_to_syntax.js +109 -105
  49. package/amd/syntax/binding_when_on_syntax.js +65 -65
  50. package/amd/syntax/binding_when_syntax.js +102 -102
  51. package/amd/syntax/constraint_helpers.js +65 -61
  52. package/amd/utils/async.js +16 -17
  53. package/amd/utils/binding_utils.js +81 -77
  54. package/amd/utils/clonable.js +11 -12
  55. package/amd/utils/exceptions.js +46 -42
  56. package/amd/utils/factory_type.js +11 -11
  57. package/amd/utils/id.js +9 -10
  58. package/amd/utils/js.js +18 -19
  59. package/amd/utils/serialization.js +132 -129
  60. package/es/annotation/decorator_utils.js +88 -88
  61. package/es/annotation/inject.js +4 -4
  62. package/es/annotation/inject_base.js +14 -14
  63. package/es/annotation/injectable.js +13 -13
  64. package/es/annotation/lazy_service_identifier.js +10 -10
  65. package/es/annotation/multi_inject.js +4 -4
  66. package/es/annotation/named.js +7 -7
  67. package/es/annotation/optional.js +7 -7
  68. package/es/annotation/post_construct.js +5 -5
  69. package/es/annotation/pre_destroy.js +5 -5
  70. package/es/annotation/property_event_decorator.js +13 -13
  71. package/es/annotation/tagged.js +6 -6
  72. package/es/annotation/target_name.js +10 -10
  73. package/es/annotation/unmanaged.js +10 -10
  74. package/es/bindings/binding.js +36 -36
  75. package/es/bindings/binding_count.js +5 -5
  76. package/es/constants/error_msgs.js +62 -52
  77. package/es/constants/literal_types.js +21 -21
  78. package/es/constants/metadata_keys.js +23 -23
  79. package/es/container/container.js +707 -707
  80. package/es/container/container_module.js +17 -17
  81. package/es/container/container_snapshot.js +15 -15
  82. package/es/container/lookup.js +104 -104
  83. package/es/container/module_activation_store.js +49 -49
  84. package/es/interfaces/interfaces.js +5 -5
  85. package/es/inversify.js +25 -25
  86. package/es/planning/context.js +15 -15
  87. package/es/planning/metadata.js +17 -17
  88. package/es/planning/metadata_reader.js +19 -19
  89. package/es/planning/plan.js +8 -8
  90. package/es/planning/planner.js +147 -147
  91. package/es/planning/queryable_string.js +25 -25
  92. package/es/planning/reflection_utils.js +135 -135
  93. package/es/planning/request.js +22 -22
  94. package/es/planning/target.js +81 -81
  95. package/es/resolution/instantiation.js +190 -190
  96. package/es/resolution/resolver.js +205 -205
  97. package/es/scope/scope.js +88 -88
  98. package/es/syntax/binding_in_syntax.js +21 -21
  99. package/es/syntax/binding_in_when_on_syntax.js +73 -73
  100. package/es/syntax/binding_on_syntax.js +16 -16
  101. package/es/syntax/binding_to_syntax.js +84 -84
  102. package/es/syntax/binding_when_on_syntax.js +62 -62
  103. package/es/syntax/binding_when_syntax.js +99 -99
  104. package/es/syntax/constraint_helpers.js +35 -35
  105. package/es/utils/async.js +11 -11
  106. package/es/utils/binding_utils.js +53 -53
  107. package/es/utils/clonable.js +7 -7
  108. package/es/utils/exceptions.js +16 -16
  109. package/es/utils/factory_type.js +6 -6
  110. package/es/utils/id.js +5 -5
  111. package/es/utils/js.js +13 -13
  112. package/es/utils/serialization.js +100 -100
  113. package/es6/annotation/decorator_utils.js +112 -109
  114. package/es6/annotation/inject.js +30 -26
  115. package/es6/annotation/inject_base.js +17 -18
  116. package/es6/annotation/injectable.js +38 -35
  117. package/es6/annotation/lazy_service_identifier.js +12 -12
  118. package/es6/annotation/multi_inject.js +30 -26
  119. package/es6/annotation/named.js +32 -29
  120. package/es6/annotation/optional.js +32 -29
  121. package/es6/annotation/post_construct.js +31 -27
  122. package/es6/annotation/pre_destroy.js +31 -27
  123. package/es6/annotation/property_event_decorator.js +15 -16
  124. package/es6/annotation/tagged.js +8 -9
  125. package/es6/annotation/target_name.js +35 -32
  126. package/es6/annotation/unmanaged.js +35 -32
  127. package/es6/bindings/binding.js +38 -38
  128. package/es6/bindings/binding_count.js +8 -8
  129. package/es6/constants/error_msgs.js +62 -53
  130. package/es6/constants/literal_types.js +26 -26
  131. package/es6/constants/metadata_keys.js +26 -26
  132. package/es6/container/container.js +524 -520
  133. package/es6/container/container_module.js +18 -18
  134. package/es6/container/container_snapshot.js +15 -15
  135. package/es6/container/lookup.js +124 -120
  136. package/es6/container/module_activation_store.js +51 -51
  137. package/es6/interfaces/interfaces.js +7 -8
  138. package/es6/inversify.js +80 -76
  139. package/es6/planning/context.js +17 -17
  140. package/es6/planning/metadata.js +42 -38
  141. package/es6/planning/metadata_reader.js +42 -38
  142. package/es6/planning/plan.js +10 -10
  143. package/es6/planning/planner.js +173 -170
  144. package/es6/planning/queryable_string.js +27 -27
  145. package/es6/planning/reflection_utils.js +159 -155
  146. package/es6/planning/request.js +24 -24
  147. package/es6/planning/target.js +103 -99
  148. package/es6/resolution/instantiation.js +154 -151
  149. package/es6/resolution/resolver.js +190 -187
  150. package/es6/scope/scope.js +57 -57
  151. package/es6/syntax/binding_in_syntax.js +23 -23
  152. package/es6/syntax/binding_in_when_on_syntax.js +75 -75
  153. package/es6/syntax/binding_on_syntax.js +18 -18
  154. package/es6/syntax/binding_to_syntax.js +109 -105
  155. package/es6/syntax/binding_when_on_syntax.js +64 -64
  156. package/es6/syntax/binding_when_syntax.js +79 -79
  157. package/es6/syntax/constraint_helpers.js +62 -58
  158. package/es6/utils/async.js +14 -15
  159. package/es6/utils/binding_utils.js +72 -68
  160. package/es6/utils/clonable.js +9 -10
  161. package/es6/utils/exceptions.js +44 -40
  162. package/es6/utils/factory_type.js +9 -9
  163. package/es6/utils/id.js +7 -8
  164. package/es6/utils/js.js +15 -16
  165. package/es6/utils/serialization.js +129 -126
  166. package/lib/annotation/decorator_utils.d.ts +16 -16
  167. package/lib/annotation/decorator_utils.js +116 -113
  168. package/lib/annotation/inject.d.ts +2 -2
  169. package/lib/annotation/inject.js +30 -26
  170. package/lib/annotation/inject_base.d.ts +3 -3
  171. package/lib/annotation/inject_base.js +17 -18
  172. package/lib/annotation/injectable.d.ts +2 -2
  173. package/lib/annotation/injectable.js +38 -35
  174. package/lib/annotation/lazy_service_identifier.d.ts +7 -7
  175. package/lib/annotation/lazy_service_identifier.js +13 -13
  176. package/lib/annotation/multi_inject.d.ts +2 -2
  177. package/lib/annotation/multi_inject.js +30 -26
  178. package/lib/annotation/named.d.ts +2 -2
  179. package/lib/annotation/named.js +32 -29
  180. package/lib/annotation/optional.d.ts +2 -2
  181. package/lib/annotation/optional.js +32 -29
  182. package/lib/annotation/post_construct.d.ts +4 -4
  183. package/lib/annotation/post_construct.js +31 -27
  184. package/lib/annotation/pre_destroy.d.ts +4 -4
  185. package/lib/annotation/pre_destroy.js +31 -27
  186. package/lib/annotation/property_event_decorator.d.ts +4 -4
  187. package/lib/annotation/property_event_decorator.js +15 -16
  188. package/lib/annotation/tagged.d.ts +2 -2
  189. package/lib/annotation/tagged.js +8 -9
  190. package/lib/annotation/target_name.d.ts +3 -3
  191. package/lib/annotation/target_name.js +35 -32
  192. package/lib/annotation/unmanaged.d.ts +3 -3
  193. package/lib/annotation/unmanaged.js +35 -32
  194. package/lib/bindings/binding.d.ts +20 -20
  195. package/lib/bindings/binding.js +39 -39
  196. package/lib/bindings/binding_count.d.ts +5 -5
  197. package/lib/bindings/binding_count.js +8 -8
  198. package/lib/constants/error_msgs.d.ts +32 -32
  199. package/lib/constants/error_msgs.js +72 -62
  200. package/lib/constants/literal_types.d.ts +5 -5
  201. package/lib/constants/literal_types.js +26 -26
  202. package/lib/constants/metadata_keys.d.ts +13 -13
  203. package/lib/constants/metadata_keys.js +26 -26
  204. package/lib/container/container.d.ts +73 -73
  205. package/lib/container/container.js +733 -729
  206. package/lib/container/container_module.d.ts +11 -11
  207. package/lib/container/container_module.js +20 -20
  208. package/lib/container/container_snapshot.d.ts +10 -10
  209. package/lib/container/container_snapshot.js +18 -18
  210. package/lib/container/lookup.d.ts +16 -16
  211. package/lib/container/lookup.js +130 -126
  212. package/lib/container/module_activation_store.d.ts +10 -10
  213. package/lib/container/module_activation_store.js +52 -52
  214. package/lib/interfaces/interfaces.d.ts +284 -284
  215. package/lib/interfaces/interfaces.js +7 -8
  216. package/lib/inversify.d.ts +25 -25
  217. package/lib/inversify.js +80 -76
  218. package/lib/planning/context.d.ts +11 -11
  219. package/lib/planning/context.js +18 -18
  220. package/lib/planning/metadata.d.ts +8 -8
  221. package/lib/planning/metadata.js +43 -39
  222. package/lib/planning/metadata_reader.d.ts +6 -6
  223. package/lib/planning/metadata_reader.js +45 -41
  224. package/lib/planning/plan.d.ts +7 -7
  225. package/lib/planning/plan.js +11 -11
  226. package/lib/planning/planner.d.ts +5 -5
  227. package/lib/planning/planner.js +174 -171
  228. package/lib/planning/queryable_string.d.ts +11 -11
  229. package/lib/planning/queryable_string.js +28 -28
  230. package/lib/planning/reflection_utils.d.ts +5 -5
  231. package/lib/planning/reflection_utils.js +163 -159
  232. package/lib/planning/request.d.ts +14 -14
  233. package/lib/planning/request.js +25 -25
  234. package/lib/planning/target.d.ts +23 -23
  235. package/lib/planning/target.js +107 -103
  236. package/lib/resolution/instantiation.d.ts +3 -3
  237. package/lib/resolution/instantiation.js +215 -212
  238. package/lib/resolution/resolver.d.ts +3 -3
  239. package/lib/resolution/resolver.js +230 -227
  240. package/lib/scope/scope.d.ts +3 -3
  241. package/lib/scope/scope.js +93 -93
  242. package/lib/syntax/binding_in_syntax.d.ts +9 -9
  243. package/lib/syntax/binding_in_syntax.js +24 -24
  244. package/lib/syntax/binding_in_when_on_syntax.d.ts +29 -29
  245. package/lib/syntax/binding_in_when_on_syntax.js +76 -76
  246. package/lib/syntax/binding_on_syntax.d.ts +8 -8
  247. package/lib/syntax/binding_on_syntax.js +19 -19
  248. package/lib/syntax/binding_to_syntax.d.ts +18 -18
  249. package/lib/syntax/binding_to_syntax.js +110 -106
  250. package/lib/syntax/binding_when_on_syntax.d.ts +25 -25
  251. package/lib/syntax/binding_when_on_syntax.js +65 -65
  252. package/lib/syntax/binding_when_syntax.d.ts +21 -21
  253. package/lib/syntax/binding_when_syntax.js +102 -102
  254. package/lib/syntax/constraint_helpers.d.ts +6 -6
  255. package/lib/syntax/constraint_helpers.js +64 -60
  256. package/lib/tsconfig.tsbuildinfo +1 -1
  257. package/lib/utils/async.d.ts +3 -3
  258. package/lib/utils/async.js +14 -15
  259. package/lib/utils/binding_utils.d.ts +4 -4
  260. package/lib/utils/binding_utils.js +82 -78
  261. package/lib/utils/clonable.d.ts +3 -3
  262. package/lib/utils/clonable.js +9 -10
  263. package/lib/utils/exceptions.d.ts +2 -2
  264. package/lib/utils/exceptions.js +44 -40
  265. package/lib/utils/factory_type.d.ts +5 -5
  266. package/lib/utils/factory_type.js +9 -9
  267. package/lib/utils/id.d.ts +2 -2
  268. package/lib/utils/id.js +7 -8
  269. package/lib/utils/js.d.ts +1 -1
  270. package/lib/utils/js.js +16 -17
  271. package/lib/utils/serialization.d.ts +10 -10
  272. package/lib/utils/serialization.js +130 -127
  273. package/package.json +60 -61
  274. package/.nyc_output/16b95af9-19b9-451c-8475-9a8585677128.json +0 -1
  275. package/.nyc_output/processinfo/16b95af9-19b9-451c-8475-9a8585677128.json +0 -1
@@ -1,103 +1,107 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.Target = void 0;
23
- var METADATA_KEY = __importStar(require("../constants/metadata_keys"));
24
- var id_1 = require("../utils/id");
25
- var serialization_1 = require("../utils/serialization");
26
- var metadata_1 = require("./metadata");
27
- var queryable_string_1 = require("./queryable_string");
28
- var Target = (function () {
29
- function Target(type, identifier, serviceIdentifier, namedOrTagged) {
30
- this.id = (0, id_1.id)();
31
- this.type = type;
32
- this.serviceIdentifier = serviceIdentifier;
33
- var queryableName = typeof identifier === 'symbol' ? (0, serialization_1.getSymbolDescription)(identifier) : identifier;
34
- this.name = new queryable_string_1.QueryableString(queryableName || '');
35
- this.identifier = identifier;
36
- this.metadata = new Array();
37
- var metadataItem = null;
38
- if (typeof namedOrTagged === 'string') {
39
- metadataItem = new metadata_1.Metadata(METADATA_KEY.NAMED_TAG, namedOrTagged);
40
- }
41
- else if (namedOrTagged instanceof metadata_1.Metadata) {
42
- metadataItem = namedOrTagged;
43
- }
44
- if (metadataItem !== null) {
45
- this.metadata.push(metadataItem);
46
- }
47
- }
48
- Target.prototype.hasTag = function (key) {
49
- for (var _i = 0, _a = this.metadata; _i < _a.length; _i++) {
50
- var m = _a[_i];
51
- if (m.key === key) {
52
- return true;
53
- }
54
- }
55
- return false;
56
- };
57
- Target.prototype.isArray = function () {
58
- return this.hasTag(METADATA_KEY.MULTI_INJECT_TAG);
59
- };
60
- Target.prototype.matchesArray = function (name) {
61
- return this.matchesTag(METADATA_KEY.MULTI_INJECT_TAG)(name);
62
- };
63
- Target.prototype.isNamed = function () {
64
- return this.hasTag(METADATA_KEY.NAMED_TAG);
65
- };
66
- Target.prototype.isTagged = function () {
67
- return this.metadata.some(function (metadata) { return METADATA_KEY.NON_CUSTOM_TAG_KEYS.every(function (key) { return metadata.key !== key; }); });
68
- };
69
- Target.prototype.isOptional = function () {
70
- return this.matchesTag(METADATA_KEY.OPTIONAL_TAG)(true);
71
- };
72
- Target.prototype.getNamedTag = function () {
73
- if (this.isNamed()) {
74
- return this.metadata.filter(function (m) { return m.key === METADATA_KEY.NAMED_TAG; })[0];
75
- }
76
- return null;
77
- };
78
- Target.prototype.getCustomTags = function () {
79
- if (this.isTagged()) {
80
- return this.metadata.filter(function (metadata) { return METADATA_KEY.NON_CUSTOM_TAG_KEYS.every(function (key) { return metadata.key !== key; }); });
81
- }
82
- else {
83
- return null;
84
- }
85
- };
86
- Target.prototype.matchesNamedTag = function (name) {
87
- return this.matchesTag(METADATA_KEY.NAMED_TAG)(name);
88
- };
89
- Target.prototype.matchesTag = function (key) {
90
- var _this = this;
91
- return function (value) {
92
- for (var _i = 0, _a = _this.metadata; _i < _a.length; _i++) {
93
- var m = _a[_i];
94
- if (m.key === key && m.value === value) {
95
- return true;
96
- }
97
- }
98
- return false;
99
- };
100
- };
101
- return Target;
102
- }());
103
- exports.Target = Target;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.Target = void 0;
27
+ var METADATA_KEY = __importStar(require("../constants/metadata_keys"));
28
+ var id_1 = require("../utils/id");
29
+ var serialization_1 = require("../utils/serialization");
30
+ var metadata_1 = require("./metadata");
31
+ var queryable_string_1 = require("./queryable_string");
32
+ var Target = (function () {
33
+ function Target(type, identifier, serviceIdentifier, namedOrTagged) {
34
+ this.id = (0, id_1.id)();
35
+ this.type = type;
36
+ this.serviceIdentifier = serviceIdentifier;
37
+ var queryableName = typeof identifier === 'symbol' ? (0, serialization_1.getSymbolDescription)(identifier) : identifier;
38
+ this.name = new queryable_string_1.QueryableString(queryableName || '');
39
+ this.identifier = identifier;
40
+ this.metadata = new Array();
41
+ var metadataItem = null;
42
+ if (typeof namedOrTagged === 'string') {
43
+ metadataItem = new metadata_1.Metadata(METADATA_KEY.NAMED_TAG, namedOrTagged);
44
+ }
45
+ else if (namedOrTagged instanceof metadata_1.Metadata) {
46
+ metadataItem = namedOrTagged;
47
+ }
48
+ if (metadataItem !== null) {
49
+ this.metadata.push(metadataItem);
50
+ }
51
+ }
52
+ Target.prototype.hasTag = function (key) {
53
+ for (var _i = 0, _a = this.metadata; _i < _a.length; _i++) {
54
+ var m = _a[_i];
55
+ if (m.key === key) {
56
+ return true;
57
+ }
58
+ }
59
+ return false;
60
+ };
61
+ Target.prototype.isArray = function () {
62
+ return this.hasTag(METADATA_KEY.MULTI_INJECT_TAG);
63
+ };
64
+ Target.prototype.matchesArray = function (name) {
65
+ return this.matchesTag(METADATA_KEY.MULTI_INJECT_TAG)(name);
66
+ };
67
+ Target.prototype.isNamed = function () {
68
+ return this.hasTag(METADATA_KEY.NAMED_TAG);
69
+ };
70
+ Target.prototype.isTagged = function () {
71
+ return this.metadata.some(function (metadata) { return METADATA_KEY.NON_CUSTOM_TAG_KEYS.every(function (key) { return metadata.key !== key; }); });
72
+ };
73
+ Target.prototype.isOptional = function () {
74
+ return this.matchesTag(METADATA_KEY.OPTIONAL_TAG)(true);
75
+ };
76
+ Target.prototype.getNamedTag = function () {
77
+ if (this.isNamed()) {
78
+ return this.metadata.filter(function (m) { return m.key === METADATA_KEY.NAMED_TAG; })[0];
79
+ }
80
+ return null;
81
+ };
82
+ Target.prototype.getCustomTags = function () {
83
+ if (this.isTagged()) {
84
+ return this.metadata.filter(function (metadata) { return METADATA_KEY.NON_CUSTOM_TAG_KEYS.every(function (key) { return metadata.key !== key; }); });
85
+ }
86
+ else {
87
+ return null;
88
+ }
89
+ };
90
+ Target.prototype.matchesNamedTag = function (name) {
91
+ return this.matchesTag(METADATA_KEY.NAMED_TAG)(name);
92
+ };
93
+ Target.prototype.matchesTag = function (key) {
94
+ var _this = this;
95
+ return function (value) {
96
+ for (var _i = 0, _a = _this.metadata; _i < _a.length; _i++) {
97
+ var m = _a[_i];
98
+ if (m.key === key && m.value === value) {
99
+ return true;
100
+ }
101
+ }
102
+ return false;
103
+ };
104
+ };
105
+ return Target;
106
+ }());
107
+ exports.Target = Target;
@@ -1,3 +1,3 @@
1
- import { interfaces } from '../interfaces/interfaces';
2
- declare function resolveInstance<T>(binding: interfaces.Binding<T>, constr: interfaces.Newable<T>, childRequests: interfaces.Request[], resolveRequest: interfaces.ResolveRequestHandler): T | Promise<T>;
3
- export { resolveInstance };
1
+ import { interfaces } from '../interfaces/interfaces';
2
+ declare function resolveInstance<T>(binding: interfaces.Binding<T>, constr: interfaces.Newable<T>, childRequests: interfaces.Request[], resolveRequest: interfaces.ResolveRequestHandler): T | Promise<T>;
3
+ export { resolveInstance };