@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,7 +1,6 @@
1
- import { IDEUILogic } from '@ibiz/model-core';
2
- import { IUILogicParams } from '../interface';
1
+ import { IAppDataEntity, IDEUILogic } from '@ibiz/model-core';
2
+ import { IUILogic, IUILogicParams, IUILogicNode } from '../interface';
3
3
  import { UILogicContext } from './ui-logic-context';
4
- import { UILogicNode } from './ui-logic-node';
5
4
  import { UILogicParam } from './ui-logic-param/ui-logic-param';
6
5
  /**
7
6
  * 界面逻辑
@@ -11,17 +10,18 @@ import { UILogicParam } from './ui-logic-param/ui-logic-param';
11
10
  * @export
12
11
  * @class UILogic
13
12
  */
14
- export declare class UILogic {
15
- protected model: IDEUILogic;
13
+ export declare class UILogic implements IUILogic {
14
+ model: IDEUILogic;
15
+ entity: IAppDataEntity;
16
16
  /**
17
17
  * 所有节点实例
18
18
  *
19
19
  * @author chitanda
20
20
  * @date 2023-02-08 21:02:38
21
21
  * @protected
22
- * @type {Map<string, UILogicNode>}
22
+ * @type {Map<string, IUILogicNode>}
23
23
  */
24
- protected nodes: Map<string, UILogicNode>;
24
+ protected nodes: Map<string, IUILogicNode>;
25
25
  /**
26
26
  * 所有参数实例
27
27
  *
@@ -33,48 +33,39 @@ export declare class UILogic {
33
33
  protected params: Map<string, UILogicParam>;
34
34
  /**
35
35
  * Creates an instance of UILogic.
36
- * @author chitanda
37
- * @date 2023-02-08 17:02:26
38
36
  * @param {IDEUILogic} model
37
+ * @param {IAppDataEntity} entity
38
+ * @memberof UILogic
39
39
  */
40
- constructor(model: IDEUILogic);
40
+ constructor(model: IDEUILogic, entity: IAppDataEntity);
41
41
  /**
42
- * 初始化逻辑参数
43
- *
44
- * @author chitanda
45
- * @date 2023-02-08 21:02:58
42
+ * @description 初始化
43
+ * @returns {*} {Promise<void>}
44
+ * @memberof UILogic
45
+ */
46
+ init(): Promise<void>;
47
+ /**
48
+ * @description 初始化逻辑参数
46
49
  * @protected
47
50
  * @param {UILogicContext} ctx
48
- * @param {IContext} context
49
- * @param {IData} data
50
- * @param {IParams} [opt]
51
+ * @memberof UILogic
51
52
  */
52
53
  protected initLogicParams(ctx: UILogicContext): void;
53
54
  /**
54
- * 执行视图逻辑
55
- *
56
- * @author chitanda
57
- * @date 2023-02-08 21:02:09
58
- * @param {IContext} context
59
- * @param {IData} data
60
- * @param {IParams} [opt]
61
- * @return {*} {Promise<IData>}
55
+ * @description 执行逻辑
56
+ * @param {IUILogicParams} parameters 逻辑参数
57
+ * @returns {*} {Promise<unknown>}
58
+ * @memberof UILogic
62
59
  */
63
60
  exec(parameters: IUILogicParams): Promise<unknown>;
64
61
  /**
65
- * 开始根据连线递归执行逻辑
66
- *
67
- * @author chitanda
68
- * @date 2023-02-09 15:02:32
62
+ * @description 开始根据连线递归执行逻辑
69
63
  * @protected
70
- * @param {UILogicNode} node
64
+ * @param {IUILogicNode} node
71
65
  * @param {UILogicContext} ctx
72
- * @param {IContext} context
73
- * @param {(IData[] | null)} data
74
- * @param {IParams} params
75
- * @param {IParams} [opt]
76
- * @return {*} {(Promise<IData | null>)}
66
+ * @returns {*} {Promise<void>}
67
+ * @memberof UILogic
77
68
  */
78
- protected deepExec(node: UILogicNode, ctx: UILogicContext): Promise<void>;
69
+ protected deepExec(node: IUILogicNode, ctx: UILogicContext): Promise<void>;
79
70
  }
80
71
  //# sourceMappingURL=ui-logic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui-logic.d.ts","sourceRoot":"","sources":["../../src/ui-logic/ui-logic.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAmBL,WAAW,EAGZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D;;;;;;;GAOG;AACH,qBAAa,OAAO;IA2BN,SAAS,CAAC,KAAK,EAAE,UAAU;IA1BvC;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAa;IAEtD;;;;;;;OAOG;IACH,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAa;IAExD;;;;;OAKG;gBACmB,KAAK,EAAE,UAAU;IA+FvC;;;;;;;;;;OAUG;IACH,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IASpD;;;;;;;;;OASG;IACG,IAAI,CAAC,UAAU,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAyBxD;;;;;;;;;;;;;OAaG;cACa,QAAQ,CACtB,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,IAAI,CAAC;CAiBjB"}
1
+ {"version":3,"file":"ui-logic.d.ts","sourceRoot":"","sources":["../../src/ui-logic/ui-logic.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D;;;;;;;GAOG;AACH,qBAAa,OAAQ,YAAW,QAAQ;IA4B7B,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,cAAc;IA5B/B;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAa;IAEvD;;;;;;;OAOG;IACH,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAa;IAExD;;;;;OAKG;gBAEM,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,cAAc;IAG/B;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA+B3B;;;;;OAKG;IACH,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IASpD;;;;;OAKG;IACG,IAAI,CAAC,UAAU,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAyBxD;;;;;;;OAOG;cACa,QAAQ,CACtB,IAAI,EAAE,YAAY,EAClB,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,IAAI,CAAC;CAiBjB"}
@@ -1,9 +1,9 @@
1
1
  /* eslint-disable no-await-in-loop */
2
- import { IBizContext, ModelError, RuntimeModelError, } from '@ibiz-template/core';
2
+ import { IBizContext, RuntimeModelError } from '@ibiz-template/core';
3
3
  import { clone } from 'ramda';
4
4
  import { UILogicContext } from './ui-logic-context';
5
- import { AppendParamNode, BindParamNode, CopyParamNode, DataSetNode, DEActionNode, DebugParamNode, DEUIActionNode, EndNode, ExecuteDELogicNode, MsgBoxNode, PFPluginNode, PrepareJSParamNode, RawJSCodeNode, RenewParamNode, ResetParamNode, SortParamNode, StartNode, ThrowExceptionNode, ViewCtrlFireEventNode, ViewCtrlInvokeNode, } from './ui-logic-node';
6
5
  import { UILogicParam } from './ui-logic-param/ui-logic-param';
6
+ import { getUILogicNodeProvider } from '../register';
7
7
  /**
8
8
  * 界面逻辑
9
9
  *
@@ -15,20 +15,20 @@ import { UILogicParam } from './ui-logic-param/ui-logic-param';
15
15
  export class UILogic {
16
16
  /**
17
17
  * Creates an instance of UILogic.
18
- * @author chitanda
19
- * @date 2023-02-08 17:02:26
20
18
  * @param {IDEUILogic} model
19
+ * @param {IAppDataEntity} entity
20
+ * @memberof UILogic
21
21
  */
22
- constructor(model) {
23
- var _a;
22
+ constructor(model, entity) {
24
23
  this.model = model;
24
+ this.entity = entity;
25
25
  /**
26
26
  * 所有节点实例
27
27
  *
28
28
  * @author chitanda
29
29
  * @date 2023-02-08 21:02:38
30
30
  * @protected
31
- * @type {Map<string, UILogicNode>}
31
+ * @type {Map<string, IUILogicNode>}
32
32
  */
33
33
  this.nodes = new Map();
34
34
  /**
@@ -40,83 +40,22 @@ export class UILogic {
40
40
  * @type {Map<string, UILogicParam>}
41
41
  */
42
42
  this.params = new Map();
43
- if (!((_a = model.deuilogicNodes) === null || _a === void 0 ? void 0 : _a.length)) {
44
- throw new RuntimeModelError(model, ibiz.i18n.t('runtime.uiLogic.noLogicalNodesConfigured'));
43
+ }
44
+ /**
45
+ * @description 初始化
46
+ * @returns {*} {Promise<void>}
47
+ * @memberof UILogic
48
+ */
49
+ async init() {
50
+ var _a;
51
+ if (!((_a = this.model.deuilogicNodes) === null || _a === void 0 ? void 0 : _a.length)) {
52
+ throw new RuntimeModelError(this.model, ibiz.i18n.t('runtime.uiLogic.noLogicalNodesConfigured'));
45
53
  }
46
- model.deuilogicNodes.forEach(node => {
47
- const { logicNodeType } = node;
48
- let logicNode;
49
- switch (logicNodeType) {
50
- case 'BEGIN': // 开始
51
- logicNode = new StartNode(node);
52
- break;
53
- case 'END': // 结束
54
- logicNode = new EndNode(node);
55
- break;
56
- case 'DEACTION': // 实体行为
57
- logicNode = new DEActionNode(node);
58
- break;
59
- case 'DEUIACTION': // 实体界面行为调用
60
- logicNode = new DEUIActionNode(node);
61
- break;
62
- case 'PREPAREJSPARAM': // 准备参数
63
- logicNode = new PrepareJSParamNode(node);
64
- break;
65
- case 'RESETPARAM': // 重置参数
66
- logicNode = new ResetParamNode(node);
67
- break;
68
- case 'COPYPARAM': // 拷贝参数
69
- logicNode = new CopyParamNode(node);
70
- break;
71
- case 'BINDPARAM': // 绑定参数
72
- logicNode = new BindParamNode(node);
73
- break;
74
- case 'VIEWCTRLINVOKE': // 视图部件调用
75
- logicNode = new ViewCtrlInvokeNode(node);
76
- break;
77
- case 'MSGBOX': // 消息弹窗
78
- logicNode = new MsgBoxNode(node);
79
- break;
80
- case 'DEBUGPARAM': // 调试逻辑参数
81
- logicNode = new DebugParamNode(node);
82
- break;
83
- case 'APPENDPARAM': // 附加到数组参数
84
- logicNode = new AppendParamNode(node);
85
- break;
86
- case 'SORTPARAM': // 排序数组参数
87
- logicNode = new SortParamNode(node);
88
- break;
89
- case 'RENEWPARAM': // 重新建立参数
90
- logicNode = new RenewParamNode(node);
91
- break;
92
- case 'DEDATASET': // 实体数据集
93
- logicNode = new DataSetNode(node);
94
- break;
95
- case 'THROWEXCEPTION': // 抛出异常
96
- logicNode = new ThrowExceptionNode(node);
97
- break;
98
- case 'VIEWCTRLFIREEVENT': // 视图部件事件触发
99
- logicNode = new ViewCtrlFireEventNode(node);
100
- break;
101
- case 'DELOGIC': // 实体逻辑
102
- logicNode = new ExecuteDELogicNode(node);
103
- break;
104
- case 'PFPLUGIN': // 前端插件调用
105
- logicNode = new PFPluginNode(node);
106
- break;
107
- case 'RAWJSCODE':
108
- logicNode = new RawJSCodeNode(node);
109
- break;
110
- default:
111
- throw new ModelError(node, ibiz.i18n.t('runtime.deLogic.deLogicNode.unsupportedLogical', {
112
- logicNodeType,
113
- }));
114
- }
115
- this.nodes.set(node.id, logicNode);
116
- });
117
- model.deuilogicParams.forEach(param => {
118
- this.params.set(param.id, new UILogicParam(param));
119
- });
54
+ await Promise.all(this.model.deuilogicNodes.map(async (node) => {
55
+ const provider = await getUILogicNodeProvider(node, this.model, this.entity);
56
+ if (provider)
57
+ this.nodes.set(node.id, provider);
58
+ }));
120
59
  // 将已经实例化的逻辑节点挂载到逻辑连接上
121
60
  this.nodes.forEach(node => {
122
61
  node.links.forEach(link => {
@@ -126,17 +65,15 @@ export class UILogic {
126
65
  }
127
66
  });
128
67
  });
68
+ this.model.deuilogicParams.forEach(param => {
69
+ this.params.set(param.id, new UILogicParam(param));
70
+ });
129
71
  }
130
72
  /**
131
- * 初始化逻辑参数
132
- *
133
- * @author chitanda
134
- * @date 2023-02-08 21:02:58
73
+ * @description 初始化逻辑参数
135
74
  * @protected
136
75
  * @param {UILogicContext} ctx
137
- * @param {IContext} context
138
- * @param {IData} data
139
- * @param {IParams} [opt]
76
+ * @memberof UILogic
140
77
  */
141
78
  initLogicParams(ctx) {
142
79
  this.params.forEach(param => {
@@ -147,14 +84,10 @@ export class UILogic {
147
84
  });
148
85
  }
149
86
  /**
150
- * 执行视图逻辑
151
- *
152
- * @author chitanda
153
- * @date 2023-02-08 21:02:09
154
- * @param {IContext} context
155
- * @param {IData} data
156
- * @param {IParams} [opt]
157
- * @return {*} {Promise<IData>}
87
+ * @description 执行逻辑
88
+ * @param {IUILogicParams} parameters 逻辑参数
89
+ * @returns {*} {Promise<unknown>}
90
+ * @memberof UILogic
158
91
  */
159
92
  async exec(parameters) {
160
93
  // 克隆传入应用上下文参数和视图参数
@@ -179,18 +112,12 @@ export class UILogic {
179
112
  return null;
180
113
  }
181
114
  /**
182
- * 开始根据连线递归执行逻辑
183
- *
184
- * @author chitanda
185
- * @date 2023-02-09 15:02:32
115
+ * @description 开始根据连线递归执行逻辑
186
116
  * @protected
187
- * @param {UILogicNode} node
117
+ * @param {IUILogicNode} node
188
118
  * @param {UILogicContext} ctx
189
- * @param {IContext} context
190
- * @param {(IData[] | null)} data
191
- * @param {IParams} params
192
- * @param {IParams} [opt]
193
- * @return {*} {(Promise<IData | null>)}
119
+ * @returns {*} {Promise<void>}
120
+ * @memberof UILogic
194
121
  */
195
122
  async deepExec(node, ctx) {
196
123
  // 执行逻辑节点
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/dr-ctrl-util/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB,EACzC,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,GAAG,SAAS,CAiBrB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB,EACzC,OAAO,EAAE,QAAQ,EACjB,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,KAAK,GACX,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAoC9B;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,QAAQ,EACjB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,KAAK,CAAC,CA0BhB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB,EAAE,CA8BxE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/dr-ctrl-util/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB,EACzC,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,GAAG,SAAS,CAiBrB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB,EACzC,OAAO,EAAE,QAAQ,EACjB,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,KAAK,GACX,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CA0C9B;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,QAAQ,EACjB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,KAAK,CAAC,CA0BhB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB,EAAE,CA8BxE"}
@@ -55,7 +55,7 @@ export async function calcItemVisible(item, context, params, appDeId, appId, dat
55
55
  const entityModel = await ibiz.hub.getAppDataEntity(appDeId, appId);
56
56
  const deLogic = findDELogic(testAppDELogicId, entityModel);
57
57
  if (deLogic) {
58
- const result = await execDELogicAction(deLogic, context, data, params);
58
+ const result = await execDELogicAction(deLogic, entityModel, context, data, params);
59
59
  return !!result.data;
60
60
  }
61
61
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibiz-template/runtime",
3
- "version": "0.7.41-alpha.125",
3
+ "version": "0.7.41-alpha.127",
4
4
  "description": "运行时逻辑库",
5
5
  "type": "module",
6
6
  "main": "out/index.js",
@@ -70,5 +70,5 @@
70
70
  "qx-util": "^0.4.8",
71
71
  "ramda": "^0.29.0"
72
72
  },
73
- "gitHead": "e240a35b3bcaabb0502fadb01723c85661f8ce23"
73
+ "gitHead": "1d04087bd3efd8e6c6dc6ead8d5e17a7326c88a4"
74
74
  }
package/src/app-hub.ts CHANGED
@@ -5,6 +5,7 @@ import {
5
5
  IAppCodeList,
6
6
  IAppDataEntity,
7
7
  IAppLan,
8
+ IAppPFPluginRef,
8
9
  IAppView,
9
10
  IApplication,
10
11
  ISubAppRef,
@@ -848,6 +849,29 @@ export class AppHub implements IAppHubService {
848
849
  return targetCodeListMap?.get(id);
849
850
  }
850
851
 
852
+ /**
853
+ * @description 加载扩展插件
854
+ * @public
855
+ * @param {string} appId
856
+ * @returns {*} {Promise<void>}
857
+ * @memberof AppHub
858
+ */
859
+ public async loadExtensionPlugin(appId: string): Promise<void> {
860
+ try {
861
+ await ibiz.plugin.loadPlugin({
862
+ runtimeObject: true,
863
+ rtobjectName: 'ExtensionPlugin',
864
+ rtobjectRepo: `${ibiz.env.baseUrl}/${appId}${ibiz.env.remoteModelUrl}/ext`,
865
+ } as IAppPFPluginRef);
866
+ } catch (error) {
867
+ ibiz.log.warn(
868
+ ibiz.i18n.t('runtime.application.noExtensionPlugin', {
869
+ appId: ibiz.env.appId,
870
+ }),
871
+ );
872
+ }
873
+ }
874
+
851
875
  /**
852
876
  * 新建 hub 应用
853
877
  *
@@ -863,6 +887,10 @@ export class AppHub implements IAppHubService {
863
887
  if (!this.modelLoaderProvider) {
864
888
  throw new RuntimeError(ibiz.i18n.t('runtime.utils.firstregister'));
865
889
  }
890
+ // 加载子应用扩展插件
891
+ if (id !== ibiz.env.appId) {
892
+ await this.loadExtensionPlugin(id);
893
+ }
866
894
  const appModel: IApplication = await this.modelLoaderProvider.getApp(id);
867
895
  const subAppRef: ISubAppRef | undefined =
868
896
  await this.modelLoaderProvider.getSubAppRef(id);
@@ -169,7 +169,6 @@ export class Application implements IAppService {
169
169
  await this.loadAppModelStyle();
170
170
  await this.loadAppLang();
171
171
  await this.loadGlobalAppUtil();
172
- await this.loadExtensionPlugin();
173
172
  await this.loadReplaceDefaultPlugin();
174
173
  }
175
174
 
@@ -237,28 +236,6 @@ export class Application implements IAppService {
237
236
  await ibiz.plugin.loadPlugin(globalAppUtilPlugin as ISysPFPlugin);
238
237
  }
239
238
 
240
- /**
241
- * @description 加载扩展插件
242
- * @protected
243
- * @returns {*} {Promise<void>}
244
- * @memberof Application
245
- */
246
- protected async loadExtensionPlugin(): Promise<void> {
247
- try {
248
- await ibiz.plugin.loadPlugin({
249
- runtimeObject: true,
250
- rtobjectName: 'ExtensionPlugin',
251
- rtobjectRepo: `${ibiz.env.baseUrl}/${this.appId}${ibiz.env.remoteModelUrl}/ext`,
252
- } as IAppPFPluginRef);
253
- } catch (error) {
254
- ibiz.log.warn(
255
- ibiz.i18n.t('runtime.application.noExtensionPlugin', {
256
- appId: this.appId,
257
- }),
258
- );
259
- }
260
- }
261
-
262
239
  /**
263
240
  * @description 加载替换默认插件(仅主应用执行)
264
241
  * @protected
@@ -407,7 +407,7 @@ export class AppMenuController
407
407
  protected async initAppMenuItemProviders(): Promise<void> {
408
408
  await Promise.all(
409
409
  this.allAppMenuItems.map(async item => {
410
- const provider = await getAppMenuItemProvider(item);
410
+ const provider = await getAppMenuItemProvider(item, this.model);
411
411
  if (provider) {
412
412
  this.itemProviders[item.id!] = provider;
413
413
  }
@@ -262,7 +262,7 @@ export class ToolbarController<
262
262
  protected async initToolbarItemProviders(): Promise<void> {
263
263
  await Promise.all(
264
264
  this.allToolbarItems.map(async item => {
265
- const provider = await getToolbarItemProvider(item);
265
+ const provider = await getToolbarItemProvider(item, this.model);
266
266
  if (provider) {
267
267
  this.itemProviders[item.id!] = provider;
268
268
  }
@@ -654,6 +654,7 @@ export class TreeService<
654
654
  if (deLogic) {
655
655
  const response = await execDELogicAction(
656
656
  deLogic,
657
+ entityModel,
657
658
  context,
658
659
  parentNodeData?._deData,
659
660
  params,
@@ -226,7 +226,13 @@ export class ViewMsgController {
226
226
  );
227
227
  const deLogic = findDELogic(testAppDELogicId, entityModel);
228
228
  if (deLogic) {
229
- const result = await execDELogicAction(deLogic, context, data, params);
229
+ const result = await execDELogicAction(
230
+ deLogic,
231
+ entityModel,
232
+ context,
233
+ data,
234
+ params,
235
+ );
230
236
  return !!result.data;
231
237
  }
232
238
  }
@@ -1,5 +1,5 @@
1
- import { isArray } from 'lodash-es';
2
1
  import { DELogicParam } from './de-logic-param/de-logic-param';
2
+ import { IDeLogicContext, IDeLogicParams } from '../interface';
3
3
 
4
4
  /**
5
5
  * 实体逻辑执行上下文
@@ -9,7 +9,7 @@ import { DELogicParam } from './de-logic-param/de-logic-param';
9
9
  * @export
10
10
  * @class DELogicContext
11
11
  */
12
- export class DELogicContext {
12
+ export class DELogicContext implements IDeLogicContext {
13
13
  /**
14
14
  * 上一次返回值
15
15
  * @author lxm
@@ -18,14 +18,6 @@ export class DELogicContext {
18
18
  */
19
19
  lastReturn: unknown;
20
20
 
21
- /**
22
- * 实体逻辑执行参数
23
- * @author lxm
24
- * @date 2023-10-16 02:22:31
25
- * @type {{ context: IContext; data: IData[]; params: IParams }}
26
- */
27
- parameters: { context: IContext; data: IData[]; params: IParams };
28
-
29
21
  /**
30
22
  * 上下文
31
23
  */
@@ -64,12 +56,8 @@ export class DELogicContext {
64
56
  */
65
57
  constructor(
66
58
  private deLogicParams: Map<string, DELogicParam>,
67
- context: IContext,
68
- data: IData | IData[],
69
- params: IParams,
70
- ) {
71
- this.parameters = { context, data: isArray(data) ? data : [data], params };
72
- }
59
+ public parameters: IDeLogicParams,
60
+ ) {}
73
61
 
74
62
  /**
75
63
  * 重置实体逻辑参数
@@ -1,9 +1,21 @@
1
+ import { IDeLogicContext, IDeLogicLinkCond } from '../../../interface';
2
+
1
3
  /**
2
- * 界面逻辑连接条件
3
- *
4
- * @author lxm
5
- * @date 2023-02-10 15:02:28
4
+ * @description 实体逻辑连接条件
6
5
  * @export
6
+ * @abstract
7
7
  * @class DELogicLinkCond
8
+ * @implements {IDELogicLinkCond}
8
9
  */
9
- export abstract class DELogicLinkCond {}
10
+ export abstract class DELogicLinkCond implements IDeLogicLinkCond {
11
+ /**
12
+ * @description 条件判断
13
+ * @abstract
14
+ * @param {IDeLogicContext} ctx 实体逻辑执行上下文
15
+ * @param {IContext} context 上下文
16
+ * @param {IData} data 数据
17
+ * @returns {*} {boolean}
18
+ * @memberof DELogicLinkCond
19
+ */
20
+ abstract test(ctx: IDeLogicContext, context: IContext, data: IData): boolean;
21
+ }
@@ -6,6 +6,7 @@ import {
6
6
  import { DELogicContext } from '../../de-logic-context';
7
7
  import { DELogicLinkCond } from '../de-logic-link-cond/de-logic-link-cond';
8
8
  import { DELogicLinkSingleCond } from '../de-logic-link-single-cond/de-logic-link-single-cond';
9
+ import { IDeLogicLinkGroupCond } from '../../../interface';
9
10
 
10
11
  /**
11
12
  * 界面逻辑连接条件组
@@ -16,7 +17,10 @@ import { DELogicLinkSingleCond } from '../de-logic-link-single-cond/de-logic-lin
16
17
  * @class DELogicLinkGroupCond
17
18
  * @extends {DELogicLinkCond}
18
19
  */
19
- export class DELogicLinkGroupCond extends DELogicLinkCond {
20
+ export class DELogicLinkGroupCond
21
+ extends DELogicLinkCond
22
+ implements IDeLogicLinkGroupCond
23
+ {
20
24
  /**
21
25
  * 操作标识
22
26
  *
@@ -4,6 +4,7 @@ import { IDELogicLinkSingleCond } from '@ibiz/model-core';
4
4
  import { testCond } from '../../../utils';
5
5
  import { DELogicContext } from '../../de-logic-context';
6
6
  import { DELogicLinkCond } from '../de-logic-link-cond/de-logic-link-cond';
7
+ import { IDeLogicLinkSingleCond } from '../../../interface';
7
8
 
8
9
  /**
9
10
  * 界面逻辑连接条件项
@@ -14,7 +15,10 @@ import { DELogicLinkCond } from '../de-logic-link-cond/de-logic-link-cond';
14
15
  * @class DELogicLinkSingleCond
15
16
  * @extends {DELogicLinkCond}
16
17
  */
17
- export class DELogicLinkSingleCond extends DELogicLinkCond {
18
+ export class DELogicLinkSingleCond
19
+ extends DELogicLinkCond
20
+ implements IDeLogicLinkSingleCond
21
+ {
18
22
  /**
19
23
  * 源参数
20
24
  *
@@ -2,15 +2,15 @@ import { IDELogicLink } from '@ibiz/model-core';
2
2
  import { DELogicContext } from '../de-logic-context';
3
3
  import { DELogicNode } from '../de-logic-node/de-logic-node';
4
4
  import { DELogicLinkGroupCond } from './de-logic-link-group-cond/de-logic-link-group-cond';
5
+ import { IDeLogicLink, IDeLogicLinkGroupCond } from '../../interface';
5
6
 
6
7
  /**
7
- *
8
- * @author lxm
9
- * @date 2023-02-08 16:02:10
8
+ * @description 实体逻辑连线
10
9
  * @export
11
10
  * @class DELogicLink
11
+ * @implements {IDeLogicLink}
12
12
  */
13
- export class DELogicLink {
13
+ export class DELogicLink implements IDeLogicLink {
14
14
  /**
15
15
  * 源节点
16
16
  *
@@ -34,9 +34,9 @@ export class DELogicLink {
34
34
  *
35
35
  * @author lxm
36
36
  * @date 2023-02-15 17:02:49
37
- * @type {(DELogicLinkGroupCond | null)}
37
+ * @type {(IDeLogicLinkGroupCond | null)}
38
38
  */
39
- groupCond: DELogicLinkGroupCond | null = null;
39
+ groupCond: IDeLogicLinkGroupCond | null = null;
40
40
 
41
41
  /**
42
42
  * Creates an instance of DELogicLink.
@@ -1,6 +1,7 @@
1
1
  import { IDELogicNode } from '@ibiz/model-core';
2
2
  import { DELogicContext } from '../de-logic-context';
3
3
  import { DELogicLink } from '../de-logic-link/de-logic-link';
4
+ import { IDeLogicNode } from '../../interface';
4
5
 
5
6
  /**
6
7
  * 逻辑节点
@@ -10,7 +11,7 @@ import { DELogicLink } from '../de-logic-link/de-logic-link';
10
11
  * @export
11
12
  * @class DELogicNode
12
13
  */
13
- export abstract class DELogicNode {
14
+ export abstract class DELogicNode implements IDeLogicNode {
14
15
  /**
15
16
  * 节点连接
16
17
  *
@@ -11,3 +11,4 @@ export { CopyParamNode } from './copy-param-node/copy-param-node';
11
11
  export { SortParamNode } from './sort-param-node/sort-param-node';
12
12
  export { AppendParamNode } from './append-param-node/append-param-node';
13
13
  export { DebugParamNode } from './debug-param-node/debug-param-node';
14
+ export { ThrowExceptionNode } from './throw-exception-node/throw-exception-node';