@loopback/context 1.23.4 → 1.25.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 (60) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/dist/binding-config.js +1 -1
  3. package/dist/binding-config.js.map +1 -1
  4. package/dist/binding-inspector.js +12 -11
  5. package/dist/binding-inspector.js.map +1 -1
  6. package/dist/binding-sorter.js +2 -2
  7. package/dist/binding-sorter.js.map +1 -1
  8. package/dist/binding.d.ts +13 -7
  9. package/dist/binding.js +26 -9
  10. package/dist/binding.js.map +1 -1
  11. package/dist/context-view.d.ts +1 -1
  12. package/dist/context-view.js +5 -2
  13. package/dist/context-view.js.map +1 -1
  14. package/dist/context.d.ts +6 -1
  15. package/dist/context.js +33 -10
  16. package/dist/context.js.map +1 -1
  17. package/dist/index.d.ts +3 -3
  18. package/dist/index.js +3 -3
  19. package/dist/index.js.map +1 -1
  20. package/dist/inject-config.js +3 -3
  21. package/dist/inject-config.js.map +1 -1
  22. package/dist/inject.d.ts +1 -1
  23. package/dist/inject.js +18 -11
  24. package/dist/inject.js.map +1 -1
  25. package/dist/interception-proxy.d.ts +15 -3
  26. package/dist/interception-proxy.js +20 -4
  27. package/dist/interception-proxy.js.map +1 -1
  28. package/dist/interceptor-chain.js +5 -2
  29. package/dist/interceptor-chain.js.map +1 -1
  30. package/dist/interceptor.d.ts +6 -0
  31. package/dist/interceptor.js +37 -11
  32. package/dist/interceptor.js.map +1 -1
  33. package/dist/invocation.d.ts +23 -4
  34. package/dist/invocation.js +14 -8
  35. package/dist/invocation.js.map +1 -1
  36. package/dist/keys.d.ts +6 -0
  37. package/dist/keys.js +6 -0
  38. package/dist/keys.js.map +1 -1
  39. package/dist/resolution-session.d.ts +5 -4
  40. package/dist/resolution-session.js +13 -6
  41. package/dist/resolution-session.js.map +1 -1
  42. package/dist/resolver.js +13 -8
  43. package/dist/resolver.js.map +1 -1
  44. package/package.json +10 -10
  45. package/src/binding-config.ts +1 -1
  46. package/src/binding-inspector.ts +6 -8
  47. package/src/binding-sorter.ts +2 -2
  48. package/src/binding.ts +30 -8
  49. package/src/context-view.ts +1 -1
  50. package/src/context.ts +26 -10
  51. package/src/index.ts +3 -3
  52. package/src/inject-config.ts +3 -3
  53. package/src/inject.ts +19 -10
  54. package/src/interception-proxy.ts +25 -3
  55. package/src/interceptor-chain.ts +1 -1
  56. package/src/interceptor.ts +31 -6
  57. package/src/invocation.ts +25 -4
  58. package/src/keys.ts +7 -0
  59. package/src/resolution-session.ts +9 -5
  60. package/src/resolver.ts +5 -5
package/CHANGELOG.md CHANGED
@@ -3,6 +3,47 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.25.1](https://github.com/strongloop/loopback-next/compare/@loopback/context@1.25.0...@loopback/context@1.25.1) (2020-01-07)
7
+
8
+ **Note:** Version bump only for package @loopback/context
9
+
10
+
11
+
12
+
13
+
14
+ # [1.25.0](https://github.com/strongloop/loopback-next/compare/@loopback/context@1.24.0...@loopback/context@1.25.0) (2019-12-09)
15
+
16
+
17
+ ### Features
18
+
19
+ * **context:** allow global interceptors to be applied based on source types ([77cbd01](https://github.com/strongloop/loopback-next/commit/77cbd019027e1441339735326bcfb86a23df8b66))
20
+ * **context:** make it possible to set source information for interceptions ([2a1ccb4](https://github.com/strongloop/loopback-next/commit/2a1ccb409a889d8b30b03ddf3284c9e9d5554e27))
21
+
22
+
23
+
24
+
25
+
26
+ # [1.24.0](https://github.com/strongloop/loopback-next/compare/@loopback/context@1.23.5...@loopback/context@1.24.0) (2019-11-25)
27
+
28
+
29
+ ### Features
30
+
31
+ * **context:** allow current binding to be injected with `[@inject](https://github.com/inject).binding` ([c01b4c6](https://github.com/strongloop/loopback-next/commit/c01b4c6b4dcc5c7ac79832bda144b1ec0da191b1))
32
+ * **context:** improve context/binding with inspect/toJSON for metadata dumping ([ac399f7](https://github.com/strongloop/loopback-next/commit/ac399f7f105eea402ef1932bd96093baad0a009f))
33
+ * **core:** add [@service](https://github.com/service) decorator to inject a service by class/interface ([1d80904](https://github.com/strongloop/loopback-next/commit/1d80904b670724b00cb6a2965b8472f44d23eed0))
34
+
35
+
36
+
37
+
38
+
39
+ ## [1.23.5](https://github.com/strongloop/loopback-next/compare/@loopback/context@1.23.4...@loopback/context@1.23.5) (2019-11-12)
40
+
41
+ **Note:** Version bump only for package @loopback/context
42
+
43
+
44
+
45
+
46
+
6
47
  ## [1.23.4](https://github.com/strongloop/loopback-next/compare/@loopback/context@1.23.3...@loopback/context@1.23.4) (2019-10-24)
7
48
 
8
49
  **Note:** Version bump only for package @loopback/context
@@ -13,7 +13,7 @@ class DefaultConfigurationResolver {
13
13
  this.context = context;
14
14
  }
15
15
  getConfigAsValueOrPromise(key, propertyPath, resolutionOptions) {
16
- propertyPath = propertyPath || '';
16
+ propertyPath = (propertyPath !== null && propertyPath !== void 0 ? propertyPath : '');
17
17
  const configKey = configBindingKeyFor(key, propertyPath);
18
18
  const options = Object.assign({ optional: true }, resolutionOptions);
19
19
  return this.context.getValueOrPromise(configKey, options);
@@ -1 +1 @@
1
- {"version":3,"file":"binding-config.js","sourceRoot":"","sources":["../src/binding-config.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;AAEhE,+CAAyD;AAgCzD;;GAEG;AACH,MAAa,4BAA4B;IACvC,YAA4B,OAAgB;QAAhB,YAAO,GAAP,OAAO,CAAS;IAAG,CAAC;IAEhD,yBAAyB,CACvB,GAA4B,EAC5B,YAAqB,EACrB,iBAAqC;QAErC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAEzD,MAAM,OAAO,GAAsB,MAAM,CAAC,MAAM,CAC9C,EAAC,QAAQ,EAAE,IAAI,EAAC,EAChB,iBAAiB,CAClB,CAAC;QACF,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAkB,SAAS,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;CACF;AAjBD,oEAiBC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CACjC,GAAmB,EACnB,YAAqB;IAErB,OAAO,wBAAU,CAAC,MAAM,CACtB,wBAAU,CAAC,iBAAiB,CAAkB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAC7D,YAAY,CACb,CAAC;AACJ,CAAC;AARD,kDAQC"}
1
+ {"version":3,"file":"binding-config.js","sourceRoot":"","sources":["../src/binding-config.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;AAEhE,+CAAyD;AAgCzD;;GAEG;AACH,MAAa,4BAA4B;IACvC,YAA4B,OAAgB;QAAhB,YAAO,GAAP,OAAO,CAAS;IAAG,CAAC;IAEhD,yBAAyB,CACvB,GAA4B,EAC5B,YAAqB,EACrB,iBAAqC;QAErC,YAAY,IAAG,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CAAA,CAAC;QAClC,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAEzD,MAAM,OAAO,GAAsB,MAAM,CAAC,MAAM,CAC9C,EAAC,QAAQ,EAAE,IAAI,EAAC,EAChB,iBAAiB,CAClB,CAAC;QACF,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAkB,SAAS,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;CACF;AAjBD,oEAiBC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CACjC,GAAmB,EACnB,YAAqB;IAErB,OAAO,wBAAU,CAAC,MAAM,CACtB,wBAAU,CAAC,iBAAiB,CAAkB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAC7D,YAAY,CACb,CAAC;AACJ,CAAC;AARD,kDAQC"}
@@ -3,12 +3,15 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
6
9
  Object.defineProperty(exports, "__esModule", { value: true });
7
10
  const metadata_1 = require("@loopback/metadata");
8
- const debugFactory = require("debug");
11
+ const debug_1 = __importDefault(require("debug"));
9
12
  const binding_1 = require("./binding");
10
13
  const keys_1 = require("./keys");
11
- const debug = debugFactory('loopback:context:binding-inspector');
14
+ const debug = debug_1.default('loopback:context:binding-inspector');
12
15
  /**
13
16
  * Metadata key for binding metadata
14
17
  */
@@ -95,11 +98,10 @@ exports.removeNameAndKeyTags = removeNameAndKeyTags;
95
98
  * @param cls - A class with optional `@bind`
96
99
  */
97
100
  function bindingTemplateFor(cls) {
101
+ var _a, _b;
98
102
  const spec = getBindingMetadata(cls);
99
103
  debug('class %s has binding metadata', cls.name, spec);
100
- const templateFunctions = (spec && spec.templates) || [
101
- asClassOrProvider(cls),
102
- ];
104
+ const templateFunctions = (_b = (_a = spec) === null || _a === void 0 ? void 0 : _a.templates, (_b !== null && _b !== void 0 ? _b : [asClassOrProvider(cls)]));
103
105
  return function applyBindingTemplatesFromMetadata(binding) {
104
106
  for (const t of templateFunctions) {
105
107
  binding.apply(t);
@@ -187,6 +189,7 @@ function getNamespace(type, typeNamespaces = exports.DEFAULT_TYPE_NAMESPACES) {
187
189
  * @param options - Options to customize how to build the key
188
190
  */
189
191
  function buildBindingKey(cls, options = {}) {
192
+ var _a, _b, _c, _d;
190
193
  if (options.key)
191
194
  return options.key;
192
195
  const templateFn = bindingTemplateFor(cls);
@@ -196,19 +199,17 @@ function buildBindingKey(cls, options = {}) {
196
199
  let key = bindingTemplate.tagMap[keys_1.ContextTags.KEY];
197
200
  if (key)
198
201
  return key;
199
- let namespace = options.namespace || bindingTemplate.tagMap[keys_1.ContextTags.NAMESPACE];
202
+ let namespace = (_a = options.namespace, (_a !== null && _a !== void 0 ? _a : bindingTemplate.tagMap[keys_1.ContextTags.NAMESPACE]));
200
203
  if (!namespace) {
201
204
  const namespaces = Object.assign({}, exports.DEFAULT_TYPE_NAMESPACES, options.typeNamespaceMapping);
202
205
  // Derive the key from type + name
203
- let type = options.type || bindingTemplate.tagMap[keys_1.ContextTags.TYPE];
206
+ let type = (_b = options.type, (_b !== null && _b !== void 0 ? _b : bindingTemplate.tagMap[keys_1.ContextTags.TYPE]));
204
207
  if (!type) {
205
- type =
206
- bindingTemplate.tagNames.find(t => namespaces[t] != null) ||
207
- keys_1.ContextTags.CLASS;
208
+ type = (_c = bindingTemplate.tagNames.find(t => namespaces[t] != null), (_c !== null && _c !== void 0 ? _c : keys_1.ContextTags.CLASS));
208
209
  }
209
210
  namespace = getNamespace(type, namespaces);
210
211
  }
211
- const name = options.name || bindingTemplate.tagMap[keys_1.ContextTags.NAME] || cls.name;
212
+ const name = (_d = options.name, (_d !== null && _d !== void 0 ? _d : (bindingTemplate.tagMap[keys_1.ContextTags.NAME] || cls.name)));
212
213
  key = `${namespace}.${name}`;
213
214
  return key;
214
215
  }
@@ -1 +1 @@
1
- {"version":3,"file":"binding-inspector.js","sourceRoot":"","sources":["../src/binding-inspector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binding-inspector.js","sourceRoot":"","sources":["../src/binding-inspector.ts"],"names":[],"mappings":"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"}
@@ -48,8 +48,8 @@ exports.compareBindingsByTag = compareBindingsByTag;
48
48
  * @param order - An array of values as the predefined order
49
49
  */
50
50
  function compareByOrder(a, b, order = []) {
51
- a = a || '';
52
- b = b || '';
51
+ a = (a !== null && a !== void 0 ? a : '');
52
+ b = (b !== null && b !== void 0 ? b : '');
53
53
  const i1 = order.indexOf(a);
54
54
  const i2 = order.indexOf(b);
55
55
  if (i1 !== -1 || i2 !== -1) {
@@ -1 +1 @@
1
- {"version":3,"file":"binding-sorter.js","sourceRoot":"","sources":["../src/binding-sorter.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;AA6BhE;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,oBAAoB,CAClC,YAAY,GAAG,OAAO,EACtB,gBAAqC,EAAE;IAEvC,OAAO,CAAC,CAA6B,EAAE,CAA6B,EAAE,EAAE;QACtE,OAAO,cAAc,CACnB,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EACtB,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EACtB,aAAa,CACd,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAXD,oDAWC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,cAAc,CAC5B,CAAqC,EACrC,CAAqC,EACrC,QAA6B,EAAE;IAE/B,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACZ,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5B,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE;QAC1B,kBAAkB;QAClB,OAAO,EAAE,GAAG,EAAE,CAAC;KAChB;SAAM;QACL,4CAA4C;QAE5C,6BAA6B;QAC7B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC,CAAC;QAC9D,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC;QAE7D,uDAAuD;QACvD,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACnC;AACH,CAAC;AAxBD,wCAwBC;AAED;;;;;;;;GAQG;AACH,SAAgB,mBAAmB,CACjC,QAAgC,EAChC,YAAqB,EACrB,aAAmC;IAEnC,OAAO,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;AAC1E,CAAC;AAND,kDAMC"}
1
+ {"version":3,"file":"binding-sorter.js","sourceRoot":"","sources":["../src/binding-sorter.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;AA6BhE;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,oBAAoB,CAClC,YAAY,GAAG,OAAO,EACtB,gBAAqC,EAAE;IAEvC,OAAO,CAAC,CAA6B,EAAE,CAA6B,EAAE,EAAE;QACtE,OAAO,cAAc,CACnB,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EACtB,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EACtB,aAAa,CACd,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAXD,oDAWC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,cAAc,CAC5B,CAAqC,EACrC,CAAqC,EACrC,QAA6B,EAAE;IAE/B,CAAC,IAAG,CAAC,aAAD,CAAC,cAAD,CAAC,GAAI,EAAE,CAAA,CAAC;IACZ,CAAC,IAAG,CAAC,aAAD,CAAC,cAAD,CAAC,GAAI,EAAE,CAAA,CAAC;IACZ,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5B,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE;QAC1B,kBAAkB;QAClB,OAAO,EAAE,GAAG,EAAE,CAAC;KAChB;SAAM;QACL,4CAA4C;QAE5C,6BAA6B;QAC7B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC,CAAC;QAC9D,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC;QAE7D,uDAAuD;QACvD,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACnC;AACH,CAAC;AAxBD,wCAwBC;AAED;;;;;;;;GAQG;AACH,SAAgB,mBAAmB,CACjC,QAAgC,EAChC,YAAqB,EACrB,aAAmC;IAEnC,OAAO,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;AAC1E,CAAC;AAND,kDAMC"}
package/dist/binding.d.ts CHANGED
@@ -125,20 +125,26 @@ export declare class Binding<T = BoundValue> {
125
125
  /**
126
126
  * Scope of the binding to control how the value is cached/shared
127
127
  */
128
- readonly scope: BindingScope;
128
+ get scope(): BindingScope;
129
129
  private _type?;
130
130
  /**
131
131
  * Type of the binding value getter
132
132
  */
133
- readonly type: BindingType | undefined;
133
+ get type(): BindingType | undefined;
134
134
  private _cache;
135
135
  private _getValue;
136
136
  private _valueConstructor?;
137
+ private _providerConstructor?;
137
138
  /**
138
- * For bindings bound via toClass, this property contains the constructor
139
- * function
139
+ * For bindings bound via `toClass()`, this property contains the constructor
140
+ * function of the class
140
141
  */
141
- readonly valueConstructor: Constructor<T> | undefined;
142
+ get valueConstructor(): Constructor<T> | undefined;
143
+ /**
144
+ * For bindings bound via `toProvider()`, this property contains the
145
+ * constructor function of the provider class
146
+ */
147
+ get providerConstructor(): Constructor<Provider<T>> | undefined;
142
148
  constructor(key: BindingAddress<T>, isLocked?: boolean);
143
149
  /**
144
150
  * Cache the resolved value by the binding scope
@@ -217,7 +223,7 @@ export declare class Binding<T = BoundValue> {
217
223
  /**
218
224
  * Get an array of tag names
219
225
  */
220
- readonly tagNames: string[];
226
+ get tagNames(): string[];
221
227
  /**
222
228
  * Set the binding scope
223
229
  * @param scope - Binding scope
@@ -319,7 +325,7 @@ export declare class Binding<T = BoundValue> {
319
325
  /**
320
326
  * Convert to a plain JSON object
321
327
  */
322
- toJSON(): Object;
328
+ toJSON(): object;
323
329
  /**
324
330
  * A static method to create a binding so that we can do
325
331
  * `Binding.bind('foo').to('bar');` as `new Binding('foo').to('bar')` is not
package/dist/binding.js CHANGED
@@ -3,15 +3,18 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
6
9
  Object.defineProperty(exports, "__esModule", { value: true });
7
- const debugFactory = require("debug");
10
+ const debug_1 = __importDefault(require("debug"));
8
11
  const binding_key_1 = require("./binding-key");
9
12
  const interception_proxy_1 = require("./interception-proxy");
10
13
  const keys_1 = require("./keys");
11
14
  const resolution_session_1 = require("./resolution-session");
12
15
  const resolver_1 = require("./resolver");
13
16
  const value_promise_1 = require("./value-promise");
14
- const debug = debugFactory('loopback:context:binding');
17
+ const debug = debug_1.default('loopback:context:binding');
15
18
  /**
16
19
  * Scope for binding values
17
20
  */
@@ -127,8 +130,9 @@ class Binding {
127
130
  * Scope of the binding to control how the value is cached/shared
128
131
  */
129
132
  get scope() {
133
+ var _a;
130
134
  // Default to TRANSIENT if not set
131
- return this._scope || BindingScope.TRANSIENT;
135
+ return _a = this._scope, (_a !== null && _a !== void 0 ? _a : BindingScope.TRANSIENT);
132
136
  }
133
137
  /**
134
138
  * Type of the binding value getter
@@ -137,12 +141,19 @@ class Binding {
137
141
  return this._type;
138
142
  }
139
143
  /**
140
- * For bindings bound via toClass, this property contains the constructor
141
- * function
144
+ * For bindings bound via `toClass()`, this property contains the constructor
145
+ * function of the class
142
146
  */
143
147
  get valueConstructor() {
144
148
  return this._valueConstructor;
145
149
  }
150
+ /**
151
+ * For bindings bound via `toProvider()`, this property contains the
152
+ * constructor function of the provider class
153
+ */
154
+ get providerConstructor() {
155
+ return this._providerConstructor;
156
+ }
146
157
  /**
147
158
  * Cache the resolved value by the binding scope
148
159
  * @param ctx - The current context
@@ -384,6 +395,7 @@ class Binding {
384
395
  debug('Bind %s to provider %s', this.key, providerClass.name);
385
396
  }
386
397
  this._type = BindingType.PROVIDER;
398
+ this._providerConstructor = providerClass;
387
399
  this._setValueGetter((ctx, options) => {
388
400
  const providerOrPromise = resolver_1.instantiateClass(providerClass, ctx, options.session);
389
401
  return value_promise_1.transformValueOrPromise(providerOrPromise, p => p.value());
@@ -407,7 +419,7 @@ class Binding {
407
419
  const instOrPromise = resolver_1.instantiateClass(ctor, ctx, options.session);
408
420
  if (!options.asProxyWithInterceptors)
409
421
  return instOrPromise;
410
- return createInterceptionProxyFromInstance(instOrPromise, ctx);
422
+ return createInterceptionProxyFromInstance(instOrPromise, ctx, options.session);
411
423
  });
412
424
  this._valueConstructor = ctor;
413
425
  return this;
@@ -459,7 +471,6 @@ class Binding {
459
471
  * Convert to a plain JSON object
460
472
  */
461
473
  toJSON() {
462
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
463
474
  const json = {
464
475
  key: this.key,
465
476
  scope: this.scope,
@@ -469,6 +480,12 @@ class Binding {
469
480
  if (this.type != null) {
470
481
  json.type = this.type;
471
482
  }
483
+ if (this._valueConstructor != null) {
484
+ json.valueConstructor = this._valueConstructor.name;
485
+ }
486
+ if (this._providerConstructor != null) {
487
+ json.providerConstructor = this._providerConstructor.name;
488
+ }
472
489
  return json;
473
490
  }
474
491
  /**
@@ -501,13 +518,13 @@ class Binding {
501
518
  }
502
519
  }
503
520
  exports.Binding = Binding;
504
- function createInterceptionProxyFromInstance(instOrPromise, context) {
521
+ function createInterceptionProxyFromInstance(instOrPromise, context, session) {
505
522
  return value_promise_1.transformValueOrPromise(instOrPromise, inst => {
506
523
  if (typeof inst !== 'object')
507
524
  return inst;
508
525
  return interception_proxy_1.createProxyWithInterceptors(
509
526
  // Cast inst from `T` to `object`
510
- inst, context);
527
+ inst, context, session);
511
528
  });
512
529
  }
513
530
  //# sourceMappingURL=binding.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"binding.js","sourceRoot":"","sources":["../src/binding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binding.js","sourceRoot":"","sources":["../src/binding.ts"],"names":[],"mappings":"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"}
@@ -42,7 +42,7 @@ export declare class ContextView<T = unknown> extends EventEmitter implements Co
42
42
  * Get the list of matched bindings. If they are not cached, it tries to find
43
43
  * them from the context.
44
44
  */
45
- readonly bindings: Readonly<Binding<T>>[];
45
+ get bindings(): Readonly<Binding<T>>[];
46
46
  /**
47
47
  * Find matching bindings and refresh the cache
48
48
  */
@@ -3,13 +3,16 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
6
9
  Object.defineProperty(exports, "__esModule", { value: true });
7
- const debugFactory = require("debug");
10
+ const debug_1 = __importDefault(require("debug"));
8
11
  const events_1 = require("events");
9
12
  const util_1 = require("util");
10
13
  const resolution_session_1 = require("./resolution-session");
11
14
  const value_promise_1 = require("./value-promise");
12
- const debug = debugFactory('loopback:context:view');
15
+ const debug = debug_1.default('loopback:context:view');
13
16
  const nextTick = util_1.promisify(process.nextTick);
14
17
  /**
15
18
  * `ContextView` provides a view for a given context chain to maintain a live
@@ -1 +1 @@
1
- {"version":3,"file":"context-view.js","sourceRoot":"","sources":["../src/context-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context-view.js","sourceRoot":"","sources":["../src/context-view.ts"],"names":[],"mappings":"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"}
package/dist/context.d.ts CHANGED
@@ -430,7 +430,12 @@ export declare class Context extends EventEmitter {
430
430
  /**
431
431
  * Create a plain JSON object for the context
432
432
  */
433
- toJSON(): Object;
433
+ toJSON(): object;
434
+ /**
435
+ * Inspect the context and dump out a JSON object representing the context
436
+ * hierarchy
437
+ */
438
+ inspect(): object;
434
439
  }
435
440
  /**
436
441
  * Policy to control if a binding should be created for the context
package/dist/context.js CHANGED
@@ -10,8 +10,11 @@ var __asyncValues = (this && this.__asyncValues) || function (o) {
10
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
11
  function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
12
12
  };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
13
16
  Object.defineProperty(exports, "__esModule", { value: true });
14
- const debugFactory = require("debug");
17
+ const debug_1 = __importDefault(require("debug"));
15
18
  const events_1 = require("events");
16
19
  const uuid_1 = require("uuid");
17
20
  const binding_1 = require("./binding");
@@ -36,7 +39,7 @@ if (!Symbol.asyncIterator) {
36
39
  * polyfill. It must be then fixed manually.
37
40
  */
38
41
  const p_event_1 = require("p-event");
39
- const debug = debugFactory('loopback:context');
42
+ const debug = debug_1.default('loopback:context');
40
43
  /**
41
44
  * Context provides an implementation of Inversion of Control (IoC) container
42
45
  */
@@ -79,7 +82,7 @@ class Context extends events_1.EventEmitter {
79
82
  _parent = undefined;
80
83
  }
81
84
  this._parent = _parent;
82
- this.name = name || uuid_1.v1();
85
+ this.name = (name !== null && name !== void 0 ? name : uuid_1.v1());
83
86
  }
84
87
  /**
85
88
  * Wrap the debug statement so that it always print out the context name
@@ -126,10 +129,11 @@ class Context extends events_1.EventEmitter {
126
129
  * @param event - Event name
127
130
  */
128
131
  addParentEventListener(event) {
132
+ var _a;
129
133
  if (this._parent == null)
130
134
  return;
131
135
  // Keep track of parent event listeners so that we can remove them
132
- this._parentEventListeners = this._parentEventListeners || new Map();
136
+ this._parentEventListeners = (_a = this._parentEventListeners, (_a !== null && _a !== void 0 ? _a : new Map()));
133
137
  if (this._parentEventListeners.has(event))
134
138
  return;
135
139
  const parentEventListener = (binding, context) => {
@@ -272,13 +276,14 @@ class Context extends events_1.EventEmitter {
272
276
  * @param binding - The configured binding to be added
273
277
  */
274
278
  add(binding) {
279
+ var _a;
275
280
  const key = binding.key;
276
281
  this._debug('[%s] Adding binding: %s', key);
277
282
  let existingBinding;
278
283
  const keyExists = this.registry.has(key);
279
284
  if (keyExists) {
280
285
  existingBinding = this.registry.get(key);
281
- const bindingIsLocked = existingBinding && existingBinding.isLocked;
286
+ const bindingIsLocked = (_a = existingBinding) === null || _a === void 0 ? void 0 : _a.isLocked;
282
287
  if (bindingIsLocked)
283
288
  throw new Error(`Cannot rebind key "${key}" to a locked binding`);
284
289
  }
@@ -386,13 +391,14 @@ class Context extends events_1.EventEmitter {
386
391
  * @returns true if the binding key is found and removed from this context
387
392
  */
388
393
  unbind(key) {
394
+ var _a;
389
395
  this._debug('Unbind %s', key);
390
396
  key = binding_key_1.BindingKey.validate(key);
391
397
  const binding = this.registry.get(key);
392
398
  // If not found, return `false`
393
399
  if (binding == null)
394
400
  return false;
395
- if (binding && binding.isLocked)
401
+ if ((_a = binding) === null || _a === void 0 ? void 0 : _a.isLocked)
396
402
  throw new Error(`Cannot unbind key "${key}" of a locked binding`);
397
403
  this.registry.delete(key);
398
404
  this.emit('unbind', binding, this);
@@ -403,7 +409,8 @@ class Context extends events_1.EventEmitter {
403
409
  * @param observer - Context observer instance or function
404
410
  */
405
411
  subscribe(observer) {
406
- this.observers = this.observers || new Set();
412
+ var _a;
413
+ this.observers = (_a = this.observers, (_a !== null && _a !== void 0 ? _a : new Set()));
407
414
  this.setupEventHandlersIfNeeded();
408
415
  this.observers.add(observer);
409
416
  return new ContextSubscription(this, observer);
@@ -583,6 +590,7 @@ class Context extends events_1.EventEmitter {
583
590
  return valueOrPromise;
584
591
  }
585
592
  getBinding(key, options) {
593
+ var _a;
586
594
  key = binding_key_1.BindingKey.validate(key);
587
595
  const binding = this.registry.get(key);
588
596
  if (binding) {
@@ -591,7 +599,7 @@ class Context extends events_1.EventEmitter {
591
599
  if (this._parent) {
592
600
  return this._parent.getBinding(key, options);
593
601
  }
594
- if (options && options.optional)
602
+ if ((_a = options) === null || _a === void 0 ? void 0 : _a.optional)
595
603
  return undefined;
596
604
  throw new Error(`The key '${key}' is not bound to any value in context ${this.name}`);
597
605
  }
@@ -664,9 +672,24 @@ class Context extends events_1.EventEmitter {
664
672
  * Create a plain JSON object for the context
665
673
  */
666
674
  toJSON() {
667
- const json = {};
675
+ const bindings = {};
668
676
  for (const [k, v] of this.registry) {
669
- json[k] = v.toJSON();
677
+ bindings[k] = v.toJSON();
678
+ }
679
+ return bindings;
680
+ }
681
+ /**
682
+ * Inspect the context and dump out a JSON object representing the context
683
+ * hierarchy
684
+ */
685
+ // TODO(rfeng): Evaluate https://nodejs.org/api/util.html#util_custom_inspection_functions_on_objects
686
+ inspect() {
687
+ const json = {
688
+ name: this.name,
689
+ bindings: this.toJSON(),
690
+ };
691
+ if (this._parent) {
692
+ json.parent = this._parent.inspect();
670
693
  }
671
694
  return json;
672
695
  }
@@ -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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"}