alemonjs 2.1.83 → 2.1.84

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 (235) hide show
  1. package/lib/{app → application}/define-children.js +2 -1
  2. package/lib/{app → application/format}/message-api.d.ts +2 -2
  3. package/lib/{app → application/format}/message-api.js +12 -4
  4. package/lib/{app → application/format}/message-format-old.d.ts +1 -1
  5. package/lib/{app → application/format}/message-format.d.ts +1 -2
  6. package/lib/{app → application/format}/message-format.js +0 -2
  7. package/lib/{app/hook-use → application/hooks}/announce.js +4 -3
  8. package/lib/{app/hook-use → application/hooks}/channel.js +4 -3
  9. package/lib/{app/hook-use → application/hooks}/client.d.ts +1 -1
  10. package/lib/{app/hook-use → application/hooks}/client.js +4 -11
  11. package/lib/{app/hook-use → application/hooks}/common.d.ts +7 -7
  12. package/lib/{app/hook-use → application/hooks}/common.js +9 -8
  13. package/lib/{app/hook-use → application/hooks}/event.js +1 -1
  14. package/lib/{app/hook-use → application/hooks}/guild.js +4 -3
  15. package/lib/{app/hook-use → application/hooks}/history.js +4 -3
  16. package/lib/{app/hook-use → application/hooks}/me.js +12 -7
  17. package/lib/{app/hook-use → application/hooks}/media.d.ts +3 -3
  18. package/lib/{app/hook-use → application/hooks}/media.js +4 -3
  19. package/lib/{app/hook-use → application/hooks}/member.js +4 -3
  20. package/lib/{app/hook-use → application/hooks}/mention.js +4 -3
  21. package/lib/{app/hook-use → application/hooks}/message.js +6 -5
  22. package/lib/{app/hook-use → application/hooks}/permission.js +4 -3
  23. package/lib/{app/hook-use → application/hooks}/reaction.js +4 -3
  24. package/lib/{app/hook-use → application/hooks}/request.js +12 -7
  25. package/lib/{app/hook-use → application/hooks}/role.js +4 -3
  26. package/lib/{app/hook-use → application/hooks}/subscribe.js +4 -4
  27. package/lib/{app/hook-use → application/hooks}/user.js +12 -7
  28. package/lib/application/index.d.ts +29 -0
  29. package/lib/application/index.js +58 -0
  30. package/lib/{app → application}/router/dsl.d.ts +1 -1
  31. package/lib/{app → application}/router/dsl.js +13 -9
  32. package/lib/{cbp → application/runtime/cbp}/connects/client.d.ts +1 -1
  33. package/lib/{cbp → application/runtime/cbp}/connects/client.js +43 -50
  34. package/lib/application/runtime/cbp/index.d.ts +3 -0
  35. package/lib/application/runtime/cbp/index.js +3 -0
  36. package/lib/application/runtime/cbp/processor/actions.d.ts +3 -0
  37. package/lib/application/runtime/cbp/processor/actions.js +58 -0
  38. package/lib/application/runtime/cbp/processor/api.d.ts +3 -0
  39. package/lib/application/runtime/cbp/processor/api.js +58 -0
  40. package/lib/application/runtime/cbp/processor/request-registry.d.ts +8 -0
  41. package/lib/application/runtime/cbp/processor/request-registry.js +6 -0
  42. package/lib/application/runtime/client-runtime.d.ts +1 -0
  43. package/lib/application/runtime/client-runtime.js +95 -0
  44. package/lib/{app → application/runtime}/event-error.d.ts +1 -1
  45. package/lib/{app → application/runtime}/event-error.js +1 -1
  46. package/lib/{app → application/runtime}/event-group.d.ts +1 -1
  47. package/lib/{app → application/runtime}/event-middleware.d.ts +1 -1
  48. package/lib/{app → application/runtime}/event-middleware.js +1 -1
  49. package/lib/{app → application/runtime}/event-processor-callHandler.d.ts +1 -1
  50. package/lib/{app → application/runtime}/event-processor-callHandler.js +8 -1
  51. package/lib/{app → application/runtime}/event-processor-cycle.d.ts +1 -1
  52. package/lib/{app → application/runtime}/event-processor-cycleFiles.d.ts +1 -1
  53. package/lib/{app → application/runtime}/event-processor-cycleFiles.js +2 -2
  54. package/lib/{app → application/runtime}/event-processor-cycleRoute.d.ts +1 -1
  55. package/lib/{app → application/runtime}/event-processor-cycleRoute.js +9 -2
  56. package/lib/{app → application/runtime}/event-processor-event.d.ts +1 -1
  57. package/lib/{app → application/runtime}/event-processor-middleware.d.ts +1 -1
  58. package/lib/{app → application/runtime}/event-processor-subscribe.d.ts +1 -1
  59. package/lib/{app → application/runtime}/event-processor-subscribe.js +9 -2
  60. package/lib/{app → application/runtime}/event-processor.d.ts +1 -1
  61. package/lib/{app → application/runtime}/event-processor.js +4 -3
  62. package/lib/{app → application/runtime}/event-response.d.ts +1 -1
  63. package/lib/{app → application/runtime}/event-utils.d.ts +1 -1
  64. package/lib/{app → application/runtime}/event-utils.js +2 -2
  65. package/lib/{app → application/runtime}/hook-event-context.d.ts +2 -2
  66. package/lib/{app → application/runtime}/hook-event-context.js +2 -2
  67. package/lib/application/runtime/http/index.d.ts +4 -0
  68. package/lib/application/runtime/http/index.js +4 -0
  69. package/lib/application/runtime/http/routers/hello.html.d.ts +4 -0
  70. package/lib/application/runtime/http/routers/hello.html.js +376 -0
  71. package/lib/{server → application/runtime/http}/routers/router.js +131 -54
  72. package/lib/{server → application/runtime/http}/routers/utils.d.ts +1 -1
  73. package/lib/{server → application/runtime/http}/routers/utils.js +7 -7
  74. package/lib/{server/main.js → application/runtime/http-server.js} +2 -6
  75. package/lib/{app → application/runtime}/lifecycle-callbacks.d.ts +1 -1
  76. package/lib/{app → application/runtime}/lifecycle-callbacks.js +2 -7
  77. package/lib/{app/load_modules → application/runtime/load-modules}/load.js +2 -2
  78. package/lib/{app/load_modules → application/runtime/load-modules}/loadChild.js +14 -5
  79. package/lib/{app → application/runtime}/schedule-store.d.ts +1 -1
  80. package/lib/{app → application/runtime}/schedule-store.js +1 -1
  81. package/lib/{app → application/runtime}/store.d.ts +14 -19
  82. package/lib/{app → application/runtime}/store.js +8 -103
  83. package/lib/application/schedule.d.ts +17 -0
  84. package/lib/{app/api → application}/schedule.js +1 -1
  85. package/lib/client.d.ts +1 -1
  86. package/lib/client.js +1 -117
  87. package/lib/common/cbp/constants.d.ts +11 -0
  88. package/lib/common/cbp/constants.js +13 -0
  89. package/lib/{cbp/connects/connect.js → common/cbp/heartbeat.js} +3 -6
  90. package/lib/common/cbp/normalize.d.ts +16 -0
  91. package/lib/common/cbp/normalize.js +324 -0
  92. package/lib/common/cbp/runtime.d.ts +2 -0
  93. package/lib/common/cbp/runtime.js +10 -0
  94. package/lib/common/cbp/typings.d.ts +159 -0
  95. package/lib/{cbp/connects/base.js → common/cbp/ws-connector.js} +7 -9
  96. package/lib/{core → common}/config.d.ts +2 -2
  97. package/lib/{core → common}/config.js +5 -4
  98. package/lib/common/identity.d.ts +11 -0
  99. package/lib/common/identity.js +34 -0
  100. package/lib/common/index.d.ts +15 -0
  101. package/lib/common/index.js +14 -0
  102. package/lib/common/logger.d.ts +6 -0
  103. package/lib/common/logger.js +99 -0
  104. package/lib/common/result.d.ts +7 -0
  105. package/lib/common/result.js +19 -0
  106. package/lib/{core → common}/utils.d.ts +3 -18
  107. package/lib/{core → common}/utils.js +6 -49
  108. package/lib/{core → common}/variable.js +1 -1
  109. package/lib/core/cbp/index.d.ts +1 -0
  110. package/lib/core/cbp/index.js +1 -0
  111. package/lib/core/cbp/processor/config.d.ts +8 -0
  112. package/lib/core/cbp/processor/config.js +29 -0
  113. package/lib/{cbp → core/cbp}/routers/hello.html.js +1 -1
  114. package/lib/{cbp → core/cbp}/server/main.js +57 -35
  115. package/lib/{cbp → core/cbp}/server/testone.d.ts +1 -1
  116. package/lib/{cbp → core/cbp}/server/testone.js +8 -2
  117. package/lib/core/index.d.ts +1 -3
  118. package/lib/core/index.js +1 -3
  119. package/lib/core/process/index.d.ts +3 -0
  120. package/lib/{process → core/process}/index.js +0 -1
  121. package/lib/{process → core/process}/ipc-bridge.js +16 -2
  122. package/lib/{process → core/process}/module.js +13 -4
  123. package/lib/{process → core/process}/platform.js +12 -3
  124. package/lib/core/start.d.ts +2 -0
  125. package/lib/core/start.js +76 -0
  126. package/lib/global.d.ts +4 -3
  127. package/lib/index.d.ts +10 -2
  128. package/lib/index.js +74 -54
  129. package/lib/main.d.ts +1 -2
  130. package/lib/main.js +1 -76
  131. package/lib/{cbp/connects/platform.d.ts → platform/cbp-platform.d.ts} +2 -2
  132. package/lib/{cbp/connects/platform.js → platform/cbp-platform.js} +52 -75
  133. package/lib/{app → platform}/define-platform.js +2 -0
  134. package/lib/platform/event-value.d.ts +7 -0
  135. package/lib/platform/event-value.js +5 -0
  136. package/lib/platform/index.d.ts +5 -0
  137. package/lib/platform/index.js +5 -0
  138. package/lib/types/actions.d.ts +20 -1
  139. package/lib/types/apis.d.ts +2 -1
  140. package/lib/types/client/index.d.ts +1 -1
  141. package/lib/types/cycle/index.d.ts +1 -1
  142. package/lib/types/event/index.d.ts +1 -1
  143. package/lib/types/subscribe/index.d.ts +1 -1
  144. package/package.json +22 -1
  145. package/lib/app/api/schedule.d.ts +0 -17
  146. package/lib/app/index.d.ts +0 -25
  147. package/lib/app/index.js +0 -47
  148. package/lib/cbp/index.d.ts +0 -3
  149. package/lib/cbp/index.js +0 -3
  150. package/lib/cbp/processor/actions.d.ts +0 -3
  151. package/lib/cbp/processor/actions.js +0 -48
  152. package/lib/cbp/processor/api.d.ts +0 -3
  153. package/lib/cbp/processor/api.js +0 -48
  154. package/lib/cbp/processor/config.d.ts +0 -29
  155. package/lib/cbp/processor/config.js +0 -52
  156. package/lib/cbp/typings.d.ts +0 -20
  157. package/lib/process/index.d.ts +0 -4
  158. package/lib/server/routers/hello.html.d.ts +0 -2
  159. package/lib/server/routers/hello.html.js +0 -31
  160. /package/lib/{app → application}/define-children.d.ts +0 -0
  161. /package/lib/{app → application}/define-middleware.d.ts +0 -0
  162. /package/lib/{app → application}/define-middleware.js +0 -0
  163. /package/lib/{app → application}/define-response.d.ts +0 -0
  164. /package/lib/{app → application}/define-response.js +0 -0
  165. /package/lib/{app → application}/define-router.d.ts +0 -0
  166. /package/lib/{app → application}/define-router.js +0 -0
  167. /package/lib/{app → application}/expose.d.ts +0 -0
  168. /package/lib/{app → application}/expose.js +0 -0
  169. /package/lib/{app → application/format}/message-format-old.js +0 -0
  170. /package/lib/{app/hook-use → application/hooks}/announce.d.ts +0 -0
  171. /package/lib/{app/hook-use → application/hooks}/channel.d.ts +0 -0
  172. /package/lib/{app/hook-use → application/hooks}/event.d.ts +0 -0
  173. /package/lib/{app/hook-use → application/hooks}/guild.d.ts +0 -0
  174. /package/lib/{app/hook-use → application/hooks}/history.d.ts +0 -0
  175. /package/lib/{app/hook-use → application/hooks}/index.d.ts +0 -0
  176. /package/lib/{app/hook-use → application/hooks}/index.js +0 -0
  177. /package/lib/{app/hook-use → application/hooks}/me.d.ts +0 -0
  178. /package/lib/{app/hook-use → application/hooks}/member.d.ts +0 -0
  179. /package/lib/{app/hook-use → application/hooks}/mention.d.ts +0 -0
  180. /package/lib/{app/hook-use → application/hooks}/message.d.ts +0 -0
  181. /package/lib/{app/hook-use → application/hooks}/permission.d.ts +0 -0
  182. /package/lib/{app/hook-use → application/hooks}/reaction.d.ts +0 -0
  183. /package/lib/{app/hook-use → application/hooks}/request.d.ts +0 -0
  184. /package/lib/{app/hook-use → application/hooks}/role.d.ts +0 -0
  185. /package/lib/{app/hook-use → application/hooks}/route.d.ts +0 -0
  186. /package/lib/{app/hook-use → application/hooks}/route.js +0 -0
  187. /package/lib/{app/hook-use → application/hooks}/subscribe.d.ts +0 -0
  188. /package/lib/{app/hook-use → application/hooks}/user.d.ts +0 -0
  189. /package/lib/{app → application}/router/fallback.d.ts +0 -0
  190. /package/lib/{app → application}/router/fallback.js +0 -0
  191. /package/lib/{app → application}/router/main.d.ts +0 -0
  192. /package/lib/{app → application}/router/main.js +0 -0
  193. /package/lib/{app → application}/router/parser.d.ts +0 -0
  194. /package/lib/{app → application}/router/parser.js +0 -0
  195. /package/lib/{app → application}/router/types.d.ts +0 -0
  196. /package/lib/{app → application}/router/types.js +0 -0
  197. /package/lib/{app → application}/router/validator.d.ts +0 -0
  198. /package/lib/{app → application}/router/validator.js +0 -0
  199. /package/lib/{cbp → application/runtime/cbp}/processor/transport.d.ts +0 -0
  200. /package/lib/{cbp → application/runtime/cbp}/processor/transport.js +0 -0
  201. /package/lib/{app → application/runtime}/event-group.js +0 -0
  202. /package/lib/{app → application/runtime}/event-processor-cycle.js +0 -0
  203. /package/lib/{app → application/runtime}/event-processor-event.js +0 -0
  204. /package/lib/{app → application/runtime}/event-processor-middleware.js +0 -0
  205. /package/lib/{app → application/runtime}/event-response.js +0 -0
  206. /package/lib/{server → application/runtime/http}/routers/middleware.d.ts +0 -0
  207. /package/lib/{server → application/runtime/http}/routers/middleware.js +0 -0
  208. /package/lib/{cbp → application/runtime/http}/routers/router.d.ts +0 -0
  209. /package/lib/{server/main.d.ts → application/runtime/http-server.d.ts} +0 -0
  210. /package/lib/{app/load_modules → application/runtime/load-modules}/index.d.ts +0 -0
  211. /package/lib/{app/load_modules → application/runtime/load-modules}/index.js +0 -0
  212. /package/lib/{app/load_modules → application/runtime/load-modules}/load.d.ts +0 -0
  213. /package/lib/{app/load_modules → application/runtime/load-modules}/loadChild.d.ts +0 -0
  214. /package/lib/{app/config.d.ts → application/runtime/subscribe-status.d.ts} +0 -0
  215. /package/lib/{app/config.js → application/runtime/subscribe-status.js} +0 -0
  216. /package/lib/{app → common}/SinglyLinkedList.d.ts +0 -0
  217. /package/lib/{app → common}/SinglyLinkedList.js +0 -0
  218. /package/lib/{cbp/connects/connect.d.ts → common/cbp/heartbeat.d.ts} +0 -0
  219. /package/lib/{cbp → common/cbp}/typings.js +0 -0
  220. /package/lib/{cbp/connects/base.d.ts → common/cbp/ws-connector.d.ts} +0 -0
  221. /package/lib/{process → common}/direct-channel.d.ts +0 -0
  222. /package/lib/{process → common}/direct-channel.js +0 -0
  223. /package/lib/{core → common}/react.d.ts +0 -0
  224. /package/lib/{core → common}/react.js +0 -0
  225. /package/lib/{core → common}/variable.d.ts +0 -0
  226. /package/lib/{cbp → core/cbp}/routers/hello.html.d.ts +0 -0
  227. /package/lib/{server → core/cbp}/routers/router.d.ts +0 -0
  228. /package/lib/{cbp → core/cbp}/routers/router.js +0 -0
  229. /package/lib/{cbp → core/cbp}/server/main.d.ts +0 -0
  230. /package/lib/{process → core/process}/ipc-bridge.d.ts +0 -0
  231. /package/lib/{process → core/process}/module.d.ts +0 -0
  232. /package/lib/{process → core/process}/platform.d.ts +0 -0
  233. /package/lib/{app → platform}/define-platform.d.ts +0 -0
  234. /package/lib/{app → platform}/event-format.d.ts +0 -0
  235. /package/lib/{app → platform}/event-format.js +0 -0
@@ -1,4 +1,4 @@
1
- import { showErrorModule } from '../core/utils.js';
1
+ import { showErrorModule } from '../../common/utils.js';
2
2
 
3
3
  const swallowLifecycleError = (error) => {
4
4
  showErrorModule(error instanceof Error ? error : new Error(typeof error === 'string' ? error : 'Unknown lifecycle error'));
@@ -65,12 +65,7 @@ const dispatchAppReady = async (appName, store) => {
65
65
  if (!handler) {
66
66
  return;
67
67
  }
68
- try {
69
- await handler(store);
70
- }
71
- catch (error) {
72
- throw error;
73
- }
68
+ await handler(store);
74
69
  };
75
70
  const dispatchAppDispose = async (appName, error) => {
76
71
  const app = getChildrenApp(appName);
@@ -1,8 +1,8 @@
1
- import { getConfig } from '../../core/config.js';
1
+ import { getConfig } from '../../../common/config.js';
2
2
  import { loadChildren, loadChildrenFile } from './loadChild.js';
3
3
  import { join, dirname } from 'path';
4
4
  import { existsSync } from 'fs';
5
- import { ResultCode } from '../../core/variable.js';
5
+ import { ResultCode } from '../../../common/variable.js';
6
6
  import { registerRuntimeApp } from '../store.js';
7
7
 
8
8
  const loadApps = () => {
@@ -1,9 +1,9 @@
1
1
  import { dirname, join } from 'path';
2
2
  import { existsSync } from 'fs';
3
- import { showErrorModule, getRecursiveDirFiles, createEventName } from '../../core/utils.js';
3
+ import { showErrorModule, getRecursiveDirFiles, createEventName } from '../../../common/utils.js';
4
4
  import { registerRuntimeApp, updateRuntimeAppStatus, ChildrenApp, clearRuntimeAppKoaRouters, setRuntimeAppKoaRouters, updateRuntimeAppCapabilities } from '../store.js';
5
- import { registerExpose } from '../expose.js';
6
- import { ResultCode, fileSuffixMiddleware } from '../../core/variable.js';
5
+ import { registerExpose } from '../../expose.js';
6
+ import { ResultCode, fileSuffixMiddleware } from '../../../common/variable.js';
7
7
  import { registerAppDir, scheduleCancelByApp, unregisterAppDir } from '../schedule-store.js';
8
8
  import module$1 from 'module';
9
9
  import { dispatchRuntimeStatusChange, dispatchAppDispose, dispatchAppReady } from '../lifecycle-callbacks.js';
@@ -21,11 +21,20 @@ const resolvePackageRoot = (startDir) => {
21
21
  }
22
22
  return startDir;
23
23
  };
24
+ const detectDefaultWebRoot = (packageRoot) => {
25
+ if (existsSync(join(packageRoot, 'dist', 'index.html'))) {
26
+ return 'dist';
27
+ }
28
+ if (existsSync(join(packageRoot, 'index.html'))) {
29
+ return '';
30
+ }
31
+ return null;
32
+ };
24
33
  const detectWebCapability = (startDir) => {
25
34
  const packageRoot = resolvePackageRoot(startDir);
26
35
  const packageJsonPath = join(packageRoot, 'package.json');
27
36
  if (!existsSync(packageJsonPath)) {
28
- return existsSync(join(packageRoot, 'index.html'));
37
+ return Boolean(detectDefaultWebRoot(packageRoot));
29
38
  }
30
39
  try {
31
40
  const pkg = require$1(packageJsonPath) ?? {};
@@ -36,7 +45,7 @@ const detectWebCapability = (startDir) => {
36
45
  }
37
46
  catch {
38
47
  }
39
- return existsSync(join(packageRoot, 'index.html'));
48
+ return Boolean(detectDefaultWebRoot(packageRoot));
40
49
  };
41
50
  const loadChildren = async (mainPath, appName) => {
42
51
  if (!mainPath || typeof mainPath !== 'string') {
@@ -1,4 +1,4 @@
1
- import { ScheduleId, ScheduleItem, ScheduleStatus, ScheduleCallback, CronExpression } from '../types/schedule';
1
+ import { ScheduleId, ScheduleItem, ScheduleStatus, ScheduleCallback, CronExpression } from '../../types/schedule';
2
2
  export declare const registerAppDir: (appName: string, mainDir: string) => void;
3
3
  export declare const unregisterAppDir: (appName: string) => void;
4
4
  export declare const scheduleInterval: (callback: ScheduleCallback, ms: number, appName?: string) => ScheduleId;
@@ -1,4 +1,4 @@
1
- import { ResultCode } from '../core/variable.js';
1
+ import { ResultCode } from '../../common/variable.js';
2
2
  import { CronJob } from 'cron';
3
3
 
4
4
  const scheduleMap = new Map();
@@ -1,6 +1,7 @@
1
- import { SinglyLinkedList } from './SinglyLinkedList';
2
- import { childrenCallbackRes, ChildrenCycle, EventCycleEnum, EventKeys, FileTreeNode, StoreMiddlewareItem, StoreResponseItem, SubscribeValue } from '../types';
1
+ import { SinglyLinkedList } from '../../common/SinglyLinkedList.js';
2
+ import { childrenCallbackRes, ChildrenCycle, EventCycleEnum, EventKeys, FileTreeNode, StoreMiddlewareItem, StoreResponseItem, SubscribeValue } from '../../types';
3
3
  import type KoaRouter from 'koa-router';
4
+ export { Logger, logger } from '../../common/logger.js';
4
5
  export type RuntimeAppStatus = 'discovered' | 'loading' | 'ready' | 'failed' | 'disposed';
5
6
  export type RuntimeAppCapability = {
6
7
  event: boolean;
@@ -26,19 +27,14 @@ export type RuntimeAppRecord = {
26
27
  createdAt: number;
27
28
  updatedAt: number;
28
29
  };
29
- export declare class Logger {
30
- #private;
31
- constructor();
32
- get value(): any;
33
- }
34
30
  export declare class Core {
35
31
  constructor();
36
32
  get value(): {
37
- storeState: import("../types").ResponseState;
38
- storeStateSubscribe: import("../types").StateSubscribeMap;
39
- storeSubscribeList: import("../types").SubscribeKeysMap;
33
+ storeState: import("../index.js").ResponseState;
34
+ storeStateSubscribe: import("../index.js").StateSubscribeMap;
35
+ storeSubscribeList: import("../index.js").SubscribeKeysMap;
40
36
  storeChildrenApp: {
41
- [key: string]: import("../types").StoreChildrenApp;
37
+ [key: string]: import("../index.js").StoreChildrenApp;
42
38
  };
43
39
  runtimeApps?: {
44
40
  [key: string]: RuntimeAppRecord;
@@ -185,19 +181,18 @@ export declare class ChildrenApp {
185
181
  pushCycle(data: ChildrenCycle): void;
186
182
  on(): void;
187
183
  un(): void;
188
- get value(): import("../types").StoreChildrenApp;
184
+ get value(): import("../index.js").StoreChildrenApp;
189
185
  }
190
- export declare const getChildrenApp: (name: string) => import("../types").StoreChildrenApp;
191
- export declare const listChildrenApps: () => import("../types").StoreChildrenApp[];
186
+ export declare const getChildrenApp: (name: string) => import("../index.js").StoreChildrenApp;
187
+ export declare const listChildrenApps: () => import("../index.js").StoreChildrenApp[];
192
188
  export declare const ProcessorEventAutoClearMap: Map<any, any>;
193
189
  export declare const ProcessorEventUserAutoClearMap: Map<any, any>;
194
- export declare const logger: any;
195
190
  export declare const core: {
196
- storeState: import("../types").ResponseState;
197
- storeStateSubscribe: import("../types").StateSubscribeMap;
198
- storeSubscribeList: import("../types").SubscribeKeysMap;
191
+ storeState: import("../index.js").ResponseState;
192
+ storeStateSubscribe: import("../index.js").StateSubscribeMap;
193
+ storeSubscribeList: import("../index.js").SubscribeKeysMap;
199
194
  storeChildrenApp: {
200
- [key: string]: import("../types").StoreChildrenApp;
195
+ [key: string]: import("../index.js").StoreChildrenApp;
201
196
  };
202
197
  runtimeApps?: {
203
198
  [key: string]: RuntimeAppRecord;
@@ -1,102 +1,8 @@
1
- import { SinglyLinkedList } from './SinglyLinkedList.js';
2
- import { mkdirSync } from 'node:fs';
3
- import log4js from 'log4js';
4
- import { disposeExpose } from './expose.js';
1
+ import { SinglyLinkedList } from '../../common/SinglyLinkedList.js';
2
+ import { disposeExpose } from '../expose.js';
5
3
  import { dispatchRuntimeStatusChange } from './lifecycle-callbacks.js';
4
+ export { Logger, logger } from '../../common/logger.js';
6
5
 
7
- const createLogger = () => {
8
- if (process.env.BROWSER_ENV === 'browser') {
9
- return {
10
- trace: console.trace.bind(console),
11
- debug: console.debug.bind(console),
12
- info: console.info.bind(console),
13
- mark: console.info.bind(console),
14
- warn: console.warn.bind(console),
15
- error: console.error.bind(console),
16
- fatal: console.error.bind(console)
17
- };
18
- }
19
- const logDir = process.env?.LOG_PATH ?? `./logs/${process.env.LOG_NAME ?? ''}`;
20
- mkdirSync(logDir, { recursive: true });
21
- const level = process.env.NODE_ENV === 'development' ? 'trace' : 'info';
22
- const hideTime = process.env.LOGGER_TIME === 'false' ? true : false;
23
- const hideLevel = process.env.LOGGER_LEVEL === 'false' ? true : false;
24
- let pattern = '';
25
- if (hideTime && hideLevel) {
26
- pattern = '%m';
27
- }
28
- else if (hideTime && !hideLevel) {
29
- pattern = '[%p] %m';
30
- }
31
- else if (!hideTime && hideLevel) {
32
- pattern = '[%d{yyyy-MM-dd hh:mm:ss}] %m';
33
- }
34
- else {
35
- pattern = '[%d{yyyy-MM-dd hh:mm:ss}][%p] %m';
36
- }
37
- log4js.configure({
38
- appenders: {
39
- console: {
40
- type: 'console',
41
- layout: {
42
- type: 'pattern',
43
- pattern: pattern
44
- }
45
- },
46
- command: {
47
- type: 'dateFile',
48
- filename: `${logDir}/command`,
49
- pattern: 'yyyy-MM-dd.log',
50
- numBackups: 15,
51
- alwaysIncludePattern: true,
52
- layout: {
53
- type: 'pattern',
54
- pattern: pattern
55
- }
56
- },
57
- error: {
58
- type: 'dateFile',
59
- filename: `${logDir}/error`,
60
- pattern: 'yyyy-MM-dd.log',
61
- numBackups: 15,
62
- alwaysIncludePattern: true,
63
- layout: {
64
- type: 'pattern',
65
- pattern: pattern
66
- }
67
- }
68
- },
69
- categories: {
70
- default: { appenders: ['console'], level: level },
71
- command: { appenders: ['console', 'command'], level: 'info' },
72
- error: { appenders: ['console', 'command', 'error'], level: 'warn' }
73
- }
74
- });
75
- const defaultLogger = log4js.getLogger('default');
76
- const commandLogger = log4js.getLogger('command');
77
- const errorLogger = log4js.getLogger('error');
78
- return {
79
- trace: defaultLogger.trace.bind(defaultLogger),
80
- debug: defaultLogger.debug.bind(defaultLogger),
81
- info: commandLogger.info.bind(commandLogger),
82
- mark: commandLogger.mark.bind(commandLogger),
83
- warn: errorLogger.warn.bind(errorLogger),
84
- error: errorLogger.error.bind(errorLogger),
85
- fatal: errorLogger.fatal.bind(errorLogger)
86
- };
87
- };
88
- class Logger {
89
- #logger = null;
90
- constructor() {
91
- this.#logger = createLogger();
92
- if (!global.logger) {
93
- global.logger = this.#logger;
94
- }
95
- }
96
- get value() {
97
- return this.#logger;
98
- }
99
- }
100
6
  class Core {
101
7
  constructor() {
102
8
  if (!global.alemonjsCore) {
@@ -201,7 +107,7 @@ const registerRuntimeApp = (record) => {
201
107
  createdAt: current?.createdAt ?? now,
202
108
  updatedAt: now
203
109
  };
204
- if (!current || current.status !== record.status) {
110
+ if (current?.status !== record.status) {
205
111
  logRuntimeAppStatus(record.status === 'failed' ? 'warn' : 'debug', runtimeApps[record.name]);
206
112
  }
207
113
  return runtimeApps[record.name];
@@ -255,7 +161,7 @@ const updateRuntimeAppCapabilities = (name, capabilities) => {
255
161
  const setRuntimeAppKoaRouters = (name, koaRouters) => {
256
162
  const koaRouterStore = getRuntimeAppKoaRouterStore();
257
163
  if (!koaRouters) {
258
- delete koaRouterStore[name];
164
+ Reflect.deleteProperty(koaRouterStore, name);
259
165
  return [];
260
166
  }
261
167
  const normalizedRouters = (Array.isArray(koaRouters) ? koaRouters : [koaRouters]).filter(Boolean);
@@ -267,7 +173,7 @@ const getRuntimeAppKoaRouters = (name) => {
267
173
  };
268
174
  const clearRuntimeAppKoaRouters = (name) => {
269
175
  const koaRouterStore = getRuntimeAppKoaRouterStore();
270
- delete koaRouterStore[name];
176
+ Reflect.deleteProperty(koaRouterStore, name);
271
177
  };
272
178
  const listRuntimeAppKoaRouters = () => {
273
179
  return Object.entries(getRuntimeAppKoaRouterStore())
@@ -642,7 +548,7 @@ class ChildrenApp {
642
548
  }
643
549
  un() {
644
550
  disposeExpose(this.#name);
645
- delete alemonjsCore.storeChildrenApp[this.#name];
551
+ Reflect.deleteProperty(alemonjsCore.storeChildrenApp, this.#name);
646
552
  bumpStoreVersion();
647
553
  }
648
554
  get value() {
@@ -660,7 +566,6 @@ const listChildrenApps = () => {
660
566
  };
661
567
  const ProcessorEventAutoClearMap = new Map();
662
568
  const ProcessorEventUserAutoClearMap = new Map();
663
- const logger = new Logger().value;
664
569
  const core = new Core().value;
665
570
  ['SIGINT', 'SIGTERM', 'SIGQUIT', 'disconnect'].forEach(sig => {
666
571
  process?.on?.(sig, () => {
@@ -671,4 +576,4 @@ process?.on?.('exit', code => {
671
576
  logger.info?.(`[alemonjs][exit] 进程退出,code=${code}`);
672
577
  });
673
578
 
674
- export { ChildrenApp, Core, Logger, Middleware, MiddlewareRouter, MiddlewareTree, ProcessorEventAutoClearMap, ProcessorEventUserAutoClearMap, Response, ResponseMiddleware, ResponseRouter, ResponseTree, State, StateSubscribe, SubscribeList, bumpStoreVersion, clearRuntimeAppKoaRouters, core, disposeAllRuntimeApps, disposeRuntimeApp, getChildrenApp, getRuntimeApp, getRuntimeAppKoaRouters, getSubscribeList, hasRuntimeAppCapability, listChildrenApps, listRuntimeAppKoaRouters, listRuntimeApps, logger, registerRuntimeApp, setRuntimeAppKoaRouters, toRuntimeAppSnapshot, updateRuntimeAppCapabilities, updateRuntimeAppStatus };
579
+ export { ChildrenApp, Core, Middleware, MiddlewareRouter, MiddlewareTree, ProcessorEventAutoClearMap, ProcessorEventUserAutoClearMap, Response, ResponseMiddleware, ResponseRouter, ResponseTree, State, StateSubscribe, SubscribeList, bumpStoreVersion, clearRuntimeAppKoaRouters, core, disposeAllRuntimeApps, disposeRuntimeApp, getChildrenApp, getRuntimeApp, getRuntimeAppKoaRouters, getSubscribeList, hasRuntimeAppCapability, listChildrenApps, listRuntimeAppKoaRouters, listRuntimeApps, registerRuntimeApp, setRuntimeAppKoaRouters, toRuntimeAppSnapshot, updateRuntimeAppCapabilities, updateRuntimeAppStatus };
@@ -0,0 +1,17 @@
1
+ import { ScheduleCallback, CronExpression } from '../types/schedule';
2
+ export declare const setInterval: (callback: ScheduleCallback, ms: number) => string;
3
+ export declare const setTimeout: (callback: ScheduleCallback, ms: number) => string;
4
+ export declare const setCron: (expression: CronExpression, callback: ScheduleCallback) => string;
5
+ export declare const clearInterval: (id: import("./index.js").ScheduleId) => boolean;
6
+ export declare const clearTimeout: (id: import("./index.js").ScheduleId) => boolean;
7
+ export declare const pauseSchedule: (id: import("./index.js").ScheduleId) => boolean;
8
+ export declare const resumeSchedule: (id: import("./index.js").ScheduleId) => boolean;
9
+ export declare const listSchedule: (appName?: string) => Array<{
10
+ id: import("./index.js").ScheduleId;
11
+ type: import("./index.js").ScheduleItem["type"];
12
+ status: import("./index.js").ScheduleStatus;
13
+ ms?: number;
14
+ cron?: string;
15
+ appName?: string;
16
+ createdAt: number;
17
+ }>;
@@ -1,4 +1,4 @@
1
- import { scheduleCancel, scheduleList, schedulePause, scheduleResume, scheduleCron, scheduleInterval, scheduleTimeout } from '../schedule-store.js';
1
+ import { scheduleCancel, scheduleList, schedulePause, scheduleResume, scheduleCron, scheduleInterval, scheduleTimeout } from './runtime/schedule-store.js';
2
2
 
3
3
  const setInterval = (callback, ms) => scheduleInterval(callback, ms);
4
4
  const setTimeout = (callback, ms) => scheduleTimeout(callback, ms);
package/lib/client.d.ts CHANGED
@@ -1 +1 @@
1
- export {};
1
+ import './application/runtime/client-runtime.js';
package/lib/client.js CHANGED
@@ -1,117 +1 @@
1
- import './types/event/actions.js';
2
- import { defaultPort } from './core/variable.js';
3
- import 'fs';
4
- import 'path';
5
- import 'yaml';
6
- import './core/utils.js';
7
- import { cbpClient } from './cbp/connects/client.js';
8
- import 'flatted';
9
- import 'ws';
10
- import './cbp/processor/config.js';
11
- import 'net';
12
- import 'v8';
13
- import 'os';
14
- import 'koa';
15
- import '@koa/cors';
16
- import './cbp/routers/router.js';
17
- import 'lodash';
18
- import 'fs/promises';
19
- import { disposeAllRuntimeApps } from './app/store.js';
20
- import { loadModels } from './app/load_modules/load.js';
21
- import './app/load_modules/loadChild.js';
22
- import './app/define-children.js';
23
- import './app/define-response.js';
24
- import './app/define-middleware.js';
25
- import './app/event-group.js';
26
- import './app/event-middleware.js';
27
- import './app/event-processor.js';
28
- import './app/event-response.js';
29
- import './app/hook-event-context.js';
30
- import './app/message-format-old.js';
31
- import { scheduleCancelByApp, unregisterAppDir } from './app/schedule-store.js';
32
- import './app/event-utils.js';
33
- import './app/message-api.js';
34
- import './process/platform.js';
35
- import './process/module.js';
36
- import { createServer } from './server/main.js';
37
- import { dispatchDisposeAllApps } from './app/lifecycle-callbacks.js';
38
-
39
- global.__client_loaded = true;
40
- let runtimeDisposed = false;
41
- const disposeRuntime = async () => {
42
- if (runtimeDisposed) {
43
- return;
44
- }
45
- runtimeDisposed = true;
46
- await dispatchDisposeAllApps();
47
- const apps = disposeAllRuntimeApps();
48
- apps.forEach(app => {
49
- scheduleCancelByApp(app.name);
50
- unregisterAppDir(app.name);
51
- });
52
- };
53
- const shutdown = async (reason) => {
54
- logger.info?.(`[alemonjs][${reason}] 收到信号,正在关闭...`);
55
- await disposeRuntime();
56
- process.exit(0);
57
- };
58
- const mainServer = () => {
59
- const port = process.env.serverPort;
60
- if (!port) {
61
- return;
62
- }
63
- createServer(port, () => {
64
- const httpURL = `http://127.0.0.1:${port}`;
65
- logger.info(`应用服务器: ${httpURL}`);
66
- });
67
- };
68
- const main = () => {
69
- const login = process.env.login ?? '';
70
- const platform = process.env.platform ?? '';
71
- const url = process.env.url ?? '';
72
- const port = process.env.port ?? defaultPort;
73
- const isFullReceive = process.env.is_full_receive === 'true' || process.env.is_full_receive === '1';
74
- if (!login && !platform && url) {
75
- logger.info(`[Connecting to CBP server at ${url}]`);
76
- cbpClient(url);
77
- }
78
- else {
79
- const httpURL = `http://127.0.0.1:${port}`;
80
- cbpClient(httpURL, { isFullReceive });
81
- }
82
- loadModels();
83
- };
84
- const mainProcess = () => {
85
- process.on('unhandledRejection', (reason) => {
86
- logger.error('[alemonjs][unhandledRejection] 未捕获的 Promise 拒绝:', reason);
87
- });
88
- process.on('uncaughtException', (error) => {
89
- logger.error('[alemonjs][uncaughtException] 未捕获的异常:', error);
90
- });
91
- ['SIGINT', 'SIGTERM', 'SIGQUIT', 'disconnect'].forEach(sig => {
92
- process?.on?.(sig, () => {
93
- void shutdown(sig);
94
- });
95
- });
96
- process?.on?.('exit', code => {
97
- void disposeRuntime();
98
- logger.info?.(`[alemonjs][exit] 进程退出,code=${code}`);
99
- });
100
- process.on('message', msg => {
101
- try {
102
- const data = typeof msg === 'string' ? JSON.parse(msg) : msg;
103
- if (data?.type === 'start') {
104
- main();
105
- mainServer();
106
- }
107
- else if (data?.type === 'stop') {
108
- void shutdown('stop');
109
- }
110
- }
111
- catch { }
112
- });
113
- if (process.send) {
114
- process.send({ type: 'ready' });
115
- }
116
- };
117
- mainProcess();
1
+ import './application/runtime/client-runtime.js';
@@ -0,0 +1,11 @@
1
+ export declare const USER_AGENT_HEADER = "user-agent";
2
+ export declare const USER_AGENT_HEADER_VALUE_MAP: {
3
+ readonly platform: "platform";
4
+ readonly client: "client";
5
+ readonly testone: "testone";
6
+ };
7
+ export declare const DEVICE_ID_HEADER = "x-device-id";
8
+ export declare const FULL_RECEIVE_HEADER = "x-full-receive";
9
+ export declare const timeoutTime: number;
10
+ export declare const reconnectInterval: number;
11
+ export declare const HEARTBEAT_INTERVAL: number;
@@ -0,0 +1,13 @@
1
+ const USER_AGENT_HEADER = 'user-agent';
2
+ const USER_AGENT_HEADER_VALUE_MAP = {
3
+ platform: 'platform',
4
+ client: 'client',
5
+ testone: 'testone'
6
+ };
7
+ const DEVICE_ID_HEADER = 'x-device-id';
8
+ const FULL_RECEIVE_HEADER = 'x-full-receive';
9
+ const timeoutTime = 1000 * 60 * 3;
10
+ const reconnectInterval = 1000 * 6;
11
+ const HEARTBEAT_INTERVAL = 1000 * 18;
12
+
13
+ export { DEVICE_ID_HEADER, FULL_RECEIVE_HEADER, HEARTBEAT_INTERVAL, USER_AGENT_HEADER, USER_AGENT_HEADER_VALUE_MAP, reconnectInterval, timeoutTime };
@@ -1,9 +1,6 @@
1
- import { ResultCode } from '../../core/variable.js';
2
- import 'fs';
3
- import 'path';
4
- import 'yaml';
5
- import '../../core/utils.js';
6
- import { HEARTBEAT_INTERVAL } from '../processor/config.js';
1
+ import { logger } from '../logger.js';
2
+ import { ResultCode } from '../variable.js';
3
+ import { HEARTBEAT_INTERVAL } from './constants.js';
7
4
 
8
5
  const useHeartbeat = ({ ping, isConnected, terminate }) => {
9
6
  let heartbeatTimer = null;
@@ -0,0 +1,16 @@
1
+ import type { Actions, Apis } from '../../types/index.js';
2
+ import type { Result } from '../result.js';
3
+ import type { CBPEnvelope, CBPError, CBPResult, NormalizedActionRequestMessage, NormalizedApiRequestMessage, NormalizedCBPMessage } from './typings';
4
+ export declare const isCBPEnvelope: (input: unknown) => input is CBPEnvelope;
5
+ export declare const normalizeInboundMessage: (input: unknown) => NormalizedCBPMessage | null;
6
+ export declare const toLegacyActionData: (message: NormalizedActionRequestMessage) => Actions;
7
+ export declare const toLegacyApiData: (message: NormalizedApiRequestMessage) => Apis;
8
+ export declare const isNormalizedActionRequest: (message: NormalizedCBPMessage | null | undefined) => message is NormalizedActionRequestMessage;
9
+ export declare const isNormalizedApiRequest: (message: NormalizedCBPMessage | null | undefined) => message is NormalizedApiRequestMessage;
10
+ export declare const getNormalizedDeviceId: (message: NormalizedCBPMessage) => string;
11
+ export declare const getNormalizedEventRouteId: (message: NormalizedCBPMessage) => string;
12
+ export declare const createActionRequestEnvelope: (data: Actions) => CBPEnvelope;
13
+ export declare const createApiRequestEnvelope: (data: Apis) => CBPEnvelope;
14
+ export declare const createActionResponseEnvelope: (data: Actions, payload: CBPResult[] | Result[], error?: CBPError) => CBPEnvelope;
15
+ export declare const createApiResponseEnvelope: (data: Apis, payload: CBPResult[] | Result[], error?: CBPError) => CBPEnvelope;
16
+ export declare const createEventEnvelope: (data: Record<string, unknown>) => CBPEnvelope;