@logicflow/engine 0.0.10 → 0.0.11-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/README.md +2 -5
  2. package/cjs/EventEmitter.js +70 -0
  3. package/cjs/FlowModel.js +277 -0
  4. package/cjs/Scheduler.js +252 -0
  5. package/{lib/constant/logCode.js → cjs/constant/LogCode.js} +13 -16
  6. package/{lib/constant/index.js → cjs/constant/constant.js} +3 -4
  7. package/cjs/expression/browserVm.js +81 -0
  8. package/cjs/expression/index.js +57 -0
  9. package/cjs/index.js +210 -0
  10. package/cjs/nodes/BaseNode.js +252 -0
  11. package/cjs/nodes/StartNode.js +27 -0
  12. package/cjs/nodes/TaskNode.js +27 -0
  13. package/cjs/recorder/index.js +168 -0
  14. package/cjs/util/ID.js +16 -0
  15. package/cjs/util/global.js +32 -0
  16. package/{lib/utils → cjs/util}/storage.js +17 -18
  17. package/es/EventEmitter.d.ts +4 -34
  18. package/es/EventEmitter.js +48 -70
  19. package/es/FlowModel.d.ts +73 -75
  20. package/es/FlowModel.js +173 -130
  21. package/es/Scheduler.d.ts +34 -50
  22. package/es/Scheduler.js +209 -134
  23. package/es/constant/LogCode.js +28 -0
  24. package/es/constant/{index.js → constant.js} +7 -8
  25. package/es/expression/browserVm.d.ts +4 -0
  26. package/es/expression/browserVm.js +76 -0
  27. package/es/expression/index.d.ts +1 -1
  28. package/es/expression/index.js +53 -16
  29. package/es/index.d.ts +38 -135
  30. package/es/index.js +144 -92
  31. package/es/nodes/BaseNode.d.ts +110 -0
  32. package/es/nodes/BaseNode.js +250 -0
  33. package/es/nodes/{start.d.ts → StartNode.d.ts} +2 -3
  34. package/es/nodes/StartNode.js +25 -0
  35. package/es/nodes/{task.d.ts → TaskNode.d.ts} +2 -3
  36. package/es/nodes/TaskNode.js +25 -0
  37. package/es/recorder/index.d.ts +10 -36
  38. package/es/recorder/index.js +135 -82
  39. package/es/util/ID.js +13 -0
  40. package/es/util/global.d.ts +5 -0
  41. package/es/util/global.js +26 -0
  42. package/es/{utils → util}/storage.js +16 -17
  43. package/lib/main.js +1 -0
  44. package/package.json +71 -30
  45. package/dist/index.js +0 -2
  46. package/dist/index.js.map +0 -1
  47. package/es/EventEmitter.js.map +0 -1
  48. package/es/FlowModel.js.map +0 -1
  49. package/es/Scheduler.js.map +0 -1
  50. package/es/constant/index.js.map +0 -1
  51. package/es/constant/logCode.js +0 -29
  52. package/es/constant/logCode.js.map +0 -1
  53. package/es/expression/brewserVm.d.ts +0 -2
  54. package/es/expression/brewserVm.js +0 -30
  55. package/es/expression/brewserVm.js.map +0 -1
  56. package/es/expression/index.js.map +0 -1
  57. package/es/expression/nodeVm.d.ts +0 -4
  58. package/es/expression/nodeVm.js +0 -10
  59. package/es/expression/nodeVm.js.map +0 -1
  60. package/es/index.js.map +0 -1
  61. package/es/nodes/base.d.ts +0 -108
  62. package/es/nodes/base.js +0 -149
  63. package/es/nodes/base.js.map +0 -1
  64. package/es/nodes/index.d.ts +0 -3
  65. package/es/nodes/index.js +0 -4
  66. package/es/nodes/index.js.map +0 -1
  67. package/es/nodes/start.js +0 -11
  68. package/es/nodes/start.js.map +0 -1
  69. package/es/nodes/task.js +0 -11
  70. package/es/nodes/task.js.map +0 -1
  71. package/es/platform/browser/browserVm.d.ts +0 -4
  72. package/es/platform/browser/browserVm.js +0 -44
  73. package/es/platform/browser/browserVm.js.map +0 -1
  74. package/es/platform/browser/index.d.ts +0 -4
  75. package/es/platform/browser/index.js +0 -23
  76. package/es/platform/browser/index.js.map +0 -1
  77. package/es/platform/index.d.ts +0 -1
  78. package/es/platform/index.js +0 -2
  79. package/es/platform/index.js.map +0 -1
  80. package/es/platform/node/index.d.ts +0 -4
  81. package/es/platform/node/index.js +0 -23
  82. package/es/platform/node/index.js.map +0 -1
  83. package/es/platform/node/nodeVm.d.ts +0 -1
  84. package/es/platform/node/nodeVm.js +0 -9
  85. package/es/platform/node/nodeVm.js.map +0 -1
  86. package/es/recorder/index.js.map +0 -1
  87. package/es/utils/global.d.ts +0 -5
  88. package/es/utils/global.js +0 -27
  89. package/es/utils/global.js.map +0 -1
  90. package/es/utils/id.js +0 -14
  91. package/es/utils/id.js.map +0 -1
  92. package/es/utils/index.d.ts +0 -4
  93. package/es/utils/index.js +0 -5
  94. package/es/utils/index.js.map +0 -1
  95. package/es/utils/storage.js.map +0 -1
  96. package/lib/EventEmitter.d.ts +0 -37
  97. package/lib/EventEmitter.js +0 -94
  98. package/lib/EventEmitter.js.map +0 -1
  99. package/lib/FlowModel.d.ts +0 -146
  100. package/lib/FlowModel.js +0 -236
  101. package/lib/FlowModel.js.map +0 -1
  102. package/lib/Scheduler.d.ts +0 -78
  103. package/lib/Scheduler.js +0 -179
  104. package/lib/Scheduler.js.map +0 -1
  105. package/lib/constant/index.d.ts +0 -16
  106. package/lib/constant/index.js.map +0 -1
  107. package/lib/constant/logCode.d.ts +0 -12
  108. package/lib/constant/logCode.js.map +0 -1
  109. package/lib/expression/brewserVm.d.ts +0 -2
  110. package/lib/expression/brewserVm.js +0 -33
  111. package/lib/expression/brewserVm.js.map +0 -1
  112. package/lib/expression/index.d.ts +0 -2
  113. package/lib/expression/index.js +0 -20
  114. package/lib/expression/index.js.map +0 -1
  115. package/lib/expression/nodeVm.d.ts +0 -4
  116. package/lib/expression/nodeVm.js +0 -13
  117. package/lib/expression/nodeVm.js.map +0 -1
  118. package/lib/index.d.ts +0 -157
  119. package/lib/index.js +0 -159
  120. package/lib/index.js.map +0 -1
  121. package/lib/nodes/base.d.ts +0 -108
  122. package/lib/nodes/base.js +0 -152
  123. package/lib/nodes/base.js.map +0 -1
  124. package/lib/nodes/index.d.ts +0 -3
  125. package/lib/nodes/index.js +0 -7
  126. package/lib/nodes/index.js.map +0 -1
  127. package/lib/nodes/start.d.ts +0 -6
  128. package/lib/nodes/start.js +0 -15
  129. package/lib/nodes/start.js.map +0 -1
  130. package/lib/nodes/task.d.ts +0 -6
  131. package/lib/nodes/task.js +0 -15
  132. package/lib/nodes/task.js.map +0 -1
  133. package/lib/platform/browser/browserVm.d.ts +0 -4
  134. package/lib/platform/browser/browserVm.js +0 -49
  135. package/lib/platform/browser/browserVm.js.map +0 -1
  136. package/lib/platform/browser/index.d.ts +0 -4
  137. package/lib/platform/browser/index.js +0 -28
  138. package/lib/platform/browser/index.js.map +0 -1
  139. package/lib/platform/index.d.ts +0 -1
  140. package/lib/platform/index.js +0 -5
  141. package/lib/platform/index.js.map +0 -1
  142. package/lib/platform/node/index.d.ts +0 -4
  143. package/lib/platform/node/index.js +0 -28
  144. package/lib/platform/node/index.js.map +0 -1
  145. package/lib/platform/node/nodeVm.d.ts +0 -1
  146. package/lib/platform/node/nodeVm.js +0 -13
  147. package/lib/platform/node/nodeVm.js.map +0 -1
  148. package/lib/recorder/index.d.ts +0 -46
  149. package/lib/recorder/index.js +0 -117
  150. package/lib/recorder/index.js.map +0 -1
  151. package/lib/utils/global.d.ts +0 -5
  152. package/lib/utils/global.js +0 -31
  153. package/lib/utils/global.js.map +0 -1
  154. package/lib/utils/id.d.ts +0 -3
  155. package/lib/utils/id.js +0 -20
  156. package/lib/utils/id.js.map +0 -1
  157. package/lib/utils/index.d.ts +0 -4
  158. package/lib/utils/index.js +0 -9
  159. package/lib/utils/index.js.map +0 -1
  160. package/lib/utils/storage.d.ts +0 -7
  161. package/lib/utils/storage.js.map +0 -1
  162. package/src/EventEmitter.ts +0 -103
  163. package/src/FlowModel.ts +0 -325
  164. package/src/Scheduler.ts +0 -244
  165. package/src/constant/index.ts +0 -23
  166. package/src/constant/logCode.ts +0 -34
  167. package/src/expression/brewserVm.ts +0 -36
  168. package/src/expression/index.ts +0 -17
  169. package/src/expression/nodeVm.ts +0 -14
  170. package/src/index.ts +0 -300
  171. package/src/nodes/base.ts +0 -234
  172. package/src/nodes/index.ts +0 -3
  173. package/src/nodes/start.ts +0 -8
  174. package/src/nodes/task.ts +0 -8
  175. package/src/platform/browser/browserVm.ts +0 -52
  176. package/src/platform/browser/index.ts +0 -28
  177. package/src/platform/index.ts +0 -1
  178. package/src/platform/node/index.ts +0 -28
  179. package/src/platform/node/nodeVm.ts +0 -12
  180. package/src/recorder/index.ts +0 -137
  181. package/src/typings.d.ts +0 -0
  182. package/src/utils/global.ts +0 -41
  183. package/src/utils/id.ts +0 -16
  184. package/src/utils/index.ts +0 -5
  185. package/src/utils/storage.ts +0 -55
  186. /package/es/constant/{logCode.d.ts → LogCode.d.ts} +0 -0
  187. /package/es/constant/{index.d.ts → constant.d.ts} +0 -0
  188. /package/es/{utils/id.d.ts → util/ID.d.ts} +0 -0
  189. /package/es/{utils → util}/storage.d.ts +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/expression/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE/D,MAAM,mBAAmB,GAAG,CAAO,IAAY,EAAE,OAAY,EAAE,EAAE;IAC/D,IAAI,UAAU,EAAE;QACd,MAAM,CAAC,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC/C,OAAO,CAAC,CAAA;KACT;IACD,IAAI,WAAW,EAAE;QACf,MAAM,CAAC,GAAG,MAAM,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAClD,OAAO,CAAC,CAAA;KACT;IACD,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC/B,CAAC,CAAA,CAAA;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAA"}
@@ -1,4 +0,0 @@
1
- /// <reference types="node" />
2
- import vm from 'node:vm';
3
- declare const runInNodeContext: (code: string, globalData?: Record<string, unknown>) => Promise<vm.Context>;
4
- export { runInNodeContext };
@@ -1,10 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import vm from 'node:vm';
3
- // const vm = require('node:vm');
4
- const runInNodeContext = (code, globalData = {}) => __awaiter(void 0, void 0, void 0, function* () {
5
- const context = vm.createContext(globalData);
6
- vm.runInContext(code, context);
7
- return context;
8
- });
9
- export { runInNodeContext };
10
- //# sourceMappingURL=nodeVm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nodeVm.js","sourceRoot":"","sources":["../../src/expression/nodeVm.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,iCAAiC;AAEjC,MAAM,gBAAgB,GAAG,CACvB,IAAY,EACZ,aAAsC,EAAE,EACxC,EAAE;IACF,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;IAC5C,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAE9B,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA,CAAA;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
package/es/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,+CAA+C;AAC/C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAExC,MAAM,OAAO,MAAM;IASjB,YAAY,OAAwB;QAClC,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;QAC7B,IAAI,CAAC,UAAU,GAAG,cAAc,EAAE,CAAA;QAClC,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC;gBAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAC,CAAA;SACH;QACD,gCAAgC;QAChC,IAAI,CAAC,QAAQ,CAAC;YACZ,IAAI,EAAE,SAAS,CAAC,YAAY;YAC5B,KAAK,EAAE,SAAS;SACjB,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,CAAC;YACZ,IAAI,EAAE,QAAQ,CAAC,YAAY;YAC3B,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAA;QACF,IAAI,CAAC,OAAO,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,KAAI,EAAE,CAAA;IACvC,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,UAA6B;QACpC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAA;IAC1D,CAAC;IAED;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,QAAkB;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,EACH,SAAS,EACT,aAAa,GAAG,WAAW,EAC3B,UAAU,GAAG,EAAE,GACO;QACtB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC;YAC9B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU;YACV,aAAa;SACd,CAAC,CAAA;QAEF,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;OAEG;IACG,OAAO,CACX,KAAmC;;YAEnC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;;gBACrC,IAAI,SAAS,GAAG,KAAK,CAAA;gBACrB,IAAI,CAAC,KAAK,EAAE;oBACV,SAAS,GAAG,EAAE,CAAA;iBACf;gBAED,MAAA,IAAI,CAAC,SAAS,0CAAE,OAAO,iCAClB,SAAS,KACZ,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;wBACnB,OAAO,CAAC,MAAM,CAAC,CAAA;oBACjB,CAAC,EACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;wBACjB,MAAM,CAAC,KAAK,CAAC,CAAA;oBACf,CAAC,IACD,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;KAAA;IAED;;;;OAIG;IACG,MAAM,CACV,WAA+B;;YAE/B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;;gBACrC,MAAA,IAAI,CAAC,SAAS,0CAAE,MAAM,iCACjB,WAAW,KACd,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;wBACnB,OAAO,CAAC,MAAM,CAAC,CAAA;oBACjB,CAAC,EACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;wBACjB,MAAM,CAAC,KAAK,CAAC,CAAA;oBACf,CAAC,IACD,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;KAAA;IAEK,gBAAgB;;;YACpB,OAAO,MAAM,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,gBAAgB,EAAE,CAAA,CAAA;;KAC/C;IAED;;;;OAIG;IACG,kBAAkB,CACtB,WAAuB;;;YAEvB,MAAM,OAAO,GAAG,MAAM,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,mBAAmB,CAAC,WAAW,CAAC,CAAA,CAAA;YAErE,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO,IAAI,CAAA;aACZ;YAED,uBAAuB;YACvB,MAAM,OAAO,GAA6B,EAAE,CAAA;YAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAA,EAAE,CAAC,EAAE,EAAE;gBACxC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;gBACzB,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACjB,OAAO,CAAC,IAAI,CAAC,MAAA,IAAI,CAAC,QAAQ,0CAAE,eAAe,CAAC,MAAM,CAAC,CAAC,CAAA;iBACrD;aACF;YAED,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;;KAC5B;IAED,OAAO;;QACL,MAAA,IAAI,CAAC,QAAQ,0CAAE,KAAK,EAAE,CAAA;IACxB,CAAC;IAED,aAAa;;QACX,OAAO,MAAA,IAAI,CAAC,SAAS,0CAAE,UAAU,CAAA;IACnC,CAAC;IAED,aAAa,CAAC,IAA6B;QACzC,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAA;SACjC;IACH,CAAC;IAED,gBAAgB,CAAC,IAA6B;QAC5C,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;SAC/C;IACH,CAAC;CACF;AAyHD,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;AAElD,eAAe,MAAM,CAAA"}
@@ -1,108 +0,0 @@
1
- import { Engine } from '..';
2
- import { ActionStatus } from '../constant';
3
- export interface IBaseNodeProps {
4
- nodeConfig: BaseNode.NodeConfig;
5
- context: Record<string, any>;
6
- globalData: Record<string, unknown>;
7
- }
8
- export declare class BaseNode implements BaseNode.Base {
9
- readonly baseType: string;
10
- static nodeTypeName: string;
11
- /**
12
- * 节点的入边
13
- */
14
- incoming: BaseNode.IncomingConfig[];
15
- /**
16
- * 节点的出边
17
- */
18
- outgoing: BaseNode.OutgoingConfig[];
19
- /**
20
- * 节点的属性
21
- */
22
- properties?: Record<string, unknown>;
23
- nodeId: Engine.Key;
24
- type: string;
25
- /**
26
- * 节点的上下文,是调用流程时传入的上下文
27
- */
28
- context: Record<string, any>;
29
- /**
30
- * 节点的全局数据,是调用流程时传入的全局数据
31
- * 在计算表达式时,即基于全局数据进行计算
32
- */
33
- globalData: Record<string, unknown>;
34
- constructor({ nodeConfig, context, globalData }: IBaseNodeProps);
35
- /**
36
- * 节点的执行逻辑
37
- * @overridable 可以自定义节点重写此方法
38
- * @param param.executionId 流程执行记录 ID
39
- * @param param.actionId 此节点执行记录 ID
40
- * @param param.nodeId 节点 ID
41
- * @return 返回下一步的执行参数
42
- * 当不返回时,表示此节点执行成功,流程会继续执行下一步。
43
- * 当返回时,返回格式为
44
- */
45
- action(param?: Engine.ActionParam): Promise<BaseNode.ActionResult | undefined>;
46
- /**
47
- * 节点重新恢复执行的逻辑
48
- * @overridable 可以自定义节点重写此方法
49
- * @param params.executionId 流程执行记录 ID
50
- * @param params.actionId 此节点执行记录 ID
51
- * @param params.nodeId 节点 ID
52
- */
53
- onResume(params: Engine.ResumeParam): Promise<void>;
54
- /**
55
- * 判断该节点是否满足条件
56
- */
57
- private isPass;
58
- /**
59
- * 获取当前节点执行的下一个节点
60
- */
61
- private getOutgoing;
62
- /**
63
- * 节点的每一次执行都会生成一个唯一的 actionId
64
- */
65
- execute(params: Engine.ExecParam): Promise<Engine.NextActionParam>;
66
- resume(params: Engine.ExecResumeParam): Promise<undefined>;
67
- }
68
- export declare namespace BaseNode {
69
- interface Base {
70
- incoming: IncomingConfig[];
71
- outgoing: OutgoingConfig[];
72
- properties?: Record<string, unknown>;
73
- nodeId: Engine.Key;
74
- type: string;
75
- readonly baseType: string;
76
- execute(actionParam: Engine.ActionParam): Promise<Engine.NextActionParam>;
77
- }
78
- type IncomingConfig = {
79
- id: Engine.Key;
80
- source: string;
81
- properties?: Record<string, unknown>;
82
- };
83
- type OutgoingConfig = {
84
- id: Engine.Key;
85
- target: string;
86
- properties?: Record<string, unknown>;
87
- result?: string | boolean;
88
- };
89
- type NodeConfig = {
90
- id: Engine.Key;
91
- type: string;
92
- properties?: Record<string, unknown>;
93
- incoming: IncomingConfig[];
94
- outgoing: OutgoingConfig[];
95
- };
96
- type NodeConstructor = {
97
- new (config: {
98
- nodeConfig: NodeConfig;
99
- context: Record<string, any>;
100
- globalData: Record<string, unknown>;
101
- }): BaseNode;
102
- };
103
- type ActionResult = {
104
- status: ActionStatus;
105
- detail?: Record<string, unknown>;
106
- };
107
- }
108
- export default BaseNode;
package/es/nodes/base.js DELETED
@@ -1,149 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import { ActionStatus } from '../constant';
3
- import { getExpressionResult } from '../platform';
4
- class BaseNode {
5
- constructor({ nodeConfig, context, globalData }) {
6
- const { outgoing, incoming, id, type, properties } = nodeConfig;
7
- this.baseType = 'base';
8
- this.outgoing = outgoing;
9
- this.incoming = incoming;
10
- this.nodeId = id;
11
- this.type = type;
12
- this.properties = properties;
13
- this.context = context;
14
- this.globalData = globalData;
15
- }
16
- /**
17
- * 节点的执行逻辑
18
- * @overridable 可以自定义节点重写此方法
19
- * @param param.executionId 流程执行记录 ID
20
- * @param param.actionId 此节点执行记录 ID
21
- * @param param.nodeId 节点 ID
22
- * @return 返回下一步的执行参数
23
- * 当不返回时,表示此节点执行成功,流程会继续执行下一步。
24
- * 当返回时,返回格式为
25
- */
26
- action(param) {
27
- return __awaiter(this, void 0, void 0, function* () {
28
- console.log('action param --->>>', param);
29
- return undefined;
30
- });
31
- }
32
- /**
33
- * 节点重新恢复执行的逻辑
34
- * @overridable 可以自定义节点重写此方法
35
- * @param params.executionId 流程执行记录 ID
36
- * @param params.actionId 此节点执行记录 ID
37
- * @param params.nodeId 节点 ID
38
- */
39
- onResume(params) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- console.log('onResume params --->>>', params);
42
- return undefined;
43
- });
44
- }
45
- /**
46
- * 判断该节点是否满足条件
47
- */
48
- isPass(properties) {
49
- return __awaiter(this, void 0, void 0, function* () {
50
- if (!properties)
51
- return true;
52
- const { conditionExpression } = properties;
53
- if (!conditionExpression)
54
- return true;
55
- try {
56
- // bug:uuid 创建的 NodeId 为 xxxx-xxxx-xxxx-zzzz 格式,eval 执行时会将 - 识别为数学减号,导致执行报错
57
- // 解决方案: 赋值变量直接命名为 isPassResult, 因为每次执行 getExpressionResult 时,都会重新射程一个 context
58
- const result = yield getExpressionResult(`isPassResult = (${conditionExpression})`, Object.assign({}, this.globalData));
59
- return result.isPassResult;
60
- }
61
- catch (error) {
62
- return false;
63
- }
64
- });
65
- }
66
- /**
67
- * 获取当前节点执行的下一个节点
68
- */
69
- getOutgoing() {
70
- return __awaiter(this, void 0, void 0, function* () {
71
- const outgoing = [];
72
- const expressions = [];
73
- for (const item of this.outgoing) {
74
- const { properties } = item;
75
- expressions.push(this.isPass(properties));
76
- }
77
- const result = yield Promise.all(expressions);
78
- result.forEach((item, index) => {
79
- const out = this.outgoing[index];
80
- out.result = item;
81
- outgoing.push(out);
82
- });
83
- return outgoing;
84
- });
85
- }
86
- /**
87
- * 节点的每一次执行都会生成一个唯一的 actionId
88
- */
89
- execute(params) {
90
- return __awaiter(this, void 0, void 0, function* () {
91
- const { executionId, actionId } = params;
92
- const res = yield this.action({
93
- nodeId: this.nodeId,
94
- executionId,
95
- actionId,
96
- });
97
- const status = res ? res.status : 'success';
98
- if (status === ActionStatus.SUCCESS) {
99
- const outgoing = yield this.getOutgoing();
100
- const detail = res ? res.detail : {};
101
- params.next({
102
- status: ActionStatus.SUCCESS,
103
- detail,
104
- nodeId: this.nodeId,
105
- nodeType: this.type,
106
- properties: this.properties,
107
- executionId,
108
- actionId,
109
- outgoing,
110
- });
111
- }
112
- return {
113
- status,
114
- detail: res === null || res === void 0 ? void 0 : res.detail,
115
- executionId,
116
- actionId,
117
- nodeId: this.nodeId,
118
- nodeType: this.type,
119
- properties: this.properties,
120
- outgoing: [],
121
- };
122
- });
123
- }
124
- resume(params) {
125
- return __awaiter(this, void 0, void 0, function* () {
126
- const outgoing = yield this.getOutgoing();
127
- yield this.onResume({
128
- executionId: params.executionId,
129
- actionId: params.actionId,
130
- nodeId: params.nodeId,
131
- data: params.data,
132
- });
133
- params.next({
134
- executionId: params.executionId,
135
- actionId: params.actionId,
136
- nodeId: this.nodeId,
137
- nodeType: this.type,
138
- properties: this.properties,
139
- outgoing,
140
- status: ActionStatus.SUCCESS,
141
- });
142
- return undefined;
143
- });
144
- }
145
- }
146
- BaseNode.nodeTypeName = 'BaseNode';
147
- export { BaseNode };
148
- export default BaseNode;
149
- //# sourceMappingURL=base.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/nodes/base.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from './base';
2
- export * from './start';
3
- export * from './task';
package/es/nodes/index.js DELETED
@@ -1,4 +0,0 @@
1
- export * from './base';
2
- export * from './start';
3
- export * from './task';
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/nodes/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA"}
package/es/nodes/start.js DELETED
@@ -1,11 +0,0 @@
1
- import BaseNode from './base';
2
- class StartNode extends BaseNode {
3
- constructor() {
4
- super(...arguments);
5
- this.baseType = 'start';
6
- }
7
- }
8
- StartNode.nodeTypeName = 'StartNode';
9
- export default StartNode;
10
- export { StartNode };
11
- //# sourceMappingURL=start.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/nodes/start.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,QAAQ,CAAA;AAE7B,MAAqB,SAAU,SAAQ,QAAQ;IAA/C;;QACW,aAAQ,GAAG,OAAO,CAAA;IAE7B,CAAC;;AADQ,sBAAY,GAAG,WAAW,AAAd,CAAc;eAFd,SAAS;AAK9B,OAAO,EAAE,SAAS,EAAE,CAAA"}
package/es/nodes/task.js DELETED
@@ -1,11 +0,0 @@
1
- import BaseNode from './base';
2
- class TaskNode extends BaseNode {
3
- constructor() {
4
- super(...arguments);
5
- this.baseType = 'task';
6
- }
7
- }
8
- TaskNode.nodeTypeName = 'TaskNode';
9
- export default TaskNode;
10
- export { TaskNode };
11
- //# sourceMappingURL=task.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/nodes/task.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,QAAQ,CAAA;AAE7B,MAAqB,QAAS,SAAQ,QAAQ;IAA9C;;QACW,aAAQ,GAAG,MAAM,CAAA;IAE5B,CAAC;;AADQ,qBAAY,GAAG,UAAU,AAAb,CAAa;eAFb,QAAQ;AAK7B,OAAO,EAAE,QAAQ,EAAE,CAAA"}
@@ -1,4 +0,0 @@
1
- declare const createContext: (globalData: Record<string, unknown>) => Window | null;
2
- declare const runInContext: (code: string, context: any) => void;
3
- declare const runInBrowserContext: (code: string, globalData?: {}) => Promise<any>;
4
- export { createContext, runInContext, runInBrowserContext };
@@ -1,44 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import { ErrorCode, getErrorMsg, getWarningMsg, WarningCode, } from '../../constant/logCode';
3
- const createContext = (globalData) => {
4
- const iframe = document.createElement('iframe');
5
- iframe.style.display = 'none';
6
- if (!document || !document.body) {
7
- console.error(getErrorMsg(ErrorCode.NO_DOCUMENT_BODY));
8
- }
9
- document.body.appendChild(iframe);
10
- const iframeWindow = iframe.contentWindow;
11
- if (iframeWindow) {
12
- // TODO: 确认是否需要该代码,parent 置为空是为了解决什么问题
13
- // @ts-ignore
14
- ;
15
- iframeWindow.parent = null;
16
- Object.keys(globalData).forEach((key) => {
17
- iframeWindow[key] = globalData[key];
18
- });
19
- }
20
- return iframeWindow;
21
- };
22
- const runInContext = (code, context) => {
23
- try {
24
- const iframeEval = context.eval;
25
- iframeEval.call(context, code);
26
- if (context.iframeElement) {
27
- document.body.removeChild(context.iframeElement);
28
- }
29
- }
30
- catch (e) {
31
- console.warn(getWarningMsg(WarningCode.EXPRESSION_EXEC_ERROR), {
32
- code,
33
- context,
34
- e,
35
- });
36
- }
37
- };
38
- const runInBrowserContext = (code, globalData = {}) => __awaiter(void 0, void 0, void 0, function* () {
39
- const context = createContext(globalData);
40
- runInContext(code, context);
41
- return context;
42
- });
43
- export { createContext, runInContext, runInBrowserContext };
44
- //# sourceMappingURL=browserVm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browserVm.js","sourceRoot":"","sources":["../../../src/platform/browser/browserVm.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,SAAS,EACT,WAAW,EACX,aAAa,EACb,WAAW,GACZ,MAAM,wBAAwB,CAAA;AAE/B,MAAM,aAAa,GAAG,CAAC,UAAmC,EAAE,EAAE;IAC5D,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;IAC/C,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAA;IAC7B,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAC/B,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAA;KACvD;IACD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,YAAY,GAAG,MAAM,CAAC,aAAa,CAAA;IACzC,IAAI,YAAY,EAAE;QAChB,sCAAsC;QACtC,aAAa;QACb,CAAC;QAAC,YAAa,CAAC,MAAc,GAAG,IAAI,CAAA;QACrC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACtC,YAAY,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;KACH;IACD,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,OAAO,EAAE,EAAE;IAC7C,IAAI;QACF,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAA;QAC/B,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QAC9B,IAAI,OAAO,CAAC,aAAa,EAAE;YACzB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;SACjD;KACF;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE;YAC7D,IAAI;YACJ,OAAO;YACP,CAAC;SACF,CAAC,CAAA;KACH;AACH,CAAC,CAAA;AAED,MAAM,mBAAmB,GAAG,CAC1B,IAAY,EACZ,UAAU,GAAG,EAAE,EACD,EAAE;IAChB,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,CAAA;IACzC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAC3B,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA,CAAA;AAED,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAA"}
@@ -1,4 +0,0 @@
1
- declare const isInBrowser: boolean;
2
- declare const globalScope: any;
3
- declare const getExpressionResult: (code: string, context: any) => Promise<any>;
4
- export { isInBrowser, globalScope, getExpressionResult };
@@ -1,23 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import { runInBrowserContext } from './browserVm';
3
- const isInBrowser = typeof window === 'object' && window.window === window;
4
- const globalScope = (() => {
5
- if (isInBrowser) {
6
- return window;
7
- }
8
- if (typeof self === 'object' && self.self === self) {
9
- return self;
10
- }
11
- if (typeof globalThis === 'object') {
12
- return globalThis;
13
- }
14
- return {
15
- eval: () => undefined,
16
- };
17
- })();
18
- const getExpressionResult = (code, context) => __awaiter(void 0, void 0, void 0, function* () {
19
- const r = yield runInBrowserContext(code, context);
20
- return r;
21
- });
22
- export { isInBrowser, globalScope, getExpressionResult };
23
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/platform/browser/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,MAAM,WAAW,GAAG,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAA;AAE1E,MAAM,WAAW,GAAQ,CAAC,GAAG,EAAE;IAC7B,IAAI,WAAW,EAAE;QACf,OAAO,MAAM,CAAA;KACd;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;QAClD,OAAO,IAAI,CAAA;KACZ;IAED,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,OAAO,UAAU,CAAA;KAClB;IAED,OAAO;QACL,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS;KACK,CAAA;AAC9B,CAAC,CAAC,EAAE,CAAA;AAEJ,MAAM,mBAAmB,GAAG,CAAO,IAAY,EAAE,OAAY,EAAE,EAAE;IAC/D,MAAM,CAAC,GAAG,MAAM,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAClD,OAAO,CAAC,CAAA;AACV,CAAC,CAAA,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAA"}
@@ -1 +0,0 @@
1
- export * from './node';
@@ -1,2 +0,0 @@
1
- export * from './node';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/platform/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA"}
@@ -1,4 +0,0 @@
1
- declare const isInNodeJS: boolean;
2
- declare const globalScope: any;
3
- declare const getExpressionResult: (code: string, context: any) => Promise<any>;
4
- export { isInNodeJS, globalScope, getExpressionResult };
@@ -1,23 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import { runInNodeContext } from './nodeVm';
3
- const isInNodeJS = typeof global === 'object' && global.global === global;
4
- const globalScope = (() => {
5
- if (typeof self === 'object' && self.self === self) {
6
- return self;
7
- }
8
- if (isInNodeJS) {
9
- return global;
10
- }
11
- if (typeof globalThis === 'object') {
12
- return globalThis;
13
- }
14
- return {
15
- eval: () => undefined,
16
- };
17
- })();
18
- const getExpressionResult = (code, context) => __awaiter(void 0, void 0, void 0, function* () {
19
- const r = yield runInNodeContext(code, context);
20
- return r;
21
- });
22
- export { isInNodeJS, globalScope, getExpressionResult };
23
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/platform/node/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAE3C,MAAM,UAAU,GAAG,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAA;AAEzE,MAAM,WAAW,GAAQ,CAAC,GAAG,EAAE;IAC7B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;QAClD,OAAO,IAAI,CAAA;KACZ;IAED,IAAI,UAAU,EAAE;QACd,OAAO,MAAM,CAAA;KACd;IAED,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,OAAO,UAAU,CAAA;KAClB;IAED,OAAO;QACL,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS;KACK,CAAA;AAC9B,CAAC,CAAC,EAAE,CAAA;AAEJ,MAAM,mBAAmB,GAAG,CAAO,IAAY,EAAE,OAAY,EAAE,EAAE;IAC/D,MAAM,CAAC,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAC/C,OAAO,CAAC,CAAA;AACV,CAAC,CAAA,CAAA;AAED,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAA"}
@@ -1 +0,0 @@
1
- export declare const runInNodeContext: (code: string, globalData?: Record<string, unknown>) => Promise<any>;
@@ -1,9 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import vm from 'node:vm';
3
- // const vm = require('node:vm');
4
- export const runInNodeContext = (code, globalData = {}) => __awaiter(void 0, void 0, void 0, function* () {
5
- const context = vm.createContext(globalData);
6
- vm.runInContext(code, context);
7
- return context;
8
- });
9
- //# sourceMappingURL=nodeVm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nodeVm.js","sourceRoot":"","sources":["../../../src/platform/node/nodeVm.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,iCAAiC;AAEjC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,IAAY,EACZ,aAAsC,EAAE,EAC1B,EAAE;IAChB,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;IAC5C,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAE9B,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/recorder/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- declare const isInBrowser: boolean;
2
- declare const isInNodeJS: boolean;
3
- declare const isInWebWorker: false | Function;
4
- declare const globalScope: any;
5
- export { globalScope, isInWebWorker, isInBrowser, isInNodeJS, };
@@ -1,27 +0,0 @@
1
- // 判断当前环境是否为服务端
2
- // const isServer = typeof window === undefined;
3
- // const isServer = process.env.BROWSER === true;
4
- const isInBrowser = typeof window === 'object' && window.window === window;
5
- const isInNodeJS = typeof global === 'object' && global.global === global;
6
- const isInWebWorker = !isInBrowser && typeof self === 'object' && self.constructor;
7
- const globalScope = (() => {
8
- if (isInBrowser) {
9
- return window;
10
- }
11
- if (typeof self === 'object' && self.self === self) {
12
- return self;
13
- }
14
- if (isInNodeJS) {
15
- return global;
16
- }
17
- if (typeof globalThis === 'object') {
18
- return globalThis;
19
- }
20
- return {
21
- eval: () => undefined,
22
- };
23
- })();
24
- export {
25
- // 环境相关方法
26
- globalScope, isInWebWorker, isInBrowser, isInNodeJS, };
27
- //# sourceMappingURL=global.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"global.js","sourceRoot":"","sources":["../../src/utils/global.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,gDAAgD;AAEhD,iDAAiD;AAEjD,MAAM,WAAW,GAAG,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAA;AAE1E,MAAM,UAAU,GAAG,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAA;AAEzE,MAAM,aAAa,GACjB,CAAC,WAAW,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAA;AAE9D,MAAM,WAAW,GAAQ,CAAC,GAAG,EAAE;IAC7B,IAAI,WAAW,EAAE;QACf,OAAO,MAAM,CAAA;KACd;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;QAClD,OAAO,IAAI,CAAA;KACZ;IAED,IAAI,UAAU,EAAE;QACd,OAAO,MAAM,CAAA;KACd;IAED,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,OAAO,UAAU,CAAA;KAClB;IAED,OAAO;QACL,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS;KACK,CAAA;AAC9B,CAAC,CAAC,EAAE,CAAA;AAEJ,OAAO;AACL,SAAS;AACT,WAAW,EACX,aAAa,EACb,WAAW,EACX,UAAU,GACX,CAAA"}
package/es/utils/id.js DELETED
@@ -1,14 +0,0 @@
1
- import { v4 as uuidV4 } from 'uuid';
2
- export const createExecId = () => {
3
- const uuid = uuidV4();
4
- return `exec-${uuid}`;
5
- };
6
- export const createActionId = () => {
7
- const uuid = uuidV4();
8
- return `action-${uuid}`;
9
- };
10
- export const createEngineId = () => {
11
- const uuid = uuidV4();
12
- return `engine-${uuid}`;
13
- };
14
- //# sourceMappingURL=id.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"id.js","sourceRoot":"","sources":["../../src/utils/id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAEnC,MAAM,CAAC,MAAM,YAAY,GAAG,GAAW,EAAE;IACvC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAA;IACrB,OAAO,QAAQ,IAAI,EAAE,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,GAAW,EAAE;IACzC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAA;IACrB,OAAO,UAAU,IAAI,EAAE,CAAA;AACzB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,GAAW,EAAE;IACzC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAA;IACrB,OAAO,UAAU,IAAI,EAAE,CAAA;AACzB,CAAC,CAAA"}
@@ -1,4 +0,0 @@
1
- import storage from './storage';
2
- export * from './global';
3
- export * from './id';
4
- export { storage };
package/es/utils/index.js DELETED
@@ -1,5 +0,0 @@
1
- import storage from './storage';
2
- export * from './global';
3
- export * from './id';
4
- export { storage };
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,WAAW,CAAA;AAE/B,cAAc,UAAU,CAAA;AACxB,cAAc,MAAM,CAAA;AACpB,OAAO,EAAE,OAAO,EAAE,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/utils/storage.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAEtC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE;IAC/B,MAAM,OAAO,GAAG;QACd,IAAI,EAAE,EAA6B;QAEnC,OAAO,CAAC,GAAG,EAAE,KAAK;YAChB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QAC3B,CAAC;QAED,OAAO,CAAC,GAAG;YACT,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC1B,CAAC;QAED,UAAU,CAAC,GAAG;YACZ,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC1B,CAAC;QAED,KAAK;YACH,OAAO,CAAC,IAAI,GAAG,EAAE,CAAA;QACnB,CAAC;KACF,CAAA;IAED,WAAW,CAAC,cAAc,GAAG,OAAO,CAAA;CACrC;AAED,eAAe;IACb,OAAO,CAAC,GAAG,EAAE,KAAK;QAChB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;SAC9B;QAED,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAChD,CAAC;IAED,OAAO,CAAC,GAAG;QACT,MAAM,KAAK,GAAG,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACrD,IAAI;YACF,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;SACzB;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,KAAK,CAAA;SACb;IACH,CAAC;IAED,UAAU,CAAC,GAAG;QACZ,WAAW,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IAC5C,CAAC;IAED,KAAK;QACH,WAAW,CAAC,cAAc,CAAC,KAAK,EAAE,CAAA;IACpC,CAAC;CACF,CAAA"}
@@ -1,37 +0,0 @@
1
- export interface EventType {
2
- readonly callback: (params?: any) => void;
3
- readonly once: boolean;
4
- }
5
- export type EventArgs = Record<string, unknown>;
6
- export type EventsType = Record<string, EventType[]>;
7
- export type CallbackType = (...args: unknown[]) => void;
8
- export default class EventEmitter {
9
- private _events;
10
- constructor();
11
- /**
12
- * 添加一个监听事件
13
- * @param evtKey 事件名称
14
- * @param callback 回调方法
15
- * @param once 是否触发一次
16
- * @returns 当前 EventEmitter 实例
17
- */
18
- on(evtKey: string, callback: CallbackType, once?: boolean): void;
19
- /**
20
- * 取消监听一个事件,或者一个 Channel
21
- * @param evtKey
22
- * @param callback
23
- */
24
- off(evtKey: string, callback?: CallbackType): void;
25
- /**
26
- * 主动触发事件
27
- * @param evtKey 触发事件名称
28
- * @param eventArgs 事件参数
29
- */
30
- emit(evtKey: string, eventArgs: EventArgs): void;
31
- /**
32
- * 获取当前所有事件
33
- * @returns _events
34
- */
35
- getEvents(): EventsType;
36
- }
37
- export { EventEmitter };