vona 1.0.0 → 5.0.7
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/LICENSE +21 -0
- package/README.md +1 -1
- package/README.zh-CN.md +1 -0
- package/dist/app/extend/context.d.ts +4 -0
- package/dist/app/extend/context.js +152 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.js +35 -0
- package/dist/lib/base/dbTransaction.d.ts +12 -0
- package/dist/lib/base/dbTransaction.js +55 -0
- package/dist/lib/base/error.d.ts +18 -0
- package/dist/lib/base/error.js +70 -0
- package/dist/lib/base/model.d.ts +22 -0
- package/dist/lib/base/model.js +253 -0
- package/dist/lib/bean/_beanLocal_.d.ts +6 -0
- package/dist/lib/bean/_beanLocal_.js +16 -0
- package/dist/lib/bean/beanBase.d.ts +11 -0
- package/dist/lib/bean/beanBase.js +34 -0
- package/dist/lib/bean/beanBaseSimple.d.ts +8 -0
- package/dist/lib/bean/beanBaseSimple.js +31 -0
- package/dist/lib/bean/beanContainer.d.ts +39 -0
- package/dist/lib/bean/beanContainer.js +516 -0
- package/dist/lib/bean/beanLocal.d.ts +6 -0
- package/dist/lib/bean/beanLocal.js +16 -0
- package/dist/lib/bean/beanModuleScopeBase.d.ts +10 -0
- package/dist/lib/bean/beanModuleScopeBase.js +28 -0
- package/dist/lib/bean/beanScopeBase.d.ts +6 -0
- package/dist/lib/bean/beanScopeBase.js +19 -0
- package/dist/lib/bean/beanScopeScene.d.ts +12 -0
- package/dist/lib/bean/beanScopeScene.js +23 -0
- package/dist/lib/bean/beanSimple.d.ts +7 -0
- package/dist/lib/bean/beanSimple.js +24 -0
- package/dist/lib/bean/index.d.ts +8 -0
- package/dist/lib/bean/index.js +24 -0
- package/dist/lib/bean/resource/config/broadcast.d.ts +7 -0
- package/dist/lib/bean/resource/config/broadcast.js +3 -0
- package/dist/lib/bean/resource/config/index.d.ts +2 -0
- package/dist/lib/bean/resource/config/index.js +18 -0
- package/dist/lib/bean/resource/config/middleware.d.ts +9 -0
- package/dist/lib/bean/resource/config/middleware.js +3 -0
- package/dist/lib/bean/resource/config/startup.d.ts +9 -0
- package/dist/lib/bean/resource/config/startup.js +3 -0
- package/dist/lib/bean/resource/config/type.d.ts +43 -0
- package/dist/lib/bean/resource/config/type.js +3 -0
- package/dist/lib/bean/resource/constant/index.d.ts +2 -0
- package/dist/lib/bean/resource/constant/index.js +18 -0
- package/dist/lib/bean/resource/constant/type.d.ts +2 -0
- package/dist/lib/bean/resource/constant/type.js +3 -0
- package/dist/lib/bean/resource/entity/entityBase.d.ts +18 -0
- package/dist/lib/bean/resource/entity/entityBase.js +20 -0
- package/dist/lib/bean/resource/entity/index.d.ts +2 -0
- package/dist/lib/bean/resource/entity/index.js +18 -0
- package/dist/lib/bean/resource/entity/type.d.ts +4 -0
- package/dist/lib/bean/resource/entity/type.js +3 -0
- package/dist/lib/bean/resource/error/beanScopeError.d.ts +11 -0
- package/dist/lib/bean/resource/error/beanScopeError.js +34 -0
- package/dist/lib/bean/resource/error/beanScopeErrorImpl.d.ts +14 -0
- package/dist/lib/bean/resource/error/beanScopeErrorImpl.js +35 -0
- package/dist/lib/bean/resource/error/errorClass.d.ts +18 -0
- package/dist/lib/bean/resource/error/errorClass.js +78 -0
- package/dist/lib/bean/resource/error/errorContext.d.ts +38 -0
- package/dist/lib/bean/resource/error/errorContext.js +3 -0
- package/dist/lib/bean/resource/error/errorGlobal.d.ts +8 -0
- package/dist/lib/bean/resource/error/errorGlobal.js +3 -0
- package/dist/lib/bean/resource/error/errorInternal.d.ts +67 -0
- package/dist/lib/bean/resource/error/errorInternal.js +70 -0
- package/dist/lib/bean/resource/error/errorObject.d.ts +5 -0
- package/dist/lib/bean/resource/error/errorObject.js +3 -0
- package/dist/lib/bean/resource/error/index.d.ts +9 -0
- package/dist/lib/bean/resource/error/index.js +25 -0
- package/dist/lib/bean/resource/error/type.d.ts +9 -0
- package/dist/lib/bean/resource/error/type.js +3 -0
- package/dist/lib/bean/resource/index.d.ts +8 -0
- package/dist/lib/bean/resource/index.js +24 -0
- package/dist/lib/bean/resource/locale/beanScopeLocale.d.ts +11 -0
- package/dist/lib/bean/resource/locale/beanScopeLocale.js +33 -0
- package/dist/lib/bean/resource/locale/beanScopeLocaleImpl.d.ts +3 -0
- package/dist/lib/bean/resource/locale/beanScopeLocaleImpl.js +14 -0
- package/dist/lib/bean/resource/locale/index.d.ts +4 -0
- package/dist/lib/bean/resource/locale/index.js +20 -0
- package/dist/lib/bean/resource/locale/localeCtx.d.ts +8 -0
- package/dist/lib/bean/resource/locale/localeCtx.js +63 -0
- package/dist/lib/bean/resource/locale/type.d.ts +19 -0
- package/dist/lib/bean/resource/locale/type.js +3 -0
- package/dist/lib/bean/resource/model/beanModelBase.d.ts +24 -0
- package/dist/lib/bean/resource/model/beanModelBase.js +165 -0
- package/dist/lib/bean/resource/model/beanModelBaseInner.d.ts +29 -0
- package/dist/lib/bean/resource/model/beanModelBaseInner.js +86 -0
- package/dist/lib/bean/resource/model/index.d.ts +2 -0
- package/dist/lib/bean/resource/model/index.js +18 -0
- package/dist/lib/bean/resource/model/type.d.ts +14 -0
- package/dist/lib/bean/resource/model/type.js +3 -0
- package/dist/lib/bean/resource/route/index.d.ts +2 -0
- package/dist/lib/bean/resource/route/index.js +18 -0
- package/dist/lib/bean/resource/route/type.d.ts +60 -0
- package/dist/lib/bean/resource/route/type.js +3 -0
- package/dist/lib/bean/scope/beanScopeBase.d.ts +19 -0
- package/dist/lib/bean/scope/beanScopeBase.js +104 -0
- package/dist/lib/bean/scope/beanScopeBean.d.ts +10 -0
- package/dist/lib/bean/scope/beanScopeBean.js +34 -0
- package/dist/lib/bean/scope/beanScopeError.d.ts +11 -0
- package/dist/lib/bean/scope/beanScopeError.js +21 -0
- package/dist/lib/bean/scope/beanScopeErrorImpl.d.ts +14 -0
- package/dist/lib/bean/scope/beanScopeErrorImpl.js +21 -0
- package/dist/lib/bean/scope/beanScopeScene.d.ts +12 -0
- package/dist/lib/bean/scope/beanScopeScene.js +42 -0
- package/dist/lib/bean/scope/index.d.ts +5 -0
- package/dist/lib/bean/scope/index.js +21 -0
- package/dist/lib/bean/scope/type.d.ts +21 -0
- package/dist/lib/bean/scope/type.js +3 -0
- package/dist/lib/bean/type.d.ts +17 -0
- package/dist/lib/bean/type.js +4 -0
- package/dist/lib/core/index.d.ts +5 -0
- package/dist/lib/core/index.js +21 -0
- package/dist/lib/core/meta.d.ts +68 -0
- package/dist/lib/core/meta.js +345 -0
- package/dist/lib/core/metaCtx.d.ts +16 -0
- package/dist/lib/core/metaCtx.js +71 -0
- package/dist/lib/core/metadata.d.ts +12 -0
- package/dist/lib/core/metadata.js +52 -0
- package/dist/lib/core/resource.d.ts +29 -0
- package/dist/lib/core/resource.js +173 -0
- package/dist/lib/decorator/class/aop.d.ts +3 -0
- package/dist/lib/decorator/class/aop.js +22 -0
- package/dist/lib/decorator/class/atom.d.ts +2 -0
- package/dist/lib/decorator/class/atom.js +20 -0
- package/dist/lib/decorator/class/bean.d.ts +3 -0
- package/dist/lib/decorator/class/bean.js +23 -0
- package/dist/lib/decorator/class/controller.d.ts +2 -0
- package/dist/lib/decorator/class/controller.js +20 -0
- package/dist/lib/decorator/class/entity.d.ts +4 -0
- package/dist/lib/decorator/class/entity.js +33 -0
- package/dist/lib/decorator/class/index.d.ts +11 -0
- package/dist/lib/decorator/class/index.js +27 -0
- package/dist/lib/decorator/class/local.d.ts +3 -0
- package/dist/lib/decorator/class/local.js +23 -0
- package/dist/lib/decorator/class/model.d.ts +3 -0
- package/dist/lib/decorator/class/model.js +21 -0
- package/dist/lib/decorator/class/scope.d.ts +2 -0
- package/dist/lib/decorator/class/scope.js +20 -0
- package/dist/lib/decorator/class/service.d.ts +2 -0
- package/dist/lib/decorator/class/service.js +20 -0
- package/dist/lib/decorator/class/use.d.ts +5 -0
- package/dist/lib/decorator/class/use.js +43 -0
- package/dist/lib/decorator/class/util.d.ts +3 -0
- package/dist/lib/decorator/class/util.js +10 -0
- package/dist/lib/decorator/class/virtual.d.ts +3 -0
- package/dist/lib/decorator/class/virtual.js +24 -0
- package/dist/lib/decorator/index.d.ts +7 -0
- package/dist/lib/decorator/index.js +23 -0
- package/dist/lib/decorator/interface/beanOptions.d.ts +44 -0
- package/dist/lib/decorator/interface/beanOptions.js +8 -0
- package/dist/lib/decorator/interface/useOptions.d.ts +14 -0
- package/dist/lib/decorator/interface/useOptions.js +3 -0
- package/dist/lib/decorator/type/constructable.d.ts +2 -0
- package/dist/lib/decorator/type/constructable.js +3 -0
- package/dist/lib/decorator/type/containerScope.d.ts +2 -0
- package/dist/lib/decorator/type/containerScope.js +3 -0
- package/dist/lib/decorator/type/injectionScope.d.ts +2 -0
- package/dist/lib/decorator/type/injectionScope.js +3 -0
- package/dist/lib/error/error.d.ts +18 -0
- package/dist/lib/error/error.js +71 -0
- package/dist/lib/error/errorClass.d.ts +18 -0
- package/dist/lib/error/errorClass.js +72 -0
- package/dist/lib/error/errorContext.d.ts +38 -0
- package/dist/lib/error/errorContext.js +3 -0
- package/dist/lib/error/errorGlobal.d.ts +8 -0
- package/dist/lib/error/errorGlobal.js +3 -0
- package/dist/lib/error/errorInternal.d.ts +67 -0
- package/dist/lib/error/errorInternal.js +70 -0
- package/dist/lib/error/errorObject.d.ts +5 -0
- package/dist/lib/error/errorObject.js +3 -0
- package/dist/lib/error/index.d.ts +5 -0
- package/dist/lib/error/index.js +21 -0
- package/dist/lib/framework/bootstrap.d.ts +9 -0
- package/dist/lib/framework/bootstrap.js +35 -0
- package/dist/lib/framework/framework.d.ts +11 -0
- package/dist/lib/framework/framework.js +28 -0
- package/dist/lib/framework/loader.d.ts +24 -0
- package/dist/lib/framework/loader.js +69 -0
- package/dist/lib/framework/meta.d.ts +2 -0
- package/dist/lib/framework/meta.js +23 -0
- package/dist/lib/framework/metaClass.d.ts +2 -0
- package/dist/lib/framework/metaClass.js +26 -0
- package/dist/lib/framework/moduleInfo.d.ts +3 -0
- package/dist/lib/framework/moduleInfo.js +67 -0
- package/dist/lib/framework/util.d.ts +4 -0
- package/dist/lib/framework/util.js +15 -0
- package/dist/lib/module/asset/errors.d.ts +68 -0
- package/dist/lib/module/asset/errors.js +69 -0
- package/dist/lib/module/bean/index.d.ts +4 -0
- package/dist/lib/module/bean/index.js +24 -0
- package/dist/lib/module/broadcast/broadcast.d.ts +3 -0
- package/dist/lib/module/broadcast/broadcast.js +49 -0
- package/dist/lib/module/broadcast/broadcastClient.d.ts +24 -0
- package/dist/lib/module/broadcast/broadcastClient.js +91 -0
- package/dist/lib/module/cluster/agent.d.ts +3 -0
- package/dist/lib/module/cluster/agent.js +22 -0
- package/dist/lib/module/cluster/app.d.ts +3 -0
- package/dist/lib/module/cluster/app.js +26 -0
- package/dist/lib/module/config.d.ts +3 -0
- package/dist/lib/module/config.js +67 -0
- package/dist/lib/module/constant.d.ts +3 -0
- package/dist/lib/module/constant.js +46 -0
- package/dist/lib/module/contextPatch.d.ts +3 -0
- package/dist/lib/module/contextPatch.js +16 -0
- package/dist/lib/module/errors.d.ts +3 -0
- package/dist/lib/module/errors.js +49 -0
- package/dist/lib/module/index.d.ts +2 -0
- package/dist/lib/module/index.js +3 -0
- package/dist/lib/module/loader.d.ts +5 -0
- package/dist/lib/module/loader.js +73 -0
- package/dist/lib/module/locales.d.ts +3 -0
- package/dist/lib/module/locales.js +132 -0
- package/dist/lib/module/messenger.d.ts +25 -0
- package/dist/lib/module/messenger.js +128 -0
- package/dist/lib/module/middleware.d.ts +3 -0
- package/dist/lib/module/middleware.js +113 -0
- package/dist/lib/module/model.d.ts +3 -0
- package/dist/lib/module/model.js +47 -0
- package/dist/lib/module/module.d.ts +12 -0
- package/dist/lib/module/module.js +135 -0
- package/dist/lib/module/moduleMeta.d.ts +3 -0
- package/dist/lib/module/moduleMeta.js +23 -0
- package/dist/lib/module/queue/queue.d.ts +3 -0
- package/dist/lib/module/queue/queue.js +59 -0
- package/dist/lib/module/queue/queueClient.d.ts +26 -0
- package/dist/lib/module/queue/queueClient.js +262 -0
- package/dist/lib/module/redis.d.ts +11 -0
- package/dist/lib/module/redis.js +46 -0
- package/dist/lib/module/reload/development.d.ts +3 -0
- package/dist/lib/module/reload/development.js +98 -0
- package/dist/lib/module/reload/reload.d.ts +16 -0
- package/dist/lib/module/reload/reload.js +113 -0
- package/dist/lib/module/reload.d.ts +7 -0
- package/dist/lib/module/reload.js +17 -0
- package/dist/lib/module/route.d.ts +10 -0
- package/dist/lib/module/route.js +239 -0
- package/dist/lib/module/schedule.d.ts +3 -0
- package/dist/lib/module/schedule.js +129 -0
- package/dist/lib/module/service.d.ts +3 -0
- package/dist/lib/module/service.js +35 -0
- package/dist/lib/module/socketio.d.ts +5 -0
- package/dist/lib/module/socketio.js +47 -0
- package/dist/lib/module/startup.d.ts +2 -0
- package/dist/lib/module/startup.js +134 -0
- package/dist/lib/module/version/clear.d.ts +2 -0
- package/dist/lib/module/version/clear.js +42 -0
- package/dist/lib/module/version/ready.d.ts +6 -0
- package/dist/lib/module/version/ready.js +106 -0
- package/dist/lib/resource/error/errorClass.d.ts +18 -0
- package/dist/lib/resource/error/errorClass.js +72 -0
- package/dist/lib/resource/error/errorContext.d.ts +38 -0
- package/dist/lib/resource/error/errorContext.js +3 -0
- package/dist/lib/resource/error/errorGlobal.d.ts +8 -0
- package/dist/lib/resource/error/errorGlobal.js +3 -0
- package/dist/lib/resource/error/errorInternal.d.ts +67 -0
- package/dist/lib/resource/error/errorInternal.js +70 -0
- package/dist/lib/resource/error/errorObject.d.ts +5 -0
- package/dist/lib/resource/error/errorObject.js +3 -0
- package/dist/lib/resource/error/index.d.ts +5 -0
- package/dist/lib/resource/error/index.js +21 -0
- package/dist/lib/utils/index.d.ts +2 -0
- package/dist/lib/utils/index.js +18 -0
- package/dist/lib/utils/isClass.d.ts +2 -0
- package/dist/lib/utils/isClass.js +20 -0
- package/dist/lib/utils/mockUtil.d.ts +11 -0
- package/dist/lib/utils/mockUtil.js +34 -0
- package/dist/lib/utils/mockUtilCtx.d.ts +10 -0
- package/dist/lib/utils/mockUtilCtx.js +35 -0
- package/dist/lib/utils/performAction.d.ts +19 -0
- package/dist/lib/utils/performAction.js +137 -0
- package/dist/lib/utils/util.d.ts +63 -0
- package/dist/lib/utils/util.js +445 -0
- package/dist/lib/utils/utilCtx.d.ts +34 -0
- package/dist/lib/utils/utilCtx.js +137 -0
- package/dist/types/application/app.d.ts +21 -0
- package/dist/types/application/app.js +28 -0
- package/dist/types/application/index.d.ts +2 -0
- package/dist/types/application/index.js +18 -0
- package/dist/types/config/appInfo.d.ts +4 -0
- package/dist/types/config/appInfo.js +3 -0
- package/dist/types/config/config.d.ts +10 -0
- package/dist/types/config/config.js +3 -0
- package/dist/types/config/development.d.ts +4 -0
- package/dist/types/config/development.js +3 -0
- package/dist/types/config/index.d.ts +4 -0
- package/dist/types/config/index.js +20 -0
- package/dist/types/config/locale.d.ts +10 -0
- package/dist/types/config/locale.js +7 -0
- package/dist/types/context/contextBase.d.ts +21 -0
- package/dist/types/context/contextBase.js +3 -0
- package/dist/types/context/contextConfig.d.ts +4 -0
- package/dist/types/context/contextConfig.js +3 -0
- package/dist/types/context/contextError.d.ts +25 -0
- package/dist/types/context/contextError.js +3 -0
- package/dist/types/context/contextLocale.d.ts +9 -0
- package/dist/types/context/contextLocale.js +3 -0
- package/dist/types/context/contextOthers.d.ts +4 -0
- package/dist/types/context/contextOthers.js +3 -0
- package/dist/types/context/contextState.d.ts +8 -0
- package/dist/types/context/contextState.js +3 -0
- package/dist/types/context/index.d.ts +18 -0
- package/dist/types/context/index.js +18 -0
- package/dist/types/enum/appEvent.d.ts +5 -0
- package/dist/types/enum/appEvent.js +9 -0
- package/dist/types/enum/index.d.ts +2 -0
- package/dist/types/enum/index.js +18 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.js +23 -0
- package/dist/types/interface/broadcast.d.ts +5 -0
- package/dist/types/interface/broadcast.js +3 -0
- package/dist/types/interface/error.d.ts +8 -0
- package/dist/types/interface/error.js +3 -0
- package/dist/types/interface/index.d.ts +6 -0
- package/dist/types/interface/index.js +22 -0
- package/dist/types/interface/module.d.ts +32 -0
- package/dist/types/interface/module.js +18 -0
- package/dist/types/interface/monkey.d.ts +22 -0
- package/dist/types/interface/monkey.js +3 -0
- package/dist/types/interface/queue.d.ts +29 -0
- package/dist/types/interface/queue.js +3 -0
- package/dist/types/interface/schedule.d.ts +11 -0
- package/dist/types/interface/schedule.js +3 -0
- package/dist/types/utils/cast.d.ts +6 -0
- package/dist/types/utils/cast.js +8 -0
- package/dist/types/utils/index.d.ts +4 -0
- package/dist/types/utils/index.js +20 -0
- package/dist/types/utils/powerPartial.d.ts +4 -0
- package/dist/types/utils/powerPartial.js +3 -0
- package/dist/types/utils/type.d.ts +4 -0
- package/dist/types/utils/type.js +3 -0
- package/package.json +62 -14
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
function default_1(app) {
|
|
4
|
+
// patch context
|
|
5
|
+
patchCreateContext();
|
|
6
|
+
function patchCreateContext() {
|
|
7
|
+
const createContext = app.createContext;
|
|
8
|
+
app.createContext = (...args) => {
|
|
9
|
+
const context = createContext.call(app, ...args);
|
|
10
|
+
app.meta.util.monkeyModule(app.meta.appMonkey, app.meta.modulesArray, 'createContext', undefined, context);
|
|
11
|
+
return context;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.default = default_1;
|
|
16
|
+
//# sourceMappingURL=contextPatch.js.map
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const extend_1 = require("@cabloy/extend");
|
|
4
|
+
const errorClass_js_1 = require("../bean/resource/error/errorClass.js");
|
|
5
|
+
const ERROR = Symbol('Context#__error');
|
|
6
|
+
function default_1(app, modules) {
|
|
7
|
+
// all errors
|
|
8
|
+
const ebErrors = {};
|
|
9
|
+
// load errors
|
|
10
|
+
loadErrors();
|
|
11
|
+
// patch service
|
|
12
|
+
patchCreateContext();
|
|
13
|
+
function patchCreateContext() {
|
|
14
|
+
const createContext = app.createContext;
|
|
15
|
+
app.createContext = (...args) => {
|
|
16
|
+
const context = createContext.call(app, ...args);
|
|
17
|
+
// maybe /favicon.ico
|
|
18
|
+
if (context.module) {
|
|
19
|
+
// error
|
|
20
|
+
context[ERROR] = context.bean._newBean(errorClass_js_1.ErrorClass, ebErrors);
|
|
21
|
+
// methods
|
|
22
|
+
['success', 'fail', 'throw', 'parseFail', 'parseSuccess', 'parseCode'].forEach(key => {
|
|
23
|
+
context[key] = function (...args) {
|
|
24
|
+
return context[ERROR][key](context.module.info.relativeName, ...args);
|
|
25
|
+
};
|
|
26
|
+
context[key].module = function (module, ...args) {
|
|
27
|
+
return context[ERROR][key](module, ...args);
|
|
28
|
+
};
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
// createError
|
|
32
|
+
context.createError = function (data) {
|
|
33
|
+
return app.meta.util.createError(data);
|
|
34
|
+
};
|
|
35
|
+
return context;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
function loadErrors() {
|
|
39
|
+
for (const key in modules) {
|
|
40
|
+
const module = modules[key];
|
|
41
|
+
const ebError = (ebErrors[module.info.relativeName] = {});
|
|
42
|
+
// module errors
|
|
43
|
+
if (module.resource.Errors)
|
|
44
|
+
(0, extend_1.extend)(true, ebError, module.resource.Errors);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.default = default_1;
|
|
49
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1,73 @@
|
|
|
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.ModuleLoader = void 0;
|
|
7
|
+
const meta_js_1 = require("../core/meta.js");
|
|
8
|
+
const module_js_1 = require("./module.js");
|
|
9
|
+
const route_js_1 = __importDefault(require("./route.js"));
|
|
10
|
+
const config_js_1 = __importDefault(require("./config.js"));
|
|
11
|
+
const moduleMeta_js_1 = __importDefault(require("./moduleMeta.js"));
|
|
12
|
+
const locales_js_1 = __importDefault(require("./locales.js"));
|
|
13
|
+
const errors_js_1 = __importDefault(require("./errors.js"));
|
|
14
|
+
const constant_js_1 = __importDefault(require("./constant.js"));
|
|
15
|
+
const messenger_js_1 = __importDefault(require("./messenger.js"));
|
|
16
|
+
const redis_js_1 = __importDefault(require("./redis.js"));
|
|
17
|
+
const queue_js_1 = __importDefault(require("./queue/queue.js"));
|
|
18
|
+
const broadcast_js_1 = __importDefault(require("./broadcast/broadcast.js"));
|
|
19
|
+
const startup_js_1 = __importDefault(require("./startup.js"));
|
|
20
|
+
const schedule_js_1 = __importDefault(require("./schedule.js"));
|
|
21
|
+
const app_js_1 = __importDefault(require("./cluster/app.js"));
|
|
22
|
+
const agent_js_1 = __importDefault(require("./cluster/agent.js"));
|
|
23
|
+
const reload_js_1 = __importDefault(require("./reload/reload.js"));
|
|
24
|
+
const development_js_1 = __importDefault(require("./reload/development.js"));
|
|
25
|
+
const contextPatch_js_1 = __importDefault(require("./contextPatch.js"));
|
|
26
|
+
const index_js_1 = require("./bean/index.js");
|
|
27
|
+
const beanSimple_js_1 = require("../bean/beanSimple.js");
|
|
28
|
+
class ModuleLoader extends beanSimple_js_1.BeanSimple {
|
|
29
|
+
async execute() {
|
|
30
|
+
const app = this.app;
|
|
31
|
+
// meta
|
|
32
|
+
const meta = app.bean._newBean(meta_js_1.AppMeta);
|
|
33
|
+
app.meta = meta;
|
|
34
|
+
// messenger
|
|
35
|
+
(0, messenger_js_1.default)(app);
|
|
36
|
+
// modules
|
|
37
|
+
const moduleTools = app.bean._newBean(module_js_1.ModuleTools);
|
|
38
|
+
// prepare
|
|
39
|
+
const modules = await moduleTools.prepare();
|
|
40
|
+
// load modules
|
|
41
|
+
await moduleTools.load();
|
|
42
|
+
// monkey modules
|
|
43
|
+
await moduleTools.monkey('moduleLoading');
|
|
44
|
+
if (meta.inApp) {
|
|
45
|
+
await (0, config_js_1.default)(app, modules);
|
|
46
|
+
await (0, moduleMeta_js_1.default)(app, modules);
|
|
47
|
+
(0, index_js_1.loadBeans)(app);
|
|
48
|
+
(0, locales_js_1.default)(app, modules);
|
|
49
|
+
(0, errors_js_1.default)(app, modules);
|
|
50
|
+
(0, constant_js_1.default)(app, modules);
|
|
51
|
+
(0, route_js_1.default)(app, modules);
|
|
52
|
+
(0, contextPatch_js_1.default)(app);
|
|
53
|
+
(0, redis_js_1.default)(app);
|
|
54
|
+
(0, queue_js_1.default)(app, modules);
|
|
55
|
+
(0, broadcast_js_1.default)(app, modules);
|
|
56
|
+
(0, startup_js_1.default)(app);
|
|
57
|
+
(0, schedule_js_1.default)(app);
|
|
58
|
+
(0, app_js_1.default)(app);
|
|
59
|
+
(0, reload_js_1.default)(app);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
await (0, config_js_1.default)(app, modules);
|
|
63
|
+
await (0, moduleMeta_js_1.default)(app, modules);
|
|
64
|
+
(0, agent_js_1.default)(app);
|
|
65
|
+
(0, reload_js_1.default)(app);
|
|
66
|
+
(0, development_js_1.default)(app);
|
|
67
|
+
}
|
|
68
|
+
// monkey modules
|
|
69
|
+
await moduleTools.monkey('moduleLoaded');
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
exports.ModuleLoader = ModuleLoader;
|
|
73
|
+
//# sourceMappingURL=loader.js.map
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
const fs_1 = __importDefault(require("fs"));
|
|
30
|
+
const path_1 = __importDefault(require("path"));
|
|
31
|
+
const localeutil = __importStar(require("@cabloy/localeutil"));
|
|
32
|
+
function default_1(app, modules) {
|
|
33
|
+
// all locales
|
|
34
|
+
app.meta.locales = {};
|
|
35
|
+
app.meta.localeModules = {};
|
|
36
|
+
// load locales
|
|
37
|
+
loadLocales();
|
|
38
|
+
// patch service
|
|
39
|
+
patchCreateContext();
|
|
40
|
+
function patchCreateContext() {
|
|
41
|
+
const createContext = app.createContext;
|
|
42
|
+
app.createContext = (...args) => {
|
|
43
|
+
const context = createContext.call(app, ...args);
|
|
44
|
+
// maybe /favicon.ico
|
|
45
|
+
if (context.module) {
|
|
46
|
+
context.text = function (text, ...args) {
|
|
47
|
+
return context.meta.locale.getText(undefined, undefined, text, ...args);
|
|
48
|
+
};
|
|
49
|
+
context.text.locale = function (locale, text, ...args) {
|
|
50
|
+
return context.meta.locale.getText(undefined, locale, text, ...args);
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
const __getLocale = context.__getLocale;
|
|
54
|
+
context.__getLocale = function () {
|
|
55
|
+
if (context.__locale) {
|
|
56
|
+
return context.__locale;
|
|
57
|
+
}
|
|
58
|
+
let locale = __getLocale.call(context);
|
|
59
|
+
const locale2 = context.bean.util.parseTokenSafe(locale);
|
|
60
|
+
if (locale !== locale2) {
|
|
61
|
+
locale = locale2;
|
|
62
|
+
context.__setLocale(locale);
|
|
63
|
+
}
|
|
64
|
+
return locale;
|
|
65
|
+
};
|
|
66
|
+
return context;
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
function loadLocales() {
|
|
70
|
+
/**
|
|
71
|
+
* based on egg-i18n
|
|
72
|
+
*
|
|
73
|
+
* https://github.com/eggjs/egg-i18n/blob/master/app.js
|
|
74
|
+
*
|
|
75
|
+
*/
|
|
76
|
+
// project locales
|
|
77
|
+
const localeDirs = app.config.i18n.dirs;
|
|
78
|
+
for (let i = 0; i < localeDirs.length; i++) {
|
|
79
|
+
const dir = localeDirs[i];
|
|
80
|
+
if (!fs_1.default.existsSync(dir)) {
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
const names = fs_1.default.readdirSync(dir);
|
|
84
|
+
for (let j = 0; j < names.length; j++) {
|
|
85
|
+
const name = names[j];
|
|
86
|
+
if (path_1.default.extname(name) !== '.js')
|
|
87
|
+
continue;
|
|
88
|
+
const filepath = path_1.default.join(dir, name);
|
|
89
|
+
// support en_US.js => en-US.js
|
|
90
|
+
const locale = localeutil.formatLocale(name.split('.')[0]);
|
|
91
|
+
const resource = require(filepath);
|
|
92
|
+
_initLocales(locale, resource.default ? resource.default : resource);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
// module locales
|
|
96
|
+
for (const moduleName in modules) {
|
|
97
|
+
const module = modules[moduleName];
|
|
98
|
+
_registerLocales(moduleName, module.resource.locales);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
function _initLocales(locale, locales) {
|
|
102
|
+
if (!locales)
|
|
103
|
+
return;
|
|
104
|
+
if (!locales.modules) {
|
|
105
|
+
// override
|
|
106
|
+
app.meta.locales[locale] = Object.assign({}, app.meta.locales[locale], locales);
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
const moduleMap = locales.modules;
|
|
110
|
+
for (const moduleName in moduleMap) {
|
|
111
|
+
_registerLocale(moduleName, locale, moduleMap[moduleName]);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
function _registerLocales(moduleName, locales) {
|
|
116
|
+
if (!locales)
|
|
117
|
+
return;
|
|
118
|
+
for (const locale in locales) {
|
|
119
|
+
_registerLocale(moduleName, locale, locales[locale]);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
function _registerLocale(moduleName, locale, moduleLocales) {
|
|
123
|
+
// locales: not override
|
|
124
|
+
app.meta.locales[locale] = Object.assign({}, moduleLocales, app.meta.locales[locale]);
|
|
125
|
+
// localeModules
|
|
126
|
+
if (!app.meta.localeModules[moduleName])
|
|
127
|
+
app.meta.localeModules[moduleName] = {};
|
|
128
|
+
app.meta.localeModules[moduleName][locale] = Object.assign({}, moduleLocales, app.meta.localeModules[moduleName][locale]);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
exports.default = default_1;
|
|
132
|
+
//# sourceMappingURL=locales.js.map
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { BeanSimple } from '../bean/beanSimple.js';
|
|
2
|
+
import { VonaApplication } from '../../types/index.js';
|
|
3
|
+
interface IMessengerCallbackContext {
|
|
4
|
+
name: string;
|
|
5
|
+
data: any;
|
|
6
|
+
}
|
|
7
|
+
type IMessengerCallback = (info: IMessengerCallbackContext) => void;
|
|
8
|
+
export declare class AppMessenger extends BeanSimple {
|
|
9
|
+
_providers: object;
|
|
10
|
+
_pids: any;
|
|
11
|
+
protected __init__(): void;
|
|
12
|
+
callAgent(info: any, cb?: IMessengerCallback): void;
|
|
13
|
+
callRandom(info: any, cb?: IMessengerCallback): void;
|
|
14
|
+
callTo(pid: any, info: any, cb?: IMessengerCallback): void;
|
|
15
|
+
callAll(info: any): void;
|
|
16
|
+
_call(pid: any, info: any, cb?: IMessengerCallback): void;
|
|
17
|
+
sendToApp(eventName: any, info: any): void;
|
|
18
|
+
sendTo(pid: any, eventName: any, info: any): void;
|
|
19
|
+
sendRandom(eventName: any, info: any): void;
|
|
20
|
+
sendAgent(eventName: any, info: any): void;
|
|
21
|
+
addProvider(provider: any): void;
|
|
22
|
+
}
|
|
23
|
+
export default function (app: VonaApplication): void;
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=messenger.d.ts.map
|
|
@@ -0,0 +1,128 @@
|
|
|
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.AppMessenger = void 0;
|
|
7
|
+
const uuid_1 = __importDefault(require("uuid"));
|
|
8
|
+
const beanSimple_js_1 = require("../bean/beanSimple.js");
|
|
9
|
+
const eventMessengerCall = 'eb:event:messengerCall';
|
|
10
|
+
class AppMessenger extends beanSimple_js_1.BeanSimple {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
Object.defineProperty(this, "_providers", {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
configurable: true,
|
|
16
|
+
writable: true,
|
|
17
|
+
value: {}
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(this, "_pids", {
|
|
20
|
+
enumerable: true,
|
|
21
|
+
configurable: true,
|
|
22
|
+
writable: true,
|
|
23
|
+
value: null
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
__init__() {
|
|
27
|
+
const app = this.app;
|
|
28
|
+
// wait for call
|
|
29
|
+
app.messenger.on(eventMessengerCall, async (info) => {
|
|
30
|
+
const provider = this._providers[info.name];
|
|
31
|
+
let data;
|
|
32
|
+
let err;
|
|
33
|
+
try {
|
|
34
|
+
data = await provider.handler(info.data);
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
err = app.meta.util.createError(error, true);
|
|
38
|
+
}
|
|
39
|
+
if (info.echo) {
|
|
40
|
+
if (app.meta.inApp) {
|
|
41
|
+
this.sendAgent(info.echo, { err, data });
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
this.sendTo(info.pid, info.echo, { err, data });
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
// in agent
|
|
49
|
+
if (app.meta.inAgent) {
|
|
50
|
+
// get pids
|
|
51
|
+
app.messenger.on('egg-pids', data => {
|
|
52
|
+
this._pids = data;
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
callAgent(info, cb) {
|
|
57
|
+
info.pid = process.pid;
|
|
58
|
+
this._call(null, info, cb);
|
|
59
|
+
}
|
|
60
|
+
callRandom(info, cb) {
|
|
61
|
+
this._call(null, info, cb);
|
|
62
|
+
}
|
|
63
|
+
callTo(pid, info, cb) {
|
|
64
|
+
this._call(pid, info, cb);
|
|
65
|
+
}
|
|
66
|
+
callAll(info) {
|
|
67
|
+
this.sendToApp(eventMessengerCall, info);
|
|
68
|
+
}
|
|
69
|
+
// info: { name, data }
|
|
70
|
+
_call(pid, info, cb) {
|
|
71
|
+
const app = this.app;
|
|
72
|
+
if (cb) {
|
|
73
|
+
info.echo = uuid_1.default.v4();
|
|
74
|
+
app.messenger.once(info.echo, info => {
|
|
75
|
+
return cb(info);
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
if (app.meta.inApp) {
|
|
79
|
+
this.sendAgent(eventMessengerCall, info);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
if (pid) {
|
|
83
|
+
this.sendTo(pid, eventMessengerCall, info);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
this.sendRandom(eventMessengerCall, info);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
sendToApp(eventName, info) {
|
|
91
|
+
const app = this.app;
|
|
92
|
+
app.messenger.sendToApp(eventName, info);
|
|
93
|
+
}
|
|
94
|
+
sendTo(pid, eventName, info) {
|
|
95
|
+
const app = this.app;
|
|
96
|
+
if (app.meta.isTest || !this._pids) {
|
|
97
|
+
// support init:backend
|
|
98
|
+
app.messenger.sendToApp(eventName, info);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
app.messenger.sendTo(pid, eventName, info);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
sendRandom(eventName, info) {
|
|
105
|
+
const app = this.app;
|
|
106
|
+
if (app.meta.isTest || !this._pids) {
|
|
107
|
+
// support init:backend
|
|
108
|
+
app.messenger.sendToApp(eventName, info);
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
app.messenger.sendRandom(eventName, info);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
sendAgent(eventName, info) {
|
|
115
|
+
const app = this.app;
|
|
116
|
+
app.messenger.sendToAgent(eventName, info);
|
|
117
|
+
}
|
|
118
|
+
addProvider(provider) {
|
|
119
|
+
this._providers[provider.name] = provider;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
exports.AppMessenger = AppMessenger;
|
|
123
|
+
function default_1(app) {
|
|
124
|
+
// messenger
|
|
125
|
+
app.meta.messenger = app.bean._newBean(AppMessenger);
|
|
126
|
+
}
|
|
127
|
+
exports.default = default_1;
|
|
128
|
+
//# sourceMappingURL=messenger.js.map
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const deps_1 = require("@cabloy/deps");
|
|
4
|
+
function default_1(app) {
|
|
5
|
+
// use modulesArray
|
|
6
|
+
const ebModulesArray = app.meta.modulesArray;
|
|
7
|
+
// all middlewares
|
|
8
|
+
app.meta.middlewares = [];
|
|
9
|
+
const ebMiddlewaresAll = app.meta.middlewares;
|
|
10
|
+
app.meta.middlewaresNormal = {};
|
|
11
|
+
const ebMiddlewaresNormal = app.meta.middlewaresNormal;
|
|
12
|
+
app.meta.middlewaresGlobal = [];
|
|
13
|
+
const ebMiddlewaresGlobal = app.meta.middlewaresGlobal;
|
|
14
|
+
app.meta.middlewaresSocketIoConnection = [];
|
|
15
|
+
const ebMiddlewaresSocketIoConnection = app.meta.middlewaresSocketIoConnection;
|
|
16
|
+
app.meta.middlewaresSocketIoPacket = [];
|
|
17
|
+
const ebMiddlewaresSocketIoPacket = app.meta.middlewaresSocketIoPacket;
|
|
18
|
+
// load middlewares all
|
|
19
|
+
loadMiddlewaresAll(ebMiddlewaresAll, ebModulesArray, app);
|
|
20
|
+
// handle dependents
|
|
21
|
+
handleDependents(ebMiddlewaresAll);
|
|
22
|
+
// load middlewares
|
|
23
|
+
loadMiddlewares(ebMiddlewaresAll, ebMiddlewaresNormal, ebMiddlewaresGlobal, ebMiddlewaresSocketIoConnection, ebMiddlewaresSocketIoPacket);
|
|
24
|
+
return [ebMiddlewaresNormal, ebMiddlewaresGlobal];
|
|
25
|
+
}
|
|
26
|
+
exports.default = default_1;
|
|
27
|
+
function loadMiddlewares(ebMiddlewaresAll, ebMiddlewaresNormal, ebMiddlewaresGlobal, ebMiddlewaresSocketIoConnection, ebMiddlewaresSocketIoPacket) {
|
|
28
|
+
// load
|
|
29
|
+
for (const item of ebMiddlewaresAll) {
|
|
30
|
+
// ignore other types, such as: socketio.connection/socketio.packet
|
|
31
|
+
const type = item.options.type;
|
|
32
|
+
if (!type) {
|
|
33
|
+
// normal
|
|
34
|
+
ebMiddlewaresNormal[item.name] = item;
|
|
35
|
+
if (item.options.global) {
|
|
36
|
+
ebMiddlewaresGlobal.push(item);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
else if (type === 'socketio.connection') {
|
|
40
|
+
ebMiddlewaresSocketIoConnection.push(item);
|
|
41
|
+
}
|
|
42
|
+
else if (type === 'socketio.packet') {
|
|
43
|
+
ebMiddlewaresSocketIoPacket.push(item);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
// global order
|
|
47
|
+
swap(ebMiddlewaresGlobal);
|
|
48
|
+
swap(ebMiddlewaresSocketIoConnection);
|
|
49
|
+
swap(ebMiddlewaresSocketIoPacket);
|
|
50
|
+
}
|
|
51
|
+
function loadMiddlewaresAll(ebMiddlewaresAll, ebModulesArray, app) {
|
|
52
|
+
for (const module of ebModulesArray) {
|
|
53
|
+
const config = app.meta.configs[module.info.relativeName];
|
|
54
|
+
if (!config.middlewares)
|
|
55
|
+
continue;
|
|
56
|
+
for (const middlewareKey in config.middlewares) {
|
|
57
|
+
const middlewareConfig = config.middlewares[middlewareKey];
|
|
58
|
+
// bean
|
|
59
|
+
const beanName = middlewareConfig.bean;
|
|
60
|
+
if (!beanName)
|
|
61
|
+
throw new Error(`bean not set for middleware: ${module.info.relativeName}.${middlewareKey}`);
|
|
62
|
+
let bean;
|
|
63
|
+
if (typeof beanName === 'string') {
|
|
64
|
+
bean = {
|
|
65
|
+
module: module.info.relativeName,
|
|
66
|
+
name: beanName,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
bean = {
|
|
71
|
+
module: beanName.module || module.info.relativeName,
|
|
72
|
+
name: beanName.name,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
// push
|
|
76
|
+
ebMiddlewaresAll.push({
|
|
77
|
+
module: module.info.relativeName,
|
|
78
|
+
name: middlewareKey,
|
|
79
|
+
options: middlewareConfig,
|
|
80
|
+
bean,
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
function handleDependents(ebMiddlewaresAll) {
|
|
86
|
+
for (const middleware of ebMiddlewaresAll) {
|
|
87
|
+
let dependents = middleware.options.dependents;
|
|
88
|
+
if (!dependents)
|
|
89
|
+
continue;
|
|
90
|
+
if (!Array.isArray(dependents)) {
|
|
91
|
+
dependents = dependents.split(',');
|
|
92
|
+
}
|
|
93
|
+
for (const dep of dependents) {
|
|
94
|
+
const middleware2 = ebMiddlewaresAll.find(item => item.name === dep);
|
|
95
|
+
if (!middleware2) {
|
|
96
|
+
throw new Error(`middleware ${dep} not found for dependents of ${middleware.name}`);
|
|
97
|
+
}
|
|
98
|
+
const options = middleware2.options;
|
|
99
|
+
if (!options.dependencies)
|
|
100
|
+
options.dependencies = [];
|
|
101
|
+
if (!Array.isArray(options.dependencies)) {
|
|
102
|
+
options.dependencies = options.dependencies.split(',');
|
|
103
|
+
}
|
|
104
|
+
if (options.dependencies.findIndex(item => item === middleware.name) === -1) {
|
|
105
|
+
options.dependencies.push(middleware.name);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
function swap(middlewares) {
|
|
111
|
+
(0, deps_1.swapDeps)(middlewares, { name: 'name', dependencies: 'options.dependencies' });
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=middleware.js.map
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const beanModelBase_js_1 = require("../bean/resource/model/beanModelBase.js");
|
|
4
|
+
function default_1(app) {
|
|
5
|
+
// patch model
|
|
6
|
+
patchCreateContext();
|
|
7
|
+
function patchCreateContext() {
|
|
8
|
+
const createContext = app.createContext;
|
|
9
|
+
app.createContext = (...args) => {
|
|
10
|
+
const context = createContext.call(app, ...args);
|
|
11
|
+
// maybe /favicon.ico
|
|
12
|
+
if (context.module) {
|
|
13
|
+
context.model = createModelContainer(context, context.module.info.relativeName);
|
|
14
|
+
}
|
|
15
|
+
return context;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
function createModelContainer(context, relativeName) {
|
|
19
|
+
// base
|
|
20
|
+
const modelContainer = context.bean._newBean(beanModelBase_js_1.BeanModelBase);
|
|
21
|
+
// module
|
|
22
|
+
modelContainer.__ebCacheModule = new Map();
|
|
23
|
+
modelContainer.module = function (moduleName) {
|
|
24
|
+
let _modelContainer = modelContainer.__ebCacheModule.get(moduleName);
|
|
25
|
+
if (!_modelContainer) {
|
|
26
|
+
_modelContainer = createModelContainer(context, moduleName);
|
|
27
|
+
modelContainer.__ebCacheModule.set(moduleName, _modelContainer);
|
|
28
|
+
}
|
|
29
|
+
return _modelContainer;
|
|
30
|
+
};
|
|
31
|
+
// proxy
|
|
32
|
+
return new Proxy(modelContainer, {
|
|
33
|
+
get(obj, prop) {
|
|
34
|
+
if (typeof prop === 'symbol')
|
|
35
|
+
return obj[prop];
|
|
36
|
+
// base
|
|
37
|
+
if (obj[prop])
|
|
38
|
+
return obj[prop];
|
|
39
|
+
const beanFullName = `${relativeName}.model.${prop}`;
|
|
40
|
+
// model
|
|
41
|
+
return context.bean._getBean(beanFullName);
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
exports.default = default_1;
|
|
47
|
+
//# sourceMappingURL=model.js.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IModule } from '../../types/index.js';
|
|
2
|
+
import { BeanSimple } from '../bean/beanSimple.js';
|
|
3
|
+
export declare class ModuleTools extends BeanSimple {
|
|
4
|
+
prepare(): Promise<Record<string, IModule>>;
|
|
5
|
+
load(): Promise<void>;
|
|
6
|
+
monkey(monkeyName: any): Promise<void>;
|
|
7
|
+
private _getModuleIndexPath;
|
|
8
|
+
private _importModules_serialization;
|
|
9
|
+
private _importModules_parallelization;
|
|
10
|
+
private _importModules;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=module.d.ts.map
|