@loopback/context 1.23.5 → 2.0.0
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/CHANGELOG.md +81 -0
- package/dist/binding-config.js +1 -1
- package/dist/binding-config.js.map +1 -1
- package/dist/binding-filter.d.ts +19 -1
- package/dist/binding-filter.js +40 -7
- package/dist/binding-filter.js.map +1 -1
- package/dist/binding-inspector.js +12 -11
- package/dist/binding-inspector.js.map +1 -1
- package/dist/binding-sorter.js +2 -2
- package/dist/binding-sorter.js.map +1 -1
- package/dist/binding.d.ts +42 -4
- package/dist/binding.js +40 -10
- package/dist/binding.js.map +1 -1
- package/dist/context-event.d.ts +23 -0
- package/dist/context-event.js +7 -0
- package/dist/context-event.js.map +1 -0
- package/dist/context-observer.d.ts +1 -36
- package/dist/context-subscription.d.ts +147 -0
- package/dist/context-subscription.js +336 -0
- package/dist/context-subscription.js.map +1 -0
- package/dist/context-tag-indexer.d.ts +42 -0
- package/dist/context-tag-indexer.js +134 -0
- package/dist/context-tag-indexer.js.map +1 -0
- package/dist/context-view.d.ts +2 -1
- package/dist/context-view.js +5 -2
- package/dist/context-view.js.map +1 -1
- package/dist/context.d.ts +35 -66
- package/dist/context.js +78 -250
- package/dist/context.js.map +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/inject-config.js +3 -3
- package/dist/inject-config.js.map +1 -1
- package/dist/inject.d.ts +2 -2
- package/dist/inject.js +18 -11
- package/dist/inject.js.map +1 -1
- package/dist/interception-proxy.d.ts +15 -3
- package/dist/interception-proxy.js +20 -4
- package/dist/interception-proxy.js.map +1 -1
- package/dist/interceptor-chain.js +5 -2
- package/dist/interceptor-chain.js.map +1 -1
- package/dist/interceptor.d.ts +6 -0
- package/dist/interceptor.js +38 -12
- package/dist/interceptor.js.map +1 -1
- package/dist/invocation.d.ts +20 -2
- package/dist/invocation.js +14 -12
- package/dist/invocation.js.map +1 -1
- package/dist/keys.d.ts +6 -0
- package/dist/keys.js +6 -0
- package/dist/keys.js.map +1 -1
- package/dist/resolution-session.d.ts +1 -0
- package/dist/resolution-session.js +13 -6
- package/dist/resolution-session.js.map +1 -1
- package/dist/resolver.js +13 -8
- package/dist/resolver.js.map +1 -1
- package/dist/value-promise.d.ts +1 -3
- package/package.json +9 -9
- package/src/binding-config.ts +1 -1
- package/src/binding-filter.ts +61 -9
- package/src/binding-inspector.ts +6 -8
- package/src/binding-sorter.ts +2 -2
- package/src/binding.ts +73 -9
- package/src/context-event.ts +30 -0
- package/src/context-observer.ts +1 -38
- package/src/context-subscription.ts +403 -0
- package/src/context-tag-indexer.ts +149 -0
- package/src/context-view.ts +3 -6
- package/src/context.ts +94 -293
- package/src/index.ts +5 -3
- package/src/inject-config.ts +3 -3
- package/src/inject.ts +19 -10
- package/src/interception-proxy.ts +25 -3
- package/src/interceptor-chain.ts +1 -1
- package/src/interceptor.ts +34 -8
- package/src/invocation.ts +26 -7
- package/src/keys.ts +7 -0
- package/src/resolution-session.ts +9 -5
- package/src/resolver.ts +5 -5
- package/src/value-promise.ts +1 -1
package/dist/context.js
CHANGED
|
@@ -3,40 +3,24 @@
|
|
|
3
3
|
// Node module: @loopback/context
|
|
4
4
|
// This file is licensed under the MIT License.
|
|
5
5
|
// License text available at https://opensource.org/licenses/MIT
|
|
6
|
-
var
|
|
7
|
-
|
|
8
|
-
var m = o[Symbol.asyncIterator], i;
|
|
9
|
-
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
10
|
-
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
11
|
-
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
12
8
|
};
|
|
13
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
const
|
|
10
|
+
const debug_1 = __importDefault(require("debug"));
|
|
15
11
|
const events_1 = require("events");
|
|
16
12
|
const uuid_1 = require("uuid");
|
|
17
13
|
const binding_1 = require("./binding");
|
|
18
14
|
const binding_config_1 = require("./binding-config");
|
|
19
15
|
const binding_filter_1 = require("./binding-filter");
|
|
20
16
|
const binding_key_1 = require("./binding-key");
|
|
17
|
+
const context_subscription_1 = require("./context-subscription");
|
|
18
|
+
const context_tag_indexer_1 = require("./context-tag-indexer");
|
|
21
19
|
const context_view_1 = require("./context-view");
|
|
22
20
|
const keys_1 = require("./keys");
|
|
23
21
|
const resolution_session_1 = require("./resolution-session");
|
|
24
22
|
const value_promise_1 = require("./value-promise");
|
|
25
|
-
|
|
26
|
-
* Polyfill Symbol.asyncIterator as required by TypeScript for Node 8.x.
|
|
27
|
-
* See https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-3.html
|
|
28
|
-
*/
|
|
29
|
-
if (!Symbol.asyncIterator) {
|
|
30
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
31
|
-
Symbol.asyncIterator = Symbol.for('Symbol.asyncIterator');
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* WARNING: This following import must happen after the polyfill. The
|
|
35
|
-
* `auto-import` by an IDE such as VSCode may move the import before the
|
|
36
|
-
* polyfill. It must be then fixed manually.
|
|
37
|
-
*/
|
|
38
|
-
const p_event_1 = require("p-event");
|
|
39
|
-
const debug = debugFactory('loopback:context');
|
|
23
|
+
const debug = debug_1.default('loopback:context');
|
|
40
24
|
/**
|
|
41
25
|
* Context provides an implementation of Inversion of Control (IoC) container
|
|
42
26
|
*/
|
|
@@ -69,24 +53,32 @@ class Context extends events_1.EventEmitter {
|
|
|
69
53
|
* Key to binding map as the internal registry
|
|
70
54
|
*/
|
|
71
55
|
this.registry = new Map();
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
this.
|
|
56
|
+
// The number of listeners can grow with the number of child contexts
|
|
57
|
+
// For example, each request can add a listener to the RestServer and the
|
|
58
|
+
// listener is removed when the request processing is finished.
|
|
59
|
+
// See https://github.com/strongloop/loopback-next/issues/4363
|
|
60
|
+
this.setMaxListeners(Infinity);
|
|
77
61
|
if (typeof _parent === 'string') {
|
|
78
62
|
name = _parent;
|
|
79
63
|
_parent = undefined;
|
|
80
64
|
}
|
|
81
65
|
this._parent = _parent;
|
|
82
|
-
this.name = name
|
|
66
|
+
this.name = (name !== null && name !== void 0 ? name : uuid_1.v1());
|
|
67
|
+
this.tagIndexer = new context_tag_indexer_1.ContextTagIndexer(this);
|
|
68
|
+
this.subscriptionManager = new context_subscription_1.ContextSubscriptionManager(this);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* @internal
|
|
72
|
+
* Getter for ContextSubscriptionManager
|
|
73
|
+
*/
|
|
74
|
+
get parent() {
|
|
75
|
+
return this._parent;
|
|
83
76
|
}
|
|
84
77
|
/**
|
|
85
78
|
* Wrap the debug statement so that it always print out the context name
|
|
86
79
|
* as the prefix
|
|
87
80
|
* @param args - Arguments for the debug
|
|
88
81
|
*/
|
|
89
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
90
82
|
_debug(...args) {
|
|
91
83
|
/* istanbul ignore if */
|
|
92
84
|
if (!debug.enabled)
|
|
@@ -100,161 +92,20 @@ class Context extends events_1.EventEmitter {
|
|
|
100
92
|
}
|
|
101
93
|
}
|
|
102
94
|
/**
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
-
*
|
|
95
|
+
* A strongly-typed method to emit context events
|
|
96
|
+
* @param type Event type
|
|
97
|
+
* @param event Context event
|
|
106
98
|
*/
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
return;
|
|
110
|
-
this.addParentEventListener('bind');
|
|
111
|
-
this.addParentEventListener('unbind');
|
|
112
|
-
// The following are two async functions. Returned promises are ignored as
|
|
113
|
-
// they are long-running background tasks.
|
|
114
|
-
this.startNotificationTask().catch(err => {
|
|
115
|
-
this.handleNotificationError(err);
|
|
116
|
-
});
|
|
117
|
-
let ctx = this._parent;
|
|
118
|
-
while (ctx) {
|
|
119
|
-
ctx.setupEventHandlersIfNeeded();
|
|
120
|
-
ctx = ctx._parent;
|
|
121
|
-
}
|
|
99
|
+
emitEvent(type, event) {
|
|
100
|
+
this.emit(type, event);
|
|
122
101
|
}
|
|
123
102
|
/**
|
|
124
|
-
*
|
|
125
|
-
*
|
|
126
|
-
* @param event - Event name
|
|
103
|
+
* Emit an `error` event
|
|
104
|
+
* @param err Error
|
|
127
105
|
*/
|
|
128
|
-
|
|
129
|
-
if (this._parent == null)
|
|
130
|
-
return;
|
|
131
|
-
// Keep track of parent event listeners so that we can remove them
|
|
132
|
-
this._parentEventListeners = this._parentEventListeners || new Map();
|
|
133
|
-
if (this._parentEventListeners.has(event))
|
|
134
|
-
return;
|
|
135
|
-
const parentEventListener = (binding, context) => {
|
|
136
|
-
// Propagate the event to this context only if the binding key does not
|
|
137
|
-
// exist in this context. The parent binding is shadowed if there is a
|
|
138
|
-
// binding with the same key in this one.
|
|
139
|
-
if (this.contains(binding.key)) {
|
|
140
|
-
this._debug('Event %s %s is not re-emitted from %s to %s', event, binding.key, context.name, this.name);
|
|
141
|
-
return;
|
|
142
|
-
}
|
|
143
|
-
this._debug('Re-emitting %s %s from %s to %s', event, binding.key, context.name, this.name);
|
|
144
|
-
this.emit(event, binding, context);
|
|
145
|
-
};
|
|
146
|
-
this._parentEventListeners.set(event, parentEventListener);
|
|
147
|
-
// Listen on the parent context events
|
|
148
|
-
this._parent.on(event, parentEventListener);
|
|
149
|
-
}
|
|
150
|
-
/**
|
|
151
|
-
* Handle errors caught during the notification of observers
|
|
152
|
-
* @param err - Error
|
|
153
|
-
*/
|
|
154
|
-
handleNotificationError(err) {
|
|
155
|
-
// Bubbling up the error event over the context chain
|
|
156
|
-
// until we find an error listener
|
|
157
|
-
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
158
|
-
let ctx = this;
|
|
159
|
-
while (ctx) {
|
|
160
|
-
if (ctx.listenerCount('error') === 0) {
|
|
161
|
-
// No error listener found, try its parent
|
|
162
|
-
ctx = ctx._parent;
|
|
163
|
-
continue;
|
|
164
|
-
}
|
|
165
|
-
this._debug('Emitting error to context %s', ctx.name, err);
|
|
166
|
-
ctx.emit('error', err);
|
|
167
|
-
return;
|
|
168
|
-
}
|
|
169
|
-
// No context with error listeners found
|
|
170
|
-
this._debug('No error handler is configured for the context chain', err);
|
|
171
|
-
// Let it crash now by emitting an error event
|
|
106
|
+
emitError(err) {
|
|
172
107
|
this.emit('error', err);
|
|
173
108
|
}
|
|
174
|
-
/**
|
|
175
|
-
* Start a background task to listen on context events and notify observers
|
|
176
|
-
*/
|
|
177
|
-
startNotificationTask() {
|
|
178
|
-
// Set up listeners on `bind` and `unbind` for notifications
|
|
179
|
-
this.setupNotification('bind', 'unbind');
|
|
180
|
-
// Create an async iterator for the `notification` event as a queue
|
|
181
|
-
this.notificationQueue = p_event_1.iterator(this, 'notification');
|
|
182
|
-
return this.processNotifications();
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* Process notification events as they arrive on the queue
|
|
186
|
-
*/
|
|
187
|
-
async processNotifications() {
|
|
188
|
-
var e_1, _a;
|
|
189
|
-
const events = this.notificationQueue;
|
|
190
|
-
if (events == null)
|
|
191
|
-
return;
|
|
192
|
-
try {
|
|
193
|
-
for (var events_2 = __asyncValues(events), events_2_1; events_2_1 = await events_2.next(), !events_2_1.done;) {
|
|
194
|
-
const { eventType, binding, context, observers } = events_2_1.value;
|
|
195
|
-
// The loop will happen asynchronously upon events
|
|
196
|
-
try {
|
|
197
|
-
// The execution of observers happen in the Promise micro-task queue
|
|
198
|
-
await this.notifyObservers(eventType, binding, context, observers);
|
|
199
|
-
this.pendingNotifications--;
|
|
200
|
-
this._debug('Observers notified for %s of binding %s', eventType, binding.key);
|
|
201
|
-
this.emit('observersNotified', { eventType, binding });
|
|
202
|
-
}
|
|
203
|
-
catch (err) {
|
|
204
|
-
this.pendingNotifications--;
|
|
205
|
-
this._debug('Error caught from observers', err);
|
|
206
|
-
// Errors caught from observers. Emit it to the current context.
|
|
207
|
-
// If no error listeners are registered, crash the process.
|
|
208
|
-
this.emit('error', err);
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
213
|
-
finally {
|
|
214
|
-
try {
|
|
215
|
-
if (events_2_1 && !events_2_1.done && (_a = events_2.return)) await _a.call(events_2);
|
|
216
|
-
}
|
|
217
|
-
finally { if (e_1) throw e_1.error; }
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
/**
|
|
221
|
-
* Listen on given event types and emit `notification` event. This method
|
|
222
|
-
* merge multiple event types into one for notification.
|
|
223
|
-
* @param eventTypes - Context event types
|
|
224
|
-
*/
|
|
225
|
-
setupNotification(...eventTypes) {
|
|
226
|
-
for (const eventType of eventTypes) {
|
|
227
|
-
this.on(eventType, (binding, context) => {
|
|
228
|
-
// No need to schedule notifications if no observers are present
|
|
229
|
-
if (!this.observers || this.observers.size === 0)
|
|
230
|
-
return;
|
|
231
|
-
// Track pending events
|
|
232
|
-
this.pendingNotifications++;
|
|
233
|
-
// Take a snapshot of current observers to ensure notifications of this
|
|
234
|
-
// event will only be sent to current ones. Emit a new event to notify
|
|
235
|
-
// current context observers.
|
|
236
|
-
this.emit('notification', {
|
|
237
|
-
eventType,
|
|
238
|
-
binding,
|
|
239
|
-
context,
|
|
240
|
-
observers: new Set(this.observers),
|
|
241
|
-
});
|
|
242
|
-
});
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
|
-
/**
|
|
246
|
-
* Wait until observers are notified for all of currently pending notification
|
|
247
|
-
* events.
|
|
248
|
-
*
|
|
249
|
-
* This method is for test only to perform assertions after observers are
|
|
250
|
-
* notified for relevant events.
|
|
251
|
-
*/
|
|
252
|
-
async waitUntilPendingNotificationsDone(timeout) {
|
|
253
|
-
const count = this.pendingNotifications;
|
|
254
|
-
if (count === 0)
|
|
255
|
-
return;
|
|
256
|
-
await p_event_1.multiple(this, 'observersNotified', { count, timeout });
|
|
257
|
-
}
|
|
258
109
|
/**
|
|
259
110
|
* Create a binding with the given key in the context. If a locked binding
|
|
260
111
|
* already exists with the same key, an error will be thrown.
|
|
@@ -272,22 +123,27 @@ class Context extends events_1.EventEmitter {
|
|
|
272
123
|
* @param binding - The configured binding to be added
|
|
273
124
|
*/
|
|
274
125
|
add(binding) {
|
|
126
|
+
var _a;
|
|
275
127
|
const key = binding.key;
|
|
276
128
|
this._debug('[%s] Adding binding: %s', key);
|
|
277
129
|
let existingBinding;
|
|
278
130
|
const keyExists = this.registry.has(key);
|
|
279
131
|
if (keyExists) {
|
|
280
132
|
existingBinding = this.registry.get(key);
|
|
281
|
-
const bindingIsLocked = existingBinding
|
|
133
|
+
const bindingIsLocked = (_a = existingBinding) === null || _a === void 0 ? void 0 : _a.isLocked;
|
|
282
134
|
if (bindingIsLocked)
|
|
283
135
|
throw new Error(`Cannot rebind key "${key}" to a locked binding`);
|
|
284
136
|
}
|
|
285
137
|
this.registry.set(key, binding);
|
|
286
138
|
if (existingBinding !== binding) {
|
|
287
139
|
if (existingBinding != null) {
|
|
288
|
-
this.
|
|
140
|
+
this.emitEvent('unbind', {
|
|
141
|
+
binding: existingBinding,
|
|
142
|
+
context: this,
|
|
143
|
+
type: 'unbind',
|
|
144
|
+
});
|
|
289
145
|
}
|
|
290
|
-
this.
|
|
146
|
+
this.emitEvent('bind', { binding, context: this, type: 'bind' });
|
|
291
147
|
}
|
|
292
148
|
return this;
|
|
293
149
|
}
|
|
@@ -386,16 +242,17 @@ class Context extends events_1.EventEmitter {
|
|
|
386
242
|
* @returns true if the binding key is found and removed from this context
|
|
387
243
|
*/
|
|
388
244
|
unbind(key) {
|
|
245
|
+
var _a;
|
|
389
246
|
this._debug('Unbind %s', key);
|
|
390
247
|
key = binding_key_1.BindingKey.validate(key);
|
|
391
248
|
const binding = this.registry.get(key);
|
|
392
249
|
// If not found, return `false`
|
|
393
250
|
if (binding == null)
|
|
394
251
|
return false;
|
|
395
|
-
if (binding
|
|
252
|
+
if ((_a = binding) === null || _a === void 0 ? void 0 : _a.isLocked)
|
|
396
253
|
throw new Error(`Cannot unbind key "${key}" of a locked binding`);
|
|
397
254
|
this.registry.delete(key);
|
|
398
|
-
this.
|
|
255
|
+
this.emitEvent('unbind', { binding, context: this, type: 'unbind' });
|
|
399
256
|
return true;
|
|
400
257
|
}
|
|
401
258
|
/**
|
|
@@ -403,19 +260,14 @@ class Context extends events_1.EventEmitter {
|
|
|
403
260
|
* @param observer - Context observer instance or function
|
|
404
261
|
*/
|
|
405
262
|
subscribe(observer) {
|
|
406
|
-
|
|
407
|
-
this.setupEventHandlersIfNeeded();
|
|
408
|
-
this.observers.add(observer);
|
|
409
|
-
return new ContextSubscription(this, observer);
|
|
263
|
+
return this.subscriptionManager.subscribe(observer);
|
|
410
264
|
}
|
|
411
265
|
/**
|
|
412
266
|
* Remove the context event observer from the context
|
|
413
267
|
* @param observer - Context event observer
|
|
414
268
|
*/
|
|
415
269
|
unsubscribe(observer) {
|
|
416
|
-
|
|
417
|
-
return false;
|
|
418
|
-
return this.observers.delete(observer);
|
|
270
|
+
return this.subscriptionManager.unsubscribe(observer);
|
|
419
271
|
}
|
|
420
272
|
/**
|
|
421
273
|
* Close the context: clear observers, stop notifications, and remove event
|
|
@@ -428,29 +280,15 @@ class Context extends events_1.EventEmitter {
|
|
|
428
280
|
*/
|
|
429
281
|
close() {
|
|
430
282
|
this._debug('Closing context...');
|
|
431
|
-
this.
|
|
432
|
-
|
|
433
|
-
// Cancel the notification iterator
|
|
434
|
-
this.notificationQueue.return(undefined).catch(err => {
|
|
435
|
-
this.handleNotificationError(err);
|
|
436
|
-
});
|
|
437
|
-
this.notificationQueue = undefined;
|
|
438
|
-
}
|
|
439
|
-
if (this._parent && this._parentEventListeners) {
|
|
440
|
-
for (const [event, listener] of this._parentEventListeners) {
|
|
441
|
-
this._parent.removeListener(event, listener);
|
|
442
|
-
}
|
|
443
|
-
this._parentEventListeners = undefined;
|
|
444
|
-
}
|
|
283
|
+
this.subscriptionManager.close();
|
|
284
|
+
this.tagIndexer.close();
|
|
445
285
|
}
|
|
446
286
|
/**
|
|
447
287
|
* Check if an observer is subscribed to this context
|
|
448
288
|
* @param observer - Context observer
|
|
449
289
|
*/
|
|
450
290
|
isSubscribed(observer) {
|
|
451
|
-
|
|
452
|
-
return false;
|
|
453
|
-
return this.observers.has(observer);
|
|
291
|
+
return this.subscriptionManager.isSubscribed(observer);
|
|
454
292
|
}
|
|
455
293
|
/**
|
|
456
294
|
* Create a view of the context chain with the given binding filter
|
|
@@ -462,29 +300,6 @@ class Context extends events_1.EventEmitter {
|
|
|
462
300
|
view.open();
|
|
463
301
|
return view;
|
|
464
302
|
}
|
|
465
|
-
/**
|
|
466
|
-
* Publish an event to the registered observers. Please note the
|
|
467
|
-
* notification is queued and performed asynchronously so that we allow fluent
|
|
468
|
-
* APIs such as `ctx.bind('key').to(...).tag(...);` and give observers the
|
|
469
|
-
* fully populated binding.
|
|
470
|
-
*
|
|
471
|
-
* @param eventType - Event names: `bind` or `unbind`
|
|
472
|
-
* @param binding - Binding bound or unbound
|
|
473
|
-
* @param context - Owner context
|
|
474
|
-
* @param observers - Current set of context observers
|
|
475
|
-
*/
|
|
476
|
-
async notifyObservers(eventType, binding, context, observers = this.observers) {
|
|
477
|
-
if (!observers || observers.size === 0)
|
|
478
|
-
return;
|
|
479
|
-
for (const observer of observers) {
|
|
480
|
-
if (typeof observer === 'function') {
|
|
481
|
-
await observer(eventType, binding, context);
|
|
482
|
-
}
|
|
483
|
-
else if (!observer.filter || observer.filter(binding)) {
|
|
484
|
-
await observer.observe(eventType, binding, context);
|
|
485
|
-
}
|
|
486
|
-
}
|
|
487
|
-
}
|
|
488
303
|
/**
|
|
489
304
|
* Check if a binding exists with the given key in the local context without
|
|
490
305
|
* delegating to the parent context
|
|
@@ -533,6 +348,10 @@ class Context extends events_1.EventEmitter {
|
|
|
533
348
|
* - return `false` to exclude it.
|
|
534
349
|
*/
|
|
535
350
|
find(pattern) {
|
|
351
|
+
// Optimize if the binding filter is for tags
|
|
352
|
+
if (typeof pattern === 'function' && binding_filter_1.isBindingTagFilter(pattern)) {
|
|
353
|
+
return this._findByTagIndex(pattern.bindingTagPattern);
|
|
354
|
+
}
|
|
536
355
|
const bindings = [];
|
|
537
356
|
const filter = binding_filter_1.filterByKey(pattern);
|
|
538
357
|
for (const b of this.registry.values()) {
|
|
@@ -559,6 +378,16 @@ class Context extends events_1.EventEmitter {
|
|
|
559
378
|
findByTag(tagFilter) {
|
|
560
379
|
return this.find(binding_filter_1.filterByTag(tagFilter));
|
|
561
380
|
}
|
|
381
|
+
/**
|
|
382
|
+
* Find bindings by tag leveraging indexes
|
|
383
|
+
* @param tag - Tag name pattern or name/value pairs
|
|
384
|
+
*/
|
|
385
|
+
_findByTagIndex(tag) {
|
|
386
|
+
var _a;
|
|
387
|
+
const currentBindings = this.tagIndexer.findByTagIndex(tag);
|
|
388
|
+
const parentBindings = this._parent && ((_a = this._parent) === null || _a === void 0 ? void 0 : _a._findByTagIndex(tag));
|
|
389
|
+
return this._mergeWithParent(currentBindings, parentBindings);
|
|
390
|
+
}
|
|
562
391
|
_mergeWithParent(childList, parentList) {
|
|
563
392
|
if (!parentList)
|
|
564
393
|
return childList;
|
|
@@ -583,6 +412,7 @@ class Context extends events_1.EventEmitter {
|
|
|
583
412
|
return valueOrPromise;
|
|
584
413
|
}
|
|
585
414
|
getBinding(key, options) {
|
|
415
|
+
var _a;
|
|
586
416
|
key = binding_key_1.BindingKey.validate(key);
|
|
587
417
|
const binding = this.registry.get(key);
|
|
588
418
|
if (binding) {
|
|
@@ -591,7 +421,7 @@ class Context extends events_1.EventEmitter {
|
|
|
591
421
|
if (this._parent) {
|
|
592
422
|
return this._parent.getBinding(key, options);
|
|
593
423
|
}
|
|
594
|
-
if (options
|
|
424
|
+
if ((_a = options) === null || _a === void 0 ? void 0 : _a.optional)
|
|
595
425
|
return undefined;
|
|
596
426
|
throw new Error(`The key '${key}' is not bound to any value in context ${this.name}`);
|
|
597
427
|
}
|
|
@@ -664,31 +494,29 @@ class Context extends events_1.EventEmitter {
|
|
|
664
494
|
* Create a plain JSON object for the context
|
|
665
495
|
*/
|
|
666
496
|
toJSON() {
|
|
667
|
-
const
|
|
497
|
+
const bindings = {};
|
|
668
498
|
for (const [k, v] of this.registry) {
|
|
669
|
-
|
|
499
|
+
bindings[k] = v.toJSON();
|
|
500
|
+
}
|
|
501
|
+
return bindings;
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* Inspect the context and dump out a JSON object representing the context
|
|
505
|
+
* hierarchy
|
|
506
|
+
*/
|
|
507
|
+
// TODO(rfeng): Evaluate https://nodejs.org/api/util.html#util_custom_inspection_functions_on_objects
|
|
508
|
+
inspect() {
|
|
509
|
+
const json = {
|
|
510
|
+
name: this.name,
|
|
511
|
+
bindings: this.toJSON(),
|
|
512
|
+
};
|
|
513
|
+
if (this._parent) {
|
|
514
|
+
json.parent = this._parent.inspect();
|
|
670
515
|
}
|
|
671
516
|
return json;
|
|
672
517
|
}
|
|
673
518
|
}
|
|
674
519
|
exports.Context = Context;
|
|
675
|
-
/**
|
|
676
|
-
* An implementation of `Subscription` interface for context events
|
|
677
|
-
*/
|
|
678
|
-
class ContextSubscription {
|
|
679
|
-
constructor(context, observer) {
|
|
680
|
-
this.context = context;
|
|
681
|
-
this.observer = observer;
|
|
682
|
-
this._closed = false;
|
|
683
|
-
}
|
|
684
|
-
unsubscribe() {
|
|
685
|
-
this.context.unsubscribe(this.observer);
|
|
686
|
-
this._closed = true;
|
|
687
|
-
}
|
|
688
|
-
get closed() {
|
|
689
|
-
return this._closed;
|
|
690
|
-
}
|
|
691
|
-
}
|
|
692
520
|
/**
|
|
693
521
|
* Policy to control if a binding should be created for the context
|
|
694
522
|
*/
|
package/dist/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,16 +7,18 @@ export * from './binding-inspector';
|
|
|
7
7
|
export * from './binding-key';
|
|
8
8
|
export * from './binding-sorter';
|
|
9
9
|
export * from './context';
|
|
10
|
+
export * from './context-event';
|
|
10
11
|
export * from './context-observer';
|
|
12
|
+
export * from './context-subscription';
|
|
11
13
|
export * from './context-view';
|
|
12
|
-
export * from './interceptor-chain';
|
|
13
14
|
export * from './inject';
|
|
15
|
+
export * from './inject-config';
|
|
14
16
|
export * from './interception-proxy';
|
|
15
17
|
export * from './interceptor';
|
|
16
|
-
export * from './
|
|
18
|
+
export * from './interceptor-chain';
|
|
19
|
+
export * from './invocation';
|
|
17
20
|
export * from './keys';
|
|
18
21
|
export * from './provider';
|
|
19
22
|
export * from './resolution-session';
|
|
20
23
|
export * from './resolver';
|
|
21
24
|
export * from './value-promise';
|
|
22
|
-
export * from './invocation';
|
package/dist/index.js
CHANGED
|
@@ -16,15 +16,16 @@ __export(require("./binding-inspector"));
|
|
|
16
16
|
__export(require("./binding-key"));
|
|
17
17
|
__export(require("./binding-sorter"));
|
|
18
18
|
__export(require("./context"));
|
|
19
|
+
__export(require("./context-subscription"));
|
|
19
20
|
__export(require("./context-view"));
|
|
20
|
-
__export(require("./interceptor-chain"));
|
|
21
21
|
__export(require("./inject"));
|
|
22
|
+
__export(require("./inject-config"));
|
|
22
23
|
__export(require("./interception-proxy"));
|
|
23
24
|
__export(require("./interceptor"));
|
|
24
|
-
__export(require("./
|
|
25
|
+
__export(require("./interceptor-chain"));
|
|
26
|
+
__export(require("./invocation"));
|
|
25
27
|
__export(require("./keys"));
|
|
26
28
|
__export(require("./resolution-session"));
|
|
27
29
|
__export(require("./resolver"));
|
|
28
30
|
__export(require("./value-promise"));
|
|
29
|
-
__export(require("./invocation"));
|
|
30
31
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;;;;AAEhE,wCAAmC;AACnC,+BAA0B;AAC1B,sCAAiC;AACjC,yCAAoC;AACpC,sCAAiC;AACjC,yCAAoC;AACpC,mCAA8B;AAC9B,sCAAiC;AACjC,+BAA0B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;;;;AAEhE,wCAAmC;AACnC,+BAA0B;AAC1B,sCAAiC;AACjC,yCAAoC;AACpC,sCAAiC;AACjC,yCAAoC;AACpC,mCAA8B;AAC9B,sCAAiC;AACjC,+BAA0B;AAG1B,4CAAuC;AACvC,oCAA+B;AAC/B,8BAAyB;AACzB,qCAAgC;AAChC,0CAAqC;AACrC,mCAA8B;AAC9B,yCAAoC;AACpC,kCAA6B;AAC7B,4BAAuB;AAEvB,0CAAqC;AACrC,gCAA2B;AAC3B,qCAAgC"}
|
package/dist/inject-config.js
CHANGED
|
@@ -43,7 +43,7 @@ const value_promise_1 = require("./value-promise");
|
|
|
43
43
|
* @param metadata - Optional metadata to help the injection
|
|
44
44
|
*/
|
|
45
45
|
function config(propertyPath, metadata) {
|
|
46
|
-
propertyPath = propertyPath
|
|
46
|
+
propertyPath = (propertyPath !== null && propertyPath !== void 0 ? propertyPath : '');
|
|
47
47
|
if (typeof propertyPath === 'object') {
|
|
48
48
|
metadata = propertyPath;
|
|
49
49
|
propertyPath = '';
|
|
@@ -59,7 +59,7 @@ exports.config = config;
|
|
|
59
59
|
* @param metadata - Injection metadata
|
|
60
60
|
*/
|
|
61
61
|
config.getter = function injectConfigGetter(propertyPath, metadata) {
|
|
62
|
-
propertyPath = propertyPath
|
|
62
|
+
propertyPath = (propertyPath !== null && propertyPath !== void 0 ? propertyPath : '');
|
|
63
63
|
if (typeof propertyPath === 'object') {
|
|
64
64
|
metadata = propertyPath;
|
|
65
65
|
propertyPath = '';
|
|
@@ -74,7 +74,7 @@ exports.config = config;
|
|
|
74
74
|
* @param metadata - Injection metadata
|
|
75
75
|
*/
|
|
76
76
|
config.view = function injectConfigView(propertyPath, metadata) {
|
|
77
|
-
propertyPath = propertyPath
|
|
77
|
+
propertyPath = (propertyPath !== null && propertyPath !== void 0 ? propertyPath : '');
|
|
78
78
|
if (typeof propertyPath === 'object') {
|
|
79
79
|
metadata = propertyPath;
|
|
80
80
|
propertyPath = '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inject-config.js","sourceRoot":"","sources":["../src/inject-config.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;AAGhE,+CAAyD;AAEzD,iDAA2C;AAC3C,qCAAgF;AAChF,6DAAuD;AACvD,mDAAgE;AAmBhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,SAAgB,MAAM,CACpB,YAA+C,EAC/C,QAAkC;IAElC,YAAY,
|
|
1
|
+
{"version":3,"file":"inject-config.js","sourceRoot":"","sources":["../src/inject-config.ts"],"names":[],"mappings":"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"}
|
package/dist/inject.d.ts
CHANGED
|
@@ -157,7 +157,7 @@ export declare namespace inject {
|
|
|
157
157
|
* @param bindingKey - Binding key
|
|
158
158
|
* @param metadata - Metadata for the injection
|
|
159
159
|
*/
|
|
160
|
-
const binding: (bindingKey
|
|
160
|
+
const binding: (bindingKey?: string | import("./binding-key").BindingKey<unknown> | undefined, metadata?: InjectBindingMetadata | undefined) => (target: Object, member: string | undefined, methodDescriptorOrParameterIndex?: number | TypedPropertyDescriptor<any> | undefined) => void;
|
|
161
161
|
/**
|
|
162
162
|
* Inject an array of values by a tag pattern string or regexp
|
|
163
163
|
*
|
|
@@ -172,7 +172,7 @@ export declare namespace inject {
|
|
|
172
172
|
* @param bindingTag - Tag name, regex or object
|
|
173
173
|
* @param metadata - Optional metadata to help the injection
|
|
174
174
|
*/
|
|
175
|
-
const tag: (bindingTag: string | RegExp |
|
|
175
|
+
const tag: (bindingTag: string | RegExp | Record<string, any>, metadata?: InjectionMetadata | undefined) => (target: Object, member: string | undefined, methodDescriptorOrParameterIndex?: number | TypedPropertyDescriptor<any> | undefined) => void;
|
|
176
176
|
/**
|
|
177
177
|
* Inject matching bound values by the filter function
|
|
178
178
|
*
|