vona 1.0.0 → 5.0.4

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 (326) hide show
  1. package/LICENSE.en-US +3 -0
  2. package/README.md +1 -1
  3. package/README.zh-CN.md +1 -0
  4. package/dist/app/extend/context.d.ts +4 -0
  5. package/dist/app/extend/context.js +152 -0
  6. package/dist/index.d.ts +11 -0
  7. package/dist/index.js +35 -0
  8. package/dist/lib/base/dbTransaction.d.ts +12 -0
  9. package/dist/lib/base/dbTransaction.js +55 -0
  10. package/dist/lib/base/error.d.ts +18 -0
  11. package/dist/lib/base/error.js +70 -0
  12. package/dist/lib/base/model.d.ts +22 -0
  13. package/dist/lib/base/model.js +253 -0
  14. package/dist/lib/bean/_beanLocal_.d.ts +6 -0
  15. package/dist/lib/bean/_beanLocal_.js +16 -0
  16. package/dist/lib/bean/beanBase.d.ts +11 -0
  17. package/dist/lib/bean/beanBase.js +34 -0
  18. package/dist/lib/bean/beanBaseSimple.d.ts +8 -0
  19. package/dist/lib/bean/beanBaseSimple.js +31 -0
  20. package/dist/lib/bean/beanContainer.d.ts +39 -0
  21. package/dist/lib/bean/beanContainer.js +514 -0
  22. package/dist/lib/bean/beanLocal.d.ts +6 -0
  23. package/dist/lib/bean/beanLocal.js +16 -0
  24. package/dist/lib/bean/beanModuleScopeBase.d.ts +10 -0
  25. package/dist/lib/bean/beanModuleScopeBase.js +28 -0
  26. package/dist/lib/bean/beanScopeBase.d.ts +6 -0
  27. package/dist/lib/bean/beanScopeBase.js +19 -0
  28. package/dist/lib/bean/beanScopeScene.d.ts +12 -0
  29. package/dist/lib/bean/beanScopeScene.js +23 -0
  30. package/dist/lib/bean/beanSimple.d.ts +7 -0
  31. package/dist/lib/bean/beanSimple.js +24 -0
  32. package/dist/lib/bean/index.d.ts +8 -0
  33. package/dist/lib/bean/index.js +24 -0
  34. package/dist/lib/bean/resource/config/broadcast.d.ts +7 -0
  35. package/dist/lib/bean/resource/config/broadcast.js +3 -0
  36. package/dist/lib/bean/resource/config/index.d.ts +2 -0
  37. package/dist/lib/bean/resource/config/index.js +18 -0
  38. package/dist/lib/bean/resource/config/middleware.d.ts +9 -0
  39. package/dist/lib/bean/resource/config/middleware.js +3 -0
  40. package/dist/lib/bean/resource/config/startup.d.ts +9 -0
  41. package/dist/lib/bean/resource/config/startup.js +3 -0
  42. package/dist/lib/bean/resource/config/type.d.ts +43 -0
  43. package/dist/lib/bean/resource/config/type.js +3 -0
  44. package/dist/lib/bean/resource/constant/index.d.ts +2 -0
  45. package/dist/lib/bean/resource/constant/index.js +18 -0
  46. package/dist/lib/bean/resource/constant/type.d.ts +2 -0
  47. package/dist/lib/bean/resource/constant/type.js +3 -0
  48. package/dist/lib/bean/resource/entity/entityBase.d.ts +21 -0
  49. package/dist/lib/bean/resource/entity/entityBase.js +20 -0
  50. package/dist/lib/bean/resource/entity/index.d.ts +2 -0
  51. package/dist/lib/bean/resource/entity/index.js +18 -0
  52. package/dist/lib/bean/resource/error/beanScopeError.d.ts +11 -0
  53. package/dist/lib/bean/resource/error/beanScopeError.js +34 -0
  54. package/dist/lib/bean/resource/error/beanScopeErrorImpl.d.ts +14 -0
  55. package/dist/lib/bean/resource/error/beanScopeErrorImpl.js +35 -0
  56. package/dist/lib/bean/resource/error/errorClass.d.ts +18 -0
  57. package/dist/lib/bean/resource/error/errorClass.js +78 -0
  58. package/dist/lib/bean/resource/error/errorContext.d.ts +38 -0
  59. package/dist/lib/bean/resource/error/errorContext.js +3 -0
  60. package/dist/lib/bean/resource/error/errorGlobal.d.ts +8 -0
  61. package/dist/lib/bean/resource/error/errorGlobal.js +3 -0
  62. package/dist/lib/bean/resource/error/errorInternal.d.ts +67 -0
  63. package/dist/lib/bean/resource/error/errorInternal.js +70 -0
  64. package/dist/lib/bean/resource/error/errorObject.d.ts +5 -0
  65. package/dist/lib/bean/resource/error/errorObject.js +3 -0
  66. package/dist/lib/bean/resource/error/index.d.ts +9 -0
  67. package/dist/lib/bean/resource/error/index.js +25 -0
  68. package/dist/lib/bean/resource/error/type.d.ts +9 -0
  69. package/dist/lib/bean/resource/error/type.js +3 -0
  70. package/dist/lib/bean/resource/index.d.ts +8 -0
  71. package/dist/lib/bean/resource/index.js +24 -0
  72. package/dist/lib/bean/resource/locale/beanScopeLocale.d.ts +11 -0
  73. package/dist/lib/bean/resource/locale/beanScopeLocale.js +33 -0
  74. package/dist/lib/bean/resource/locale/beanScopeLocaleImpl.d.ts +3 -0
  75. package/dist/lib/bean/resource/locale/beanScopeLocaleImpl.js +14 -0
  76. package/dist/lib/bean/resource/locale/index.d.ts +4 -0
  77. package/dist/lib/bean/resource/locale/index.js +20 -0
  78. package/dist/lib/bean/resource/locale/localeCtx.d.ts +8 -0
  79. package/dist/lib/bean/resource/locale/localeCtx.js +63 -0
  80. package/dist/lib/bean/resource/locale/type.d.ts +19 -0
  81. package/dist/lib/bean/resource/locale/type.js +3 -0
  82. package/dist/lib/bean/resource/model/beanModelBase.d.ts +24 -0
  83. package/dist/lib/bean/resource/model/beanModelBase.js +165 -0
  84. package/dist/lib/bean/resource/model/beanModelBaseInner.d.ts +29 -0
  85. package/dist/lib/bean/resource/model/beanModelBaseInner.js +86 -0
  86. package/dist/lib/bean/resource/model/index.d.ts +2 -0
  87. package/dist/lib/bean/resource/model/index.js +18 -0
  88. package/dist/lib/bean/resource/model/type.d.ts +12 -0
  89. package/dist/lib/bean/resource/model/type.js +3 -0
  90. package/dist/lib/bean/resource/route/index.d.ts +2 -0
  91. package/dist/lib/bean/resource/route/index.js +18 -0
  92. package/dist/lib/bean/resource/route/type.d.ts +60 -0
  93. package/dist/lib/bean/resource/route/type.js +3 -0
  94. package/dist/lib/bean/scope/beanScopeBase.d.ts +19 -0
  95. package/dist/lib/bean/scope/beanScopeBase.js +104 -0
  96. package/dist/lib/bean/scope/beanScopeBean.d.ts +10 -0
  97. package/dist/lib/bean/scope/beanScopeBean.js +34 -0
  98. package/dist/lib/bean/scope/beanScopeError.d.ts +11 -0
  99. package/dist/lib/bean/scope/beanScopeError.js +21 -0
  100. package/dist/lib/bean/scope/beanScopeErrorImpl.d.ts +14 -0
  101. package/dist/lib/bean/scope/beanScopeErrorImpl.js +21 -0
  102. package/dist/lib/bean/scope/beanScopeScene.d.ts +12 -0
  103. package/dist/lib/bean/scope/beanScopeScene.js +42 -0
  104. package/dist/lib/bean/scope/index.d.ts +5 -0
  105. package/dist/lib/bean/scope/index.js +21 -0
  106. package/dist/lib/bean/scope/type.d.ts +21 -0
  107. package/dist/lib/bean/scope/type.js +3 -0
  108. package/dist/lib/bean/type.d.ts +17 -0
  109. package/dist/lib/bean/type.js +4 -0
  110. package/dist/lib/core/index.d.ts +5 -0
  111. package/dist/lib/core/index.js +21 -0
  112. package/dist/lib/core/meta.d.ts +65 -0
  113. package/dist/lib/core/meta.js +335 -0
  114. package/dist/lib/core/metaCtx.d.ts +16 -0
  115. package/dist/lib/core/metaCtx.js +71 -0
  116. package/dist/lib/core/metadata.d.ts +12 -0
  117. package/dist/lib/core/metadata.js +52 -0
  118. package/dist/lib/core/resource.d.ts +29 -0
  119. package/dist/lib/core/resource.js +172 -0
  120. package/dist/lib/decorator/class/aop.d.ts +3 -0
  121. package/dist/lib/decorator/class/aop.js +23 -0
  122. package/dist/lib/decorator/class/atom.d.ts +3 -0
  123. package/dist/lib/decorator/class/atom.js +22 -0
  124. package/dist/lib/decorator/class/bean.d.ts +3 -0
  125. package/dist/lib/decorator/class/bean.js +23 -0
  126. package/dist/lib/decorator/class/controller.d.ts +3 -0
  127. package/dist/lib/decorator/class/controller.js +22 -0
  128. package/dist/lib/decorator/class/index.d.ts +10 -0
  129. package/dist/lib/decorator/class/index.js +26 -0
  130. package/dist/lib/decorator/class/local.d.ts +3 -0
  131. package/dist/lib/decorator/class/local.js +23 -0
  132. package/dist/lib/decorator/class/model.d.ts +3 -0
  133. package/dist/lib/decorator/class/model.js +28 -0
  134. package/dist/lib/decorator/class/scope.d.ts +2 -0
  135. package/dist/lib/decorator/class/scope.js +20 -0
  136. package/dist/lib/decorator/class/service.d.ts +3 -0
  137. package/dist/lib/decorator/class/service.js +23 -0
  138. package/dist/lib/decorator/class/use.d.ts +5 -0
  139. package/dist/lib/decorator/class/use.js +43 -0
  140. package/dist/lib/decorator/class/util.d.ts +3 -0
  141. package/dist/lib/decorator/class/util.js +10 -0
  142. package/dist/lib/decorator/class/virtual.d.ts +3 -0
  143. package/dist/lib/decorator/class/virtual.js +24 -0
  144. package/dist/lib/decorator/index.d.ts +7 -0
  145. package/dist/lib/decorator/index.js +23 -0
  146. package/dist/lib/decorator/interface/beanOptions.d.ts +55 -0
  147. package/dist/lib/decorator/interface/beanOptions.js +8 -0
  148. package/dist/lib/decorator/interface/useOptions.d.ts +14 -0
  149. package/dist/lib/decorator/interface/useOptions.js +3 -0
  150. package/dist/lib/decorator/type/constructable.d.ts +2 -0
  151. package/dist/lib/decorator/type/constructable.js +3 -0
  152. package/dist/lib/decorator/type/containerScope.d.ts +2 -0
  153. package/dist/lib/decorator/type/containerScope.js +3 -0
  154. package/dist/lib/decorator/type/injectionScope.d.ts +2 -0
  155. package/dist/lib/decorator/type/injectionScope.js +3 -0
  156. package/dist/lib/error/error.d.ts +18 -0
  157. package/dist/lib/error/error.js +71 -0
  158. package/dist/lib/error/errorClass.d.ts +18 -0
  159. package/dist/lib/error/errorClass.js +72 -0
  160. package/dist/lib/error/errorContext.d.ts +38 -0
  161. package/dist/lib/error/errorContext.js +3 -0
  162. package/dist/lib/error/errorGlobal.d.ts +8 -0
  163. package/dist/lib/error/errorGlobal.js +3 -0
  164. package/dist/lib/error/errorInternal.d.ts +67 -0
  165. package/dist/lib/error/errorInternal.js +70 -0
  166. package/dist/lib/error/errorObject.d.ts +5 -0
  167. package/dist/lib/error/errorObject.js +3 -0
  168. package/dist/lib/error/index.d.ts +5 -0
  169. package/dist/lib/error/index.js +21 -0
  170. package/dist/lib/framework/bootstrap.d.ts +9 -0
  171. package/dist/lib/framework/bootstrap.js +35 -0
  172. package/dist/lib/framework/framework.d.ts +11 -0
  173. package/dist/lib/framework/framework.js +28 -0
  174. package/dist/lib/framework/loader.d.ts +21 -0
  175. package/dist/lib/framework/loader.js +57 -0
  176. package/dist/lib/framework/meta.d.ts +2 -0
  177. package/dist/lib/framework/meta.js +23 -0
  178. package/dist/lib/framework/metaClass.d.ts +2 -0
  179. package/dist/lib/framework/metaClass.js +26 -0
  180. package/dist/lib/framework/moduleInfo.d.ts +3 -0
  181. package/dist/lib/framework/moduleInfo.js +67 -0
  182. package/dist/lib/framework/util.d.ts +4 -0
  183. package/dist/lib/framework/util.js +15 -0
  184. package/dist/lib/module/asset/errors.d.ts +68 -0
  185. package/dist/lib/module/asset/errors.js +69 -0
  186. package/dist/lib/module/bean/index.d.ts +4 -0
  187. package/dist/lib/module/bean/index.js +24 -0
  188. package/dist/lib/module/broadcast/broadcast.d.ts +3 -0
  189. package/dist/lib/module/broadcast/broadcast.js +49 -0
  190. package/dist/lib/module/broadcast/broadcastClient.d.ts +24 -0
  191. package/dist/lib/module/broadcast/broadcastClient.js +91 -0
  192. package/dist/lib/module/cluster/agent.d.ts +3 -0
  193. package/dist/lib/module/cluster/agent.js +22 -0
  194. package/dist/lib/module/cluster/app.d.ts +3 -0
  195. package/dist/lib/module/cluster/app.js +26 -0
  196. package/dist/lib/module/config.d.ts +3 -0
  197. package/dist/lib/module/config.js +67 -0
  198. package/dist/lib/module/constant.d.ts +3 -0
  199. package/dist/lib/module/constant.js +46 -0
  200. package/dist/lib/module/contextPatch.d.ts +3 -0
  201. package/dist/lib/module/contextPatch.js +16 -0
  202. package/dist/lib/module/errors.d.ts +3 -0
  203. package/dist/lib/module/errors.js +49 -0
  204. package/dist/lib/module/index.d.ts +2 -0
  205. package/dist/lib/module/index.js +3 -0
  206. package/dist/lib/module/loader.d.ts +5 -0
  207. package/dist/lib/module/loader.js +73 -0
  208. package/dist/lib/module/locales.d.ts +3 -0
  209. package/dist/lib/module/locales.js +132 -0
  210. package/dist/lib/module/messenger.d.ts +25 -0
  211. package/dist/lib/module/messenger.js +128 -0
  212. package/dist/lib/module/middleware.d.ts +3 -0
  213. package/dist/lib/module/middleware.js +113 -0
  214. package/dist/lib/module/model.d.ts +3 -0
  215. package/dist/lib/module/model.js +47 -0
  216. package/dist/lib/module/module.d.ts +12 -0
  217. package/dist/lib/module/module.js +134 -0
  218. package/dist/lib/module/moduleMeta.d.ts +3 -0
  219. package/dist/lib/module/moduleMeta.js +26 -0
  220. package/dist/lib/module/queue/queue.d.ts +3 -0
  221. package/dist/lib/module/queue/queue.js +59 -0
  222. package/dist/lib/module/queue/queueClient.d.ts +26 -0
  223. package/dist/lib/module/queue/queueClient.js +262 -0
  224. package/dist/lib/module/redis.d.ts +11 -0
  225. package/dist/lib/module/redis.js +46 -0
  226. package/dist/lib/module/reload/development.d.ts +3 -0
  227. package/dist/lib/module/reload/development.js +98 -0
  228. package/dist/lib/module/reload/reload.d.ts +16 -0
  229. package/dist/lib/module/reload/reload.js +113 -0
  230. package/dist/lib/module/reload.d.ts +7 -0
  231. package/dist/lib/module/reload.js +17 -0
  232. package/dist/lib/module/route.d.ts +10 -0
  233. package/dist/lib/module/route.js +239 -0
  234. package/dist/lib/module/schedule.d.ts +3 -0
  235. package/dist/lib/module/schedule.js +129 -0
  236. package/dist/lib/module/service.d.ts +3 -0
  237. package/dist/lib/module/service.js +35 -0
  238. package/dist/lib/module/socketio.d.ts +5 -0
  239. package/dist/lib/module/socketio.js +47 -0
  240. package/dist/lib/module/startup.d.ts +2 -0
  241. package/dist/lib/module/startup.js +134 -0
  242. package/dist/lib/module/version/clear.d.ts +2 -0
  243. package/dist/lib/module/version/clear.js +42 -0
  244. package/dist/lib/module/version/ready.d.ts +6 -0
  245. package/dist/lib/module/version/ready.js +106 -0
  246. package/dist/lib/resource/error/errorClass.d.ts +18 -0
  247. package/dist/lib/resource/error/errorClass.js +72 -0
  248. package/dist/lib/resource/error/errorContext.d.ts +38 -0
  249. package/dist/lib/resource/error/errorContext.js +3 -0
  250. package/dist/lib/resource/error/errorGlobal.d.ts +8 -0
  251. package/dist/lib/resource/error/errorGlobal.js +3 -0
  252. package/dist/lib/resource/error/errorInternal.d.ts +67 -0
  253. package/dist/lib/resource/error/errorInternal.js +70 -0
  254. package/dist/lib/resource/error/errorObject.d.ts +5 -0
  255. package/dist/lib/resource/error/errorObject.js +3 -0
  256. package/dist/lib/resource/error/index.d.ts +5 -0
  257. package/dist/lib/resource/error/index.js +21 -0
  258. package/dist/lib/utils/index.d.ts +2 -0
  259. package/dist/lib/utils/index.js +18 -0
  260. package/dist/lib/utils/isClass.d.ts +2 -0
  261. package/dist/lib/utils/isClass.js +20 -0
  262. package/dist/lib/utils/mockUtil.d.ts +11 -0
  263. package/dist/lib/utils/mockUtil.js +34 -0
  264. package/dist/lib/utils/mockUtilCtx.d.ts +10 -0
  265. package/dist/lib/utils/mockUtilCtx.js +35 -0
  266. package/dist/lib/utils/performAction.d.ts +19 -0
  267. package/dist/lib/utils/performAction.js +137 -0
  268. package/dist/lib/utils/util.d.ts +63 -0
  269. package/dist/lib/utils/util.js +445 -0
  270. package/dist/lib/utils/utilCtx.d.ts +34 -0
  271. package/dist/lib/utils/utilCtx.js +137 -0
  272. package/dist/types/application/app.d.ts +19 -0
  273. package/dist/types/application/app.js +28 -0
  274. package/dist/types/application/index.d.ts +2 -0
  275. package/dist/types/application/index.js +18 -0
  276. package/dist/types/config/appInfo.d.ts +4 -0
  277. package/dist/types/config/appInfo.js +3 -0
  278. package/dist/types/config/config.d.ts +10 -0
  279. package/dist/types/config/config.js +3 -0
  280. package/dist/types/config/development.d.ts +4 -0
  281. package/dist/types/config/development.js +3 -0
  282. package/dist/types/config/index.d.ts +4 -0
  283. package/dist/types/config/index.js +20 -0
  284. package/dist/types/config/locale.d.ts +10 -0
  285. package/dist/types/config/locale.js +7 -0
  286. package/dist/types/context/contextBase.d.ts +21 -0
  287. package/dist/types/context/contextBase.js +3 -0
  288. package/dist/types/context/contextConfig.d.ts +4 -0
  289. package/dist/types/context/contextConfig.js +3 -0
  290. package/dist/types/context/contextError.d.ts +25 -0
  291. package/dist/types/context/contextError.js +3 -0
  292. package/dist/types/context/contextLocale.d.ts +9 -0
  293. package/dist/types/context/contextLocale.js +3 -0
  294. package/dist/types/context/contextOthers.d.ts +4 -0
  295. package/dist/types/context/contextOthers.js +3 -0
  296. package/dist/types/context/contextState.d.ts +8 -0
  297. package/dist/types/context/contextState.js +3 -0
  298. package/dist/types/context/index.d.ts +18 -0
  299. package/dist/types/context/index.js +18 -0
  300. package/dist/types/enum/appEvent.d.ts +5 -0
  301. package/dist/types/enum/appEvent.js +9 -0
  302. package/dist/types/enum/index.d.ts +2 -0
  303. package/dist/types/enum/index.js +18 -0
  304. package/dist/types/index.d.ts +7 -0
  305. package/dist/types/index.js +23 -0
  306. package/dist/types/interface/broadcast.d.ts +5 -0
  307. package/dist/types/interface/broadcast.js +3 -0
  308. package/dist/types/interface/error.d.ts +8 -0
  309. package/dist/types/interface/error.js +3 -0
  310. package/dist/types/interface/index.d.ts +6 -0
  311. package/dist/types/interface/index.js +22 -0
  312. package/dist/types/interface/module.d.ts +32 -0
  313. package/dist/types/interface/module.js +18 -0
  314. package/dist/types/interface/monkey.d.ts +25 -0
  315. package/dist/types/interface/monkey.js +3 -0
  316. package/dist/types/interface/queue.d.ts +29 -0
  317. package/dist/types/interface/queue.js +3 -0
  318. package/dist/types/interface/schedule.d.ts +11 -0
  319. package/dist/types/interface/schedule.js +3 -0
  320. package/dist/types/utils/cast.d.ts +6 -0
  321. package/dist/types/utils/cast.js +8 -0
  322. package/dist/types/utils/index.d.ts +3 -0
  323. package/dist/types/utils/index.js +19 -0
  324. package/dist/types/utils/powerPartial.d.ts +4 -0
  325. package/dist/types/utils/powerPartial.js +3 -0
  326. package/package.json +61 -14
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,5 @@
1
+ import { BeanSimple } from '../bean/beanSimple.js';
2
+ export declare class ModuleLoader extends BeanSimple {
3
+ execute(): Promise<void>;
4
+ }
5
+ //# sourceMappingURL=loader.d.ts.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,3 @@
1
+ import { VonaApplication, IModule } from '../../types/index.js';
2
+ export default function (app: VonaApplication, modules: Record<string, IModule>): void;
3
+ //# sourceMappingURL=locales.d.ts.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,3 @@
1
+ import { VonaApplication } from '../../types/index.js';
2
+ export default function (app: VonaApplication): [object, any[]];
3
+ //# sourceMappingURL=middleware.d.ts.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,3 @@
1
+ import { CabloyApplication } from '../../types/index.js';
2
+ export default function (app: CabloyApplication): void;
3
+ //# sourceMappingURL=model.d.ts.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