@decohere/crucible 0.0.1-dev.90 → 0.0.1-dev.91
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.
- package/commonjs/src/models/service-registration.model.js +2 -5
- package/commonjs/src/services/service-registry.js +10 -4
- package/es6/src/models/service-registration.model.js +2 -5
- package/es6/src/services/service-registry.js +10 -4
- package/package.json +3 -3
- package/types/src/models/service-registration.model.d.ts +1 -0
|
@@ -19,12 +19,9 @@ class ServiceRegistration {
|
|
|
19
19
|
this.scope = scope;
|
|
20
20
|
this.isInstance = isInstance;
|
|
21
21
|
}
|
|
22
|
-
isEqual(other) {
|
|
23
|
-
if (other.isInstance) {
|
|
24
|
-
return false;
|
|
25
|
-
}
|
|
22
|
+
/** Same class, or the same instance object. */ isEqual(other) {
|
|
26
23
|
return this.type === other.type;
|
|
27
24
|
}
|
|
28
25
|
}
|
|
29
26
|
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NydWNpYmxlL3NyYy9tb2RlbHMvc2VydmljZS1yZWdpc3RyYXRpb24ubW9kZWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb25zdHJ1Y3RhYmxlLCBGdW5jdGlvblR5cGUgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL3JlZmxlY3Rpb25cIjtcbmltcG9ydCB0eXBlIHsgU2NvcGUgfSBmcm9tIFwiLi4vdHlwZXMvdHlwZXMuanNcIjtcbmltcG9ydCB0eXBlIHsgUmVnaXN0cmF0aW9uS2V5IH0gZnJvbSBcIi4vcmVnaXN0cmF0aW9uLWtleS5tb2RlbC5qc1wiO1xuXG5leHBvcnQgY2xhc3MgU2VydmljZVJlZ2lzdHJhdGlvbiB7XG5cdHB1YmxpYyBrZXk6IFJlZ2lzdHJhdGlvbktleTtcblx0cHVibGljIHNjb3BlOiBTY29wZTtcblx0cHVibGljIHR5cGU6IENvbnN0cnVjdGFibGUgfCBGdW5jdGlvblR5cGUgfCBvYmplY3Q7XG5cdHB1YmxpYyBpc0luc3RhbmNlOiBib29sZWFuO1xuXG5cdHB1YmxpYyBjb25zdHJ1Y3Rvcihcblx0XHRrZXk6IFJlZ2lzdHJhdGlvbktleSxcblx0XHR0eXBlOiBDb25zdHJ1Y3RhYmxlIHwgRnVuY3Rpb25UeXBlIHwgb2JqZWN0LFxuXHRcdHNjb3BlOiBTY29wZSxcblx0XHRpc0luc3RhbmNlOiBib29sZWFuLFxuXHQpIHtcblx0XHR0aGlzLmtleSA9IGtleTtcblx0XHR0aGlzLnR5cGUgPSB0eXBlO1xuXHRcdHRoaXMuc2NvcGUgPSBzY29wZTtcblx0XHR0aGlzLmlzSW5zdGFuY2UgPSBpc0luc3RhbmNlO1xuXHR9XG5cblx0LyoqIFNhbWUgY2xhc3MsIG9yIHRoZSBzYW1lIGluc3RhbmNlIG9iamVjdC4gKi9cblx0cHVibGljIGlzRXF1YWwob3RoZXI6IFNlcnZpY2VSZWdpc3RyYXRpb24pIHtcblx0XHRyZXR1cm4gdGhpcy50eXBlID09PSBvdGhlci50eXBlO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiU2VydmljZVJlZ2lzdHJhdGlvbiIsImtleSIsInNjb3BlIiwidHlwZSIsImlzSW5zdGFuY2UiLCJpc0VxdWFsIiwib3RoZXIiXSwibWFwcGluZ3MiOiI7Ozs7K0JBSWFBOzs7ZUFBQUE7OztBQUFOLE1BQU1BO0lBQ0xDLElBQXFCO0lBQ3JCQyxNQUFhO0lBQ2JDLEtBQTRDO0lBQzVDQyxXQUFvQjtJQUUzQixZQUNDSCxHQUFvQixFQUNwQkUsSUFBMkMsRUFDM0NELEtBQVksRUFDWkUsVUFBbUIsQ0FDbEI7UUFDRCxJQUFJLENBQUNILEdBQUcsR0FBR0E7UUFDWCxJQUFJLENBQUNFLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNELEtBQUssR0FBR0E7UUFDYixJQUFJLENBQUNFLFVBQVUsR0FBR0E7SUFDbkI7SUFFQSw2Q0FBNkMsR0FDN0MsQUFBT0MsUUFBUUMsS0FBMEIsRUFBRTtRQUMxQyxPQUFPLElBQUksQ0FBQ0gsSUFBSSxLQUFLRyxNQUFNSCxJQUFJO0lBQ2hDO0FBQ0QifQ==
|
|
@@ -18,15 +18,21 @@ class ServiceRegistry {
|
|
|
18
18
|
}
|
|
19
19
|
registerType(scope, options) {
|
|
20
20
|
const registration = this.createRegistrationFrom(scope, options);
|
|
21
|
+
// Override means "this key now resolves to this", e.g. a test fake: replace every binding.
|
|
22
|
+
if (options.override) {
|
|
23
|
+
this.setRegistration(registration.key, [
|
|
24
|
+
registration
|
|
25
|
+
]);
|
|
26
|
+
return registration;
|
|
27
|
+
}
|
|
21
28
|
const existing = this.getRegistrations(registration.key) ?? [];
|
|
22
29
|
const duplicate = existing.find((reg)=>reg.isEqual(registration));
|
|
23
|
-
if (duplicate != null
|
|
30
|
+
if (duplicate != null) {
|
|
24
31
|
throw new _errors.RegistrationError(`A service is already registered for key ${registration.key}. Use builder.override.registerSingleton() (or the matching register* method) to replace it.`);
|
|
25
32
|
}
|
|
26
|
-
const remaining = existing.filter((reg)=>!reg.isEqual(registration));
|
|
27
33
|
this.setRegistration(registration.key, [
|
|
28
34
|
registration,
|
|
29
|
-
...
|
|
35
|
+
...existing
|
|
30
36
|
]);
|
|
31
37
|
return registration;
|
|
32
38
|
}
|
|
@@ -60,4 +66,4 @@ class ServiceRegistry {
|
|
|
60
66
|
}
|
|
61
67
|
}
|
|
62
68
|
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NydWNpYmxlL3NyYy9zZXJ2aWNlcy9zZXJ2aWNlLXJlZ2lzdHJ5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29uc3RydWN0YWJsZSwgRnVuY3Rpb25UeXBlIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9yZWZsZWN0aW9uXCI7XG5pbXBvcnQgeyBSZWdpc3RyYXRpb25LZXkgfSBmcm9tIFwiLi4vbW9kZWxzL3JlZ2lzdHJhdGlvbi1rZXkubW9kZWwuanNcIjtcbmltcG9ydCB7IFNlcnZpY2VSZWdpc3RyYXRpb24gfSBmcm9tIFwiLi4vbW9kZWxzL3NlcnZpY2UtcmVnaXN0cmF0aW9uLm1vZGVsLmpzXCI7XG5pbXBvcnQgeyBSZWdpc3RyYXRpb25FcnJvciB9IGZyb20gXCIuLi90eXBlcy9lcnJvcnMuanNcIjtcbmltcG9ydCB0eXBlIHsgU2NvcGUgfSBmcm9tIFwiLi4vdHlwZXMvdHlwZXMuanNcIjtcblxuZXhwb3J0IHR5cGUgUmVnaXN0ZXJUeXBlT3B0aW9ucyA9IHtcblx0dHlwZU9yS2V5OiBzdHJpbmcgfCBzeW1ib2wgfCBDb25zdHJ1Y3RhYmxlIHwgRnVuY3Rpb25UeXBlO1xuXHR0eXBlT3JJbnN0YW5jZT86IENvbnN0cnVjdGFibGUgfCBGdW5jdGlvblR5cGUgfCBvYmplY3Q7XG5cdG92ZXJyaWRlPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlUmVnaXN0cnkge1xuXHRwcml2YXRlIHJlYWRvbmx5IHJlZ2lzdHJhdGlvbnM6IE1hcDxzdHJpbmcsIFNlcnZpY2VSZWdpc3RyYXRpb25bXT47XG5cdHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJlbnQ/
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NydWNpYmxlL3NyYy9zZXJ2aWNlcy9zZXJ2aWNlLXJlZ2lzdHJ5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29uc3RydWN0YWJsZSwgRnVuY3Rpb25UeXBlIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9yZWZsZWN0aW9uXCI7XG5pbXBvcnQgeyBSZWdpc3RyYXRpb25LZXkgfSBmcm9tIFwiLi4vbW9kZWxzL3JlZ2lzdHJhdGlvbi1rZXkubW9kZWwuanNcIjtcbmltcG9ydCB7IFNlcnZpY2VSZWdpc3RyYXRpb24gfSBmcm9tIFwiLi4vbW9kZWxzL3NlcnZpY2UtcmVnaXN0cmF0aW9uLm1vZGVsLmpzXCI7XG5pbXBvcnQgeyBSZWdpc3RyYXRpb25FcnJvciB9IGZyb20gXCIuLi90eXBlcy9lcnJvcnMuanNcIjtcbmltcG9ydCB0eXBlIHsgU2NvcGUgfSBmcm9tIFwiLi4vdHlwZXMvdHlwZXMuanNcIjtcblxuZXhwb3J0IHR5cGUgUmVnaXN0ZXJUeXBlT3B0aW9ucyA9IHtcblx0dHlwZU9yS2V5OiBzdHJpbmcgfCBzeW1ib2wgfCBDb25zdHJ1Y3RhYmxlIHwgRnVuY3Rpb25UeXBlO1xuXHR0eXBlT3JJbnN0YW5jZT86IENvbnN0cnVjdGFibGUgfCBGdW5jdGlvblR5cGUgfCBvYmplY3Q7XG5cdG92ZXJyaWRlPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlUmVnaXN0cnkge1xuXHRwcml2YXRlIHJlYWRvbmx5IHJlZ2lzdHJhdGlvbnM6IE1hcDxzdHJpbmcsIFNlcnZpY2VSZWdpc3RyYXRpb25bXT47XG5cdHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJlbnQ/OiBTZXJ2aWNlUmVnaXN0cnkpIHtcblx0XHR0aGlzLnJlZ2lzdHJhdGlvbnMgPSBuZXcgTWFwKHBhcmVudD8ucmVnaXN0cmF0aW9ucyk7XG5cdH1cblxuXHRwdWJsaWMgcmVnaXN0ZXJUeXBlKHNjb3BlOiBTY29wZSwgb3B0aW9uczogUmVnaXN0ZXJUeXBlT3B0aW9ucykge1xuXHRcdGNvbnN0IHJlZ2lzdHJhdGlvbiA9IHRoaXMuY3JlYXRlUmVnaXN0cmF0aW9uRnJvbShzY29wZSwgb3B0aW9ucyk7XG5cdFx0Ly8gT3ZlcnJpZGUgbWVhbnMgXCJ0aGlzIGtleSBub3cgcmVzb2x2ZXMgdG8gdGhpc1wiLCBlLmcuIGEgdGVzdCBmYWtlOiByZXBsYWNlIGV2ZXJ5IGJpbmRpbmcuXG5cdFx0aWYgKG9wdGlvbnMub3ZlcnJpZGUpIHtcblx0XHRcdHRoaXMuc2V0UmVnaXN0cmF0aW9uKHJlZ2lzdHJhdGlvbi5rZXksIFtyZWdpc3RyYXRpb25dKTtcblx0XHRcdHJldHVybiByZWdpc3RyYXRpb247XG5cdFx0fVxuXG5cdFx0Y29uc3QgZXhpc3RpbmcgPSB0aGlzLmdldFJlZ2lzdHJhdGlvbnMocmVnaXN0cmF0aW9uLmtleSkgPz8gW107XG5cdFx0Y29uc3QgZHVwbGljYXRlID0gZXhpc3RpbmcuZmluZCgocmVnKSA9PiByZWcuaXNFcXVhbChyZWdpc3RyYXRpb24pKTtcblx0XHRpZiAoZHVwbGljYXRlICE9IG51bGwpIHtcblx0XHRcdHRocm93IG5ldyBSZWdpc3RyYXRpb25FcnJvcihcblx0XHRcdFx0YEEgc2VydmljZSBpcyBhbHJlYWR5IHJlZ2lzdGVyZWQgZm9yIGtleSAke3JlZ2lzdHJhdGlvbi5rZXl9LiBVc2UgYnVpbGRlci5vdmVycmlkZS5yZWdpc3RlclNpbmdsZXRvbigpIChvciB0aGUgbWF0Y2hpbmcgcmVnaXN0ZXIqIG1ldGhvZCkgdG8gcmVwbGFjZSBpdC5gLFxuXHRcdFx0KTtcblx0XHR9XG5cblx0XHR0aGlzLnNldFJlZ2lzdHJhdGlvbihyZWdpc3RyYXRpb24ua2V5LCBbcmVnaXN0cmF0aW9uLCAuLi5leGlzdGluZ10pO1xuXHRcdHJldHVybiByZWdpc3RyYXRpb247XG5cdH1cblxuXHRwdWJsaWMgcmVwbGFjZVR5cGUoc2NvcGU6IFNjb3BlLCBvcHRpb25zOiBSZWdpc3RlclR5cGVPcHRpb25zKSB7XG5cdFx0Y29uc3QgcmVnaXN0cmF0aW9uID0gdGhpcy5jcmVhdGVSZWdpc3RyYXRpb25Gcm9tKHNjb3BlLCBvcHRpb25zKTtcblx0XHR0aGlzLnNldFJlZ2lzdHJhdGlvbihyZWdpc3RyYXRpb24ua2V5LCBbcmVnaXN0cmF0aW9uXSk7XG5cdFx0cmV0dXJuIHJlZ2lzdHJhdGlvbjtcblx0fVxuXG5cdHB1YmxpYyBnZXRSZWdpc3RyYXRpb24oa2V5OiBzdHJpbmcgfCBzeW1ib2wgfCBDb25zdHJ1Y3RhYmxlKTogU2VydmljZVJlZ2lzdHJhdGlvbltdIHtcblx0XHRjb25zdCBrZXlWYWwgPSBuZXcgUmVnaXN0cmF0aW9uS2V5KGtleSkudmFsdWU7XG5cdFx0Y29uc3QgcmVnaXN0cmF0aW9uID0gdGhpcy5yZWdpc3RyYXRpb25zLmdldChrZXlWYWwpO1xuXHRcdHJldHVybiByZWdpc3RyYXRpb247XG5cdH1cblxuXHRwcml2YXRlIGNyZWF0ZVJlZ2lzdHJhdGlvbkZyb20oc2NvcGU6IFNjb3BlLCBvcHRpb25zOiBSZWdpc3RlclR5cGVPcHRpb25zKSB7XG5cdFx0Y29uc3QgeyB0eXBlT3JLZXksIHR5cGVPckluc3RhbmNlIH0gPSBvcHRpb25zO1xuXHRcdGNvbnN0IGlzS2V5ID0gdHlwZW9mIHR5cGVPcktleSA9PT0gXCJzdHJpbmdcIiB8fCB0eXBlb2YgdHlwZU9yS2V5ID09PSBcInN5bWJvbFwiO1xuXHRcdGNvbnN0IGlzSW5zdGFuY2UgPSB0eXBlb2YgdHlwZU9ySW5zdGFuY2UgPT09IFwib2JqZWN0XCI7XG5cdFx0Y29uc3Qga2V5ID0gbmV3IFJlZ2lzdHJhdGlvbktleSghaXNLZXkgPyB0eXBlT3JLZXkubmFtZSA6IHR5cGVPcktleSk7XG5cdFx0Y29uc3QgdHlwZSA9IGlzSW5zdGFuY2UgPyB0eXBlT3JJbnN0YW5jZSA6IGlzS2V5ID8gdHlwZU9ySW5zdGFuY2UgOiB0eXBlT3JLZXk7XG5cdFx0Y29uc3QgcmVnaXN0cmF0aW9uID0gbmV3IFNlcnZpY2VSZWdpc3RyYXRpb24oa2V5LCB0eXBlLCBzY29wZSwgaXNJbnN0YW5jZSk7XG5cdFx0cmV0dXJuIHJlZ2lzdHJhdGlvbjtcblx0fVxuXG5cdHByaXZhdGUgZ2V0UmVnaXN0cmF0aW9ucyhrZXk6IFJlZ2lzdHJhdGlvbktleSkge1xuXHRcdGNvbnN0IHZhbHVlID0ga2V5LnZhbHVlO1xuXHRcdHJldHVybiB0aGlzLnJlZ2lzdHJhdGlvbnMuZ2V0KHZhbHVlKTtcblx0fVxuXG5cdHByaXZhdGUgc2V0UmVnaXN0cmF0aW9uKGtleTogUmVnaXN0cmF0aW9uS2V5LCByZWdpc3RyYXRpb25zOiBTZXJ2aWNlUmVnaXN0cmF0aW9uW10pIHtcblx0XHR0aGlzLnJlZ2lzdHJhdGlvbnMuc2V0KGtleS52YWx1ZSwgcmVnaXN0cmF0aW9ucyk7XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJTZXJ2aWNlUmVnaXN0cnkiLCJyZWdpc3RyYXRpb25zIiwicGFyZW50IiwiTWFwIiwicmVnaXN0ZXJUeXBlIiwic2NvcGUiLCJvcHRpb25zIiwicmVnaXN0cmF0aW9uIiwiY3JlYXRlUmVnaXN0cmF0aW9uRnJvbSIsIm92ZXJyaWRlIiwic2V0UmVnaXN0cmF0aW9uIiwia2V5IiwiZXhpc3RpbmciLCJnZXRSZWdpc3RyYXRpb25zIiwiZHVwbGljYXRlIiwiZmluZCIsInJlZyIsImlzRXF1YWwiLCJSZWdpc3RyYXRpb25FcnJvciIsInJlcGxhY2VUeXBlIiwiZ2V0UmVnaXN0cmF0aW9uIiwia2V5VmFsIiwiUmVnaXN0cmF0aW9uS2V5IiwidmFsdWUiLCJnZXQiLCJ0eXBlT3JLZXkiLCJ0eXBlT3JJbnN0YW5jZSIsImlzS2V5IiwiaXNJbnN0YW5jZSIsIm5hbWUiLCJ0eXBlIiwiU2VydmljZVJlZ2lzdHJhdGlvbiIsInNldCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFZYUE7OztlQUFBQTs7O3NDQVhtQjswQ0FDSTt3QkFDRjtBQVMzQixNQUFNQTtJQUNLQyxjQUFrRDtJQUNuRSxZQUFtQkMsTUFBd0IsQ0FBRTtRQUM1QyxJQUFJLENBQUNELGFBQWEsR0FBRyxJQUFJRSxJQUFJRCxRQUFRRDtJQUN0QztJQUVPRyxhQUFhQyxLQUFZLEVBQUVDLE9BQTRCLEVBQUU7UUFDL0QsTUFBTUMsZUFBZSxJQUFJLENBQUNDLHNCQUFzQixDQUFDSCxPQUFPQztRQUN4RCwyRkFBMkY7UUFDM0YsSUFBSUEsUUFBUUcsUUFBUSxFQUFFO1lBQ3JCLElBQUksQ0FBQ0MsZUFBZSxDQUFDSCxhQUFhSSxHQUFHLEVBQUU7Z0JBQUNKO2FBQWE7WUFDckQsT0FBT0E7UUFDUjtRQUVBLE1BQU1LLFdBQVcsSUFBSSxDQUFDQyxnQkFBZ0IsQ0FBQ04sYUFBYUksR0FBRyxLQUFLLEVBQUU7UUFDOUQsTUFBTUcsWUFBWUYsU0FBU0csSUFBSSxDQUFDLENBQUNDLE1BQVFBLElBQUlDLE9BQU8sQ0FBQ1Y7UUFDckQsSUFBSU8sYUFBYSxNQUFNO1lBQ3RCLE1BQU0sSUFBSUkseUJBQWlCLENBQzFCLENBQUMsd0NBQXdDLEVBQUVYLGFBQWFJLEdBQUcsQ0FBQyw0RkFBNEYsQ0FBQztRQUUzSjtRQUVBLElBQUksQ0FBQ0QsZUFBZSxDQUFDSCxhQUFhSSxHQUFHLEVBQUU7WUFBQ0o7ZUFBaUJLO1NBQVM7UUFDbEUsT0FBT0w7SUFDUjtJQUVPWSxZQUFZZCxLQUFZLEVBQUVDLE9BQTRCLEVBQUU7UUFDOUQsTUFBTUMsZUFBZSxJQUFJLENBQUNDLHNCQUFzQixDQUFDSCxPQUFPQztRQUN4RCxJQUFJLENBQUNJLGVBQWUsQ0FBQ0gsYUFBYUksR0FBRyxFQUFFO1lBQUNKO1NBQWE7UUFDckQsT0FBT0E7SUFDUjtJQUVPYSxnQkFBZ0JULEdBQW9DLEVBQXlCO1FBQ25GLE1BQU1VLFNBQVMsSUFBSUMscUNBQWUsQ0FBQ1gsS0FBS1ksS0FBSztRQUM3QyxNQUFNaEIsZUFBZSxJQUFJLENBQUNOLGFBQWEsQ0FBQ3VCLEdBQUcsQ0FBQ0g7UUFDNUMsT0FBT2Q7SUFDUjtJQUVRQyx1QkFBdUJILEtBQVksRUFBRUMsT0FBNEIsRUFBRTtRQUMxRSxNQUFNLEVBQUVtQixTQUFTLEVBQUVDLGNBQWMsRUFBRSxHQUFHcEI7UUFDdEMsTUFBTXFCLFFBQVEsT0FBT0YsY0FBYyxZQUFZLE9BQU9BLGNBQWM7UUFDcEUsTUFBTUcsYUFBYSxPQUFPRixtQkFBbUI7UUFDN0MsTUFBTWYsTUFBTSxJQUFJVyxxQ0FBZSxDQUFDLENBQUNLLFFBQVFGLFVBQVVJLElBQUksR0FBR0o7UUFDMUQsTUFBTUssT0FBT0YsYUFBYUYsaUJBQWlCQyxRQUFRRCxpQkFBaUJEO1FBQ3BFLE1BQU1sQixlQUFlLElBQUl3Qiw2Q0FBbUIsQ0FBQ3BCLEtBQUttQixNQUFNekIsT0FBT3VCO1FBQy9ELE9BQU9yQjtJQUNSO0lBRVFNLGlCQUFpQkYsR0FBb0IsRUFBRTtRQUM5QyxNQUFNWSxRQUFRWixJQUFJWSxLQUFLO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDdEIsYUFBYSxDQUFDdUIsR0FBRyxDQUFDRDtJQUMvQjtJQUVRYixnQkFBZ0JDLEdBQW9CLEVBQUVWLGFBQW9DLEVBQUU7UUFDbkYsSUFBSSxDQUFDQSxhQUFhLENBQUMrQixHQUFHLENBQUNyQixJQUFJWSxLQUFLLEVBQUV0QjtJQUNuQztBQUNEIn0=
|
|
@@ -9,12 +9,9 @@ export class ServiceRegistration {
|
|
|
9
9
|
this.scope = scope;
|
|
10
10
|
this.isInstance = isInstance;
|
|
11
11
|
}
|
|
12
|
-
isEqual(other) {
|
|
13
|
-
if (other.isInstance) {
|
|
14
|
-
return false;
|
|
15
|
-
}
|
|
12
|
+
/** Same class, or the same instance object. */ isEqual(other) {
|
|
16
13
|
return this.type === other.type;
|
|
17
14
|
}
|
|
18
15
|
}
|
|
19
16
|
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NydWNpYmxlL3NyYy9tb2RlbHMvc2VydmljZS1yZWdpc3RyYXRpb24ubW9kZWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb25zdHJ1Y3RhYmxlLCBGdW5jdGlvblR5cGUgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL3JlZmxlY3Rpb25cIjtcbmltcG9ydCB0eXBlIHsgU2NvcGUgfSBmcm9tIFwiLi4vdHlwZXMvdHlwZXMuanNcIjtcbmltcG9ydCB0eXBlIHsgUmVnaXN0cmF0aW9uS2V5IH0gZnJvbSBcIi4vcmVnaXN0cmF0aW9uLWtleS5tb2RlbC5qc1wiO1xuXG5leHBvcnQgY2xhc3MgU2VydmljZVJlZ2lzdHJhdGlvbiB7XG5cdHB1YmxpYyBrZXk6IFJlZ2lzdHJhdGlvbktleTtcblx0cHVibGljIHNjb3BlOiBTY29wZTtcblx0cHVibGljIHR5cGU6IENvbnN0cnVjdGFibGUgfCBGdW5jdGlvblR5cGUgfCBvYmplY3Q7XG5cdHB1YmxpYyBpc0luc3RhbmNlOiBib29sZWFuO1xuXG5cdHB1YmxpYyBjb25zdHJ1Y3Rvcihcblx0XHRrZXk6IFJlZ2lzdHJhdGlvbktleSxcblx0XHR0eXBlOiBDb25zdHJ1Y3RhYmxlIHwgRnVuY3Rpb25UeXBlIHwgb2JqZWN0LFxuXHRcdHNjb3BlOiBTY29wZSxcblx0XHRpc0luc3RhbmNlOiBib29sZWFuLFxuXHQpIHtcblx0XHR0aGlzLmtleSA9IGtleTtcblx0XHR0aGlzLnR5cGUgPSB0eXBlO1xuXHRcdHRoaXMuc2NvcGUgPSBzY29wZTtcblx0XHR0aGlzLmlzSW5zdGFuY2UgPSBpc0luc3RhbmNlO1xuXHR9XG5cblx0LyoqIFNhbWUgY2xhc3MsIG9yIHRoZSBzYW1lIGluc3RhbmNlIG9iamVjdC4gKi9cblx0cHVibGljIGlzRXF1YWwob3RoZXI6IFNlcnZpY2VSZWdpc3RyYXRpb24pIHtcblx0XHRyZXR1cm4gdGhpcy50eXBlID09PSBvdGhlci50eXBlO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiU2VydmljZVJlZ2lzdHJhdGlvbiIsImtleSIsInNjb3BlIiwidHlwZSIsImlzSW5zdGFuY2UiLCJpc0VxdWFsIiwib3RoZXIiXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sTUFBTUE7SUFDTEMsSUFBcUI7SUFDckJDLE1BQWE7SUFDYkMsS0FBNEM7SUFDNUNDLFdBQW9CO0lBRTNCLFlBQ0NILEdBQW9CLEVBQ3BCRSxJQUEyQyxFQUMzQ0QsS0FBWSxFQUNaRSxVQUFtQixDQUNsQjtRQUNELElBQUksQ0FBQ0gsR0FBRyxHQUFHQTtRQUNYLElBQUksQ0FBQ0UsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0QsS0FBSyxHQUFHQTtRQUNiLElBQUksQ0FBQ0UsVUFBVSxHQUFHQTtJQUNuQjtJQUVBLDZDQUE2QyxHQUM3QyxBQUFPQyxRQUFRQyxLQUEwQixFQUFFO1FBQzFDLE9BQU8sSUFBSSxDQUFDSCxJQUFJLEtBQUtHLE1BQU1ILElBQUk7SUFDaEM7QUFDRCJ9
|
|
@@ -8,15 +8,21 @@ export class ServiceRegistry {
|
|
|
8
8
|
}
|
|
9
9
|
registerType(scope, options) {
|
|
10
10
|
const registration = this.createRegistrationFrom(scope, options);
|
|
11
|
+
// Override means "this key now resolves to this", e.g. a test fake: replace every binding.
|
|
12
|
+
if (options.override) {
|
|
13
|
+
this.setRegistration(registration.key, [
|
|
14
|
+
registration
|
|
15
|
+
]);
|
|
16
|
+
return registration;
|
|
17
|
+
}
|
|
11
18
|
const existing = this.getRegistrations(registration.key) ?? [];
|
|
12
19
|
const duplicate = existing.find((reg)=>reg.isEqual(registration));
|
|
13
|
-
if (duplicate != null
|
|
20
|
+
if (duplicate != null) {
|
|
14
21
|
throw new RegistrationError(`A service is already registered for key ${registration.key}. Use builder.override.registerSingleton() (or the matching register* method) to replace it.`);
|
|
15
22
|
}
|
|
16
|
-
const remaining = existing.filter((reg)=>!reg.isEqual(registration));
|
|
17
23
|
this.setRegistration(registration.key, [
|
|
18
24
|
registration,
|
|
19
|
-
...
|
|
25
|
+
...existing
|
|
20
26
|
]);
|
|
21
27
|
return registration;
|
|
22
28
|
}
|
|
@@ -50,4 +56,4 @@ export class ServiceRegistry {
|
|
|
50
56
|
}
|
|
51
57
|
}
|
|
52
58
|
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NydWNpYmxlL3NyYy9zZXJ2aWNlcy9zZXJ2aWNlLXJlZ2lzdHJ5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29uc3RydWN0YWJsZSwgRnVuY3Rpb25UeXBlIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9yZWZsZWN0aW9uXCI7XG5pbXBvcnQgeyBSZWdpc3RyYXRpb25LZXkgfSBmcm9tIFwiLi4vbW9kZWxzL3JlZ2lzdHJhdGlvbi1rZXkubW9kZWwuanNcIjtcbmltcG9ydCB7IFNlcnZpY2VSZWdpc3RyYXRpb24gfSBmcm9tIFwiLi4vbW9kZWxzL3NlcnZpY2UtcmVnaXN0cmF0aW9uLm1vZGVsLmpzXCI7XG5pbXBvcnQgeyBSZWdpc3RyYXRpb25FcnJvciB9IGZyb20gXCIuLi90eXBlcy9lcnJvcnMuanNcIjtcbmltcG9ydCB0eXBlIHsgU2NvcGUgfSBmcm9tIFwiLi4vdHlwZXMvdHlwZXMuanNcIjtcblxuZXhwb3J0IHR5cGUgUmVnaXN0ZXJUeXBlT3B0aW9ucyA9IHtcblx0dHlwZU9yS2V5OiBzdHJpbmcgfCBzeW1ib2wgfCBDb25zdHJ1Y3RhYmxlIHwgRnVuY3Rpb25UeXBlO1xuXHR0eXBlT3JJbnN0YW5jZT86IENvbnN0cnVjdGFibGUgfCBGdW5jdGlvblR5cGUgfCBvYmplY3Q7XG5cdG92ZXJyaWRlPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlUmVnaXN0cnkge1xuXHRwcml2YXRlIHJlYWRvbmx5IHJlZ2lzdHJhdGlvbnM6IE1hcDxzdHJpbmcsIFNlcnZpY2VSZWdpc3RyYXRpb25bXT47XG5cdHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJlbnQ/
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NydWNpYmxlL3NyYy9zZXJ2aWNlcy9zZXJ2aWNlLXJlZ2lzdHJ5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29uc3RydWN0YWJsZSwgRnVuY3Rpb25UeXBlIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9yZWZsZWN0aW9uXCI7XG5pbXBvcnQgeyBSZWdpc3RyYXRpb25LZXkgfSBmcm9tIFwiLi4vbW9kZWxzL3JlZ2lzdHJhdGlvbi1rZXkubW9kZWwuanNcIjtcbmltcG9ydCB7IFNlcnZpY2VSZWdpc3RyYXRpb24gfSBmcm9tIFwiLi4vbW9kZWxzL3NlcnZpY2UtcmVnaXN0cmF0aW9uLm1vZGVsLmpzXCI7XG5pbXBvcnQgeyBSZWdpc3RyYXRpb25FcnJvciB9IGZyb20gXCIuLi90eXBlcy9lcnJvcnMuanNcIjtcbmltcG9ydCB0eXBlIHsgU2NvcGUgfSBmcm9tIFwiLi4vdHlwZXMvdHlwZXMuanNcIjtcblxuZXhwb3J0IHR5cGUgUmVnaXN0ZXJUeXBlT3B0aW9ucyA9IHtcblx0dHlwZU9yS2V5OiBzdHJpbmcgfCBzeW1ib2wgfCBDb25zdHJ1Y3RhYmxlIHwgRnVuY3Rpb25UeXBlO1xuXHR0eXBlT3JJbnN0YW5jZT86IENvbnN0cnVjdGFibGUgfCBGdW5jdGlvblR5cGUgfCBvYmplY3Q7XG5cdG92ZXJyaWRlPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlUmVnaXN0cnkge1xuXHRwcml2YXRlIHJlYWRvbmx5IHJlZ2lzdHJhdGlvbnM6IE1hcDxzdHJpbmcsIFNlcnZpY2VSZWdpc3RyYXRpb25bXT47XG5cdHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJlbnQ/OiBTZXJ2aWNlUmVnaXN0cnkpIHtcblx0XHR0aGlzLnJlZ2lzdHJhdGlvbnMgPSBuZXcgTWFwKHBhcmVudD8ucmVnaXN0cmF0aW9ucyk7XG5cdH1cblxuXHRwdWJsaWMgcmVnaXN0ZXJUeXBlKHNjb3BlOiBTY29wZSwgb3B0aW9uczogUmVnaXN0ZXJUeXBlT3B0aW9ucykge1xuXHRcdGNvbnN0IHJlZ2lzdHJhdGlvbiA9IHRoaXMuY3JlYXRlUmVnaXN0cmF0aW9uRnJvbShzY29wZSwgb3B0aW9ucyk7XG5cdFx0Ly8gT3ZlcnJpZGUgbWVhbnMgXCJ0aGlzIGtleSBub3cgcmVzb2x2ZXMgdG8gdGhpc1wiLCBlLmcuIGEgdGVzdCBmYWtlOiByZXBsYWNlIGV2ZXJ5IGJpbmRpbmcuXG5cdFx0aWYgKG9wdGlvbnMub3ZlcnJpZGUpIHtcblx0XHRcdHRoaXMuc2V0UmVnaXN0cmF0aW9uKHJlZ2lzdHJhdGlvbi5rZXksIFtyZWdpc3RyYXRpb25dKTtcblx0XHRcdHJldHVybiByZWdpc3RyYXRpb247XG5cdFx0fVxuXG5cdFx0Y29uc3QgZXhpc3RpbmcgPSB0aGlzLmdldFJlZ2lzdHJhdGlvbnMocmVnaXN0cmF0aW9uLmtleSkgPz8gW107XG5cdFx0Y29uc3QgZHVwbGljYXRlID0gZXhpc3RpbmcuZmluZCgocmVnKSA9PiByZWcuaXNFcXVhbChyZWdpc3RyYXRpb24pKTtcblx0XHRpZiAoZHVwbGljYXRlICE9IG51bGwpIHtcblx0XHRcdHRocm93IG5ldyBSZWdpc3RyYXRpb25FcnJvcihcblx0XHRcdFx0YEEgc2VydmljZSBpcyBhbHJlYWR5IHJlZ2lzdGVyZWQgZm9yIGtleSAke3JlZ2lzdHJhdGlvbi5rZXl9LiBVc2UgYnVpbGRlci5vdmVycmlkZS5yZWdpc3RlclNpbmdsZXRvbigpIChvciB0aGUgbWF0Y2hpbmcgcmVnaXN0ZXIqIG1ldGhvZCkgdG8gcmVwbGFjZSBpdC5gLFxuXHRcdFx0KTtcblx0XHR9XG5cblx0XHR0aGlzLnNldFJlZ2lzdHJhdGlvbihyZWdpc3RyYXRpb24ua2V5LCBbcmVnaXN0cmF0aW9uLCAuLi5leGlzdGluZ10pO1xuXHRcdHJldHVybiByZWdpc3RyYXRpb247XG5cdH1cblxuXHRwdWJsaWMgcmVwbGFjZVR5cGUoc2NvcGU6IFNjb3BlLCBvcHRpb25zOiBSZWdpc3RlclR5cGVPcHRpb25zKSB7XG5cdFx0Y29uc3QgcmVnaXN0cmF0aW9uID0gdGhpcy5jcmVhdGVSZWdpc3RyYXRpb25Gcm9tKHNjb3BlLCBvcHRpb25zKTtcblx0XHR0aGlzLnNldFJlZ2lzdHJhdGlvbihyZWdpc3RyYXRpb24ua2V5LCBbcmVnaXN0cmF0aW9uXSk7XG5cdFx0cmV0dXJuIHJlZ2lzdHJhdGlvbjtcblx0fVxuXG5cdHB1YmxpYyBnZXRSZWdpc3RyYXRpb24oa2V5OiBzdHJpbmcgfCBzeW1ib2wgfCBDb25zdHJ1Y3RhYmxlKTogU2VydmljZVJlZ2lzdHJhdGlvbltdIHtcblx0XHRjb25zdCBrZXlWYWwgPSBuZXcgUmVnaXN0cmF0aW9uS2V5KGtleSkudmFsdWU7XG5cdFx0Y29uc3QgcmVnaXN0cmF0aW9uID0gdGhpcy5yZWdpc3RyYXRpb25zLmdldChrZXlWYWwpO1xuXHRcdHJldHVybiByZWdpc3RyYXRpb247XG5cdH1cblxuXHRwcml2YXRlIGNyZWF0ZVJlZ2lzdHJhdGlvbkZyb20oc2NvcGU6IFNjb3BlLCBvcHRpb25zOiBSZWdpc3RlclR5cGVPcHRpb25zKSB7XG5cdFx0Y29uc3QgeyB0eXBlT3JLZXksIHR5cGVPckluc3RhbmNlIH0gPSBvcHRpb25zO1xuXHRcdGNvbnN0IGlzS2V5ID0gdHlwZW9mIHR5cGVPcktleSA9PT0gXCJzdHJpbmdcIiB8fCB0eXBlb2YgdHlwZU9yS2V5ID09PSBcInN5bWJvbFwiO1xuXHRcdGNvbnN0IGlzSW5zdGFuY2UgPSB0eXBlb2YgdHlwZU9ySW5zdGFuY2UgPT09IFwib2JqZWN0XCI7XG5cdFx0Y29uc3Qga2V5ID0gbmV3IFJlZ2lzdHJhdGlvbktleSghaXNLZXkgPyB0eXBlT3JLZXkubmFtZSA6IHR5cGVPcktleSk7XG5cdFx0Y29uc3QgdHlwZSA9IGlzSW5zdGFuY2UgPyB0eXBlT3JJbnN0YW5jZSA6IGlzS2V5ID8gdHlwZU9ySW5zdGFuY2UgOiB0eXBlT3JLZXk7XG5cdFx0Y29uc3QgcmVnaXN0cmF0aW9uID0gbmV3IFNlcnZpY2VSZWdpc3RyYXRpb24oa2V5LCB0eXBlLCBzY29wZSwgaXNJbnN0YW5jZSk7XG5cdFx0cmV0dXJuIHJlZ2lzdHJhdGlvbjtcblx0fVxuXG5cdHByaXZhdGUgZ2V0UmVnaXN0cmF0aW9ucyhrZXk6IFJlZ2lzdHJhdGlvbktleSkge1xuXHRcdGNvbnN0IHZhbHVlID0ga2V5LnZhbHVlO1xuXHRcdHJldHVybiB0aGlzLnJlZ2lzdHJhdGlvbnMuZ2V0KHZhbHVlKTtcblx0fVxuXG5cdHByaXZhdGUgc2V0UmVnaXN0cmF0aW9uKGtleTogUmVnaXN0cmF0aW9uS2V5LCByZWdpc3RyYXRpb25zOiBTZXJ2aWNlUmVnaXN0cmF0aW9uW10pIHtcblx0XHR0aGlzLnJlZ2lzdHJhdGlvbnMuc2V0KGtleS52YWx1ZSwgcmVnaXN0cmF0aW9ucyk7XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJSZWdpc3RyYXRpb25LZXkiLCJTZXJ2aWNlUmVnaXN0cmF0aW9uIiwiUmVnaXN0cmF0aW9uRXJyb3IiLCJTZXJ2aWNlUmVnaXN0cnkiLCJyZWdpc3RyYXRpb25zIiwicGFyZW50IiwiTWFwIiwicmVnaXN0ZXJUeXBlIiwic2NvcGUiLCJvcHRpb25zIiwicmVnaXN0cmF0aW9uIiwiY3JlYXRlUmVnaXN0cmF0aW9uRnJvbSIsIm92ZXJyaWRlIiwic2V0UmVnaXN0cmF0aW9uIiwia2V5IiwiZXhpc3RpbmciLCJnZXRSZWdpc3RyYXRpb25zIiwiZHVwbGljYXRlIiwiZmluZCIsInJlZyIsImlzRXF1YWwiLCJyZXBsYWNlVHlwZSIsImdldFJlZ2lzdHJhdGlvbiIsImtleVZhbCIsInZhbHVlIiwiZ2V0IiwidHlwZU9yS2V5IiwidHlwZU9ySW5zdGFuY2UiLCJpc0tleSIsImlzSW5zdGFuY2UiLCJuYW1lIiwidHlwZSIsInNldCJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBU0EsZUFBZSxRQUFRLHNDQUFzQztBQUN0RSxTQUFTQyxtQkFBbUIsUUFBUSwwQ0FBMEM7QUFDOUUsU0FBU0MsaUJBQWlCLFFBQVEscUJBQXFCO0FBU3ZELE9BQU8sTUFBTUM7SUFDS0MsY0FBa0Q7SUFDbkUsWUFBbUJDLE1BQXdCLENBQUU7UUFDNUMsSUFBSSxDQUFDRCxhQUFhLEdBQUcsSUFBSUUsSUFBSUQsUUFBUUQ7SUFDdEM7SUFFT0csYUFBYUMsS0FBWSxFQUFFQyxPQUE0QixFQUFFO1FBQy9ELE1BQU1DLGVBQWUsSUFBSSxDQUFDQyxzQkFBc0IsQ0FBQ0gsT0FBT0M7UUFDeEQsMkZBQTJGO1FBQzNGLElBQUlBLFFBQVFHLFFBQVEsRUFBRTtZQUNyQixJQUFJLENBQUNDLGVBQWUsQ0FBQ0gsYUFBYUksR0FBRyxFQUFFO2dCQUFDSjthQUFhO1lBQ3JELE9BQU9BO1FBQ1I7UUFFQSxNQUFNSyxXQUFXLElBQUksQ0FBQ0MsZ0JBQWdCLENBQUNOLGFBQWFJLEdBQUcsS0FBSyxFQUFFO1FBQzlELE1BQU1HLFlBQVlGLFNBQVNHLElBQUksQ0FBQyxDQUFDQyxNQUFRQSxJQUFJQyxPQUFPLENBQUNWO1FBQ3JELElBQUlPLGFBQWEsTUFBTTtZQUN0QixNQUFNLElBQUlmLGtCQUNULENBQUMsd0NBQXdDLEVBQUVRLGFBQWFJLEdBQUcsQ0FBQyw0RkFBNEYsQ0FBQztRQUUzSjtRQUVBLElBQUksQ0FBQ0QsZUFBZSxDQUFDSCxhQUFhSSxHQUFHLEVBQUU7WUFBQ0o7ZUFBaUJLO1NBQVM7UUFDbEUsT0FBT0w7SUFDUjtJQUVPVyxZQUFZYixLQUFZLEVBQUVDLE9BQTRCLEVBQUU7UUFDOUQsTUFBTUMsZUFBZSxJQUFJLENBQUNDLHNCQUFzQixDQUFDSCxPQUFPQztRQUN4RCxJQUFJLENBQUNJLGVBQWUsQ0FBQ0gsYUFBYUksR0FBRyxFQUFFO1lBQUNKO1NBQWE7UUFDckQsT0FBT0E7SUFDUjtJQUVPWSxnQkFBZ0JSLEdBQW9DLEVBQXlCO1FBQ25GLE1BQU1TLFNBQVMsSUFBSXZCLGdCQUFnQmMsS0FBS1UsS0FBSztRQUM3QyxNQUFNZCxlQUFlLElBQUksQ0FBQ04sYUFBYSxDQUFDcUIsR0FBRyxDQUFDRjtRQUM1QyxPQUFPYjtJQUNSO0lBRVFDLHVCQUF1QkgsS0FBWSxFQUFFQyxPQUE0QixFQUFFO1FBQzFFLE1BQU0sRUFBRWlCLFNBQVMsRUFBRUMsY0FBYyxFQUFFLEdBQUdsQjtRQUN0QyxNQUFNbUIsUUFBUSxPQUFPRixjQUFjLFlBQVksT0FBT0EsY0FBYztRQUNwRSxNQUFNRyxhQUFhLE9BQU9GLG1CQUFtQjtRQUM3QyxNQUFNYixNQUFNLElBQUlkLGdCQUFnQixDQUFDNEIsUUFBUUYsVUFBVUksSUFBSSxHQUFHSjtRQUMxRCxNQUFNSyxPQUFPRixhQUFhRixpQkFBaUJDLFFBQVFELGlCQUFpQkQ7UUFDcEUsTUFBTWhCLGVBQWUsSUFBSVQsb0JBQW9CYSxLQUFLaUIsTUFBTXZCLE9BQU9xQjtRQUMvRCxPQUFPbkI7SUFDUjtJQUVRTSxpQkFBaUJGLEdBQW9CLEVBQUU7UUFDOUMsTUFBTVUsUUFBUVYsSUFBSVUsS0FBSztRQUN2QixPQUFPLElBQUksQ0FBQ3BCLGFBQWEsQ0FBQ3FCLEdBQUcsQ0FBQ0Q7SUFDL0I7SUFFUVgsZ0JBQWdCQyxHQUFvQixFQUFFVixhQUFvQyxFQUFFO1FBQ25GLElBQUksQ0FBQ0EsYUFBYSxDQUFDNEIsR0FBRyxDQUFDbEIsSUFBSVUsS0FBSyxFQUFFcEI7SUFDbkM7QUFDRCJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@decohere/crucible",
|
|
3
|
-
"version": "0.0.1-dev.
|
|
3
|
+
"version": "0.0.1-dev.91",
|
|
4
4
|
"description": "Lightweight dependency injection container with decorator-based wiring",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typescript",
|
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@decohere/nexus": "0.0.1-dev.
|
|
34
|
-
"@decohere/scribe": "0.0.1-dev.
|
|
33
|
+
"@decohere/nexus": "0.0.1-dev.91",
|
|
34
|
+
"@decohere/scribe": "0.0.1-dev.91"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {}
|
|
37
37
|
}
|
|
@@ -7,5 +7,6 @@ export declare class ServiceRegistration {
|
|
|
7
7
|
type: Constructable | FunctionType | object;
|
|
8
8
|
isInstance: boolean;
|
|
9
9
|
constructor(key: RegistrationKey, type: Constructable | FunctionType | object, scope: Scope, isInstance: boolean);
|
|
10
|
+
/** Same class, or the same instance object. */
|
|
10
11
|
isEqual(other: ServiceRegistration): boolean;
|
|
11
12
|
}
|