@eggjs/tegg-plugin 3.62.0 → 4.0.0-beta.10
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/README.md +13 -1
- package/dist/app/extend/application.d.ts +50 -0
- package/dist/app/extend/application.js +79 -0
- package/dist/app/extend/application.unittest.d.ts +22 -0
- package/dist/app/extend/application.unittest.js +55 -0
- package/dist/app/extend/context.d.ts +20 -0
- package/dist/app/extend/context.js +35 -0
- package/dist/app/middleware/tegg_ctx_lifecycle_middleware.d.ts +3 -0
- package/dist/app/middleware/tegg_ctx_lifecycle_middleware.js +5 -0
- package/{app.d.ts → dist/app.d.ts} +5 -5
- package/dist/app.js +63 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +4 -0
- package/{lib → dist/lib}/AppLoadUnit.d.ts +2 -2
- package/dist/lib/AppLoadUnit.js +90 -0
- package/{lib → dist/lib}/AppLoadUnitInstance.d.ts +3 -3
- package/dist/lib/AppLoadUnitInstance.js +82 -0
- package/{lib → dist/lib}/CompatibleUtil.d.ts +4 -4
- package/dist/lib/CompatibleUtil.js +95 -0
- package/{lib → dist/lib}/ConfigSourceLoadUnitHook.d.ts +2 -2
- package/dist/lib/ConfigSourceLoadUnitHook.js +21 -0
- package/{lib → dist/lib}/EggAppLoader.d.ts +5 -4
- package/dist/lib/EggAppLoader.js +128 -0
- package/{lib → dist/lib}/EggCompatibleObject.d.ts +4 -4
- package/dist/lib/EggCompatibleObject.js +42 -0
- package/{lib → dist/lib}/EggCompatibleProtoImpl.d.ts +3 -2
- package/dist/lib/EggCompatibleProtoImpl.js +52 -0
- package/dist/lib/EggContextCompatibleHook.d.ts +10 -0
- package/dist/lib/EggContextCompatibleHook.js +44 -0
- package/{lib → dist/lib}/EggContextHandler.d.ts +3 -3
- package/dist/lib/EggContextHandler.js +26 -0
- package/{lib → dist/lib}/EggContextImpl.d.ts +2 -2
- package/dist/lib/EggContextImpl.js +15 -0
- package/{lib → dist/lib}/EggModuleLoader.d.ts +1 -1
- package/dist/lib/EggModuleLoader.js +54 -0
- package/{lib → dist/lib}/EggQualifierProtoHook.d.ts +2 -2
- package/dist/lib/EggQualifierProtoHook.js +62 -0
- package/{lib → dist/lib}/ModuleConfigLoader.d.ts +1 -1
- package/dist/lib/ModuleConfigLoader.js +81 -0
- package/{lib → dist/lib}/ModuleHandler.d.ts +3 -3
- package/dist/lib/ModuleHandler.js +53 -0
- package/dist/lib/Utils.js +36 -0
- package/dist/lib/ctx_lifecycle_middleware.d.ts +2 -0
- package/dist/lib/ctx_lifecycle_middleware.js +33 -0
- package/dist/lib/run_in_background.js +58 -0
- package/dist/types.d.ts +8 -0
- package/dist/types.js +5 -0
- package/package.json +67 -42
- package/app/extend/application.d.ts +0 -24
- package/app/extend/application.js +0 -78
- package/app/extend/application.unittest.d.ts +0 -8
- package/app/extend/application.unittest.js +0 -52
- package/app/extend/context.d.ts +0 -14
- package/app/extend/context.js +0 -36
- package/app/middleware/tegg_ctx_lifecycle_middleware.d.ts +0 -2
- package/app/middleware/tegg_ctx_lifecycle_middleware.js +0 -11
- package/app.js +0 -60
- package/lib/AppLoadUnit.js +0 -85
- package/lib/AppLoadUnitInstance.js +0 -83
- package/lib/CompatibleUtil.js +0 -98
- package/lib/ConfigSourceLoadUnitHook.js +0 -24
- package/lib/EggAppLoader.js +0 -129
- package/lib/EggCompatibleObject.js +0 -40
- package/lib/EggCompatibleProtoImpl.js +0 -49
- package/lib/EggContextCompatibleHook.d.ts +0 -10
- package/lib/EggContextCompatibleHook.js +0 -45
- package/lib/EggContextHandler.js +0 -28
- package/lib/EggContextImpl.js +0 -17
- package/lib/EggModuleLoader.js +0 -55
- package/lib/EggQualifierProtoHook.js +0 -53
- package/lib/ModuleConfigLoader.js +0 -87
- package/lib/ModuleHandler.js +0 -58
- package/lib/Utils.js +0 -39
- package/lib/ctx_lifecycle_middleware.d.ts +0 -2
- package/lib/ctx_lifecycle_middleware.js +0 -54
- package/lib/run_in_background.js +0 -59
- package/typings/index.d.ts +0 -79
- /package/{lib → dist/lib}/Utils.d.ts +0 -0
- /package/{lib → dist/lib}/run_in_background.d.ts +0 -0
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { MockApplication } from 'egg-mock';
|
|
2
|
-
import { Context } from 'egg';
|
|
3
|
-
declare const _default: {
|
|
4
|
-
mockModuleContext(this: MockApplication, data?: any): Promise<Context>;
|
|
5
|
-
destroyModuleContext(ctx: Context): Promise<void>;
|
|
6
|
-
mockModuleContextScope<R = any>(this: MockApplication, fn: (ctx: Context) => Promise<R>, data?: any): Promise<R>;
|
|
7
|
-
};
|
|
8
|
-
export default _default;
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const EggContextImpl_1 = require("../../lib/EggContextImpl");
|
|
4
|
-
const TEGG_LIFECYCLE_CACHE = new Map();
|
|
5
|
-
let hasMockModuleContext = false;
|
|
6
|
-
exports.default = {
|
|
7
|
-
async mockModuleContext(data) {
|
|
8
|
-
this.deprecate('app.mockModuleContext is deprecated, use mockModuleContextScope.');
|
|
9
|
-
if (hasMockModuleContext) {
|
|
10
|
-
throw new Error('should not call mockModuleContext twice.');
|
|
11
|
-
}
|
|
12
|
-
const ctx = this.mockContext(data);
|
|
13
|
-
const teggCtx = new EggContextImpl_1.EggContextImpl(ctx);
|
|
14
|
-
const lifecycle = {};
|
|
15
|
-
TEGG_LIFECYCLE_CACHE.set(teggCtx, lifecycle);
|
|
16
|
-
if (teggCtx.init) {
|
|
17
|
-
await teggCtx.init(lifecycle);
|
|
18
|
-
}
|
|
19
|
-
hasMockModuleContext = true;
|
|
20
|
-
return ctx;
|
|
21
|
-
},
|
|
22
|
-
async destroyModuleContext(ctx) {
|
|
23
|
-
hasMockModuleContext = false;
|
|
24
|
-
const teggCtx = ctx.teggContext;
|
|
25
|
-
if (!teggCtx) {
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
const lifecycle = TEGG_LIFECYCLE_CACHE.get(teggCtx);
|
|
29
|
-
if (teggCtx.destroy && lifecycle) {
|
|
30
|
-
await teggCtx.destroy(lifecycle);
|
|
31
|
-
}
|
|
32
|
-
},
|
|
33
|
-
async mockModuleContextScope(fn, data) {
|
|
34
|
-
if (hasMockModuleContext) {
|
|
35
|
-
throw new Error('mockModuleContextScope can not use with mockModuleContext, should use mockModuleContextScope only.');
|
|
36
|
-
}
|
|
37
|
-
return this.mockContextScope(async (ctx) => {
|
|
38
|
-
const teggCtx = new EggContextImpl_1.EggContextImpl(ctx);
|
|
39
|
-
const lifecycle = {};
|
|
40
|
-
if (teggCtx.init) {
|
|
41
|
-
await teggCtx.init(lifecycle);
|
|
42
|
-
}
|
|
43
|
-
try {
|
|
44
|
-
return await fn(ctx);
|
|
45
|
-
}
|
|
46
|
-
finally {
|
|
47
|
-
await teggCtx.destroy(lifecycle);
|
|
48
|
-
}
|
|
49
|
-
}, data);
|
|
50
|
-
},
|
|
51
|
-
};
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24udW5pdHRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJhcHBsaWNhdGlvbi51bml0dGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBLDZEQUEwRDtBQUcxRCxNQUFNLG9CQUFvQixHQUFnRCxJQUFJLEdBQUcsRUFBRSxDQUFDO0FBRXBGLElBQUksb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0FBRWpDLGtCQUFlO0lBQ2IsS0FBSyxDQUFDLGlCQUFpQixDQUF3QixJQUFVO1FBQ3ZELElBQUksQ0FBQyxTQUFTLENBQUMsa0VBQWtFLENBQUMsQ0FBQztRQUNuRixJQUFJLG9CQUFvQixFQUFFLENBQUM7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO1FBQzlELENBQUM7UUFDRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLE1BQU0sT0FBTyxHQUFHLElBQUksK0JBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4QyxNQUFNLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDckIsb0JBQW9CLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUM3QyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNqQixNQUFNLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDaEMsQ0FBQztRQUNELG9CQUFvQixHQUFHLElBQUksQ0FBQztRQUM1QixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxLQUFLLENBQUMsb0JBQW9CLENBQUMsR0FBWTtRQUNyQyxvQkFBb0IsR0FBRyxLQUFLLENBQUM7UUFFN0IsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLFdBQVcsQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixPQUFPO1FBQ1QsQ0FBQztRQUNELE1BQU0sU0FBUyxHQUFHLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwRCxJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksU0FBUyxFQUFFLENBQUM7WUFDakMsTUFBTSxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ25DLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLHNCQUFzQixDQUErQixFQUFnQyxFQUFFLElBQVU7UUFDckcsSUFBSSxvQkFBb0IsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0dBQW9HLENBQUMsQ0FBQztRQUN4SCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFDLEdBQUcsRUFBQyxFQUFFO1lBQ3ZDLE1BQU0sT0FBTyxHQUFHLElBQUksK0JBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN4QyxNQUFNLFNBQVMsR0FBRyxFQUFFLENBQUM7WUFDckIsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2pCLE1BQU0sT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNoQyxDQUFDO1lBQ0QsSUFBSSxDQUFDO2dCQUNILE9BQU8sTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdkIsQ0FBQztvQkFBUyxDQUFDO2dCQUNULE1BQU0sT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNuQyxDQUFDO1FBQ0gsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ1gsQ0FBQztDQUNGLENBQUMifQ==
|
package/app/extend/context.d.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Context } from 'egg';
|
|
2
|
-
import { EggContext } from '@eggjs/tegg-runtime';
|
|
3
|
-
import { TEGG_CONTEXT } from '@eggjs/egg-module-common';
|
|
4
|
-
import { EggProtoImplClass, QualifierInfo } from '@eggjs/tegg';
|
|
5
|
-
export interface TEggPluginContext extends Context {
|
|
6
|
-
[TEGG_CONTEXT]: EggContext;
|
|
7
|
-
}
|
|
8
|
-
declare const _default: {
|
|
9
|
-
beginModuleScope(this: TEggPluginContext, func: () => Promise<void>): Promise<void>;
|
|
10
|
-
readonly teggContext: EggContext;
|
|
11
|
-
getEggObject(this: Context, clazz: EggProtoImplClass, name?: string): Promise<object>;
|
|
12
|
-
getEggObjectFromName(this: Context, name: string, qualifiers?: QualifierInfo | QualifierInfo[]): Promise<object>;
|
|
13
|
-
};
|
|
14
|
-
export default _default;
|
package/app/extend/context.js
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const egg_module_common_1 = require("@eggjs/egg-module-common");
|
|
7
|
-
const ctx_lifecycle_middleware_1 = __importDefault(require("../../lib/ctx_lifecycle_middleware"));
|
|
8
|
-
const tegg_1 = require("@eggjs/tegg");
|
|
9
|
-
exports.default = {
|
|
10
|
-
async beginModuleScope(func) {
|
|
11
|
-
await (0, ctx_lifecycle_middleware_1.default)(this, func);
|
|
12
|
-
},
|
|
13
|
-
get teggContext() {
|
|
14
|
-
if (!this[egg_module_common_1.TEGG_CONTEXT]) {
|
|
15
|
-
throw new Error('tegg context have not ready, should call after teggCtxLifecycleMiddleware');
|
|
16
|
-
}
|
|
17
|
-
return this[egg_module_common_1.TEGG_CONTEXT];
|
|
18
|
-
},
|
|
19
|
-
async getEggObject(clazz, name) {
|
|
20
|
-
const protoObj = tegg_1.PrototypeUtil.getClazzProto(clazz);
|
|
21
|
-
if (!protoObj) {
|
|
22
|
-
throw new Error(`can not get proto for clazz ${clazz.name}`);
|
|
23
|
-
}
|
|
24
|
-
const proto = protoObj;
|
|
25
|
-
const eggObject = await this.app.eggContainerFactory.getOrCreateEggObject(proto, name !== null && name !== void 0 ? name : proto.name);
|
|
26
|
-
return eggObject.obj;
|
|
27
|
-
},
|
|
28
|
-
async getEggObjectFromName(name, qualifiers) {
|
|
29
|
-
if (qualifiers) {
|
|
30
|
-
qualifiers = Array.isArray(qualifiers) ? qualifiers : [qualifiers];
|
|
31
|
-
}
|
|
32
|
-
const eggObject = await this.app.eggContainerFactory.getOrCreateEggObjectFromName(name, qualifiers);
|
|
33
|
-
return eggObject.obj;
|
|
34
|
-
},
|
|
35
|
-
};
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSxnRUFBd0Q7QUFDeEQsa0dBQXdFO0FBQ3hFLHNDQUE4RTtBQU85RSxrQkFBZTtJQUNiLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBMEIsSUFBeUI7UUFDdkUsTUFBTSxJQUFBLGtDQUFzQixFQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxnQ0FBWSxDQUFDLEVBQUUsQ0FBQztZQUN4QixNQUFNLElBQUksS0FBSyxDQUFDLDJFQUEyRSxDQUFDLENBQUM7UUFDL0YsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLGdDQUFZLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsS0FBSyxDQUFDLFlBQVksQ0FBZ0IsS0FBd0IsRUFBRSxJQUFhO1FBQ3ZFLE1BQU0sUUFBUSxHQUFHLG9CQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNkLE1BQU0sSUFBSSxLQUFLLENBQUMsK0JBQStCLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELENBQUM7UUFDRCxNQUFNLEtBQUssR0FBRyxRQUF3QixDQUFDO1FBQ3ZDLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsSUFBSSxhQUFKLElBQUksY0FBSixJQUFJLEdBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JHLE9BQU8sU0FBUyxDQUFDLEdBQUcsQ0FBQztJQUN2QixDQUFDO0lBRUQsS0FBSyxDQUFDLG9CQUFvQixDQUFnQixJQUFZLEVBQUUsVUFBNEM7UUFDbEcsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNmLFVBQVUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUUsVUFBVSxDQUFFLENBQUM7UUFDdkUsQ0FBQztRQUNELE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDcEcsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDO0lBQ3ZCLENBQUM7Q0FDRixDQUFDIn0=
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.default = default_1;
|
|
7
|
-
const ctx_lifecycle_middleware_1 = __importDefault(require("../../lib/ctx_lifecycle_middleware"));
|
|
8
|
-
function default_1() {
|
|
9
|
-
return ctx_lifecycle_middleware_1.default;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVnZ19jdHhfbGlmZWN5Y2xlX21pZGRsZXdhcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZWdnX2N0eF9saWZlY3ljbGVfbWlkZGxld2FyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLDRCQUVDO0FBSkQsa0dBQXdFO0FBRXhFO0lBQ0UsT0FBTyxrQ0FBc0IsQ0FBQztBQUNoQyxDQUFDIn0=
|
package/app.js
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
require("./lib/AppLoadUnit");
|
|
4
|
-
require("./lib/AppLoadUnitInstance");
|
|
5
|
-
require("./lib/EggCompatibleObject");
|
|
6
|
-
const EggContextCompatibleHook_1 = require("./lib/EggContextCompatibleHook");
|
|
7
|
-
const CompatibleUtil_1 = require("./lib/CompatibleUtil");
|
|
8
|
-
const ModuleHandler_1 = require("./lib/ModuleHandler");
|
|
9
|
-
const EggContextHandler_1 = require("./lib/EggContextHandler");
|
|
10
|
-
const run_in_background_1 = require("./lib/run_in_background");
|
|
11
|
-
const EggQualifierProtoHook_1 = require("./lib/EggQualifierProtoHook");
|
|
12
|
-
const tegg_metadata_1 = require("@eggjs/tegg-metadata");
|
|
13
|
-
const ConfigSourceLoadUnitHook_1 = require("./lib/ConfigSourceLoadUnitHook");
|
|
14
|
-
class App {
|
|
15
|
-
constructor(app) {
|
|
16
|
-
this.app = app;
|
|
17
|
-
}
|
|
18
|
-
configWillLoad() {
|
|
19
|
-
this.app.config.coreMiddleware.push('teggCtxLifecycleMiddleware');
|
|
20
|
-
}
|
|
21
|
-
configDidLoad() {
|
|
22
|
-
this.eggContextHandler = new EggContextHandler_1.EggContextHandler(this.app);
|
|
23
|
-
this.app.eggContextHandler = this.eggContextHandler;
|
|
24
|
-
this.eggContextHandler.register();
|
|
25
|
-
this.app.moduleHandler = new ModuleHandler_1.ModuleHandler(this.app);
|
|
26
|
-
}
|
|
27
|
-
async didLoad() {
|
|
28
|
-
(0, run_in_background_1.hijackRunInBackground)(this.app);
|
|
29
|
-
this.loadUnitMultiInstanceProtoHook = new tegg_metadata_1.LoadUnitMultiInstanceProtoHook();
|
|
30
|
-
this.app.loadUnitLifecycleUtil.registerLifecycle(this.loadUnitMultiInstanceProtoHook);
|
|
31
|
-
// wait all file loaded, so app/ctx has all properties
|
|
32
|
-
this.eggQualifierProtoHook = new EggQualifierProtoHook_1.EggQualifierProtoHook(this.app);
|
|
33
|
-
this.app.loadUnitLifecycleUtil.registerLifecycle(this.eggQualifierProtoHook);
|
|
34
|
-
this.configSourceEggPrototypeHook = new ConfigSourceLoadUnitHook_1.ConfigSourceLoadUnitHook();
|
|
35
|
-
this.app.loadUnitLifecycleUtil.registerLifecycle(this.configSourceEggPrototypeHook);
|
|
36
|
-
// start load tegg objects
|
|
37
|
-
await this.app.moduleHandler.init();
|
|
38
|
-
this.compatibleHook = new EggContextCompatibleHook_1.EggContextCompatibleHook(this.app.moduleHandler);
|
|
39
|
-
this.app.eggContextLifecycleUtil.registerLifecycle(this.compatibleHook);
|
|
40
|
-
}
|
|
41
|
-
async beforeClose() {
|
|
42
|
-
CompatibleUtil_1.CompatibleUtil.clean();
|
|
43
|
-
await this.app.moduleHandler.destroy();
|
|
44
|
-
if (this.compatibleHook) {
|
|
45
|
-
this.app.eggContextLifecycleUtil.deleteLifecycle(this.compatibleHook);
|
|
46
|
-
}
|
|
47
|
-
if (this.eggQualifierProtoHook) {
|
|
48
|
-
this.app.loadUnitLifecycleUtil.deleteLifecycle(this.eggQualifierProtoHook);
|
|
49
|
-
}
|
|
50
|
-
if (this.configSourceEggPrototypeHook) {
|
|
51
|
-
this.app.loadUnitLifecycleUtil.deleteLifecycle(this.configSourceEggPrototypeHook);
|
|
52
|
-
}
|
|
53
|
-
if (this.loadUnitMultiInstanceProtoHook) {
|
|
54
|
-
this.app.loadUnitLifecycleUtil.deleteLifecycle(this.loadUnitMultiInstanceProtoHook);
|
|
55
|
-
}
|
|
56
|
-
tegg_metadata_1.LoadUnitMultiInstanceProtoHook.clear();
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
exports.default = App;
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXBwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsNkJBQTJCO0FBQzNCLHFDQUFtQztBQUNuQyxxQ0FBbUM7QUFFbkMsNkVBQTBFO0FBQzFFLHlEQUFzRDtBQUN0RCx1REFBb0Q7QUFDcEQsK0RBQTREO0FBQzVELCtEQUFnRTtBQUNoRSx1RUFBb0U7QUFDcEUsd0RBQXNFO0FBQ3RFLDZFQUEwRTtBQUUxRSxNQUFxQixHQUFHO0lBUXRCLFlBQVksR0FBZ0I7UUFDMUIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7SUFDakIsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxxQ0FBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7UUFDcEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxHQUFHLElBQUksNkJBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELEtBQUssQ0FBQyxPQUFPO1FBQ1gsSUFBQSx5Q0FBcUIsRUFBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLDhCQUE4QixHQUFHLElBQUksOENBQThCLEVBQUUsQ0FBQztRQUMzRSxJQUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1FBRXRGLHNEQUFzRDtRQUN0RCxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSw2Q0FBcUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUU3RSxJQUFJLENBQUMsNEJBQTRCLEdBQUcsSUFBSSxtREFBd0IsRUFBRSxDQUFDO1FBQ25FLElBQUksQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFFcEYsMEJBQTBCO1FBQzFCLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLG1EQUF3QixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFXO1FBQ2YsK0JBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN2QixNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3ZDLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4RSxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUM3RSxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztZQUN0QyxJQUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUNwRixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsOEJBQThCLEVBQUUsQ0FBQztZQUN4QyxJQUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsOEJBQThCLENBQUMsQ0FBQztRQUN0RixDQUFDO1FBQ0QsOENBQThCLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDekMsQ0FBQztDQUNGO0FBMURELHNCQTBEQyJ9
|
package/lib/AppLoadUnit.js
DELETED
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AppLoadUnit = void 0;
|
|
4
|
-
const tegg_metadata_1 = require("@eggjs/tegg-metadata");
|
|
5
|
-
const tegg_1 = require("@eggjs/tegg");
|
|
6
|
-
const tegg_common_util_1 = require("@eggjs/tegg-common-util");
|
|
7
|
-
class AppLoadUnit {
|
|
8
|
-
constructor(name, unitPath, loader) {
|
|
9
|
-
this.type = tegg_metadata_1.EggLoadUnitType.APP;
|
|
10
|
-
this.protoMap = new Map();
|
|
11
|
-
this.id = tegg_1.IdenticalUtil.createLoadUnitId(name);
|
|
12
|
-
this.name = name;
|
|
13
|
-
this.unitPath = unitPath;
|
|
14
|
-
this.loader = loader;
|
|
15
|
-
}
|
|
16
|
-
async init() {
|
|
17
|
-
const clazzList = this.loader.load();
|
|
18
|
-
for (const clazz of clazzList) {
|
|
19
|
-
// TODO duplicate code, same in ModuleLoadUnit
|
|
20
|
-
const defaultQualifier = [{
|
|
21
|
-
attribute: tegg_1.InitTypeQualifierAttribute,
|
|
22
|
-
value: tegg_1.PrototypeUtil.getInitType(clazz, {
|
|
23
|
-
unitPath: this.unitPath,
|
|
24
|
-
moduleName: this.name,
|
|
25
|
-
}),
|
|
26
|
-
}, {
|
|
27
|
-
attribute: tegg_1.LoadUnitNameQualifierAttribute,
|
|
28
|
-
value: this.name,
|
|
29
|
-
}];
|
|
30
|
-
defaultQualifier.forEach(qualifier => {
|
|
31
|
-
tegg_1.QualifierUtil.addProtoQualifier(clazz, qualifier.attribute, qualifier.value);
|
|
32
|
-
});
|
|
33
|
-
const protos = await tegg_metadata_1.EggPrototypeCreatorFactory.createProto(clazz, this);
|
|
34
|
-
for (const proto of protos) {
|
|
35
|
-
tegg_metadata_1.EggPrototypeFactory.instance.registerPrototype(proto, this);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
containPrototype(proto) {
|
|
40
|
-
var _a;
|
|
41
|
-
return !!((_a = this.protoMap.get(proto.name)) === null || _a === void 0 ? void 0 : _a.find(t => t === proto));
|
|
42
|
-
}
|
|
43
|
-
getEggPrototype(name, qualifiers) {
|
|
44
|
-
const protos = this.protoMap.get(name);
|
|
45
|
-
return (protos === null || protos === void 0 ? void 0 : protos.filter(proto => proto.verifyQualifiers(qualifiers))) || [];
|
|
46
|
-
}
|
|
47
|
-
registerEggPrototype(proto) {
|
|
48
|
-
const protoList = tegg_common_util_1.MapUtil.getOrStore(this.protoMap, proto.name, []);
|
|
49
|
-
protoList.push(proto);
|
|
50
|
-
}
|
|
51
|
-
deletePrototype(proto) {
|
|
52
|
-
const protos = this.protoMap.get(proto.name);
|
|
53
|
-
if (protos) {
|
|
54
|
-
const index = protos.indexOf(proto);
|
|
55
|
-
if (index !== -1) {
|
|
56
|
-
protos.splice(index, 1);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
async destroy() {
|
|
61
|
-
for (const namedProtos of this.protoMap.values()) {
|
|
62
|
-
// Delete prototype will delete item
|
|
63
|
-
// array iterator is not safe
|
|
64
|
-
const protos = namedProtos.slice();
|
|
65
|
-
for (const proto of protos) {
|
|
66
|
-
tegg_metadata_1.EggPrototypeFactory.instance.deletePrototype(proto, this);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
this.protoMap.clear();
|
|
70
|
-
}
|
|
71
|
-
iterateEggPrototype() {
|
|
72
|
-
const protos = Array.from(this.protoMap.values())
|
|
73
|
-
.reduce((p, c) => {
|
|
74
|
-
p = p.concat(c);
|
|
75
|
-
return p;
|
|
76
|
-
}, []);
|
|
77
|
-
return protos.values();
|
|
78
|
-
}
|
|
79
|
-
static createModule(ctx) {
|
|
80
|
-
return new AppLoadUnit('tegg-app', ctx.unitPath, ctx.loader);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
exports.AppLoadUnit = AppLoadUnit;
|
|
84
|
-
tegg_metadata_1.LoadUnitFactory.registerLoadUnitCreator(tegg_metadata_1.EggLoadUnitType.APP, AppLoadUnit.createModule);
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwTG9hZFVuaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJBcHBMb2FkVW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx3REFVOEI7QUFDOUIsc0NBT3FCO0FBQ3JCLDhEQUFrRDtBQUVsRCxNQUFhLFdBQVc7SUFRdEIsWUFBWSxJQUFZLEVBQUUsUUFBZ0IsRUFBRSxNQUFjO1FBSmpELFNBQUksR0FBd0IsK0JBQWUsQ0FBQyxHQUFHLENBQUM7UUFFakQsYUFBUSxHQUEwQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBR2xFLElBQUksQ0FBQyxFQUFFLEdBQUcsb0JBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQsS0FBSyxDQUFDLElBQUk7UUFDUixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JDLEtBQUssTUFBTSxLQUFLLElBQUksU0FBUyxFQUFFLENBQUM7WUFDOUIsOENBQThDO1lBQzlDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQztvQkFDeEIsU0FBUyxFQUFFLGlDQUEwQjtvQkFDckMsS0FBSyxFQUFFLG9CQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRTt3QkFDdEMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO3dCQUN2QixVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUk7cUJBQ3RCLENBQUU7aUJBQ0osRUFBRTtvQkFDRCxTQUFTLEVBQUUscUNBQThCO29CQUN6QyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUk7aUJBQ2pCLENBQUMsQ0FBQztZQUNILGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDbkMsb0JBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDL0UsQ0FBQyxDQUFDLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLDBDQUEwQixDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDekUsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDM0IsbUNBQW1CLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztZQUM5RCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFtQjs7UUFDbEMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFBLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsMENBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELGVBQWUsQ0FBQyxJQUFZLEVBQUUsVUFBMkI7UUFDdkQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkMsT0FBTyxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSSxFQUFFLENBQUM7SUFDM0UsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQW1CO1FBQ3RDLE1BQU0sU0FBUyxHQUFHLDBCQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNwRSxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBbUI7UUFDakMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdDLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BDLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ2pCLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzFCLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxPQUFPO1FBQ1gsS0FBSyxNQUFNLFdBQVcsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDakQsb0NBQW9DO1lBQ3BDLDZCQUE2QjtZQUM3QixNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkMsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDM0IsbUNBQW1CLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDNUQsQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsTUFBTSxNQUFNLEdBQW1CLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUM5RCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDZixDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoQixPQUFPLENBQUMsQ0FBQztRQUNYLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNULE9BQU8sTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQTZCO1FBQy9DLE9BQU8sSUFBSSxXQUFXLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9ELENBQUM7Q0FDRjtBQXZGRCxrQ0F1RkM7QUFFRCwrQkFBZSxDQUFDLHVCQUF1QixDQUFDLCtCQUFlLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQyJ9
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AppLoadUnitInstance = void 0;
|
|
4
|
-
const tegg_metadata_1 = require("@eggjs/tegg-metadata");
|
|
5
|
-
const tegg_1 = require("@eggjs/tegg");
|
|
6
|
-
const tegg_common_util_1 = require("@eggjs/tegg-common-util");
|
|
7
|
-
const tegg_runtime_1 = require("@eggjs/tegg-runtime");
|
|
8
|
-
class AppLoadUnitInstance {
|
|
9
|
-
constructor(loadUnit) {
|
|
10
|
-
this.protoToCreateMap = new Map();
|
|
11
|
-
this.eggObjectMap = new Map();
|
|
12
|
-
this.eggObjectPromiseMap = new Map();
|
|
13
|
-
this.loadUnit = loadUnit;
|
|
14
|
-
this.name = loadUnit.name;
|
|
15
|
-
const iterator = this.loadUnit.iterateEggPrototype();
|
|
16
|
-
for (const proto of iterator) {
|
|
17
|
-
if (proto.initType === tegg_1.ObjectInitType.SINGLETON) {
|
|
18
|
-
this.protoToCreateMap.set(proto.name, proto);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
this.id = tegg_1.IdenticalUtil.createLoadUnitInstanceId(loadUnit.id);
|
|
22
|
-
}
|
|
23
|
-
iterateProtoToCreate() {
|
|
24
|
-
return this.protoToCreateMap.entries();
|
|
25
|
-
}
|
|
26
|
-
addProtoToCreate(name, proto) {
|
|
27
|
-
this.protoToCreateMap.set(name, proto);
|
|
28
|
-
}
|
|
29
|
-
deleteProtoToCreate(name) {
|
|
30
|
-
this.protoToCreateMap.delete(name);
|
|
31
|
-
}
|
|
32
|
-
async init(ctx) {
|
|
33
|
-
await tegg_runtime_1.LoadUnitInstanceLifecycleUtil.objectPreCreate(ctx, this);
|
|
34
|
-
for (const [name, proto] of this.protoToCreateMap) {
|
|
35
|
-
await this.getOrCreateEggObject(name, proto);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
async destroy() {
|
|
39
|
-
const objs = [];
|
|
40
|
-
for (const protoObjMap of this.eggObjectMap.values()) {
|
|
41
|
-
for (const protoObj of protoObjMap.values()) {
|
|
42
|
-
objs.push(protoObj);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
this.eggObjectMap.clear();
|
|
46
|
-
await Promise.all(objs.map(async (obj) => {
|
|
47
|
-
await tegg_runtime_1.EggObjectFactory.destroyObject(obj);
|
|
48
|
-
}));
|
|
49
|
-
}
|
|
50
|
-
async getOrCreateEggObject(name, proto) {
|
|
51
|
-
if (!this.loadUnit.containPrototype(proto)) {
|
|
52
|
-
throw new Error('load unit not contain proto');
|
|
53
|
-
}
|
|
54
|
-
const protoObjMap = tegg_common_util_1.MapUtil.getOrStore(this.eggObjectMap, proto.id, new Map());
|
|
55
|
-
if (!protoObjMap.has(name)) {
|
|
56
|
-
const protoObjPromiseMap = tegg_common_util_1.MapUtil.getOrStore(this.eggObjectPromiseMap, proto.id, new Map());
|
|
57
|
-
if (!protoObjPromiseMap.has(name)) {
|
|
58
|
-
const objPromise = tegg_runtime_1.EggObjectFactory.createObject(name, proto);
|
|
59
|
-
protoObjPromiseMap.set(name, objPromise);
|
|
60
|
-
const obj = await objPromise;
|
|
61
|
-
protoObjPromiseMap.delete(name);
|
|
62
|
-
protoObjMap.set(name, obj);
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
await protoObjPromiseMap.get(name);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
return protoObjMap.get(name);
|
|
69
|
-
}
|
|
70
|
-
getEggObject(name, proto) {
|
|
71
|
-
const protoObjMap = this.eggObjectMap.get(proto.id);
|
|
72
|
-
if (!protoObjMap || !protoObjMap.has(name)) {
|
|
73
|
-
throw new Error(`EggObject ${String(proto.name)} not found`);
|
|
74
|
-
}
|
|
75
|
-
return protoObjMap.get(name);
|
|
76
|
-
}
|
|
77
|
-
static createModuleLoadUnitInstance(ctx) {
|
|
78
|
-
return new AppLoadUnitInstance(ctx.loadUnit);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
exports.AppLoadUnitInstance = AppLoadUnitInstance;
|
|
82
|
-
tegg_runtime_1.LoadUnitInstanceFactory.registerLoadUnitInstanceClass(tegg_metadata_1.EggLoadUnitType.APP, AppLoadUnitInstance.createModuleLoadUnitInstance);
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwTG9hZFVuaXRJbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkFwcExvYWRVbml0SW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsd0RBQStFO0FBQy9FLHNDQUFpRztBQUNqRyw4REFBa0Q7QUFDbEQsc0RBSzZCO0FBRTdCLE1BQWEsbUJBQW1CO0lBUTlCLFlBQVksUUFBa0I7UUFKdEIscUJBQWdCLEdBQXdDLElBQUksR0FBRyxFQUFFLENBQUM7UUFDbEUsaUJBQVksR0FBOEMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNwRSx3QkFBbUIsR0FBdUQsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUcxRixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDMUIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQ3JELEtBQUssTUFBTSxLQUFLLElBQUksUUFBUSxFQUFFLENBQUM7WUFDN0IsSUFBSSxLQUFLLENBQUMsUUFBUSxLQUFLLHFCQUFjLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ2hELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMvQyxDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxFQUFFLEdBQUcsb0JBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsSUFBWSxFQUFFLEtBQW1CO1FBQ2hELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUss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
|
package/lib/CompatibleUtil.js
DELETED
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CompatibleUtil = void 0;
|
|
4
|
-
const tegg_metadata_1 = require("@eggjs/tegg-metadata");
|
|
5
|
-
const tegg_1 = require("@eggjs/tegg");
|
|
6
|
-
const tegg_runtime_1 = require("@eggjs/tegg-runtime");
|
|
7
|
-
const tegg_common_util_1 = require("@eggjs/tegg-common-util");
|
|
8
|
-
class CompatibleUtil {
|
|
9
|
-
static getSingletonProto(name) {
|
|
10
|
-
if (!this.singletonProtoCache.has(name)) {
|
|
11
|
-
const proto = tegg_metadata_1.EggPrototypeFactory.instance.getPrototype(name, undefined, [{
|
|
12
|
-
attribute: tegg_1.InitTypeQualifierAttribute,
|
|
13
|
-
value: tegg_1.ObjectInitType.SINGLETON,
|
|
14
|
-
}]);
|
|
15
|
-
this.singletonProtoCache.set(name, proto);
|
|
16
|
-
}
|
|
17
|
-
return this.singletonProtoCache.get(name);
|
|
18
|
-
}
|
|
19
|
-
static getRequestProto(name) {
|
|
20
|
-
if (!this.requestProtoCache.has(name)) {
|
|
21
|
-
const proto = tegg_metadata_1.EggPrototypeFactory.instance.getPrototype(name, undefined, [{
|
|
22
|
-
attribute: tegg_1.InitTypeQualifierAttribute,
|
|
23
|
-
value: tegg_1.ObjectInitType.CONTEXT,
|
|
24
|
-
}]);
|
|
25
|
-
this.requestProtoCache.set(name, proto);
|
|
26
|
-
}
|
|
27
|
-
return this.requestProtoCache.get(name);
|
|
28
|
-
}
|
|
29
|
-
static singletonModuleProxyFactory(app, loadUnitInstance) {
|
|
30
|
-
let deprecated = false;
|
|
31
|
-
return function (_, p) {
|
|
32
|
-
const proto = CompatibleUtil.getSingletonProto(p);
|
|
33
|
-
const eggObj = tegg_runtime_1.EggContainerFactory.getEggObject(proto);
|
|
34
|
-
if (!deprecated) {
|
|
35
|
-
deprecated = true;
|
|
36
|
-
app.deprecate(`[egg/module] Please use await app.getEggObject(clazzName) instead of app.${loadUnitInstance.name}.${String(p)}`);
|
|
37
|
-
}
|
|
38
|
-
return eggObj.obj;
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
static appCompatible(app, loadUnitInstance) {
|
|
42
|
-
const moduleLoadUnitProxy = tegg_common_util_1.ProxyUtil.safeProxy(loadUnitInstance, CompatibleUtil.singletonModuleProxyFactory(app, loadUnitInstance));
|
|
43
|
-
Reflect.defineProperty(app.module, loadUnitInstance.name, {
|
|
44
|
-
configurable: true,
|
|
45
|
-
value: moduleLoadUnitProxy,
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
static contextModuleProxyFactory(holder, ctx, loadUnitInstance) {
|
|
49
|
-
const cacheKey = `_${loadUnitInstance.name}Proxy`;
|
|
50
|
-
if (!holder[cacheKey]) {
|
|
51
|
-
let deprecated = false;
|
|
52
|
-
const getter = function (_, p) {
|
|
53
|
-
const proto = CompatibleUtil.getRequestProto(p);
|
|
54
|
-
const eggObj = tegg_runtime_1.EggContainerFactory.getEggObject(proto, p);
|
|
55
|
-
if (!deprecated) {
|
|
56
|
-
deprecated = true;
|
|
57
|
-
ctx.app.deprecate(`[egg/module] Please use await ctx.getEggObject(clazzName) instead of ctx.${loadUnitInstance.name}.${String(p)}`);
|
|
58
|
-
}
|
|
59
|
-
return eggObj.obj;
|
|
60
|
-
};
|
|
61
|
-
holder[cacheKey] = tegg_common_util_1.ProxyUtil.safeProxy(loadUnitInstance, getter);
|
|
62
|
-
}
|
|
63
|
-
return holder[cacheKey];
|
|
64
|
-
}
|
|
65
|
-
static contextModuleCompatible(context, loadUnitInstances) {
|
|
66
|
-
const loadUnitInstanceMap = loadUnitInstances.reduce((p, c) => {
|
|
67
|
-
p[c.name] = c;
|
|
68
|
-
return p;
|
|
69
|
-
}, {});
|
|
70
|
-
Reflect.defineProperty(context, 'module', {
|
|
71
|
-
configurable: true,
|
|
72
|
-
enumerable: true,
|
|
73
|
-
get() {
|
|
74
|
-
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
75
|
-
const ctx = this;
|
|
76
|
-
if (!this._moduleProxy) {
|
|
77
|
-
const ctxModule = Object.create(loadUnitInstanceMap);
|
|
78
|
-
this._moduleProxy = tegg_common_util_1.ProxyUtil.safeProxy(ctxModule, (_, p) => {
|
|
79
|
-
const loadUnitInstance = Reflect.get(ctxModule, p);
|
|
80
|
-
if (!loadUnitInstance) {
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
return CompatibleUtil.contextModuleProxyFactory(ctxModule, ctx, loadUnitInstance);
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
return this._moduleProxy;
|
|
87
|
-
},
|
|
88
|
-
});
|
|
89
|
-
}
|
|
90
|
-
static clean() {
|
|
91
|
-
this.singletonProtoCache.clear();
|
|
92
|
-
this.requestProtoCache.clear();
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
exports.CompatibleUtil = CompatibleUtil;
|
|
96
|
-
CompatibleUtil.singletonProtoCache = new Map();
|
|
97
|
-
CompatibleUtil.requestProtoCache = new Map();
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tcGF0aWJsZVV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJDb21wYXRpYmxlVXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx3REFBeUU7QUFDekUsc0NBQXlFO0FBQ3pFLHNEQUE0RTtBQUM1RSw4REFBb0Q7QUFFcEQsTUFBYSxjQUFjO0lBSXpCLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFpQjtRQUN4QyxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3hDLE1BQU0sS0FBSyxHQUFHLG1DQUFtQixDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDO29CQUN4RSxTQUFTLEVBQUUsaUNBQTBCO29CQUNyQyxLQUFLLEVBQUUscUJBQWMsQ0FBQyxTQUFTO2lCQUNoQyxDQUFDLENBQUMsQ0FBQztZQUNKLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVDLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVELE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBaUI7UUFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUN0QyxNQUFNLEtBQUssR0FBRyxtQ0FBbUIsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQztvQkFDeEUsU0FBUyxFQUFFLGlDQUEwQjtvQkFDckMsS0FBSyxFQUFFLHFCQUFjLENBQUMsT0FBTztpQkFDOUIsQ0FBQyxDQUFDLENBQUM7WUFDSixJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztR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
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ConfigSourceLoadUnitHook = void 0;
|
|
4
|
-
const tegg_1 = require("@eggjs/tegg");
|
|
5
|
-
/**
|
|
6
|
-
* Copy from standalone/src/ConfigSourceLoadUnitHook
|
|
7
|
-
* Hook for inject moduleConfig.
|
|
8
|
-
* Add default qualifier value is current module name.
|
|
9
|
-
*/
|
|
10
|
-
class ConfigSourceLoadUnitHook {
|
|
11
|
-
async preCreate(ctx, loadUnit) {
|
|
12
|
-
const classList = ctx.loader.load();
|
|
13
|
-
for (const clazz of classList) {
|
|
14
|
-
const injectObjects = tegg_1.PrototypeUtil.getInjectObjects(clazz);
|
|
15
|
-
const moduleConfigObject = injectObjects.find(t => t.objName === 'moduleConfig');
|
|
16
|
-
const configSourceQualifier = tegg_1.QualifierUtil.getProperQualifier(clazz, 'moduleConfig', tegg_1.ConfigSourceQualifierAttribute);
|
|
17
|
-
if (moduleConfigObject && !configSourceQualifier) {
|
|
18
|
-
(0, tegg_1.ConfigSourceQualifier)(loadUnit.name)(clazz.prototype, moduleConfigObject.refName);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
exports.ConfigSourceLoadUnitHook = ConfigSourceLoadUnitHook;
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlnU291cmNlTG9hZFVuaXRIb29rLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiQ29uZmlnU291cmNlTG9hZFVuaXRIb29rLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHNDQU1xQjtBQUVyQjs7OztHQUlHO0FBQ0gsTUFBYSx3QkFBd0I7SUFDbkMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUE2QixFQUFFLFFBQWtCO1FBQy9ELE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEMsS0FBSyxNQUFNLEtBQUssSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUM5QixNQUFNLGFBQWEsR0FBRyxvQkFBYSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVELE1BQU0sa0JBQWtCLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssY0FBYyxDQUFDLENBQUM7WUFDakYsTUFBTSxxQkFBcUIsR0FBRyxvQkFBYSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxjQUFjLEVBQUUscUNBQThCLENBQUMsQ0FBQztZQUN0SCxJQUFJLGtCQUFrQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztnQkFDakQsSUFBQSw0QkFBcUIsRUFBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNwRixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7Q0FDRjtBQVpELDREQVlDIn0=
|