@loopback/context 3.5.1 → 3.8.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 (71) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/dist/binding-config.js +1 -0
  3. package/dist/binding-config.js.map +1 -1
  4. package/dist/binding-decorator.d.ts +1 -2
  5. package/dist/binding-decorator.js +1 -0
  6. package/dist/binding-decorator.js.map +1 -1
  7. package/dist/binding-filter.d.ts +2 -2
  8. package/dist/binding-filter.js +4 -3
  9. package/dist/binding-filter.js.map +1 -1
  10. package/dist/binding-inspector.d.ts +14 -7
  11. package/dist/binding-inspector.js +14 -6
  12. package/dist/binding-inspector.js.map +1 -1
  13. package/dist/binding-key.d.ts +5 -0
  14. package/dist/binding-key.js +104 -90
  15. package/dist/binding-key.js.map +1 -1
  16. package/dist/binding-sorter.js +1 -0
  17. package/dist/binding-sorter.js.map +1 -1
  18. package/dist/binding.d.ts +84 -7
  19. package/dist/binding.js +120 -35
  20. package/dist/binding.js.map +1 -1
  21. package/dist/context-subscription.js +1 -0
  22. package/dist/context-subscription.js.map +1 -1
  23. package/dist/context-tag-indexer.js +1 -0
  24. package/dist/context-tag-indexer.js.map +1 -1
  25. package/dist/context-view.js +1 -0
  26. package/dist/context-view.js.map +1 -1
  27. package/dist/context.js +2 -2
  28. package/dist/context.js.map +1 -1
  29. package/dist/index.js +4 -0
  30. package/dist/index.js.map +1 -1
  31. package/dist/inject-config.js +1 -0
  32. package/dist/inject-config.js.map +1 -1
  33. package/dist/inject.d.ts +13 -6
  34. package/dist/inject.js +6 -8
  35. package/dist/inject.js.map +1 -1
  36. package/dist/interception-proxy.js +1 -0
  37. package/dist/interception-proxy.js.map +1 -1
  38. package/dist/interceptor-chain.d.ts +39 -4
  39. package/dist/interceptor-chain.js +26 -4
  40. package/dist/interceptor-chain.js.map +1 -1
  41. package/dist/interceptor.d.ts +28 -3
  42. package/dist/interceptor.js +54 -0
  43. package/dist/interceptor.js.map +1 -1
  44. package/dist/invocation.js +1 -0
  45. package/dist/invocation.js.map +1 -1
  46. package/dist/keys.d.ts +5 -0
  47. package/dist/keys.js +6 -0
  48. package/dist/keys.js.map +1 -1
  49. package/dist/resolution-session.d.ts +26 -6
  50. package/dist/resolution-session.js +1 -0
  51. package/dist/resolution-session.js.map +1 -1
  52. package/dist/resolver.js +1 -0
  53. package/dist/resolver.js.map +1 -1
  54. package/dist/value-promise.d.ts +8 -4
  55. package/dist/value-promise.js +17 -0
  56. package/dist/value-promise.js.map +1 -1
  57. package/package.json +13 -13
  58. package/src/binding-decorator.ts +2 -3
  59. package/src/binding-filter.ts +8 -7
  60. package/src/binding-inspector.ts +32 -9
  61. package/src/binding-key.ts +12 -0
  62. package/src/binding.ts +210 -44
  63. package/src/context.ts +2 -2
  64. package/src/inject.ts +22 -16
  65. package/src/interceptor-chain.ts +66 -7
  66. package/src/interceptor.ts +85 -2
  67. package/src/keys.ts +6 -0
  68. package/src/resolution-session.ts +30 -2
  69. package/src/value-promise.ts +13 -0
  70. package/index.d.ts +0 -6
  71. package/index.js +0 -6
package/dist/index.js CHANGED
@@ -40,6 +40,8 @@ tslib_1.__exportStar(require("./binding-inspector"), exports);
40
40
  tslib_1.__exportStar(require("./binding-key"), exports);
41
41
  tslib_1.__exportStar(require("./binding-sorter"), exports);
42
42
  tslib_1.__exportStar(require("./context"), exports);
43
+ tslib_1.__exportStar(require("./context-event"), exports);
44
+ tslib_1.__exportStar(require("./context-observer"), exports);
43
45
  tslib_1.__exportStar(require("./context-subscription"), exports);
44
46
  tslib_1.__exportStar(require("./context-view"), exports);
45
47
  tslib_1.__exportStar(require("./inject"), exports);
@@ -48,7 +50,9 @@ tslib_1.__exportStar(require("./interception-proxy"), exports);
48
50
  tslib_1.__exportStar(require("./interceptor"), exports);
49
51
  tslib_1.__exportStar(require("./interceptor-chain"), exports);
50
52
  tslib_1.__exportStar(require("./invocation"), exports);
53
+ tslib_1.__exportStar(require("./json-types"), exports);
51
54
  tslib_1.__exportStar(require("./keys"), exports);
55
+ tslib_1.__exportStar(require("./provider"), exports);
52
56
  tslib_1.__exportStar(require("./resolution-session"), exports);
53
57
  tslib_1.__exportStar(require("./resolver"), exports);
54
58
  tslib_1.__exportStar(require("./value-promise"), exports);
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;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,6DAAmC;AACnC,oDAA0B;AAC1B,2DAAiC;AACjC,8DAAoC;AACpC,2DAAiC;AACjC,8DAAoC;AACpC,wDAA8B;AAC9B,2DAAiC;AACjC,oDAA0B;AAG1B,iEAAuC;AACvC,yDAA+B;AAC/B,mDAAyB;AACzB,0DAAgC;AAChC,+DAAqC;AACrC,wDAA8B;AAC9B,8DAAoC;AACpC,uDAA6B;AAE7B,iDAAuB;AAEvB,+DAAqC;AACrC,qDAA2B;AAC3B,0DAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,6DAAmC;AACnC,oDAA0B;AAC1B,2DAAiC;AACjC,8DAAoC;AACpC,2DAAiC;AACjC,8DAAoC;AACpC,wDAA8B;AAC9B,2DAAiC;AACjC,oDAA0B;AAC1B,0DAAgC;AAChC,6DAAmC;AACnC,iEAAuC;AACvC,yDAA+B;AAC/B,mDAAyB;AACzB,0DAAgC;AAChC,+DAAqC;AACrC,wDAA8B;AAC9B,8DAAoC;AACpC,uDAA6B;AAC7B,uDAA6B;AAC7B,iDAAuB;AACvB,qDAA2B;AAC3B,+DAAqC;AACrC,qDAA2B;AAC3B,0DAAgC"}
@@ -4,6 +4,7 @@
4
4
  // This file is licensed under the MIT License.
5
5
  // License text available at https://opensource.org/licenses/MIT
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.config = void 0;
7
8
  const binding_key_1 = require("./binding-key");
8
9
  const context_view_1 = require("./context-view");
9
10
  const inject_1 = require("./inject");
@@ -1 +1 @@
1
- {"version":3,"file":"inject-config.js","sourceRoot":"","sources":["../src/inject-config.ts"],"names":[],"mappings":"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"}
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
@@ -1,14 +1,21 @@
1
1
  import { MetadataMap } from '@loopback/metadata';
2
- import { Binding } from './binding';
2
+ import { Binding, BindingTag } from './binding';
3
3
  import { BindingFilter, BindingSelector } from './binding-filter';
4
- import { BindingAddress } from './binding-key';
4
+ import { BindingAddress, BindingKey } from './binding-key';
5
5
  import { BindingComparator } from './binding-sorter';
6
6
  import { BindingCreationPolicy, Context } from './context';
7
7
  import { JSONObject } from './json-types';
8
8
  import { ResolutionOptions, ResolutionSession } from './resolution-session';
9
9
  import { BoundValue, ValueOrPromise } from './value-promise';
10
10
  /**
11
- * A function to provide resolution of injected values
11
+ * A function to provide resolution of injected values.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * const resolver: ResolverFunction = (ctx, injection, session) {
16
+ * return session.currentBinding?.key;
17
+ * }
18
+ * ```
12
19
  */
13
20
  export interface ResolverFunction {
14
21
  (ctx: Context, injection: Readonly<Injection>, session: ResolutionSession): ValueOrPromise<BoundValue>;
@@ -133,7 +140,7 @@ export declare namespace inject {
133
140
  * @param bindingKey - The key of the value we want to set.
134
141
  * @param metadata - Optional metadata to help the injection
135
142
  */
136
- const setter: (bindingKey: BindingAddress<unknown>, metadata?: InjectBindingMetadata | undefined) => (target: Object, member: string | undefined, methodDescriptorOrParameterIndex?: number | TypedPropertyDescriptor<any> | undefined) => void;
143
+ const setter: (bindingKey: BindingAddress, metadata?: InjectBindingMetadata | undefined) => (target: Object, member: string | undefined, methodDescriptorOrParameterIndex?: number | TypedPropertyDescriptor<any> | undefined) => void;
137
144
  /**
138
145
  * Inject the binding object for the given key. This is useful if a binding
139
146
  * needs to be set up beyond just a constant value allowed by
@@ -159,7 +166,7 @@ export declare namespace inject {
159
166
  * @param bindingKey - Binding key
160
167
  * @param metadata - Metadata for the injection
161
168
  */
162
- const binding: (bindingKey?: string | import("./binding-key").BindingKey<unknown> | undefined, metadata?: InjectBindingMetadata | undefined) => (target: Object, member: string | undefined, methodDescriptorOrParameterIndex?: number | TypedPropertyDescriptor<any> | undefined) => void;
169
+ const binding: (bindingKey?: string | BindingKey<unknown> | undefined, metadata?: InjectBindingMetadata | undefined) => (target: Object, member: string | undefined, methodDescriptorOrParameterIndex?: number | TypedPropertyDescriptor<any> | undefined) => void;
163
170
  /**
164
171
  * Inject an array of values by a tag pattern string or regexp
165
172
  *
@@ -174,7 +181,7 @@ export declare namespace inject {
174
181
  * @param bindingTag - Tag name, regex or object
175
182
  * @param metadata - Optional metadata to help the injection
176
183
  */
177
- const tag: (bindingTag: string | RegExp | Record<string, any>, metadata?: InjectionMetadata | undefined) => (target: Object, member: string | undefined, methodDescriptorOrParameterIndex?: number | TypedPropertyDescriptor<any> | undefined) => void;
184
+ const tag: (bindingTag: BindingTag | RegExp, metadata?: InjectionMetadata | undefined) => (target: Object, member: string | undefined, methodDescriptorOrParameterIndex?: number | TypedPropertyDescriptor<any> | undefined) => void;
178
185
  /**
179
186
  * Inject matching bound values by the filter function
180
187
  *
package/dist/inject.js CHANGED
@@ -4,6 +4,7 @@
4
4
  // This file is licensed under the MIT License.
5
5
  // License text available at https://opensource.org/licenses/MIT
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.inspectInjections = exports.describeInjectedProperties = exports.inspectTargetType = exports.describeInjectedArguments = exports.assertTargetType = exports.Getter = exports.inject = void 0;
7
8
  const metadata_1 = require("@loopback/metadata");
8
9
  const binding_1 = require("./binding");
9
10
  const binding_filter_1 = require("./binding-filter");
@@ -221,7 +222,7 @@ var Getter;
221
222
  * ```
222
223
  */
223
224
  inject.context = function injectContext() {
224
- return inject('', { decorator: '@inject.context' }, ctx => ctx);
225
+ return inject('', { decorator: '@inject.context' }, (ctx) => ctx);
225
226
  };
226
227
  })(inject = exports.inject || (exports.inject = {}));
227
228
  /**
@@ -396,14 +397,11 @@ exports.describeInjectedArguments = describeInjectedArguments;
396
397
  * @param injection - Injection information
397
398
  */
398
399
  function inspectTargetType(injection) {
399
- let type = metadata_1.MetadataInspector.getDesignTypeForProperty(injection.target, injection.member);
400
- if (type) {
401
- return type;
400
+ if (typeof injection.methodDescriptorOrParameterIndex === 'number') {
401
+ const designType = metadata_1.MetadataInspector.getDesignTypeForMethod(injection.target, injection.member);
402
+ return designType.parameterTypes[injection.methodDescriptorOrParameterIndex];
402
403
  }
403
- const designType = metadata_1.MetadataInspector.getDesignTypeForMethod(injection.target, injection.member);
404
- type =
405
- designType.parameterTypes[injection.methodDescriptorOrParameterIndex];
406
- return type;
404
+ return metadata_1.MetadataInspector.getDesignTypeForProperty(injection.target, injection.member);
407
405
  }
408
406
  exports.inspectTargetType = inspectTargetType;
409
407
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"inject.js","sourceRoot":"","sources":["../src/inject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inject.js","sourceRoot":"","sources":["../src/inject.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  // This file is licensed under the MIT License.
5
5
  // License text available at https://opensource.org/licenses/MIT
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.createProxyWithInterceptors = exports.InterceptionHandler = exports.ProxySource = void 0;
7
8
  const context_1 = require("./context");
8
9
  const interceptor_1 = require("./interceptor");
9
10
  const resolution_session_1 = require("./resolution-session");
@@ -1 +1 @@
1
- {"version":3,"file":"interception-proxy.js","sourceRoot":"","sources":["../src/interception-proxy.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;AAEhE,uCAAkC;AAClC,+CAA2D;AAE3D,6DAAuD;AAoDvD;;;GAGG;AACH,MAAa,WAAW;IAEtB,YAAqB,KAAwB;QAAxB,UAAK,GAAL,KAAK,CAAmB;QAD7C,SAAI,GAAG,OAAO,CAAC;IACiC,CAAC;IAEjD,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;IACrC,CAAC;CACF;AAPD,kCAOC;AAED;;;;GAIG;AACH,MAAa,mBAAmB;IAC9B,YACU,UAAU,IAAI,iBAAO,EAAE,EACvB,OAA2B,EAC3B,MAAyB;QAFzB,YAAO,GAAP,OAAO,CAAgB;QACvB,YAAO,GAAP,OAAO,CAAoB;QAC3B,WAAM,GAAN,MAAM,CAAmB;IAChC,CAAC;IAEJ,GAAG,CAAC,MAAS,EAAE,YAAyB,EAAE,QAAiB;QACzD,8DAA8D;QAC9D,MAAM,SAAS,GAAG,MAAa,CAAC;QAChC,IAAI,OAAO,YAAY,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC,YAAY,CAAC,CAAC;QACrE,MAAM,gBAAgB,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;QACjD,IAAI,OAAO,gBAAgB,KAAK,UAAU,EAAE;YAC1C,OAAO,CAAC,GAAG,IAAoB,EAAE,EAAE;;gBACjC,OAAO,0CAA4B,CACjC,IAAI,CAAC,OAAO,EACZ,MAAM,EACN,YAAY,EACZ,IAAI,EACJ;oBACE,MAAM,QACJ,IAAI,CAAC,MAAM,mCAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBACjE,CACF,CAAC;YACJ,CAAC,CAAC;SACH;aAAM;YACL,OAAO,gBAAgB,CAAC;SACzB;IACH,CAAC;CACF;AA7BD,kDA6BC;AAED;;;;;;GAMG;AACH,SAAgB,2BAA2B,CACzC,MAAS,EACT,OAAiB,EACjB,OAA2B,EAC3B,MAAyB;IAEzB,OAAO,IAAI,KAAK,CACd,MAAM,EACN,IAAI,mBAAmB,CAAC,OAAO,EAAE,sCAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CACzD,CAAC;AACrB,CAAC;AAVD,kEAUC"}
1
+ {"version":3,"file":"interception-proxy.js","sourceRoot":"","sources":["../src/interception-proxy.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;;AAEhE,uCAAkC;AAClC,+CAA2D;AAE3D,6DAAuD;AAoDvD;;;GAGG;AACH,MAAa,WAAW;IAEtB,YAAqB,KAAwB;QAAxB,UAAK,GAAL,KAAK,CAAmB;QAD7C,SAAI,GAAG,OAAO,CAAC;IACiC,CAAC;IAEjD,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;IACrC,CAAC;CACF;AAPD,kCAOC;AAED;;;;GAIG;AACH,MAAa,mBAAmB;IAC9B,YACU,UAAU,IAAI,iBAAO,EAAE,EACvB,OAA2B,EAC3B,MAAyB;QAFzB,YAAO,GAAP,OAAO,CAAgB;QACvB,YAAO,GAAP,OAAO,CAAoB;QAC3B,WAAM,GAAN,MAAM,CAAmB;IAChC,CAAC;IAEJ,GAAG,CAAC,MAAS,EAAE,YAAyB,EAAE,QAAiB;QACzD,8DAA8D;QAC9D,MAAM,SAAS,GAAG,MAAa,CAAC;QAChC,IAAI,OAAO,YAAY,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC,YAAY,CAAC,CAAC;QACrE,MAAM,gBAAgB,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;QACjD,IAAI,OAAO,gBAAgB,KAAK,UAAU,EAAE;YAC1C,OAAO,CAAC,GAAG,IAAoB,EAAE,EAAE;;gBACjC,OAAO,0CAA4B,CACjC,IAAI,CAAC,OAAO,EACZ,MAAM,EACN,YAAY,EACZ,IAAI,EACJ;oBACE,MAAM,QACJ,IAAI,CAAC,MAAM,mCAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBACjE,CACF,CAAC;YACJ,CAAC,CAAC;SACH;aAAM;YACL,OAAO,gBAAgB,CAAC;SACzB;IACH,CAAC;CACF;AA7BD,kDA6BC;AAED;;;;;;GAMG;AACH,SAAgB,2BAA2B,CACzC,MAAS,EACT,OAAiB,EACjB,OAA2B,EAC3B,MAAyB;IAEzB,OAAO,IAAI,KAAK,CACd,MAAM,EACN,IAAI,mBAAmB,CAAC,OAAO,EAAE,sCAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CACzD,CAAC;AACrB,CAAC;AAVD,kEAUC"}
@@ -4,24 +4,50 @@ import { BindingComparator } from './binding-sorter';
4
4
  import { Context } from './context';
5
5
  import { InvocationResult } from './invocation';
6
6
  import { ValueOrPromise } from './value-promise';
7
+ /**
8
+ * Any type except `void`. We use this type to enforce that interceptor functions
9
+ * always return a value (including undefined or null).
10
+ */
11
+ export declare type NonVoid = string | number | boolean | null | undefined | object;
7
12
  /**
8
13
  * The `next` function that can be used to invoke next generic interceptor in
9
14
  * the chain
10
15
  */
11
- export declare type Next = () => ValueOrPromise<InvocationResult>;
16
+ export declare type Next = () => ValueOrPromise<NonVoid>;
12
17
  /**
13
18
  * An interceptor function to be invoked in a chain for the given context.
14
19
  * It serves as the base interface for various types of interceptors, such
15
20
  * as method invocation interceptor or request/response processing interceptor.
16
21
  *
22
+ * We choose `NonVoid` as the return type to avoid possible bugs that an
23
+ * interceptor forgets to return the value from `next()`. For example, the code
24
+ * below will fail to compile.
25
+ *
26
+ * ```ts
27
+ * const myInterceptor: Interceptor = async (ctx, next) {
28
+ * // preprocessing
29
+ * // ...
30
+ *
31
+ * // There is a subtle bug that the result from `next()` is not further
32
+ * // returned back to the upstream interceptors
33
+ * const result = await next();
34
+ *
35
+ * // postprocessing
36
+ * // ...
37
+ * // We must have `return ...` here
38
+ * // either return `result` or another value if the interceptor decides to
39
+ * // have its own response
40
+ * }
41
+ * ```
42
+ *
17
43
  * @typeParam C - `Context` class or a subclass of `Context`
18
44
  * @param context - Context object
19
45
  * @param next - A function to proceed with downstream interceptors or the
20
46
  * target operation
21
47
  *
22
- * @returns The invocation result as a value (sync) or promise (async)
48
+ * @returns The invocation result as a value (sync) or promise (async).
23
49
  */
24
- export declare type GenericInterceptor<C extends Context = Context> = (context: C, next: Next) => ValueOrPromise<InvocationResult>;
50
+ export declare type GenericInterceptor<C extends Context = Context> = (context: C, next: Next) => ValueOrPromise<NonVoid>;
25
51
  /**
26
52
  * Interceptor function or a binding key that resolves a generic interceptor
27
53
  * function
@@ -60,7 +86,11 @@ export declare class GenericInterceptorChain<C extends Context = Context> {
60
86
  /**
61
87
  * Invoke the interceptor chain
62
88
  */
63
- invokeInterceptors(): ValueOrPromise<InvocationResult>;
89
+ invokeInterceptors(finalHandler?: Next): ValueOrPromise<InvocationResult>;
90
+ /**
91
+ * Use the interceptor chain as an interceptor
92
+ */
93
+ asInterceptor(): GenericInterceptor<C>;
64
94
  /**
65
95
  * Invoke downstream interceptors or the target method
66
96
  */
@@ -83,3 +113,8 @@ export declare class GenericInterceptorChain<C extends Context = Context> {
83
113
  * @param interceptors - An array of interceptor functions or binding keys
84
114
  */
85
115
  export declare function invokeInterceptors<C extends Context = Context, T = InvocationResult>(context: C, interceptors: GenericInterceptorOrKey<C>[]): ValueOrPromise<T | undefined>;
116
+ /**
117
+ * Compose a list of interceptors as a single interceptor
118
+ * @param interceptors - A list of interceptor functions or binding keys
119
+ */
120
+ export declare function composeInterceptors<C extends Context = Context>(...interceptors: GenericInterceptorOrKey<C>[]): GenericInterceptor<C>;
@@ -4,6 +4,7 @@
4
4
  // This file is licensed under the MIT License.
5
5
  // License text available at https://opensource.org/licenses/MIT
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.composeInterceptors = exports.invokeInterceptors = exports.GenericInterceptorChain = void 0;
7
8
  const tslib_1 = require("tslib");
8
9
  const debug_1 = tslib_1.__importDefault(require("debug"));
9
10
  const value_promise_1 = require("./value-promise");
@@ -15,9 +16,11 @@ class InterceptorChainState {
15
16
  /**
16
17
  * Create a state for the interceptor chain
17
18
  * @param interceptors - Interceptor functions or binding keys
19
+ * @param finalHandler - An optional final handler
18
20
  */
19
- constructor(interceptors) {
21
+ constructor(interceptors, finalHandler = () => undefined) {
20
22
  this.interceptors = interceptors;
23
+ this.finalHandler = finalHandler;
21
24
  this._index = 0;
22
25
  }
23
26
  /**
@@ -68,18 +71,26 @@ class GenericInterceptorChain {
68
71
  /**
69
72
  * Invoke the interceptor chain
70
73
  */
71
- invokeInterceptors() {
74
+ invokeInterceptors(finalHandler) {
72
75
  // Create a state for each invocation to provide isolation
73
- const state = new InterceptorChainState(this.getInterceptors());
76
+ const state = new InterceptorChainState(this.getInterceptors(), finalHandler);
74
77
  return this.next(state);
75
78
  }
79
+ /**
80
+ * Use the interceptor chain as an interceptor
81
+ */
82
+ asInterceptor() {
83
+ return (ctx, next) => {
84
+ return this.invokeInterceptors(next);
85
+ };
86
+ }
76
87
  /**
77
88
  * Invoke downstream interceptors or the target method
78
89
  */
79
90
  next(state) {
80
91
  if (state.done()) {
81
92
  // No more interceptors
82
- return undefined;
93
+ return state.finalHandler();
83
94
  }
84
95
  // Invoke the next interceptor in the chain
85
96
  return this.invokeNextInterceptor(state);
@@ -123,4 +134,15 @@ function invokeInterceptors(context, interceptors) {
123
134
  return chain.invokeInterceptors();
124
135
  }
125
136
  exports.invokeInterceptors = invokeInterceptors;
137
+ /**
138
+ * Compose a list of interceptors as a single interceptor
139
+ * @param interceptors - A list of interceptor functions or binding keys
140
+ */
141
+ function composeInterceptors(...interceptors) {
142
+ return (ctx, next) => {
143
+ const interceptor = new GenericInterceptorChain(ctx, interceptors).asInterceptor();
144
+ return interceptor(ctx, next);
145
+ };
146
+ }
147
+ exports.composeInterceptors = composeInterceptors;
126
148
  //# sourceMappingURL=interceptor-chain.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interceptor-chain.js","sourceRoot":"","sources":["../src/interceptor-chain.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;;AAEhE,0DAAiC;AAMjC,mDAAwE;AACxE,MAAM,KAAK,GAAG,eAAY,CAAC,oCAAoC,CAAC,CAAC;AAmCjE;;GAEG;AACH,MAAM,qBAAqB;IAEzB;;;OAGG;IACH,YAAoB,YAA0C;QAA1C,iBAAY,GAAZ,YAAY,CAA8B;QALtD,WAAM,GAAG,CAAC,CAAC;IAK8C,CAAC;IAElE;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,IAAI;QACF,OAAO,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;GAIG;AACH,MAAa,uBAAuB;IA6BlC,iBAAiB;IACjB,YACU,OAAU,EAClB,YAA0D,EAC1D,UAA8B;QAFtB,YAAO,GAAP,OAAO,CAAG;QAIlB,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE;YACtC,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YACtE,IAAI,CAAC,eAAe,GAAG,GAAG,EAAE;gBAC1B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC;gBAC3C,IAAI,UAAU,EAAE;oBACd,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;iBAC3B;gBACD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC,CAAC;SACH;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YACtC,IAAI,CAAC,eAAe,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC;SAC3C;IACH,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,0DAA0D;QAC1D,MAAM,KAAK,GAAG,IAAI,qBAAqB,CAAI,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,IAAI,CACV,KAA+B;QAE/B,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE;YAChB,uBAAuB;YACvB,OAAO,SAAS,CAAC;SAClB;QACD,2CAA2C;QAC3C,OAAO,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACK,qBAAqB,CAC3B,KAA+B;QAE/B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QACjC,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACxD,OAAO,uCAAuB,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE;YACjD,wBAAwB;YACxB,IAAI,KAAK,CAAC,OAAO,EAAE;gBACjB,KAAK,CAAC,oCAAoC,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;aAC7D;YACD,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACK,eAAe,CAAC,WAAuC;QAC7D,IAAI,OAAO,WAAW,KAAK,UAAU;YAAE,OAAO,WAAW,CAAC;QAC1D,KAAK,CAAC,kCAAkC,EAAE,WAAW,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAEhD,CAAC;IACJ,CAAC;CACF;AAvGD,0DAuGC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAIhC,OAAU,EACV,YAA0C;IAE1C,MAAM,KAAK,GAAG,IAAI,uBAAuB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjE,OAAO,KAAK,CAAC,kBAAkB,EAAE,CAAC;AACpC,CAAC;AATD,gDASC"}
1
+ {"version":3,"file":"interceptor-chain.js","sourceRoot":"","sources":["../src/interceptor-chain.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import { MetadataAccessor } from '@loopback/metadata';
2
- import { BindingTemplate } from './binding';
3
- import { BindingSpec } from './binding-inspector';
2
+ import { Binding, BindingTemplate } from './binding';
3
+ import { BindingFromClassOptions, BindingSpec } from './binding-inspector';
4
4
  import { Context } from './context';
5
5
  import { GenericInterceptor, GenericInterceptorOrKey } from './interceptor-chain';
6
6
  import { InvocationArgs, InvocationContext, InvocationOptions, InvocationResult } from './invocation';
7
- import { ValueOrPromise } from './value-promise';
7
+ import { Provider } from './provider';
8
+ import { Constructor, ValueOrPromise } from './value-promise';
8
9
  /**
9
10
  * A specialized InvocationContext for interceptors
10
11
  */
@@ -111,3 +112,27 @@ export declare function intercept(...interceptorOrKeys: InterceptorOrKey[]): (ta
111
112
  * @param options - Options for the invocation
112
113
  */
113
114
  export declare function invokeMethodWithInterceptors(context: Context, target: object, methodName: string, args: InvocationArgs, options?: InvocationOptions): ValueOrPromise<InvocationResult>;
115
+ /**
116
+ * Options for an interceptor binding
117
+ */
118
+ export interface InterceptorBindingOptions extends BindingFromClassOptions {
119
+ /**
120
+ * Global or local interceptor
121
+ */
122
+ global?: boolean;
123
+ /**
124
+ * Group name for a global interceptor
125
+ */
126
+ group?: string;
127
+ /**
128
+ * Source filter for a global interceptor
129
+ */
130
+ source?: string | string[];
131
+ }
132
+ /**
133
+ * Register an interceptor function or provider class to the given context
134
+ * @param ctx - Context object
135
+ * @param interceptor - An interceptor function or provider class
136
+ * @param options - Options for the interceptor binding
137
+ */
138
+ export declare function registerInterceptor(ctx: Context, interceptor: Interceptor | Constructor<Provider<Interceptor>>, options?: InterceptorBindingOptions): Binding<Interceptor>;
@@ -4,11 +4,14 @@
4
4
  // This file is licensed under the MIT License.
5
5
  // License text available at https://opensource.org/licenses/MIT
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.registerInterceptor = exports.invokeMethodWithInterceptors = exports.intercept = exports.INTERCEPT_CLASS_KEY = exports.mergeInterceptors = exports.INTERCEPT_METHOD_KEY = exports.globalInterceptor = exports.asGlobalInterceptor = exports.InterceptedInvocationContext = void 0;
7
8
  const tslib_1 = require("tslib");
8
9
  const metadata_1 = require("@loopback/metadata");
9
10
  const assert_1 = tslib_1.__importDefault(require("assert"));
10
11
  const debug_1 = tslib_1.__importDefault(require("debug"));
11
12
  const binding_decorator_1 = require("./binding-decorator");
13
+ const binding_inspector_1 = require("./binding-inspector");
14
+ const binding_key_1 = require("./binding-key");
12
15
  const binding_sorter_1 = require("./binding-sorter");
13
16
  const interceptor_chain_1 = require("./interceptor-chain");
14
17
  const invocation_1 = require("./invocation");
@@ -241,4 +244,55 @@ function invokeMethodWithInterceptors(context, target, methodName, args, options
241
244
  }, () => invocationCtx.close());
242
245
  }
243
246
  exports.invokeMethodWithInterceptors = invokeMethodWithInterceptors;
247
+ /**
248
+ * Register an interceptor function or provider class to the given context
249
+ * @param ctx - Context object
250
+ * @param interceptor - An interceptor function or provider class
251
+ * @param options - Options for the interceptor binding
252
+ */
253
+ function registerInterceptor(ctx, interceptor, options = {}) {
254
+ var _a, _b, _c;
255
+ let { global } = options;
256
+ const { group, source } = options;
257
+ if (group != null || source != null) {
258
+ // If group or source is set, assuming global
259
+ global = global !== false;
260
+ }
261
+ const namespace = ((_b = (_a = options.namespace) !== null && _a !== void 0 ? _a : options.defaultNamespace) !== null && _b !== void 0 ? _b : global) ? keys_1.GLOBAL_INTERCEPTOR_NAMESPACE
262
+ : keys_1.LOCAL_INTERCEPTOR_NAMESPACE;
263
+ let binding;
264
+ if (binding_inspector_1.isProviderClass(interceptor)) {
265
+ binding = binding_inspector_1.createBindingFromClass(interceptor, {
266
+ defaultNamespace: namespace,
267
+ ...options,
268
+ });
269
+ if (binding.tagMap[keys_1.ContextTags.GLOBAL_INTERCEPTOR]) {
270
+ global = true;
271
+ }
272
+ ctx.add(binding);
273
+ }
274
+ else {
275
+ let key = options.key;
276
+ if (!key) {
277
+ const name = (_c = options.name) !== null && _c !== void 0 ? _c : interceptor.name;
278
+ if (!name) {
279
+ key = binding_key_1.BindingKey.generate(namespace).key;
280
+ }
281
+ else {
282
+ key = `${namespace}.${name}`;
283
+ }
284
+ }
285
+ binding = ctx
286
+ .bind(key)
287
+ .to(interceptor);
288
+ }
289
+ if (global) {
290
+ binding.apply(asGlobalInterceptor(group));
291
+ if (source) {
292
+ binding.tag({ [keys_1.ContextTags.GLOBAL_INTERCEPTOR_SOURCE]: source });
293
+ }
294
+ }
295
+ return binding;
296
+ }
297
+ exports.registerInterceptor = registerInterceptor;
244
298
  //# sourceMappingURL=interceptor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interceptor.js","sourceRoot":"","sources":["../src/interceptor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interceptor.js","sourceRoot":"","sources":["../src/interceptor.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  // This file is licensed under the MIT License.
5
5
  // License text available at https://opensource.org/licenses/MIT
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.invokeMethod = exports.InvocationContext = void 0;
7
8
  const tslib_1 = require("tslib");
8
9
  const metadata_1 = require("@loopback/metadata");
9
10
  const assert_1 = tslib_1.__importDefault(require("assert"));
@@ -1 +1 @@
1
- {"version":3,"file":"invocation.js","sourceRoot":"","sources":["../src/invocation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invocation.js","sourceRoot":"","sources":["../src/invocation.ts"],"names":[],"mappings":"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"}
package/dist/keys.d.ts CHANGED
@@ -6,6 +6,7 @@ import { BindingKey } from './binding-key';
6
6
  export declare namespace ContextTags {
7
7
  const CLASS = "class";
8
8
  const PROVIDER = "provider";
9
+ const DYNAMIC_VALUE_PROVIDER = "dynamicValueProvider";
9
10
  /**
10
11
  * Type of the artifact
11
12
  */
@@ -45,6 +46,10 @@ export declare namespace ContextTags {
45
46
  * Default namespace for global interceptors
46
47
  */
47
48
  export declare const GLOBAL_INTERCEPTOR_NAMESPACE = "globalInterceptors";
49
+ /**
50
+ * Default namespace for local interceptors
51
+ */
52
+ export declare const LOCAL_INTERCEPTOR_NAMESPACE = "interceptors";
48
53
  /**
49
54
  * Namespace for context bindings
50
55
  */
package/dist/keys.js CHANGED
@@ -4,6 +4,7 @@
4
4
  // This file is licensed under the MIT License.
5
5
  // License text available at https://opensource.org/licenses/MIT
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ContextBindings = exports.LOCAL_INTERCEPTOR_NAMESPACE = exports.GLOBAL_INTERCEPTOR_NAMESPACE = exports.ContextTags = void 0;
7
8
  const binding_key_1 = require("./binding-key");
8
9
  /**
9
10
  * Namespace for context tags
@@ -12,6 +13,7 @@ var ContextTags;
12
13
  (function (ContextTags) {
13
14
  ContextTags.CLASS = 'class';
14
15
  ContextTags.PROVIDER = 'provider';
16
+ ContextTags.DYNAMIC_VALUE_PROVIDER = 'dynamicValueProvider';
15
17
  /**
16
18
  * Type of the artifact
17
19
  */
@@ -51,6 +53,10 @@ var ContextTags;
51
53
  * Default namespace for global interceptors
52
54
  */
53
55
  exports.GLOBAL_INTERCEPTOR_NAMESPACE = 'globalInterceptors';
56
+ /**
57
+ * Default namespace for local interceptors
58
+ */
59
+ exports.LOCAL_INTERCEPTOR_NAMESPACE = 'interceptors';
54
60
  /**
55
61
  * Namespace for context bindings
56
62
  */
package/dist/keys.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"keys.js","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;AAGhE,+CAAyC;AAEzC;;GAEG;AACH,IAAiB,WAAW,CA0C3B;AA1CD,WAAiB,WAAW;IACb,iBAAK,GAAG,OAAO,CAAC;IAChB,oBAAQ,GAAG,UAAU,CAAC;IAEnC;;OAEG;IACU,gBAAI,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACU,qBAAS,GAAG,WAAW,CAAC;IACrC;;OAEG;IACU,gBAAI,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACU,eAAG,GAAG,KAAK,CAAC;IAEzB;;OAEG;IACU,6BAAiB,GAAG,kBAAkB,CAAC;IAEpD;;OAEG;IACU,8BAAkB,GAAG,mBAAmB,CAAC;IAEtD;;;;OAIG;IACU,qCAAyB,GAAG,yBAAyB,CAAC;IAEnE;;OAEG;IACU,oCAAwB,GAAG,wBAAwB,CAAC;AACnE,CAAC,EA1CgB,WAAW,GAAX,mBAAW,KAAX,mBAAW,QA0C3B;AAED;;GAEG;AACU,QAAA,4BAA4B,GAAG,oBAAoB,CAAC;AAEjE;;GAEG;AACH,IAAiB,eAAe,CAc/B;AAdD,WAAiB,eAAe;IAC9B;;OAEG;IACU,sCAAsB,GAAG,wBAAU,CAAC,MAAM,CAErD,GAAG,wBAAU,CAAC,gBAAgB,WAAW,CAAC,CAAC;IAE7C;;OAEG;IACU,iDAAiC,GAAG,wBAAU,CAAC,MAAM,CAChE,iCAAiC,CAClC,CAAC;AACJ,CAAC,EAdgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAc/B"}
1
+ {"version":3,"file":"keys.js","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,iCAAiC;AACjC,+CAA+C;AAC/C,gEAAgE;;;AAGhE,+CAAyC;AAEzC;;GAEG;AACH,IAAiB,WAAW,CA2C3B;AA3CD,WAAiB,WAAW;IACb,iBAAK,GAAG,OAAO,CAAC;IAChB,oBAAQ,GAAG,UAAU,CAAC;IACtB,kCAAsB,GAAG,sBAAsB,CAAC;IAE7D;;OAEG;IACU,gBAAI,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACU,qBAAS,GAAG,WAAW,CAAC;IACrC;;OAEG;IACU,gBAAI,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACU,eAAG,GAAG,KAAK,CAAC;IAEzB;;OAEG;IACU,6BAAiB,GAAG,kBAAkB,CAAC;IAEpD;;OAEG;IACU,8BAAkB,GAAG,mBAAmB,CAAC;IAEtD;;;;OAIG;IACU,qCAAyB,GAAG,yBAAyB,CAAC;IAEnE;;OAEG;IACU,oCAAwB,GAAG,wBAAwB,CAAC;AACnE,CAAC,EA3CgB,WAAW,GAAX,mBAAW,KAAX,mBAAW,QA2C3B;AAED;;GAEG;AACU,QAAA,4BAA4B,GAAG,oBAAoB,CAAC;AAEjE;;GAEG;AACU,QAAA,2BAA2B,GAAG,cAAc,CAAC;AAE1D;;GAEG;AACH,IAAiB,eAAe,CAc/B;AAdD,WAAiB,eAAe;IAC9B;;OAEG;IACU,sCAAsB,GAAG,wBAAU,CAAC,MAAM,CAErD,GAAG,wBAAU,CAAC,gBAAgB,WAAW,CAAC,CAAC;IAE7C;;OAEG;IACU,iDAAiC,GAAG,wBAAU,CAAC,MAAM,CAChE,iCAAiC,CAClC,CAAC;AACJ,CAAC,EAdgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAc/B"}