@ibiz-template/runtime 0.7.41-alpha.125 → 0.7.41-alpha.127

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 (263) hide show
  1. package/dist/index.esm.js +37832 -37545
  2. package/dist/index.system.min.js +1 -1
  3. package/out/app-hub.d.ts +8 -0
  4. package/out/app-hub.d.ts.map +1 -1
  5. package/out/app-hub.js +25 -0
  6. package/out/application.d.ts +0 -7
  7. package/out/application.d.ts.map +1 -1
  8. package/out/application.js +0 -21
  9. package/out/controller/control/app-menu/app-menu.controller.js +1 -1
  10. package/out/controller/control/toolbar/toolbar.controller.js +1 -1
  11. package/out/controller/control/tree/tree.service.d.ts.map +1 -1
  12. package/out/controller/control/tree/tree.service.js +1 -1
  13. package/out/controller/utils/view-msg/view-msg-controller.d.ts.map +1 -1
  14. package/out/controller/utils/view-msg/view-msg-controller.js +1 -1
  15. package/out/de-logic/de-logic-context.d.ts +4 -13
  16. package/out/de-logic/de-logic-context.d.ts.map +1 -1
  17. package/out/de-logic/de-logic-context.js +2 -3
  18. package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.d.ts +15 -5
  19. package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.d.ts.map +1 -1
  20. package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.js +3 -4
  21. package/out/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.d.ts +2 -1
  22. package/out/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.d.ts.map +1 -1
  23. package/out/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.d.ts +2 -1
  24. package/out/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.d.ts.map +1 -1
  25. package/out/de-logic/de-logic-link/de-logic-link.d.ts +6 -7
  26. package/out/de-logic/de-logic-link/de-logic-link.d.ts.map +1 -1
  27. package/out/de-logic/de-logic-link/de-logic-link.js +3 -4
  28. package/out/de-logic/de-logic-node/de-logic-node.d.ts +2 -1
  29. package/out/de-logic/de-logic-node/de-logic-node.d.ts.map +1 -1
  30. package/out/de-logic/de-logic-node/index.d.ts +1 -0
  31. package/out/de-logic/de-logic-node/index.d.ts.map +1 -1
  32. package/out/de-logic/de-logic-node/index.js +1 -0
  33. package/out/de-logic/de-logic.d.ts +31 -37
  34. package/out/de-logic/de-logic.d.ts.map +1 -1
  35. package/out/de-logic/de-logic.js +49 -98
  36. package/out/de-logic/index.d.ts +31 -40
  37. package/out/de-logic/index.d.ts.map +1 -1
  38. package/out/de-logic/index.js +57 -76
  39. package/out/de-logic/provider.d.ts +6 -0
  40. package/out/de-logic/provider.d.ts.map +1 -0
  41. package/out/de-logic/provider.js +25 -0
  42. package/out/install.d.ts.map +1 -1
  43. package/out/install.js +6 -0
  44. package/out/interface/api/app/i-api-app-hub-service.d.ts +7 -0
  45. package/out/interface/api/app/i-api-app-hub-service.d.ts.map +1 -1
  46. package/out/interface/api/common/i-api-de-logic-params.d.ts +9 -0
  47. package/out/interface/api/common/i-api-de-logic-params.d.ts.map +1 -0
  48. package/out/interface/api/common/i-api-logic-context.d.ts +83 -0
  49. package/out/interface/api/common/i-api-logic-context.d.ts.map +1 -0
  50. package/out/interface/api/common/i-api-logic-context.js +1 -0
  51. package/out/interface/api/common/i-api-logic-params.d.ts +27 -0
  52. package/out/interface/api/common/i-api-logic-params.d.ts.map +1 -0
  53. package/out/interface/api/common/i-api-logic-params.js +1 -0
  54. package/out/interface/api/common/i-api-ui-logic-params.d.ts +3 -21
  55. package/out/interface/api/common/i-api-ui-logic-params.d.ts.map +1 -1
  56. package/out/interface/api/common/index.d.ts +2 -0
  57. package/out/interface/api/common/index.d.ts.map +1 -1
  58. package/out/interface/api/controller/control/form-detail/i-api-form-detail.controller.d.ts +1 -1
  59. package/out/interface/common/i-logic-context/i-logic-context.d.ts +27 -0
  60. package/out/interface/common/i-logic-context/i-logic-context.d.ts.map +1 -0
  61. package/out/interface/common/i-logic-context/i-logic-context.js +1 -0
  62. package/out/interface/common/i-logic-link-cond/i-logic-link-cond.d.ts +18 -0
  63. package/out/interface/common/i-logic-link-cond/i-logic-link-cond.d.ts.map +1 -0
  64. package/out/interface/common/i-logic-link-cond/i-logic-link-cond.js +1 -0
  65. package/out/interface/common/index.d.ts +2 -1
  66. package/out/interface/common/index.d.ts.map +1 -1
  67. package/out/interface/de-logic/i-de-logic-context.d.ts +10 -0
  68. package/out/interface/de-logic/i-de-logic-context.d.ts.map +1 -0
  69. package/out/interface/de-logic/i-de-logic-context.js +1 -0
  70. package/out/interface/de-logic/i-de-logic-link-cond.d.ts +33 -0
  71. package/out/interface/de-logic/i-de-logic-link-cond.d.ts.map +1 -0
  72. package/out/interface/de-logic/i-de-logic-link-cond.js +1 -0
  73. package/out/interface/de-logic/i-de-logic-link.d.ts +43 -0
  74. package/out/interface/de-logic/i-de-logic-link.d.ts.map +1 -0
  75. package/out/interface/de-logic/i-de-logic-link.js +1 -0
  76. package/out/interface/de-logic/i-de-logic-node.d.ts +10 -0
  77. package/out/interface/de-logic/i-de-logic-node.d.ts.map +1 -0
  78. package/out/interface/de-logic/i-de-logic-node.js +1 -0
  79. package/out/interface/de-logic/i-de-logic-params.d.ts +10 -0
  80. package/out/interface/de-logic/i-de-logic-params.d.ts.map +1 -0
  81. package/out/interface/de-logic/i-de-logic-params.js +1 -0
  82. package/out/interface/de-logic/i-de-logic.d.ts +23 -0
  83. package/out/interface/de-logic/i-de-logic.d.ts.map +1 -0
  84. package/out/interface/de-logic/i-de-logic.js +1 -0
  85. package/out/interface/de-logic/index.d.ts +7 -0
  86. package/out/interface/de-logic/index.d.ts.map +1 -0
  87. package/out/interface/de-logic/index.js +1 -0
  88. package/out/interface/index.d.ts +1 -0
  89. package/out/interface/index.d.ts.map +1 -1
  90. package/out/interface/index.js +1 -0
  91. package/out/interface/provider/i-de-logic-node.provider.d.ts +29 -0
  92. package/out/interface/provider/i-de-logic-node.provider.d.ts.map +1 -0
  93. package/out/interface/provider/i-de-logic-node.provider.js +1 -0
  94. package/out/interface/provider/i-de-logic.provider.d.ts +22 -0
  95. package/out/interface/provider/i-de-logic.provider.d.ts.map +1 -0
  96. package/out/interface/provider/i-de-logic.provider.js +1 -0
  97. package/out/interface/provider/i-ui-action.provider.d.ts +2 -1
  98. package/out/interface/provider/i-ui-action.provider.d.ts.map +1 -1
  99. package/out/interface/provider/i-ui-logic-node.provider.d.ts +20 -14
  100. package/out/interface/provider/i-ui-logic-node.provider.d.ts.map +1 -1
  101. package/out/interface/provider/i-ui-logic.provider.d.ts +22 -0
  102. package/out/interface/provider/i-ui-logic.provider.d.ts.map +1 -0
  103. package/out/interface/provider/i-ui-logic.provider.js +1 -0
  104. package/out/interface/provider/index.d.ts +3 -0
  105. package/out/interface/provider/index.d.ts.map +1 -1
  106. package/out/interface/register/i-register-params.d.ts +17 -7
  107. package/out/interface/register/i-register-params.d.ts.map +1 -1
  108. package/out/interface/ui-logic/i-ui-logic-context.d.ts +8 -83
  109. package/out/interface/ui-logic/i-ui-logic-context.d.ts.map +1 -1
  110. package/out/interface/ui-logic/i-ui-logic-link-cond.d.ts +33 -0
  111. package/out/interface/ui-logic/i-ui-logic-link-cond.d.ts.map +1 -0
  112. package/out/interface/ui-logic/i-ui-logic-link-cond.js +1 -0
  113. package/out/interface/ui-logic/i-ui-logic-link.d.ts +43 -0
  114. package/out/interface/ui-logic/i-ui-logic-link.d.ts.map +1 -0
  115. package/out/interface/ui-logic/i-ui-logic-link.js +1 -0
  116. package/out/interface/ui-logic/i-ui-logic-node.d.ts +10 -0
  117. package/out/interface/ui-logic/i-ui-logic-node.d.ts.map +1 -0
  118. package/out/interface/ui-logic/i-ui-logic-node.js +1 -0
  119. package/out/interface/{common/i-ui-logic-params → ui-logic}/i-ui-logic-params.d.ts +3 -5
  120. package/out/interface/ui-logic/i-ui-logic-params.d.ts.map +1 -0
  121. package/out/interface/ui-logic/i-ui-logic-params.js +1 -0
  122. package/out/interface/ui-logic/i-ui-logic.d.ts +23 -0
  123. package/out/interface/ui-logic/i-ui-logic.d.ts.map +1 -0
  124. package/out/interface/ui-logic/i-ui-logic.js +1 -0
  125. package/out/interface/ui-logic/index.d.ts +5 -0
  126. package/out/interface/ui-logic/index.d.ts.map +1 -1
  127. package/out/locale/en/index.d.ts +11 -3
  128. package/out/locale/en/index.d.ts.map +1 -1
  129. package/out/locale/en/index.js +11 -3
  130. package/out/locale/zh-CN/index.d.ts +11 -3
  131. package/out/locale/zh-CN/index.d.ts.map +1 -1
  132. package/out/locale/zh-CN/index.js +11 -3
  133. package/out/register/custom-register.d.ts +19 -3
  134. package/out/register/custom-register.d.ts.map +1 -1
  135. package/out/register/custom-register.js +55 -6
  136. package/out/register/helper/app-menu-item-register.d.ts +2 -2
  137. package/out/register/helper/app-menu-item-register.d.ts.map +1 -1
  138. package/out/register/helper/app-menu-item-register.js +21 -10
  139. package/out/register/helper/de-logic-node-register.d.ts +24 -0
  140. package/out/register/helper/de-logic-node-register.d.ts.map +1 -0
  141. package/out/register/helper/de-logic-node-register.js +50 -0
  142. package/out/register/helper/de-logic-register.d.ts +20 -0
  143. package/out/register/helper/de-logic-register.d.ts.map +1 -0
  144. package/out/register/helper/de-logic-register.js +41 -0
  145. package/out/register/helper/index.d.ts +3 -0
  146. package/out/register/helper/index.d.ts.map +1 -1
  147. package/out/register/helper/index.js +3 -0
  148. package/out/register/helper/portlet-register.d.ts +3 -5
  149. package/out/register/helper/portlet-register.d.ts.map +1 -1
  150. package/out/register/helper/portlet-register.js +20 -19
  151. package/out/register/helper/toolbar-item-register.d.ts +5 -7
  152. package/out/register/helper/toolbar-item-register.d.ts.map +1 -1
  153. package/out/register/helper/toolbar-item-register.js +24 -16
  154. package/out/register/helper/ui-logic-node-register.d.ts +13 -9
  155. package/out/register/helper/ui-logic-node-register.d.ts.map +1 -1
  156. package/out/register/helper/ui-logic-node-register.js +51 -17
  157. package/out/register/helper/ui-logic-register.d.ts +20 -0
  158. package/out/register/helper/ui-logic-register.d.ts.map +1 -0
  159. package/out/register/helper/ui-logic-register.js +41 -0
  160. package/out/service/service/entity/method/de-action.d.ts.map +1 -1
  161. package/out/service/service/entity/method/de-action.js +1 -1
  162. package/out/ui-logic/index.d.ts +5 -10
  163. package/out/ui-logic/index.d.ts.map +1 -1
  164. package/out/ui-logic/index.js +12 -14
  165. package/out/ui-logic/provider.d.ts +6 -0
  166. package/out/ui-logic/provider.d.ts.map +1 -0
  167. package/out/ui-logic/provider.js +32 -0
  168. package/out/ui-logic/ui-logic-context.d.ts +1 -1
  169. package/out/ui-logic/ui-logic-context.d.ts.map +1 -1
  170. package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.d.ts +16 -5
  171. package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.d.ts.map +1 -1
  172. package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.js +3 -4
  173. package/out/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.d.ts +2 -1
  174. package/out/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.d.ts.map +1 -1
  175. package/out/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.d.ts +2 -1
  176. package/out/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.d.ts.map +1 -1
  177. package/out/ui-logic/ui-logic-link/ui-logic-link.d.ts +6 -8
  178. package/out/ui-logic/ui-logic-link/ui-logic-link.d.ts.map +1 -1
  179. package/out/ui-logic/ui-logic-link/ui-logic-link.js +3 -5
  180. package/out/ui-logic/ui-logic-node/pf-plugin-node/pf-plugin-node.js +3 -3
  181. package/out/ui-logic/ui-logic-node/ui-logic-node.d.ts +9 -14
  182. package/out/ui-logic/ui-logic-node/ui-logic-node.d.ts.map +1 -1
  183. package/out/ui-logic/ui-logic-node/ui-logic-node.js +2 -4
  184. package/out/ui-logic/ui-logic.d.ts +27 -36
  185. package/out/ui-logic/ui-logic.d.ts.map +1 -1
  186. package/out/ui-logic/ui-logic.js +35 -108
  187. package/out/utils/dr-ctrl-util/index.d.ts.map +1 -1
  188. package/out/utils/dr-ctrl-util/index.js +1 -1
  189. package/package.json +2 -2
  190. package/src/app-hub.ts +28 -0
  191. package/src/application.ts +0 -23
  192. package/src/controller/control/app-menu/app-menu.controller.ts +1 -1
  193. package/src/controller/control/toolbar/toolbar.controller.ts +1 -1
  194. package/src/controller/control/tree/tree.service.ts +1 -0
  195. package/src/controller/utils/view-msg/view-msg-controller.ts +7 -1
  196. package/src/de-logic/de-logic-context.ts +4 -16
  197. package/src/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.ts +17 -5
  198. package/src/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.ts +5 -1
  199. package/src/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.ts +5 -1
  200. package/src/de-logic/de-logic-link/de-logic-link.ts +6 -6
  201. package/src/de-logic/de-logic-node/de-logic-node.ts +2 -1
  202. package/src/de-logic/de-logic-node/index.ts +1 -0
  203. package/src/de-logic/de-logic.ts +60 -123
  204. package/src/de-logic/index.ts +66 -85
  205. package/src/de-logic/provider.ts +83 -0
  206. package/src/install.ts +6 -0
  207. package/src/interface/api/app/i-api-app-hub-service.ts +8 -0
  208. package/src/interface/api/common/i-api-de-logic-params.ts +8 -0
  209. package/src/interface/api/common/i-api-logic-context.ts +83 -0
  210. package/src/interface/api/common/i-api-logic-params.ts +29 -0
  211. package/src/interface/api/common/i-api-ui-logic-params.ts +3 -24
  212. package/src/interface/api/common/index.ts +2 -0
  213. package/src/interface/api/controller/control/form-detail/i-api-form-detail.controller.ts +1 -1
  214. package/src/interface/common/i-logic-context/i-logic-context.ts +27 -0
  215. package/src/interface/common/i-logic-link-cond/i-logic-link-cond.ts +18 -0
  216. package/src/interface/common/index.ts +2 -1
  217. package/src/interface/de-logic/i-de-logic-context.ts +9 -0
  218. package/src/interface/de-logic/i-de-logic-link-cond.ts +33 -0
  219. package/src/interface/de-logic/i-de-logic-link.ts +47 -0
  220. package/src/interface/de-logic/i-de-logic-node.ts +9 -0
  221. package/src/interface/de-logic/i-de-logic-params.ts +9 -0
  222. package/src/interface/de-logic/i-de-logic.ts +23 -0
  223. package/src/interface/de-logic/index.ts +10 -0
  224. package/src/interface/index.ts +1 -0
  225. package/src/interface/provider/i-de-logic-node.provider.ts +29 -0
  226. package/src/interface/provider/i-de-logic.provider.ts +22 -0
  227. package/src/interface/provider/i-ui-action.provider.ts +2 -1
  228. package/src/interface/provider/i-ui-logic-node.provider.ts +20 -14
  229. package/src/interface/provider/i-ui-logic.provider.ts +22 -0
  230. package/src/interface/provider/index.ts +3 -0
  231. package/src/interface/register/i-register-params.ts +31 -7
  232. package/src/interface/ui-logic/i-ui-logic-context.ts +9 -95
  233. package/src/interface/ui-logic/i-ui-logic-link-cond.ts +33 -0
  234. package/src/interface/ui-logic/i-ui-logic-link.ts +47 -0
  235. package/src/interface/ui-logic/i-ui-logic-node.ts +9 -0
  236. package/src/interface/{common/i-ui-logic-params → ui-logic}/i-ui-logic-params.ts +3 -5
  237. package/src/interface/ui-logic/i-ui-logic.ts +23 -0
  238. package/src/interface/ui-logic/index.ts +9 -0
  239. package/src/locale/en/index.ts +20 -4
  240. package/src/locale/zh-CN/index.ts +18 -3
  241. package/src/register/custom-register.ts +69 -12
  242. package/src/register/helper/app-menu-item-register.ts +26 -13
  243. package/src/register/helper/de-logic-node-register.ts +76 -0
  244. package/src/register/helper/de-logic-register.ts +63 -0
  245. package/src/register/helper/index.ts +3 -0
  246. package/src/register/helper/portlet-register.ts +23 -22
  247. package/src/register/helper/toolbar-item-register.ts +32 -19
  248. package/src/register/helper/ui-logic-node-register.ts +79 -25
  249. package/src/register/helper/ui-logic-register.ts +63 -0
  250. package/src/service/service/entity/method/de-action.ts +7 -1
  251. package/src/ui-logic/index.ts +17 -16
  252. package/src/ui-logic/provider.ts +122 -0
  253. package/src/ui-logic/ui-logic-context.ts +1 -1
  254. package/src/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.ts +18 -5
  255. package/src/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.ts +5 -1
  256. package/src/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.ts +5 -1
  257. package/src/ui-logic/ui-logic-link/ui-logic-link.ts +6 -7
  258. package/src/ui-logic/ui-logic-node/pf-plugin-node/pf-plugin-node.ts +3 -3
  259. package/src/ui-logic/ui-logic-node/ui-logic-node.ts +9 -14
  260. package/src/ui-logic/ui-logic.ts +46 -141
  261. package/src/utils/dr-ctrl-util/index.ts +7 -1
  262. package/out/interface/common/i-ui-logic-params/i-ui-logic-params.d.ts.map +0 -1
  263. /package/out/interface/{common/i-ui-logic-params/i-ui-logic-params.js → api/common/i-api-de-logic-params.js} +0 -0
@@ -1,6 +1,7 @@
1
1
  import { IDEUILogicNode } from '@ibiz/model-core';
2
2
  import { UILogicContext } from '../ui-logic-context';
3
3
  import { UILogicLink } from '../ui-logic-link/ui-logic-link';
4
+ import { IUILogicNode } from '../../interface';
4
5
 
5
6
  /**
6
7
  * 逻辑节点
@@ -10,7 +11,7 @@ import { UILogicLink } from '../ui-logic-link/ui-logic-link';
10
11
  * @export
11
12
  * @class UILogicNode
12
13
  */
13
- export abstract class UILogicNode {
14
+ export abstract class UILogicNode implements IUILogicNode {
14
15
  /**
15
16
  * 节点连接
16
17
  *
@@ -22,10 +23,8 @@ export abstract class UILogicNode {
22
23
 
23
24
  /**
24
25
  * Creates an instance of UILogicNode.
25
- *
26
- * @author chitanda
27
- * @date 2023-02-08 16:02:19
28
- * @param {UILogicNodeModel} model
26
+ * @param {IDEUILogicNode} model
27
+ * @memberof UILogicNode
29
28
  */
30
29
  constructor(public model: IDEUILogicNode) {
31
30
  this.links = (model.deuilogicLinks || []).map(
@@ -34,15 +33,11 @@ export abstract class UILogicNode {
34
33
  }
35
34
 
36
35
  /**
37
- * 执行界面行为
38
- *
39
- * @description 此实现无需关心是否循环后续处理问题
40
- * @author chitanda
41
- * @date 2023-02-08 22:02:44
42
- * @param {UILogicContext} ctx
43
- * @param {IContext} context
44
- * @param {IData} data
45
- * @param {IParams} [opt]
36
+ * @description 执行逻辑
37
+ * @abstract
38
+ * @param {UILogicContext} ctx 界面逻辑执行上下文
39
+ * @returns {*} {Promise<void>}
40
+ * @memberof UILogicNode
46
41
  */
47
42
  abstract exec(ctx: UILogicContext): Promise<void>;
48
43
  }
@@ -1,37 +1,11 @@
1
1
  /* eslint-disable no-await-in-loop */
2
- import {
3
- IBizContext,
4
- ModelError,
5
- RuntimeModelError,
6
- } from '@ibiz-template/core';
7
- import { IDEUILogic } from '@ibiz/model-core';
2
+ import { IBizContext, RuntimeModelError } from '@ibiz-template/core';
8
3
  import { clone } from 'ramda';
9
- import { IUILogicParams } from '../interface';
4
+ import { IAppDataEntity, IDEUILogic } from '@ibiz/model-core';
5
+ import { IUILogic, IUILogicParams, IUILogicNode } from '../interface';
10
6
  import { UILogicContext } from './ui-logic-context';
11
- import {
12
- AppendParamNode,
13
- BindParamNode,
14
- CopyParamNode,
15
- DataSetNode,
16
- DEActionNode,
17
- DebugParamNode,
18
- DEUIActionNode,
19
- EndNode,
20
- ExecuteDELogicNode,
21
- MsgBoxNode,
22
- PFPluginNode,
23
- PrepareJSParamNode,
24
- RawJSCodeNode,
25
- RenewParamNode,
26
- ResetParamNode,
27
- SortParamNode,
28
- StartNode,
29
- ThrowExceptionNode,
30
- UILogicNode,
31
- ViewCtrlFireEventNode,
32
- ViewCtrlInvokeNode,
33
- } from './ui-logic-node';
34
7
  import { UILogicParam } from './ui-logic-param/ui-logic-param';
8
+ import { getUILogicNodeProvider } from '../register';
35
9
 
36
10
  /**
37
11
  * 界面逻辑
@@ -41,16 +15,16 @@ import { UILogicParam } from './ui-logic-param/ui-logic-param';
41
15
  * @export
42
16
  * @class UILogic
43
17
  */
44
- export class UILogic {
18
+ export class UILogic implements IUILogic {
45
19
  /**
46
20
  * 所有节点实例
47
21
  *
48
22
  * @author chitanda
49
23
  * @date 2023-02-08 21:02:38
50
24
  * @protected
51
- * @type {Map<string, UILogicNode>}
25
+ * @type {Map<string, IUILogicNode>}
52
26
  */
53
- protected nodes: Map<string, UILogicNode> = new Map();
27
+ protected nodes: Map<string, IUILogicNode> = new Map();
54
28
 
55
29
  /**
56
30
  * 所有参数实例
@@ -64,94 +38,37 @@ export class UILogic {
64
38
 
65
39
  /**
66
40
  * Creates an instance of UILogic.
67
- * @author chitanda
68
- * @date 2023-02-08 17:02:26
69
41
  * @param {IDEUILogic} model
42
+ * @param {IAppDataEntity} entity
43
+ * @memberof UILogic
70
44
  */
71
- constructor(protected model: IDEUILogic) {
72
- if (!model.deuilogicNodes?.length) {
45
+ constructor(
46
+ public model: IDEUILogic,
47
+ public entity: IAppDataEntity,
48
+ ) {}
49
+
50
+ /**
51
+ * @description 初始化
52
+ * @returns {*} {Promise<void>}
53
+ * @memberof UILogic
54
+ */
55
+ async init(): Promise<void> {
56
+ if (!this.model.deuilogicNodes?.length) {
73
57
  throw new RuntimeModelError(
74
- model,
58
+ this.model,
75
59
  ibiz.i18n.t('runtime.uiLogic.noLogicalNodesConfigured'),
76
60
  );
77
61
  }
78
- model.deuilogicNodes.forEach(node => {
79
- const { logicNodeType } = node;
80
- let logicNode;
81
- switch (logicNodeType) {
82
- case 'BEGIN': // 开始
83
- logicNode = new StartNode(node);
84
- break;
85
- case 'END': // 结束
86
- logicNode = new EndNode(node);
87
- break;
88
- case 'DEACTION': // 实体行为
89
- logicNode = new DEActionNode(node);
90
- break;
91
- case 'DEUIACTION': // 实体界面行为调用
92
- logicNode = new DEUIActionNode(node);
93
- break;
94
- case 'PREPAREJSPARAM': // 准备参数
95
- logicNode = new PrepareJSParamNode(node);
96
- break;
97
- case 'RESETPARAM': // 重置参数
98
- logicNode = new ResetParamNode(node);
99
- break;
100
- case 'COPYPARAM': // 拷贝参数
101
- logicNode = new CopyParamNode(node);
102
- break;
103
- case 'BINDPARAM': // 绑定参数
104
- logicNode = new BindParamNode(node);
105
- break;
106
- case 'VIEWCTRLINVOKE': // 视图部件调用
107
- logicNode = new ViewCtrlInvokeNode(node);
108
- break;
109
- case 'MSGBOX': // 消息弹窗
110
- logicNode = new MsgBoxNode(node);
111
- break;
112
- case 'DEBUGPARAM': // 调试逻辑参数
113
- logicNode = new DebugParamNode(node);
114
- break;
115
- case 'APPENDPARAM': // 附加到数组参数
116
- logicNode = new AppendParamNode(node);
117
- break;
118
- case 'SORTPARAM': // 排序数组参数
119
- logicNode = new SortParamNode(node);
120
- break;
121
- case 'RENEWPARAM': // 重新建立参数
122
- logicNode = new RenewParamNode(node);
123
- break;
124
- case 'DEDATASET': // 实体数据集
125
- logicNode = new DataSetNode(node);
126
- break;
127
- case 'THROWEXCEPTION': // 抛出异常
128
- logicNode = new ThrowExceptionNode(node);
129
- break;
130
- case 'VIEWCTRLFIREEVENT': // 视图部件事件触发
131
- logicNode = new ViewCtrlFireEventNode(node);
132
- break;
133
- case 'DELOGIC': // 实体逻辑
134
- logicNode = new ExecuteDELogicNode(node);
135
- break;
136
- case 'PFPLUGIN': // 前端插件调用
137
- logicNode = new PFPluginNode(node);
138
- break;
139
- case 'RAWJSCODE':
140
- logicNode = new RawJSCodeNode(node);
141
- break;
142
- default:
143
- throw new ModelError(
144
- node,
145
- ibiz.i18n.t('runtime.deLogic.deLogicNode.unsupportedLogical', {
146
- logicNodeType,
147
- }),
148
- );
149
- }
150
- this.nodes.set(node.id!, logicNode);
151
- });
152
- model.deuilogicParams!.forEach(param => {
153
- this.params.set(param.id!, new UILogicParam(param));
154
- });
62
+ await Promise.all(
63
+ this.model.deuilogicNodes.map(async node => {
64
+ const provider = await getUILogicNodeProvider(
65
+ node,
66
+ this.model,
67
+ this.entity,
68
+ );
69
+ if (provider) this.nodes.set(node.id!, provider);
70
+ }),
71
+ );
155
72
  // 将已经实例化的逻辑节点挂载到逻辑连接上
156
73
  this.nodes.forEach(node => {
157
74
  node.links.forEach(link => {
@@ -161,18 +78,16 @@ export class UILogic {
161
78
  }
162
79
  });
163
80
  });
81
+ this.model.deuilogicParams!.forEach(param => {
82
+ this.params.set(param.id!, new UILogicParam(param));
83
+ });
164
84
  }
165
85
 
166
86
  /**
167
- * 初始化逻辑参数
168
- *
169
- * @author chitanda
170
- * @date 2023-02-08 21:02:58
87
+ * @description 初始化逻辑参数
171
88
  * @protected
172
89
  * @param {UILogicContext} ctx
173
- * @param {IContext} context
174
- * @param {IData} data
175
- * @param {IParams} [opt]
90
+ * @memberof UILogic
176
91
  */
177
92
  protected initLogicParams(ctx: UILogicContext): void {
178
93
  this.params.forEach(param => {
@@ -184,14 +99,10 @@ export class UILogic {
184
99
  }
185
100
 
186
101
  /**
187
- * 执行视图逻辑
188
- *
189
- * @author chitanda
190
- * @date 2023-02-08 21:02:09
191
- * @param {IContext} context
192
- * @param {IData} data
193
- * @param {IParams} [opt]
194
- * @return {*} {Promise<IData>}
102
+ * @description 执行逻辑
103
+ * @param {IUILogicParams} parameters 逻辑参数
104
+ * @returns {*} {Promise<unknown>}
105
+ * @memberof UILogic
195
106
  */
196
107
  async exec(parameters: IUILogicParams): Promise<unknown> {
197
108
  // 克隆传入应用上下文参数和视图参数
@@ -219,21 +130,15 @@ export class UILogic {
219
130
  }
220
131
 
221
132
  /**
222
- * 开始根据连线递归执行逻辑
223
- *
224
- * @author chitanda
225
- * @date 2023-02-09 15:02:32
133
+ * @description 开始根据连线递归执行逻辑
226
134
  * @protected
227
- * @param {UILogicNode} node
135
+ * @param {IUILogicNode} node
228
136
  * @param {UILogicContext} ctx
229
- * @param {IContext} context
230
- * @param {(IData[] | null)} data
231
- * @param {IParams} params
232
- * @param {IParams} [opt]
233
- * @return {*} {(Promise<IData | null>)}
137
+ * @returns {*} {Promise<void>}
138
+ * @memberof UILogic
234
139
  */
235
140
  protected async deepExec(
236
- node: UILogicNode,
141
+ node: IUILogicNode,
237
142
  ctx: UILogicContext,
238
143
  ): Promise<void> {
239
144
  // 执行逻辑节点
@@ -80,7 +80,13 @@ export async function calcItemVisible(
80
80
  const entityModel = await ibiz.hub.getAppDataEntity(appDeId, appId);
81
81
  const deLogic = findDELogic(testAppDELogicId, entityModel);
82
82
  if (deLogic) {
83
- const result = await execDELogicAction(deLogic, context, data, params);
83
+ const result = await execDELogicAction(
84
+ deLogic,
85
+ entityModel,
86
+ context,
87
+ data,
88
+ params,
89
+ );
84
90
  return !!result.data;
85
91
  }
86
92
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"i-ui-logic-params.d.ts","sourceRoot":"","sources":["../../../../src/interface/common/i-ui-logic-params/i-ui-logic-params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEvE;;;;;;;GAOG;AACH,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD;;;;;OAKG;IACH,IAAI,EAAE,eAAe,CAAC;IAEtB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,kBAAkB,CAAC;CAC3B"}