@ibiz-template/runtime 0.0.1-alpha.9 → 0.0.1-beta.130

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 (286) hide show
  1. package/dist/system/index.system.js +1 -0
  2. package/out/command/app/app-func/app-func.d.ts +10 -11
  3. package/out/command/app/app-func/app-func.d.ts.map +1 -1
  4. package/out/command/app/app-func/app-func.js +22 -23
  5. package/out/command/app/open-app-view/open-app-view.d.ts +12 -24
  6. package/out/command/app/open-app-view/open-app-view.d.ts.map +1 -1
  7. package/out/command/app/open-app-view/open-app-view.js +12 -24
  8. package/out/config/global-config.d.ts +18 -0
  9. package/out/config/global-config.d.ts.map +1 -0
  10. package/out/config/global-config.js +18 -0
  11. package/out/index.d.ts +4 -1
  12. package/out/index.d.ts.map +1 -1
  13. package/out/index.js +4 -1
  14. package/out/install.d.ts.map +1 -1
  15. package/out/install.js +11 -2
  16. package/out/interface/i-drawer-options/i-drawer-options.d.ts +29 -0
  17. package/out/interface/i-drawer-options/i-drawer-options.d.ts.map +1 -0
  18. package/out/interface/i-global-config/i-global-config.d.ts +62 -0
  19. package/out/interface/i-global-config/i-global-config.d.ts.map +1 -0
  20. package/out/interface/i-modal/i-modal.d.ts +7 -0
  21. package/out/interface/i-modal/i-modal.d.ts.map +1 -1
  22. package/out/interface/i-modal-data/i-modal-data.d.ts +1 -1
  23. package/out/interface/i-modal-data/i-modal-data.d.ts.map +1 -1
  24. package/out/interface/i-modal-options/i-modal-options.d.ts +43 -0
  25. package/out/interface/i-modal-options/i-modal-options.d.ts.map +1 -0
  26. package/out/interface/i-modal-options/i-modal-options.js +1 -0
  27. package/out/interface/i-plugin-factory/i-plugin-factory.d.ts +66 -0
  28. package/out/interface/i-plugin-factory/i-plugin-factory.d.ts.map +1 -0
  29. package/out/interface/i-plugin-factory/i-plugin-factory.js +1 -0
  30. package/out/interface/i-plugin-item/i-plugin-item.d.ts +28 -0
  31. package/out/interface/i-plugin-item/i-plugin-item.d.ts.map +1 -0
  32. package/out/interface/i-plugin-item/i-plugin-item.js +1 -0
  33. package/out/interface/i-popover-options/i-popover-options.d.ts +84 -0
  34. package/out/interface/i-popover-options/i-popover-options.d.ts.map +1 -0
  35. package/out/interface/i-popover-options/i-popover-options.js +1 -0
  36. package/out/interface/i-ui-action-handler/i-ui-action-handler.d.ts +26 -0
  37. package/out/interface/i-ui-action-handler/i-ui-action-handler.d.ts.map +1 -0
  38. package/out/interface/i-ui-action-handler/i-ui-action-handler.js +1 -0
  39. package/out/interface/i-ui-action-result/i-ui-action-result.d.ts +17 -0
  40. package/out/interface/i-ui-action-result/i-ui-action-result.d.ts.map +1 -1
  41. package/out/interface/i-ui-logic-params/i-ui-logic-params.d.ts +31 -0
  42. package/out/interface/i-ui-logic-params/i-ui-logic-params.d.ts.map +1 -0
  43. package/out/interface/i-ui-logic-params/i-ui-logic-params.js +1 -0
  44. package/out/interface/index.d.ts +11 -3
  45. package/out/interface/index.d.ts.map +1 -1
  46. package/out/interface/index.js +3 -3
  47. package/out/interface/logic-scheduler/i-scheduler-logic.d.ts +35 -0
  48. package/out/interface/logic-scheduler/i-scheduler-logic.d.ts.map +1 -0
  49. package/out/interface/logic-scheduler/i-scheduler-logic.js +1 -0
  50. package/out/interface/logic-scheduler/i-trigger-match-params.d.ts +17 -0
  51. package/out/interface/logic-scheduler/i-trigger-match-params.d.ts.map +1 -0
  52. package/out/interface/logic-scheduler/i-trigger-match-params.js +1 -0
  53. package/out/interface/logic-scheduler/index.d.ts +3 -0
  54. package/out/interface/logic-scheduler/index.d.ts.map +1 -0
  55. package/out/interface/logic-scheduler/index.js +1 -0
  56. package/out/interface/provider/i-ui-action-provider.d.ts +20 -0
  57. package/out/interface/provider/i-ui-action-provider.d.ts.map +1 -0
  58. package/out/interface/provider/i-ui-action-provider.js +1 -0
  59. package/out/interface/provider/index.d.ts +2 -0
  60. package/out/interface/provider/index.d.ts.map +1 -0
  61. package/out/interface/provider/index.js +1 -0
  62. package/out/interface/register/i-register.d.ts +8 -1
  63. package/out/interface/register/i-register.d.ts.map +1 -1
  64. package/out/interface/register/i-ui-action-register.d.ts +15 -0
  65. package/out/interface/register/i-ui-action-register.d.ts.map +1 -0
  66. package/out/interface/register/i-ui-action-register.js +1 -0
  67. package/out/interface/register/index.d.ts +3 -0
  68. package/out/interface/register/index.d.ts.map +1 -0
  69. package/out/interface/register/index.js +2 -0
  70. package/out/interface/util/i-loading-util/i-loading-util.d.ts +14 -0
  71. package/out/interface/util/i-loading-util/i-loading-util.d.ts.map +1 -1
  72. package/out/interface/util/i-modal-util/i-modal-util.d.ts +8 -0
  73. package/out/interface/util/i-modal-util/i-modal-util.d.ts.map +1 -1
  74. package/out/interface/util/i-open-view-util/i-open-view-util.d.ts +10 -11
  75. package/out/interface/util/i-open-view-util/i-open-view-util.d.ts.map +1 -1
  76. package/out/interface/util/i-overlay-container/i-overlay-container.d.ts +37 -0
  77. package/out/interface/util/i-overlay-container/i-overlay-container.d.ts.map +1 -0
  78. package/out/interface/util/i-overlay-container/i-overlay-container.js +1 -0
  79. package/out/interface/util/i-overlay-controller/i-overlay-controller.d.ts +86 -0
  80. package/out/interface/util/i-overlay-controller/i-overlay-controller.d.ts.map +1 -0
  81. package/out/interface/util/i-overlay-controller/i-overlay-controller.js +1 -0
  82. package/out/interface/util/i-overlay-popover-container/i-overlay-popover-container.d.ts +23 -0
  83. package/out/interface/util/i-overlay-popover-container/i-overlay-popover-container.d.ts.map +1 -0
  84. package/out/interface/util/i-overlay-popover-container/i-overlay-popover-container.js +1 -0
  85. package/out/interface/util/index.d.ts +3 -0
  86. package/out/interface/util/index.d.ts.map +1 -1
  87. package/out/logic-scheduler/executor/logic-executor-factory.d.ts +34 -0
  88. package/out/logic-scheduler/executor/logic-executor-factory.d.ts.map +1 -0
  89. package/out/logic-scheduler/executor/logic-executor-factory.js +42 -0
  90. package/out/logic-scheduler/executor/logic-executor.d.ts +32 -0
  91. package/out/logic-scheduler/executor/logic-executor.d.ts.map +1 -0
  92. package/out/logic-scheduler/executor/logic-executor.js +30 -0
  93. package/out/logic-scheduler/executor/script-executor.d.ts +39 -0
  94. package/out/logic-scheduler/executor/script-executor.d.ts.map +1 -0
  95. package/out/logic-scheduler/executor/script-executor.js +53 -0
  96. package/out/logic-scheduler/index.d.ts +12 -0
  97. package/out/logic-scheduler/index.d.ts.map +1 -0
  98. package/out/logic-scheduler/index.js +17 -0
  99. package/out/logic-scheduler/logic-scheduler-center.d.ts +45 -0
  100. package/out/logic-scheduler/logic-scheduler-center.d.ts.map +1 -0
  101. package/out/logic-scheduler/logic-scheduler-center.js +49 -0
  102. package/out/logic-scheduler/scheduler/control-logic-scheduler.d.ts +14 -0
  103. package/out/logic-scheduler/scheduler/control-logic-scheduler.d.ts.map +1 -0
  104. package/out/logic-scheduler/scheduler/control-logic-scheduler.js +16 -0
  105. package/out/logic-scheduler/scheduler/logic-scheduler.d.ts +105 -0
  106. package/out/logic-scheduler/scheduler/logic-scheduler.d.ts.map +1 -0
  107. package/out/logic-scheduler/scheduler/logic-scheduler.js +148 -0
  108. package/out/logic-scheduler/scheduler/view-logic-scheduler.d.ts +14 -0
  109. package/out/logic-scheduler/scheduler/view-logic-scheduler.d.ts.map +1 -0
  110. package/out/logic-scheduler/scheduler/view-logic-scheduler.js +14 -0
  111. package/out/logic-scheduler/trigger/item-dyna-logic-trigger.d.ts +12 -0
  112. package/out/logic-scheduler/trigger/item-dyna-logic-trigger.d.ts.map +1 -0
  113. package/out/logic-scheduler/trigger/item-dyna-logic-trigger.js +26 -0
  114. package/out/logic-scheduler/trigger/logic-trigger-factory.d.ts +34 -0
  115. package/out/logic-scheduler/trigger/logic-trigger-factory.d.ts.map +1 -0
  116. package/out/logic-scheduler/trigger/logic-trigger-factory.js +42 -0
  117. package/out/logic-scheduler/trigger/logic-trigger.d.ts +55 -0
  118. package/out/logic-scheduler/trigger/logic-trigger.d.ts.map +1 -0
  119. package/out/logic-scheduler/trigger/logic-trigger.js +52 -0
  120. package/out/plugin/index.d.ts +3 -0
  121. package/out/plugin/index.d.ts.map +1 -0
  122. package/out/plugin/index.js +2 -0
  123. package/out/plugin/plugin-static-resource/plugin-static-resource.d.ts +55 -0
  124. package/out/plugin/plugin-static-resource/plugin-static-resource.d.ts.map +1 -0
  125. package/out/plugin/plugin-static-resource/plugin-static-resource.js +67 -0
  126. package/out/plugin/remote-plugin-item/remote-plugin-item.d.ts +111 -0
  127. package/out/plugin/remote-plugin-item/remote-plugin-item.d.ts.map +1 -0
  128. package/out/plugin/remote-plugin-item/remote-plugin-item.js +24 -0
  129. package/out/provider/index.d.ts +2 -0
  130. package/out/provider/index.d.ts.map +1 -0
  131. package/out/provider/index.js +1 -0
  132. package/out/provider/ui-action/backend-ui-action-provider.d.ts +15 -0
  133. package/out/provider/ui-action/backend-ui-action-provider.d.ts.map +1 -0
  134. package/out/provider/ui-action/backend-ui-action-provider.js +18 -0
  135. package/out/provider/ui-action/common-sys-ui-action-provider.d.ts +15 -0
  136. package/out/provider/ui-action/common-sys-ui-action-provider.d.ts.map +1 -0
  137. package/out/provider/ui-action/common-sys-ui-action-provider.js +18 -0
  138. package/out/provider/ui-action/front-ui-action-provider.d.ts +15 -0
  139. package/out/provider/ui-action/front-ui-action-provider.d.ts.map +1 -0
  140. package/out/provider/ui-action/front-ui-action-provider.js +18 -0
  141. package/out/provider/ui-action/index.d.ts +14 -0
  142. package/out/provider/ui-action/index.d.ts.map +1 -0
  143. package/out/provider/ui-action/index.js +48 -0
  144. package/out/provider/ui-action/wf-withdraw-ui-action-provider.d.ts +15 -0
  145. package/out/provider/ui-action/wf-withdraw-ui-action-provider.d.ts.map +1 -0
  146. package/out/provider/ui-action/wf-withdraw-ui-action-provider.js +18 -0
  147. package/out/register/index.d.ts +4 -0
  148. package/out/register/index.d.ts.map +1 -0
  149. package/out/register/index.js +3 -0
  150. package/out/register/register-base.d.ts +18 -0
  151. package/out/register/register-base.d.ts.map +1 -0
  152. package/out/register/register-base.js +24 -0
  153. package/out/register/register-center.d.ts +20 -0
  154. package/out/register/register-center.d.ts.map +1 -0
  155. package/out/register/register-center.js +21 -0
  156. package/out/register/ui-action-register.d.ts +17 -0
  157. package/out/register/ui-action-register.d.ts.map +1 -0
  158. package/out/register/ui-action-register.js +41 -0
  159. package/out/types.d.ts +35 -3
  160. package/out/types.d.ts.map +1 -1
  161. package/out/utils/app-de-ui-action-util/app-de-ui-action-util.d.ts +0 -59
  162. package/out/utils/app-de-ui-action-util/app-de-ui-action-util.d.ts.map +1 -1
  163. package/out/utils/app-de-ui-action-util/app-de-ui-action-util.js +3 -240
  164. package/out/utils/app-de-ui-action-util/handler/backend-ui-action-handler.d.ts +16 -0
  165. package/out/utils/app-de-ui-action-util/handler/backend-ui-action-handler.d.ts.map +1 -0
  166. package/out/utils/app-de-ui-action-util/handler/backend-ui-action-handler.js +31 -0
  167. package/out/utils/app-de-ui-action-util/handler/common-sys-ui-action-handler.d.ts +16 -0
  168. package/out/utils/app-de-ui-action-util/handler/common-sys-ui-action-handler.d.ts.map +1 -0
  169. package/out/utils/app-de-ui-action-util/handler/common-sys-ui-action-handler.js +103 -0
  170. package/out/utils/app-de-ui-action-util/handler/front-ui-action-handler.d.ts +16 -0
  171. package/out/utils/app-de-ui-action-util/handler/front-ui-action-handler.d.ts.map +1 -0
  172. package/out/utils/app-de-ui-action-util/handler/front-ui-action-handler.js +47 -0
  173. package/out/utils/app-de-ui-action-util/handler/index.d.ts +6 -0
  174. package/out/utils/app-de-ui-action-util/handler/index.d.ts.map +1 -0
  175. package/out/utils/app-de-ui-action-util/handler/index.js +5 -0
  176. package/out/utils/app-de-ui-action-util/handler/ui-action-handler.d.ts +72 -0
  177. package/out/utils/app-de-ui-action-util/handler/ui-action-handler.d.ts.map +1 -0
  178. package/out/utils/app-de-ui-action-util/handler/ui-action-handler.js +166 -0
  179. package/out/utils/app-de-ui-action-util/handler/wf-withdraw-handler.d.ts +16 -0
  180. package/out/utils/app-de-ui-action-util/handler/wf-withdraw-handler.d.ts.map +1 -0
  181. package/out/utils/app-de-ui-action-util/handler/wf-withdraw-handler.js +27 -0
  182. package/out/utils/app-de-ui-action-util/index.d.ts +3 -0
  183. package/out/utils/app-de-ui-action-util/index.d.ts.map +1 -0
  184. package/out/utils/app-de-ui-action-util/index.js +2 -0
  185. package/out/utils/index.d.ts +4 -1
  186. package/out/utils/index.d.ts.map +1 -1
  187. package/out/utils/index.js +4 -1
  188. package/out/utils/nav-params/calc-nav-params.d.ts +29 -0
  189. package/out/utils/nav-params/calc-nav-params.d.ts.map +1 -0
  190. package/out/utils/nav-params/calc-nav-params.js +34 -0
  191. package/out/utils/nav-params/nav-params.d.ts +20 -1
  192. package/out/utils/nav-params/nav-params.d.ts.map +1 -1
  193. package/out/utils/nav-params/nav-params.js +58 -4
  194. package/out/utils/open-redirect-view/open-redirect-view.d.ts +54 -0
  195. package/out/utils/open-redirect-view/open-redirect-view.d.ts.map +1 -0
  196. package/out/utils/open-redirect-view/open-redirect-view.js +232 -0
  197. package/out/utils/wf-helper/wf-helper.d.ts +9 -0
  198. package/out/utils/wf-helper/wf-helper.d.ts.map +1 -0
  199. package/out/utils/wf-helper/wf-helper.js +14 -0
  200. package/out/view-logic/view-logic.d.ts.map +1 -1
  201. package/out/view-logic/view-logic.js +111 -32
  202. package/package.json +27 -16
  203. package/src/command/app/app-func/app-func.ts +27 -27
  204. package/src/command/app/open-app-view/open-app-view.ts +24 -41
  205. package/src/config/global-config.ts +22 -0
  206. package/src/index.ts +4 -1
  207. package/src/install.ts +11 -2
  208. package/src/interface/i-drawer-options/i-drawer-options.ts +28 -0
  209. package/src/interface/i-global-config/i-global-config.ts +65 -0
  210. package/src/interface/i-modal/i-modal.ts +8 -0
  211. package/src/interface/i-modal-data/i-modal-data.ts +1 -1
  212. package/src/interface/i-modal-options/i-modal-options.ts +44 -0
  213. package/src/interface/i-plugin-factory/i-plugin-factory.ts +66 -0
  214. package/src/interface/i-plugin-item/i-plugin-item.ts +27 -0
  215. package/src/interface/i-popover-options/i-popover-options.ts +85 -0
  216. package/src/interface/i-ui-action-handler/i-ui-action-handler.ts +32 -0
  217. package/src/interface/i-ui-action-result/i-ui-action-result.ts +20 -0
  218. package/src/interface/i-ui-logic-params/i-ui-logic-params.ts +31 -0
  219. package/src/interface/index.ts +15 -3
  220. package/src/interface/logic-scheduler/i-scheduler-logic.ts +58 -0
  221. package/src/interface/logic-scheduler/i-trigger-match-params.ts +18 -0
  222. package/src/interface/logic-scheduler/index.ts +7 -0
  223. package/src/interface/provider/i-ui-action-provider.ts +20 -0
  224. package/src/interface/provider/index.ts +1 -0
  225. package/src/interface/register/i-register.ts +8 -1
  226. package/src/interface/register/i-ui-action-register.ts +15 -0
  227. package/src/interface/register/index.ts +2 -0
  228. package/src/interface/util/i-loading-util/i-loading-util.ts +14 -0
  229. package/src/interface/util/i-modal-util/i-modal-util.ts +8 -0
  230. package/src/interface/util/i-open-view-util/i-open-view-util.ts +11 -11
  231. package/src/interface/util/i-overlay-container/i-overlay-container.ts +38 -0
  232. package/src/interface/util/i-overlay-controller/i-overlay-controller.ts +116 -0
  233. package/src/interface/util/i-overlay-popover-container/i-overlay-popover-container.ts +23 -0
  234. package/src/interface/util/index.ts +3 -0
  235. package/src/logic-scheduler/executor/logic-executor-factory.ts +48 -0
  236. package/src/logic-scheduler/executor/logic-executor.ts +43 -0
  237. package/src/logic-scheduler/executor/script-executor.ts +63 -0
  238. package/src/logic-scheduler/index.ts +41 -0
  239. package/src/logic-scheduler/logic-scheduler-center.ts +52 -0
  240. package/src/logic-scheduler/scheduler/control-logic-scheduler.ts +21 -0
  241. package/src/logic-scheduler/scheduler/logic-scheduler.ts +192 -0
  242. package/src/logic-scheduler/scheduler/view-logic-scheduler.ts +17 -0
  243. package/src/logic-scheduler/trigger/item-dyna-logic-trigger.ts +41 -0
  244. package/src/logic-scheduler/trigger/logic-trigger-factory.ts +48 -0
  245. package/src/logic-scheduler/trigger/logic-trigger.ts +77 -0
  246. package/src/plugin/index.ts +5 -0
  247. package/src/plugin/plugin-static-resource/plugin-static-resource.ts +80 -0
  248. package/src/plugin/remote-plugin-item/remote-plugin-item.ts +118 -0
  249. package/src/provider/index.ts +1 -0
  250. package/src/provider/ui-action/backend-ui-action-provider.ts +22 -0
  251. package/src/provider/ui-action/common-sys-ui-action-provider.ts +22 -0
  252. package/src/provider/ui-action/front-ui-action-provider.ts +22 -0
  253. package/src/provider/ui-action/index.ts +56 -0
  254. package/src/provider/ui-action/wf-withdraw-ui-action-provider.ts +22 -0
  255. package/src/register/index.ts +3 -0
  256. package/src/register/register-base.ts +27 -0
  257. package/src/register/register-center.ts +20 -0
  258. package/src/register/ui-action-register.ts +48 -0
  259. package/src/types.ts +39 -3
  260. package/src/utils/app-de-ui-action-util/app-de-ui-action-util.ts +4 -329
  261. package/src/utils/app-de-ui-action-util/handler/backend-ui-action-handler.ts +51 -0
  262. package/src/utils/app-de-ui-action-util/handler/common-sys-ui-action-handler.ts +124 -0
  263. package/src/utils/app-de-ui-action-util/handler/front-ui-action-handler.ts +69 -0
  264. package/src/utils/app-de-ui-action-util/handler/index.ts +5 -0
  265. package/src/utils/app-de-ui-action-util/handler/ui-action-handler.ts +253 -0
  266. package/src/utils/app-de-ui-action-util/handler/wf-withdraw-handler.ts +36 -0
  267. package/src/utils/app-de-ui-action-util/index.ts +2 -0
  268. package/src/utils/index.ts +7 -1
  269. package/src/utils/nav-params/calc-nav-params.ts +59 -0
  270. package/src/utils/nav-params/nav-params.ts +66 -5
  271. package/src/utils/open-redirect-view/open-redirect-view.ts +308 -0
  272. package/src/utils/wf-helper/wf-helper.ts +14 -0
  273. package/src/view-logic/view-logic.ts +123 -30
  274. package/LICENSE +0 -21
  275. package/out/interface/provider/i-editor-provider.d.ts +0 -38
  276. package/out/interface/provider/i-editor-provider.d.ts.map +0 -1
  277. package/out/interface/register/i-editor-register.d.ts +0 -23
  278. package/out/interface/register/i-editor-register.d.ts.map +0 -1
  279. package/out/register/register.d.ts +0 -20
  280. package/out/register/register.d.ts.map +0 -1
  281. package/out/register/register.js +0 -10
  282. package/src/interface/provider/i-editor-provider.ts +0 -44
  283. package/src/interface/register/i-editor-register.ts +0 -23
  284. package/src/register/register.ts +0 -20
  285. /package/out/interface/{provider/i-editor-provider.js → i-drawer-options/i-drawer-options.js} +0 -0
  286. /package/out/interface/{register/i-editor-register.js → i-global-config/i-global-config.js} +0 -0
@@ -0,0 +1,45 @@
1
+ import { IPSAppDEViewLogic, IPSControlLogic } from '@ibiz-template/model';
2
+ import { LogicExecutorFactory } from './executor/logic-executor-factory';
3
+ import { ControlLogicScheduler } from './scheduler/control-logic-scheduler';
4
+ import { ViewLogicScheduler } from './scheduler/view-logic-scheduler';
5
+ import { LogicTriggerFactory } from './trigger/logic-trigger-factory';
6
+ /**
7
+ * 调度器中心
8
+ * @author lxm
9
+ * @date 2023-06-25 03:30:21
10
+ * @export
11
+ * @class LogicSchedulerFactory
12
+ */
13
+ export declare class LogicSchedulerCenter {
14
+ /**
15
+ * 执行器工厂
16
+ * @author lxm
17
+ * @date 2023-06-25 06:41:42
18
+ * @type {LogicExecutorFactory}
19
+ */
20
+ executorFactory: LogicExecutorFactory;
21
+ /**
22
+ * 触发器工厂
23
+ * @author lxm
24
+ * @date 2023-06-25 06:44:12
25
+ * @type {LogicTriggerFactory}
26
+ */
27
+ triggerFactory: LogicTriggerFactory;
28
+ /**
29
+ * 创建视图逻辑调度器实例
30
+ * @author lxm
31
+ * @date 2023-06-25 03:41:43
32
+ * @param {IAppDEViewLogic} logics
33
+ * @return {*} {ViewLogicScheduler}
34
+ */
35
+ createViewScheduler(logics: IPSAppDEViewLogic[]): ViewLogicScheduler;
36
+ /**
37
+ * 创建部件逻辑调度器实例
38
+ * @author lxm
39
+ * @date 2023-06-25 03:48:30
40
+ * @param {IControlLogic} logics
41
+ * @return {*} {ControlLogicScheduler}
42
+ */
43
+ createControlScheduler(logics: IPSControlLogic[]): ControlLogicScheduler;
44
+ }
45
+ //# sourceMappingURL=logic-scheduler-center.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic-scheduler-center.d.ts","sourceRoot":"","sources":["../../src/logic-scheduler/logic-scheduler-center.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE;;;;;;GAMG;AACH,qBAAa,oBAAoB;IAC/B;;;;;OAKG;IACH,eAAe,EAAE,oBAAoB,CAA8B;IAEnE;;;;;OAKG;IACH,cAAc,EAAE,mBAAmB,CAA6B;IAEhE;;;;;;OAMG;IACH,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,EAAE,GAAG,kBAAkB;IAIpE;;;;;;OAMG;IACH,sBAAsB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,qBAAqB;CAGzE"}
@@ -0,0 +1,49 @@
1
+ import { LogicExecutorFactory } from './executor/logic-executor-factory';
2
+ import { ControlLogicScheduler } from './scheduler/control-logic-scheduler';
3
+ import { ViewLogicScheduler } from './scheduler/view-logic-scheduler';
4
+ import { LogicTriggerFactory } from './trigger/logic-trigger-factory';
5
+ /**
6
+ * 调度器中心
7
+ * @author lxm
8
+ * @date 2023-06-25 03:30:21
9
+ * @export
10
+ * @class LogicSchedulerFactory
11
+ */
12
+ export class LogicSchedulerCenter {
13
+ constructor() {
14
+ /**
15
+ * 执行器工厂
16
+ * @author lxm
17
+ * @date 2023-06-25 06:41:42
18
+ * @type {LogicExecutorFactory}
19
+ */
20
+ this.executorFactory = new LogicExecutorFactory();
21
+ /**
22
+ * 触发器工厂
23
+ * @author lxm
24
+ * @date 2023-06-25 06:44:12
25
+ * @type {LogicTriggerFactory}
26
+ */
27
+ this.triggerFactory = new LogicTriggerFactory();
28
+ }
29
+ /**
30
+ * 创建视图逻辑调度器实例
31
+ * @author lxm
32
+ * @date 2023-06-25 03:41:43
33
+ * @param {IAppDEViewLogic} logics
34
+ * @return {*} {ViewLogicScheduler}
35
+ */
36
+ createViewScheduler(logics) {
37
+ return new ViewLogicScheduler(logics);
38
+ }
39
+ /**
40
+ * 创建部件逻辑调度器实例
41
+ * @author lxm
42
+ * @date 2023-06-25 03:48:30
43
+ * @param {IControlLogic} logics
44
+ * @return {*} {ControlLogicScheduler}
45
+ */
46
+ createControlScheduler(logics) {
47
+ return new ControlLogicScheduler(logics);
48
+ }
49
+ }
@@ -0,0 +1,14 @@
1
+ import { IPSControlLogic } from '@ibiz-template/model';
2
+ import { LogicScheduler } from './logic-scheduler';
3
+ /**
4
+ * 部件逻辑调度器实例类
5
+ * @author lxm
6
+ * @date 2023-06-25 03:36:32
7
+ * @export
8
+ * @class ViewLogicScheduler
9
+ * @extends {LogicScheduler}
10
+ */
11
+ export declare class ControlLogicScheduler extends LogicScheduler {
12
+ constructor(logics: IPSControlLogic[]);
13
+ }
14
+ //# sourceMappingURL=control-logic-scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-logic-scheduler.d.ts","sourceRoot":"","sources":["../../../src/logic-scheduler/scheduler/control-logic-scheduler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;;;;;;GAOG;AACH,qBAAa,qBAAsB,SAAQ,cAAc;gBAC3C,MAAM,EAAE,eAAe,EAAE;CAOtC"}
@@ -0,0 +1,16 @@
1
+ import { LogicScheduler } from './logic-scheduler';
2
+ /**
3
+ * 部件逻辑调度器实例类
4
+ * @author lxm
5
+ * @date 2023-06-25 03:36:32
6
+ * @export
7
+ * @class ViewLogicScheduler
8
+ * @extends {LogicScheduler}
9
+ */
10
+ export class ControlLogicScheduler extends LogicScheduler {
11
+ constructor(logics) {
12
+ // 部件逻辑把APPVIEWENGINE排除掉。
13
+ const filterLogics = logics.filter(item => item.triggerType !== 'APPVIEWENGINE');
14
+ super(filterLogics);
15
+ }
16
+ }
@@ -0,0 +1,105 @@
1
+ import type { IUILogicParams, ISchedulerLogic, ITriggerMatchParams } from '../../interface';
2
+ import { LogicExecutor } from '../executor/logic-executor';
3
+ import { LogicTrigger } from '../trigger/logic-trigger';
4
+ /**
5
+ * 逻辑调度器实例类
6
+ * @author lxm
7
+ * @date 2023-06-25 03:35:46
8
+ * @export
9
+ * @class LogicScheduler
10
+ */
11
+ export declare class LogicScheduler {
12
+ logics: ISchedulerLogic[];
13
+ triggers: Map<string, LogicTrigger>;
14
+ executors: Map<string, LogicExecutor>;
15
+ constructor(logics: ISchedulerLogic[]);
16
+ /**
17
+ * 默认参数回调
18
+ * @author lxm
19
+ * @date 2023-06-25 08:25:51
20
+ */
21
+ defaultParamsCb?: () => IUILogicParams;
22
+ /**
23
+ * 获取执行参数,把默认参数和调用参数合并
24
+ * @author lxm
25
+ * @date 2023-06-25 08:28:34
26
+ * @param {IData} args
27
+ * @return {*}
28
+ */
29
+ getExecuteParams(executeParams: Partial<IUILogicParams>): IUILogicParams;
30
+ /**
31
+ * 创建触发器实例
32
+ * @author lxm
33
+ * @date 2023-06-26 02:33:35
34
+ * @protected
35
+ * @param {ISchedulerLogic} logic
36
+ * @return {*} {LogicTrigger}
37
+ */
38
+ protected createTrigger(logic: ISchedulerLogic): LogicTrigger;
39
+ /**
40
+ * 创建执行器实例
41
+ * @author lxm
42
+ * @date 2023-06-26 02:33:52
43
+ * @protected
44
+ * @param {ISchedulerLogic} logic
45
+ * @return {*} {LogicExecutor}
46
+ */
47
+ protected createExecutor(logic: ISchedulerLogic): LogicExecutor;
48
+ /**
49
+ * 获取匹配的触发器。
50
+ * @author lxm
51
+ * @date 2023-06-26 02:32:24
52
+ * @param {ITriggerMatchParams} matchParams
53
+ * @return {*} {LogicTrigger[]}
54
+ */
55
+ protected getMatchTriggers(matchParams: ITriggerMatchParams): LogicTrigger[];
56
+ /**
57
+ * 找到匹配的触发器并执行对应的执行器,并返回结果。
58
+ * 返回undefined表示没有匹配的触发器。
59
+ * @author lxm
60
+ * @date 2023-06-26 02:30:24
61
+ * @param {ITriggerMatchParams} matchParams 匹配参数
62
+ * @param {Partial<IUILogicParams>} [executeParams={}] 执行参数
63
+ * @return {*} {(any[] | undefined)}
64
+ */
65
+ triggerAndExecute(matchParams: ITriggerMatchParams, executeParams?: Partial<IUILogicParams>): any[] | undefined;
66
+ /**
67
+ * 预定义项的动态逻辑
68
+ * @author lxm
69
+ * @date 2023-06-26 02:29:08
70
+ * @protected
71
+ * @param {string} itemName 子项名称
72
+ * @param {('ITEMVISIBLE' | 'ITEMENABLE' | 'ITEMBLANK')} triggerType 预定义逻辑类型
73
+ * @param {Partial<IUILogicParams>} executeParams 执行参数
74
+ * @return {*} {(boolean | undefined)}
75
+ */
76
+ protected triggerItemDynaLogic(itemName: string, triggerType: 'ITEMVISIBLE' | 'ITEMENABLE' | 'ITEMBLANK', executeParams: Partial<IUILogicParams>): boolean | undefined;
77
+ /**
78
+ * 预定义项显示逻辑
79
+ * @author lxm
80
+ * @date 2023-06-26 02:26:36
81
+ * @param {string} itemName 子项名称
82
+ * @param {Partial<IUILogicParams>} executeParams 执行参数
83
+ * @return {*} {(boolean | undefined)}
84
+ */
85
+ triggerItemVisible(itemName: string, executeParams: Partial<IUILogicParams>): boolean | undefined;
86
+ /**
87
+ * 预定义项启用逻辑
88
+ * @author lxm
89
+ * @date 2023-06-26 02:26:35
90
+ * @param {string} itemName 子项名称
91
+ * @param {Partial<IUILogicParams>} executeParams 执行参数
92
+ * @return {*} {(boolean | undefined)}
93
+ */
94
+ triggerItemEnable(itemName: string, executeParams: Partial<IUILogicParams>): boolean | undefined;
95
+ /**
96
+ * 预定义项空输入逻辑
97
+ * @author lxm
98
+ * @date 2023-06-26 02:26:33
99
+ * @param {string} itemName 子项名称
100
+ * @param {Partial<IUILogicParams>} executeParams 执行参数
101
+ * @return {*} {(boolean | undefined)}
102
+ */
103
+ triggerItemBlank(itemName: string, executeParams: Partial<IUILogicParams>): boolean | undefined;
104
+ }
105
+ //# sourceMappingURL=logic-scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic-scheduler.d.ts","sourceRoot":"","sources":["../../../src/logic-scheduler/scheduler/logic-scheduler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD;;;;;;GAMG;AACH,qBAAa,cAAc;IACzB,MAAM,EAAE,eAAe,EAAE,CAAC;IAE1B,QAAQ,4BAAmC;IAE3C,SAAS,6BAAoC;gBAEjC,MAAM,EAAE,eAAe,EAAE;IAerC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,cAAc,CAAC;IAEvC;;;;;;OAMG;IACH,gBAAgB,CAAC,aAAa,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc;IAQxE;;;;;;;OAOG;IACH,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,eAAe,GAAG,YAAY;IAI7D;;;;;;;OAOG;IACH,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,aAAa;IAI/D;;;;;;OAMG;IACH,SAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,mBAAmB,GAAG,YAAY,EAAE;IAU5E;;;;;;;;OAQG;IACH,iBAAiB,CACf,WAAW,EAAE,mBAAmB,EAChC,aAAa,GAAE,OAAO,CAAC,cAAc,CAAM,GAE1C,GAAG,EAAE,GAAG,SAAS;IAWpB;;;;;;;;;OASG;IACH,SAAS,CAAC,oBAAoB,CAC5B,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,aAAa,GAAG,YAAY,GAAG,WAAW,EACvD,aAAa,EAAE,OAAO,CAAC,cAAc,CAAC,GACrC,OAAO,GAAG,SAAS;IAQtB;;;;;;;OAOG;IACH,kBAAkB,CAChB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,OAAO,CAAC,cAAc,CAAC,GACrC,OAAO,GAAG,SAAS;IAItB;;;;;;;OAOG;IACH,iBAAiB,CACf,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,OAAO,CAAC,cAAc,CAAC,GACrC,OAAO,GAAG,SAAS;IAItB;;;;;;;OAOG;IACH,gBAAgB,CACd,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,OAAO,CAAC,cAAc,CAAC,GACrC,OAAO,GAAG,SAAS;CAGvB"}
@@ -0,0 +1,148 @@
1
+ import { mergeLeft } from 'ramda';
2
+ /**
3
+ * 逻辑调度器实例类
4
+ * @author lxm
5
+ * @date 2023-06-25 03:35:46
6
+ * @export
7
+ * @class LogicScheduler
8
+ */
9
+ export class LogicScheduler {
10
+ constructor(logics) {
11
+ this.triggers = new Map();
12
+ this.executors = new Map();
13
+ this.logics = logics;
14
+ logics.forEach(logic => {
15
+ try {
16
+ const executor = this.createExecutor(logic);
17
+ this.executors.set(logic.id, executor);
18
+ const trigger = this.createTrigger(logic);
19
+ this.triggers.set(logic.id, trigger);
20
+ trigger.bindExecutor(executor);
21
+ }
22
+ catch (error) {
23
+ ibiz.log.error(error.message);
24
+ }
25
+ });
26
+ }
27
+ /**
28
+ * 获取执行参数,把默认参数和调用参数合并
29
+ * @author lxm
30
+ * @date 2023-06-25 08:28:34
31
+ * @param {IData} args
32
+ * @return {*}
33
+ */
34
+ getExecuteParams(executeParams) {
35
+ let defaultParams = {};
36
+ if (this.defaultParamsCb) {
37
+ defaultParams = this.defaultParamsCb();
38
+ }
39
+ return mergeLeft(executeParams, defaultParams);
40
+ }
41
+ /**
42
+ * 创建触发器实例
43
+ * @author lxm
44
+ * @date 2023-06-26 02:33:35
45
+ * @protected
46
+ * @param {ISchedulerLogic} logic
47
+ * @return {*} {LogicTrigger}
48
+ */
49
+ createTrigger(logic) {
50
+ return ibiz.scheduler.triggerFactory.createTrigger(logic);
51
+ }
52
+ /**
53
+ * 创建执行器实例
54
+ * @author lxm
55
+ * @date 2023-06-26 02:33:52
56
+ * @protected
57
+ * @param {ISchedulerLogic} logic
58
+ * @return {*} {LogicExecutor}
59
+ */
60
+ createExecutor(logic) {
61
+ return ibiz.scheduler.executorFactory.createExecutor(logic);
62
+ }
63
+ /**
64
+ * 获取匹配的触发器。
65
+ * @author lxm
66
+ * @date 2023-06-26 02:32:24
67
+ * @param {ITriggerMatchParams} matchParams
68
+ * @return {*} {LogicTrigger[]}
69
+ */
70
+ getMatchTriggers(matchParams) {
71
+ const triggers = [];
72
+ this.triggers.forEach(trigger => {
73
+ if (trigger.match(matchParams)) {
74
+ triggers.push(trigger);
75
+ }
76
+ });
77
+ return triggers;
78
+ }
79
+ /**
80
+ * 找到匹配的触发器并执行对应的执行器,并返回结果。
81
+ * 返回undefined表示没有匹配的触发器。
82
+ * @author lxm
83
+ * @date 2023-06-26 02:30:24
84
+ * @param {ITriggerMatchParams} matchParams 匹配参数
85
+ * @param {Partial<IUILogicParams>} [executeParams={}] 执行参数
86
+ * @return {*} {(any[] | undefined)}
87
+ */
88
+ triggerAndExecute(matchParams, executeParams = {}) {
89
+ const triggers = this.getMatchTriggers(matchParams);
90
+ if (triggers.length > 0) {
91
+ const params = this.getExecuteParams(executeParams);
92
+ const result = triggers.map(trigger => {
93
+ return trigger.execute(params);
94
+ });
95
+ return result;
96
+ }
97
+ }
98
+ /**
99
+ * 预定义项的动态逻辑
100
+ * @author lxm
101
+ * @date 2023-06-26 02:29:08
102
+ * @protected
103
+ * @param {string} itemName 子项名称
104
+ * @param {('ITEMVISIBLE' | 'ITEMENABLE' | 'ITEMBLANK')} triggerType 预定义逻辑类型
105
+ * @param {Partial<IUILogicParams>} executeParams 执行参数
106
+ * @return {*} {(boolean | undefined)}
107
+ */
108
+ triggerItemDynaLogic(itemName, triggerType, executeParams) {
109
+ const matchParams = { itemName, triggerType };
110
+ const result = this.triggerAndExecute(matchParams, executeParams);
111
+ if (result === null || result === void 0 ? void 0 : result.length) {
112
+ return result.pop();
113
+ }
114
+ }
115
+ /**
116
+ * 预定义项显示逻辑
117
+ * @author lxm
118
+ * @date 2023-06-26 02:26:36
119
+ * @param {string} itemName 子项名称
120
+ * @param {Partial<IUILogicParams>} executeParams 执行参数
121
+ * @return {*} {(boolean | undefined)}
122
+ */
123
+ triggerItemVisible(itemName, executeParams) {
124
+ return this.triggerItemDynaLogic(itemName, 'ITEMVISIBLE', executeParams);
125
+ }
126
+ /**
127
+ * 预定义项启用逻辑
128
+ * @author lxm
129
+ * @date 2023-06-26 02:26:35
130
+ * @param {string} itemName 子项名称
131
+ * @param {Partial<IUILogicParams>} executeParams 执行参数
132
+ * @return {*} {(boolean | undefined)}
133
+ */
134
+ triggerItemEnable(itemName, executeParams) {
135
+ return this.triggerItemDynaLogic(itemName, 'ITEMENABLE', executeParams);
136
+ }
137
+ /**
138
+ * 预定义项空输入逻辑
139
+ * @author lxm
140
+ * @date 2023-06-26 02:26:33
141
+ * @param {string} itemName 子项名称
142
+ * @param {Partial<IUILogicParams>} executeParams 执行参数
143
+ * @return {*} {(boolean | undefined)}
144
+ */
145
+ triggerItemBlank(itemName, executeParams) {
146
+ return this.triggerItemDynaLogic(itemName, 'ITEMBLANK', executeParams);
147
+ }
148
+ }
@@ -0,0 +1,14 @@
1
+ import { IPSAppDEViewLogic } from '@ibiz-template/model';
2
+ import { LogicScheduler } from './logic-scheduler';
3
+ /**
4
+ * 视图逻辑调度器实例类
5
+ * @author lxm
6
+ * @date 2023-06-25 03:36:32
7
+ * @export
8
+ * @class ViewLogicScheduler
9
+ * @extends {LogicScheduler}
10
+ */
11
+ export declare class ViewLogicScheduler extends LogicScheduler {
12
+ constructor(logics: IPSAppDEViewLogic[]);
13
+ }
14
+ //# sourceMappingURL=view-logic-scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-logic-scheduler.d.ts","sourceRoot":"","sources":["../../../src/logic-scheduler/scheduler/view-logic-scheduler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;;;;;;GAOG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;gBACxC,MAAM,EAAE,iBAAiB,EAAE;CAGxC"}
@@ -0,0 +1,14 @@
1
+ import { LogicScheduler } from './logic-scheduler';
2
+ /**
3
+ * 视图逻辑调度器实例类
4
+ * @author lxm
5
+ * @date 2023-06-25 03:36:32
6
+ * @export
7
+ * @class ViewLogicScheduler
8
+ * @extends {LogicScheduler}
9
+ */
10
+ export class ViewLogicScheduler extends LogicScheduler {
11
+ constructor(logics) {
12
+ super(logics);
13
+ }
14
+ }
@@ -0,0 +1,12 @@
1
+ import type { ITriggerMatchParams, IUILogicParams } from '../../interface';
2
+ import { LogicExecutor } from '../executor/logic-executor';
3
+ import { ScriptExecutor } from '../executor/script-executor';
4
+ import { LogicTrigger } from './logic-trigger';
5
+ export declare class ItemDynaLogicTrigger extends LogicTrigger {
6
+ type: 'ITEMVISIBLE' | 'ITEMENABLE' | 'ITEMBLANK';
7
+ executor: ScriptExecutor;
8
+ bindExecutor(executor: LogicExecutor): void;
9
+ match(matchParams: ITriggerMatchParams): boolean;
10
+ execute(executeParams: IUILogicParams): boolean;
11
+ }
12
+ //# sourceMappingURL=item-dyna-logic-trigger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item-dyna-logic-trigger.d.ts","sourceRoot":"","sources":["../../../src/logic-scheduler/trigger/item-dyna-logic-trigger.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,qBAAa,oBAAqB,SAAQ,YAAY;IAC5C,IAAI,EAAE,aAAa,GAAG,YAAY,GAAG,WAAW,CAAC;IAEjD,QAAQ,EAAE,cAAc,CAAC;IAEjC,YAAY,CAAC,QAAQ,EAAE,aAAa;IAiBpC,KAAK,CAAC,WAAW,EAAE,mBAAmB,GAAG,OAAO;IAKhD,OAAO,CAAC,aAAa,EAAE,cAAc,GAAG,OAAO;CAOhD"}
@@ -0,0 +1,26 @@
1
+ import { RuntimeError } from '@ibiz-template/core';
2
+ import { LogicTrigger } from './logic-trigger';
3
+ export class ItemDynaLogicTrigger extends LogicTrigger {
4
+ bindExecutor(executor) {
5
+ super.bindExecutor(executor);
6
+ if (this.executor.type !== 'SCRIPT') {
7
+ throw new RuntimeError(`预定义逻辑类型${this.type}的触发器类型只能是脚本`);
8
+ }
9
+ this.executor.isRowReturn = true;
10
+ this.executor.init(['context', 'viewparams', 'data', 'env'], executeParams => {
11
+ const { context, params, data } = executeParams;
12
+ return [context, params, (data === null || data === void 0 ? void 0 : data[0]) || {}, ibiz.env];
13
+ });
14
+ }
15
+ match(matchParams) {
16
+ const superResult = super.match(matchParams);
17
+ return superResult && matchParams.itemName === this.logic.itemName;
18
+ }
19
+ execute(executeParams) {
20
+ const result = this.executor.execute(executeParams);
21
+ if (typeof result === 'boolean') {
22
+ return result;
23
+ }
24
+ throw new RuntimeError(`${this.logic.id}逻辑返回值不是布尔值`);
25
+ }
26
+ }
@@ -0,0 +1,34 @@
1
+ import type { ISchedulerLogic } from '../../interface';
2
+ import { LogicTrigger } from './logic-trigger';
3
+ /**
4
+ * 逻辑触发器工厂
5
+ * @author lxm
6
+ * @date 2023-06-25 06:37:54
7
+ * @export
8
+ * @class LogicTriggerFactory
9
+ */
10
+ export declare class LogicTriggerFactory {
11
+ /**
12
+ * 构造回调方法集合
13
+ * @author lxm
14
+ * @date 2023-06-25 06:53:31
15
+ */
16
+ constructorMap: Map<string, (logic: ISchedulerLogic) => LogicTrigger>;
17
+ /**
18
+ * 注册
19
+ * @author lxm
20
+ * @date 2023-06-25 06:54:17
21
+ * @param {string} key 注册标识
22
+ * @param {(logic: ISchedulerLogic) => LogicTrigger} callback
23
+ */
24
+ register(key: string, callback: (logic: ISchedulerLogic) => LogicTrigger): void;
25
+ /**
26
+ * 创建触发器实例
27
+ * @author lxm
28
+ * @date 2023-06-25 06:56:32
29
+ * @param {ISchedulerLogic} logic
30
+ * @return {*}
31
+ */
32
+ createTrigger(logic: ISchedulerLogic): LogicTrigger;
33
+ }
34
+ //# sourceMappingURL=logic-trigger-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic-trigger-factory.d.ts","sourceRoot":"","sources":["../../../src/logic-scheduler/trigger/logic-trigger-factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;;;;;GAMG;AACH,qBAAa,mBAAmB;IAC9B;;;;OAIG;IACH,cAAc,sBAA2B,eAAe,KAAK,YAAY,EAAI;IAE7E;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,YAAY;IAIxE;;;;;;OAMG;IACH,aAAa,CAAC,KAAK,EAAE,eAAe;CAUrC"}
@@ -0,0 +1,42 @@
1
+ import { UnsupportedModelError } from '@ibiz-template/model';
2
+ /**
3
+ * 逻辑触发器工厂
4
+ * @author lxm
5
+ * @date 2023-06-25 06:37:54
6
+ * @export
7
+ * @class LogicTriggerFactory
8
+ */
9
+ export class LogicTriggerFactory {
10
+ constructor() {
11
+ /**
12
+ * 构造回调方法集合
13
+ * @author lxm
14
+ * @date 2023-06-25 06:53:31
15
+ */
16
+ this.constructorMap = new Map();
17
+ }
18
+ /**
19
+ * 注册
20
+ * @author lxm
21
+ * @date 2023-06-25 06:54:17
22
+ * @param {string} key 注册标识
23
+ * @param {(logic: ISchedulerLogic) => LogicTrigger} callback
24
+ */
25
+ register(key, callback) {
26
+ this.constructorMap.set(key, callback);
27
+ }
28
+ /**
29
+ * 创建触发器实例
30
+ * @author lxm
31
+ * @date 2023-06-25 06:56:32
32
+ * @param {ISchedulerLogic} logic
33
+ * @return {*}
34
+ */
35
+ createTrigger(logic) {
36
+ const constructor = this.constructorMap.get(logic.triggerType);
37
+ if (!constructor) {
38
+ throw new UnsupportedModelError(logic, `触发器类型 ${logic.triggerType} 暂未支持!`);
39
+ }
40
+ return constructor(logic);
41
+ }
42
+ }
@@ -0,0 +1,55 @@
1
+ import type { IUILogicParams, ISchedulerLogic, ITriggerMatchParams, TriggerType } from '../../interface';
2
+ import { LogicExecutor } from '../executor/logic-executor';
3
+ /**
4
+ * 逻辑触发器
5
+ * @author lxm
6
+ * @date 2023-06-25 06:09:22
7
+ * @export
8
+ * @class LogicTrigger
9
+ */
10
+ export declare class LogicTrigger {
11
+ protected logic: ISchedulerLogic;
12
+ /**
13
+ *
14
+ * @author lxm
15
+ * @date 2023-06-25 07:32:04
16
+ */
17
+ type: TriggerType;
18
+ /**
19
+ * @author lxm
20
+ * @date 2023-06-25 07:32:57
21
+ * @param {ISchedulerLogic} logic 逻辑
22
+ */
23
+ constructor(logic: ISchedulerLogic);
24
+ /**
25
+ * 执行器
26
+ * @author lxm
27
+ * @date 2023-06-25 07:25:05
28
+ * @type {LogicExecutor}
29
+ */
30
+ executor?: LogicExecutor;
31
+ /**
32
+ * 绑定执行器
33
+ * @author lxm
34
+ * @date 2023-06-25 07:25:13
35
+ * @param {LogicExecutor} executor
36
+ */
37
+ bindExecutor(executor: LogicExecutor): void;
38
+ /**
39
+ * 匹配触发器,返回true表示该触发器满足触发条件。
40
+ * @author lxm
41
+ * @date 2023-06-25 07:49:00
42
+ * @param {IData} _args
43
+ * @return {*} {boolean}
44
+ */
45
+ match(matchParams: ITriggerMatchParams): boolean;
46
+ /**
47
+ * 执行对应的执行器
48
+ * @author lxm
49
+ * @date 2023-06-26 01:45:42
50
+ * @param {Partial<IUILogicParams>} executeParams
51
+ * @return {*}
52
+ */
53
+ execute(executeParams: IUILogicParams): any;
54
+ }
55
+ //# sourceMappingURL=logic-trigger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic-trigger.d.ts","sourceRoot":"","sources":["../../../src/logic-scheduler/trigger/logic-trigger.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,WAAW,EACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D;;;;;;GAMG;AACH,qBAAa,YAAY;IAaX,SAAS,CAAC,KAAK,EAAE,eAAe;IAZ5C;;;;OAIG;IACH,IAAI,EAAE,WAAW,CAAC;IAElB;;;;OAIG;gBACmB,KAAK,EAAE,eAAe;IAI5C;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;IAEzB;;;;;OAKG;IACH,YAAY,CAAC,QAAQ,EAAE,aAAa;IAIpC;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,EAAE,mBAAmB,GAAG,OAAO;IAIhD;;;;;;OAMG;IAEH,OAAO,CAAC,aAAa,EAAE,cAAc,GAAG,GAAG;CAM5C"}
@@ -0,0 +1,52 @@
1
+ import { RuntimeError } from '@ibiz-template/core';
2
+ /**
3
+ * 逻辑触发器
4
+ * @author lxm
5
+ * @date 2023-06-25 06:09:22
6
+ * @export
7
+ * @class LogicTrigger
8
+ */
9
+ export class LogicTrigger {
10
+ /**
11
+ * @author lxm
12
+ * @date 2023-06-25 07:32:57
13
+ * @param {ISchedulerLogic} logic 逻辑
14
+ */
15
+ constructor(logic) {
16
+ this.logic = logic;
17
+ this.type = logic.triggerType;
18
+ }
19
+ /**
20
+ * 绑定执行器
21
+ * @author lxm
22
+ * @date 2023-06-25 07:25:13
23
+ * @param {LogicExecutor} executor
24
+ */
25
+ bindExecutor(executor) {
26
+ this.executor = executor;
27
+ }
28
+ /**
29
+ * 匹配触发器,返回true表示该触发器满足触发条件。
30
+ * @author lxm
31
+ * @date 2023-06-25 07:49:00
32
+ * @param {IData} _args
33
+ * @return {*} {boolean}
34
+ */
35
+ match(matchParams) {
36
+ return matchParams.triggerType === this.type;
37
+ }
38
+ /**
39
+ * 执行对应的执行器
40
+ * @author lxm
41
+ * @date 2023-06-26 01:45:42
42
+ * @param {Partial<IUILogicParams>} executeParams
43
+ * @return {*}
44
+ */
45
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
46
+ execute(executeParams) {
47
+ if (this.executor) {
48
+ return this.executor.execute(executeParams);
49
+ }
50
+ throw new RuntimeError(`${this.logic.id}没有绑定executor`);
51
+ }
52
+ }
@@ -0,0 +1,3 @@
1
+ export { PluginStaticResource } from './plugin-static-resource/plugin-static-resource';
2
+ export { RemotePluginConfig, RemotePluginItem, } from './remote-plugin-item/remote-plugin-item';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iDAAiD,CAAC;AACvF,OAAO,EACL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,yCAAyC,CAAC"}