@loopback/core 2.16.2 → 2.17.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.
|
@@ -21,6 +21,12 @@ export declare type LifeCycleObserverOptions = {
|
|
|
21
21
|
* observers are notified in the reverse order during `stop`.
|
|
22
22
|
*/
|
|
23
23
|
orderedGroups: string[];
|
|
24
|
+
/**
|
|
25
|
+
* Override and disable lifecycle observer groups. This setting applies to
|
|
26
|
+
* both ordered groups (i.e. those defined in `orderedGroups`) and unordered
|
|
27
|
+
* groups.
|
|
28
|
+
*/
|
|
29
|
+
disabledGroups?: string[];
|
|
24
30
|
/**
|
|
25
31
|
* Notify observers of the same group in parallel, default to `true`
|
|
26
32
|
*/
|
|
@@ -124,6 +124,7 @@ let LifeCycleObserverRegistry = class LifeCycleObserverRegistry {
|
|
|
124
124
|
* @param groups - Observer groups
|
|
125
125
|
*/
|
|
126
126
|
async notifyGroups(events, groups, reverse = false) {
|
|
127
|
+
var _a;
|
|
127
128
|
const observers = await this.observersView.values();
|
|
128
129
|
const bindings = this.observersView.bindings;
|
|
129
130
|
const found = observers.some(observer => events.some(e => typeof observer[e] === 'function'));
|
|
@@ -134,6 +135,10 @@ let LifeCycleObserverRegistry = class LifeCycleObserverRegistry {
|
|
|
134
135
|
groups = [...groups].reverse();
|
|
135
136
|
}
|
|
136
137
|
for (const group of groups) {
|
|
138
|
+
if ((_a = this.options.disabledGroups) === null || _a === void 0 ? void 0 : _a.includes(group.group)) {
|
|
139
|
+
debug('Notification skipped (Group is disabled): %s', group.group);
|
|
140
|
+
continue;
|
|
141
|
+
}
|
|
137
142
|
const observersForGroup = [];
|
|
138
143
|
const bindingsInGroup = reverse
|
|
139
144
|
? group.bindings.reverse()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle-registry.js","sourceRoot":"","sources":["../src/lifecycle-registry.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,8BAA8B;AAC9B,+CAA+C;AAC/C,gEAAgE;;;;AAEhE,+CAO2B;AAC3B,iCAA8C;AAC9C,2CAAuE;AACvE,sCAAuC;AACvC,MAAM,KAAK,GAAG,YAAY,CAAC,yBAAyB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"lifecycle-registry.js","sourceRoot":"","sources":["../src/lifecycle-registry.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loopback/core",
|
|
3
3
|
"description": "Define and implement core constructs such as Application and Component",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.17.0",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -35,16 +35,16 @@
|
|
|
35
35
|
"!*/__tests__"
|
|
36
36
|
],
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@loopback/context": "^3.17.
|
|
39
|
-
"debug": "^4.3.
|
|
40
|
-
"tslib": "^2.3.
|
|
38
|
+
"@loopback/context": "^3.17.2",
|
|
39
|
+
"debug": "^4.3.2",
|
|
40
|
+
"tslib": "^2.3.1"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
|
-
"@loopback/build": "^7.0.
|
|
44
|
-
"@loopback/eslint-config": "^11.0.
|
|
45
|
-
"@loopback/testlab": "^3.4.
|
|
46
|
-
"@types/debug": "^4.1.
|
|
43
|
+
"@loopback/build": "^7.0.1",
|
|
44
|
+
"@loopback/eslint-config": "^11.0.1",
|
|
45
|
+
"@loopback/testlab": "^3.4.3",
|
|
46
|
+
"@types/debug": "^4.1.7",
|
|
47
47
|
"@types/node": "^10.17.60"
|
|
48
48
|
},
|
|
49
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "1df36bb1ee2e513d9e197bd6010c4cfb296d50b8"
|
|
50
50
|
}
|
|
@@ -38,6 +38,12 @@ export type LifeCycleObserverOptions = {
|
|
|
38
38
|
* observers are notified in the reverse order during `stop`.
|
|
39
39
|
*/
|
|
40
40
|
orderedGroups: string[];
|
|
41
|
+
/**
|
|
42
|
+
* Override and disable lifecycle observer groups. This setting applies to
|
|
43
|
+
* both ordered groups (i.e. those defined in `orderedGroups`) and unordered
|
|
44
|
+
* groups.
|
|
45
|
+
*/
|
|
46
|
+
disabledGroups?: string[];
|
|
41
47
|
/**
|
|
42
48
|
* Notify observers of the same group in parallel, default to `true`
|
|
43
49
|
*/
|
|
@@ -211,6 +217,10 @@ export class LifeCycleObserverRegistry implements LifeCycleObserver {
|
|
|
211
217
|
groups = [...groups].reverse();
|
|
212
218
|
}
|
|
213
219
|
for (const group of groups) {
|
|
220
|
+
if (this.options.disabledGroups?.includes(group.group)) {
|
|
221
|
+
debug('Notification skipped (Group is disabled): %s', group.group);
|
|
222
|
+
continue;
|
|
223
|
+
}
|
|
214
224
|
const observersForGroup: LifeCycleObserver[] = [];
|
|
215
225
|
const bindingsInGroup = reverse
|
|
216
226
|
? group.bindings.reverse()
|
package/src/mixin-target.ts
CHANGED
|
@@ -61,11 +61,9 @@ import {Constructor} from '@loopback/context';
|
|
|
61
61
|
* }
|
|
62
62
|
* ```
|
|
63
63
|
*/
|
|
64
|
-
export type MixinTarget<T extends object> = Constructor<
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}
|
|
71
|
-
>;
|
|
64
|
+
export type MixinTarget<T extends object> = Constructor<{
|
|
65
|
+
// Enumerate only public members to avoid the following compiler error:
|
|
66
|
+
// Property '(name)' of exported class expression
|
|
67
|
+
// may not be private or protected.ts(4094)
|
|
68
|
+
[P in keyof T]: T[P];
|
|
69
|
+
}>;
|