@ibiz-template/runtime 0.0.4-beta.5 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2195) hide show
  1. package/dist/index.esm.js +7584 -3249
  2. package/dist/index.system.min.js +2 -1
  3. package/dist/index.system.min.js.map +1 -0
  4. package/out/app-hub.d.ts +8 -3
  5. package/out/app-hub.d.ts.map +1 -1
  6. package/out/app-hub.js +7 -22
  7. package/out/application.d.ts +27 -1
  8. package/out/application.d.ts.map +1 -1
  9. package/out/application.js +55 -4
  10. package/out/command/app/app-func/app-func.d.ts.map +1 -1
  11. package/out/command/app/app-func/app-func.js +18 -21
  12. package/out/command/app/open-app-view/open-app-view.d.ts +11 -12
  13. package/out/command/app/open-app-view/open-app-view.d.ts.map +1 -1
  14. package/out/command/app/open-app-view/open-app-view.js +24 -12
  15. package/out/config/global-config.d.ts +5 -6
  16. package/out/config/global-config.d.ts.map +1 -1
  17. package/out/config/global-config.js +17 -5
  18. package/out/constant/control-type.d.ts +5 -1
  19. package/out/constant/control-type.d.ts.map +1 -1
  20. package/out/constant/control-type.js +4 -0
  21. package/out/constant/studio-event.js +3 -6
  22. package/out/constant/sys-uiaction-tag.d.ts +77 -1
  23. package/out/constant/sys-uiaction-tag.d.ts.map +1 -1
  24. package/out/constant/sys-uiaction-tag.js +78 -0
  25. package/out/controller/common/base.controller.d.ts +33 -15
  26. package/out/controller/common/base.controller.d.ts.map +1 -1
  27. package/out/controller/common/base.controller.js +46 -21
  28. package/out/controller/common/control/control.controller.d.ts +63 -38
  29. package/out/controller/common/control/control.controller.d.ts.map +1 -1
  30. package/out/controller/common/control/control.controller.js +95 -20
  31. package/out/controller/common/control/index.d.ts +2 -2
  32. package/out/controller/common/control/index.d.ts.map +1 -1
  33. package/out/controller/common/control/index.js +2 -2
  34. package/out/controller/common/control/md-control.controller.d.ts +128 -0
  35. package/out/controller/common/control/md-control.controller.d.ts.map +1 -0
  36. package/out/controller/common/control/md-control.controller.js +327 -0
  37. package/out/controller/common/editor/code-list-editor.controller.d.ts +22 -0
  38. package/out/controller/common/editor/code-list-editor.controller.d.ts.map +1 -0
  39. package/out/controller/common/editor/code-list-editor.controller.js +29 -0
  40. package/out/controller/common/editor/editor.controller.d.ts +24 -6
  41. package/out/controller/common/editor/editor.controller.d.ts.map +1 -1
  42. package/out/controller/common/editor/editor.controller.js +32 -2
  43. package/out/controller/common/index.d.ts +5 -3
  44. package/out/controller/common/index.d.ts.map +1 -1
  45. package/out/controller/common/index.js +5 -3
  46. package/out/controller/common/view/mob-view.controller.d.ts +16 -0
  47. package/out/controller/common/view/mob-view.controller.d.ts.map +1 -0
  48. package/out/controller/common/view/mob-view.controller.js +13 -0
  49. package/out/controller/common/view/view.controller.d.ts +82 -11
  50. package/out/controller/common/view/view.controller.d.ts.map +1 -1
  51. package/out/controller/common/view/view.controller.js +174 -28
  52. package/out/controller/constant/control/form/form-notify.state.d.ts +6 -0
  53. package/out/controller/constant/control/form/form-notify.state.d.ts.map +1 -0
  54. package/out/controller/constant/control/grid/grid-notify.state.d.ts +6 -0
  55. package/out/controller/constant/control/grid/grid-notify.state.d.ts.map +1 -0
  56. package/out/controller/constant/control/index.d.ts +3 -3
  57. package/out/controller/constant/control/index.js +3 -3
  58. package/out/controller/constant/control/panel/panel-notify.state.d.ts +6 -0
  59. package/out/controller/constant/control/panel/panel-notify.state.d.ts.map +1 -0
  60. package/out/controller/ctx/ctx.d.ts +28 -13
  61. package/out/controller/ctx/ctx.d.ts.map +1 -1
  62. package/out/controller/ctx/ctx.js +27 -4
  63. package/out/controller/ctx/ctx.state.d.ts +3 -0
  64. package/out/controller/ctx/ctx.state.d.ts.map +1 -0
  65. package/out/controller/ctx/index.d.ts +1 -1
  66. package/out/controller/ctx/index.js +1 -1
  67. package/out/controller/index.d.ts +0 -2
  68. package/out/controller/index.d.ts.map +1 -1
  69. package/out/controller/index.js +0 -2
  70. package/out/controller/utils/button-state/button-container.state.d.ts +19 -0
  71. package/out/controller/utils/button-state/button-container.state.d.ts.map +1 -0
  72. package/out/controller/utils/button-state/button-container.state.js +55 -0
  73. package/out/controller/utils/button-state/index.d.ts +2 -2
  74. package/out/controller/utils/button-state/index.js +2 -2
  75. package/out/controller/utils/button-state/ui-action-button.state.d.ts +68 -0
  76. package/out/controller/utils/button-state/ui-action-button.state.d.ts.map +1 -0
  77. package/out/controller/utils/button-state/ui-action-button.state.js +113 -0
  78. package/out/controller/utils/counter/counter.d.ts.map +1 -1
  79. package/out/controller/utils/counter/mounted-counter.d.ts.map +1 -1
  80. package/out/controller/utils/event/controller-event.d.ts +16 -5
  81. package/out/controller/utils/event/controller-event.d.ts.map +1 -1
  82. package/out/controller/utils/event/qx-event-ex.d.ts.map +1 -1
  83. package/out/controller/utils/index.d.ts +3 -1
  84. package/out/controller/utils/index.d.ts.map +1 -1
  85. package/out/controller/utils/index.js +3 -1
  86. package/out/controller/utils/loading/loading.state.d.ts +42 -0
  87. package/out/controller/utils/loading/loading.state.d.ts.map +1 -0
  88. package/out/controller/utils/util/util.d.ts +25 -0
  89. package/out/controller/utils/util/util.d.ts.map +1 -0
  90. package/out/controller/utils/util/util.js +36 -0
  91. package/out/controller/utils/value-rule/value-rule.d.ts +14 -0
  92. package/out/controller/utils/value-rule/value-rule.d.ts.map +1 -0
  93. package/out/controller/utils/value-rule/value-rule.js +74 -0
  94. package/out/de-logic/de-logic-context.d.ts +73 -0
  95. package/out/de-logic/de-logic-context.d.ts.map +1 -0
  96. package/out/de-logic/de-logic-context.js +79 -0
  97. package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.d.ts +11 -0
  98. package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.d.ts.map +1 -0
  99. package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.js +10 -0
  100. package/out/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.d.ts +58 -0
  101. package/out/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.d.ts.map +1 -0
  102. package/out/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.js +79 -0
  103. package/out/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.d.ts +60 -0
  104. package/out/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.d.ts.map +1 -0
  105. package/out/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.js +79 -0
  106. package/out/de-logic/de-logic-link/de-logic-link.d.ts +58 -0
  107. package/out/de-logic/de-logic-link/de-logic-link.d.ts.map +1 -0
  108. package/out/de-logic/de-logic-link/de-logic-link.js +66 -0
  109. package/out/de-logic/de-logic-node/append-param-node/append-param-node.d.ts +17 -0
  110. package/out/de-logic/de-logic-node/append-param-node/append-param-node.d.ts.map +1 -0
  111. package/out/de-logic/de-logic-node/append-param-node/append-param-node.js +25 -0
  112. package/out/de-logic/de-logic-node/bind-param-node/bind-param-node.d.ts +17 -0
  113. package/out/de-logic/de-logic-node/bind-param-node/bind-param-node.d.ts.map +1 -0
  114. package/out/de-logic/de-logic-node/bind-param-node/bind-param-node.js +22 -0
  115. package/out/de-logic/de-logic-node/copy-param-node/copy-param-node.d.ts +17 -0
  116. package/out/de-logic/de-logic-node/copy-param-node/copy-param-node.d.ts.map +1 -0
  117. package/out/de-logic/de-logic-node/copy-param-node/copy-param-node.js +23 -0
  118. package/out/de-logic/de-logic-node/data-set-node/data-set-node.d.ts +17 -0
  119. package/out/de-logic/de-logic-node/data-set-node/data-set-node.d.ts.map +1 -0
  120. package/out/de-logic/de-logic-node/data-set-node/data-set-node.js +21 -0
  121. package/out/de-logic/de-logic-node/de-action-node/de-action-node.d.ts +17 -0
  122. package/out/de-logic/de-logic-node/de-action-node/de-action-node.d.ts.map +1 -0
  123. package/out/de-logic/de-logic-node/de-action-node/de-action-node.js +28 -0
  124. package/out/de-logic/de-logic-node/de-logic-node.d.ts +43 -0
  125. package/out/de-logic/de-logic-node/de-logic-node.d.ts.map +1 -0
  126. package/out/de-logic/de-logic-node/de-logic-node.js +23 -0
  127. package/out/de-logic/de-logic-node/end-node/end-node.d.ts +17 -0
  128. package/out/de-logic/de-logic-node/end-node/end-node.d.ts.map +1 -0
  129. package/out/de-logic/de-logic-node/end-node/end-node.js +35 -0
  130. package/out/de-logic/de-logic-node/index.d.ts +13 -0
  131. package/out/de-logic/de-logic-node/index.d.ts.map +1 -0
  132. package/out/de-logic/de-logic-node/index.js +12 -0
  133. package/out/de-logic/de-logic-node/prepare-param-node/prepare-param-node.d.ts +80 -0
  134. package/out/de-logic/de-logic-node/prepare-param-node/prepare-param-node.d.ts.map +1 -0
  135. package/out/de-logic/de-logic-node/prepare-param-node/prepare-param-node.js +150 -0
  136. package/out/de-logic/de-logic-node/renew-param-node/renew-param-node.d.ts +17 -0
  137. package/out/de-logic/de-logic-node/renew-param-node/renew-param-node.d.ts.map +1 -0
  138. package/out/de-logic/de-logic-node/renew-param-node/renew-param-node.js +20 -0
  139. package/out/de-logic/de-logic-node/reset-param-node/reset-param-node.d.ts +17 -0
  140. package/out/de-logic/de-logic-node/reset-param-node/reset-param-node.d.ts.map +1 -0
  141. package/out/de-logic/de-logic-node/reset-param-node/reset-param-node.js +20 -0
  142. package/out/de-logic/de-logic-node/sort-param-node/sort-param-node.d.ts +17 -0
  143. package/out/de-logic/de-logic-node/sort-param-node/sort-param-node.d.ts.map +1 -0
  144. package/out/de-logic/de-logic-node/sort-param-node/sort-param-node.js +24 -0
  145. package/out/de-logic/de-logic-node/start-node/start-node.d.ts +15 -0
  146. package/out/de-logic/de-logic-node/start-node/start-node.d.ts.map +1 -0
  147. package/out/de-logic/de-logic-node/start-node/start-node.js +15 -0
  148. package/out/de-logic/de-logic-node/throw-exception-node/throw-exception-node.d.ts +17 -0
  149. package/out/de-logic/de-logic-node/throw-exception-node/throw-exception-node.d.ts.map +1 -0
  150. package/out/de-logic/de-logic-node/throw-exception-node/throw-exception-node.js +23 -0
  151. package/out/de-logic/de-logic-param/de-logic-param.d.ts +40 -0
  152. package/out/de-logic/de-logic-param/de-logic-param.d.ts.map +1 -0
  153. package/out/de-logic/de-logic-param/de-logic-param.js +113 -0
  154. package/out/de-logic/de-logic.d.ts +75 -0
  155. package/out/de-logic/de-logic.d.ts.map +1 -0
  156. package/out/de-logic/de-logic.js +179 -0
  157. package/out/de-logic/index.d.ts +43 -0
  158. package/out/de-logic/index.d.ts.map +1 -0
  159. package/out/de-logic/index.js +74 -0
  160. package/out/de-logic/utils/handle-src-val.d.ts +31 -0
  161. package/out/de-logic/utils/handle-src-val.d.ts.map +1 -0
  162. package/out/de-logic/utils/handle-src-val.js +55 -0
  163. package/out/de-logic/utils/index.d.ts +2 -0
  164. package/out/de-logic/utils/index.d.ts.map +1 -0
  165. package/out/de-logic/utils/index.js +1 -0
  166. package/out/engine/engine-factory.d.ts +1 -1
  167. package/out/engine/engine-factory.d.ts.map +1 -1
  168. package/out/engine/index.d.ts +2 -2
  169. package/out/engine/index.d.ts.map +1 -1
  170. package/out/engine/index.js +2 -2
  171. package/out/engine/md-view.engine.d.ts +142 -0
  172. package/out/engine/md-view.engine.d.ts.map +1 -0
  173. package/out/engine/md-view.engine.js +310 -0
  174. package/out/engine/view-base.engine.d.ts +107 -0
  175. package/out/engine/view-base.engine.d.ts.map +1 -0
  176. package/out/engine/view-base.engine.js +223 -0
  177. package/out/global/global-util/global-util.d.ts +3 -3
  178. package/out/global/global-util/global-util.d.ts.map +1 -1
  179. package/out/global/global-util/global-util.js +3 -3
  180. package/out/hub/config/app-config-service.d.ts +13 -0
  181. package/out/hub/config/app-config-service.d.ts.map +1 -0
  182. package/out/hub/config/app-config-service.js +13 -0
  183. package/out/hub/config/app-view-config-service.d.ts +12 -0
  184. package/out/hub/config/app-view-config-service.d.ts.map +1 -0
  185. package/out/hub/config/app-view-config-service.js +33 -0
  186. package/out/hub/index.d.ts +1 -0
  187. package/out/hub/index.d.ts.map +1 -1
  188. package/out/hub/index.js +1 -0
  189. package/out/index.d.ts +1 -1
  190. package/out/index.d.ts.map +1 -1
  191. package/out/index.js +1 -1
  192. package/out/install.d.ts.map +1 -1
  193. package/out/install.js +5 -1
  194. package/out/interface/common/i-app-config-service/i-app-config-service.d.ts +11 -0
  195. package/out/interface/common/i-app-config-service/i-app-config-service.d.ts.map +1 -0
  196. package/out/interface/common/i-app-hub-service/i-app-hub-service.d.ts +8 -9
  197. package/out/interface/common/i-app-hub-service/i-app-hub-service.d.ts.map +1 -1
  198. package/out/interface/common/i-app-view-config-service/i-app-view-config-service.d.ts +56 -0
  199. package/out/interface/common/i-app-view-config-service/i-app-view-config-service.d.ts.map +1 -0
  200. package/out/interface/common/i-data-ability-params/i-data-ability-params.d.ts +32 -0
  201. package/out/interface/common/i-data-ability-params/i-data-ability-params.d.ts.map +1 -0
  202. package/out/interface/common/i-global-config/i-global-app-menu-config.d.ts +22 -0
  203. package/out/interface/common/i-global-config/i-global-app-menu-config.d.ts.map +1 -0
  204. package/out/interface/common/i-global-config/i-global-codelist-config.d.ts +21 -0
  205. package/out/interface/common/i-global-config/i-global-codelist-config.d.ts.map +1 -0
  206. package/out/interface/common/i-global-config/i-global-config.d.ts +20 -40
  207. package/out/interface/common/i-global-config/i-global-config.d.ts.map +1 -1
  208. package/out/interface/common/i-global-config/i-global-grid-config.d.ts +37 -0
  209. package/out/interface/common/i-global-config/i-global-grid-config.d.ts.map +1 -0
  210. package/out/interface/common/i-global-config/i-global-view-config.d.ts +22 -0
  211. package/out/interface/common/i-global-config/i-global-view-config.d.ts.map +1 -0
  212. package/out/interface/common/i-global-config/index.d.ts +6 -0
  213. package/out/interface/common/i-global-config/index.d.ts.map +1 -0
  214. package/out/interface/common/i-global-config/index.js +5 -0
  215. package/out/interface/common/i-modal/i-modal.d.ts +23 -14
  216. package/out/interface/common/i-modal/i-modal.d.ts.map +1 -1
  217. package/out/interface/common/i-modal-data/i-modal-data.d.ts +2 -2
  218. package/out/interface/common/i-modal-data/i-modal-data.d.ts.map +1 -1
  219. package/out/interface/common/i-ui-action-handler/i-ui-action-handler.d.ts +2 -2
  220. package/out/interface/common/i-ui-action-handler/i-ui-action-handler.d.ts.map +1 -1
  221. package/out/interface/common/i-ui-action-result/i-ui-action-result.d.ts +1 -1
  222. package/out/interface/common/i-ui-logic-params/i-ui-logic-params.d.ts +17 -3
  223. package/out/interface/common/i-ui-logic-params/i-ui-logic-params.d.ts.map +1 -1
  224. package/out/interface/common/index.d.ts +4 -1
  225. package/out/interface/common/index.d.ts.map +1 -1
  226. package/out/interface/controller/common/button-state/i-button-container.state.d.ts +48 -0
  227. package/out/interface/controller/common/button-state/i-button-container.state.d.ts.map +1 -0
  228. package/out/interface/controller/common/button-state/i-button.state.d.ts +53 -0
  229. package/out/interface/controller/common/button-state/i-button.state.d.ts.map +1 -0
  230. package/out/interface/controller/common/button-state/index.d.ts +3 -0
  231. package/out/interface/controller/common/button-state/index.d.ts.map +1 -0
  232. package/out/interface/controller/common/button-state/index.js +2 -0
  233. package/out/interface/controller/common/i-icon/i-icon.d.ts +24 -0
  234. package/out/interface/controller/common/i-icon/i-icon.d.ts.map +1 -0
  235. package/out/interface/controller/common/index.d.ts +3 -0
  236. package/out/interface/controller/common/index.d.ts.map +1 -0
  237. package/out/interface/controller/common/index.js +2 -0
  238. package/out/interface/controller/controller/common/i-enforceable.controller.d.ts +18 -0
  239. package/out/interface/controller/controller/common/i-enforceable.controller.d.ts.map +1 -0
  240. package/out/interface/controller/controller/common/index.d.ts +2 -0
  241. package/out/interface/controller/controller/common/index.d.ts.map +1 -0
  242. package/out/interface/controller/controller/common/index.js +1 -0
  243. package/out/interface/controller/controller/control/form-detail/i-form-detail-container.controller.d.ts +13 -0
  244. package/out/interface/controller/controller/control/form-detail/i-form-detail-container.controller.d.ts.map +1 -0
  245. package/out/interface/controller/controller/control/form-detail/i-form-detail.controller.d.ts +44 -0
  246. package/out/interface/controller/controller/control/form-detail/i-form-detail.controller.d.ts.map +1 -0
  247. package/out/interface/controller/controller/control/form-detail/index.d.ts +3 -0
  248. package/out/interface/controller/controller/control/form-detail/index.d.ts.map +1 -0
  249. package/out/interface/controller/controller/control/form-detail/index.js +2 -0
  250. package/out/interface/controller/controller/control/grid-column/i-grid-column.controller.d.ts +12 -0
  251. package/out/interface/controller/controller/control/grid-column/i-grid-column.controller.d.ts.map +1 -0
  252. package/out/interface/controller/controller/control/grid-column/index.d.ts +2 -0
  253. package/out/interface/controller/controller/control/grid-column/index.d.ts.map +1 -0
  254. package/out/interface/controller/controller/control/grid-column/index.js +1 -0
  255. package/out/interface/controller/controller/control/i-app-menu.controller.d.ts +15 -0
  256. package/out/interface/controller/controller/control/i-app-menu.controller.d.ts.map +1 -0
  257. package/out/interface/controller/controller/control/i-caption-bar.controller.d.ts +15 -0
  258. package/out/interface/controller/controller/control/i-caption-bar.controller.d.ts.map +1 -0
  259. package/out/interface/controller/controller/control/i-chart.controller.d.ts +21 -0
  260. package/out/interface/controller/controller/control/i-chart.controller.d.ts.map +1 -0
  261. package/out/interface/controller/controller/control/i-control.controller.d.ts +45 -0
  262. package/out/interface/controller/controller/control/i-control.controller.d.ts.map +1 -0
  263. package/out/interface/controller/controller/control/i-dashboard.controller.d.ts +15 -0
  264. package/out/interface/controller/controller/control/i-dashboard.controller.d.ts.map +1 -0
  265. package/out/interface/controller/controller/control/i-data-view-control.controller.d.ts +21 -0
  266. package/out/interface/controller/controller/control/i-data-view-control.controller.d.ts.map +1 -0
  267. package/out/interface/controller/controller/control/i-drbar.controller.d.ts +21 -0
  268. package/out/interface/controller/controller/control/i-drbar.controller.d.ts.map +1 -0
  269. package/out/interface/controller/controller/control/i-drtab.controller.d.ts +21 -0
  270. package/out/interface/controller/controller/control/i-drtab.controller.d.ts.map +1 -0
  271. package/out/interface/controller/controller/control/i-edit-form.controller.d.ts +56 -0
  272. package/out/interface/controller/controller/control/i-edit-form.controller.d.ts.map +1 -0
  273. package/out/interface/controller/controller/control/i-exp-bar-control.controller.d.ts +44 -0
  274. package/out/interface/controller/controller/control/i-exp-bar-control.controller.d.ts.map +1 -0
  275. package/out/interface/controller/controller/control/i-form.controller.d.ts +22 -0
  276. package/out/interface/controller/controller/control/i-form.controller.d.ts.map +1 -0
  277. package/out/interface/controller/controller/control/i-grid.controller.d.ts +51 -0
  278. package/out/interface/controller/controller/control/i-grid.controller.d.ts.map +1 -0
  279. package/out/interface/controller/controller/control/i-list.controller.d.ts +40 -0
  280. package/out/interface/controller/controller/control/i-list.controller.d.ts.map +1 -0
  281. package/out/interface/controller/controller/control/i-md-control.controller.d.ts +94 -0
  282. package/out/interface/controller/controller/control/i-md-control.controller.d.ts.map +1 -0
  283. package/out/interface/controller/controller/control/i-mob-md-ctrl.controller.d.ts +24 -0
  284. package/out/interface/controller/controller/control/i-mob-md-ctrl.controller.d.ts.map +1 -0
  285. package/out/interface/controller/controller/control/i-panel.controller.d.ts +41 -0
  286. package/out/interface/controller/controller/control/i-panel.controller.d.ts.map +1 -0
  287. package/out/interface/controller/controller/control/i-pickup-view-panel.controller.d.ts +32 -0
  288. package/out/interface/controller/controller/control/i-pickup-view-panel.controller.d.ts.map +1 -0
  289. package/out/interface/controller/controller/control/i-search-bar.controller.d.ts +15 -0
  290. package/out/interface/controller/controller/control/i-search-bar.controller.d.ts.map +1 -0
  291. package/out/interface/controller/controller/control/i-search-form.controller.d.ts +51 -0
  292. package/out/interface/controller/controller/control/i-search-form.controller.d.ts.map +1 -0
  293. package/out/interface/controller/controller/control/i-tab-exp-panel.controller.d.ts +14 -0
  294. package/out/interface/controller/controller/control/i-tab-exp-panel.controller.d.ts.map +1 -0
  295. package/out/interface/controller/controller/control/i-toolbar.controller.d.ts +38 -0
  296. package/out/interface/controller/controller/control/i-toolbar.controller.d.ts.map +1 -0
  297. package/out/interface/controller/controller/control/i-tree-exp-bar.controller.d.ts +14 -0
  298. package/out/interface/controller/controller/control/i-tree-exp-bar.controller.d.ts.map +1 -0
  299. package/out/interface/controller/controller/control/i-tree.controller.d.ts +50 -0
  300. package/out/interface/controller/controller/control/i-tree.controller.d.ts.map +1 -0
  301. package/out/interface/controller/controller/control/i-view-layout-panel.controller.d.ts +15 -0
  302. package/out/interface/controller/controller/control/i-view-layout-panel.controller.d.ts.map +1 -0
  303. package/out/interface/controller/controller/control/i-wizard-panel.controller.d.ts +53 -0
  304. package/out/interface/controller/controller/control/i-wizard-panel.controller.d.ts.map +1 -0
  305. package/out/interface/controller/controller/control/index.d.ts +30 -0
  306. package/out/interface/controller/controller/control/index.d.ts.map +1 -0
  307. package/out/interface/controller/controller/control/index.js +28 -0
  308. package/out/interface/controller/controller/control/panel-item/i-panel-data-container.controller.d.ts +19 -0
  309. package/out/interface/controller/controller/control/panel-item/i-panel-data-container.controller.d.ts.map +1 -0
  310. package/out/interface/controller/controller/control/panel-item/i-panel-item-container.controller.d.ts +18 -0
  311. package/out/interface/controller/controller/control/panel-item/i-panel-item-container.controller.d.ts.map +1 -0
  312. package/out/interface/controller/controller/control/panel-item/i-panel-item-nav-pos.controller.d.ts +67 -0
  313. package/out/interface/controller/controller/control/panel-item/i-panel-item-nav-pos.controller.d.ts.map +1 -0
  314. package/out/interface/controller/controller/control/panel-item/i-panel-item.controller.d.ts +51 -0
  315. package/out/interface/controller/controller/control/panel-item/i-panel-item.controller.d.ts.map +1 -0
  316. package/out/interface/controller/controller/control/panel-item/index.d.ts +5 -0
  317. package/out/interface/controller/controller/control/panel-item/index.d.ts.map +1 -0
  318. package/out/interface/controller/controller/control/panel-item/index.js +4 -0
  319. package/out/interface/controller/controller/control/portlet/i-portlet-container.controller.d.ts +10 -0
  320. package/out/interface/controller/controller/control/portlet/i-portlet-container.controller.d.ts.map +1 -0
  321. package/out/interface/controller/controller/control/portlet/i-portlet.controller.d.ts +42 -0
  322. package/out/interface/controller/controller/control/portlet/i-portlet.controller.d.ts.map +1 -0
  323. package/out/interface/controller/controller/control/portlet/index.d.ts +3 -0
  324. package/out/interface/controller/controller/control/portlet/index.d.ts.map +1 -0
  325. package/out/interface/controller/controller/control/portlet/index.js +2 -0
  326. package/out/interface/controller/controller/editor/i-editor-container.controller.d.ts +38 -0
  327. package/out/interface/controller/controller/editor/i-editor-container.controller.d.ts.map +1 -0
  328. package/out/interface/controller/controller/editor/i-editor.controller.d.ts +50 -0
  329. package/out/interface/controller/controller/editor/i-editor.controller.d.ts.map +1 -0
  330. package/out/interface/controller/controller/editor/index.d.ts +3 -0
  331. package/out/interface/controller/controller/editor/index.d.ts.map +1 -0
  332. package/out/interface/controller/controller/editor/index.js +2 -0
  333. package/out/interface/controller/controller/i.controller.d.ts +93 -0
  334. package/out/interface/controller/controller/i.controller.d.ts.map +1 -0
  335. package/out/interface/controller/controller/index.d.ts +6 -0
  336. package/out/interface/controller/controller/index.d.ts.map +1 -0
  337. package/out/interface/controller/controller/index.js +5 -0
  338. package/out/interface/controller/controller/view/i-mob-view.controller.d.ts +14 -0
  339. package/out/interface/controller/controller/view/i-mob-view.controller.d.ts.map +1 -0
  340. package/out/interface/controller/controller/view/i-view.controller.d.ts +131 -0
  341. package/out/interface/controller/controller/view/i-view.controller.d.ts.map +1 -0
  342. package/out/interface/controller/controller/view/index.d.ts +3 -0
  343. package/out/interface/controller/controller/view/index.d.ts.map +1 -0
  344. package/out/interface/controller/event/argument/base.event.d.ts +47 -0
  345. package/out/interface/controller/event/argument/base.event.d.ts.map +1 -0
  346. package/out/interface/controller/event/argument/close-view.event.d.ts +20 -0
  347. package/out/interface/controller/event/argument/close-view.event.d.ts.map +1 -0
  348. package/out/interface/controller/event/argument/data-change.event.d.ts +11 -0
  349. package/out/interface/controller/event/argument/data-change.event.d.ts.map +1 -0
  350. package/out/interface/controller/event/argument/index.d.ts +7 -0
  351. package/out/interface/controller/event/argument/index.d.ts.map +1 -0
  352. package/out/interface/controller/event/argument/load.event.d.ts +19 -0
  353. package/out/interface/controller/event/argument/load.event.d.ts.map +1 -0
  354. package/out/interface/controller/event/argument/toolbar-click.event.d.ts +15 -0
  355. package/out/interface/controller/event/argument/toolbar-click.event.d.ts.map +1 -0
  356. package/out/interface/controller/event/argument/uiaction.event.d.ts +19 -0
  357. package/out/interface/controller/event/argument/uiaction.event.d.ts.map +1 -0
  358. package/out/interface/controller/event/argument/view-info.event.d.ts +25 -0
  359. package/out/interface/controller/event/argument/view-info.event.d.ts.map +1 -0
  360. package/out/interface/controller/event/common/i-component.event.d.ts +49 -0
  361. package/out/interface/controller/event/common/i-component.event.d.ts.map +1 -0
  362. package/out/interface/controller/event/common/index.d.ts +2 -0
  363. package/out/interface/controller/event/common/index.d.ts.map +1 -0
  364. package/out/interface/controller/event/common/index.js +1 -0
  365. package/out/interface/controller/event/control/i-app-menu.event.d.ts +27 -0
  366. package/out/interface/controller/event/control/i-app-menu.event.d.ts.map +1 -0
  367. package/out/interface/controller/event/control/i-caption-bar.event.d.ts +12 -0
  368. package/out/interface/controller/event/control/i-caption-bar.event.d.ts.map +1 -0
  369. package/out/interface/controller/event/control/i-chart.event.d.ts +12 -0
  370. package/out/interface/controller/event/control/i-chart.event.d.ts.map +1 -0
  371. package/out/interface/controller/event/control/i-control.event.d.ts +25 -0
  372. package/out/interface/controller/event/control/i-control.event.d.ts.map +1 -0
  373. package/out/interface/controller/event/control/i-dashboard.event.d.ts +12 -0
  374. package/out/interface/controller/event/control/i-dashboard.event.d.ts.map +1 -0
  375. package/out/interface/controller/event/control/i-data-view-control.event.d.ts +9 -0
  376. package/out/interface/controller/event/control/i-data-view-control.event.d.ts.map +1 -0
  377. package/out/interface/controller/event/control/i-drbar.event.d.ts +11 -0
  378. package/out/interface/controller/event/control/i-drbar.event.d.ts.map +1 -0
  379. package/out/interface/controller/event/control/i-drtab.event.d.ts +11 -0
  380. package/out/interface/controller/event/control/i-drtab.event.d.ts.map +1 -0
  381. package/out/interface/controller/event/control/i-edit-form.event.d.ts +49 -0
  382. package/out/interface/controller/event/control/i-edit-form.event.d.ts.map +1 -0
  383. package/out/interface/controller/event/control/i-exp-bar-control.event.d.ts +13 -0
  384. package/out/interface/controller/event/control/i-exp-bar-control.event.d.ts.map +1 -0
  385. package/out/interface/controller/event/control/i-form.event.d.ts +24 -0
  386. package/out/interface/controller/event/control/i-form.event.d.ts.map +1 -0
  387. package/out/interface/controller/event/control/i-grid.event.d.ts +26 -0
  388. package/out/interface/controller/event/control/i-grid.event.d.ts.map +1 -0
  389. package/out/interface/controller/event/control/i-kanban.event.d.ts +11 -0
  390. package/out/interface/controller/event/control/i-kanban.event.d.ts.map +1 -0
  391. package/out/interface/controller/event/control/i-list.event.d.ts +11 -0
  392. package/out/interface/controller/event/control/i-list.event.d.ts.map +1 -0
  393. package/out/interface/controller/event/control/i-md-control.event.d.ts +78 -0
  394. package/out/interface/controller/event/control/i-md-control.event.d.ts.map +1 -0
  395. package/out/interface/controller/event/control/i-mob-md-ctrl.event.d.ts +13 -0
  396. package/out/interface/controller/event/control/i-mob-md-ctrl.event.d.ts.map +1 -0
  397. package/out/interface/controller/event/control/i-panel.event.d.ts +11 -0
  398. package/out/interface/controller/event/control/i-panel.event.d.ts.map +1 -0
  399. package/out/interface/controller/event/control/i-pickup-view-panel.event.d.ts +44 -0
  400. package/out/interface/controller/event/control/i-pickup-view-panel.event.d.ts.map +1 -0
  401. package/out/interface/controller/event/control/i-search-bar.event.d.ts +21 -0
  402. package/out/interface/controller/event/control/i-search-bar.event.d.ts.map +1 -0
  403. package/out/interface/controller/event/control/i-search-form.event.d.ts +17 -0
  404. package/out/interface/controller/event/control/i-search-form.event.d.ts.map +1 -0
  405. package/out/interface/controller/event/control/i-tab-exp-panel.event.d.ts +11 -0
  406. package/out/interface/controller/event/control/i-tab-exp-panel.event.d.ts.map +1 -0
  407. package/out/interface/controller/event/control/i-toolbar.event.d.ts +26 -0
  408. package/out/interface/controller/event/control/i-toolbar.event.d.ts.map +1 -0
  409. package/out/interface/controller/event/control/i-tree-exp-bar.event.d.ts +11 -0
  410. package/out/interface/controller/event/control/i-tree-exp-bar.event.d.ts.map +1 -0
  411. package/out/interface/controller/event/control/i-tree.event.d.ts +11 -0
  412. package/out/interface/controller/event/control/i-tree.event.d.ts.map +1 -0
  413. package/out/interface/controller/event/control/i-view-layout-panel.event.d.ts +11 -0
  414. package/out/interface/controller/event/control/i-view-layout-panel.event.d.ts.map +1 -0
  415. package/out/interface/controller/event/control/i-wizard-panel.event.d.ts +24 -0
  416. package/out/interface/controller/event/control/i-wizard-panel.event.d.ts.map +1 -0
  417. package/out/interface/controller/event/control/index.d.ts +27 -0
  418. package/out/interface/controller/event/control/index.d.ts.map +1 -0
  419. package/out/interface/controller/event/control/index.js +25 -0
  420. package/out/interface/controller/event/index.d.ts.map +1 -0
  421. package/out/interface/controller/event/view/i-app-portal-view.event.d.ts +12 -0
  422. package/out/interface/controller/event/view/i-app-portal-view.event.d.ts.map +1 -0
  423. package/out/interface/controller/event/view/i-chart-view.event.d.ts +12 -0
  424. package/out/interface/controller/event/view/i-chart-view.event.d.ts.map +1 -0
  425. package/out/interface/controller/event/view/i-data-view-exp-view.event.d.ts +10 -0
  426. package/out/interface/controller/event/view/i-data-view-exp-view.event.d.ts.map +1 -0
  427. package/out/interface/controller/event/view/i-data-view.event.d.ts +10 -0
  428. package/out/interface/controller/event/view/i-data-view.event.d.ts.map +1 -0
  429. package/out/interface/controller/event/view/i-de-portal-view.event.d.ts +12 -0
  430. package/out/interface/controller/event/view/i-de-portal-view.event.d.ts.map +1 -0
  431. package/out/interface/controller/event/view/i-edit-view.event.d.ts +27 -0
  432. package/out/interface/controller/event/view/i-edit-view.event.d.ts.map +1 -0
  433. package/out/interface/controller/event/view/i-edit-view.event.js +1 -0
  434. package/out/interface/controller/event/view/i-edit-view2.event.d.ts +11 -0
  435. package/out/interface/controller/event/view/i-edit-view2.event.d.ts.map +1 -0
  436. package/out/interface/controller/event/view/i-edit-view2.event.js +1 -0
  437. package/out/interface/controller/event/view/i-edit-view3.event.d.ts +11 -0
  438. package/out/interface/controller/event/view/i-edit-view3.event.d.ts.map +1 -0
  439. package/out/interface/controller/event/view/i-edit-view3.event.js +1 -0
  440. package/out/interface/controller/event/view/i-edit-view4.event.d.ts +11 -0
  441. package/out/interface/controller/event/view/i-edit-view4.event.d.ts.map +1 -0
  442. package/out/interface/controller/event/view/i-edit-view4.event.js +1 -0
  443. package/out/interface/controller/event/view/i-exp-view.event.d.ts +10 -0
  444. package/out/interface/controller/event/view/i-exp-view.event.d.ts.map +1 -0
  445. package/out/interface/controller/event/view/i-exp-view.event.js +1 -0
  446. package/out/interface/controller/event/view/i-grid-exp-view.event.d.ts +10 -0
  447. package/out/interface/controller/event/view/i-grid-exp-view.event.d.ts.map +1 -0
  448. package/out/interface/controller/event/view/i-grid-exp-view.event.js +1 -0
  449. package/out/interface/controller/event/view/i-grid-view.event.d.ts +12 -0
  450. package/out/interface/controller/event/view/i-grid-view.event.d.ts.map +1 -0
  451. package/out/interface/controller/event/view/i-grid-view.event.js +1 -0
  452. package/out/interface/controller/event/view/i-kanban-view.event.d.ts +12 -0
  453. package/out/interface/controller/event/view/i-kanban-view.event.d.ts.map +1 -0
  454. package/out/interface/controller/event/view/i-kanban-view.event.js +1 -0
  455. package/out/interface/controller/event/view/i-list-exp-view.event.d.ts +10 -0
  456. package/out/interface/controller/event/view/i-list-exp-view.event.d.ts.map +1 -0
  457. package/out/interface/controller/event/view/i-list-exp-view.event.js +1 -0
  458. package/out/interface/controller/event/view/i-list-view.event.d.ts +27 -0
  459. package/out/interface/controller/event/view/i-list-view.event.d.ts.map +1 -0
  460. package/out/interface/controller/event/view/i-list-view.event.js +1 -0
  461. package/out/interface/controller/event/view/i-md-view.event.d.ts +31 -0
  462. package/out/interface/controller/event/view/i-md-view.event.d.ts.map +1 -0
  463. package/out/interface/controller/event/view/i-md-view.event.js +1 -0
  464. package/out/interface/controller/event/view/i-mpickup-view.event.d.ts +12 -0
  465. package/out/interface/controller/event/view/i-mpickup-view.event.d.ts.map +1 -0
  466. package/out/interface/controller/event/view/i-mpickup-view.event.js +1 -0
  467. package/out/interface/controller/event/view/i-opt-view.event.d.ts +10 -0
  468. package/out/interface/controller/event/view/i-opt-view.event.d.ts.map +1 -0
  469. package/out/interface/controller/event/view/i-opt-view.event.js +1 -0
  470. package/out/interface/controller/event/view/i-panel-view.event.d.ts +12 -0
  471. package/out/interface/controller/event/view/i-panel-view.event.d.ts.map +1 -0
  472. package/out/interface/controller/event/view/i-panel-view.event.js +1 -0
  473. package/out/interface/controller/event/view/i-pickup-grid-view.event.d.ts +27 -0
  474. package/out/interface/controller/event/view/i-pickup-grid-view.event.d.ts.map +1 -0
  475. package/out/interface/controller/event/view/i-pickup-grid-view.event.js +1 -0
  476. package/out/interface/controller/event/view/i-pickup-tree-view.event.d.ts +31 -0
  477. package/out/interface/controller/event/view/i-pickup-tree-view.event.d.ts.map +1 -0
  478. package/out/interface/controller/event/view/i-pickup-tree-view.event.js +1 -0
  479. package/out/interface/controller/event/view/i-pickup-view.event.d.ts +12 -0
  480. package/out/interface/controller/event/view/i-pickup-view.event.d.ts.map +1 -0
  481. package/out/interface/controller/event/view/i-pickup-view.event.js +1 -0
  482. package/out/interface/controller/event/view/i-portal-view.event.d.ts +12 -0
  483. package/out/interface/controller/event/view/i-portal-view.event.d.ts.map +1 -0
  484. package/out/interface/controller/event/view/i-portal-view.event.js +1 -0
  485. package/out/interface/controller/event/view/i-tab-exp-view.event.d.ts +12 -0
  486. package/out/interface/controller/event/view/i-tab-exp-view.event.d.ts.map +1 -0
  487. package/out/interface/controller/event/view/i-tab-exp-view.event.js +1 -0
  488. package/out/interface/controller/event/view/i-tree-exp-view.event.d.ts +12 -0
  489. package/out/interface/controller/event/view/i-tree-exp-view.event.d.ts.map +1 -0
  490. package/out/interface/controller/event/view/i-tree-exp-view.event.js +1 -0
  491. package/out/interface/controller/event/view/i-tree-view.event.d.ts +12 -0
  492. package/out/interface/controller/event/view/i-tree-view.event.d.ts.map +1 -0
  493. package/out/interface/controller/event/view/i-tree-view.event.js +1 -0
  494. package/out/interface/controller/event/view/i-view.event.d.ts +46 -0
  495. package/out/interface/controller/event/view/i-view.event.d.ts.map +1 -0
  496. package/out/interface/controller/event/view/i-view.event.js +1 -0
  497. package/out/interface/controller/event/view/i-wf-dyna-action-view.event.d.ts +13 -0
  498. package/out/interface/controller/event/view/i-wf-dyna-action-view.event.d.ts.map +1 -0
  499. package/out/interface/controller/event/view/i-wf-dyna-action-view.event.js +1 -0
  500. package/out/interface/controller/event/view/i-wf-dyna-edit-view.event.d.ts +11 -0
  501. package/out/interface/controller/event/view/i-wf-dyna-edit-view.event.d.ts.map +1 -0
  502. package/out/interface/controller/event/view/i-wf-dyna-edit-view.event.js +1 -0
  503. package/out/interface/controller/event/view/i-wf-dyna-edit-view3.event.d.ts +11 -0
  504. package/out/interface/controller/event/view/i-wf-dyna-edit-view3.event.d.ts.map +1 -0
  505. package/out/interface/controller/event/view/i-wf-dyna-edit-view3.event.js +1 -0
  506. package/out/interface/controller/event/view/i-wf-dyna-start-view.event.d.ts +11 -0
  507. package/out/interface/controller/event/view/i-wf-dyna-start-view.event.d.ts.map +1 -0
  508. package/out/interface/controller/event/view/i-wf-dyna-start-view.event.js +1 -0
  509. package/out/interface/controller/event/view/i-wf-edit-view.event.d.ts +13 -0
  510. package/out/interface/controller/event/view/i-wf-edit-view.event.d.ts.map +1 -0
  511. package/out/interface/controller/event/view/i-wf-edit-view.event.js +1 -0
  512. package/out/interface/controller/event/view/i-wf-step-trace-view.event.d.ts +11 -0
  513. package/out/interface/controller/event/view/i-wf-step-trace-view.event.d.ts.map +1 -0
  514. package/out/interface/controller/event/view/i-wf-step-trace-view.event.js +1 -0
  515. package/out/interface/controller/event/view/i-wizard-view.event.d.ts +12 -0
  516. package/out/interface/controller/event/view/i-wizard-view.event.d.ts.map +1 -0
  517. package/out/interface/controller/event/view/i-wizard-view.event.js +1 -0
  518. package/out/interface/controller/event/view/index.d.ts +35 -0
  519. package/out/interface/controller/event/view/index.d.ts.map +1 -0
  520. package/out/interface/controller/event/view/index.js +34 -0
  521. package/out/interface/controller/index.d.ts.map +1 -0
  522. package/out/interface/controller/state/common/i-col-state.d.ts +83 -0
  523. package/out/interface/controller/state/common/i-col-state.d.ts.map +1 -0
  524. package/out/interface/controller/state/common/i-col-state.js +1 -0
  525. package/out/interface/controller/state/common/i-controller.state.d.ts +25 -0
  526. package/out/interface/controller/state/common/i-controller.state.d.ts.map +1 -0
  527. package/out/interface/controller/state/common/i-controller.state.js +1 -0
  528. package/out/interface/controller/state/common/index.d.ts +3 -0
  529. package/out/interface/controller/state/common/index.d.ts.map +1 -0
  530. package/out/interface/controller/state/common/index.js +2 -0
  531. package/out/interface/controller/state/control/form-detail/i-form-detail-container.state.d.ts +18 -0
  532. package/out/interface/controller/state/control/form-detail/i-form-detail-container.state.d.ts.map +1 -0
  533. package/out/interface/controller/state/control/form-detail/i-form-detail-container.state.js +1 -0
  534. package/out/interface/controller/state/control/form-detail/i-form-detail.state.d.ts +48 -0
  535. package/out/interface/controller/state/control/form-detail/i-form-detail.state.d.ts.map +1 -0
  536. package/out/interface/controller/state/control/form-detail/i-form-detail.state.js +1 -0
  537. package/out/interface/controller/state/control/form-detail/index.d.ts +3 -0
  538. package/out/interface/controller/state/control/form-detail/index.d.ts.map +1 -0
  539. package/out/interface/controller/state/control/form-detail/index.js +1 -0
  540. package/out/interface/controller/state/control/i-app-menu.state.d.ts +17 -0
  541. package/out/interface/controller/state/control/i-app-menu.state.d.ts.map +1 -0
  542. package/out/interface/controller/state/control/i-app-menu.state.js +1 -0
  543. package/out/interface/controller/state/control/i-caption-bar.state.d.ts +11 -0
  544. package/out/interface/controller/state/control/i-caption-bar.state.d.ts.map +1 -0
  545. package/out/interface/controller/state/control/i-caption-bar.state.js +1 -0
  546. package/out/interface/controller/state/control/i-chart.state.d.ts +12 -0
  547. package/out/interface/controller/state/control/i-chart.state.d.ts.map +1 -0
  548. package/out/interface/controller/state/control/i-chart.state.js +1 -0
  549. package/out/interface/controller/state/control/i-control.state.d.ts +19 -0
  550. package/out/interface/controller/state/control/i-control.state.d.ts.map +1 -0
  551. package/out/interface/controller/state/control/i-control.state.js +1 -0
  552. package/out/interface/controller/state/control/i-dashboard.state.d.ts +12 -0
  553. package/out/interface/controller/state/control/i-dashboard.state.d.ts.map +1 -0
  554. package/out/interface/controller/state/control/i-dashboard.state.js +1 -0
  555. package/out/interface/controller/state/control/i-data-view-control.state.d.ts +11 -0
  556. package/out/interface/controller/state/control/i-data-view-control.state.d.ts.map +1 -0
  557. package/out/interface/controller/state/control/i-data-view-control.state.js +1 -0
  558. package/out/interface/controller/state/control/i-drbar.state.d.ts +76 -0
  559. package/out/interface/controller/state/control/i-drbar.state.d.ts.map +1 -0
  560. package/out/interface/controller/state/control/i-drbar.state.js +1 -0
  561. package/out/interface/controller/state/control/i-drtab.state.d.ts +76 -0
  562. package/out/interface/controller/state/control/i-drtab.state.d.ts.map +1 -0
  563. package/out/interface/controller/state/control/i-drtab.state.js +1 -0
  564. package/out/interface/controller/state/control/i-edit-form.state.d.ts +4 -0
  565. package/out/interface/controller/state/control/i-edit-form.state.d.ts.map +1 -0
  566. package/out/interface/controller/state/control/i-edit-form.state.js +1 -0
  567. package/out/interface/controller/state/control/i-exp-bar-control.state.d.ts +19 -0
  568. package/out/interface/controller/state/control/i-exp-bar-control.state.d.ts.map +1 -0
  569. package/out/interface/controller/state/control/i-exp-bar-control.state.js +1 -0
  570. package/out/interface/controller/state/control/i-form.state.d.ts +36 -0
  571. package/out/interface/controller/state/control/i-form.state.d.ts.map +1 -0
  572. package/out/interface/controller/state/control/i-form.state.js +1 -0
  573. package/out/interface/controller/state/control/i-grid.state.d.ts +81 -0
  574. package/out/interface/controller/state/control/i-grid.state.d.ts.map +1 -0
  575. package/out/interface/controller/state/control/i-grid.state.js +1 -0
  576. package/out/interface/controller/state/control/i-list.state.d.ts +12 -0
  577. package/out/interface/controller/state/control/i-list.state.d.ts.map +1 -0
  578. package/out/interface/controller/state/control/i-list.state.js +1 -0
  579. package/out/interface/controller/state/control/i-md-control.state.d.ts +96 -0
  580. package/out/interface/controller/state/control/i-md-control.state.d.ts.map +1 -0
  581. package/out/interface/controller/state/control/i-md-control.state.js +1 -0
  582. package/out/interface/controller/state/control/i-mob-md-ctrl.state.d.ts +60 -0
  583. package/out/interface/controller/state/control/i-mob-md-ctrl.state.d.ts.map +1 -0
  584. package/out/interface/controller/state/control/i-mob-md-ctrl.state.js +1 -0
  585. package/out/interface/controller/state/control/i-panel.state.d.ts +13 -0
  586. package/out/interface/controller/state/control/i-panel.state.d.ts.map +1 -0
  587. package/out/interface/controller/state/control/i-panel.state.js +1 -0
  588. package/out/interface/controller/state/control/i-pickup-view-panel.state.d.ts +40 -0
  589. package/out/interface/controller/state/control/i-pickup-view-panel.state.d.ts.map +1 -0
  590. package/out/interface/controller/state/control/i-pickup-view-panel.state.js +1 -0
  591. package/out/interface/controller/state/control/i-search-bar.state.d.ts +11 -0
  592. package/out/interface/controller/state/control/i-search-bar.state.d.ts.map +1 -0
  593. package/out/interface/controller/state/control/i-search-bar.state.js +1 -0
  594. package/out/interface/controller/state/control/i-search-form.state.d.ts +4 -0
  595. package/out/interface/controller/state/control/i-search-form.state.d.ts.map +1 -0
  596. package/out/interface/controller/state/control/i-search-form.state.js +1 -0
  597. package/out/interface/controller/state/control/i-tab-exp-panel.state.d.ts +70 -0
  598. package/out/interface/controller/state/control/i-tab-exp-panel.state.d.ts.map +1 -0
  599. package/out/interface/controller/state/control/i-tab-exp-panel.state.js +1 -0
  600. package/out/interface/controller/state/control/i-toolbar.state.d.ts +74 -0
  601. package/out/interface/controller/state/control/i-toolbar.state.d.ts.map +1 -0
  602. package/out/interface/controller/state/control/i-toolbar.state.js +1 -0
  603. package/out/interface/controller/state/control/i-tree-exp-bar.state.d.ts +11 -0
  604. package/out/interface/controller/state/control/i-tree-exp-bar.state.d.ts.map +1 -0
  605. package/out/interface/controller/state/control/i-tree-exp-bar.state.js +1 -0
  606. package/out/interface/controller/state/control/i-tree.state.d.ts +134 -0
  607. package/out/interface/controller/state/control/i-tree.state.d.ts.map +1 -0
  608. package/out/interface/controller/state/control/i-tree.state.js +1 -0
  609. package/out/interface/controller/state/control/i-view-layout-panel.state.d.ts +4 -0
  610. package/out/interface/controller/state/control/i-view-layout-panel.state.d.ts.map +1 -0
  611. package/out/interface/controller/state/control/i-view-layout-panel.state.js +1 -0
  612. package/out/interface/controller/state/control/i-wizard-panel.state.d.ts +19 -0
  613. package/out/interface/controller/state/control/i-wizard-panel.state.d.ts.map +1 -0
  614. package/out/interface/controller/state/control/i-wizard-panel.state.js +1 -0
  615. package/out/interface/controller/state/control/index.d.ts +29 -0
  616. package/out/interface/controller/state/control/index.d.ts.map +1 -0
  617. package/out/interface/controller/state/control/index.js +27 -0
  618. package/out/interface/controller/state/control/panel-item/i-panel-item.state.d.ts +50 -0
  619. package/out/interface/controller/state/control/panel-item/i-panel-item.state.d.ts.map +1 -0
  620. package/out/interface/controller/state/control/panel-item/i-panel-item.state.js +1 -0
  621. package/out/interface/controller/state/control/panel-item/index.d.ts +2 -0
  622. package/out/interface/controller/state/control/panel-item/index.d.ts.map +1 -0
  623. package/out/interface/controller/state/control/panel-item/index.js +1 -0
  624. package/out/interface/controller/state/control/portlet/i-portlet.state.d.ts +35 -0
  625. package/out/interface/controller/state/control/portlet/i-portlet.state.d.ts.map +1 -0
  626. package/out/interface/controller/state/control/portlet/i-portlet.state.js +1 -0
  627. package/out/interface/controller/state/control/portlet/index.d.ts +2 -0
  628. package/out/interface/controller/state/control/portlet/index.d.ts.map +1 -0
  629. package/out/interface/controller/state/control/portlet/index.js +1 -0
  630. package/out/interface/controller/state/index.d.ts +4 -0
  631. package/out/interface/controller/state/index.d.ts.map +1 -0
  632. package/out/interface/controller/state/index.js +3 -0
  633. package/out/interface/controller/state/view/i-app-portal-view.state.d.ts +11 -0
  634. package/out/interface/controller/state/view/i-app-portal-view.state.d.ts.map +1 -0
  635. package/out/interface/controller/state/view/i-app-portal-view.state.js +1 -0
  636. package/out/interface/controller/state/view/i-chart-view.state.d.ts +11 -0
  637. package/out/interface/controller/state/view/i-chart-view.state.d.ts.map +1 -0
  638. package/out/interface/controller/state/view/i-chart-view.state.js +1 -0
  639. package/out/interface/controller/state/view/i-data-view-exp-view.state.d.ts +13 -0
  640. package/out/interface/controller/state/view/i-data-view-exp-view.state.d.ts.map +1 -0
  641. package/out/interface/controller/state/view/i-data-view-exp-view.state.js +1 -0
  642. package/out/interface/controller/state/view/i-data-view.state.d.ts +11 -0
  643. package/out/interface/controller/state/view/i-data-view.state.d.ts.map +1 -0
  644. package/out/interface/controller/state/view/i-data-view.state.js +1 -0
  645. package/out/interface/controller/state/view/i-de-portal-view.state.d.ts +11 -0
  646. package/out/interface/controller/state/view/i-de-portal-view.state.d.ts.map +1 -0
  647. package/out/interface/controller/state/view/i-de-portal-view.state.js +1 -0
  648. package/out/interface/controller/state/view/i-edit-view.state.d.ts +11 -0
  649. package/out/interface/controller/state/view/i-edit-view.state.d.ts.map +1 -0
  650. package/out/interface/controller/state/view/i-edit-view.state.js +1 -0
  651. package/out/interface/controller/state/view/i-edit-view2.state.d.ts +11 -0
  652. package/out/interface/controller/state/view/i-edit-view2.state.d.ts.map +1 -0
  653. package/out/interface/controller/state/view/i-edit-view2.state.js +1 -0
  654. package/out/interface/controller/state/view/i-edit-view3.state.d.ts +18 -0
  655. package/out/interface/controller/state/view/i-edit-view3.state.d.ts.map +1 -0
  656. package/out/interface/controller/state/view/i-edit-view3.state.js +1 -0
  657. package/out/interface/controller/state/view/i-edit-view4.state.d.ts +18 -0
  658. package/out/interface/controller/state/view/i-edit-view4.state.d.ts.map +1 -0
  659. package/out/interface/controller/state/view/i-edit-view4.state.js +1 -0
  660. package/out/interface/controller/state/view/i-exp-view.state.d.ts +22 -0
  661. package/out/interface/controller/state/view/i-exp-view.state.d.ts.map +1 -0
  662. package/out/interface/controller/state/view/i-exp-view.state.js +1 -0
  663. package/out/interface/controller/state/view/i-grid-exp-view.state.d.ts +13 -0
  664. package/out/interface/controller/state/view/i-grid-exp-view.state.d.ts.map +1 -0
  665. package/out/interface/controller/state/view/i-grid-exp-view.state.js +1 -0
  666. package/out/interface/controller/state/view/i-grid-view.state.d.ts +11 -0
  667. package/out/interface/controller/state/view/i-grid-view.state.d.ts.map +1 -0
  668. package/out/interface/controller/state/view/i-grid-view.state.js +1 -0
  669. package/out/interface/controller/state/view/i-index-view.state.d.ts +17 -0
  670. package/out/interface/controller/state/view/i-index-view.state.d.ts.map +1 -0
  671. package/out/interface/controller/state/view/i-index-view.state.js +1 -0
  672. package/out/interface/controller/state/view/i-list-exp-view.state.d.ts +13 -0
  673. package/out/interface/controller/state/view/i-list-exp-view.state.d.ts.map +1 -0
  674. package/out/interface/controller/state/view/i-list-exp-view.state.js +1 -0
  675. package/out/interface/controller/state/view/i-list-view.state.d.ts +28 -0
  676. package/out/interface/controller/state/view/i-list-view.state.d.ts.map +1 -0
  677. package/out/interface/controller/state/view/i-list-view.state.js +1 -0
  678. package/out/interface/controller/state/view/i-md-view.state.d.ts +11 -0
  679. package/out/interface/controller/state/view/i-md-view.state.d.ts.map +1 -0
  680. package/out/interface/controller/state/view/i-md-view.state.js +1 -0
  681. package/out/interface/controller/state/view/i-mpickup-view.state.d.ts +22 -0
  682. package/out/interface/controller/state/view/i-mpickup-view.state.d.ts.map +1 -0
  683. package/out/interface/controller/state/view/i-mpickup-view.state.js +1 -0
  684. package/out/interface/controller/state/view/i-opt-view.state.d.ts +11 -0
  685. package/out/interface/controller/state/view/i-opt-view.state.d.ts.map +1 -0
  686. package/out/interface/controller/state/view/i-opt-view.state.js +1 -0
  687. package/out/interface/controller/state/view/i-panel-view.state.d.ts +11 -0
  688. package/out/interface/controller/state/view/i-panel-view.state.d.ts.map +1 -0
  689. package/out/interface/controller/state/view/i-panel-view.state.js +1 -0
  690. package/out/interface/controller/state/view/i-pickup-grid-view.state.d.ts +22 -0
  691. package/out/interface/controller/state/view/i-pickup-grid-view.state.d.ts.map +1 -0
  692. package/out/interface/controller/state/view/i-pickup-grid-view.state.js +1 -0
  693. package/out/interface/controller/state/view/i-pickup-tree-view.state.d.ts +22 -0
  694. package/out/interface/controller/state/view/i-pickup-tree-view.state.d.ts.map +1 -0
  695. package/out/interface/controller/state/view/i-pickup-tree-view.state.js +1 -0
  696. package/out/interface/controller/state/view/i-pickup-view.state.d.ts +11 -0
  697. package/out/interface/controller/state/view/i-pickup-view.state.d.ts.map +1 -0
  698. package/out/interface/controller/state/view/i-pickup-view.state.js +1 -0
  699. package/out/interface/controller/state/view/i-portal-view.state.d.ts +11 -0
  700. package/out/interface/controller/state/view/i-portal-view.state.d.ts.map +1 -0
  701. package/out/interface/controller/state/view/i-portal-view.state.js +1 -0
  702. package/out/interface/controller/state/view/i-tab-exp-view.state.d.ts +20 -0
  703. package/out/interface/controller/state/view/i-tab-exp-view.state.d.ts.map +1 -0
  704. package/out/interface/controller/state/view/i-tab-exp-view.state.js +1 -0
  705. package/out/interface/controller/state/view/i-tree-exp-view.state.d.ts +18 -0
  706. package/out/interface/controller/state/view/i-tree-exp-view.state.d.ts.map +1 -0
  707. package/out/interface/controller/state/view/i-tree-exp-view.state.js +1 -0
  708. package/out/interface/controller/state/view/i-tree-view.state.d.ts +11 -0
  709. package/out/interface/controller/state/view/i-tree-view.state.d.ts.map +1 -0
  710. package/out/interface/controller/state/view/i-tree-view.state.js +1 -0
  711. package/out/interface/controller/state/view/i-view.state.d.ts +33 -0
  712. package/out/interface/controller/state/view/i-view.state.d.ts.map +1 -0
  713. package/out/interface/controller/state/view/i-view.state.js +1 -0
  714. package/out/interface/controller/state/view/i-wf-dyna-action-view.state.d.ts +11 -0
  715. package/out/interface/controller/state/view/i-wf-dyna-action-view.state.d.ts.map +1 -0
  716. package/out/interface/controller/state/view/i-wf-dyna-action-view.state.js +1 -0
  717. package/out/interface/controller/state/view/i-wf-dyna-edit-view.state.d.ts +11 -0
  718. package/out/interface/controller/state/view/i-wf-dyna-edit-view.state.d.ts.map +1 -0
  719. package/out/interface/controller/state/view/i-wf-dyna-edit-view.state.js +1 -0
  720. package/out/interface/controller/state/view/i-wf-dyna-edit-view3.state.d.ts +11 -0
  721. package/out/interface/controller/state/view/i-wf-dyna-edit-view3.state.d.ts.map +1 -0
  722. package/out/interface/controller/state/view/i-wf-dyna-edit-view3.state.js +1 -0
  723. package/out/interface/controller/state/view/i-wf-dyna-start-view.state.d.ts +11 -0
  724. package/out/interface/controller/state/view/i-wf-dyna-start-view.state.d.ts.map +1 -0
  725. package/out/interface/controller/state/view/i-wf-dyna-start-view.state.js +1 -0
  726. package/out/interface/controller/state/view/i-wf-edit-view.state.d.ts +11 -0
  727. package/out/interface/controller/state/view/i-wf-edit-view.state.d.ts.map +1 -0
  728. package/out/interface/controller/state/view/i-wf-edit-view.state.js +1 -0
  729. package/out/interface/controller/state/view/i-wf-step-trace-view.state.d.ts +11 -0
  730. package/out/interface/controller/state/view/i-wf-step-trace-view.state.d.ts.map +1 -0
  731. package/out/interface/controller/state/view/i-wf-step-trace-view.state.js +1 -0
  732. package/out/interface/controller/state/view/i-wizard-view.state.d.ts +11 -0
  733. package/out/interface/controller/state/view/i-wizard-view.state.d.ts.map +1 -0
  734. package/out/interface/controller/state/view/i-wizard-view.state.js +1 -0
  735. package/out/interface/controller/state/view/index.d.ts +35 -0
  736. package/out/interface/controller/state/view/index.d.ts.map +1 -0
  737. package/out/interface/controller/state/view/index.js +34 -0
  738. package/out/interface/controller/work-flow/index.d.ts.map +1 -0
  739. package/out/interface/controller/work-flow/wf-link.d.ts +63 -0
  740. package/out/interface/controller/work-flow/wf-link.d.ts.map +1 -0
  741. package/out/interface/controller/work-flow/wf-link.js +1 -0
  742. package/out/interface/engine/i-view.engine.d.ts +40 -0
  743. package/out/interface/engine/i-view.engine.d.ts.map +1 -0
  744. package/out/interface/engine/i-view.engine.js +1 -0
  745. package/out/interface/engine/index.d.ts +2 -0
  746. package/out/interface/engine/index.d.ts.map +1 -0
  747. package/out/interface/engine/index.js +1 -0
  748. package/out/interface/index.d.ts +6 -0
  749. package/out/interface/index.d.ts.map +1 -1
  750. package/out/interface/index.js +6 -0
  751. package/out/interface/logic-scheduler/i-scheduler-logic.d.ts +76 -0
  752. package/out/interface/logic-scheduler/i-scheduler-logic.d.ts.map +1 -0
  753. package/out/interface/logic-scheduler/i-scheduler-logic.js +1 -0
  754. package/out/interface/logic-scheduler/i-trigger-match-params.d.ts +23 -0
  755. package/out/interface/logic-scheduler/i-trigger-match-params.d.ts.map +1 -0
  756. package/out/interface/logic-scheduler/i-trigger-match-params.js +1 -0
  757. package/out/interface/logic-scheduler/index.d.ts +3 -0
  758. package/out/interface/logic-scheduler/index.d.ts.map +1 -0
  759. package/out/interface/logic-scheduler/index.js +1 -0
  760. package/out/interface/model/index.d.ts +2 -0
  761. package/out/interface/model/index.d.ts.map +1 -0
  762. package/out/interface/model/index.js +1 -0
  763. package/out/interface/model/layout.d.ts +6 -0
  764. package/out/interface/model/layout.d.ts.map +1 -0
  765. package/out/interface/model/layout.js +1 -0
  766. package/out/interface/provider/i-control.provider.d.ts +19 -0
  767. package/out/interface/provider/i-control.provider.d.ts.map +1 -0
  768. package/out/interface/provider/i-control.provider.js +1 -0
  769. package/out/interface/provider/i-editor.provider.d.ts +39 -0
  770. package/out/interface/provider/i-editor.provider.d.ts.map +1 -0
  771. package/out/interface/provider/i-editor.provider.js +1 -0
  772. package/out/interface/provider/i-form-detail.provider.d.ts +31 -0
  773. package/out/interface/provider/i-form-detail.provider.d.ts.map +1 -0
  774. package/out/interface/provider/i-form-detail.provider.js +1 -0
  775. package/out/interface/provider/i-grid-column.provider.d.ts +31 -0
  776. package/out/interface/provider/i-grid-column.provider.d.ts.map +1 -0
  777. package/out/interface/provider/i-grid-column.provider.js +1 -0
  778. package/out/interface/provider/i-panel-item.provider.d.ts +32 -0
  779. package/out/interface/provider/i-panel-item.provider.d.ts.map +1 -0
  780. package/out/interface/provider/i-panel-item.provider.js +1 -0
  781. package/out/interface/provider/i-portlet.provider.d.ts +31 -0
  782. package/out/interface/provider/i-portlet.provider.d.ts.map +1 -0
  783. package/out/interface/provider/i-portlet.provider.js +1 -0
  784. package/out/interface/provider/i-ui-action.provider.d.ts +22 -0
  785. package/out/interface/provider/i-ui-action.provider.d.ts.map +1 -0
  786. package/out/interface/provider/i-ui-action.provider.js +1 -0
  787. package/out/interface/provider/i-view.provider.d.ts +19 -0
  788. package/out/interface/provider/i-view.provider.d.ts.map +1 -0
  789. package/out/interface/provider/i-view.provider.js +1 -0
  790. package/out/interface/provider/i.provider.d.ts +10 -0
  791. package/out/interface/provider/i.provider.d.ts.map +1 -0
  792. package/out/interface/provider/i.provider.js +1 -0
  793. package/out/interface/provider/index.d.ts +10 -9
  794. package/out/interface/provider/index.d.ts.map +1 -1
  795. package/out/interface/provider/index.js +9 -8
  796. package/out/interface/provider/model-loader.provider.d.ts +49 -0
  797. package/out/interface/provider/model-loader.provider.d.ts.map +1 -0
  798. package/out/interface/provider/model-loader.provider.js +1 -0
  799. package/out/interface/register/index.d.ts +0 -7
  800. package/out/interface/register/index.d.ts.map +1 -1
  801. package/out/interface/register/index.js +0 -7
  802. package/out/interface/service/code-list-item/code-list-item.d.ts.map +1 -0
  803. package/out/interface/service/code-list-item/code-list-item.js +1 -0
  804. package/out/interface/service/i-data-entity/i-data-entity.d.ts +77 -0
  805. package/out/interface/service/i-data-entity/i-data-entity.d.ts.map +1 -0
  806. package/out/interface/service/i-data-entity/i-data-entity.js +1 -0
  807. package/out/interface/service/index.d.ts +4 -0
  808. package/out/interface/service/index.d.ts.map +1 -0
  809. package/out/interface/service/index.js +1 -0
  810. package/out/interface/service/service/i-app-de-authority.service.d.ts +20 -0
  811. package/out/interface/service/service/i-app-de-authority.service.d.ts.map +1 -0
  812. package/out/interface/service/service/i-app-de-authority.service.js +1 -0
  813. package/out/interface/service/service/i-app-de.service.d.ts +51 -0
  814. package/out/interface/service/service/i-app-de.service.d.ts.map +1 -0
  815. package/out/interface/service/service/i-app-de.service.js +1 -0
  816. package/out/interface/service/service/i-file.service.d.ts +24 -0
  817. package/out/interface/service/service/i-file.service.d.ts.map +1 -0
  818. package/out/interface/service/service/i-file.service.js +1 -0
  819. package/out/interface/service/service/i-wf.service.d.ts +72 -0
  820. package/out/interface/service/service/i-wf.service.d.ts.map +1 -0
  821. package/out/interface/service/service/i-wf.service.js +1 -0
  822. package/out/interface/service/service/index.d.ts +5 -0
  823. package/out/interface/service/service/index.d.ts.map +1 -0
  824. package/out/interface/service/service/index.js +4 -0
  825. package/out/interface/store/i-store.d.ts +18 -0
  826. package/out/interface/store/i-store.d.ts.map +1 -0
  827. package/out/interface/store/i-store.js +8 -0
  828. package/out/interface/studio/i-view-session.d.ts +17 -0
  829. package/out/interface/studio/i-view-session.d.ts.map +1 -0
  830. package/out/interface/studio/i-view-session.js +1 -0
  831. package/out/interface/studio/index.d.ts +2 -0
  832. package/out/interface/studio/index.d.ts.map +1 -0
  833. package/out/interface/studio/index.js +1 -0
  834. package/out/interface/util/i-notification-util/i-notification-util.d.ts +1 -1
  835. package/out/interface/util/i-notification-util/i-notification-util.d.ts.map +1 -1
  836. package/out/interface/util/i-open-view-util/i-open-view-util.d.ts +15 -15
  837. package/out/interface/util/i-open-view-util/i-open-view-util.d.ts.map +1 -1
  838. package/out/interface/util/index.d.ts +1 -0
  839. package/out/interface/util/index.d.ts.map +1 -1
  840. package/out/interface/util/script/i-script-function.d.ts +24 -0
  841. package/out/interface/util/script/i-script-function.d.ts.map +1 -0
  842. package/out/interface/util/script/i-script-function.js +1 -0
  843. package/out/logic-scheduler/executor/app-de-ui-logic-executor.d.ts +15 -0
  844. package/out/logic-scheduler/executor/app-de-ui-logic-executor.d.ts.map +1 -0
  845. package/out/logic-scheduler/executor/app-de-ui-logic-executor.js +21 -0
  846. package/out/logic-scheduler/executor/app-ui-logic-executor.d.ts +42 -0
  847. package/out/logic-scheduler/executor/app-ui-logic-executor.d.ts.map +1 -0
  848. package/out/logic-scheduler/executor/app-ui-logic-executor.js +130 -0
  849. package/out/logic-scheduler/executor/logic-executor-factory.d.ts +35 -0
  850. package/out/logic-scheduler/executor/logic-executor-factory.d.ts.map +1 -0
  851. package/out/logic-scheduler/executor/logic-executor-factory.js +42 -0
  852. package/out/logic-scheduler/executor/logic-executor.d.ts +40 -0
  853. package/out/logic-scheduler/executor/logic-executor.d.ts.map +1 -0
  854. package/out/logic-scheduler/executor/logic-executor.js +37 -0
  855. package/out/logic-scheduler/executor/script-executor.d.ts +40 -0
  856. package/out/logic-scheduler/executor/script-executor.d.ts.map +1 -0
  857. package/out/logic-scheduler/executor/script-executor.js +56 -0
  858. package/out/logic-scheduler/index.d.ts +14 -0
  859. package/out/logic-scheduler/index.d.ts.map +1 -0
  860. package/out/logic-scheduler/index.js +30 -0
  861. package/out/logic-scheduler/logic-scheduler-center.d.ts +45 -0
  862. package/out/logic-scheduler/logic-scheduler-center.d.ts.map +1 -0
  863. package/out/logic-scheduler/logic-scheduler-center.js +49 -0
  864. package/out/logic-scheduler/scheduler/control-logic-scheduler.d.ts +14 -0
  865. package/out/logic-scheduler/scheduler/control-logic-scheduler.d.ts.map +1 -0
  866. package/out/logic-scheduler/scheduler/control-logic-scheduler.js +16 -0
  867. package/out/logic-scheduler/scheduler/logic-scheduler.d.ts +126 -0
  868. package/out/logic-scheduler/scheduler/logic-scheduler.d.ts.map +1 -0
  869. package/out/logic-scheduler/scheduler/logic-scheduler.js +183 -0
  870. package/out/logic-scheduler/scheduler/view-logic-scheduler.d.ts +24 -0
  871. package/out/logic-scheduler/scheduler/view-logic-scheduler.d.ts.map +1 -0
  872. package/out/logic-scheduler/scheduler/view-logic-scheduler.js +33 -0
  873. package/out/logic-scheduler/trigger/custom-trigger.d.ts +13 -0
  874. package/out/logic-scheduler/trigger/custom-trigger.d.ts.map +1 -0
  875. package/out/logic-scheduler/trigger/custom-trigger.js +11 -0
  876. package/out/logic-scheduler/trigger/item-dyna-logic-trigger.d.ts +12 -0
  877. package/out/logic-scheduler/trigger/item-dyna-logic-trigger.d.ts.map +1 -0
  878. package/out/logic-scheduler/trigger/item-dyna-logic-trigger.js +31 -0
  879. package/out/logic-scheduler/trigger/logic-trigger-factory.d.ts +35 -0
  880. package/out/logic-scheduler/trigger/logic-trigger-factory.d.ts.map +1 -0
  881. package/out/logic-scheduler/trigger/logic-trigger-factory.js +42 -0
  882. package/out/logic-scheduler/trigger/logic-trigger.d.ts +63 -0
  883. package/out/logic-scheduler/trigger/logic-trigger.d.ts.map +1 -0
  884. package/out/logic-scheduler/trigger/logic-trigger.js +61 -0
  885. package/out/logic-scheduler/trigger/timer-trigger.d.ts +17 -0
  886. package/out/logic-scheduler/trigger/timer-trigger.d.ts.map +1 -0
  887. package/out/logic-scheduler/trigger/timer-trigger.js +31 -0
  888. package/out/logic-scheduler/trigger/view-event-trigger.d.ts +19 -0
  889. package/out/logic-scheduler/trigger/view-event-trigger.d.ts.map +1 -0
  890. package/out/logic-scheduler/trigger/view-event-trigger.js +23 -0
  891. package/out/model/data-entity/data-entity.d.ts +59 -0
  892. package/out/model/data-entity/data-entity.d.ts.map +1 -0
  893. package/out/model/data-entity/data-entity.js +92 -0
  894. package/out/model/form/form-detail.d.ts +11 -0
  895. package/out/model/form/form-detail.d.ts.map +1 -0
  896. package/out/model/form/form-detail.js +24 -0
  897. package/out/model/form/index.d.ts +2 -0
  898. package/out/model/form/index.d.ts.map +1 -0
  899. package/out/model/form/index.js +1 -0
  900. package/out/model/grid/column.d.ts +12 -0
  901. package/out/model/grid/column.d.ts.map +1 -0
  902. package/out/model/grid/column.js +15 -0
  903. package/out/model/grid/index.d.ts +2 -0
  904. package/out/model/grid/index.d.ts.map +1 -0
  905. package/out/model/grid/index.js +1 -0
  906. package/out/model/index.d.ts +7 -1
  907. package/out/model/index.d.ts.map +1 -1
  908. package/out/model/index.js +7 -1
  909. package/out/model/layout/layout.d.ts +43 -0
  910. package/out/model/layout/layout.d.ts.map +1 -0
  911. package/out/model/layout/layout.js +125 -0
  912. package/out/model/tree/index.d.ts +3 -0
  913. package/out/model/tree/index.d.ts.map +1 -0
  914. package/out/model/tree/index.js +2 -0
  915. package/out/model/tree/tree-node-rs.d.ts +14 -0
  916. package/out/model/tree/tree-node-rs.d.ts.map +1 -0
  917. package/out/model/tree/tree-node-rs.js +26 -0
  918. package/out/model/tree/tree-node.d.ts +21 -0
  919. package/out/model/tree/tree-node.d.ts.map +1 -0
  920. package/out/model/tree/tree-node.js +23 -0
  921. package/out/model/ui-action/ui-action.d.ts +11 -0
  922. package/out/model/ui-action/ui-action.d.ts.map +1 -0
  923. package/out/model/ui-action/ui-action.js +13 -0
  924. package/out/model/utils/index.d.ts +1 -2
  925. package/out/model/utils/index.d.ts.map +1 -1
  926. package/out/model/utils/index.js +1 -2
  927. package/out/model/utils/util.d.ts +45 -0
  928. package/out/model/utils/util.d.ts.map +1 -0
  929. package/out/model/utils/util.js +89 -0
  930. package/out/model/view/view.d.ts +29 -0
  931. package/out/model/view/view.d.ts.map +1 -0
  932. package/out/model/view/view.js +48 -0
  933. package/out/plugin/plugin-static-resource/plugin-static-resource.d.ts +11 -2
  934. package/out/plugin/plugin-static-resource/plugin-static-resource.d.ts.map +1 -1
  935. package/out/plugin/plugin-static-resource/plugin-static-resource.js +13 -5
  936. package/out/register/helper/control-register.d.ts.map +1 -1
  937. package/out/register/helper/editor-register.d.ts.map +1 -1
  938. package/out/register/helper/form-detail-register.d.ts.map +1 -1
  939. package/out/register/helper/grid-column-register.d.ts.map +1 -1
  940. package/out/register/helper/index.d.ts +1 -0
  941. package/out/register/helper/index.d.ts.map +1 -1
  942. package/out/register/helper/index.js +1 -0
  943. package/out/register/helper/panel-item-register.d.ts +1 -1
  944. package/out/register/helper/panel-item-register.d.ts.map +1 -1
  945. package/out/register/helper/panel-item-register.js +13 -15
  946. package/out/register/helper/portlet-register.d.ts +23 -0
  947. package/out/register/helper/portlet-register.d.ts.map +1 -0
  948. package/out/register/helper/portlet-register.js +36 -0
  949. package/out/register/helper/ui-action-register.d.ts.map +1 -1
  950. package/out/register/helper/view-register.d.ts.map +1 -1
  951. package/out/service/app-data-entity/app-data-entity.d.ts +8 -13
  952. package/out/service/app-data-entity/app-data-entity.d.ts.map +1 -1
  953. package/out/service/app-data-entity/app-data-entity.js +48 -26
  954. package/out/service/de-service-util.d.ts +13 -6
  955. package/out/service/de-service-util.d.ts.map +1 -1
  956. package/out/service/de-service-util.js +22 -8
  957. package/out/service/dto/method.dto.d.ts +2 -2
  958. package/out/service/dto/method.dto.d.ts.map +1 -1
  959. package/out/service/dto/method.dto.js +2 -2
  960. package/out/service/index.d.ts +3 -3
  961. package/out/service/index.d.ts.map +1 -1
  962. package/out/service/index.js +3 -3
  963. package/out/service/service/auth/auth.service.d.ts.map +1 -0
  964. package/out/service/service/authority/authority.service.d.ts +97 -0
  965. package/out/service/service/authority/authority.service.d.ts.map +1 -0
  966. package/out/service/service/authority/authority.service.js +151 -0
  967. package/out/service/service/authority/de-authority.service.d.ts +27 -0
  968. package/out/service/service/authority/de-authority.service.d.ts.map +1 -0
  969. package/out/service/service/authority/de-authority.service.js +60 -0
  970. package/out/service/service/authority/index.d.ts +3 -0
  971. package/out/service/service/authority/index.d.ts.map +1 -0
  972. package/out/service/service/authority/index.js +2 -0
  973. package/out/service/service/code-list/code-list.service.d.ts +23 -12
  974. package/out/service/service/code-list/code-list.service.d.ts.map +1 -1
  975. package/out/service/service/code-list/code-list.service.js +29 -24
  976. package/out/service/service/control/control.service.d.ts +86 -0
  977. package/out/service/service/control/control.service.d.ts.map +1 -0
  978. package/out/service/service/control/control.service.js +76 -0
  979. package/out/service/service/control/index.d.ts +3 -0
  980. package/out/service/service/control/index.d.ts.map +1 -0
  981. package/out/service/service/control/index.js +2 -0
  982. package/out/service/service/control/md-control.service.d.ts +87 -0
  983. package/out/service/service/control/md-control.service.d.ts.map +1 -0
  984. package/out/service/service/control/md-control.service.js +150 -0
  985. package/out/service/service/counter/counter.service.d.ts.map +1 -1
  986. package/out/service/service/counter/counter.service.js +8 -9
  987. package/out/service/service/entity/de.service.d.ts +1 -1
  988. package/out/service/service/entity/de.service.d.ts.map +1 -1
  989. package/out/service/service/entity/method/de-action.d.ts +21 -19
  990. package/out/service/service/entity/method/de-action.d.ts.map +1 -1
  991. package/out/service/service/entity/method/de-action.js +36 -51
  992. package/out/service/service/entity/method/fetch.d.ts +6 -6
  993. package/out/service/service/entity/method/fetch.d.ts.map +1 -1
  994. package/out/service/service/entity/method/fetch.js +7 -19
  995. package/out/service/service/entity/method/method-input.js +1 -1
  996. package/out/service/service/entity/method/method-renturn.d.ts +3 -3
  997. package/out/service/service/entity/method/method-renturn.d.ts.map +1 -1
  998. package/out/service/service/entity/method/method-renturn.js +2 -2
  999. package/out/service/service/entity/method/method.d.ts +4 -5
  1000. package/out/service/service/entity/method/method.d.ts.map +1 -1
  1001. package/out/service/service/entity/method/method.js +3 -3
  1002. package/out/service/service/file/file.service.d.ts +2 -1
  1003. package/out/service/service/file/file.service.d.ts.map +1 -1
  1004. package/out/service/service/index.d.ts +3 -1
  1005. package/out/service/service/index.d.ts.map +1 -1
  1006. package/out/service/service/index.js +3 -1
  1007. package/out/service/service/work-flow/work-flow.service.d.ts +70 -25
  1008. package/out/service/service/work-flow/work-flow.service.d.ts.map +1 -1
  1009. package/out/service/service/work-flow/work-flow.service.js +86 -29
  1010. package/out/service/utils/app-counter/app-counter.d.ts +3 -5
  1011. package/out/service/utils/app-counter/app-counter.d.ts.map +1 -1
  1012. package/out/service/utils/app-counter/app-counter.js +13 -15
  1013. package/out/service/utils/de-cache/de-cache.d.ts +25 -25
  1014. package/out/service/utils/de-cache/de-cache.d.ts.map +1 -1
  1015. package/out/service/utils/de-cache/de-cache.js +14 -14
  1016. package/out/service/utils/de-dq-cond/cond-type.d.ts +1 -9
  1017. package/out/service/utils/de-dq-cond/cond-type.d.ts.map +1 -1
  1018. package/out/service/utils/de-dq-cond/ps-de-dq-cond-engine.js +2 -3
  1019. package/out/service/utils/de-dq-cond/ps-model-cond-engine-base.d.ts +1 -1
  1020. package/out/service/utils/de-dq-cond/ps-model-cond-engine-base.js +1 -1
  1021. package/out/service/utils/de-dq-cond/ps-model-group-cond-base.d.ts.map +1 -1
  1022. package/out/service/utils/de-dq-cond/ps-model-group-cond-base.js +4 -3
  1023. package/out/service/utils/de-dq-cond-util/de-dq-cond-util.d.ts.map +1 -1
  1024. package/out/service/utils/de-dq-cond-util/de-dq-cond-util.js +3 -3
  1025. package/out/service/utils/dynamic-code-list/dynamic-code-list.d.ts +4 -20
  1026. package/out/service/utils/dynamic-code-list/dynamic-code-list.d.ts.map +1 -1
  1027. package/out/service/utils/dynamic-code-list/dynamic-code-list.js +31 -52
  1028. package/out/service/utils/index.d.ts +1 -1
  1029. package/out/service/utils/index.d.ts.map +1 -1
  1030. package/out/service/utils/index.js +1 -1
  1031. package/out/service/utils/res-path/res-path.d.ts +19 -2
  1032. package/out/service/utils/res-path/res-path.d.ts.map +1 -1
  1033. package/out/service/utils/res-path/res-path.js +43 -12
  1034. package/out/service/utils/service-exist-util/service-exist-util.d.ts +3 -3
  1035. package/out/service/utils/service-exist-util/service-exist-util.d.ts.map +1 -1
  1036. package/out/service/utils/service-exist-util/service-exist-util.js +1 -1
  1037. package/out/service/vo/control.vo.d.ts +34 -25
  1038. package/out/service/vo/control.vo.d.ts.map +1 -1
  1039. package/out/service/vo/control.vo.js +61 -44
  1040. package/out/service/vo/tree-node-data/index.d.ts +2 -0
  1041. package/out/service/vo/tree-node-data/index.d.ts.map +1 -1
  1042. package/out/service/vo/tree-node-data/index.js +2 -0
  1043. package/out/service/vo/tree-node-data/tree-code-list-node-data.d.ts +24 -0
  1044. package/out/service/vo/tree-node-data/tree-code-list-node-data.d.ts.map +1 -0
  1045. package/out/service/vo/tree-node-data/tree-code-list-node-data.js +33 -0
  1046. package/out/service/vo/tree-node-data/tree-data-set-node-data.d.ts +7 -5
  1047. package/out/service/vo/tree-node-data/tree-data-set-node-data.d.ts.map +1 -1
  1048. package/out/service/vo/tree-node-data/tree-data-set-node-data.js +12 -6
  1049. package/out/service/vo/tree-node-data/tree-node-data.d.ts +17 -32
  1050. package/out/service/vo/tree-node-data/tree-node-data.d.ts.map +1 -1
  1051. package/out/service/vo/tree-node-data/tree-node-data.js +9 -9
  1052. package/out/service/vo/tree-node-data/tree-static-node-data.d.ts +7 -6
  1053. package/out/service/vo/tree-node-data/tree-static-node-data.d.ts.map +1 -1
  1054. package/out/service/vo/tree-node-data/tree-static-node-data.js +12 -7
  1055. package/out/service/vo/ui-map-field.d.ts +0 -1
  1056. package/out/service/vo/ui-map-field.d.ts.map +1 -1
  1057. package/out/service/vo/ui-map-field.js +0 -3
  1058. package/out/types.d.ts +8 -0
  1059. package/out/types.d.ts.map +1 -1
  1060. package/out/ui-action/index.d.ts.map +1 -0
  1061. package/out/ui-action/provider/backend-ui-action-provider.d.ts +16 -0
  1062. package/out/ui-action/provider/backend-ui-action-provider.d.ts.map +1 -0
  1063. package/out/ui-action/provider/backend-ui-action-provider.js +59 -0
  1064. package/out/ui-action/provider/front-ui-action-provider.d.ts +26 -0
  1065. package/out/ui-action/provider/front-ui-action-provider.d.ts.map +1 -0
  1066. package/out/ui-action/provider/front-ui-action-provider.js +72 -0
  1067. package/out/ui-action/provider/index.d.ts.map +1 -0
  1068. package/out/ui-action/provider/index.js +28 -0
  1069. package/out/ui-action/provider/sys-ui-action-provider.d.ts +16 -0
  1070. package/out/ui-action/provider/sys-ui-action-provider.d.ts.map +1 -0
  1071. package/out/ui-action/provider/sys-ui-action-provider.js +22 -0
  1072. package/out/ui-action/provider/ui-action-provider-base.d.ts +90 -0
  1073. package/out/ui-action/provider/ui-action-provider-base.d.ts.map +1 -0
  1074. package/out/ui-action/provider/ui-action-provider-base.js +194 -0
  1075. package/out/ui-action/provider/wf-withdraw-ui-action-provider.d.ts +16 -0
  1076. package/out/ui-action/provider/wf-withdraw-ui-action-provider.d.ts.map +1 -0
  1077. package/out/ui-action/uiaction-util.d.ts +32 -0
  1078. package/out/ui-action/uiaction-util.d.ts.map +1 -0
  1079. package/out/ui-action/uiaction-util.js +49 -0
  1080. package/out/ui-logic/index.d.ts +16 -0
  1081. package/out/ui-logic/index.d.ts.map +1 -0
  1082. package/out/ui-logic/index.js +32 -0
  1083. package/out/ui-logic/ui-logic-context.d.ts +93 -0
  1084. package/out/ui-logic/ui-logic-context.d.ts.map +1 -0
  1085. package/out/ui-logic/ui-logic-context.js +104 -0
  1086. package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.d.ts +11 -0
  1087. package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.d.ts.map +1 -0
  1088. package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.js +10 -0
  1089. package/out/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.d.ts +58 -0
  1090. package/out/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.d.ts.map +1 -0
  1091. package/out/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.js +79 -0
  1092. package/out/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.d.ts +48 -0
  1093. package/out/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.d.ts.map +1 -0
  1094. package/out/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.js +67 -0
  1095. package/out/ui-logic/ui-logic-link/ui-logic-link.d.ts +60 -0
  1096. package/out/ui-logic/ui-logic-link/ui-logic-link.d.ts.map +1 -0
  1097. package/out/ui-logic/ui-logic-link/ui-logic-link.js +86 -0
  1098. package/out/ui-logic/ui-logic-node/de-action-node/de-action-node.d.ts +17 -0
  1099. package/out/ui-logic/ui-logic-node/de-action-node/de-action-node.d.ts.map +1 -0
  1100. package/out/ui-logic/ui-logic-node/de-action-node/de-action-node.js +28 -0
  1101. package/out/ui-logic/ui-logic-node/de-ui-action-node/de-ui-action-node.d.ts +17 -0
  1102. package/out/ui-logic/ui-logic-node/de-ui-action-node/de-ui-action-node.d.ts.map +1 -0
  1103. package/out/ui-logic/ui-logic-node/de-ui-action-node/de-ui-action-node.js +32 -0
  1104. package/out/ui-logic/ui-logic-node/end-node/end-node.d.ts +17 -0
  1105. package/out/ui-logic/ui-logic-node/end-node/end-node.d.ts.map +1 -0
  1106. package/out/ui-logic/ui-logic-node/end-node/end-node.js +35 -0
  1107. package/out/ui-logic/ui-logic-node/index.d.ts +8 -0
  1108. package/out/ui-logic/ui-logic-node/index.d.ts.map +1 -0
  1109. package/out/ui-logic/ui-logic-node/index.js +7 -0
  1110. package/out/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.d.ts +25 -0
  1111. package/out/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.d.ts.map +1 -0
  1112. package/out/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.js +49 -0
  1113. package/out/ui-logic/ui-logic-node/start-node/start-node.d.ts +15 -0
  1114. package/out/ui-logic/ui-logic-node/start-node/start-node.d.ts.map +1 -0
  1115. package/out/ui-logic/ui-logic-node/start-node/start-node.js +15 -0
  1116. package/out/ui-logic/ui-logic-node/ui-logic-node.d.ts +43 -0
  1117. package/out/ui-logic/ui-logic-node/ui-logic-node.d.ts.map +1 -0
  1118. package/out/ui-logic/ui-logic-node/ui-logic-node.js +22 -0
  1119. package/out/ui-logic/ui-logic-node/view-ctrl-invoke-node/view-ctrl-invoke-node.d.ts +16 -0
  1120. package/out/ui-logic/ui-logic-node/view-ctrl-invoke-node/view-ctrl-invoke-node.d.ts.map +1 -0
  1121. package/out/ui-logic/ui-logic-node/view-ctrl-invoke-node/view-ctrl-invoke-node.js +39 -0
  1122. package/out/ui-logic/ui-logic-param/ui-logic-param.d.ts +37 -0
  1123. package/out/ui-logic/ui-logic-param/ui-logic-param.d.ts.map +1 -0
  1124. package/out/ui-logic/ui-logic-param/ui-logic-param.js +125 -0
  1125. package/out/ui-logic/ui-logic.d.ts +80 -0
  1126. package/out/ui-logic/ui-logic.d.ts.map +1 -0
  1127. package/out/ui-logic/ui-logic.js +177 -0
  1128. package/out/ui-logic/utils/handle-src-val.d.ts +31 -0
  1129. package/out/ui-logic/utils/handle-src-val.d.ts.map +1 -0
  1130. package/out/ui-logic/utils/handle-src-val.js +55 -0
  1131. package/out/ui-logic/utils/index.d.ts +2 -0
  1132. package/out/ui-logic/utils/index.d.ts.map +1 -0
  1133. package/out/ui-logic/utils/index.js +1 -0
  1134. package/out/utils/index.d.ts +3 -2
  1135. package/out/utils/index.d.ts.map +1 -1
  1136. package/out/utils/index.js +3 -2
  1137. package/out/utils/layout-panel-util/layout-panel-util.d.ts +67 -0
  1138. package/out/utils/layout-panel-util/layout-panel-util.d.ts.map +1 -0
  1139. package/out/utils/layout-panel-util/layout-panel-util.js +124 -0
  1140. package/out/utils/modal/modal.d.ts +24 -8
  1141. package/out/utils/modal/modal.d.ts.map +1 -1
  1142. package/out/utils/modal/modal.js +48 -18
  1143. package/out/utils/nav-params/calc-nav-params.d.ts +18 -4
  1144. package/out/utils/nav-params/calc-nav-params.d.ts.map +1 -1
  1145. package/out/utils/nav-params/calc-nav-params.js +20 -6
  1146. package/out/utils/nav-params/nav-params.d.ts +20 -1
  1147. package/out/utils/nav-params/nav-params.d.ts.map +1 -1
  1148. package/out/utils/nav-params/nav-params.js +56 -0
  1149. package/out/utils/open-redirect-view/open-redirect-view.d.ts +28 -2
  1150. package/out/utils/open-redirect-view/open-redirect-view.d.ts.map +1 -1
  1151. package/out/utils/open-redirect-view/open-redirect-view.js +199 -227
  1152. package/out/utils/script/index.d.ts +3 -0
  1153. package/out/utils/script/index.d.ts.map +1 -0
  1154. package/out/utils/script/index.js +2 -0
  1155. package/out/utils/script/script-factory.d.ts +26 -0
  1156. package/out/utils/script/script-factory.d.ts.map +1 -0
  1157. package/out/utils/script/script-factory.js +28 -0
  1158. package/out/utils/script/script-function.d.ts +44 -0
  1159. package/out/utils/script/script-function.d.ts.map +1 -0
  1160. package/out/utils/script/script-function.js +85 -0
  1161. package/out/utils/value-rule/value-rule.d.ts +13 -0
  1162. package/out/utils/value-rule/value-rule.d.ts.map +1 -0
  1163. package/out/utils/value-rule/value-rule.js +18 -0
  1164. package/out/utils/verify/de-rule-verify.d.ts.map +1 -1
  1165. package/out/utils/verify/de-rule-verify.js +18 -19
  1166. package/out/utils/verify/verify.d.ts.map +1 -1
  1167. package/out/utils/wf-helper/wf-helper.d.ts +12 -0
  1168. package/out/utils/wf-helper/wf-helper.d.ts.map +1 -1
  1169. package/out/utils/wf-helper/wf-helper.js +21 -0
  1170. package/package.json +16 -10
  1171. package/src/app-hub.ts +9 -30
  1172. package/src/application.ts +67 -4
  1173. package/src/command/app/app-func/app-func.ts +18 -19
  1174. package/src/command/app/open-app-view/open-app-view.ts +33 -18
  1175. package/src/config/global-config.ts +24 -7
  1176. package/src/constant/control-type.ts +5 -0
  1177. package/src/constant/sys-uiaction-tag.ts +81 -0
  1178. package/src/controller/common/base.controller.ts +69 -33
  1179. package/src/controller/common/control/control.controller.ts +139 -48
  1180. package/src/controller/common/control/index.ts +2 -2
  1181. package/src/controller/common/control/md-control.controller.ts +384 -0
  1182. package/src/controller/common/editor/code-list-editor.controller.ts +42 -0
  1183. package/src/controller/common/editor/editor.controller.ts +47 -9
  1184. package/src/controller/common/index.ts +5 -3
  1185. package/src/controller/common/view/mob-view.controller.ts +17 -0
  1186. package/src/controller/common/view/view.controller.ts +236 -38
  1187. package/src/controller/constant/control/index.ts +3 -3
  1188. package/src/controller/ctx/ctx.ts +38 -14
  1189. package/src/controller/ctx/index.ts +1 -1
  1190. package/src/controller/index.ts +0 -2
  1191. package/src/controller/utils/button-state/button-container.state.ts +69 -0
  1192. package/src/controller/utils/button-state/index.ts +2 -2
  1193. package/src/controller/utils/button-state/ui-action-button.state.ts +166 -0
  1194. package/src/controller/utils/counter/counter.ts +1 -1
  1195. package/src/controller/utils/counter/mounted-counter.ts +2 -2
  1196. package/src/controller/utils/event/controller-event.ts +27 -10
  1197. package/src/controller/utils/event/qx-event-ex.ts +1 -1
  1198. package/src/controller/utils/index.ts +3 -1
  1199. package/src/controller/utils/loading/loading.state.ts +54 -0
  1200. package/src/controller/utils/util/util.ts +40 -0
  1201. package/src/controller/utils/value-rule/value-rule.ts +94 -0
  1202. package/src/de-logic/de-logic-context.ts +85 -0
  1203. package/src/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.ts +9 -0
  1204. package/src/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.ts +97 -0
  1205. package/src/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.ts +111 -0
  1206. package/src/de-logic/de-logic-link/de-logic-link.ts +73 -0
  1207. package/src/de-logic/de-logic-node/append-param-node/append-param-node.ts +44 -0
  1208. package/src/de-logic/de-logic-node/bind-param-node/bind-param-node.ts +30 -0
  1209. package/src/de-logic/de-logic-node/copy-param-node/copy-param-node.ts +31 -0
  1210. package/src/de-logic/de-logic-node/data-set-node/data-set-node.ts +37 -0
  1211. package/src/de-logic/de-logic-node/de-action-node/de-action-node.ts +44 -0
  1212. package/src/de-logic/de-logic-node/de-logic-node.ts +46 -0
  1213. package/src/de-logic/de-logic-node/end-node/end-node.ts +43 -0
  1214. package/src/de-logic/de-logic-node/index.ts +12 -0
  1215. package/src/de-logic/de-logic-node/prepare-param-node/prepare-param-node.ts +180 -0
  1216. package/src/de-logic/de-logic-node/renew-param-node/renew-param-node.ts +25 -0
  1217. package/src/de-logic/de-logic-node/reset-param-node/reset-param-node.ts +25 -0
  1218. package/src/de-logic/de-logic-node/sort-param-node/sort-param-node.ts +29 -0
  1219. package/src/de-logic/de-logic-node/start-node/start-node.ts +17 -0
  1220. package/src/de-logic/de-logic-node/throw-exception-node/throw-exception-node.ts +29 -0
  1221. package/src/de-logic/de-logic-param/de-logic-param.ts +98 -0
  1222. package/src/de-logic/de-logic.ts +199 -0
  1223. package/src/de-logic/index.ts +96 -0
  1224. package/src/de-logic/utils/handle-src-val.ts +83 -0
  1225. package/src/de-logic/utils/index.ts +1 -0
  1226. package/src/engine/engine-factory.ts +1 -1
  1227. package/src/engine/index.ts +2 -2
  1228. package/src/engine/md-view.engine.ts +368 -0
  1229. package/src/engine/view-base.engine.ts +250 -0
  1230. package/src/global/global-util/global-util.ts +3 -3
  1231. package/src/hub/config/app-config-service.ts +13 -0
  1232. package/src/hub/config/app-view-config-service.ts +35 -0
  1233. package/src/hub/index.ts +1 -0
  1234. package/src/index.ts +1 -1
  1235. package/src/install.ts +5 -1
  1236. package/src/interface/common/i-app-config-service/i-app-config-service.ts +11 -0
  1237. package/src/interface/common/i-app-hub-service/i-app-hub-service.ts +9 -15
  1238. package/src/interface/common/i-app-view-config-service/i-app-view-config-service.ts +59 -0
  1239. package/src/interface/common/i-data-ability-params/i-data-ability-params.ts +33 -0
  1240. package/src/interface/common/i-global-config/i-global-app-menu-config.ts +21 -0
  1241. package/src/interface/common/i-global-config/i-global-codelist-config.ts +20 -0
  1242. package/src/interface/common/i-global-config/i-global-config.ts +21 -41
  1243. package/src/interface/common/i-global-config/i-global-grid-config.ts +37 -0
  1244. package/src/interface/common/i-global-config/i-global-view-config.ts +21 -0
  1245. package/src/interface/common/i-global-config/index.ts +5 -0
  1246. package/src/interface/common/i-modal/i-modal.ts +26 -15
  1247. package/src/interface/common/i-modal-data/i-modal-data.ts +2 -2
  1248. package/src/interface/common/i-ui-action-handler/i-ui-action-handler.ts +2 -2
  1249. package/src/interface/common/i-ui-action-result/i-ui-action-result.ts +1 -1
  1250. package/src/interface/common/i-ui-logic-params/i-ui-logic-params.ts +19 -3
  1251. package/src/interface/common/index.ts +13 -1
  1252. package/src/interface/controller/common/button-state/i-button-container.state.ts +54 -0
  1253. package/src/interface/controller/common/button-state/index.ts +2 -0
  1254. package/src/interface/controller/common/i-icon/i-icon.ts +24 -0
  1255. package/src/interface/controller/common/index.ts +2 -0
  1256. package/src/interface/controller/controller/common/i-enforceable.controller.ts +17 -0
  1257. package/src/interface/controller/controller/common/index.ts +1 -0
  1258. package/src/interface/controller/controller/control/form-detail/i-form-detail-container.controller.ts +13 -0
  1259. package/src/interface/controller/controller/control/form-detail/i-form-detail.controller.ts +48 -0
  1260. package/src/interface/controller/controller/control/form-detail/index.ts +2 -0
  1261. package/src/interface/controller/controller/control/grid-column/i-grid-column.controller.ts +12 -0
  1262. package/src/interface/controller/controller/control/grid-column/index.ts +1 -0
  1263. package/src/interface/controller/controller/control/i-app-menu.controller.ts +15 -0
  1264. package/src/interface/controller/controller/control/i-caption-bar.controller.ts +15 -0
  1265. package/src/interface/controller/controller/control/i-chart.controller.ts +22 -0
  1266. package/src/interface/controller/controller/control/i-control.controller.ts +52 -0
  1267. package/src/interface/controller/controller/control/i-dashboard.controller.ts +15 -0
  1268. package/src/interface/controller/controller/control/i-data-view-control.controller.ts +26 -0
  1269. package/src/interface/controller/controller/control/i-drbar.controller.ts +22 -0
  1270. package/src/interface/controller/controller/control/i-drtab.controller.ts +22 -0
  1271. package/src/interface/controller/controller/control/i-edit-form.controller.ts +61 -0
  1272. package/src/interface/controller/controller/control/i-exp-bar-control.controller.ts +48 -0
  1273. package/src/interface/controller/controller/control/i-form.controller.ts +26 -0
  1274. package/src/interface/controller/controller/control/i-grid.controller.ts +52 -0
  1275. package/src/interface/controller/controller/control/i-list.controller.ts +46 -0
  1276. package/src/interface/controller/controller/control/i-md-control.controller.ts +105 -0
  1277. package/src/interface/controller/controller/control/i-mob-md-ctrl.controller.ts +28 -0
  1278. package/src/interface/controller/controller/control/i-panel.controller.ts +45 -0
  1279. package/src/interface/controller/controller/control/i-pickup-view-panel.controller.ts +38 -0
  1280. package/src/interface/controller/controller/control/i-search-bar.controller.ts +15 -0
  1281. package/src/interface/controller/controller/control/i-search-form.controller.ts +56 -0
  1282. package/src/interface/controller/controller/control/i-tab-exp-panel.controller.ts +18 -0
  1283. package/src/interface/controller/controller/control/i-toolbar.controller.ts +44 -0
  1284. package/src/interface/controller/controller/control/i-tree-exp-bar.controller.ts +18 -0
  1285. package/src/interface/controller/controller/control/i-tree.controller.ts +58 -0
  1286. package/src/interface/controller/controller/control/i-view-layout-panel.controller.ts +19 -0
  1287. package/src/interface/controller/controller/control/i-wizard-panel.controller.ts +62 -0
  1288. package/src/interface/controller/controller/control/index.ts +29 -0
  1289. package/src/interface/controller/controller/control/panel-item/i-panel-data-container.controller.ts +21 -0
  1290. package/src/interface/controller/controller/control/panel-item/i-panel-item-container.controller.ts +18 -0
  1291. package/src/interface/controller/controller/control/panel-item/i-panel-item-nav-pos.controller.ts +73 -0
  1292. package/src/interface/controller/controller/control/panel-item/i-panel-item.controller.ts +55 -0
  1293. package/src/interface/controller/controller/control/panel-item/index.ts +4 -0
  1294. package/src/interface/controller/controller/control/portlet/i-portlet-container.controller.ts +8 -0
  1295. package/src/interface/controller/controller/control/portlet/i-portlet.controller.ts +45 -0
  1296. package/src/interface/controller/controller/control/portlet/index.ts +2 -0
  1297. package/src/interface/controller/controller/editor/i-editor-container.controller.ts +40 -0
  1298. package/src/interface/controller/controller/editor/i-editor.controller.ts +54 -0
  1299. package/src/interface/controller/controller/editor/index.ts +2 -0
  1300. package/src/interface/controller/controller/i.controller.ts +107 -0
  1301. package/src/interface/controller/controller/index.ts +5 -0
  1302. package/src/interface/controller/controller/view/i-mob-view.controller.ts +13 -0
  1303. package/src/interface/controller/controller/view/i-view.controller.ts +156 -0
  1304. package/src/interface/controller/controller/view/index.ts +2 -0
  1305. package/src/interface/controller/event/argument/base.event.ts +51 -0
  1306. package/src/interface/controller/event/argument/close-view.event.ts +20 -0
  1307. package/src/interface/controller/event/argument/data-change.event.ts +11 -0
  1308. package/src/interface/controller/event/argument/index.ts +6 -0
  1309. package/src/interface/controller/event/argument/load.event.ts +19 -0
  1310. package/src/interface/controller/event/argument/toolbar-click.event.ts +15 -0
  1311. package/src/interface/controller/event/argument/uiaction.event.ts +19 -0
  1312. package/src/interface/controller/event/argument/view-info.event.ts +27 -0
  1313. package/src/interface/controller/event/common/index.ts +1 -0
  1314. package/src/interface/controller/event/control/i-app-menu.event.ts +24 -0
  1315. package/src/interface/controller/event/control/i-caption-bar.event.ts +11 -0
  1316. package/src/interface/controller/event/control/i-chart.event.ts +11 -0
  1317. package/src/interface/controller/event/control/i-control.event.ts +27 -0
  1318. package/src/interface/controller/event/control/i-dashboard.event.ts +12 -0
  1319. package/src/interface/controller/event/control/i-data-view-control.event.ts +9 -0
  1320. package/src/interface/controller/event/control/i-drbar.event.ts +10 -0
  1321. package/src/interface/controller/event/control/i-drtab.event.ts +10 -0
  1322. package/src/interface/controller/event/control/i-edit-form.event.ts +52 -0
  1323. package/src/interface/controller/event/control/i-exp-bar-control.event.ts +12 -0
  1324. package/src/interface/controller/event/control/i-form.event.ts +24 -0
  1325. package/src/interface/controller/event/control/i-grid.event.ts +24 -0
  1326. package/src/interface/controller/event/control/i-kanban.event.ts +11 -0
  1327. package/src/interface/controller/event/control/i-list.event.ts +11 -0
  1328. package/src/interface/controller/event/control/i-md-control.event.ts +79 -0
  1329. package/src/interface/controller/event/control/i-mob-md-ctrl.event.ts +12 -0
  1330. package/src/interface/controller/event/control/i-panel.event.ts +11 -0
  1331. package/src/interface/controller/event/control/i-pickup-view-panel.event.ts +41 -0
  1332. package/src/interface/controller/event/control/i-search-bar.event.ts +21 -0
  1333. package/src/interface/controller/event/control/i-search-form.event.ts +17 -0
  1334. package/src/interface/controller/event/control/i-tab-exp-panel.event.ts +10 -0
  1335. package/src/interface/controller/event/control/i-toolbar.event.ts +26 -0
  1336. package/src/interface/controller/event/control/i-tree-exp-bar.event.ts +10 -0
  1337. package/src/interface/controller/event/control/i-tree.event.ts +11 -0
  1338. package/src/interface/controller/event/control/i-view-layout-panel.event.ts +11 -0
  1339. package/src/interface/controller/event/control/i-wizard-panel.event.ts +24 -0
  1340. package/src/interface/controller/event/control/index.ts +26 -0
  1341. package/src/interface/controller/event/view/i-app-portal-view.event.ts +12 -0
  1342. package/src/interface/controller/event/view/i-chart-view.event.ts +12 -0
  1343. package/src/interface/controller/event/view/i-data-view-exp-view.event.ts +10 -0
  1344. package/src/interface/controller/event/view/i-data-view.event.ts +10 -0
  1345. package/src/interface/controller/event/view/i-de-portal-view.event.ts +12 -0
  1346. package/src/interface/controller/event/view/i-edit-view.event.ts +27 -0
  1347. package/src/interface/controller/event/view/i-edit-view2.event.ts +10 -0
  1348. package/src/interface/controller/event/view/i-edit-view3.event.ts +10 -0
  1349. package/src/interface/controller/event/view/i-edit-view4.event.ts +10 -0
  1350. package/src/interface/controller/event/view/i-exp-view.event.ts +10 -0
  1351. package/src/interface/controller/event/view/i-grid-exp-view.event.ts +10 -0
  1352. package/src/interface/controller/event/view/i-grid-view.event.ts +12 -0
  1353. package/src/interface/controller/event/view/i-kanban-view.event.ts +12 -0
  1354. package/src/interface/controller/event/view/i-list-exp-view.event.ts +10 -0
  1355. package/src/interface/controller/event/view/i-list-view.event.ts +25 -0
  1356. package/src/interface/controller/event/view/i-md-view.event.ts +29 -0
  1357. package/src/interface/controller/event/view/i-mpickup-view.event.ts +12 -0
  1358. package/src/interface/controller/event/view/i-opt-view.event.ts +10 -0
  1359. package/src/interface/controller/event/view/i-panel-view.event.ts +12 -0
  1360. package/src/interface/controller/event/view/i-pickup-grid-view.event.ts +25 -0
  1361. package/src/interface/controller/event/view/i-pickup-tree-view.event.ts +29 -0
  1362. package/src/interface/controller/event/view/i-pickup-view.event.ts +12 -0
  1363. package/src/interface/controller/event/view/i-portal-view.event.ts +12 -0
  1364. package/src/interface/controller/event/view/i-tree-exp-view.event.ts +12 -0
  1365. package/src/interface/controller/event/view/i-tree-view.event.ts +12 -0
  1366. package/src/interface/controller/event/view/i-view.event.ts +53 -0
  1367. package/src/interface/controller/event/view/i-wf-dyna-edit-view.event.ts +11 -0
  1368. package/src/interface/controller/event/view/i-wf-dyna-edit-view3.event.ts +11 -0
  1369. package/src/interface/controller/event/view/i-wf-dyna-start-view.event.ts +11 -0
  1370. package/src/interface/controller/event/view/i-wf-step-trace-view.event.ts +10 -0
  1371. package/src/interface/controller/event/view/index.ts +34 -0
  1372. package/src/interface/controller/state/common/i-col-state.ts +86 -0
  1373. package/src/interface/controller/state/common/i-controller.state.ts +25 -0
  1374. package/src/interface/controller/state/common/index.ts +2 -0
  1375. package/src/interface/controller/state/control/form-detail/i-form-detail-container.state.ts +18 -0
  1376. package/src/interface/controller/state/control/form-detail/i-form-detail.state.ts +50 -0
  1377. package/src/interface/controller/state/control/form-detail/index.ts +2 -0
  1378. package/src/interface/controller/state/control/i-app-menu.state.ts +12 -0
  1379. package/src/interface/controller/state/control/i-caption-bar.state.ts +11 -0
  1380. package/src/interface/controller/state/control/i-chart.state.ts +11 -0
  1381. package/src/interface/controller/state/control/i-control.state.ts +20 -0
  1382. package/src/interface/controller/state/control/i-dashboard.state.ts +11 -0
  1383. package/src/interface/controller/state/control/i-data-view-control.state.ts +10 -0
  1384. package/src/interface/controller/state/control/i-drbar.state.ts +83 -0
  1385. package/src/interface/controller/state/control/i-drtab.state.ts +83 -0
  1386. package/src/interface/controller/state/control/i-edit-form.state.ts +3 -0
  1387. package/src/interface/controller/state/control/i-exp-bar-control.state.ts +20 -0
  1388. package/src/interface/controller/state/control/i-form.state.ts +39 -0
  1389. package/src/interface/controller/state/control/i-grid.state.ts +84 -0
  1390. package/src/interface/controller/state/control/i-list.state.ts +11 -0
  1391. package/src/interface/controller/state/control/i-md-control.state.ts +109 -0
  1392. package/src/interface/controller/state/control/i-mob-md-ctrl.state.ts +61 -0
  1393. package/src/interface/controller/state/control/i-panel.state.ts +13 -0
  1394. package/src/interface/controller/state/control/i-pickup-view-panel.state.ts +43 -0
  1395. package/src/interface/controller/state/control/i-search-bar.state.ts +11 -0
  1396. package/src/interface/controller/state/control/i-search-form.state.ts +3 -0
  1397. package/src/interface/controller/state/control/i-tab-exp-panel.state.ts +75 -0
  1398. package/src/interface/controller/state/control/i-toolbar.state.ts +82 -0
  1399. package/src/interface/controller/state/control/i-tree-exp-bar.state.ts +10 -0
  1400. package/src/interface/controller/state/control/i-tree.state.ts +148 -0
  1401. package/src/interface/controller/state/control/i-view-layout-panel.state.ts +3 -0
  1402. package/src/interface/controller/state/control/i-wizard-panel.state.ts +19 -0
  1403. package/src/interface/controller/state/control/index.ts +31 -0
  1404. package/src/interface/controller/state/control/panel-item/i-panel-item.state.ts +52 -0
  1405. package/src/interface/controller/state/control/panel-item/index.ts +1 -0
  1406. package/src/interface/controller/state/control/portlet/i-portlet.state.ts +37 -0
  1407. package/src/interface/controller/state/control/portlet/index.ts +1 -0
  1408. package/src/interface/controller/state/index.ts +3 -0
  1409. package/src/interface/controller/state/view/i-app-portal-view.state.ts +10 -0
  1410. package/src/interface/controller/state/view/i-chart-view.state.ts +10 -0
  1411. package/src/interface/controller/state/view/i-data-view-exp-view.state.ts +12 -0
  1412. package/src/interface/controller/state/view/i-data-view.state.ts +10 -0
  1413. package/src/interface/controller/state/view/i-de-portal-view.state.ts +10 -0
  1414. package/src/interface/controller/state/view/i-edit-view.state.ts +10 -0
  1415. package/src/interface/controller/state/view/i-edit-view2.state.ts +10 -0
  1416. package/src/interface/controller/state/view/i-edit-view3.state.ts +18 -0
  1417. package/src/interface/controller/state/view/i-edit-view4.state.ts +18 -0
  1418. package/src/interface/controller/state/view/i-exp-view.state.ts +22 -0
  1419. package/src/interface/controller/state/view/i-grid-exp-view.state.ts +12 -0
  1420. package/src/interface/controller/state/view/i-grid-view.state.ts +10 -0
  1421. package/src/interface/controller/state/view/i-index-view.state.ts +17 -0
  1422. package/src/interface/controller/state/view/i-list-exp-view.state.ts +12 -0
  1423. package/src/interface/controller/state/view/i-list-view.state.ts +29 -0
  1424. package/src/interface/controller/state/view/i-md-view.state.ts +10 -0
  1425. package/src/interface/controller/state/view/i-mpickup-view.state.ts +22 -0
  1426. package/src/interface/controller/state/view/i-opt-view.state.ts +10 -0
  1427. package/src/interface/controller/state/view/i-panel-view.state.ts +10 -0
  1428. package/src/interface/controller/state/view/i-pickup-grid-view.state.ts +22 -0
  1429. package/src/interface/controller/state/view/i-pickup-tree-view.state.ts +22 -0
  1430. package/src/interface/controller/state/view/i-pickup-view.state.ts +10 -0
  1431. package/src/interface/controller/state/view/i-portal-view.state.ts +10 -0
  1432. package/src/interface/controller/state/view/i-tab-exp-view.state.ts +20 -0
  1433. package/src/interface/controller/state/view/i-tree-exp-view.state.ts +18 -0
  1434. package/src/interface/controller/state/view/i-tree-view.state.ts +10 -0
  1435. package/src/interface/controller/state/view/i-view.state.ts +35 -0
  1436. package/src/interface/controller/state/view/i-wf-dyna-action-view.state.ts +10 -0
  1437. package/src/interface/controller/state/view/i-wf-dyna-edit-view.state.ts +10 -0
  1438. package/src/interface/controller/state/view/i-wf-dyna-edit-view3.state.ts +10 -0
  1439. package/src/interface/controller/state/view/i-wf-dyna-start-view.state.ts +10 -0
  1440. package/src/interface/controller/state/view/i-wf-edit-view.state.ts +10 -0
  1441. package/src/interface/controller/state/view/i-wf-step-trace-view.state.ts +10 -0
  1442. package/src/interface/controller/state/view/i-wizard-view.state.ts +10 -0
  1443. package/src/interface/controller/state/view/index.ts +34 -0
  1444. package/src/interface/controller/work-flow/wf-link.ts +67 -0
  1445. package/src/interface/engine/i-view.engine.ts +45 -0
  1446. package/src/interface/engine/index.ts +1 -0
  1447. package/src/interface/index.ts +6 -0
  1448. package/src/interface/logic-scheduler/i-scheduler-logic.ts +108 -0
  1449. package/src/interface/logic-scheduler/i-trigger-match-params.ts +25 -0
  1450. package/src/interface/logic-scheduler/index.ts +7 -0
  1451. package/src/interface/model/index.ts +1 -0
  1452. package/src/interface/model/layout.ts +6 -0
  1453. package/src/interface/provider/i-editor.provider.ts +46 -0
  1454. package/src/interface/provider/i-form-detail.provider.ts +42 -0
  1455. package/src/interface/provider/i-grid-column.provider.ts +37 -0
  1456. package/src/interface/provider/i-panel-item.provider.ts +45 -0
  1457. package/src/interface/provider/i-portlet.provider.ts +41 -0
  1458. package/src/interface/provider/index.ts +10 -9
  1459. package/src/interface/register/index.ts +0 -7
  1460. package/src/interface/service/i-data-entity/i-data-entity.ts +85 -0
  1461. package/src/interface/service/index.ts +3 -0
  1462. package/src/interface/service/service/i-app-de-authority.service.ts +22 -0
  1463. package/src/interface/service/service/i-app-de.service.ts +59 -0
  1464. package/src/interface/service/service/i-file.service.ts +29 -0
  1465. package/src/interface/service/service/i-wf.service.ts +87 -0
  1466. package/src/interface/service/service/index.ts +4 -0
  1467. package/src/interface/store/i-store.ts +39 -0
  1468. package/src/interface/studio/i-view-session.ts +16 -0
  1469. package/src/interface/studio/index.ts +1 -0
  1470. package/src/interface/util/i-notification-util/i-notification-util.ts +1 -1
  1471. package/src/interface/util/i-open-view-util/i-open-view-util.ts +19 -15
  1472. package/src/interface/util/index.ts +2 -0
  1473. package/src/interface/util/script/i-script-function.ts +24 -0
  1474. package/src/logic-scheduler/executor/app-de-ui-logic-executor.ts +25 -0
  1475. package/src/logic-scheduler/executor/app-ui-logic-executor.ts +174 -0
  1476. package/src/logic-scheduler/executor/logic-executor-factory.ts +58 -0
  1477. package/src/logic-scheduler/executor/logic-executor.ts +54 -0
  1478. package/src/logic-scheduler/executor/script-executor.ts +66 -0
  1479. package/src/logic-scheduler/index.ts +75 -0
  1480. package/src/logic-scheduler/logic-scheduler-center.ts +52 -0
  1481. package/src/logic-scheduler/scheduler/control-logic-scheduler.ts +21 -0
  1482. package/src/logic-scheduler/scheduler/logic-scheduler.ts +231 -0
  1483. package/src/logic-scheduler/scheduler/view-logic-scheduler.ts +37 -0
  1484. package/src/logic-scheduler/trigger/custom-trigger.ts +13 -0
  1485. package/src/logic-scheduler/trigger/item-dyna-logic-trigger.ts +46 -0
  1486. package/src/logic-scheduler/trigger/logic-trigger-factory.ts +58 -0
  1487. package/src/logic-scheduler/trigger/logic-trigger.ts +90 -0
  1488. package/src/logic-scheduler/trigger/timer-trigger.ts +33 -0
  1489. package/src/logic-scheduler/trigger/view-event-trigger.ts +35 -0
  1490. package/src/model/data-entity/data-entity.ts +111 -0
  1491. package/src/model/form/form-detail.ts +30 -0
  1492. package/src/model/form/index.ts +1 -0
  1493. package/src/model/grid/column.ts +19 -0
  1494. package/src/model/grid/index.ts +1 -0
  1495. package/src/model/index.ts +7 -1
  1496. package/src/model/layout/layout.ts +145 -0
  1497. package/src/model/tree/index.ts +2 -0
  1498. package/src/model/tree/tree-node-rs.ts +34 -0
  1499. package/src/model/tree/tree-node.ts +26 -0
  1500. package/src/model/ui-action/ui-action.ts +17 -0
  1501. package/src/model/utils/index.ts +1 -2
  1502. package/src/model/utils/util.ts +108 -0
  1503. package/src/model/view/view.ts +57 -0
  1504. package/src/plugin/plugin-static-resource/plugin-static-resource.ts +23 -5
  1505. package/src/register/helper/control-register.ts +1 -1
  1506. package/src/register/helper/editor-register.ts +1 -1
  1507. package/src/register/helper/form-detail-register.ts +1 -1
  1508. package/src/register/helper/grid-column-register.ts +1 -1
  1509. package/src/register/helper/index.ts +1 -0
  1510. package/src/register/helper/panel-item-register.ts +22 -19
  1511. package/src/register/helper/portlet-register.ts +51 -0
  1512. package/src/register/helper/ui-action-register.ts +1 -1
  1513. package/src/register/helper/view-register.ts +1 -1
  1514. package/src/service/app-data-entity/app-data-entity.ts +59 -32
  1515. package/src/service/de-service-util.ts +30 -10
  1516. package/src/service/dto/method.dto.ts +5 -5
  1517. package/src/service/index.ts +3 -3
  1518. package/src/service/service/authority/authority.service.ts +182 -0
  1519. package/src/service/service/authority/de-authority.service.ts +83 -0
  1520. package/src/service/service/authority/index.ts +2 -0
  1521. package/src/service/service/code-list/code-list.service.ts +37 -28
  1522. package/src/service/service/control/control.service.ts +119 -0
  1523. package/src/service/service/control/index.ts +2 -0
  1524. package/src/service/service/control/md-control.service.ts +181 -0
  1525. package/src/service/service/counter/counter.service.ts +6 -7
  1526. package/src/service/service/entity/de.service.ts +1 -1
  1527. package/src/service/service/entity/method/de-action.ts +61 -67
  1528. package/src/service/service/entity/method/fetch.ts +19 -27
  1529. package/src/service/service/entity/method/method-input.ts +1 -1
  1530. package/src/service/service/entity/method/method-renturn.ts +4 -3
  1531. package/src/service/service/entity/method/method.ts +5 -5
  1532. package/src/service/service/file/file.service.ts +2 -1
  1533. package/src/service/service/index.ts +3 -1
  1534. package/src/service/service/work-flow/work-flow.service.ts +164 -50
  1535. package/src/service/utils/app-counter/app-counter.ts +20 -20
  1536. package/src/service/utils/de-cache/de-cache.ts +26 -26
  1537. package/src/service/utils/de-dq-cond/cond-type.ts +0 -10
  1538. package/src/service/utils/de-dq-cond/ps-de-dq-cond-engine.ts +1 -1
  1539. package/src/service/utils/de-dq-cond/ps-model-cond-engine-base.ts +1 -1
  1540. package/src/service/utils/de-dq-cond/ps-model-group-cond-base.ts +4 -3
  1541. package/src/service/utils/de-dq-cond-util/de-dq-cond-util.ts +2 -1
  1542. package/src/service/utils/dynamic-code-list/dynamic-code-list.ts +40 -73
  1543. package/src/service/utils/index.ts +1 -1
  1544. package/src/service/utils/res-path/res-path.ts +46 -12
  1545. package/src/service/utils/service-exist-util/service-exist-util.ts +3 -6
  1546. package/src/service/vo/control.vo.ts +57 -56
  1547. package/src/service/vo/tree-node-data/index.ts +2 -0
  1548. package/src/service/vo/tree-node-data/tree-code-list-node-data.ts +58 -0
  1549. package/src/service/vo/tree-node-data/tree-data-set-node-data.ts +21 -10
  1550. package/src/service/vo/tree-node-data/tree-node-data.ts +34 -35
  1551. package/src/service/vo/tree-node-data/tree-static-node-data.ts +16 -11
  1552. package/src/service/vo/ui-map-field.ts +0 -4
  1553. package/src/types.ts +9 -0
  1554. package/src/ui-action/provider/backend-ui-action-provider.ts +89 -0
  1555. package/src/ui-action/provider/front-ui-action-provider.ts +101 -0
  1556. package/src/ui-action/provider/index.ts +39 -0
  1557. package/src/ui-action/provider/sys-ui-action-provider.ts +31 -0
  1558. package/src/ui-action/provider/ui-action-provider-base.ts +267 -0
  1559. package/src/ui-action/provider/wf-withdraw-ui-action-provider.ts +34 -0
  1560. package/src/ui-action/uiaction-util.ts +57 -0
  1561. package/src/ui-logic/index.ts +42 -0
  1562. package/src/ui-logic/ui-logic-context.ts +114 -0
  1563. package/src/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.ts +9 -0
  1564. package/src/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.ts +97 -0
  1565. package/src/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.ts +99 -0
  1566. package/src/ui-logic/ui-logic-link/ui-logic-link.ts +97 -0
  1567. package/src/ui-logic/ui-logic-node/de-action-node/de-action-node.ts +44 -0
  1568. package/src/ui-logic/ui-logic-node/de-ui-action-node/de-ui-action-node.ts +40 -0
  1569. package/src/ui-logic/ui-logic-node/end-node/end-node.ts +43 -0
  1570. package/src/ui-logic/ui-logic-node/index.ts +7 -0
  1571. package/src/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.ts +60 -0
  1572. package/src/ui-logic/ui-logic-node/start-node/start-node.ts +17 -0
  1573. package/src/ui-logic/ui-logic-node/ui-logic-node.ts +48 -0
  1574. package/src/ui-logic/ui-logic-node/view-ctrl-invoke-node/view-ctrl-invoke-node.ts +48 -0
  1575. package/src/ui-logic/ui-logic-param/ui-logic-param.ts +108 -0
  1576. package/src/ui-logic/ui-logic.ts +193 -0
  1577. package/src/ui-logic/utils/handle-src-val.ts +83 -0
  1578. package/src/ui-logic/utils/index.ts +1 -0
  1579. package/src/utils/index.ts +3 -2
  1580. package/src/utils/layout-panel-util/layout-panel-util.ts +128 -0
  1581. package/src/utils/modal/modal.ts +51 -30
  1582. package/src/utils/nav-params/calc-nav-params.ts +24 -10
  1583. package/src/utils/nav-params/nav-params.ts +72 -4
  1584. package/src/utils/open-redirect-view/open-redirect-view.ts +250 -230
  1585. package/src/utils/script/index.ts +2 -0
  1586. package/src/utils/script/script-factory.ts +41 -0
  1587. package/src/utils/script/script-function.ts +107 -0
  1588. package/src/utils/value-rule/value-rule.ts +24 -0
  1589. package/src/utils/verify/de-rule-verify.ts +22 -20
  1590. package/src/utils/verify/verify.ts +1 -1
  1591. package/src/utils/wf-helper/wf-helper.ts +28 -1
  1592. package/out/controller/common/control/md/index.d.ts +0 -3
  1593. package/out/controller/common/control/md/index.d.ts.map +0 -1
  1594. package/out/controller/common/control/md/index.js +0 -2
  1595. package/out/controller/common/control/md/md-item.d.ts +0 -23
  1596. package/out/controller/common/control/md/md-item.d.ts.map +0 -1
  1597. package/out/controller/common/control/md/md-item.js +0 -20
  1598. package/out/controller/common/control/md/md.controller.d.ts +0 -191
  1599. package/out/controller/common/control/md/md.controller.d.ts.map +0 -1
  1600. package/out/controller/common/control/md/md.controller.js +0 -360
  1601. package/out/controller/constant/control/form/form-notify-state.d.ts +0 -6
  1602. package/out/controller/constant/control/form/form-notify-state.d.ts.map +0 -1
  1603. package/out/controller/constant/control/grid/grid-notify-state.d.ts +0 -6
  1604. package/out/controller/constant/control/grid/grid-notify-state.d.ts.map +0 -1
  1605. package/out/controller/constant/control/panel/panel-notify-state.d.ts +0 -6
  1606. package/out/controller/constant/control/panel/panel-notify-state.d.ts.map +0 -1
  1607. package/out/controller/ctx/ctx-state.d.ts +0 -3
  1608. package/out/controller/ctx/ctx-state.d.ts.map +0 -1
  1609. package/out/controller/interface/common/button-state/i-button-container-state.d.ts +0 -48
  1610. package/out/controller/interface/common/button-state/i-button-container-state.d.ts.map +0 -1
  1611. package/out/controller/interface/common/button-state/i-button-state.d.ts +0 -53
  1612. package/out/controller/interface/common/button-state/i-button-state.d.ts.map +0 -1
  1613. package/out/controller/interface/common/button-state/index.d.ts +0 -3
  1614. package/out/controller/interface/common/button-state/index.d.ts.map +0 -1
  1615. package/out/controller/interface/common/button-state/index.js +0 -2
  1616. package/out/controller/interface/common/index.d.ts +0 -2
  1617. package/out/controller/interface/common/index.d.ts.map +0 -1
  1618. package/out/controller/interface/common/index.js +0 -1
  1619. package/out/controller/interface/controller/control/i-app-menu-controller.d.ts +0 -12
  1620. package/out/controller/interface/controller/control/i-app-menu-controller.d.ts.map +0 -1
  1621. package/out/controller/interface/controller/control/i-control-controller.d.ts +0 -21
  1622. package/out/controller/interface/controller/control/i-control-controller.d.ts.map +0 -1
  1623. package/out/controller/interface/controller/control/i-form-controller.d.ts +0 -12
  1624. package/out/controller/interface/controller/control/i-form-controller.d.ts.map +0 -1
  1625. package/out/controller/interface/controller/control/i-grid-controller.d.ts +0 -12
  1626. package/out/controller/interface/controller/control/i-grid-controller.d.ts.map +0 -1
  1627. package/out/controller/interface/controller/control/i-md-controller.d.ts +0 -12
  1628. package/out/controller/interface/controller/control/i-md-controller.d.ts.map +0 -1
  1629. package/out/controller/interface/controller/control/i-panel-controller.d.ts +0 -12
  1630. package/out/controller/interface/controller/control/i-panel-controller.d.ts.map +0 -1
  1631. package/out/controller/interface/controller/control/i-search-form-controller.d.ts +0 -12
  1632. package/out/controller/interface/controller/control/i-search-form-controller.d.ts.map +0 -1
  1633. package/out/controller/interface/controller/control/i-toolbar-controller.d.ts +0 -24
  1634. package/out/controller/interface/controller/control/i-toolbar-controller.d.ts.map +0 -1
  1635. package/out/controller/interface/controller/control/i-view-layout-panel-controller.d.ts +0 -12
  1636. package/out/controller/interface/controller/control/i-view-layout-panel-controller.d.ts.map +0 -1
  1637. package/out/controller/interface/controller/control/index.d.ts +0 -10
  1638. package/out/controller/interface/controller/control/index.d.ts.map +0 -1
  1639. package/out/controller/interface/controller/control/index.js +0 -9
  1640. package/out/controller/interface/controller/editor/i-editor-controller.d.ts +0 -10
  1641. package/out/controller/interface/controller/editor/i-editor-controller.d.ts.map +0 -1
  1642. package/out/controller/interface/controller/i-controller.d.ts +0 -64
  1643. package/out/controller/interface/controller/i-controller.d.ts.map +0 -1
  1644. package/out/controller/interface/controller/index.d.ts +0 -6
  1645. package/out/controller/interface/controller/index.d.ts.map +0 -1
  1646. package/out/controller/interface/controller/index.js +0 -5
  1647. package/out/controller/interface/controller/layout/i-layout-controller.d.ts +0 -60
  1648. package/out/controller/interface/controller/layout/i-layout-controller.d.ts.map +0 -1
  1649. package/out/controller/interface/controller/layout/index.d.ts +0 -2
  1650. package/out/controller/interface/controller/layout/index.d.ts.map +0 -1
  1651. package/out/controller/interface/controller/layout/index.js +0 -1
  1652. package/out/controller/interface/controller/view/i-view-controller.d.ts +0 -70
  1653. package/out/controller/interface/controller/view/i-view-controller.d.ts.map +0 -1
  1654. package/out/controller/interface/event/argument/close-view-event.d.ts +0 -20
  1655. package/out/controller/interface/event/argument/close-view-event.d.ts.map +0 -1
  1656. package/out/controller/interface/event/argument/data-change-event.d.ts +0 -11
  1657. package/out/controller/interface/event/argument/data-change-event.d.ts.map +0 -1
  1658. package/out/controller/interface/event/argument/event-base.d.ts +0 -56
  1659. package/out/controller/interface/event/argument/event-base.d.ts.map +0 -1
  1660. package/out/controller/interface/event/argument/index.d.ts +0 -7
  1661. package/out/controller/interface/event/argument/index.d.ts.map +0 -1
  1662. package/out/controller/interface/event/argument/load-event.d.ts +0 -18
  1663. package/out/controller/interface/event/argument/load-event.d.ts.map +0 -1
  1664. package/out/controller/interface/event/argument/uiaction-event.d.ts +0 -19
  1665. package/out/controller/interface/event/argument/uiaction-event.d.ts.map +0 -1
  1666. package/out/controller/interface/event/argument/view-info-event.d.ts +0 -18
  1667. package/out/controller/interface/event/argument/view-info-event.d.ts.map +0 -1
  1668. package/out/controller/interface/event/common/i-component-event.d.ts +0 -49
  1669. package/out/controller/interface/event/common/i-component-event.d.ts.map +0 -1
  1670. package/out/controller/interface/event/common/index.d.ts +0 -2
  1671. package/out/controller/interface/event/common/index.d.ts.map +0 -1
  1672. package/out/controller/interface/event/common/index.js +0 -1
  1673. package/out/controller/interface/event/control/i-app-menu-event.d.ts +0 -27
  1674. package/out/controller/interface/event/control/i-app-menu-event.d.ts.map +0 -1
  1675. package/out/controller/interface/event/control/i-card-event.d.ts +0 -11
  1676. package/out/controller/interface/event/control/i-card-event.d.ts.map +0 -1
  1677. package/out/controller/interface/event/control/i-control-event.d.ts +0 -25
  1678. package/out/controller/interface/event/control/i-control-event.d.ts.map +0 -1
  1679. package/out/controller/interface/event/control/i-dashboard-event.d.ts +0 -12
  1680. package/out/controller/interface/event/control/i-dashboard-event.d.ts.map +0 -1
  1681. package/out/controller/interface/event/control/i-edit-form-event.d.ts +0 -38
  1682. package/out/controller/interface/event/control/i-edit-form-event.d.ts.map +0 -1
  1683. package/out/controller/interface/event/control/i-form-event.d.ts +0 -11
  1684. package/out/controller/interface/event/control/i-form-event.d.ts.map +0 -1
  1685. package/out/controller/interface/event/control/i-grid-event.d.ts +0 -11
  1686. package/out/controller/interface/event/control/i-grid-event.d.ts.map +0 -1
  1687. package/out/controller/interface/event/control/i-kanban-event.d.ts +0 -11
  1688. package/out/controller/interface/event/control/i-kanban-event.d.ts.map +0 -1
  1689. package/out/controller/interface/event/control/i-list-event.d.ts +0 -11
  1690. package/out/controller/interface/event/control/i-list-event.d.ts.map +0 -1
  1691. package/out/controller/interface/event/control/i-md-control-event.d.ts +0 -90
  1692. package/out/controller/interface/event/control/i-md-control-event.d.ts.map +0 -1
  1693. package/out/controller/interface/event/control/i-panel-event.d.ts +0 -11
  1694. package/out/controller/interface/event/control/i-panel-event.d.ts.map +0 -1
  1695. package/out/controller/interface/event/control/i-search-form-event.d.ts +0 -16
  1696. package/out/controller/interface/event/control/i-search-form-event.d.ts.map +0 -1
  1697. package/out/controller/interface/event/control/i-toolbar-event.d.ts +0 -27
  1698. package/out/controller/interface/event/control/i-toolbar-event.d.ts.map +0 -1
  1699. package/out/controller/interface/event/control/i-tree-event.d.ts +0 -11
  1700. package/out/controller/interface/event/control/i-tree-event.d.ts.map +0 -1
  1701. package/out/controller/interface/event/control/i-view-layout-panel-event.d.ts +0 -11
  1702. package/out/controller/interface/event/control/i-view-layout-panel-event.d.ts.map +0 -1
  1703. package/out/controller/interface/event/control/i-wizard-panel-event.d.ts +0 -24
  1704. package/out/controller/interface/event/control/i-wizard-panel-event.d.ts.map +0 -1
  1705. package/out/controller/interface/event/control/index.d.ts +0 -17
  1706. package/out/controller/interface/event/control/index.d.ts.map +0 -1
  1707. package/out/controller/interface/event/control/index.js +0 -16
  1708. package/out/controller/interface/event/index.d.ts.map +0 -1
  1709. package/out/controller/interface/event/view/i-app-portal-view-event.d.ts +0 -12
  1710. package/out/controller/interface/event/view/i-app-portal-view-event.d.ts.map +0 -1
  1711. package/out/controller/interface/event/view/i-card-view-event.d.ts +0 -12
  1712. package/out/controller/interface/event/view/i-card-view-event.d.ts.map +0 -1
  1713. package/out/controller/interface/event/view/i-dashboard-view-event.d.ts +0 -12
  1714. package/out/controller/interface/event/view/i-dashboard-view-event.d.ts.map +0 -1
  1715. package/out/controller/interface/event/view/i-edit-view-event.d.ts +0 -27
  1716. package/out/controller/interface/event/view/i-edit-view-event.d.ts.map +0 -1
  1717. package/out/controller/interface/event/view/i-edit-view3-event.d.ts +0 -12
  1718. package/out/controller/interface/event/view/i-edit-view3-event.d.ts.map +0 -1
  1719. package/out/controller/interface/event/view/i-grid-exp-view-event.d.ts +0 -10
  1720. package/out/controller/interface/event/view/i-grid-exp-view-event.d.ts.map +0 -1
  1721. package/out/controller/interface/event/view/i-grid-view-event.d.ts +0 -12
  1722. package/out/controller/interface/event/view/i-grid-view-event.d.ts.map +0 -1
  1723. package/out/controller/interface/event/view/i-kanban-view-event.d.ts +0 -12
  1724. package/out/controller/interface/event/view/i-kanban-view-event.d.ts.map +0 -1
  1725. package/out/controller/interface/event/view/i-list-exp-view-event.d.ts +0 -10
  1726. package/out/controller/interface/event/view/i-list-exp-view-event.d.ts.map +0 -1
  1727. package/out/controller/interface/event/view/i-list-view-event.d.ts +0 -12
  1728. package/out/controller/interface/event/view/i-list-view-event.d.ts.map +0 -1
  1729. package/out/controller/interface/event/view/i-md-view-event.d.ts +0 -27
  1730. package/out/controller/interface/event/view/i-md-view-event.d.ts.map +0 -1
  1731. package/out/controller/interface/event/view/i-mpickup-view-event.d.ts +0 -12
  1732. package/out/controller/interface/event/view/i-mpickup-view-event.d.ts.map +0 -1
  1733. package/out/controller/interface/event/view/i-opt-view-event.d.ts +0 -12
  1734. package/out/controller/interface/event/view/i-opt-view-event.d.ts.map +0 -1
  1735. package/out/controller/interface/event/view/i-pickup-grid-view-event.d.ts +0 -27
  1736. package/out/controller/interface/event/view/i-pickup-grid-view-event.d.ts.map +0 -1
  1737. package/out/controller/interface/event/view/i-pickup-view-event.d.ts +0 -12
  1738. package/out/controller/interface/event/view/i-pickup-view-event.d.ts.map +0 -1
  1739. package/out/controller/interface/event/view/i-tab-exp-view-event.d.ts +0 -12
  1740. package/out/controller/interface/event/view/i-tab-exp-view-event.d.ts.map +0 -1
  1741. package/out/controller/interface/event/view/i-tree-exp-view-event.d.ts +0 -12
  1742. package/out/controller/interface/event/view/i-tree-exp-view-event.d.ts.map +0 -1
  1743. package/out/controller/interface/event/view/i-view-event.d.ts +0 -46
  1744. package/out/controller/interface/event/view/i-view-event.d.ts.map +0 -1
  1745. package/out/controller/interface/event/view/i-wf-dyna-action-view-event.d.ts +0 -13
  1746. package/out/controller/interface/event/view/i-wf-dyna-action-view-event.d.ts.map +0 -1
  1747. package/out/controller/interface/event/view/i-wf-dyna-edit-view-event.d.ts +0 -11
  1748. package/out/controller/interface/event/view/i-wf-dyna-edit-view-event.d.ts.map +0 -1
  1749. package/out/controller/interface/event/view/i-wf-dyna-edit-view3-event.d.ts +0 -11
  1750. package/out/controller/interface/event/view/i-wf-dyna-edit-view3-event.d.ts.map +0 -1
  1751. package/out/controller/interface/event/view/i-wf-dyna-start-view-event.d.ts +0 -11
  1752. package/out/controller/interface/event/view/i-wf-dyna-start-view-event.d.ts.map +0 -1
  1753. package/out/controller/interface/event/view/i-wf-edit-view-event.d.ts +0 -13
  1754. package/out/controller/interface/event/view/i-wf-edit-view-event.d.ts.map +0 -1
  1755. package/out/controller/interface/event/view/i-wizard-view-event.d.ts +0 -12
  1756. package/out/controller/interface/event/view/i-wizard-view-event.d.ts.map +0 -1
  1757. package/out/controller/interface/event/view/index.d.ts +0 -24
  1758. package/out/controller/interface/event/view/index.d.ts.map +0 -1
  1759. package/out/controller/interface/event/view/index.js +0 -23
  1760. package/out/controller/interface/index.d.ts.map +0 -1
  1761. package/out/controller/interface/state/i-base-state.d.ts +0 -17
  1762. package/out/controller/interface/state/i-base-state.d.ts.map +0 -1
  1763. package/out/controller/interface/state/index.d.ts +0 -3
  1764. package/out/controller/interface/state/index.d.ts.map +0 -1
  1765. package/out/controller/interface/state/index.js +0 -2
  1766. package/out/controller/interface/state/view/i-index-view-state.d.ts +0 -17
  1767. package/out/controller/interface/state/view/i-index-view-state.d.ts.map +0 -1
  1768. package/out/controller/interface/state/view/i-view-state.d.ts +0 -25
  1769. package/out/controller/interface/state/view/i-view-state.d.ts.map +0 -1
  1770. package/out/controller/interface/state/view/index.d.ts +0 -3
  1771. package/out/controller/interface/state/view/index.d.ts.map +0 -1
  1772. package/out/controller/interface/state/view/index.js +0 -2
  1773. package/out/controller/interface/work-flow/index.d.ts.map +0 -1
  1774. package/out/controller/interface/work-flow/wf-link.d.ts +0 -37
  1775. package/out/controller/interface/work-flow/wf-link.d.ts.map +0 -1
  1776. package/out/controller/state/base-state.d.ts +0 -17
  1777. package/out/controller/state/base-state.d.ts.map +0 -1
  1778. package/out/controller/state/base-state.js +0 -18
  1779. package/out/controller/state/control/control-state.d.ts +0 -10
  1780. package/out/controller/state/control/control-state.d.ts.map +0 -1
  1781. package/out/controller/state/control/control-state.js +0 -9
  1782. package/out/controller/state/control/index.d.ts +0 -3
  1783. package/out/controller/state/control/index.d.ts.map +0 -1
  1784. package/out/controller/state/control/index.js +0 -2
  1785. package/out/controller/state/control/md-state.d.ts +0 -58
  1786. package/out/controller/state/control/md-state.d.ts.map +0 -1
  1787. package/out/controller/state/control/md-state.js +0 -59
  1788. package/out/controller/state/index.d.ts +0 -2
  1789. package/out/controller/state/index.d.ts.map +0 -1
  1790. package/out/controller/state/index.js +0 -1
  1791. package/out/controller/utils/button-state/button-container-state.d.ts +0 -19
  1792. package/out/controller/utils/button-state/button-container-state.d.ts.map +0 -1
  1793. package/out/controller/utils/button-state/button-container-state.js +0 -54
  1794. package/out/controller/utils/button-state/ui-action-button-state.d.ts +0 -68
  1795. package/out/controller/utils/button-state/ui-action-button-state.d.ts.map +0 -1
  1796. package/out/controller/utils/button-state/ui-action-button-state.js +0 -112
  1797. package/out/controller/utils/loading/loading-state.d.ts +0 -42
  1798. package/out/controller/utils/loading/loading-state.d.ts.map +0 -1
  1799. package/out/engine/interface/i-grid-view-engine.d.ts +0 -12
  1800. package/out/engine/interface/i-grid-view-engine.d.ts.map +0 -1
  1801. package/out/engine/interface/i-index-view-engine.d.ts +0 -12
  1802. package/out/engine/interface/i-index-view-engine.d.ts.map +0 -1
  1803. package/out/engine/interface/i-preset-view-engine.d.ts +0 -23
  1804. package/out/engine/interface/i-preset-view-engine.d.ts.map +0 -1
  1805. package/out/engine/interface/i-view-engine.d.ts +0 -19
  1806. package/out/engine/interface/i-view-engine.d.ts.map +0 -1
  1807. package/out/engine/interface/index.d.ts +0 -5
  1808. package/out/engine/interface/index.d.ts.map +0 -1
  1809. package/out/engine/interface/index.js +0 -4
  1810. package/out/engine/preset-view-engine.d.ts +0 -31
  1811. package/out/engine/preset-view-engine.d.ts.map +0 -1
  1812. package/out/engine/preset-view-engine.js +0 -47
  1813. package/out/interface/provider/i-control-provider.d.ts +0 -19
  1814. package/out/interface/provider/i-control-provider.d.ts.map +0 -1
  1815. package/out/interface/provider/i-editor-provider.d.ts +0 -38
  1816. package/out/interface/provider/i-editor-provider.d.ts.map +0 -1
  1817. package/out/interface/provider/i-form-detail-provider.d.ts +0 -30
  1818. package/out/interface/provider/i-form-detail-provider.d.ts.map +0 -1
  1819. package/out/interface/provider/i-grid-column-provider.d.ts +0 -30
  1820. package/out/interface/provider/i-grid-column-provider.d.ts.map +0 -1
  1821. package/out/interface/provider/i-panel-item-provider.d.ts +0 -31
  1822. package/out/interface/provider/i-panel-item-provider.d.ts.map +0 -1
  1823. package/out/interface/provider/i-provider.d.ts +0 -10
  1824. package/out/interface/provider/i-provider.d.ts.map +0 -1
  1825. package/out/interface/provider/i-ui-action-provider.d.ts +0 -22
  1826. package/out/interface/provider/i-ui-action-provider.d.ts.map +0 -1
  1827. package/out/interface/provider/i-view-provider.d.ts +0 -19
  1828. package/out/interface/provider/i-view-provider.d.ts.map +0 -1
  1829. package/out/interface/provider/model-loader-provider.d.ts +0 -49
  1830. package/out/interface/provider/model-loader-provider.d.ts.map +0 -1
  1831. package/out/interface/register/i-control-register.d.ts +0 -24
  1832. package/out/interface/register/i-control-register.d.ts.map +0 -1
  1833. package/out/interface/register/i-editor-register.d.ts +0 -24
  1834. package/out/interface/register/i-editor-register.d.ts.map +0 -1
  1835. package/out/interface/register/i-form-detail-register.d.ts +0 -24
  1836. package/out/interface/register/i-form-detail-register.d.ts.map +0 -1
  1837. package/out/interface/register/i-grid-column-register.d.ts +0 -24
  1838. package/out/interface/register/i-grid-column-register.d.ts.map +0 -1
  1839. package/out/interface/register/i-panel-item-register.d.ts +0 -24
  1840. package/out/interface/register/i-panel-item-register.d.ts.map +0 -1
  1841. package/out/interface/register/i-ui-action-register.d.ts +0 -15
  1842. package/out/interface/register/i-ui-action-register.d.ts.map +0 -1
  1843. package/out/interface/register/i-view-register.d.ts +0 -24
  1844. package/out/interface/register/i-view-register.d.ts.map +0 -1
  1845. package/out/model/layout-helper/layout-helper.d.ts +0 -24
  1846. package/out/model/layout-helper/layout-helper.d.ts.map +0 -1
  1847. package/out/model/layout-helper/layout-helper.js +0 -84
  1848. package/out/model/utils/find-model-child.d.ts +0 -13
  1849. package/out/model/utils/find-model-child.d.ts.map +0 -1
  1850. package/out/model/utils/find-model-child.js +0 -19
  1851. package/out/model/utils/find-recursive-child.d.ts +0 -43
  1852. package/out/model/utils/find-recursive-child.d.ts.map +0 -1
  1853. package/out/model/utils/find-recursive-child.js +0 -90
  1854. package/out/service/auth/auth.service.d.ts.map +0 -1
  1855. package/out/service/authority/authority.service.d.ts +0 -68
  1856. package/out/service/authority/authority.service.d.ts.map +0 -1
  1857. package/out/service/authority/authority.service.js +0 -134
  1858. package/out/service/interface/code-list-item/code-list-item.d.ts.map +0 -1
  1859. package/out/service/interface/i-app-de-service/i-app-de-service.d.ts +0 -33
  1860. package/out/service/interface/i-app-de-service/i-app-de-service.d.ts.map +0 -1
  1861. package/out/service/interface/i-tree-node-data/i-tree-node-data.d.ts +0 -74
  1862. package/out/service/interface/i-tree-node-data/i-tree-node-data.d.ts.map +0 -1
  1863. package/out/service/interface/index.d.ts +0 -4
  1864. package/out/service/interface/index.d.ts.map +0 -1
  1865. package/out/service/service/widget/control-service.d.ts +0 -86
  1866. package/out/service/service/widget/control-service.d.ts.map +0 -1
  1867. package/out/service/service/widget/control-service.js +0 -89
  1868. package/out/service/service/widget/grid-service.d.ts +0 -25
  1869. package/out/service/service/widget/grid-service.d.ts.map +0 -1
  1870. package/out/service/service/widget/grid-service.js +0 -59
  1871. package/out/service/service/widget/index.d.ts +0 -5
  1872. package/out/service/service/widget/index.d.ts.map +0 -1
  1873. package/out/service/service/widget/index.js +0 -4
  1874. package/out/service/service/widget/md-control-service.d.ts +0 -87
  1875. package/out/service/service/widget/md-control-service.d.ts.map +0 -1
  1876. package/out/service/service/widget/md-control-service.js +0 -137
  1877. package/out/service/service/widget/search-form-service.d.ts +0 -43
  1878. package/out/service/service/widget/search-form-service.d.ts.map +0 -1
  1879. package/out/service/service/widget/search-form-service.js +0 -62
  1880. package/out/utils/uiaction-util/index.d.ts.map +0 -1
  1881. package/out/utils/uiaction-util/provider/backend-ui-action-provider.d.ts +0 -16
  1882. package/out/utils/uiaction-util/provider/backend-ui-action-provider.d.ts.map +0 -1
  1883. package/out/utils/uiaction-util/provider/backend-ui-action-provider.js +0 -61
  1884. package/out/utils/uiaction-util/provider/front-ui-action-provider.d.ts +0 -16
  1885. package/out/utils/uiaction-util/provider/front-ui-action-provider.d.ts.map +0 -1
  1886. package/out/utils/uiaction-util/provider/front-ui-action-provider.js +0 -49
  1887. package/out/utils/uiaction-util/provider/index.d.ts.map +0 -1
  1888. package/out/utils/uiaction-util/provider/index.js +0 -28
  1889. package/out/utils/uiaction-util/provider/sys-ui-action-provider.d.ts +0 -16
  1890. package/out/utils/uiaction-util/provider/sys-ui-action-provider.d.ts.map +0 -1
  1891. package/out/utils/uiaction-util/provider/sys-ui-action-provider.js +0 -27
  1892. package/out/utils/uiaction-util/provider/ui-action-provider-base.d.ts +0 -90
  1893. package/out/utils/uiaction-util/provider/ui-action-provider-base.d.ts.map +0 -1
  1894. package/out/utils/uiaction-util/provider/ui-action-provider-base.js +0 -184
  1895. package/out/utils/uiaction-util/provider/wf-withdraw-ui-action-provider.d.ts +0 -16
  1896. package/out/utils/uiaction-util/provider/wf-withdraw-ui-action-provider.d.ts.map +0 -1
  1897. package/out/utils/uiaction-util/uiaction-util.d.ts +0 -26
  1898. package/out/utils/uiaction-util/uiaction-util.d.ts.map +0 -1
  1899. package/out/utils/uiaction-util/uiaction-util.js +0 -33
  1900. package/out/utils/view-layout-util/view-layout-util.d.ts +0 -31
  1901. package/out/utils/view-layout-util/view-layout-util.d.ts.map +0 -1
  1902. package/out/utils/view-layout-util/view-layout-util.js +0 -65
  1903. package/out/view-logic/index.d.ts +0 -4
  1904. package/out/view-logic/index.d.ts.map +0 -1
  1905. package/out/view-logic/index.js +0 -3
  1906. package/out/view-logic/view-logic-dispatcher.d.ts +0 -70
  1907. package/out/view-logic/view-logic-dispatcher.d.ts.map +0 -1
  1908. package/out/view-logic/view-logic-dispatcher.js +0 -68
  1909. package/out/view-logic/view-logic-trigger/index.d.ts +0 -8
  1910. package/out/view-logic/view-logic-trigger/index.d.ts.map +0 -1
  1911. package/out/view-logic/view-logic-trigger/index.js +0 -7
  1912. package/out/view-logic/view-logic-trigger/view-logic-ctrl-event-trigger.d.ts +0 -15
  1913. package/out/view-logic/view-logic-trigger/view-logic-ctrl-event-trigger.d.ts.map +0 -1
  1914. package/out/view-logic/view-logic-trigger/view-logic-ctrl-event-trigger.js +0 -25
  1915. package/out/view-logic/view-logic-trigger/view-logic-custom-trigger.d.ts +0 -34
  1916. package/out/view-logic/view-logic-trigger/view-logic-custom-trigger.d.ts.map +0 -1
  1917. package/out/view-logic/view-logic-trigger/view-logic-custom-trigger.js +0 -51
  1918. package/out/view-logic/view-logic-trigger/view-logic-event-trigger.d.ts +0 -48
  1919. package/out/view-logic/view-logic-trigger/view-logic-event-trigger.d.ts.map +0 -1
  1920. package/out/view-logic/view-logic-trigger/view-logic-event-trigger.js +0 -114
  1921. package/out/view-logic/view-logic-trigger/view-logic-panel-event-trigger.d.ts +0 -15
  1922. package/out/view-logic/view-logic-trigger/view-logic-panel-event-trigger.d.ts.map +0 -1
  1923. package/out/view-logic/view-logic-trigger/view-logic-panel-event-trigger.js +0 -25
  1924. package/out/view-logic/view-logic-trigger/view-logic-timer-trigger.d.ts +0 -24
  1925. package/out/view-logic/view-logic-trigger/view-logic-timer-trigger.d.ts.map +0 -1
  1926. package/out/view-logic/view-logic-trigger/view-logic-timer-trigger.js +0 -40
  1927. package/out/view-logic/view-logic-trigger/view-logic-trigger.d.ts +0 -34
  1928. package/out/view-logic/view-logic-trigger/view-logic-trigger.d.ts.map +0 -1
  1929. package/out/view-logic/view-logic-trigger/view-logic-trigger.js +0 -28
  1930. package/out/view-logic/view-logic-trigger/view-logic-view-event-trigger.d.ts +0 -16
  1931. package/out/view-logic/view-logic-trigger/view-logic-view-event-trigger.d.ts.map +0 -1
  1932. package/out/view-logic/view-logic-trigger/view-logic-view-event-trigger.js +0 -29
  1933. package/out/view-logic/view-logic.d.ts +0 -42
  1934. package/out/view-logic/view-logic.d.ts.map +0 -1
  1935. package/out/view-logic/view-logic.js +0 -146
  1936. package/src/controller/common/control/md/index.ts +0 -2
  1937. package/src/controller/common/control/md/md-item.ts +0 -30
  1938. package/src/controller/common/control/md/md.controller.ts +0 -422
  1939. package/src/controller/interface/common/button-state/i-button-container-state.ts +0 -54
  1940. package/src/controller/interface/common/button-state/index.ts +0 -2
  1941. package/src/controller/interface/common/index.ts +0 -1
  1942. package/src/controller/interface/controller/control/i-app-menu-controller.ts +0 -11
  1943. package/src/controller/interface/controller/control/i-control-controller.ts +0 -22
  1944. package/src/controller/interface/controller/control/i-form-controller.ts +0 -11
  1945. package/src/controller/interface/controller/control/i-grid-controller.ts +0 -11
  1946. package/src/controller/interface/controller/control/i-md-controller.ts +0 -11
  1947. package/src/controller/interface/controller/control/i-panel-controller.ts +0 -11
  1948. package/src/controller/interface/controller/control/i-search-form-controller.ts +0 -11
  1949. package/src/controller/interface/controller/control/i-toolbar-controller.ts +0 -25
  1950. package/src/controller/interface/controller/control/i-view-layout-panel-controller.ts +0 -11
  1951. package/src/controller/interface/controller/control/index.ts +0 -9
  1952. package/src/controller/interface/controller/editor/i-editor-controller.ts +0 -8
  1953. package/src/controller/interface/controller/i-controller.ts +0 -73
  1954. package/src/controller/interface/controller/index.ts +0 -5
  1955. package/src/controller/interface/controller/layout/i-layout-controller.ts +0 -61
  1956. package/src/controller/interface/controller/layout/index.ts +0 -1
  1957. package/src/controller/interface/controller/view/i-view-controller.ts +0 -77
  1958. package/src/controller/interface/event/argument/close-view-event.ts +0 -20
  1959. package/src/controller/interface/event/argument/data-change-event.ts +0 -11
  1960. package/src/controller/interface/event/argument/event-base.ts +0 -61
  1961. package/src/controller/interface/event/argument/index.ts +0 -6
  1962. package/src/controller/interface/event/argument/load-event.ts +0 -18
  1963. package/src/controller/interface/event/argument/uiaction-event.ts +0 -19
  1964. package/src/controller/interface/event/argument/view-info-event.ts +0 -19
  1965. package/src/controller/interface/event/common/index.ts +0 -1
  1966. package/src/controller/interface/event/control/i-app-menu-event.ts +0 -24
  1967. package/src/controller/interface/event/control/i-card-event.ts +0 -11
  1968. package/src/controller/interface/event/control/i-control-event.ts +0 -27
  1969. package/src/controller/interface/event/control/i-dashboard-event.ts +0 -12
  1970. package/src/controller/interface/event/control/i-edit-form-event.ts +0 -39
  1971. package/src/controller/interface/event/control/i-form-event.ts +0 -11
  1972. package/src/controller/interface/event/control/i-grid-event.ts +0 -11
  1973. package/src/controller/interface/event/control/i-kanban-event.ts +0 -11
  1974. package/src/controller/interface/event/control/i-list-event.ts +0 -11
  1975. package/src/controller/interface/event/control/i-md-control-event.ts +0 -91
  1976. package/src/controller/interface/event/control/i-panel-event.ts +0 -11
  1977. package/src/controller/interface/event/control/i-search-form-event.ts +0 -16
  1978. package/src/controller/interface/event/control/i-toolbar-event.ts +0 -24
  1979. package/src/controller/interface/event/control/i-tree-event.ts +0 -11
  1980. package/src/controller/interface/event/control/i-view-layout-panel-event.ts +0 -11
  1981. package/src/controller/interface/event/control/i-wizard-panel-event.ts +0 -24
  1982. package/src/controller/interface/event/control/index.ts +0 -16
  1983. package/src/controller/interface/event/view/i-app-portal-view-event.ts +0 -12
  1984. package/src/controller/interface/event/view/i-card-view-event.ts +0 -12
  1985. package/src/controller/interface/event/view/i-dashboard-view-event.ts +0 -12
  1986. package/src/controller/interface/event/view/i-edit-view-event.ts +0 -27
  1987. package/src/controller/interface/event/view/i-edit-view3-event.ts +0 -12
  1988. package/src/controller/interface/event/view/i-grid-exp-view-event.ts +0 -10
  1989. package/src/controller/interface/event/view/i-grid-view-event.ts +0 -12
  1990. package/src/controller/interface/event/view/i-kanban-view-event.ts +0 -12
  1991. package/src/controller/interface/event/view/i-list-exp-view-event.ts +0 -10
  1992. package/src/controller/interface/event/view/i-list-view-event.ts +0 -12
  1993. package/src/controller/interface/event/view/i-md-view-event.ts +0 -27
  1994. package/src/controller/interface/event/view/i-mpickup-view-event.ts +0 -12
  1995. package/src/controller/interface/event/view/i-opt-view-event.ts +0 -12
  1996. package/src/controller/interface/event/view/i-pickup-grid-view-event.ts +0 -25
  1997. package/src/controller/interface/event/view/i-pickup-view-event.ts +0 -12
  1998. package/src/controller/interface/event/view/i-tree-exp-view-event.ts +0 -12
  1999. package/src/controller/interface/event/view/i-view-event.ts +0 -48
  2000. package/src/controller/interface/event/view/i-wf-dyna-edit-view-event.ts +0 -11
  2001. package/src/controller/interface/event/view/i-wf-dyna-edit-view3-event.ts +0 -11
  2002. package/src/controller/interface/event/view/i-wf-dyna-start-view-event.ts +0 -11
  2003. package/src/controller/interface/event/view/index.ts +0 -23
  2004. package/src/controller/interface/state/i-base-state.ts +0 -16
  2005. package/src/controller/interface/state/index.ts +0 -2
  2006. package/src/controller/interface/state/view/i-index-view-state.ts +0 -17
  2007. package/src/controller/interface/state/view/i-view-state.ts +0 -26
  2008. package/src/controller/interface/state/view/index.ts +0 -2
  2009. package/src/controller/interface/work-flow/wf-link.ts +0 -37
  2010. package/src/controller/state/base-state.ts +0 -16
  2011. package/src/controller/state/control/control-state.ts +0 -9
  2012. package/src/controller/state/control/index.ts +0 -2
  2013. package/src/controller/state/control/md-state.ts +0 -65
  2014. package/src/controller/state/index.ts +0 -1
  2015. package/src/controller/utils/button-state/button-container-state.ts +0 -68
  2016. package/src/controller/utils/button-state/ui-action-button-state.ts +0 -162
  2017. package/src/controller/utils/loading/loading-state.ts +0 -54
  2018. package/src/engine/interface/i-grid-view-engine.ts +0 -11
  2019. package/src/engine/interface/i-index-view-engine.ts +0 -11
  2020. package/src/engine/interface/i-preset-view-engine.ts +0 -24
  2021. package/src/engine/interface/i-view-engine.ts +0 -21
  2022. package/src/engine/interface/index.ts +0 -4
  2023. package/src/engine/preset-view-engine.ts +0 -54
  2024. package/src/interface/provider/i-editor-provider.ts +0 -47
  2025. package/src/interface/provider/i-form-detail-provider.ts +0 -37
  2026. package/src/interface/provider/i-grid-column-provider.ts +0 -34
  2027. package/src/interface/provider/i-panel-item-provider.ts +0 -40
  2028. package/src/interface/register/i-control-register.ts +0 -24
  2029. package/src/interface/register/i-editor-register.ts +0 -24
  2030. package/src/interface/register/i-form-detail-register.ts +0 -24
  2031. package/src/interface/register/i-grid-column-register.ts +0 -24
  2032. package/src/interface/register/i-panel-item-register.ts +0 -24
  2033. package/src/interface/register/i-ui-action-register.ts +0 -15
  2034. package/src/interface/register/i-view-register.ts +0 -24
  2035. package/src/model/layout-helper/layout-helper.ts +0 -86
  2036. package/src/model/utils/find-model-child.ts +0 -24
  2037. package/src/model/utils/find-recursive-child.ts +0 -133
  2038. package/src/service/authority/authority.service.ts +0 -165
  2039. package/src/service/interface/i-app-de-service/i-app-de-service.ts +0 -39
  2040. package/src/service/interface/i-tree-node-data/i-tree-node-data.ts +0 -83
  2041. package/src/service/interface/index.ts +0 -3
  2042. package/src/service/service/widget/control-service.ts +0 -132
  2043. package/src/service/service/widget/grid-service.ts +0 -67
  2044. package/src/service/service/widget/index.ts +0 -4
  2045. package/src/service/service/widget/md-control-service.ts +0 -197
  2046. package/src/service/service/widget/search-form-service.ts +0 -77
  2047. package/src/utils/uiaction-util/provider/backend-ui-action-provider.ts +0 -93
  2048. package/src/utils/uiaction-util/provider/front-ui-action-provider.ts +0 -75
  2049. package/src/utils/uiaction-util/provider/index.ts +0 -39
  2050. package/src/utils/uiaction-util/provider/sys-ui-action-provider.ts +0 -36
  2051. package/src/utils/uiaction-util/provider/ui-action-provider-base.ts +0 -247
  2052. package/src/utils/uiaction-util/provider/wf-withdraw-ui-action-provider.ts +0 -34
  2053. package/src/utils/uiaction-util/uiaction-util.ts +0 -38
  2054. package/src/utils/view-layout-util/view-layout-util.ts +0 -67
  2055. package/src/view-logic/index.ts +0 -3
  2056. package/src/view-logic/view-logic-dispatcher.ts +0 -124
  2057. package/src/view-logic/view-logic-trigger/index.ts +0 -7
  2058. package/src/view-logic/view-logic-trigger/view-logic-ctrl-event-trigger.ts +0 -28
  2059. package/src/view-logic/view-logic-trigger/view-logic-custom-trigger.ts +0 -66
  2060. package/src/view-logic/view-logic-trigger/view-logic-event-trigger.ts +0 -130
  2061. package/src/view-logic/view-logic-trigger/view-logic-panel-event-trigger.ts +0 -28
  2062. package/src/view-logic/view-logic-trigger/view-logic-timer-trigger.ts +0 -48
  2063. package/src/view-logic/view-logic-trigger/view-logic-trigger.ts +0 -41
  2064. package/src/view-logic/view-logic-trigger/view-logic-view-event-trigger.ts +0 -30
  2065. package/src/view-logic/view-logic.ts +0 -206
  2066. /package/out/controller/constant/control/form/{form-notify-state.js → form-notify.state.js} +0 -0
  2067. /package/out/controller/constant/control/grid/{grid-notify-state.js → grid-notify.state.js} +0 -0
  2068. /package/out/controller/constant/control/panel/{panel-notify-state.js → panel-notify.state.js} +0 -0
  2069. /package/out/controller/ctx/{ctx-state.js → ctx.state.js} +0 -0
  2070. /package/out/controller/utils/loading/{loading-state.js → loading.state.js} +0 -0
  2071. /package/out/{controller/interface/controller/control/i-app-menu-controller.js → interface/common/i-app-config-service/i-app-config-service.js} +0 -0
  2072. /package/out/{controller/interface/controller/control/i-control-controller.js → interface/common/i-app-view-config-service/i-app-view-config-service.js} +0 -0
  2073. /package/out/{controller/interface/controller/control/i-form-controller.js → interface/common/i-data-ability-params/i-data-ability-params.js} +0 -0
  2074. /package/out/{controller/interface/controller/control/i-grid-controller.js → interface/common/i-global-config/i-global-app-menu-config.js} +0 -0
  2075. /package/out/{controller/interface/controller/control/i-md-controller.js → interface/common/i-global-config/i-global-codelist-config.js} +0 -0
  2076. /package/out/{controller/interface/controller/control/i-panel-controller.js → interface/common/i-global-config/i-global-grid-config.js} +0 -0
  2077. /package/out/{controller/interface/controller/control/i-search-form-controller.js → interface/common/i-global-config/i-global-view-config.js} +0 -0
  2078. /package/out/{controller/interface/common/button-state/i-button-container-state.js → interface/controller/common/button-state/i-button-container.state.js} +0 -0
  2079. /package/out/{controller/interface/common/button-state/i-button-state.js → interface/controller/common/button-state/i-button.state.js} +0 -0
  2080. /package/out/{controller/interface/controller/control/i-toolbar-controller.js → interface/controller/common/i-icon/i-icon.js} +0 -0
  2081. /package/out/{controller/interface/controller/control/i-view-layout-panel-controller.js → interface/controller/controller/common/i-enforceable.controller.js} +0 -0
  2082. /package/out/{controller/interface/controller/editor/i-editor-controller.js → interface/controller/controller/control/form-detail/i-form-detail-container.controller.js} +0 -0
  2083. /package/out/{controller/interface/controller/i-controller.js → interface/controller/controller/control/form-detail/i-form-detail.controller.js} +0 -0
  2084. /package/out/{controller/interface/controller/layout/i-layout-controller.js → interface/controller/controller/control/grid-column/i-grid-column.controller.js} +0 -0
  2085. /package/out/{controller/interface/controller/view/i-view-controller.js → interface/controller/controller/control/i-app-menu.controller.js} +0 -0
  2086. /package/out/{controller/interface/event/argument/close-view-event.js → interface/controller/controller/control/i-caption-bar.controller.js} +0 -0
  2087. /package/out/{controller/interface/event/argument/data-change-event.js → interface/controller/controller/control/i-chart.controller.js} +0 -0
  2088. /package/out/{controller/interface/event/argument/event-base.js → interface/controller/controller/control/i-control.controller.js} +0 -0
  2089. /package/out/{controller/interface/event/argument/index.js → interface/controller/controller/control/i-dashboard.controller.js} +0 -0
  2090. /package/out/{controller/interface/event/argument/load-event.js → interface/controller/controller/control/i-data-view-control.controller.js} +0 -0
  2091. /package/out/{controller/interface/event/argument/uiaction-event.js → interface/controller/controller/control/i-drbar.controller.js} +0 -0
  2092. /package/out/{controller/interface/event/argument/view-info-event.js → interface/controller/controller/control/i-drtab.controller.js} +0 -0
  2093. /package/out/{controller/interface/event/common/i-component-event.js → interface/controller/controller/control/i-edit-form.controller.js} +0 -0
  2094. /package/out/{controller/interface/event/control/i-app-menu-event.js → interface/controller/controller/control/i-exp-bar-control.controller.js} +0 -0
  2095. /package/out/{controller/interface/event/control/i-card-event.js → interface/controller/controller/control/i-form.controller.js} +0 -0
  2096. /package/out/{controller/interface/event/control/i-dashboard-event.js → interface/controller/controller/control/i-grid.controller.js} +0 -0
  2097. /package/out/{controller/interface/event/control/i-edit-form-event.js → interface/controller/controller/control/i-list.controller.js} +0 -0
  2098. /package/out/{controller/interface/event/control/i-form-event.js → interface/controller/controller/control/i-md-control.controller.js} +0 -0
  2099. /package/out/{controller/interface/event/control/i-grid-event.js → interface/controller/controller/control/i-mob-md-ctrl.controller.js} +0 -0
  2100. /package/out/{controller/interface/event/control/i-kanban-event.js → interface/controller/controller/control/i-panel.controller.js} +0 -0
  2101. /package/out/{controller/interface/event/control/i-list-event.js → interface/controller/controller/control/i-pickup-view-panel.controller.js} +0 -0
  2102. /package/out/{controller/interface/event/control/i-md-control-event.js → interface/controller/controller/control/i-search-bar.controller.js} +0 -0
  2103. /package/out/{controller/interface/event/control/i-panel-event.js → interface/controller/controller/control/i-search-form.controller.js} +0 -0
  2104. /package/out/{controller/interface/event/control/i-search-form-event.js → interface/controller/controller/control/i-tab-exp-panel.controller.js} +0 -0
  2105. /package/out/{controller/interface/event/control/i-toolbar-event.js → interface/controller/controller/control/i-toolbar.controller.js} +0 -0
  2106. /package/out/{controller/interface/event/control/i-tree-event.js → interface/controller/controller/control/i-tree-exp-bar.controller.js} +0 -0
  2107. /package/out/{controller/interface/event/control/i-view-layout-panel-event.js → interface/controller/controller/control/i-tree.controller.js} +0 -0
  2108. /package/out/{controller/interface/event/control/i-wizard-panel-event.js → interface/controller/controller/control/i-view-layout-panel.controller.js} +0 -0
  2109. /package/out/{controller/interface/event/view/i-app-portal-view-event.js → interface/controller/controller/control/i-wizard-panel.controller.js} +0 -0
  2110. /package/out/{controller/interface/event/view/i-card-view-event.js → interface/controller/controller/control/panel-item/i-panel-data-container.controller.js} +0 -0
  2111. /package/out/{controller/interface/event/view/i-dashboard-view-event.js → interface/controller/controller/control/panel-item/i-panel-item-container.controller.js} +0 -0
  2112. /package/out/{controller/interface/event/view/i-edit-view-event.js → interface/controller/controller/control/panel-item/i-panel-item-nav-pos.controller.js} +0 -0
  2113. /package/out/{controller/interface/event/view/i-edit-view3-event.js → interface/controller/controller/control/panel-item/i-panel-item.controller.js} +0 -0
  2114. /package/out/{controller/interface/event/view/i-grid-exp-view-event.js → interface/controller/controller/control/portlet/i-portlet-container.controller.js} +0 -0
  2115. /package/out/{controller/interface/event/view/i-grid-view-event.js → interface/controller/controller/control/portlet/i-portlet.controller.js} +0 -0
  2116. /package/out/{controller/interface/event/view/i-kanban-view-event.js → interface/controller/controller/editor/i-editor-container.controller.js} +0 -0
  2117. /package/out/{controller/interface/event/view/i-list-exp-view-event.js → interface/controller/controller/editor/i-editor.controller.js} +0 -0
  2118. /package/out/{controller/interface/event/view/i-list-view-event.js → interface/controller/controller/i.controller.js} +0 -0
  2119. /package/out/{controller/interface/event/view/i-md-view-event.js → interface/controller/controller/view/i-mob-view.controller.js} +0 -0
  2120. /package/out/{controller/interface/event/view/i-mpickup-view-event.js → interface/controller/controller/view/i-view.controller.js} +0 -0
  2121. /package/out/{service/interface → interface/controller/controller/view}/index.js +0 -0
  2122. /package/out/{controller/interface/event/view/i-opt-view-event.js → interface/controller/event/argument/base.event.js} +0 -0
  2123. /package/out/{controller/interface/event/view/i-pickup-grid-view-event.js → interface/controller/event/argument/close-view.event.js} +0 -0
  2124. /package/out/{controller/interface/event/view/i-pickup-view-event.js → interface/controller/event/argument/data-change.event.js} +0 -0
  2125. /package/out/{controller/interface/event/view/i-tab-exp-view-event.js → interface/controller/event/argument/index.js} +0 -0
  2126. /package/out/{controller/interface/event/view/i-tree-exp-view-event.js → interface/controller/event/argument/load.event.js} +0 -0
  2127. /package/out/{controller/interface/event/view/i-view-event.js → interface/controller/event/argument/toolbar-click.event.js} +0 -0
  2128. /package/out/{controller/interface/event/view/i-wf-dyna-action-view-event.js → interface/controller/event/argument/uiaction.event.js} +0 -0
  2129. /package/out/{controller/interface/event/view/i-wf-dyna-edit-view-event.js → interface/controller/event/argument/view-info.event.js} +0 -0
  2130. /package/out/{controller/interface/event/view/i-wf-dyna-edit-view3-event.js → interface/controller/event/common/i-component.event.js} +0 -0
  2131. /package/out/{controller/interface/event/view/i-wf-dyna-start-view-event.js → interface/controller/event/control/i-app-menu.event.js} +0 -0
  2132. /package/out/{controller/interface/event/view/i-wf-edit-view-event.js → interface/controller/event/control/i-caption-bar.event.js} +0 -0
  2133. /package/out/{controller/interface/event/view/i-wizard-view-event.js → interface/controller/event/control/i-chart.event.js} +0 -0
  2134. /package/out/{controller/interface/event/control/i-control-event.js → interface/controller/event/control/i-control.event.js} +0 -0
  2135. /package/out/{controller/interface/state/i-base-state.js → interface/controller/event/control/i-dashboard.event.js} +0 -0
  2136. /package/out/{controller/interface/state/view/i-index-view-state.js → interface/controller/event/control/i-data-view-control.event.js} +0 -0
  2137. /package/out/{controller/interface/state/view/i-view-state.js → interface/controller/event/control/i-drbar.event.js} +0 -0
  2138. /package/out/{controller/interface/work-flow/wf-link.js → interface/controller/event/control/i-drtab.event.js} +0 -0
  2139. /package/out/{engine/interface/i-grid-view-engine.js → interface/controller/event/control/i-edit-form.event.js} +0 -0
  2140. /package/out/{engine/interface/i-index-view-engine.js → interface/controller/event/control/i-exp-bar-control.event.js} +0 -0
  2141. /package/out/{engine/interface/i-preset-view-engine.js → interface/controller/event/control/i-form.event.js} +0 -0
  2142. /package/out/{engine/interface/i-view-engine.js → interface/controller/event/control/i-grid.event.js} +0 -0
  2143. /package/out/interface/{provider/i-control-provider.js → controller/event/control/i-kanban.event.js} +0 -0
  2144. /package/out/interface/{provider/i-editor-provider.js → controller/event/control/i-list.event.js} +0 -0
  2145. /package/out/interface/{provider/i-form-detail-provider.js → controller/event/control/i-md-control.event.js} +0 -0
  2146. /package/out/interface/{provider/i-grid-column-provider.js → controller/event/control/i-mob-md-ctrl.event.js} +0 -0
  2147. /package/out/interface/{provider/i-panel-item-provider.js → controller/event/control/i-panel.event.js} +0 -0
  2148. /package/out/interface/{provider/i-provider.js → controller/event/control/i-pickup-view-panel.event.js} +0 -0
  2149. /package/out/interface/{provider/i-ui-action-provider.js → controller/event/control/i-search-bar.event.js} +0 -0
  2150. /package/out/interface/{provider/i-view-provider.js → controller/event/control/i-search-form.event.js} +0 -0
  2151. /package/out/interface/{provider/model-loader-provider.js → controller/event/control/i-tab-exp-panel.event.js} +0 -0
  2152. /package/out/interface/{register/i-control-register.js → controller/event/control/i-toolbar.event.js} +0 -0
  2153. /package/out/interface/{register/i-editor-register.js → controller/event/control/i-tree-exp-bar.event.js} +0 -0
  2154. /package/out/interface/{register/i-form-detail-register.js → controller/event/control/i-tree.event.js} +0 -0
  2155. /package/out/interface/{register/i-grid-column-register.js → controller/event/control/i-view-layout-panel.event.js} +0 -0
  2156. /package/out/interface/{register/i-panel-item-register.js → controller/event/control/i-wizard-panel.event.js} +0 -0
  2157. /package/out/{controller/interface → interface/controller}/event/index.d.ts +0 -0
  2158. /package/out/{controller/interface → interface/controller}/event/index.js +0 -0
  2159. /package/out/interface/{register/i-ui-action-register.js → controller/event/view/i-app-portal-view.event.js} +0 -0
  2160. /package/out/interface/{register/i-view-register.js → controller/event/view/i-chart-view.event.js} +0 -0
  2161. /package/out/{service/interface/code-list-item/code-list-item.js → interface/controller/event/view/i-data-view-exp-view.event.js} +0 -0
  2162. /package/out/{service/interface/i-app-de-service/i-app-de-service.js → interface/controller/event/view/i-data-view.event.js} +0 -0
  2163. /package/out/{service/interface/i-tree-node-data/i-tree-node-data.js → interface/controller/event/view/i-de-portal-view.event.js} +0 -0
  2164. /package/out/{controller/interface → interface/controller}/index.d.ts +0 -0
  2165. /package/out/{controller/interface → interface/controller}/index.js +0 -0
  2166. /package/out/{controller/interface → interface/controller}/work-flow/index.d.ts +0 -0
  2167. /package/out/{controller/interface → interface/controller}/work-flow/index.js +0 -0
  2168. /package/out/{service/interface → interface/service}/code-list-item/code-list-item.d.ts +0 -0
  2169. /package/out/service/{auth → service/auth}/auth.service.d.ts +0 -0
  2170. /package/out/service/{auth → service/auth}/auth.service.js +0 -0
  2171. /package/out/{utils/uiaction-util → ui-action}/index.d.ts +0 -0
  2172. /package/out/{utils/uiaction-util → ui-action}/index.js +0 -0
  2173. /package/out/{utils/uiaction-util → ui-action}/provider/index.d.ts +0 -0
  2174. /package/out/{utils/uiaction-util → ui-action}/provider/wf-withdraw-ui-action-provider.js +0 -0
  2175. /package/src/controller/constant/control/form/{form-notify-state.ts → form-notify.state.ts} +0 -0
  2176. /package/src/controller/constant/control/grid/{grid-notify-state.ts → grid-notify.state.ts} +0 -0
  2177. /package/src/controller/constant/control/panel/{panel-notify-state.ts → panel-notify.state.ts} +0 -0
  2178. /package/src/controller/ctx/{ctx-state.ts → ctx.state.ts} +0 -0
  2179. /package/src/{controller/interface/common/button-state/i-button-state.ts → interface/controller/common/button-state/i-button.state.ts} +0 -0
  2180. /package/src/{controller/interface/event/common/i-component-event.ts → interface/controller/event/common/i-component.event.ts} +0 -0
  2181. /package/src/{controller/interface → interface/controller}/event/index.ts +0 -0
  2182. /package/src/{controller/interface/event/view/i-tab-exp-view-event.ts → interface/controller/event/view/i-tab-exp-view.event.ts} +0 -0
  2183. /package/src/{controller/interface/event/view/i-wf-dyna-action-view-event.ts → interface/controller/event/view/i-wf-dyna-action-view.event.ts} +0 -0
  2184. /package/src/{controller/interface/event/view/i-wf-edit-view-event.ts → interface/controller/event/view/i-wf-edit-view.event.ts} +0 -0
  2185. /package/src/{controller/interface/event/view/i-wizard-view-event.ts → interface/controller/event/view/i-wizard-view.event.ts} +0 -0
  2186. /package/src/{controller/interface → interface/controller}/index.ts +0 -0
  2187. /package/src/{controller/interface → interface/controller}/work-flow/index.ts +0 -0
  2188. /package/src/interface/provider/{i-control-provider.ts → i-control.provider.ts} +0 -0
  2189. /package/src/interface/provider/{i-ui-action-provider.ts → i-ui-action.provider.ts} +0 -0
  2190. /package/src/interface/provider/{i-view-provider.ts → i-view.provider.ts} +0 -0
  2191. /package/src/interface/provider/{i-provider.ts → i.provider.ts} +0 -0
  2192. /package/src/interface/provider/{model-loader-provider.ts → model-loader.provider.ts} +0 -0
  2193. /package/src/{service/interface → interface/service}/code-list-item/code-list-item.ts +0 -0
  2194. /package/src/service/{auth → service/auth}/auth.service.ts +0 -0
  2195. /package/src/{utils/uiaction-util → ui-action}/index.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.system.min.js","sources":["index.esm.js"],"sourcesContent":["var __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\n\n// ../../node_modules/.pnpm/path-browserify@1.0.1/node_modules/path-browserify/index.js\nvar require_path_browserify = __commonJS({\n \"../../node_modules/.pnpm/path-browserify@1.0.1/node_modules/path-browserify/index.js\"(exports, module) {\n \"use strict\";\n function assertPath(path2) {\n if (typeof path2 !== \"string\") {\n throw new TypeError(\"Path must be a string. Received \" + JSON.stringify(path2));\n }\n }\n function normalizeStringPosix(path2, allowAboveRoot) {\n var res = \"\";\n var lastSegmentLength = 0;\n var lastSlash = -1;\n var dots = 0;\n var code;\n for (var i = 0; i <= path2.length; ++i) {\n if (i < path2.length)\n code = path2.charCodeAt(i);\n else if (code === 47)\n break;\n else\n code = 47;\n if (code === 47) {\n if (lastSlash === i - 1 || dots === 1) {\n } else if (lastSlash !== i - 1 && dots === 2) {\n if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46 || res.charCodeAt(res.length - 2) !== 46) {\n if (res.length > 2) {\n var lastSlashIndex = res.lastIndexOf(\"/\");\n if (lastSlashIndex !== res.length - 1) {\n if (lastSlashIndex === -1) {\n res = \"\";\n lastSegmentLength = 0;\n } else {\n res = res.slice(0, lastSlashIndex);\n lastSegmentLength = res.length - 1 - res.lastIndexOf(\"/\");\n }\n lastSlash = i;\n dots = 0;\n continue;\n }\n } else if (res.length === 2 || res.length === 1) {\n res = \"\";\n lastSegmentLength = 0;\n lastSlash = i;\n dots = 0;\n continue;\n }\n }\n if (allowAboveRoot) {\n if (res.length > 0)\n res += \"/..\";\n else\n res = \"..\";\n lastSegmentLength = 2;\n }\n } else {\n if (res.length > 0)\n res += \"/\" + path2.slice(lastSlash + 1, i);\n else\n res = path2.slice(lastSlash + 1, i);\n lastSegmentLength = i - lastSlash - 1;\n }\n lastSlash = i;\n dots = 0;\n } else if (code === 46 && dots !== -1) {\n ++dots;\n } else {\n dots = -1;\n }\n }\n return res;\n }\n function _format(sep, pathObject) {\n var dir = pathObject.dir || pathObject.root;\n var base = pathObject.base || (pathObject.name || \"\") + (pathObject.ext || \"\");\n if (!dir) {\n return base;\n }\n if (dir === pathObject.root) {\n return dir + base;\n }\n return dir + sep + base;\n }\n var posix = {\n // path.resolve([from ...], to)\n resolve: function resolve() {\n var resolvedPath = \"\";\n var resolvedAbsolute = false;\n var cwd;\n for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n var path2;\n if (i >= 0)\n path2 = arguments[i];\n else {\n if (cwd === void 0)\n cwd = process.cwd();\n path2 = cwd;\n }\n assertPath(path2);\n if (path2.length === 0) {\n continue;\n }\n resolvedPath = path2 + \"/\" + resolvedPath;\n resolvedAbsolute = path2.charCodeAt(0) === 47;\n }\n resolvedPath = normalizeStringPosix(resolvedPath, !resolvedAbsolute);\n if (resolvedAbsolute) {\n if (resolvedPath.length > 0)\n return \"/\" + resolvedPath;\n else\n return \"/\";\n } else if (resolvedPath.length > 0) {\n return resolvedPath;\n } else {\n return \".\";\n }\n },\n normalize: function normalize(path2) {\n assertPath(path2);\n if (path2.length === 0)\n return \".\";\n var isAbsolute = path2.charCodeAt(0) === 47;\n var trailingSeparator = path2.charCodeAt(path2.length - 1) === 47;\n path2 = normalizeStringPosix(path2, !isAbsolute);\n if (path2.length === 0 && !isAbsolute)\n path2 = \".\";\n if (path2.length > 0 && trailingSeparator)\n path2 += \"/\";\n if (isAbsolute)\n return \"/\" + path2;\n return path2;\n },\n isAbsolute: function isAbsolute(path2) {\n assertPath(path2);\n return path2.length > 0 && path2.charCodeAt(0) === 47;\n },\n join: function join() {\n if (arguments.length === 0)\n return \".\";\n var joined;\n for (var i = 0; i < arguments.length; ++i) {\n var arg = arguments[i];\n assertPath(arg);\n if (arg.length > 0) {\n if (joined === void 0)\n joined = arg;\n else\n joined += \"/\" + arg;\n }\n }\n if (joined === void 0)\n return \".\";\n return posix.normalize(joined);\n },\n relative: function relative(from, to) {\n assertPath(from);\n assertPath(to);\n if (from === to)\n return \"\";\n from = posix.resolve(from);\n to = posix.resolve(to);\n if (from === to)\n return \"\";\n var fromStart = 1;\n for (; fromStart < from.length; ++fromStart) {\n if (from.charCodeAt(fromStart) !== 47)\n break;\n }\n var fromEnd = from.length;\n var fromLen = fromEnd - fromStart;\n var toStart = 1;\n for (; toStart < to.length; ++toStart) {\n if (to.charCodeAt(toStart) !== 47)\n break;\n }\n var toEnd = to.length;\n var toLen = toEnd - toStart;\n var length = fromLen < toLen ? fromLen : toLen;\n var lastCommonSep = -1;\n var i = 0;\n for (; i <= length; ++i) {\n if (i === length) {\n if (toLen > length) {\n if (to.charCodeAt(toStart + i) === 47) {\n return to.slice(toStart + i + 1);\n } else if (i === 0) {\n return to.slice(toStart + i);\n }\n } else if (fromLen > length) {\n if (from.charCodeAt(fromStart + i) === 47) {\n lastCommonSep = i;\n } else if (i === 0) {\n lastCommonSep = 0;\n }\n }\n break;\n }\n var fromCode = from.charCodeAt(fromStart + i);\n var toCode = to.charCodeAt(toStart + i);\n if (fromCode !== toCode)\n break;\n else if (fromCode === 47)\n lastCommonSep = i;\n }\n var out = \"\";\n for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) {\n if (i === fromEnd || from.charCodeAt(i) === 47) {\n if (out.length === 0)\n out += \"..\";\n else\n out += \"/..\";\n }\n }\n if (out.length > 0)\n return out + to.slice(toStart + lastCommonSep);\n else {\n toStart += lastCommonSep;\n if (to.charCodeAt(toStart) === 47)\n ++toStart;\n return to.slice(toStart);\n }\n },\n _makeLong: function _makeLong(path2) {\n return path2;\n },\n dirname: function dirname(path2) {\n assertPath(path2);\n if (path2.length === 0)\n return \".\";\n var code = path2.charCodeAt(0);\n var hasRoot = code === 47;\n var end = -1;\n var matchedSlash = true;\n for (var i = path2.length - 1; i >= 1; --i) {\n code = path2.charCodeAt(i);\n if (code === 47) {\n if (!matchedSlash) {\n end = i;\n break;\n }\n } else {\n matchedSlash = false;\n }\n }\n if (end === -1)\n return hasRoot ? \"/\" : \".\";\n if (hasRoot && end === 1)\n return \"//\";\n return path2.slice(0, end);\n },\n basename: function basename(path2, ext) {\n if (ext !== void 0 && typeof ext !== \"string\")\n throw new TypeError('\"ext\" argument must be a string');\n assertPath(path2);\n var start = 0;\n var end = -1;\n var matchedSlash = true;\n var i;\n if (ext !== void 0 && ext.length > 0 && ext.length <= path2.length) {\n if (ext.length === path2.length && ext === path2)\n return \"\";\n var extIdx = ext.length - 1;\n var firstNonSlashEnd = -1;\n for (i = path2.length - 1; i >= 0; --i) {\n var code = path2.charCodeAt(i);\n if (code === 47) {\n if (!matchedSlash) {\n start = i + 1;\n break;\n }\n } else {\n if (firstNonSlashEnd === -1) {\n matchedSlash = false;\n firstNonSlashEnd = i + 1;\n }\n if (extIdx >= 0) {\n if (code === ext.charCodeAt(extIdx)) {\n if (--extIdx === -1) {\n end = i;\n }\n } else {\n extIdx = -1;\n end = firstNonSlashEnd;\n }\n }\n }\n }\n if (start === end)\n end = firstNonSlashEnd;\n else if (end === -1)\n end = path2.length;\n return path2.slice(start, end);\n } else {\n for (i = path2.length - 1; i >= 0; --i) {\n if (path2.charCodeAt(i) === 47) {\n if (!matchedSlash) {\n start = i + 1;\n break;\n }\n } else if (end === -1) {\n matchedSlash = false;\n end = i + 1;\n }\n }\n if (end === -1)\n return \"\";\n return path2.slice(start, end);\n }\n },\n extname: function extname(path2) {\n assertPath(path2);\n var startDot = -1;\n var startPart = 0;\n var end = -1;\n var matchedSlash = true;\n var preDotState = 0;\n for (var i = path2.length - 1; i >= 0; --i) {\n var code = path2.charCodeAt(i);\n if (code === 47) {\n if (!matchedSlash) {\n startPart = i + 1;\n break;\n }\n continue;\n }\n if (end === -1) {\n matchedSlash = false;\n end = i + 1;\n }\n if (code === 46) {\n if (startDot === -1)\n startDot = i;\n else if (preDotState !== 1)\n preDotState = 1;\n } else if (startDot !== -1) {\n preDotState = -1;\n }\n }\n if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot\n preDotState === 0 || // The (right-most) trimmed path component is exactly '..'\n preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n return \"\";\n }\n return path2.slice(startDot, end);\n },\n format: function format(pathObject) {\n if (pathObject === null || typeof pathObject !== \"object\") {\n throw new TypeError('The \"pathObject\" argument must be of type Object. Received type ' + typeof pathObject);\n }\n return _format(\"/\", pathObject);\n },\n parse: function parse(path2) {\n assertPath(path2);\n var ret = { root: \"\", dir: \"\", base: \"\", ext: \"\", name: \"\" };\n if (path2.length === 0)\n return ret;\n var code = path2.charCodeAt(0);\n var isAbsolute = code === 47;\n var start;\n if (isAbsolute) {\n ret.root = \"/\";\n start = 1;\n } else {\n start = 0;\n }\n var startDot = -1;\n var startPart = 0;\n var end = -1;\n var matchedSlash = true;\n var i = path2.length - 1;\n var preDotState = 0;\n for (; i >= start; --i) {\n code = path2.charCodeAt(i);\n if (code === 47) {\n if (!matchedSlash) {\n startPart = i + 1;\n break;\n }\n continue;\n }\n if (end === -1) {\n matchedSlash = false;\n end = i + 1;\n }\n if (code === 46) {\n if (startDot === -1)\n startDot = i;\n else if (preDotState !== 1)\n preDotState = 1;\n } else if (startDot !== -1) {\n preDotState = -1;\n }\n }\n if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot\n preDotState === 0 || // The (right-most) trimmed path component is exactly '..'\n preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n if (end !== -1) {\n if (startPart === 0 && isAbsolute)\n ret.base = ret.name = path2.slice(1, end);\n else\n ret.base = ret.name = path2.slice(startPart, end);\n }\n } else {\n if (startPart === 0 && isAbsolute) {\n ret.name = path2.slice(1, startDot);\n ret.base = path2.slice(1, end);\n } else {\n ret.name = path2.slice(startPart, startDot);\n ret.base = path2.slice(startPart, end);\n }\n ret.ext = path2.slice(startDot, end);\n }\n if (startPart > 0)\n ret.dir = path2.slice(0, startPart - 1);\n else if (isAbsolute)\n ret.dir = \"/\";\n return ret;\n },\n sep: \"/\",\n delimiter: \":\",\n win32: null,\n posix: null\n };\n posix.posix = posix;\n module.exports = posix;\n }\n});\n\n// src/config/global-config.ts\nvar GlobalConfig = class {\n constructor() {\n // 全局视图配置\n this.view = {\n enableDataInfoBar: true\n };\n // 全局表格配置\n this.grid = {\n editShowMode: \"cell\",\n editSaveMode: \"cell-blur\"\n };\n // 全局菜单配置\n this.appMenu = {\n enableEcho: false\n };\n // 全局代码表配置\n this.codeList = {\n timeout: 60 * 60 * 1e3\n };\n }\n};\n\n// src/register/register-center.ts\nvar RegisterCenter = class {\n constructor() {\n /**\n * 已注册的适配器Map\n * @author lxm\n * @date 2023-05-06 09:55:33\n * @protected\n * @type {Map<string, NewProvider>}\n */\n this.providers = /* @__PURE__ */ new Map();\n }\n /**\n * 注册适配器\n * @author lxm\n * @date 2023-05-06 09:55:55\n * @param {string} key 唯一标识\n * @param {NewProvider} newProvider 创建适配器实例的回调\n */\n register(key, newProvider) {\n this.providers.set(key, newProvider);\n }\n /**\n * 注销适配器\n * @author lxm\n * @date 2023-05-06 09:56:19\n * @param {string} key\n */\n unRegister(key) {\n this.providers.delete(key);\n }\n /**\n * 获取适配器的实例\n * @author lxm\n * @date 2023-05-06 09:56:34\n * @param {string} key 唯一标识\n * @param {...Parameters<NewProvider>} args 回调参数\n * @return {*} {(IProvider | undefined)}\n */\n get(key, ...args) {\n const func = this.providers.get(key);\n if (func) {\n return func(...args);\n }\n }\n};\n\n// src/command/app/app-func/app-func.ts\nimport { ModelError as ModelError4, RuntimeError as RuntimeError5 } from \"@ibiz-template/core\";\n\n// src/utils/nav-params/nav-params.ts\nimport { isEmpty } from \"lodash-es\";\nimport { isNilOrEmpty, notNilEmpty } from \"qx-util\";\nfunction convertNavData(naviDatas, ...origins) {\n if (!naviDatas || isEmpty(naviDatas)) {\n return {};\n }\n if (Object.prototype.toString.call(naviDatas) === \"[object Array]\") {\n return convertNavDataByArray(naviDatas, ...origins);\n }\n if (Object.prototype.toString.call(naviDatas) === \"[object Object]\") {\n return convertNavDataByObject(naviDatas, ...origins);\n }\n return {};\n}\nfunction convertNavDataByArray(naviDatas, ...origins) {\n const result = {};\n for (const naviData of naviDatas) {\n if (notNilEmpty(naviData.value) && !naviData.rawValue) {\n const findOrigin = origins.find((item) => {\n if (isNilOrEmpty(item)) {\n return false;\n }\n return (\n // proxy数据判断是否能拿到值\n item[naviData.value] || // 上下文等判断是否有这个属性,如果有且值为空,则赋该空值\n Object.prototype.hasOwnProperty.call(item, naviData.value)\n );\n });\n if (findOrigin) {\n result[naviData.key.toLowerCase()] = findOrigin[naviData.value];\n }\n } else {\n result[naviData.key.toLowerCase()] = naviData.value || null;\n }\n }\n return result;\n}\nfunction convertNavDataByObject(naviData, ...origins) {\n const result = {};\n const reg2 = /^%(.+)%$/;\n for (const key in naviData) {\n if (notNilEmpty(naviData[key]) && reg2.test(naviData[key])) {\n const valueKey = naviData[key].substring(1, naviData[key].length - 1);\n const findOrigin = origins.find((item) => {\n return Object.prototype.hasOwnProperty.call(item, valueKey);\n });\n if (findOrigin) {\n result[key.toLowerCase()] = findOrigin[valueKey];\n }\n } else {\n result[key.toLowerCase()] = naviData[key] || null;\n }\n }\n return result;\n}\nfunction convertObjectToNavParams(naviData) {\n const result = [];\n const reg2 = /^%(.+)%$/;\n for (const key in naviData) {\n let rawValue = true;\n let value = naviData[key];\n if (notNilEmpty(naviData[key]) && reg2.test(naviData[key])) {\n rawValue = false;\n value = naviData[key].substring(1, naviData[key].length - 1);\n }\n result.push({\n key: key.toLowerCase(),\n rawValue,\n value\n });\n }\n return result;\n}\nfunction formatMultiData(navParams, dataArr) {\n const result = {};\n if (!navParams) {\n return result;\n }\n const naviArr = Array.isArray(navParams) ? navParams : convertObjectToNavParams(navParams);\n const data1 = dataArr[0];\n naviArr.forEach((naviParam) => {\n const { rawValue, value } = naviParam;\n if (!rawValue && value && Object.prototype.hasOwnProperty.call(data1, value)) {\n result[value] = dataArr.map((item) => item[value]).join(\";\");\n }\n });\n return result;\n}\n\n// src/utils/nav-params/calc-nav-params.ts\nfunction calcNavParams(model, originParams) {\n const { deName, navFilter, pickupDEFName, navContexts, navParams } = model;\n const { context, params, data, derValue } = originParams;\n const resultContext = {};\n const resultParams = {};\n const deSrfkey = derValue || data.srfkey;\n if (deSrfkey) {\n if (deName) {\n resultContext[deName] = deSrfkey;\n }\n if (navFilter) {\n resultParams[navFilter] = deSrfkey;\n }\n if (pickupDEFName) {\n resultParams[\"n_\".concat(pickupDEFName.toLowerCase(), \"_eq\")] = deSrfkey;\n }\n }\n const tempContext = convertNavData(navContexts, context, params, data);\n const tempParams = convertNavData(navParams, context, params, data);\n Object.assign(resultContext, tempContext);\n Object.assign(resultParams, tempParams);\n return {\n resultContext,\n resultParams\n };\n}\n\n// src/utils/open-redirect-view/open-redirect-view.ts\nimport { RuntimeError, RuntimeModelError } from \"@ibiz-template/core\";\nimport { isNilOrEmpty as isNilOrEmpty2, notNilEmpty as notNilEmpty2 } from \"qx-util\";\nimport qs from \"qs\";\n\n// src/model/utils/util.ts\nfunction findModelChild(models, id) {\n if (models) {\n const model = models.find((item) => item.id === id);\n if (model) {\n return model;\n }\n }\n return null;\n}\nfunction getControl(view, key) {\n var _a, _b;\n let controls = view.controls || [];\n if ((_b = (_a = view.viewLayoutPanel) == null ? void 0 : _a.controls) == null ? void 0 : _b.length) {\n controls = controls.concat(view.viewLayoutPanel.controls);\n }\n return controls.find((item) => {\n return item.name === key || item.codeName === key || item.id === key;\n });\n}\nfunction getAppViewRef(view, key) {\n var _a, _b;\n let appViewRefs = view.appViewRefs || [];\n if ((_b = (_a = view.viewLayoutPanel) == null ? void 0 : _a.appViewRefs) == null ? void 0 : _b.length) {\n appViewRefs = appViewRefs.concat(view.viewLayoutPanel.appViewRefs);\n }\n return appViewRefs.find((item) => {\n return item.name === key || item.id === key;\n });\n}\nfunction parseUserParams(userParams) {\n const navigateContexts = {};\n const navigateParams = {};\n const other = {};\n for (const key in userParams) {\n if (Object.prototype.hasOwnProperty.call(userParams, key)) {\n const param = userParams[key];\n if (key.indexOf(\".\") !== -1) {\n const splitArr = key.split(\".\");\n switch (splitArr[0]) {\n case \"SRFNAVPARAM\":\n Object.assign(navigateContexts, { [splitArr[1]]: param });\n break;\n case \"SRFNAVCTX\":\n Object.assign(navigateParams, { [splitArr[1]]: param });\n break;\n default:\n Object.assign(other, { key: param });\n break;\n }\n }\n }\n }\n return { navigateContexts, navigateParams, other };\n}\n\n// src/model/layout/layout.ts\nfunction calcLayoutHeightWidth(layoutPos) {\n const { width, height, widthMode, heightMode } = layoutPos;\n const result = { width: \"\", height: \"\" };\n if (widthMode === \"FULL\") {\n result.width = \"100%\";\n } else if (width && width > 0) {\n if (widthMode === \"PERCENTAGE\") {\n result.width = \"\".concat(width, \"%\");\n } else {\n result.width = \"\".concat(width, \"px\");\n }\n }\n if (heightMode === \"FULL\") {\n result.height = \"100%\";\n } else if (height && height > 0) {\n if (heightMode === \"PERCENTAGE\") {\n result.height = \"\".concat(height, \"%\");\n } else {\n result.height = \"\".concat(height, \"px\");\n }\n }\n return result;\n}\nfunction calcContentAlignStyle(layoutPos) {\n const { valignSelf, halignSelf } = layoutPos;\n const result = {};\n if (valignSelf || halignSelf) {\n Object.assign(result, { display: \"flex\" });\n switch (valignSelf) {\n case \"TOP\":\n Object.assign(result, { \"align-items\": \"flex-start\" });\n break;\n case \"MIDDLE\":\n Object.assign(result, { \"align-items\": \"center\" });\n break;\n case \"BOTTOM\":\n Object.assign(result, { \"align-items\": \"flex-end\" });\n break;\n default:\n break;\n }\n switch (halignSelf) {\n case \"LEFT\":\n Object.assign(result, { \"justify-content\": \"flex-start\" });\n break;\n case \"CENTER\":\n Object.assign(result, { \"justify-content\": \"center\" });\n break;\n case \"RIGHT\":\n Object.assign(result, { \"justify-content\": \"flex-end\" });\n break;\n case \"JUSTIFY\":\n Object.assign(result, { \"justify-content\": \"space-between\" });\n break;\n default:\n break;\n }\n }\n return result;\n}\nfunction calcGridLayoutPos(layoutPos) {\n const {\n layout,\n colXS,\n colXSOffset,\n colSM,\n colSMOffset,\n colMD,\n colMDOffset,\n colLG,\n colLGOffset\n } = layoutPos;\n const calcActualValues = (span, offset) => {\n const multiplier = layout === \"TABLE_24COL\" ? 1 : 2;\n const spanDefault = layout === \"TABLE_24COL\" ? 24 : 12;\n const _span = (!span || span === -1 ? spanDefault : span) * multiplier;\n const _offset = !offset || offset === -1 ? void 0 : offset;\n return {\n span: _span,\n offset: _offset\n };\n };\n return {\n xs: calcActualValues(colXS, colXSOffset),\n sm: calcActualValues(colSM, colSMOffset),\n md: calcActualValues(colMD, colMDOffset),\n lg: calcActualValues(colLG, colLGOffset)\n };\n}\nfunction calcDynaClass(expression, data) {\n return ScriptFactory.execScriptFn({ data }, expression, {\n singleRowReturn: true\n });\n}\n\n// src/model/main-state/main-state.ts\nfunction matchMainState(appDataEntity, data) {\n const { mainStateAppDEFieldIds, demainStates } = appDataEntity;\n if (mainStateAppDEFieldIds && demainStates) {\n const values = [];\n mainStateAppDEFieldIds.forEach((field) => {\n values.push(data[field]);\n });\n return demainStates.find((item) => {\n const { stateValue, state2Value, state3Value } = item;\n let result = true;\n const stateValues = [stateValue, state2Value, state3Value];\n for (let i = 0; i < values.length; i++) {\n if (\"\".concat(values[i]) !== \"\".concat(stateValues[i])) {\n result = false;\n break;\n }\n }\n return result;\n });\n }\n}\nfunction calcMainStateOPPrivsStrs(mainState, appDataEntity) {\n const app = ibiz.hub.getApp().model;\n const { demainStateOPPrivs, opprivAllowMode } = mainState;\n const mainStateOPPrivIds = (demainStateOPPrivs == null ? void 0 : demainStateOPPrivs.map((item) => item.name)) || [];\n let opprivs = [];\n if (opprivAllowMode) {\n opprivs = mainStateOPPrivIds;\n } else {\n const allOPPrivs = [...app.deopprivs, ...appDataEntity.deopprivs];\n opprivs = allOPPrivs.filter((item) => !mainStateOPPrivIds.includes(item.name)).map((item) => item.name);\n }\n return opprivs;\n}\n\n// src/model/data-entity/data-entity.ts\nimport { isNotNil } from \"ramda\";\nfunction calcDeCodeNameById(id) {\n const arr = id.split(\".\");\n return arr.pop();\n}\nfunction hasDeCodeName(params, entityId) {\n const codeName = calcDeCodeNameById(entityId);\n return isNotNil(params[codeName]);\n}\nasync function getDeACMode(appDEACModeId, entityId, srfappid) {\n var _a;\n const appDataEntity = await ibiz.hub.getAppDataEntity(entityId, srfappid);\n const deACMode = (_a = appDataEntity.appDEACModes) == null ? void 0 : _a.find((mode) => {\n return mode.id === appDEACModeId;\n });\n return deACMode;\n}\nfunction findDELogic(appDELogicId, entity) {\n var _a;\n return (_a = entity.appDELogics) == null ? void 0 : _a.find((item) => item.id === appDELogicId);\n}\nfunction filterFieldLogics(entity, type) {\n var _a, _b;\n const resultIds = [];\n (_a = entity.appDEFields) == null ? void 0 : _a.forEach((field) => {\n if (type === \"compute\" && field.computeAppDEFLogicId) {\n resultIds.push(field.computeAppDEFLogicId);\n } else if (type === \"change\" && field.onChangeAppDEFLogicId) {\n resultIds.push(field.onChangeAppDEFLogicId);\n } else if (type === \"default\" && field.defaultValueAppDEFLogicId) {\n resultIds.push(field.defaultValueAppDEFLogicId);\n }\n });\n return ((_b = entity.appDELogics) == null ? void 0 : _b.filter((item) => resultIds.includes(item.id))) || [];\n}\nfunction findFieldById(entity, fieldId) {\n var _a;\n return (_a = entity.appDEFields) == null ? void 0 : _a.find((item) => item.id === fieldId);\n}\n\n// src/model/ui-action/ui-action.ts\nasync function getUIActionById(id) {\n const [, , appId] = id.split(\"@\");\n const app = ibiz.hub.getApp(appId);\n return app.getUIAction(id);\n}\n\n// src/model/tree/tree-node.ts\nfunction getRootNode(tree) {\n return tree.detreeNodes.find((node) => node.rootNode);\n}\nfunction getTreeNode(tree, id) {\n return tree.detreeNodes.find((node) => node.id === id);\n}\n\n// src/model/tree/tree-node-rs.ts\nfunction isNodeRsShow(searchMode, hasQuery) {\n return searchMode === 3 || (hasQuery ? searchMode === 1 : searchMode === 2);\n}\nfunction getChildNodeRSs(tree, args) {\n const parentId = args.parentId || getRootNode(tree).id;\n return tree.detreeNodeRSs.filter((nodeRs) => {\n return nodeRs.parentDETreeNodeId === parentId && isNodeRsShow(nodeRs.searchMode, args.hasQuery);\n });\n}\n\n// src/model/grid/column.ts\nfunction findEditItem(grid, codeName) {\n var _a;\n return (_a = grid.degridEditItems) == null ? void 0 : _a.find((item) => {\n return item.codeName === codeName;\n });\n}\n\n// src/model/form/form-detail.ts\nfunction findChildFormDetails(parent) {\n let childDetails;\n switch (parent.detailType) {\n case \"TABPANEL\":\n childDetails = parent.deformTabPages;\n break;\n case \"FORMPAGE\":\n case \"TABPAGE\":\n case \"GROUPPANEL\":\n childDetails = parent.deformDetails;\n break;\n default:\n break;\n }\n return childDetails || [];\n}\n\n// src/model/view/view.ts\nfunction getControlsByView(view) {\n const { viewLayoutPanel } = view;\n const controls = view.controls || [];\n if (viewLayoutPanel) {\n controls.push(...viewLayoutPanel.controls || []);\n }\n return controls;\n}\nfunction getViewLogics(view) {\n const { viewLayoutPanel } = view;\n const viewLogics = view.appViewLogics || [];\n if (viewLayoutPanel) {\n viewLogics.push(...viewLayoutPanel.appViewLogics || []);\n }\n return viewLogics;\n}\nfunction getViewEngines(view) {\n const { viewLayoutPanel } = view;\n const appViewEngines = view.appViewEngines || [];\n if (viewLayoutPanel) {\n appViewEngines.push(...viewLayoutPanel.appViewEngines || []);\n }\n return appViewEngines;\n}\n\n// src/utils/open-redirect-view/open-redirect-view.ts\nasync function openRedirectView(appView, context, params = {}, data = []) {\n return openDERedirectView(\n appView,\n context,\n params,\n data\n );\n}\nasync function toLocalOpenWFRedirectView(context, linkUrl) {\n const i = linkUrl.lastIndexOf(\"?\");\n const queryStr = decodeURIComponent(\n linkUrl.substring(i + 1, linkUrl.length)\n );\n const params = qs.parse(queryStr, { delimiter: \";\" });\n const deName = params.srfdename || \"\";\n if (!deName) {\n throw new RuntimeError(\"\\u91CD\\u5B9A\\u5411\\u53C2\\u6570\\u7F3A\\u5C11\\u5B9E\\u4F53\\u540D\\u79F0\");\n }\n const app = ibiz.hub.getApp(context.srfappid);\n const deCodeName = app.deName2DeCodeName.get(deName.toUpperCase());\n if (!deCodeName) {\n throw new RuntimeError(\"\\u672A\\u627E\\u5230\\u6307\\u5B9A\\u5B9E\\u4F53\\u7684codeName: \".concat(deName));\n }\n params[deCodeName.toLowerCase()] = params[deName.toLowerCase()];\n const deRdViewCodeName = \"\".concat(deCodeName).concat(ibiz.env.isMob ? \"Mob\" : \"\", \"RedirectView\");\n const deRdView = await ibiz.hub.getAppView(deRdViewCodeName);\n delete params.srfdename;\n if (params.srfwf !== \"undo\") {\n const tags = params.processDefinitionKey.split(\"-\");\n const wfTag = tags[3];\n const wf = wfTag.substring(0, wfTag.lastIndexOf(\"v\"));\n const wfVersion = wfTag.substring(wfTag.lastIndexOf(\"v\"));\n params.wf = wf;\n params.wfVersion = wfVersion;\n }\n if (params.srfprocessinstanceid) {\n context.srfprocessinstanceid = params.srfprocessinstanceid;\n delete params.srfprocessinstanceid;\n }\n await ibiz.commands.execute(\n OpenAppViewCommand.TAG,\n deRdView.id,\n context,\n params\n );\n}\nasync function openDERedirectView(appView, context, params = {}, data = []) {\n const navContext = appView.appViewNavContexts || [];\n const navContextData = convertNavData(navContext, context, params);\n context = Object.assign(context.clone(), navContextData);\n const navParams = appView.appViewNavParams || [];\n const navParamsData = convertNavData(navParams, context, params);\n Object.assign(params, navParamsData);\n const entityId = appView.appDataEntityId;\n const key = calcDeCodeNameById(entityId);\n let curData = data[0] || {};\n context[key] = curData[key] || context[key] || params[key];\n const actionId = appView.getDataAppDEActionId;\n const app = ibiz.hub.getApp(appView.appId);\n const service = await app.deService.getService(entityId);\n ibiz.loading.showRedirect();\n try {\n const res = await service.exec(actionId || \"get\", context, params);\n if (res.ok) {\n curData = res.data;\n let linkUrl = curData.linkurl;\n if (linkUrl) {\n if (context.srfprocessinstanceid) {\n linkUrl += \";srfprocessinstanceid=\".concat(context.srfprocessinstanceid);\n }\n if (ibiz.env.dev && linkUrl.indexOf(\"appredirectview?\") !== -1) {\n linkUrl = linkUrl.slice(linkUrl.indexOf(\"appredirectview?\"));\n }\n if (linkUrl.startsWith(\"http://\") || linkUrl.startsWith(\"https://\")) {\n return new Promise((resolve) => {\n const newWindow = window.open(linkUrl, \"_blank\");\n if (newWindow) {\n newWindow.callback = () => {\n resolve({ ok: true, data: [] });\n };\n }\n });\n }\n if (linkUrl.startsWith(\"appredirectview?\")) {\n await toLocalOpenWFRedirectView(context, linkUrl);\n return { ok: true, data: [] };\n }\n return { ok: false, data: [] };\n }\n }\n } finally {\n ibiz.loading.hideRedirect();\n }\n const entity = await ibiz.hub.getAppDataEntity(entityId, appView.appId);\n const rdTag = await calcDERdTag(entity, appView, params, curData);\n const rdTagItems = rdTag.split(\":\");\n const wfRdTag = rdTagItems.length === 2 ? rdTag : rdTagItems.slice(0, 2).join(\":\");\n const deRdTag = \"\".concat(entity.name.toUpperCase(), \":\").concat(rdTag);\n const allRefViews = appView.redirectAppViewRefs;\n const refView = allRefViews == null ? void 0 : allRefViews.find((view) => {\n return view.name === deRdTag || view.name === rdTag || view.name === wfRdTag;\n });\n if (refView) {\n const viewId = refView.refAppViewId;\n if (viewId) {\n const result = await ibiz.commands.execute(\n OpenAppViewCommand.TAG,\n viewId,\n context,\n params,\n { data: [curData] }\n );\n if (result) {\n return result;\n }\n } else {\n throw new RuntimeModelError(refView, \"\\u672A\\u914D\\u7F6E\\u5B9E\\u9645\\u5F15\\u7528\\u89C6\\u56FE\");\n }\n } else {\n ibiz.log.error(\n \"\\u91CD\\u5B9A\\u5411\\u89C6\\u56FE\\u5F15\\u7528\\u6709\\uFF1A\",\n allRefViews == null ? void 0 : allRefViews.map(({ refAppViewId, name, realTitle }) => ({\n viewId: refAppViewId,\n tag: name,\n title: realTitle\n }))\n );\n throw new RuntimeModelError(\n appView,\n \"\\u672A\\u627E\\u5230\\u91CD\\u5B9A\\u5411\\u6807\\u8BC6[\".concat(rdTag, \"]\\u6216[\").concat(deRdTag, \"]\\u6216[\").concat(wfRdTag, \"]\\u5BF9\\u5E94\\u89C6\\u56FE\")\n );\n }\n return { ok: true, data: [] };\n}\nasync function calcDERdTag(entity, rdView, params, data) {\n let rdTag = \"\";\n const typeFieldId = rdView.typeAppDEFieldId;\n if (typeFieldId) {\n const { codeName } = findFieldById(entity, typeFieldId);\n const value = data[codeName.toLowerCase()];\n if (notNilEmpty2(value)) {\n return value;\n }\n }\n const defView = \"\".concat(ibiz.env.isMob ? \"MOB\" : \"\", \"EDITVIEW\");\n const srfWf = params.srfwf;\n if (notNilEmpty2(srfWf)) {\n if (notNilEmpty2(params.wf)) {\n return \"\".concat(defView, \":\").concat(srfWf.toUpperCase(), \":\").concat(params.wf.toUpperCase());\n }\n return \"\".concat(defView, \":\").concat(srfWf.toUpperCase());\n }\n let typeValue = \"\";\n if (entity.indexTypeAppDEFieldId) {\n const { codeName } = findFieldById(entity, entity.indexTypeAppDEFieldId);\n typeValue = data[codeName.toLowerCase()];\n }\n if (isNilOrEmpty2(typeValue)) {\n if (entity.formTypeAppDEFieldId) {\n const { codeName } = findFieldById(entity, entity.formTypeAppDEFieldId);\n typeValue = data[codeName.toLowerCase()];\n }\n }\n if (notNilEmpty2(typeValue)) {\n rdTag = \"\".concat(defView, \":\").concat(typeValue);\n } else {\n rdTag = \"\".concat(defView);\n }\n return rdTag;\n}\n\n// src/utils/verify/verify.ts\nimport { RuntimeError as RuntimeError2 } from \"@ibiz-template/core\";\nimport { isNilOrEmpty as isNilOrEmpty3, notNilEmpty as notNilEmpty3 } from \"qx-util\";\nimport { isNil } from \"ramda\";\nfunction testCond(value, op, value2) {\n if (Object.is(op, \"IN\")) {\n return contains(value, value2);\n }\n if (Object.is(op, \"NOTIN\")) {\n return !contains(value, value2);\n }\n switch (op) {\n case \"EQ\":\n return \"\".concat(value) === \"\".concat(value2);\n case \"NOTEQ\":\n return \"\".concat(value) !== \"\".concat(value2);\n case \"LT\":\n return compare(value, value2) < 0;\n case \"LTANDEQ\":\n return compare(value, value2) <= 0;\n case \"GT\":\n return compare(value, value2) > 0;\n case \"GTANDEQ\":\n return compare(value, value2) >= 0;\n case \"ISNULL\":\n return isNilOrEmpty3(value);\n case \"ISNOTNULL\":\n return notNilEmpty3(value);\n case \"TESTNULL\":\n return isNil(value);\n case \"IN\":\n return contains(value, value2);\n case \"NOTIN\":\n return !contains(value, value2);\n case \"LIKE\":\n return strContain(value, value2);\n case \"LEFTLIKE\":\n return strContain(value, value2, \"start\");\n case \"RIGHTLIKE\":\n return strContain(value, value2, \"end\");\n default:\n throw new RuntimeError2(\"\\u503C\\u64CD\\u4F5C\\uFF1A\".concat(op, \"\\uFF0C\\u6682\\u672A\\u652F\\u6301\"));\n }\n}\nfunction compare(value, value2) {\n const number1 = Number(value);\n const number2 = Number(value2);\n if (!Number.isNaN(number1) && !Number.isNaN(number2)) {\n return compareNumber(number1, number2);\n }\n const date1 = new Date(value).getTime();\n const date2 = new Date(value2).getTime();\n if (!Number.isNaN(date1) && !Number.isNaN(date2)) {\n return compareNumber(date1, date2);\n }\n throw new RuntimeError2(\"\".concat(value, \" \\u548C \").concat(value2, \" \\u65E0\\u6CD5\\u6BD4\\u8F83\\u5927\\u5C0F\"));\n}\nfunction compareNumber(value, value2) {\n if (Number.isNaN(value)) {\n value = 0;\n }\n if (Number.isNaN(value2)) {\n value2 = 0;\n }\n if (value > value2) {\n return 1;\n }\n if (value < value2) {\n return -1;\n }\n return 0;\n}\nfunction contains(value, value2) {\n if (!value2 || typeof value2 !== \"string\") {\n throw new RuntimeError2(\"\\u8303\\u56F4\\u6BD4\\u8F83\\u7684\\u6761\\u4EF6\\u503C\\u4E0D\\u5B58\\u6216\\u8005\\u4E0D\\u662F\\u5B57\\u7B26\\u4E32\");\n }\n if (value) {\n const arr = value2.split(\",\");\n return arr.includes(\"\".concat(value));\n }\n return false;\n}\nfunction strContain(value, value2, mode) {\n if (!value || !value2) {\n return false;\n }\n const val = \"\".concat(value).toUpperCase();\n const val2 = \"\".concat(value2).toUpperCase();\n const index = val.indexOf(val2);\n switch (mode) {\n case \"start\":\n return index === 0;\n case \"end\":\n return index + val2.length === val.length;\n default:\n return index !== -1;\n }\n}\n\n// src/utils/verify/de-rule-verify.ts\nimport { RuntimeError as RuntimeError3 } from \"@ibiz-template/core\";\nimport { isNilOrEmpty as isNilOrEmpty4 } from \"qx-util\";\nimport { isEmpty as isEmpty2, isNil as isNil2 } from \"ramda\";\n\n// src/utils/script/script-function.ts\nimport { mergeRight } from \"ramda\";\nvar DefaultOptions = {\n /** 是否是单行脚本,并把表达式结果return */\n singleRowReturn: false\n};\nvar ScriptFunction = class {\n constructor(argKeys, scriptCode, options = DefaultOptions) {\n this.argKeys = [];\n this.options = options;\n const code = this.formatCode(scriptCode, options);\n this.calcArgKeys(argKeys, options);\n this.scriptFn = new Function(...this.argKeys, code);\n }\n /**\n * 格式化脚本\n * @author lxm\n * @date 2023-07-25 11:02:33\n * @protected\n * @param {string} scriptCode\n * @param {IScriptFunctionOpts} options\n * @return {*} {string}\n */\n formatCode(scriptCode, options) {\n let code = scriptCode;\n if (options.singleRowReturn) {\n code = \"return (\".concat(code, \")\");\n }\n return code;\n }\n /**\n * 计算参数名称集合\n * @author lxm\n * @date 2023-07-25 11:42:37\n * @protected\n * @param {string[]} argKeys\n * @param {IScriptFunctionOpts} options\n */\n calcArgKeys(argKeys, options) {\n const keys = options.presetParams ? Object.keys(options.presetParams) : [];\n keys.push(...argKeys);\n keys.push(\"document\", \"el\", \"selector\");\n this.argKeys = Array.from(new Set(keys));\n }\n /**\n * 转换参数,把exec的对象参数转换成数组\n * @author lxm\n * @date 2023-07-25 11:22:03\n * @protected\n * @param {IParams} params\n * @return {*} {any[]}\n */\n convertArgs(params) {\n const { presetParams } = this.options;\n const _params = presetParams ? mergeRight(presetParams, params) : params;\n _params.document = document;\n _params.selector = (className) => {\n return document.getElementsByClassName(className);\n };\n const result = [];\n this.argKeys.forEach((key) => {\n result.push(_params[key]);\n });\n return result;\n }\n /**\n * 执行脚本代码\n * @author lxm\n * @date 2023-07-25 11:21:44\n * @param {IParams} params\n * @return {*}\n */\n exec(params) {\n const scriptArgs = this.convertArgs(params);\n return this.scriptFn(...scriptArgs);\n }\n};\n\n// src/utils/script/script-factory.ts\nvar ScriptFactory = class {\n /**\n * 创建脚本方法\n * @author lxm\n * @date 2023-07-25 11:47:48\n * @param {string[]} argKeys 参数列表\n * @param {string} scriptCode 脚本代码\n * @param {IScriptFunctionOpts} options 选项\n * @return {*} {ScriptFunction}\n */\n static createScriptFn(argKeys, scriptCode, options) {\n return new ScriptFunction(argKeys, scriptCode, options);\n }\n /**\n * 直接创建并执行脚本\n * @author lxm\n * @date 2023-07-25 02:21:28\n * @static\n * @param {IParams} args 脚本参数\n * @param {string} scriptCode 脚本代码\n * @param {IScriptFunctionOpts} options 选项\n * @return {*}\n */\n static execScriptFn(args, scriptCode, options) {\n return this.createScriptFn(Object.keys(args), scriptCode, options).exec(\n args\n );\n }\n};\n\n// src/utils/verify/de-rule-verify.ts\nfunction isGroupCondition(condition) {\n return condition.condType === \"GROUP\";\n}\nfunction isSimpleCondition(condition) {\n return condition.condType === \"SIMPLE\";\n}\nfunction isValueRange2Condition(condition) {\n return condition.condType === \"VALUERANGE2\";\n}\nfunction isRegExCondition(condition) {\n return condition.condType === \"REGEX\";\n}\nfunction isStringLengthCondition(condition) {\n return condition.condType === \"STRINGLENGTH\";\n}\nfunction isSysValueRuleCondition(condition) {\n return condition.condType === \"SYSVALUERULE\";\n}\nfunction verifyDeRules(name, data, condition) {\n const flag = { isPast: true, infoMessage: condition.ruleInfo };\n if (isGroupCondition(condition)) {\n const childRules = condition.conds;\n if (childRules && childRules.length > 0) {\n flag.isPast = logicForEach(\n childRules,\n (item) => {\n const { isPast, infoMessage } = verifyDeRules(name, data, item);\n flag.infoMessage = infoMessage;\n return isPast;\n },\n condition.condOp,\n !!condition.notMode\n );\n if (!flag.isPast && (condition.condOp === \"AND\" && condition.notMode || condition.condOp === \"OR\" && !condition.notMode)) {\n flag.infoMessage = condition.ruleInfo;\n }\n }\n } else {\n name = condition == null ? void 0 : condition.defname.toLowerCase();\n try {\n if (isSimpleCondition(condition)) {\n flag.isPast = !checkFieldSimpleRule(\n data[name],\n condition.condOp,\n condition.paramValue,\n condition.ruleInfo,\n condition.paramType,\n data,\n condition.keyCond\n );\n } else if (isValueRange2Condition(condition)) {\n flag.isPast = !checkFieldValueRangeRule(\n data[name],\n condition.minValue,\n condition.includeMinValue,\n condition.maxValue,\n condition.includeMaxValue,\n condition.ruleInfo,\n condition.keyCond\n );\n } else if (isRegExCondition(condition)) {\n flag.isPast = !checkFieldRegExRule(\n data[name],\n condition.regExCode,\n condition.ruleInfo,\n condition.keyCond\n );\n } else if (isStringLengthCondition(condition)) {\n flag.isPast = !checkFieldStringLengthRule(\n data[name],\n condition.minValue,\n condition.includeMinValue,\n condition.maxValue,\n condition.includeMaxValue,\n condition.ruleInfo,\n condition.keyCond\n );\n } else if (isSysValueRuleCondition(condition) && (condition == null ? void 0 : condition.sysValueRule)) {\n const { ruleType, regExCode, scriptCode, ruleInfo } = condition.sysValueRule;\n flag.infoMessage = condition.ruleInfo || ruleInfo;\n if (ruleType === \"REG\") {\n flag.isPast = !checkFieldRegExRule(\n data[name],\n regExCode,\n flag.infoMessage,\n condition.keyCond\n );\n } else if (ruleType === \"SCRIPT\") {\n const { isPast, infoMessage } = checkFieldScriptRule(\n data[name],\n data,\n scriptCode,\n flag.infoMessage,\n condition.keyCond\n );\n flag.isPast = isPast;\n flag.infoMessage = infoMessage || flag.infoMessage;\n }\n }\n } catch (error) {\n flag.isPast = false;\n }\n flag.isPast = condition.notMode ? !flag.isPast : flag.isPast;\n }\n return flag;\n}\nfunction logicForEach(array, callback, operateTag = \"AND\", isReverse = false) {\n if (!((array == null ? void 0 : array.length) > 0)) {\n return false;\n }\n let result = operateTag === \"AND\";\n for (let i = 0, len = array.length; i < len; i++) {\n const temp = callback(array[i], i);\n if (operateTag === \"AND\") {\n if (!temp) {\n result = false;\n break;\n }\n } else if (operateTag === \"OR\") {\n if (temp) {\n result = true;\n break;\n }\n }\n }\n return isReverse ? !result : result;\n}\nfunction checkFieldSimpleRule(value, op, value2, errorInfo, paramType, form, primaryModel) {\n if (Object.is(paramType, \"CURTIME\")) {\n value2 = \"\".concat(/* @__PURE__ */ new Date());\n }\n if (Object.is(paramType, \"ENTITYFIELD\")) {\n value2 = value2 ? value2.toLowerCase() : \"\";\n const _value2Field = form[value2] ? form[value2] : value2;\n value2 = _value2Field;\n }\n if (isNil2(errorInfo) || isEmpty2(errorInfo)) {\n errorInfo = \"\\u5185\\u5BB9\\u5FC5\\u987B\\u7B26\\u5408\\u503C\\u89C4\\u5219\";\n }\n const result = testCond(value, op, value2);\n if (!result) {\n if (primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n }\n return !result;\n}\nfunction checkFieldStringLengthRule(viewValue, minLength, indexOfMin, maxLength, indexOfMax, errorInfo, primaryModel) {\n if (isNilOrEmpty4(errorInfo)) {\n errorInfo = \"\\u5185\\u5BB9\\u957F\\u5EA6\\u5FC5\\u987B\\u7B26\\u5408\\u8303\\u56F4\\u89C4\\u5219\";\n }\n const judge = isNilOrEmpty4(viewValue);\n if (judge) {\n if (primaryModel) {\n throw new RuntimeError3(\"\\u503C\\u4E3A\\u7A7A\");\n }\n errorInfo = \"\\u503C\\u4E3A\\u7A7A\";\n return true;\n }\n const viewValueLength = viewValue.length;\n if (minLength !== null) {\n if (indexOfMin) {\n if (viewValueLength < minLength) {\n if (primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n return true;\n }\n } else if (viewValueLength <= minLength) {\n if (primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n return true;\n }\n }\n if (maxLength !== null) {\n if (indexOfMax) {\n if (viewValueLength > maxLength) {\n if (primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n return true;\n }\n } else if (viewValueLength >= maxLength) {\n if (primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n return true;\n }\n }\n errorInfo = \"\";\n return false;\n}\nfunction checkFieldRegExRule(viewValue, strReg, errorInfo, primaryModel) {\n if (isNilOrEmpty4(errorInfo)) {\n errorInfo = \"\\u503C\\u5FC5\\u987B\\u7B26\\u5408\\u6B63\\u5219\\u89C4\\u5219\";\n }\n const judge = isNilOrEmpty4(viewValue);\n if (judge) {\n if (primaryModel) {\n throw new RuntimeError3(\"\\u503C\\u4E3A\\u7A7A\");\n }\n errorInfo = \"\\u503C\\u4E3A\\u7A7A\";\n return true;\n }\n const regExp = new RegExp(strReg);\n if (!regExp.test(viewValue)) {\n if (primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n return true;\n }\n errorInfo = \"\";\n return false;\n}\nfunction checkFieldValueRangeRule(viewValue, minNumber, indexOfMin, maxNumber, indexOfMax, errorInfo, primaryModel) {\n if (isNilOrEmpty4(errorInfo)) {\n errorInfo = \"\\u503C\\u5FC5\\u987B\\u7B26\\u5408\\u503C\\u8303\\u56F4\\u89C4\\u5219\";\n }\n const isEmptyVal = isNilOrEmpty4(viewValue);\n if (isEmptyVal) {\n if (primaryModel) {\n throw new RuntimeError3(\"\\u503C\\u4E3A\\u7A7A\");\n }\n errorInfo = \"\\u503C\\u4E3A\\u7A7A\";\n return true;\n }\n const valueFormat = checkFieldRegExRule(\n viewValue,\n /^-?\\d*\\.?\\d+$/,\n \"\",\n primaryModel\n );\n if (valueFormat) {\n return true;\n }\n const data = Number.parseFloat(viewValue);\n if (minNumber !== null) {\n if (indexOfMin) {\n if (data < minNumber) {\n if (primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n return true;\n }\n } else if (data <= minNumber) {\n if (primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n return true;\n }\n }\n if (maxNumber != null) {\n if (indexOfMax) {\n if (data > maxNumber) {\n if (primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n return true;\n }\n } else if (data >= maxNumber) {\n if (primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n return true;\n }\n }\n errorInfo = \"\";\n return false;\n}\nfunction checkFieldScriptRule(value, data, scriptCode, errorInfo, primaryModel) {\n if (isNilOrEmpty4(errorInfo)) {\n errorInfo = \"\\u503C\\u5FC5\\u987B\\u7B26\\u5408\\u811A\\u672C\\u89C4\\u5219\";\n }\n const source = data;\n let selfError = \"\";\n let resultBoolean = true;\n const callback = (error) => {\n resultBoolean = false;\n if ((error == null ? void 0 : error.length) > 0) {\n error.forEach((item) => {\n if (item == null ? void 0 : item.message) {\n selfError += item.message;\n }\n });\n } else if (error == null ? void 0 : error.message) {\n selfError = error.message;\n }\n };\n try {\n const result = ScriptFactory.execScriptFn(\n { value, data: source },\n scriptCode\n );\n if (typeof result === \"boolean\") {\n resultBoolean = result;\n }\n } catch (error) {\n ibiz.log.error(error);\n callback(error);\n }\n errorInfo = \"\";\n if (!resultBoolean && primaryModel) {\n throw new RuntimeError3(errorInfo);\n }\n return { isPast: resultBoolean, infoMessage: selfError || errorInfo };\n}\n\n// src/utils/verify/form-dynamic-logic.ts\nimport { ModelError, RuntimeModelError as RuntimeModelError2 } from \"@ibiz-template/core\";\nfunction isGroupLogic(logic) {\n return logic.logicType === \"GROUP\";\n}\nfunction isSingleLogic(logic) {\n return logic.logicType === \"SINGLE\";\n}\nfunction verifyFormGroupLogic(data, logic) {\n if (isGroupLogic(logic)) {\n const children = logic.defdlogics;\n if (!children || children.length === 0) {\n throw new RuntimeModelError2(logic, \"\\u53D1\\u73B0\\u7A7A\\u903B\\u8F91\\u7EC4\\uFF0C\\u903B\\u8F91\\u65E0\\u6CD5\\u6B63\\u5E38\\u6267\\u884C\\uFF01\");\n }\n let result = true;\n if (logic.groupOP === \"AND\") {\n const falseItem = children.find((childLogic) => {\n return !verifyFormGroupLogic(data, childLogic);\n });\n result = falseItem === void 0;\n } else if (logic.groupOP === \"OR\") {\n const trueItem = logic.defdlogics.find(\n (childLogic) => {\n return verifyFormGroupLogic(data, childLogic);\n }\n );\n result = trueItem !== void 0;\n }\n return logic.notMode ? !result : result;\n }\n if (isSingleLogic(logic)) {\n return testCond(\n data[logic.defdname.toLowerCase()],\n logic.condOP,\n logic.value\n );\n }\n throw new ModelError(logic, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u7C7B\\u578B\".concat(logic.logicType));\n}\n\n// src/utils/verify/panel-dynamic-logic.ts\nimport { ModelError as ModelError2, RuntimeModelError as RuntimeModelError3 } from \"@ibiz-template/core\";\nfunction isGroupLogic2(logic) {\n return logic.logicType === \"GROUP\";\n}\nfunction isSingleLogic2(logic) {\n return logic.logicType === \"SINGLE\";\n}\nfunction verifyPanelGroupLogic(data, logic) {\n if (isGroupLogic2(logic)) {\n const children = logic.panelItemLogics;\n if (!children || children.length === 0) {\n throw new RuntimeModelError3(logic, \"\\u53D1\\u73B0\\u7A7A\\u903B\\u8F91\\u7EC4\\uFF0C\\u903B\\u8F91\\u65E0\\u6CD5\\u6B63\\u5E38\\u6267\\u884C\\uFF01\");\n }\n let result = true;\n if (logic.groupOP === \"AND\") {\n const falseItem = children.find((childLogic) => {\n return !verifyPanelGroupLogic(data, childLogic);\n });\n result = falseItem === void 0;\n } else if (logic.groupOP === \"OR\") {\n const trueItem = logic.panelItemLogics.find(\n (childLogic) => {\n return verifyPanelGroupLogic(data, childLogic);\n }\n );\n result = trueItem !== void 0;\n }\n return logic.notMode ? !result : result;\n }\n if (isSingleLogic2(logic)) {\n return testCond(\n data[logic.dstModelField.toLowerCase()],\n logic.condOp,\n logic.value\n );\n }\n throw new ModelError2(logic, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u7C7B\\u578B\".concat(logic.logicType));\n}\n\n// src/utils/layout-panel-util/layout-panel-util.ts\nimport { clone } from \"ramda\";\nvar LayoutPanelUtil = class {\n constructor() {\n /**\n * 默认布局缓存\n *\n * @author chitanda\n * @date 2023-04-27 20:04:50\n * @protected\n * @type {Map<string, IViewLayoutPanel>}\n */\n this.cache = /* @__PURE__ */ new Map();\n }\n /**\n * 注册\n *\n * @author chitanda\n * @date 2023-04-27 20:04:04\n * @param {string} tag\n * @param {IViewLayoutPanel} model\n */\n register(tag, model) {\n this.cache.set(tag, model);\n }\n /**\n * 获取\n * @author lxm\n * @date 2023-07-31 02:48:37\n * @param {string} tag\n * @return {*} {(IViewLayoutPanel | undefined)}\n */\n get(tag) {\n return this.cache.get(tag);\n }\n /**\n * 填充默认布局模型\n *\n * @author chitanda\n * @date 2023-04-27 20:04:16\n * @param {IAppView} viewModel\n * @return {*} {IAppView}\n */\n fill(viewModel) {\n const { viewLayoutPanel } = viewModel;\n if (!viewLayoutPanel || viewLayoutPanel.useDefaultLayout === true) {\n const tag = this.calcLayoutTag(viewModel);\n if (this.cache.has(tag)) {\n const layout = clone(this.cache.get(tag));\n viewModel.viewLayoutPanel = layout;\n if (viewModel.appCounterRefs) {\n layout.appCounterRefs = viewModel.appCounterRefs;\n delete viewModel.appCounterRefs;\n }\n if (viewModel.appViewEngines) {\n layout.appViewEngines = viewModel.appViewEngines;\n delete viewModel.appViewEngines;\n }\n if (viewModel.appViewLogics) {\n layout.appViewLogics = viewModel.appViewLogics;\n delete viewModel.appViewLogics;\n }\n if (viewModel.appViewRefs) {\n layout.appViewRefs = viewModel.appViewRefs;\n delete viewModel.appViewRefs;\n }\n if (viewModel.controls) {\n layout.controls = viewModel.controls;\n delete viewModel.controls;\n }\n }\n }\n return viewModel;\n }\n /**\n * 计算布局面板标识\n *\n * @author chitanda\n * @date 2023-07-10 17:07:38\n * @protected\n * @param {IAppView} viewModel\n * @return {*} {string}\n */\n calcLayoutTag(viewModel) {\n const { viewType, viewStyle } = viewModel;\n switch (viewType) {\n case \"APPINDEXVIEW\":\n return this.calcIndexViewLayoutTag(viewModel);\n default:\n return \"\".concat(viewType, \"_\").concat(viewStyle);\n }\n }\n /**\n * 特殊计算首页布局面板标识,匹配多种配置模式下的布局面板呈现\n *\n * @author chitanda\n * @date 2023-07-10 17:07:06\n * @protected\n * @param {IAppIndexView} viewModel\n * @return {*} {string}\n */\n calcIndexViewLayoutTag(viewModel) {\n const { viewType, viewStyle, blankMode, mainMenuAlign } = viewModel;\n let exTag = \"\";\n if (blankMode) {\n exTag = \"BLANK_MODE\";\n } else if (mainMenuAlign) {\n exTag = mainMenuAlign.toUpperCase();\n }\n if (exTag !== \"\") {\n return \"\".concat(viewType, \"_\").concat(viewStyle, \"_\").concat(exTag);\n }\n return \"\".concat(viewType, \"_\").concat(viewStyle);\n }\n};\n\n// src/utils/wf-helper/wf-helper.ts\nfunction getWFContext(data) {\n const tempContext = {};\n if (data.param09) {\n tempContext.srfprocessinstanceid = data.param09;\n }\n return tempContext;\n}\nfunction getWFSubmitViewId(view, link) {\n var _a;\n const { type, sequenceFlowView, sequenceFlowMobView } = link;\n const appViewRefs = ((_a = view.viewLayoutPanel) == null ? void 0 : _a.appViewRefs) || view.appViewRefs;\n const key = type ? \"WFUTILACTION@\".concat(type.toUpperCase()) : \"WFACTION@\".concat(ibiz.env.isMob ? sequenceFlowMobView : sequenceFlowView);\n const submitViewRef = appViewRefs.find((viewRef) => {\n return viewRef.name === key;\n });\n return submitViewRef == null ? void 0 : submitViewRef.refAppViewId;\n}\n\n// src/utils/modal/modal.ts\nimport { AsyncSeriesHook } from \"qx-util\";\n\n// src/constant/control-type.ts\nvar ControlType = /* @__PURE__ */ ((ControlType2) => {\n ControlType2[\"APP_MENU\"] = \"APPMENU\";\n ControlType2[\"GRID\"] = \"GRID\";\n ControlType2[\"FORM\"] = \"FORM\";\n ControlType2[\"SEARCHFORM\"] = \"SEARCHFORM\";\n ControlType2[\"TOOLBAR\"] = \"TOOLBAR\";\n ControlType2[\"DRBAR\"] = \"DRBAR\";\n ControlType2[\"VIEWPANEL\"] = \"VIEWPANEL\";\n ControlType2[\"PICKUP_VIEW_PANEL\"] = \"PICKUPVIEWPANEL\";\n ControlType2[\"DATAVIEW\"] = \"DATAVIEW\";\n ControlType2[\"TREEGRID\"] = \"TREEGRID\";\n ControlType2[\"WF_EXPBAR\"] = \"WFEXPBAR\";\n ControlType2[\"TREEVIEW\"] = \"TREEVIEW\";\n ControlType2[\"TREE_EXP_BAR\"] = \"TREEEXPBAR\";\n ControlType2[\"TAB_VIEWPANEL\"] = \"TABVIEWPANEL\";\n ControlType2[\"DRTAB\"] = \"DRTAB\";\n ControlType2[\"CHART\"] = \"CHART\";\n ControlType2[\"REPORT_PANEL\"] = \"REPORTPANEL\";\n ControlType2[\"LIST\"] = \"LIST\";\n ControlType2[\"MOB_MDCTRL\"] = \"MOBMDCTRL\";\n ControlType2[\"MULTI_EDIT_VIEWPANEL\"] = \"MULTIEDITVIEWPANEL\";\n ControlType2[\"WIZARD_PANEL\"] = \"WIZARDPANEL\";\n ControlType2[\"UPDATE_PANEL\"] = \"UPDATEPANEL\";\n ControlType2[\"SEARCHBAR\"] = \"SEARCHBAR\";\n ControlType2[\"DASHBOARD\"] = \"DASHBOARD\";\n ControlType2[\"CALENDAR\"] = \"CALENDAR\";\n ControlType2[\"PANEL\"] = \"PANEL\";\n ControlType2[\"VIEW_LAYOUT_PANEL\"] = \"VIEWLAYOUTPANEL\";\n ControlType2[\"MAP\"] = \"MAP\";\n ControlType2[\"GANTT\"] = \"GANTT\";\n ControlType2[\"TREE_GRIDEX\"] = \"TREEGRIDEX\";\n ControlType2[\"KANBAN\"] = \"KANBAN\";\n ControlType2[\"CALENDAR_EXPBAR\"] = \"CALENDAREXPBAR\";\n ControlType2[\"CHART_EXPBAR\"] = \"CHARTEXPBAR\";\n ControlType2[\"DATA_VIEW_EXPBAR\"] = \"DATAVIEWEXPBAR\";\n ControlType2[\"GANTT_EXPBAR\"] = \"GANTTEXPBAR\";\n ControlType2[\"GRID_EXPBAR\"] = \"GRIDEXPBAR\";\n ControlType2[\"LIST_EXPBAR\"] = \"LISTEXPBAR\";\n ControlType2[\"MAP_EXPBAR\"] = \"MAPEXPBAR\";\n ControlType2[\"STATE_WIZARD_PANEL\"] = \"STATEWIZARDPANEL\";\n ControlType2[\"TAB_EXP_PANEL\"] = \"TABEXPPANEL\";\n ControlType2[\"CUSTOM\"] = \"CUSTOM\";\n ControlType2[\"CAPTIONBAR\"] = \"CAPTIONBAR\";\n return ControlType2;\n})(ControlType || {});\n\n// src/constant/view-type.ts\nvar ViewType = /* @__PURE__ */ ((ViewType2) => {\n ViewType2[\"APP_INDEX_VIEW\"] = \"APPINDEXVIEW\";\n ViewType2[\"DE_GRID_VIEW\"] = \"DEGRIDVIEW\";\n ViewType2[\"DE_EDIT_VIEW\"] = \"DEEDITVIEW\";\n ViewType2[\"APP_DATA_UPLOAD_VIEW\"] = \"APPDATAUPLOADVIEW\";\n ViewType2[\"APP_ERROR_VIEW\"] = \"APPERRORVIEW\";\n ViewType2[\"APP_FILE_UPLOAD_VIEW\"] = \"APPFILEUPLOADVIEW\";\n ViewType2[\"APP_FUN_PICKUP_VIEW\"] = \"APPFUNCPICKUPVIEW\";\n ViewType2[\"APP_LOGIN_VIEW\"] = \"APPLOGINVIEW\";\n ViewType2[\"APP_LOGOUT_VIEW\"] = \"APPLOGOUTVIEW\";\n ViewType2[\"APP_PANEL_VIEW\"] = \"APPPANELVIEW\";\n ViewType2[\"APP_PIC_UPLOAD_VIEW\"] = \"APPPICUPLOADVIEW\";\n ViewType2[\"APP_PORTAL_VIEW\"] = \"APPPORTALVIEW\";\n ViewType2[\"APP_REDIRECT_VIEW\"] = \"APPREDIRECTVIEW\";\n ViewType2[\"APP_START_VIEW\"] = \"APPSTARTVIEW\";\n ViewType2[\"APP_WELCOME_VIEW\"] = \"APPWELCOMEVIEW\";\n ViewType2[\"APP_WF_ADD_STEP_AFTER_VIEW\"] = \"APPWFADDSTEPAFTERVIEW\";\n ViewType2[\"APP_WF_ADD_STEP_BEFORE_VIEW\"] = \"APPWFADDSTEPBEFOREVIEW\";\n ViewType2[\"APP_WF_REDIRECT_VIEW\"] = \"APPWFREDIRECTVIEW\";\n ViewType2[\"APP_WF_SENDBAC_VIEW\"] = \"APPWFSENDBACKVIEW\";\n ViewType2[\"APP_WF_STEP_ACTOR_VIEW\"] = \"APPWFSTEPACTORVIEW\";\n ViewType2[\"APP_WF_STEP_DATA_VIEW\"] = \"APPWFSTEPDATAVIEW\";\n ViewType2[\"APP_WF_STEP_TRACE_VIEW\"] = \"APPWFSTEPTRACEVIEW\";\n ViewType2[\"APP_WF_SUPPLY_INFO_VIEW\"] = \"APPWFSUPPLYINFOVIEW\";\n ViewType2[\"APP_WF_TAKE_ADVICE_VIEW\"] = \"APPWFTAKEADVICEVIEW\";\n ViewType2[\"DE_CALENDAR_EXP_VIEW\"] = \"DECALENDAREXPVIEW\";\n ViewType2[\"DE_CALENDAR_VIEW\"] = \"DECALENDARVIEW\";\n ViewType2[\"DE_CHART_EXP_VIEW\"] = \"DECHARTEXPVIEW\";\n ViewType2[\"DE_CHART_VIEW\"] = \"DECHARTVIEW\";\n ViewType2[\"DE_CHART_VIEW9\"] = \"DECHARTVIEW9\";\n ViewType2[\"DE_CUSTOM_VIEW\"] = \"DECUSTOMVIEW\";\n ViewType2[\"DE_DATA_VIEW\"] = \"DEDATAVIEW\";\n ViewType2[\"DE_DATA_VIEW9\"] = \"DEDATAVIEW9\";\n ViewType2[\"DE_DATAVIEW_EXP_VIEW\"] = \"DEDATAVIEWEXPVIEW\";\n ViewType2[\"DE_EDIT_VIEW2\"] = \"DEEDITVIEW2\";\n ViewType2[\"DE_EDIT_VIEW3\"] = \"DEEDITVIEW3\";\n ViewType2[\"DE_EDIT_VIEW4\"] = \"DEEDITVIEW4\";\n ViewType2[\"DE_EDIT_VIEW9\"] = \"DEEDITVIEW9\";\n ViewType2[\"DE_FORM_PICKUP_DATA_VIEW\"] = \"DEFORMPICKUPDATAVIEW\";\n ViewType2[\"DE_GANTT_EXP_VIEW\"] = \"DEGANTTEXPVIEW\";\n ViewType2[\"DE_GANTT_VIEW\"] = \"DEGANTTVIEW\";\n ViewType2[\"DE_GANTT_VIEW9\"] = \"DEGANTTVIEW9\";\n ViewType2[\"DE_GRID_EXP_VIEW\"] = \"DEGRIDEXPVIEW\";\n ViewType2[\"DE_GRID_VIEW2\"] = \"DEGRIDVIEW2\";\n ViewType2[\"DE_GRID_VIEW4\"] = \"DEGRIDVIEW4\";\n ViewType2[\"DE_GRID_VIEW8\"] = \"DEGRIDVIEW8\";\n ViewType2[\"DE_GRID_VIEW9\"] = \"DEGRIDVIEW9\";\n ViewType2[\"DE_HTML_VIEW\"] = \"DEHTMLVIEW\";\n ViewType2[\"DE_INDEX_PICKUP_DATA_VIEW\"] = \"DEINDEXPICKUPDATAVIEW\";\n ViewType2[\"DE_INDEX_VIEW\"] = \"DEINDEXVIEW\";\n ViewType2[\"DE_KANBAN_VIEW\"] = \"DEKANBANVIEW\";\n ViewType2[\"DE_KANBAN_VIEW9\"] = \"DEKANBANVIEW9\";\n ViewType2[\"DE_LIST_EXP_VIEW\"] = \"DELISTEXPVIEW\";\n ViewType2[\"DE_LIST_VIEW\"] = \"DELISTVIEW\";\n ViewType2[\"DE_LIST_VIEW9\"] = \"DELISTVIEW9\";\n ViewType2[\"DE_MAP_EXP_VIEW\"] = \"DEMAPEXPVIEW\";\n ViewType2[\"DE_MAP_VIEW\"] = \"DEMAPVIEW\";\n ViewType2[\"DE_MAP_VIEW9\"] = \"DEMAPVIEW9\";\n ViewType2[\"DE_MD_CUSTOM_VIEW\"] = \"DEMDCUSTOMVIEW\";\n ViewType2[\"DE_MEDITVIEW9\"] = \"DEMEDITVIEW9\";\n ViewType2[\"DE_MOB_CALENDAR_EXP_VIEW\"] = \"DEMOBCALENDAREXPVIEW\";\n ViewType2[\"DE_MOB_CALENDAR_VIEW\"] = \"DEMOBCALENDARVIEW\";\n ViewType2[\"DE_MOB_CALENDAR_VIEW9\"] = \"DEMOBCALENDARVIEW9\";\n ViewType2[\"DE_MOB_CHART_EXP_VIEW\"] = \"DEMOBCHARTEXPVIEW\";\n ViewType2[\"DE_MO_BCHART_VIEW\"] = \"DEMOBCHARTVIEW\";\n ViewType2[\"D_EMOB_CHART_VIEW9\"] = \"DEMOBCHARTVIEW9\";\n ViewType2[\"DE_MOB_CUSTOM_VIEW\"] = \"DEMOBCUSTOMVIEW\";\n ViewType2[\"DE_MOB_DATA_VIEW\"] = \"DEMOBDATAVIEW\";\n ViewType2[\"DE_MOB_DATA_VIEW_EXP_VIEW\"] = \"DEMOBDATAVIEWEXPVIEW\";\n ViewType2[\"DE_MOB_EDIT_VIEW\"] = \"DEMOBEDITVIEW\";\n ViewType2[\"DE_MOB_EDIT_VIEW3\"] = \"DEMOBEDITVIEW3\";\n ViewType2[\"DE_MOB_EDITVIEW9\"] = \"DEMOBEDITVIEW9\";\n ViewType2[\"DE_MOB_FORM_PICKUP_MDVIEW\"] = \"DEMOBFORMPICKUPMDVIEW\";\n ViewType2[\"DE_MOB_GANTT_EXP_VIEW\"] = \"DEMOBGANTTEXPVIEW\";\n ViewType2[\"DE_MOB_GANTT_VIEW\"] = \"DEMOBGANTTVIEW\";\n ViewType2[\"DE_MOB_GANTT_VIEW9\"] = \"DEMOBGANTTVIEW9\";\n ViewType2[\"DE_MOB_HTML_VIEW\"] = \"DEMOBHTMLVIEW\";\n ViewType2[\"DE_MOB_INDEX_PICKUP_MDVIEW\"] = \"DEMOBINDEXPICKUPMDVIEW\";\n ViewType2[\"DE_MOB_LIST_EXP_VIEW\"] = \"DEMOBLISTEXPVIEW\";\n ViewType2[\"DE_MOB_LIST_VIEW\"] = \"DEMOBLISTVIEW\";\n ViewType2[\"DE_MOB_MAP_VIEW\"] = \"DEMOBMAPVIEW\";\n ViewType2[\"DE_MOB_MAP_VIEW9\"] = \"DEMOBMAPVIEW9\";\n ViewType2[\"DE_MOB_MDVIEW\"] = \"DEMOBMDVIEW\";\n ViewType2[\"DE_MOB_MDVIEW9\"] = \"DEMOBMDVIEW9\";\n ViewType2[\"DE_MOB_MEDIT_VIEW9\"] = \"DEMOBMEDITVIEW9\";\n ViewType2[\"DE_MOB_MPICKUP_VIEW\"] = \"DEMOBMPICKUPVIEW\";\n ViewType2[\"DE_MOB_OPT_VIEW\"] = \"DEMOBOPTVIEW\";\n ViewType2[\"DE_MOB_PANEL_VIEW\"] = \"DEMOBPANELVIEW\";\n ViewType2[\"DE_MOB_PANEL_VIEW9\"] = \"DEMOBPANELVIEW9\";\n ViewType2[\"DE_MOB_PICKUP_LIST_VIEW\"] = \"DEMOBPICKUPLISTVIEW\";\n ViewType2[\"DE_MOB_PICKUP_MDVIEW\"] = \"DEMOBPICKUPMDVIEW\";\n ViewType2[\"DE_MOB_PICKUP_TREE_VIEW\"] = \"DEMOBPICKUPTREEVIEW\";\n ViewType2[\"DE_MOB_PICKUP_VIEW\"] = \"DEMOBPICKUPVIEW\";\n ViewType2[\"DE_MOB_PORTAL_VIEW\"] = \"DEMOBPORTALVIEW\";\n ViewType2[\"DE_MOB_PORTAL_VIEW9\"] = \"DEMOBPORTALVIEW9\";\n ViewType2[\"DE_MOB_REDIRECT_VIEW\"] = \"DEMOBREDIRECTVIEW\";\n ViewType2[\"DE_MOB_REPORT_VIEW\"] = \"DEMOBREPORTVIEW\";\n ViewType2[\"DE_MOB_TAB_EXP_VIEW\"] = \"DEMOBTABEXPVIEW\";\n ViewType2[\"DE_MOB_TAB_EXP_VIEW9\"] = \"DEMOBTABEXPVIEW9\";\n ViewType2[\"DE_MOB_TAB_SEARCH_VIEW\"] = \"DEMOBTABSEARCHVIEW\";\n ViewType2[\"DE_MOB_TAB_SEARCH_VIEW9\"] = \"DEMOBTABSEARCHVIEW9\";\n ViewType2[\"DE_MOB_TREE_EXP_VIEW\"] = \"DEMOBTREEEXPVIEW\";\n ViewType2[\"DEMOBTREEEXPVIEW9\"] = \"DEMOBTREEEXPVIEW9\";\n ViewType2[\"DE_MOB_TREE_VIEW\"] = \"DEMOBTREEVIEW\";\n ViewType2[\"DE_MOB_WFACTION_VIEW\"] = \"DEMOBWFACTIONVIEW\";\n ViewType2[\"DE_MOB_WF_DATA_REDIRECT_VIEW\"] = \"DEMOBWFDATAREDIRECTVIEW\";\n ViewType2[\"DE_MOB_WF_DYNAACTIO_NVIEW\"] = \"DEMOBWFDYNAACTIONVIEW\";\n ViewType2[\"DE_MOB_WFDYNA_EDIT_VIEW\"] = \"DEMOBWFDYNAEDITVIEW\";\n ViewType2[\"DE_MOB_WF_DYNA_EDIT_VIEW3\"] = \"DEMOBWFDYNAEDITVIEW3\";\n ViewType2[\"DE_MOB_WF_DYNA_EXP_MDVIEW\"] = \"DEMOBWFDYNAEXPMDVIEW\";\n ViewType2[\"DE_MO_BWF_DYNA_START_VIEW\"] = \"DEMOBWFDYNASTARTVIEW\";\n ViewType2[\"DE_MOB_WF_EDIT_VIEW\"] = \"DEMOBWFEDITVIEW\";\n ViewType2[\"DE_MOB_WF_EDIT_VIEW3\"] = \"DEMOBWFEDITVIEW3\";\n ViewType2[\"DE_MOB_WF_MDVIEW\"] = \"DEMOBWFMDVIEW\";\n ViewType2[\"DE_MOB_WF_PROXY_RESULT_VIEW\"] = \"DEMOBWFPROXYRESULTVIEW\";\n ViewType2[\"DE_MOB_WF_PROXY_START_VIEW\"] = \"DEMOBWFPROXYSTARTVIEW\";\n ViewType2[\"DE_MOB_WF_START_VIEW\"] = \"DEMOBWFSTARTVIEW\";\n ViewType2[\"DE_MOB_WIZARD_VIEW\"] = \"DEMOBWIZARDVIEW\";\n ViewType2[\"DE_MPICKUP_VIEW\"] = \"DEMPICKUPVIEW\";\n ViewType2[\"DE_MPICKUP_VIEW2\"] = \"DEMPICKUPVIEW2\";\n ViewType2[\"DE_OPT_VIEW\"] = \"DEOPTVIEW\";\n ViewType2[\"DE_PANEL_VIEW\"] = \"DEPANELVIEW\";\n ViewType2[\"DE_PANEL_VIEW9\"] = \"DEPANELVIEW9\";\n ViewType2[\"DE_PICKUP_DATA_VIEW\"] = \"DEPICKUPDATAVIEW\";\n ViewType2[\"DE_PICKUP_GRID_VIEW\"] = \"DEPICKUPGRIDVIEW\";\n ViewType2[\"DE_PICKUP_TREE_VIEW\"] = \"DEPICKUPTREEVIEW\";\n ViewType2[\"DE_PICKUP_VIEW\"] = \"DEPICKUPVIEW\";\n ViewType2[\"DE_PICKUP_VIEW2\"] = \"DEPICKUPVIEW2\";\n ViewType2[\"DE_PICK_UP_VIEW3\"] = \"DEPICKUPVIEW3\";\n ViewType2[\"DE_PORTAL_VIEW\"] = \"DEPORTALVIEW\";\n ViewType2[\"DE_PORTAL_VIEW9\"] = \"DEPORTALVIEW9\";\n ViewType2[\"DE_REDIRECT_VIEW\"] = \"DEREDIRECTVIEW\";\n ViewType2[\"DE_REPORT_VIEW\"] = \"DEREPORTVIEW\";\n ViewType2[\"DE_TAB_EXP_VIEW\"] = \"DETABEXPVIEW\";\n ViewType2[\"DE_TAB_EXP_VIEW9\"] = \"DETABEXPVIEW9\";\n ViewType2[\"DE_TAB_SEARCH_VIEW\"] = \"DETABSEARCHVIEW\";\n ViewType2[\"DE_TAB_SEARCH_VIEW9\"] = \"DETABSEARCHVIEW9\";\n ViewType2[\"DE_TREE_EXP_VIEW\"] = \"DETREEEXPVIEW\";\n ViewType2[\"DE_TREE_EXP_VIEW2\"] = \"DETREEEXPVIEW2\";\n ViewType2[\"DE_TREE_EXP_VIEW3\"] = \"DETREEEXPVIEW3\";\n ViewType2[\"DE_TREE_GRID_EXVIEW\"] = \"DETREEGRIDEXVIEW\";\n ViewType2[\"DE_TREE_GRID_EXVIEW9\"] = \"DETREEGRIDEXVIEW9\";\n ViewType2[\"DE_TREE_GRID_VIEW\"] = \"DETREEGRIDVIEW\";\n ViewType2[\"DE_TREE_GRID_VIEW9\"] = \"DETREEGRIDVIEW9\";\n ViewType2[\"DE_TREE_VIEW\"] = \"DETREEVIEW\";\n ViewType2[\"DE_TREE_VIEW9\"] = \"DETREEVIEW9\";\n ViewType2[\"DE_WF_ACTION_VIEW\"] = \"DEWFACTIONVIEW\";\n ViewType2[\"DE_WF_DATA_REDIRECT_VIEW\"] = \"DEWFDATAREDIRECTVIEW\";\n ViewType2[\"DE_WF_DYNA_ACTION_VIEW\"] = \"DEWFDYNAACTIONVIEW\";\n ViewType2[\"DE_WF_DYNA_EDIT_VIEW\"] = \"DEWFDYNAEDITVIEW\";\n ViewType2[\"DE_WF_DYNA_EDIT_VIEW3\"] = \"DEWFDYNAEDITVIEW3\";\n ViewType2[\"DE_WF_DYNA_EXP_GRID_VIEW\"] = \"DEWFDYNAEXPGRIDVIEW\";\n ViewType2[\"DE_WF_DYNA_START_VIEW\"] = \"DEWFDYNASTARTVIEW\";\n ViewType2[\"DE_WF_EDIT_PROXY_DATA_VIEW\"] = \"DEWFEDITPROXYDATAVIEW\";\n ViewType2[\"DE_WF_EDIT_VIEW\"] = \"DEWFEDITVIEW\";\n ViewType2[\"DE_WF_EDIT_VIEW2\"] = \"DEWFEDITVIEW2\";\n ViewType2[\"DE_WF_EDIT_VIEW3\"] = \"DEWFEDITVIEW3\";\n ViewType2[\"DE_WF_EDIT_VIEW9\"] = \"DEWFEDITVIEW9\";\n ViewType2[\"DE_WF_EXP_VIEW\"] = \"DEWFEXPVIEW\";\n ViewType2[\"DE_WF_GRID_VIEW\"] = \"DEWFGRIDVIEW\";\n ViewType2[\"DE_WF_PROXY_DATA_VIEW\"] = \"DEWFPROXYDATAVIEW\";\n ViewType2[\"DE_WF_PROXY_RESULT_VIEW\"] = \"DEWFPROXYRESULTVIEW\";\n ViewType2[\"DE_WF_PROXY_START_VIEW\"] = \"DEWFPROXYSTARTVIEW\";\n ViewType2[\"DE_WF_START_VIEW\"] = \"DEWFSTARTVIEW\";\n ViewType2[\"DE_WIZARD_VIEW\"] = \"DEWIZARDVIEW\";\n return ViewType2;\n})(ViewType || {});\n\n// src/constant/view-mode.ts\nvar ViewMode = /* @__PURE__ */ ((ViewMode2) => {\n ViewMode2[\"ROUTE\"] = \"ROUTE\";\n ViewMode2[\"MODAL\"] = \"MODAL\";\n ViewMode2[\"DRAWER\"] = \"DRAWER\";\n ViewMode2[\"EMBED\"] = \"EMBED\";\n ViewMode2[\"POPOVER\"] = \"POPOVER\";\n return ViewMode2;\n})(ViewMode || {});\n\n// src/constant/sys-uiaction-tag.ts\nvar SysUIActionTag = /* @__PURE__ */ ((SysUIActionTag2) => {\n SysUIActionTag2[\"NEW\"] = \"New\";\n SysUIActionTag2[\"EDIT\"] = \"Edit\";\n SysUIActionTag2[\"REFRESH\"] = \"Refresh\";\n SysUIActionTag2[\"EXIT\"] = \"Exit\";\n SysUIActionTag2[\"SAVE_AND_EXIT\"] = \"SaveAndExit\";\n SysUIActionTag2[\"SAVE_AND_NEW\"] = \"SaveAndNew\";\n SysUIActionTag2[\"SAVE\"] = \"Save\";\n SysUIActionTag2[\"SAVE_ROW\"] = \"SaveRow\";\n SysUIActionTag2[\"REMOVE\"] = \"Remove\";\n SysUIActionTag2[\"REMOVE_AND_EXIT\"] = \"RemoveAndExit\";\n SysUIActionTag2[\"NEW_ROW\"] = \"NewRow\";\n SysUIActionTag2[\"TOGGLE_FILTER\"] = \"ToggleFilter\";\n SysUIActionTag2[\"IMPORT\"] = \"Import\";\n SysUIActionTag2[\"EXPORT_EXCEL\"] = \"ExportExcel\";\n SysUIActionTag2[\"SAVE_AND_START\"] = \"SaveAndStart\";\n SysUIActionTag2[\"VIEW_WF_STEP\"] = \"ViewWFStep\";\n SysUIActionTag2[\"NO\"] = \"No\";\n SysUIActionTag2[\"YES\"] = \"Yes\";\n SysUIActionTag2[\"CANCEL\"] = \"Cancel\";\n SysUIActionTag2[\"OK\"] = \"Ok\";\n SysUIActionTag2[\"SEARCH\"] = \"Search\";\n SysUIActionTag2[\"FINISH\"] = \"Finish\";\n SysUIActionTag2[\"NEXT_STEP\"] = \"NextStep\";\n SysUIActionTag2[\"PREV_STEP\"] = \"PrevStep\";\n SysUIActionTag2[\"ADD_SELECTION\"] = \"AddSelection\";\n SysUIActionTag2[\"REMOVE_SELECTION\"] = \"RemoveSelection\";\n SysUIActionTag2[\"REMOVE_ALL\"] = \"RemoveAll\";\n SysUIActionTag2[\"ADD_ALL\"] = \"AddAll\";\n SysUIActionTag2[\"LOGOUT\"] = \"Logout\";\n SysUIActionTag2[\"LOGIN\"] = \"Login\";\n SysUIActionTag2[\"CANCEL_CHANGES\"] = \"CancelChanges\";\n SysUIActionTag2[\"COPY\"] = \"Copy\";\n SysUIActionTag2[\"VIEW\"] = \"View\";\n SysUIActionTag2[\"TOGGLE_ROW_EDIT\"] = \"ToggleRowEdit\";\n SysUIActionTag2[\"LOAD_MORE\"] = \"LoadMore\";\n return SysUIActionTag2;\n})(SysUIActionTag || {});\n\n// src/constant/studio-event.ts\nvar StudioViewEvents = class {\n};\n/**\n * 视图加载\n */\nStudioViewEvents.onViewMounted = \"onMounted\";\n/**\n * 视图销毁\n */\nStudioViewEvents.onViewDestroyed = \"onDestroyed\";\nvar StudioPanelEvents = class {\n};\n/**\n * 点击事件\n */\nStudioPanelEvents.onClick = \"onClick\";\n/**\n * 值变更事件\n */\nStudioPanelEvents.onChange = \"onChange\";\n/**\n * 输入事件\n */\nStudioPanelEvents.onEnter = \"onEnter\";\n/**\n * 离开事件\n */\nStudioPanelEvents.onLeave = \"onLeave\";\nvar StudioControlEvents = class {\n};\n/**\n * 加载之前\n */\nStudioControlEvents.onBeforeLoad = \"onBeforeLoad\";\n/**\n * 加载成功\n */\nStudioControlEvents.onLoadSuccess = \"onLoadSuccess\";\n/**\n * 加载失败\n */\nStudioControlEvents.onLoadError = \"onLoadError\";\n/**\n * 加载草稿之前\n */\nStudioControlEvents.onBeforeLoadDraft = \"onBeforeLoadDraft\";\n/**\n * 加载草稿成功\n */\nStudioControlEvents.onLoadDraftSuccess = \"onLoadDraftSuccess\";\n/**\n * 加载草稿失败\n */\nStudioControlEvents.onLoadDraftError = \"onLoadDraftError\";\n/**\n * 保存之前\n */\nStudioControlEvents.onBeforeSave = \"onBeforeSave\";\n/**\n * 保存成功\n */\nStudioControlEvents.onSaveSuccess = \"onSaveSuccess\";\n/**\n * 保存失败\n */\nStudioControlEvents.onSaveError = \"onSaveError\";\n/**\n * 删除之前\n */\nStudioControlEvents.onBeforeRemove = \"onBeforeRemove\";\n/**\n * 删除成功\n */\nStudioControlEvents.onRemoveSuccess = \"onRemoveSuccess\";\n/**\n * 删除失败\n */\nStudioControlEvents.onRemoveError = \"onRemoveError\";\n/**\n * 原生默认工具栏的点击事件名称\n */\nStudioControlEvents.CLICK = \"onClick\";\n\n// src/utils/modal/modal.ts\nvar Modal = class {\n constructor(opts) {\n this.mode = \"EMBED\" /* EMBED */;\n this.viewUsage = 4;\n this.hooks = {\n shouldDismiss: new AsyncSeriesHook(),\n beforeDismiss: new AsyncSeriesHook()\n };\n /**\n * 外部注入的模态等组件实际的关闭操作\n * @author lxm\n * @date 2023-05-12 07:06:56\n */\n this._dismiss = (data) => {\n ibiz.log.error(\"\\u5916\\u90E8\\u5173\\u95ED\\u80FD\\u529B\\u672A\\u6CE8\\u518C\", data);\n };\n if (opts.mode) {\n this.mode = opts.mode;\n }\n if (opts.routeDepth) {\n this.routeDepth = opts.routeDepth;\n }\n if (opts.viewUsage) {\n this.viewUsage = opts.viewUsage;\n }\n if (opts.dismiss) {\n this._dismiss = opts.dismiss;\n }\n }\n /**\n * 注入模态等组件实际的关闭操作\n * @author lxm\n * @date 2023-07-18 03:05:22\n * @param {(data: IModalData) => void} dismiss\n */\n injectDismiss(dismiss) {\n this._dismiss = dismiss;\n }\n async dismiss(data = { ok: false, data: [] }) {\n const context = { allowClose: true };\n await this.hooks.shouldDismiss.call(context);\n if (!context.allowClose) {\n ibiz.log.debug(\"shouldDismiss\\u7ED3\\u679C\\u4E3Afalse,\\u5173\\u95ED\\u4E2D\\u65AD\\u3002\");\n return false;\n }\n await this.hooks.beforeDismiss.call(data);\n this._dismiss(data);\n this.destroy();\n return true;\n }\n /**\n * 执行完一次关闭后就会调销毁\n * @author lxm\n * @date 2023-07-18 03:32:26\n * @protected\n */\n destroy() {\n this.hooks.shouldDismiss.clear();\n this.hooks.beforeDismiss.clear();\n }\n};\n\n// src/utils/value-rule/value-rule.ts\nfunction filterValueRules(vrs, name) {\n return vrs.filter((vr) => {\n const { checkMode } = vr;\n const belongName = vr.deformItemName || vr.degridEditItemName;\n return checkMode !== 2 && belongName === name;\n });\n}\n\n// src/command/app/open-app-view/open-app-view.ts\nimport { ModelError as ModelError3, RuntimeError as RuntimeError4 } from \"@ibiz-template/core\";\nvar _OpenAppViewCommand = class _OpenAppViewCommand {\n constructor() {\n ibiz.commands.register(_OpenAppViewCommand.TAG, this.exec.bind(this));\n }\n /**\n * xhr模式打开\n *\n * @author chitanda\n * @date 2022-08-25 23:08:08\n * @param {string} appViewId\n * @param {IContext} [context]\n * @param {IParams} [params={}]\n * @param {IData} [_opts={}]\n * @return {*} {(Promise<IModalData | void>)}\n */\n async exec(appViewId, context, params = {}, opts = {}) {\n const appView = await ibiz.hub.config.view.get(appViewId);\n if (!appView) {\n throw new RuntimeError4(\"\\u5E94\\u7528\\u89C6\\u56FE[\".concat(appViewId, \"]\\u4E0D\\u5B58\\u5728\"));\n }\n if (context.srfkey && appView.appDataEntityId) {\n const deName = calcDeCodeNameById(appView.appDataEntityId);\n context[deName] = context.srfkey;\n context.srfkey = void 0;\n }\n if (appView.redirectView) {\n const fullViewModel = await ibiz.hub.getAppView(appViewId);\n return openRedirectView(\n fullViewModel,\n context,\n params,\n opts.data\n );\n }\n const { openMode = \"INDEXVIEWTAB\" } = appView;\n switch (openMode) {\n case \"INDEXVIEWTAB\":\n if (opts.noWaitRoute) {\n this.openIndexViewTab(appView, context, params);\n return;\n }\n return this.openIndexViewTab(appView, context, params);\n case \"POPUP\":\n throw new ModelError3(appView, \"\\u672A\\u652F\\u6301\\u7684\\u89C6\\u56FE\\u6253\\u5F00\\u6A21\\u5F0F: POPUP\");\n case \"POPUPMODAL\":\n return this.openModal(appView, context, params);\n case \"POPUPAPP\":\n throw new ModelError3(appView, \"\\u672A\\u652F\\u6301\\u7684\\u89C6\\u56FE\\u6253\\u5F00\\u6A21\\u5F0F: POPUPAPP\");\n case \"POPOVER\":\n return this.openPopover(appView, opts.event, context, params);\n case \"DRAWER_LEFT\":\n case \"DRAWER_RIGHT\":\n case \"DRAWER_TOP\":\n case \"DRAWER_BOTTOM\":\n return this.openDrawer(appView, context, params);\n case \"USER\":\n return this.openUserCustom(appView, context, params);\n default:\n return this.openIndexViewTab(appView, context, params);\n }\n }\n /**\n * 首页导航模式打开\n *\n * @author chitanda\n * @date 2022-07-25 20:07:43\n * @protected\n * @param {IViewConfig} appView\n * @param {IContext} [context]\n * @param {IParams} [params={}]\n */\n openIndexViewTab(appView, context, params = {}) {\n return ibiz.openView.root(appView, context, params);\n }\n /**\n * 模态窗口打开\n *\n * @author chitanda\n * @date 2022-07-25 20:07:55\n * @protected\n * @param {IViewConfig} appView\n * @param {IContext} [context]\n * @param {IParams} [params={}]\n * @return {*} {Promise<IModalData>}\n */\n async openModal(appView, context, params = {}) {\n return ibiz.openView.modal(appView, context, params);\n }\n /**\n * 气泡模式打开\n *\n * @author chitanda\n * @date 2022-07-25 20:07:17\n * @protected\n * @param {IViewConfig} appView\n * @param {IContext} [context]\n * @param {IParams} [params={}]\n * @return {*} {Promise<IModalData>}\n */\n async openPopover(appView, event, context, params = {}) {\n return ibiz.openView.popover(appView, event, context, params);\n }\n /**\n * 抽屉模式打开\n *\n * @author chitanda\n * @date 2022-07-25 20:07:08\n * @protected\n * @param {IViewConfig} appView\n * @param {IContext} [context]\n * @param {IParams} [params={}]\n * @return {*} {Promise<void>}\n */\n async openDrawer(appView, context, params = {}) {\n return ibiz.openView.drawer(appView, context, params);\n }\n /**\n * 用户自定义\n *\n * @author chitanda\n * @date 2022-07-25 20:07:41\n * @protected\n * @param {IViewConfig} appView\n * @param {IContext} [context]\n * @param {IParams} [params={}]\n * @return {*} {Promise<void>}\n */\n async openUserCustom(appView, context, params = {}) {\n return ibiz.openView.custom(appView, context, params);\n }\n};\n_OpenAppViewCommand.TAG = \"ibiz.app-view.open\";\nvar OpenAppViewCommand = _OpenAppViewCommand;\n\n// src/command/app/app-func/app-func.ts\nvar _AppFuncCommand = class _AppFuncCommand {\n constructor() {\n ibiz.commands.register(_AppFuncCommand.TAG, this.exec.bind(this));\n }\n /**\n * 执行应用功能\n *\n * @author chitanda\n * @date 2022-07-25 17:07:35\n * @param {IAppFunc} appFunc 应用功能模型\n * @param {IContext} [context] 执行上下文\n * @param {IParams} [params={}] 参数\n * @param {IData} [opts={}] 额外参数,与具体执行对象规划好的额外参数。如需要给飘窗使用的 event 事件对象.\n * @return {*} {Promise<void>}\n */\n async exec(appFuncId, context, params = {}, opts = {}) {\n const appFunc = ibiz.hub.getApp(context.srfappid).getAppFunc(appFuncId);\n if (!appFunc) {\n throw new RuntimeError5(\"\\u627E\\u4E0D\\u5230\\u53EB\".concat(appFuncId, \"\\u7684\\u5E94\\u7528\\u529F\\u80FD\"));\n }\n const { navigateContexts, navigateParams, appFuncType } = appFunc;\n const _context = context.clone();\n Object.assign(_context, convertNavData(navigateContexts, context, params));\n const _params = convertNavData(navigateParams, context, params);\n switch (appFuncType) {\n case \"APPVIEW\":\n return this.openAppView(appFunc, _context, _params, opts);\n case \"OPENHTMLPAGE\":\n return this.openHtmlPage(appFunc);\n case \"PDTAPPFUNC\":\n return this.openPdAppFunc(appFunc, _context, _params);\n case \"JAVASCRIPT\":\n return this.executeJavaScript(appFunc, _context, _params);\n case \"CUSTOM\":\n return this.custom(appFunc, _context, _params);\n default:\n throw new ModelError4(appFunc, \"\\u672A\\u652F\\u6301\\u7684\\u5E94\\u7528\\u529F\\u80FD\\u7C7B\\u578B: \".concat(appFuncType));\n }\n }\n /**\n * 打开应用视图\n *\n * @author chitanda\n * @date 2022-07-25 18:07:49\n * @protected\n * @param {IAppFunc} appFunc\n * @param {IContext} [context]\n * @param {IParams} [params]\n * @return {*} {Promise<void>}\n */\n async openAppView(appFunc, context, params, opts) {\n if (!appFunc.appViewId) {\n throw new RuntimeError5(\"\\u5E94\\u7528\\u89C6\\u56FE[\".concat(appFunc.appViewId, \"]\\u4E0D\\u5B58\\u5728\"));\n }\n return ibiz.commands.execute(\n OpenAppViewCommand.TAG,\n appFunc.appViewId,\n context,\n params,\n opts\n );\n }\n /**\n * 打开HTML页面\n *\n * @author chitanda\n * @date 2022-07-25 18:07:56\n * @protected\n * @param {IAppFunc} appFunc\n */\n openHtmlPage(appFunc) {\n const url = appFunc.htmlPageUrl;\n window.open(url, \"_blank\");\n }\n /**\n * 应用预置功能\n *\n * @author chitanda\n * @date 2022-07-25 18:07:22\n * @protected\n * @param {IAppFunc} appFunc\n * @param {IContext} [context]\n * @param {IParams} [params]\n */\n openPdAppFunc(appFunc, context, params) {\n ibiz.log.warn(\"openPdAppFunc\", appFunc, context, params);\n throw new RuntimeError5(\"\\u672A\\u5B9E\\u73B0\");\n }\n /**\n * 执行 JavaScript 脚本\n *\n * @author chitanda\n * @date 2022-07-25 18:07:09\n * @protected\n * @param {IAppFunc} appFunc\n * @param {IContext} [context]\n * @param {IParams} [params]\n */\n executeJavaScript(appFunc, context, params) {\n ibiz.log.warn(\"executeJavaScript\", appFunc, context, params);\n throw new RuntimeError5(\"\\u672A\\u5B9E\\u73B0\");\n }\n /**\n * 自定义应用功能\n *\n * @author chitanda\n * @date 2022-07-25 18:07:51\n * @protected\n * @param {IAppFunc} appFunc\n * @param {IContext} [context]\n * @param {IParams} [params]\n */\n custom(appFunc, context, params) {\n ibiz.log.warn(\"custom\", appFunc, context, params);\n throw new RuntimeError5(\"\\u672A\\u5B9E\\u73B0\");\n }\n};\n/**\n * 指令标识\n *\n * @author chitanda\n * @date 2022-07-25 17:07:20\n * @see 具体实现 {@link AppFuncCommand.exec}\n * @static\n */\n_AppFuncCommand.TAG = \"ibiz.app-func.exec\";\nvar AppFuncCommand = _AppFuncCommand;\n\n// src/command/index.ts\nfunction installCommand() {\n new AppFuncCommand();\n new OpenAppViewCommand();\n}\n\n// src/service/utils/app-counter/app-counter.ts\nimport { IBizContext, RuntimeModelError as RuntimeModelError4 } from \"@ibiz-template/core\";\nimport { notNilEmpty as notNilEmpty4, QXEvent } from \"qx-util\";\nimport { clone as clone2 } from \"ramda\";\nvar AppCounter = class {\n /**\n * Creates an instance of AppCounter.\n *\n * @author chitanda\n * @date 2022-10-26 20:10:55\n * @param {IAppCounter} model 应用计数器模型\n */\n constructor(model) {\n this.model = model;\n this.destroyed = false;\n this.context = IBizContext.create();\n this.params = {};\n this.evt = new QXEvent();\n /**\n * 计数器数据\n *\n * @author chitanda\n * @date 2022-10-26 19:10:08\n * @protected\n * @type {IData}\n */\n this.data = {};\n }\n /**\n * 计数器是否已经销毁\n *\n * @author chitanda\n * @date 2022-10-26 20:10:55\n * @protected\n * @type {boolean}\n */\n get isDestroyed() {\n return this.destroyed;\n }\n /**\n * 计数器初始化\n *\n * @author chitanda\n * @date 2022-10-26 19:10:24\n * @param {IParams} [context]\n * @param {IParams} [params]\n */\n async init(context, params) {\n this.setParams(context, params);\n this.appDataEntityId = this.model.appDataEntityId;\n const action = this.model.getAppDEActionId;\n if (!action) {\n throw new RuntimeModelError4(this.model, \"\\u672A\\u627E\\u5230\\u83B7\\u53D6\\u8BA1\\u6570\\u5668\\u884C\\u4E3A!\");\n }\n this.action = action;\n this.interval();\n await this.load();\n }\n /**\n * 设置上下文以及查询参数\n *\n * @author chitanda\n * @date 2022-10-26 19:10:58\n * @protected\n * @param {IParams} [context]\n * @param {IParams} [params]\n */\n setParams(context, params) {\n if (context) {\n this.context = clone2(context);\n }\n if (params) {\n this.params = clone2(params);\n }\n }\n /**\n * 计数器定时刷新\n *\n * @author chitanda\n * @date 2022-10-26 18:10:13\n * @protected\n */\n interval() {\n this.destroyInterval();\n this.intervalTimer = setInterval(() => {\n if (this.evt.getSize(\"change\") > 0) {\n this.load();\n }\n }, this.model.timer || 6e3);\n }\n /**\n * 销毁定时器自动刷新\n *\n * @author chitanda\n * @date 2022-10-26 18:10:31\n * @protected\n */\n destroyInterval() {\n if (this.intervalTimer) {\n clearInterval(this.intervalTimer);\n this.intervalTimer = null;\n }\n }\n /**\n * 加载计数器\n *\n * @author chitanda\n * @date 2022-10-26 19:10:38\n * @protected\n * @return {*} {Promise<IData>}\n */\n async load() {\n const app = ibiz.hub.getApp(this.context.srfappid);\n const res = await app.deService.exec(\n this.appDataEntityId,\n this.action,\n this.context,\n this.params\n );\n if (res.ok) {\n this.data = res.data;\n this.evt.emit(\"change\", this.data);\n }\n return this.data;\n }\n /**\n * 计数器刷新\n *\n * @author chitanda\n * @date 2022-10-26 19:10:46\n * @param {IParams} [context]\n * @param {IParams} [params]\n * @return {*} {Promise<IData>}\n */\n refresh(context, params) {\n this.setParams(context, params);\n return this.load();\n }\n /**\n * 计数器数据变更事件监听\n *\n * @author chitanda\n * @date 2022-10-26 20:10:13\n * @param {(data: IData) => void} fn\n * @param {boolean} [immediate=true] 当有计时器数据时,立即触发一次回调\n */\n onChange(fn, immediate = true) {\n this.evt.on(\"change\", fn);\n if (immediate && notNilEmpty4(this.data)) {\n fn(this.data);\n }\n }\n /**\n * 取消计数器数据变更监听\n *\n * @author chitanda\n * @date 2022-10-26 20:10:13\n * @param {(data: IData) => void} fn\n */\n offChange(fn) {\n this.evt.off(\"change\", fn);\n }\n /**\n * 根据计数器标识,获取计数器数值\n *\n * @author chitanda\n * @date 2022-10-26 20:10:08\n * @param {string} tag\n * @return {*} {number}\n */\n getCounter(tag) {\n return this.data[tag.toLowerCase()] || 0;\n }\n /**\n * 销毁计数器\n *\n * @author chitanda\n * @date 2022-10-26 18:10:31\n */\n destroy() {\n this.destroyed = true;\n this.context.destroy();\n this.destroyInterval();\n this.evt.reset();\n }\n};\n\n// src/service/utils/de-dq-cond/ps-de-dq-cond-engine.ts\nimport { isEmpty as isEmpty3 } from \"ramda\";\n\n// src/service/utils/de-dq-cond/ps-model-cond-engine-base.ts\nvar PSModelCondEngineBase = class {\n constructor() {\n /**\n * 根分组条件\n *\n * @private\n * @type {(PSModelGroupCondBase | null)}\n * @memberof PSModelCondEngineBase\n */\n this.psModelGroupCondBase = null;\n }\n /**\n * 解析条件\n *\n * @param {IData[]} obj\n * @memberof PSModelCondEngineBase\n */\n parse(obj) {\n if (obj instanceof Array) {\n const psModelGroupCondBase = this.createPSModelGroupCond();\n psModelGroupCondBase.parse(obj);\n this.psModelGroupCondBase = psModelGroupCondBase;\n }\n }\n /**\n * 测试项\n *\n * @protected\n * @param {string} strCondOp\n * @param {*} objValue\n * @param {*} objCondValue\n * @return {*} {boolean}\n * @memberof PSModelCondEngineBase\n */\n testSingleCond(strCondOp, objValue, objCondValue) {\n try {\n if (\"ISNULL\" /* CONDOP_ISNULL */ === strCondOp) {\n return objValue == null;\n }\n if (\"ISNOTNULL\" /* CONDOP_ISNOTNULL */ === strCondOp) {\n return objValue != null;\n }\n if (\"EQ\" /* CONDOP_EQ */ === strCondOp || \"ABSEQ\" /* CONDOP_ABSEQ */ === strCondOp || \"GT\" /* CONDOP_GT */ === strCondOp || \"GTANDEQ\" /* CONDOP_GTANDEQ */ === strCondOp || \"LT\" /* CONDOP_LT */ === strCondOp || \"LTANDEQ\" /* CONDOP_LTANDEQ */ === strCondOp || \"NOTEQ\" /* CONDOP_NOTEQ */ === strCondOp) {\n let nRet = -1;\n if (objValue == objCondValue) {\n nRet = 0;\n } else if (objValue > objCondValue) {\n nRet = 1;\n }\n if (\"EQ\" /* CONDOP_EQ */ === strCondOp || \"ABSEQ\" /* CONDOP_ABSEQ */ === strCondOp) {\n return nRet === 0;\n }\n if (\"GT\" /* CONDOP_GT */ === strCondOp) {\n return nRet > 0;\n }\n if (\"GTANDEQ\" /* CONDOP_GTANDEQ */ === strCondOp) {\n return nRet >= 0;\n }\n if (\"LT\" /* CONDOP_LT */ === strCondOp) {\n return nRet < 0;\n }\n if (\"LTANDEQ\" /* CONDOP_LTANDEQ */ === strCondOp) {\n return nRet <= 0;\n }\n if (\"NOTEQ\" /* CONDOP_NOTEQ */ === strCondOp) {\n return nRet !== 0;\n }\n }\n if (\"LIKE\" /* CONDOP_LIKE */ === strCondOp) {\n if (objValue != null && objCondValue != null) {\n return objValue.toString().toUpperCase().indexOf(objCondValue.toString().toUpperCase()) !== -1;\n }\n return false;\n }\n if (\"LEFTLIKE\" /* CONDOP_LEFTLIKE */ === strCondOp) {\n if (objValue != null && objCondValue != null) {\n return objValue.toString().toUpperCase().indexOf(objCondValue.toString().toUpperCase()) === 0;\n }\n return false;\n }\n } catch (err) {\n ibiz.log.error(err);\n }\n return false;\n }\n /**\n * 获取根分组条件\n *\n * @return {*} {PSModelGroupCondBase}\n * @memberof PSModelCondEngineBase\n */\n getPSModelGroupCondBase() {\n return this.psModelGroupCondBase;\n }\n};\n\n// src/service/utils/de-dq-cond/ps-model-group-cond-base.ts\nimport { RuntimeError as RuntimeError6 } from \"@ibiz-template/core\";\n\n// src/service/utils/de-dq-cond/ps-model-cond-base.ts\nvar PSModelCondBase = class {\n constructor() {\n this.strCondOp = null;\n }\n getCondOp() {\n return this.strCondOp;\n }\n setCondOp(strCondOp) {\n this.strCondOp = strCondOp;\n }\n};\n\n// src/service/utils/de-dq-cond/ps-model-single-cond-base.ts\nvar PSModelSingleCondBase = class extends PSModelCondBase {\n /**\n * 编译条件\n *\n * @author chitanda\n * @date 2022-08-17 23:08:35\n * @param {unknown[]} arr\n */\n parse(arr) {\n const nCount = arr.length;\n let bOpStart = true;\n let bParamStart = false;\n let bValueStart = false;\n for (let i = 0; i < nCount; i++) {\n if (bOpStart) {\n const strText = arr[i];\n this.setCondOp(strText);\n bOpStart = false;\n bParamStart = true;\n continue;\n }\n if (bParamStart) {\n const strText = arr[i];\n this.setParam(strText);\n bParamStart = false;\n bValueStart = true;\n continue;\n }\n if (bValueStart) {\n const obj = arr[i];\n if (obj instanceof Object && !(obj instanceof Array)) {\n const data = obj;\n if (data.type != null) {\n this.setValueType(data.type.toString());\n }\n if (data.value != null) {\n this.setValue(data.value.toString());\n }\n } else {\n this.setValue(obj);\n }\n break;\n }\n }\n }\n getValueType() {\n return this.strValueType;\n }\n setValueType(strValueType) {\n this.strValueType = strValueType;\n }\n getValue() {\n return this.strValue;\n }\n setValue(strValue) {\n this.strValue = strValue;\n }\n getParamType() {\n return this.strParamType;\n }\n setParamType(strParamType) {\n this.strParamType = strParamType;\n }\n getParam() {\n return this.strParam;\n }\n setParam(strParam) {\n this.strParam = strParam;\n }\n};\n\n// src/service/utils/de-dq-cond/ps-model-group-cond-base.ts\nvar PSModelGroupCondBase = class _PSModelGroupCondBase extends PSModelCondBase {\n constructor() {\n super(...arguments);\n /**\n * 子条件项\n *\n * @private\n * @type {PSModelCondBase[]}\n * @memberof PSModelGroupCondBase\n */\n this.childCondList = [];\n /**\n * 是否取反\n *\n * @private\n * @memberof PSModelGroupCondBase\n */\n this.bNotMode = false;\n }\n /**\n * 解析分组条件\n *\n * @param {unknown[]} arr\n * @memberof PSModelGroupCondBase\n */\n parse(arr) {\n const nCount = arr.length;\n let bNotStart = true;\n let bOpStart = true;\n let bCondStart = false;\n for (let i = 0; i < nCount; i++) {\n if (bNotStart && bOpStart) {\n const strText = arr[i];\n if (strText === \"!\") {\n this.setNotMode(true);\n bNotStart = false;\n continue;\n }\n }\n if (bOpStart) {\n const strText = arr[i];\n this.setCondOp(strText);\n bOpStart = false;\n bNotStart = false;\n bCondStart = true;\n continue;\n }\n if (bCondStart) {\n const list = arr[i];\n if (list instanceof Array) {\n list.forEach((item) => {\n if (item.length > 0) {\n const strText = item[0].toString();\n if (strText === \"!\" || \"OR\" /* CONDOP_OR */ === strText || \"AND\" /* CONDOP_AND */ === strText) {\n const child = new _PSModelGroupCondBase();\n child.parse(item);\n this.childCondList.push(child);\n } else {\n const child = new PSModelSingleCondBase();\n child.parse(item);\n this.childCondList.push(child);\n }\n }\n });\n } else {\n throw new RuntimeError6(\"\\u503C\\u5FC5\\u987B\\u4E3A\\u6570\\u7EC4\");\n }\n }\n }\n }\n setNotMode(bNotMode) {\n this.bNotMode = bNotMode;\n }\n isNotMode() {\n return this.bNotMode;\n }\n getChildPSModelCondBases() {\n return this.childCondList;\n }\n};\n\n// src/service/utils/de-dq-cond/ps-model-group-cond.ts\nvar PSDEDQGroupCond = class extends PSModelGroupCondBase {\n};\n\n// src/service/utils/de-dq-cond/ps-model-single-cond.ts\nvar PSDEDQSingleCond = class extends PSModelSingleCondBase {\n};\n\n// src/service/utils/de-dq-cond/ps-de-dq-cond-engine.ts\nvar _PSDEDQCondEngine = class _PSDEDQCondEngine extends PSModelCondEngineBase {\n /**\n * 测试\n *\n * @param {IData} data 检测的数据\n * @param {SearchFilter} filter 过滤条件\n * @return {*} {boolean}\n * @memberof PSDEDQCondEngine\n */\n test(data, filter) {\n return this.testCond(this.getPSModelGroupCondBase(), data, filter);\n }\n /**\n * 查询条件判断\n *\n * @author chitanda\n * @date 2022-08-17 23:08:11\n * @protected\n * @param {PSModelCondBase} cond\n * @param {IData} data\n * @param {SearchFilter} filter\n * @return {*} {boolean}\n */\n testCond(cond, data, filter) {\n if (cond instanceof PSModelGroupCondBase) {\n const list = cond.getChildPSModelCondBases();\n if (list == null || isEmpty3(list)) {\n return !cond.isNotMode();\n }\n const bAnd = \"AND\" /* CONDOP_AND */ === cond.getCondOp();\n let bRet = bAnd;\n for (let i = 0; i < list.length; i++) {\n const childCond = list[i];\n if (this.testCond(childCond, data, filter)) {\n if (!bAnd) {\n bRet = true;\n break;\n }\n } else if (bAnd) {\n bRet = false;\n break;\n }\n }\n if (cond.isNotMode()) {\n return !bRet;\n }\n return bRet;\n }\n if (cond instanceof PSModelSingleCondBase) {\n if (isEmpty3(cond.getParam())) {\n ibiz.log.warn(\"\\u6CA1\\u6709\\u6307\\u5B9A\\u5C5E\\u6027\\u540D\\u79F0\", cond);\n }\n const objValue = data[cond.getParam().toLowerCase()];\n let objCondValue = null;\n const valType = cond.getValueType();\n const val = cond.getValue();\n if (valType != null && !isEmpty3(valType)) {\n if (isEmpty3(val)) {\n ibiz.log.warn(\"\\u6CA1\\u6709\\u6307\\u5B9A\\u4E0A\\u4E0B\\u6587\\u53C2\\u6570\\u540D\\u79F0\");\n }\n if (_PSDEDQCondEngine.PARAMTYPE_WEBCONTEXT === valType) {\n objCondValue = filter.data[val.toLowerCase()];\n } else if (_PSDEDQCondEngine.PARAMTYPE_DATACONTEXT === valType) {\n objCondValue = filter.getValue(val.toLowerCase());\n }\n } else {\n objCondValue = cond.getValue();\n }\n return this.testSingleCond(cond.getCondOp(), objValue, objCondValue);\n }\n ibiz.log.warn(\"\\u65E0\\u6CD5\\u8BC6\\u522B\\u7684\\u6761\\u4EF6\\u5BF9\\u8C61\", cond);\n return false;\n }\n createPSModelSingleCond() {\n return new PSDEDQSingleCond();\n }\n createPSModelGroupCond() {\n return new PSDEDQGroupCond();\n }\n};\n/**\n * 数据上下文\n *\n * @static\n * @memberof PSDEDQCondEngine\n */\n_PSDEDQCondEngine.PARAMTYPE_DATACONTEXT = \"DATACONTEXT\";\n/**\n * 网页请求上下文\n *\n * @static\n * @memberof PSDEDQCondEngine\n */\n_PSDEDQCondEngine.PARAMTYPE_WEBCONTEXT = \"WEBCONTEXT\";\nvar PSDEDQCondEngine = _PSDEDQCondEngine;\n\n// src/service/utils/de-dq-cond-util/de-dq-cond-util.ts\nimport { ModelError as ModelError5 } from \"@ibiz-template/core\";\nvar DEDQCondUtil = class {\n /**\n * 根据数据查询获取查询\n *\n * @author chitanda\n * @date 2022-08-25 17:08:04\n * @static\n * @param {IAppDEDataSet} dataSet\n * @return {*} {PSDEDQCondEngine}\n */\n static getCond(dataSet) {\n if (this.map.has(dataSet)) {\n return this.map.get(dataSet);\n }\n const groups = dataSet.dedqgroupConditions;\n if (groups) {\n const cond = new PSDEDQCondEngine();\n cond.parse([\"OR\", this.calcCond(groups)]);\n this.map.set(dataSet, cond);\n return cond;\n }\n return null;\n }\n /**\n * 计算查询条件\n *\n * @author chitanda\n * @date 2022-08-25 17:08:39\n * @protected\n * @static\n * @param {IDEDQCondition[]} items\n * @return {*} {unknown[]}\n */\n static calcCond(items) {\n const arr = [];\n items.forEach((item) => {\n const condArr = [];\n if (item.condType === \"GROUP\") {\n const cond = item;\n if (cond.notMode) {\n condArr.push(\"!\");\n }\n condArr.push(item.condOp);\n const children = cond.dedqconditions;\n if (children) {\n const child = this.calcCond(children);\n condArr.push(child);\n }\n } else if (item.condType === \"SINGLE\") {\n const cond = item;\n condArr.push(cond.fieldName);\n if (cond.condValue) {\n } else {\n condArr.push(\"\");\n }\n } else {\n throw new ModelError5(item, \"\\u6682\\u672A\\u652F\\u6301\\u7684\\u67E5\\u8BE2\\u6761\\u4EF6\\u7C7B\\u578B: \".concat(item.condType));\n }\n arr.push(condArr);\n });\n return arr;\n }\n};\n/**\n * 查询条件缓存\n *\n * @author chitanda\n * @date 2022-08-25 17:08:57\n * @protected\n * @static\n * @type {WeakMap<IAppDEDataSet, PSDEDQCondEngine>}\n */\nDEDQCondUtil.map = /* @__PURE__ */ new WeakMap();\n\n// src/service/utils/dynamic-code-list/dynamic-code-list.ts\nimport { ModelError as ModelError6, RuntimeModelError as RuntimeModelError5 } from \"@ibiz-template/core\";\nimport { isNil as isNil3 } from \"ramda\";\nvar DynamicCodeListCache = class {\n constructor(codeList) {\n /**\n * 缓存的map,key是context和params合成的字符串\n *\n * @author lxm\n * @date 2022-08-26 14:08:19\n * @protected\n */\n this.cache = /* @__PURE__ */ new Map();\n /**\n * 是否是预定义类型\n *\n * @author lxm\n * @date 2022-10-20 10:10:48\n * @protected\n * @type {boolean}\n */\n this.isPredefined = false;\n this.codeList = codeList;\n }\n /**\n * 初始化\n *\n * @author lxm\n * @date 2022-08-26 14:08:28\n * @returns {*} {Promise<void>}\n */\n async init() {\n const fn = async () => {\n const { predefinedType } = this.codeList;\n if (predefinedType) {\n this.isPredefined = true;\n if (![\"OPERATOR\", \"RUNTIME\"].includes(predefinedType)) {\n throw new ModelError6(\n this.codeList,\n \"\\u9884\\u5B9A\\u4E49\\u7C7B\\u578B\".concat(predefinedType, \"\\u6682\\u4E0D\\u652F\\u6301\")\n );\n }\n return;\n }\n this.initPromise = void 0;\n };\n this.initPromise = fn();\n return this.initPromise;\n }\n /**\n * 把数据转换成代码项\n *\n * @author lxm\n * @date 2022-08-26 15:08:24\n * @param {IData} data\n * @returns {*}\n */\n convertData(data) {\n const result = {};\n const { valueAppDEFieldId, textAppDEFieldId } = this.codeList;\n const value = valueAppDEFieldId ? data[valueAppDEFieldId] : data.srfkey;\n result.id = value;\n result.value = value;\n result.text = textAppDEFieldId ? data[textAppDEFieldId] : data.srfmajortext;\n return Object.freeze(result);\n }\n /**\n * 加载服务获取数据,返回代码项\n *\n * @author lxm\n * @date 2022-08-26 14:08:08\n * @protected\n * @param {IParams} [context={}]\n * @param {IParams} [params={}]\n * @returns {*} {Promise<CodeListItem[]>}\n */\n async load(context = {}, params = {}) {\n const app = ibiz.hub.getApp(context.srfappid);\n if (this.isPredefined) {\n if (!params.size) {\n params.size = 1e4;\n }\n const res2 = await app.net.get(\n \"/dictionaries/codelist/\".concat(this.codeList.codeName),\n params\n );\n return Object.freeze(res2.data.items);\n }\n const { appDataEntityId, appDEDataSetId } = this.codeList;\n if (!appDataEntityId) {\n throw new RuntimeModelError5(this.codeList, \"\\u672A\\u914D\\u7F6E\\u5E94\\u7528\\u5B9E\\u4F53\");\n }\n if (!appDEDataSetId) {\n throw new RuntimeModelError5(this.codeList, \"\\u672A\\u914D\\u7F6E\\u6570\\u636E\\u96C6\");\n }\n const res = await app.deService.exec(\n appDataEntityId,\n appDEDataSetId,\n context,\n {},\n params\n );\n let resultItems = [];\n if (res.data.length) {\n resultItems = res.data.map((item) => {\n return this.convertData(item);\n });\n }\n return resultItems;\n }\n /**\n * 获取动态的代码项\n *\n * @author lxm\n * @date 2022-08-26 14:08:44\n * @param {IParams} [context={}]\n * @param {IParams} [params={}]\n * @returns {*} {Promise<IData[]>}\n */\n async get(context = {}, params = {}) {\n if (this.initPromise) {\n await this.initPromise;\n }\n if (!this.codeList.enableCache) {\n return this.load(context, params);\n }\n const key = JSON.stringify(context) + JSON.stringify(params);\n if (this.cache.has(key)) {\n const cacheData2 = this.cache.get(key);\n if (cacheData2.expirationTime > (/* @__PURE__ */ new Date()).getTime()) {\n return cacheData2.promise ? cacheData2.promise : cacheData2.items;\n }\n this.cache.delete(key);\n }\n const promise = this.load(context, params);\n const { cacheTimeout } = this.codeList;\n const waitTime = cacheTimeout === -1 || isNil3(cacheTimeout) ? ibiz.config.codeList.timeout : this.codeList.cacheTimeout;\n const cacheData = {\n expirationTime: (/* @__PURE__ */ new Date()).getTime() + waitTime,\n promise\n };\n this.cache.set(key, cacheData);\n const result = await promise;\n cacheData.items = result;\n delete cacheData.promise;\n return result;\n }\n};\n\n// src/service/utils/de-cache/de-cache.ts\nimport { where, equals, clone as clone3, isNil as isNil5, isEmpty as isEmpty5 } from \"ramda\";\nimport { createUUID } from \"qx-util\";\n\n// src/service/utils/service-exist-util/service-exist-util.ts\nimport { RuntimeError as RuntimeError7 } from \"@ibiz-template/core\";\nimport { isEmpty as isEmpty4, isNil as isNil4 } from \"ramda\";\nfunction isExistSrfKey(funcName, entity) {\n if (entity != null) {\n const { srfkey } = entity;\n if (!isNil4(srfkey) && !isEmpty4(srfkey)) {\n return true;\n }\n }\n throw new RuntimeError7(\"\\u6267\\u884C\\u300C\".concat(funcName, \"\\u300D\\u4E0D\\u5B58\\u5728\\u300Csrfkey\\u300D\\u65E0\\u6CD5\\u5904\\u7406\"));\n}\nfunction isExistSessionId(funcName, context) {\n const { srfsessionid } = context;\n if (!isNil4(srfsessionid) && !isEmpty4(srfsessionid)) {\n return true;\n }\n throw new RuntimeError7(\"\\u6267\\u884C\\u300C\".concat(funcName, \"\\u300D\\u4E0D\\u5B58\\u5728\\u300Csrfsessionid\\u300D\\u65E0\\u6CD5\\u5904\\u7406\"));\n}\n\n// src/service/utils/de-cache/de-cache.ts\nvar DECache = class {\n constructor() {\n /**\n * 数据缓存\n *\n * @author chitanda\n * @date 2022-08-17 23:08:08\n * @type {Map<string, Map<string, IDataEntity>>}\n */\n this.cacheMap = /* @__PURE__ */ new Map();\n }\n /**\n * 强制设置数据,忽略其他逻辑\n *\n * @author chitanda\n * @date 2022-05-10 17:05:45\n * @param {IParams} context\n * @param {IDataEntity} entity\n */\n forceAdd(context, entity) {\n const map = this.getCacheByTag(context);\n const data = map.get(entity.srfkey);\n if (data) {\n data.assign(entity);\n ibiz.log.warn(\"forceAdd\", entity.srfkey, entity);\n }\n }\n /**\n * 强制更新数据,非合并,忽略其他逻辑\n *\n * @author chitanda\n * @date 2022-05-10 17:05:27\n * @param {IParams} context\n * @param {IDataEntity} entity\n */\n forceUpdate(context, entity) {\n const map = this.getCacheByTag(context);\n map.set(entity.srfkey, clone3(entity));\n ibiz.log.warn(\"forceUpdate\", entity.srfkey, entity);\n }\n /**\n * 强制删除数据,忽略其他逻辑\n *\n * @author chitanda\n * @date 2022-05-10 17:05:08\n * @param {IParams} context\n * @param {string} srfKey\n */\n forceDelete(context, srfKey) {\n const map = this.getCacheByTag(context);\n map.delete(srfKey);\n ibiz.log.warn(\"forceDelete\", srfKey);\n }\n /**\n * 新增数据\n *\n * @param {*} context\n * @param {IDataEntity} entity\n * @return {*} {boolean}\n * @memberof EntityCache\n */\n add(context, entity) {\n try {\n isExistSessionId(\"add\", context);\n if (isNil5(entity.srfkey) || isEmpty5(entity.srfkey)) {\n entity.srfkey = createUUID();\n }\n entity.srftempdate = (/* @__PURE__ */ new Date()).getTime();\n const map = this.getCacheByTag(context);\n map.set(entity.srfkey, clone3(entity));\n ibiz.log.warn(\"add\", entity.srfkey, entity);\n return entity;\n } catch (err) {\n ibiz.log.error(err);\n return null;\n }\n }\n /**\n * 查找数据\n *\n * @param {*} context\n * @param {string} srfKey\n * @return {*} {IDataEntity}\n * @memberof EntityCache\n */\n get(context, srfKey) {\n try {\n isExistSessionId(\"get\", context);\n const map = this.getCacheByTag(context);\n const data = map.get(srfKey);\n ibiz.log.warn(\"get\", srfKey, data);\n return clone3(data);\n } catch (err) {\n ibiz.log.error(err);\n return null;\n }\n }\n /**\n * 更新数据\n *\n * @param {IParams} context\n * @param {IDataEntity} entity\n * @return {*} {IDataEntity}\n * @memberof EntityCache\n */\n update(context, entity) {\n try {\n isExistSessionId(\"update\", context);\n isExistSrfKey(\"update\", entity);\n entity.srftempdate = (/* @__PURE__ */ new Date()).getTime();\n const map = this.getCacheByTag(context);\n const data = map.get(entity.srfkey);\n if (data) {\n data.assign(entity);\n map.set(entity.srfkey, data);\n ibiz.log.warn(\"update\", entity.srfkey, entity);\n return clone3(data);\n }\n throw new Error(\"\\u6570\\u636E\\u4E0D\\u5B58\\u5728\\uFF0C\\u65E0\\u6CD5\\u66F4\\u65B0!\");\n } catch (err) {\n ibiz.log.error(err);\n return null;\n }\n }\n /**\n * 删除数据\n *\n * @param {IParams} context\n * @param {string} srfKey\n * @return {*} {(IDataEntity | null)}\n * @memberof EntityCache\n */\n delete(context, srfKey) {\n try {\n isExistSessionId(\"delete\", context);\n const map = this.getCacheByTag(context);\n const key = srfKey;\n if (map.has(key)) {\n const data = map.get(key);\n data.srftempdate = (/* @__PURE__ */ new Date()).getTime();\n map.delete(key);\n ibiz.log.warn(\"delete\", key);\n return data;\n }\n return null;\n } catch (err) {\n ibiz.log.error(err);\n return null;\n }\n }\n /**\n * 批量创建临时数据\n *\n * @author chitanda\n * @date 2022-03-23 11:03:52\n * @param {IParams} context\n * @param {IDataEntity[]} entities\n * @return {*} {IDataEntity[]}\n */\n createBatch(context, entities) {\n try {\n isExistSessionId(\"add\", context);\n const map = this.getCacheByTag(context);\n for (let i = 0; i < entities.length; i++) {\n const entity = entities[i];\n if (isNil5(entity.srfkey) || isEmpty5(entity.srfkey)) {\n entity.srfkey = createUUID();\n }\n entity.srftempdate = (/* @__PURE__ */ new Date()).getTime();\n const data = clone3(entity);\n map.set(entity.srfkey, data);\n entities[i] = data;\n ibiz.log.warn(\"add\", entity.srfkey, entity);\n }\n return entities;\n } catch (err) {\n ibiz.log.error(err);\n }\n return [];\n }\n /**\n * 批量更新数据\n *\n * @author chitanda\n * @date 2022-03-23 10:03:17\n * @param {IParams} context\n * @param {IDataEntity[]} entities\n * @return {*} {IDataEntity[]}\n */\n updateBatch(context, entities) {\n try {\n isExistSessionId(\"update\", context);\n const map = this.getCacheByTag(context);\n for (let i = 0; i < entities.length; i++) {\n const entity = entities[i];\n isExistSrfKey(\"update\", entity);\n entity.srftempdate = (/* @__PURE__ */ new Date()).getTime();\n const data = map.get(entity.srfkey);\n if (data) {\n data.assign(entity);\n map.set(entity.srfkey, data);\n ibiz.log.warn(\"update\", entity.srfkey, entity);\n entities[i] = clone3(data);\n } else {\n throw new Error(\n \"\\u6570\\u636E[\".concat(entity.srfdename, \"-\").concat(entity.srfmajortext, \"(\").concat(entity.srfkey, \")]\\u4E0D\\u5B58\\u5728\\uFF0C\\u65E0\\u6CD5\\u66F4\\u65B0!\")\n );\n }\n }\n return entities;\n } catch (err) {\n ibiz.log.error(err);\n return null;\n }\n }\n /**\n * 批量删除数据\n *\n * @author chitanda\n * @date 2022-03-23 10:03:40\n * @param {IParams} context 上下文\n * @param {string[]} srfKeys 需要删除的数据主键\n * @return {*} {string[]} 未能删除的数据主键\n */\n deleteBatch(context, srfKeys) {\n try {\n isExistSessionId(\"delete\", context);\n } catch (err) {\n ibiz.log.error(err);\n return srfKeys;\n }\n const map = this.getCacheByTag(context);\n const notRemoveKeys = [];\n for (let i = 0; i < srfKeys.length; i++) {\n const key = srfKeys[i];\n if (!map.has(key)) {\n notRemoveKeys.push(key);\n }\n }\n if (notRemoveKeys.length > 0) {\n throw new Error(\n \"\\u672A\\u627E\\u5230\\u4EE5\\u4E0B\\u6570\\u636E\\u300C\".concat(notRemoveKeys.join(\"\\u3001\"), \"\\u300D\\uFF0C\\u65E0\\u6CD5\\u5220\\u9664!\")\n );\n }\n for (let i = 0; i < srfKeys.length; i++) {\n const key = srfKeys[i];\n map.delete(key);\n ibiz.log.warn(\"delete\", key);\n }\n return [];\n }\n /**\n * 检查数据是否已经存在\n *\n * @author chitanda\n * @date 2022-08-17 23:08:06\n * @param {IParams} context\n * @param {string} srfkey\n * @return {*} {boolean}\n */\n checkData(context, srfkey) {\n const list = this.getList(context);\n const i = list.findIndex((item) => item.srfkey === srfkey);\n return i !== -1;\n }\n /**\n * 根据条件查找数据,未设置条件默认返回全部\n *\n * @author chitanda\n * @date 2022-08-17 23:08:56\n * @param {IParams} context\n * @return {*} {IDataEntity[]}\n */\n getList(context) {\n try {\n isExistSessionId(\"getList\", context);\n const map = this.getCacheByTag(context);\n if (!map) {\n return [];\n }\n const values = map.values();\n return Array.from(values);\n } catch (err) {\n ibiz.log.error(err);\n return [];\n }\n }\n /**\n * 根据条件生成查询\n *\n * @author chitanda\n * @date 2022-08-17 23:08:33\n * @param {IParams} [params={}]\n * @return {*} {<U>(testObj: U) => boolean}\n */\n generatePred(params = {}) {\n const data = {};\n if (params.srfkey) {\n data.srfkey = equals(params.srfkey);\n }\n delete params.srfkey;\n for (const key in params) {\n if (Object.prototype.hasOwnProperty.call(params, key)) {\n const val = params[key];\n data[key] = equals(val);\n }\n }\n return where(data);\n }\n /**\n * 清除缓存\n *\n * @author chitanda\n * @date 2022-08-17 23:08:54\n * @param {IParams} context\n */\n clear(context) {\n const tag = context.srfsessionid;\n if (this.cacheMap.size > 0) {\n this.cacheMap.delete(tag);\n }\n }\n /**\n * 根据标识获取map组\n *\n * @author chitanda\n * @date 2022-08-17 23:08:47\n * @private\n * @param {IParams} context\n * @return {*} {Map<string, IDataEntity>}\n */\n getCacheByTag(context) {\n const tag = context.srfsessionid;\n if (!this.cacheMap.has(tag)) {\n this.cacheMap.set(tag, /* @__PURE__ */ new Map());\n }\n return this.cacheMap.get(tag);\n }\n};\n\n// src/service/utils/res-path/res-path.ts\nvar reg = new RegExp(\"(?<=\\\\$\\\\{)(.*?)(?=\\\\})\", \"g\");\nfunction getMatchResPath(context, entity) {\n const pathItems = entity.requestPaths || [];\n const items = pathItems.map((str) => {\n return {\n path: str,\n keys: str.match(reg) || []\n };\n });\n const filterItems = items.filter((item) => {\n const { keys } = item;\n if (keys.length === 0) {\n return true;\n }\n return keys.every((key, index) => {\n if (index === keys.length - 1) {\n return true;\n }\n return context[key] != null;\n });\n }).sort((a, b) => b.keys.length - a.keys.length);\n if (filterItems.length > 0) {\n return filterItems[0];\n }\n return void 0;\n}\nfunction calcResPath(context, entity) {\n const item = getMatchResPath(context, entity);\n if (item) {\n if (item.keys.length > 0) {\n let { path: path2 } = item;\n item.keys.forEach((key, index) => {\n if (index === item.keys.length - 1) {\n path2 = path2.replace(new RegExp(\"/[^/]+/\\\\$\\\\{\".concat(key, \"\\\\}\")), \"\");\n } else {\n path2 = path2.replace(\"${\".concat(key, \"}\"), context[key]);\n }\n });\n return path2;\n }\n return item.path;\n }\n return \"\";\n}\n\n// src/service/utils/route-context/route-context.ts\nvar excludeViewTypes = [\n \"DEGRIDVIEW\" /* DE_GRID_VIEW */,\n \"DEGRIDEXPVIEW\" /* DE_GRID_EXP_VIEW */,\n \"DELISTVIEW\" /* DE_LIST_VIEW */,\n \"DELISTEXPVIEW\" /* DE_LIST_EXP_VIEW */,\n \"DEDATAVIEW\" /* DE_DATA_VIEW */,\n \"DEDATAVIEWEXPVIEW\" /* DE_DATAVIEW_EXP_VIEW */,\n \"DECALENDARVIEW\" /* DE_CALENDAR_VIEW */,\n \"DECALENDAREXPVIEW\" /* DE_CALENDAR_EXP_VIEW */,\n \"DECHARTVIEW\" /* DE_CHART_VIEW */,\n \"DECHARTEXPVIEW\" /* DE_CHART_EXP_VIEW */,\n \"DEKANBANVIEW\" /* DE_KANBAN_VIEW */\n];\nfunction calcRouteContext(_appView) {\n let paths = [];\n paths = paths.sort((a, b) => b.length - a.length);\n const [pathArr] = paths;\n if (pathArr) {\n const obj = {};\n pathArr.forEach(([key, val]) => {\n obj[key] = val;\n });\n return obj;\n }\n return {};\n}\n\n// src/service/utils/search-filter/search-filter.ts\nimport { isEmpty as isEmpty6, isNil as isNil6 } from \"ramda\";\nvar SearchFilter = class {\n /**\n * Creates an instance of SearchFilter.\n *\n * @param {*} context\n * @param {*} [data]\n * @memberof SearchFilter\n */\n constructor(context, data) {\n /**\n * 分页\n *\n * @type {number}\n * @memberof SearchFilter\n */\n this.page = 0;\n /**\n * 分页数据量\n *\n * @type {number}\n * @memberof SearchFilter\n */\n this.size = 1e3;\n /**\n * 数据\n *\n * @author chitanda\n * @date 2022-08-17 22:08:00\n * @type {IData}\n */\n this.data = {};\n /**\n * 排序属性\n *\n * @type {string}\n * @memberof SearchFilter\n */\n this.sortField = \"srfordervalue\";\n /**\n * 排序模式\n *\n * @type {('ASC' | 'DESC')}\n * @memberof SearchFilter\n */\n this.sortMode = \"ASC\";\n this.context = context;\n if (data) {\n if (!isNil6(data.page) && !isEmpty6(data.page)) {\n this.page = data.page;\n }\n if (!isNil6(data.size) && !isEmpty6(data.size)) {\n this.size = data.size;\n }\n if (!isNil6(data.query) && !isEmpty6(data.query)) {\n this.query = data.query;\n }\n if (!isNil6(data.sort) && !isEmpty6(data.sort)) {\n const arr = data.sort.split(\",\");\n if (arr.length >= 1) {\n [this.sortField] = arr;\n }\n if (arr.length >= 2) {\n this.sortMode = arr[1].toUpperCase();\n }\n }\n if (!isNil6(data.srfparentkey) && !isEmpty6(data.srfparentkey)) {\n this.srfparentkey = data.srfparentkey;\n }\n if (!isNil6(data.srfparentdename) && !isEmpty6(data.srfparentdename)) {\n this.srfparentdename = data.srfparentdename;\n }\n this.data = { ...data };\n delete this.data.page;\n delete this.data.size;\n delete this.data.query;\n delete this.data.sort;\n delete this.data.srfparentkey;\n delete this.data.srfparentdename;\n }\n }\n /**\n * 获取条件值\n *\n * @author chitanda\n * @date 2022-08-17 22:08:11\n * @param {string} key\n * @return {*} {unknown}\n */\n getValue(key) {\n if (this.data[key]) {\n return this.data[key];\n }\n return this.context[key];\n }\n};\n\n// src/service/service/code-list/code-list.service.ts\nimport { RuntimeError as RuntimeError8 } from \"@ibiz-template/core\";\nvar CodeListService = class {\n constructor(appModel) {\n this.appModel = appModel;\n /**\n * 所有代码表缓存\n *\n * @author lxm\n * @date 2022-08-25 20:08:16\n */\n this.allCodeLists = /* @__PURE__ */ new Map();\n /**\n * 代码表项数据缓存\n *\n * @author lxm\n * @date 2022-08-25 21:08:12\n * @protected\n * @type {Map<string, CodeListItem[]>}\n */\n this.cache = /* @__PURE__ */ new Map();\n }\n /**\n * 获取静态代码表\n *\n * @author chitanda\n * @date 2022-08-25 15:08:11\n * @param {string} _tag\n * @return {*} {CodeListItem[]}\n */\n getStatic(codeList) {\n const codeName = codeList.codeName;\n if (this.cache.has(codeName)) {\n return this.cache.get(codeName);\n }\n const items = codeList.codeItems;\n let result = [];\n if (items == null ? void 0 : items.length) {\n result = this.formatStaticItems(items, codeList.codeItemValueNumber);\n }\n this.cache.set(codeName, Object.freeze(result));\n return result;\n }\n /**\n * 设置代码表模型\n *\n * @author lxm\n * @date 2023-5-23 19:38:51\n * @protected\n * @param {IAppCodeList} codeList\n * @returns {*}\n */\n setCodeList(codeList) {\n const { id, codeName } = codeList;\n this.allCodeLists.set(id, codeList);\n this.allCodeLists.set(codeName, codeList);\n }\n /**\n * 获取代码表模型\n *\n * @author lxm\n * @date 2023-5-23 19:38:51\n * @protected\n * @param {string} tag\n * @returns {*}\n */\n getCodeList(tag) {\n return this.allCodeLists.get(tag);\n }\n /**\n * 格式化代码表\n *\n * @author lxm\n * @date 2022-08-25 21:08:03\n * @protected\n * @param {ICodeItem[]} codeItems\n * @param {boolean} isValueNumber\n * @returns {*}\n */\n formatStaticItems(codeItems, isValueNumber) {\n return codeItems.map((codeItem) => {\n var _a;\n const _codeItem = {\n text: codeItem.text,\n value: isValueNumber ? Number(codeItem.value) : codeItem.value,\n color: codeItem.color,\n id: codeItem.codeName\n };\n if ((_a = codeItem.codeItems) == null ? void 0 : _a.length) {\n _codeItem.children = this.formatStaticItems(\n codeItem.codeItems,\n isValueNumber\n );\n }\n return Object.freeze(_codeItem);\n });\n }\n /**\n * 获取动态代码表\n *\n * @author lxm\n * @date 2022-08-25 21:08:06\n * @protected\n * @param {IAppCodeList} codeList\n * @returns {*} {IData[]}\n */\n async getDynamicCodeList(codeList, context = {}, params = {}) {\n let dynamicCache;\n const codeName = codeList.codeName;\n if (this.cache.has(codeName)) {\n dynamicCache = this.cache.get(codeName);\n } else {\n dynamicCache = new DynamicCodeListCache(codeList);\n this.cache.set(codeName, dynamicCache);\n await dynamicCache.init();\n }\n return dynamicCache.get(context, params);\n }\n /**\n * 获取代码表\n *\n * @author chitanda\n * @date 2022-08-25 15:08:45\n * @param {string} tag\n * @param {IParams} [context]\n * @param {IParams} [params]\n * @return {*} {Promise<CodeListItem[]>}\n */\n async get(tag, context, params) {\n const codeList = this.allCodeLists.get(tag);\n if (!codeList) {\n throw new RuntimeError8(\"\\u627E\\u4E0D\\u5230\".concat(tag, \"\\u4EE3\\u7801\\u8868\"));\n }\n if (codeList.codeListType === \"STATIC\") {\n return this.getStatic(codeList);\n }\n if (codeList.codeListType === \"DYNAMIC\") {\n return this.getDynamicCodeList(codeList, context, params);\n }\n return [];\n }\n};\n\n// src/service/service/counter/counter.service.ts\nimport { RuntimeModelError as RuntimeModelError6 } from \"@ibiz-template/core\";\nvar CounterService = class {\n /**\n * 获取计数器\n *\n * @author chitanda\n * @date 2022-10-26 19:10:18\n * @param {IAppCounter} model\n * @return {*} {Promise<AppCounter>}\n */\n static async getCounter(model, context, params) {\n const id = model.id;\n if (this.counterMap.has(id)) {\n const counter2 = this.counterMap.get(id);\n if (counter2.isDestroyed === false) {\n return counter2;\n }\n this.counterMap.delete(id);\n }\n const counter = new AppCounter(model);\n await counter.init(context, params);\n this.counterMap.set(id, counter);\n return counter;\n }\n /**\n * 根据计数器引用获取计数器实例\n *\n * @author chitanda\n * @date 2022-10-26 20:10:20\n * @static\n * @param {IAppCounterRef} model\n * @param {IParams} context\n * @param {IParams} params\n * @return {*} {Promise<AppCounter>}\n */\n static async getCounterByRef(model, context, params) {\n const { appCounter } = model;\n if (!appCounter) {\n throw new RuntimeModelError6(model, \"\\u672A\\u914D\\u7F6E\\u5E94\\u7528\\u8BA1\\u6570\\u5668!\");\n }\n return this.getCounter(appCounter, context, params);\n }\n};\n/**\n * 计数器组,应用级计数器缓存,不存在重复\n *\n * @author chitanda\n * @date 2022-10-26 19:10:54\n * @protected\n * @static\n * @type {Map<string, AppCounter>}\n */\nCounterService.counterMap = /* @__PURE__ */ new Map();\n\n// src/service/service/entity/de.service.ts\nimport { ModelError as ModelError14, RuntimeError as RuntimeError10 } from \"@ibiz-template/core\";\n\n// src/service/service/work-flow/work-flow.service.ts\nimport { RuntimeError as RuntimeError9 } from \"@ibiz-template/core\";\nvar WorkFlowService = class {\n /**\n * Creates an instance of WorkFlowService.\n * @author lxm\n * @date 2022-09-29 11:09:54\n * @param {IAppDataEntity} model 应用实体\n */\n constructor(model) {\n this.model = model;\n /**\n * 常规基础路径\n *\n * @author lxm\n * @date 2022-09-29 14:09:16\n * @private\n * @type {string}\n */\n this.commonBaseUrl = \"\";\n this.app = ibiz.hub.getApp(model.appId);\n const appContext = ibiz.appData.context;\n this.commonBaseUrl = \"/wfcore/\".concat(appContext.srfsystemid, \"-app-\").concat(this.app.model.codeName.toLowerCase(), \"/\").concat(this.model.name.toLowerCase());\n }\n /**\n * 获取基础路径\n *\n * @author lxm\n * @date 2022-09-29 14:09:40\n * @private\n * @returns {*}\n */\n getBaseUrl() {\n return this.commonBaseUrl;\n }\n /**\n * 获取activeData\n *\n * @private\n * @param {IData} data\n * @param {IParams} context\n * @returns {*}\n * @memberof WorkFlowService\n */\n getActiveData(data, context) {\n if (context.srfprocessinstanceid) {\n data.srfprocessinstanceid = context.srfprocessinstanceid;\n }\n return data;\n }\n /**\n * 根据当前步骤和任务获取工作流步骤数据(如:流程表单等)\n *\n * @author lxm\n * @date 2022-09-29 14:09:45\n * @param {IParams} context\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async getWFStep(context) {\n const { processDefinitionKey, taskDefinitionKey } = context;\n return this.app.net.get(\n \"\".concat(this.getBaseUrl(), \"/process-definitions/\").concat(processDefinitionKey, \"/usertasks/\").concat(taskDefinitionKey)\n );\n }\n /**\n * 根据业务主键和当前步骤获取操作路径\n *\n * @author lxm\n * @date 2022-09-29 14:09:52\n * @param {IParams} context 路径参数\n * @param {IData} data 数据\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async getWFLink(context, data) {\n const deKeyValue = context[this.model.codeName.toLowerCase()];\n const { taskDefinitionKey } = context;\n return this.app.net.post(\n \"\".concat(this.getBaseUrl(), \"/\").concat(deKeyValue, \"/usertasks/\").concat(taskDefinitionKey, \"/ways\"),\n { activedata: this.getActiveData(data, context) }\n );\n }\n /**\n * 根据业务主键获取工作流程进度\n *\n * @author lxm\n * @date 2022-09-29 14:09:45\n * @param {IParams} context\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async getWFHistory(context) {\n const deKeyValue = context[this.model.codeName.toLowerCase()];\n return this.app.net.get(\n \"\".concat(this.getBaseUrl(), \"/\").concat(deKeyValue, \"/process-instances/alls/history\")\n );\n }\n /**\n * 根据业务主键获取工作流流程图片\n *\n * @author lxm\n * @date 2022-10-27 16:10:13\n * @param {IParams} context\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async getWFProcessDiagram(context) {\n const deKeyValue = context[this.model.codeName.toLowerCase()];\n return this.app.net.request(\n \"\".concat(this.getBaseUrl(), \"/\").concat(deKeyValue, \"/process-instances/alls/processdiagram\"),\n {\n method: \"post\",\n data: {},\n responseType: \"blob\"\n }\n );\n }\n /**\n * 获取标准工作流版本信息\n *\n * @author lxm\n * @date 2022-09-29 14:09:45\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async getWFVersion() {\n return this.app.net.get(\"\".concat(this.getBaseUrl(), \"/process-definitions2\"));\n }\n /**\n * 启动工作流\n *\n * @author lxm\n * @date 2022-09-30 17:09:51\n * @param {IParams} context 路径参数\n * @param {IParams} params 请求参数\n * @param {IData} data 数据\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async wfStart(context, params, data) {\n return this.app.net.post(\n \"\".concat(this.getBaseUrl(), \"/\").concat(context[this.model.codeName.toLowerCase()], \"/process-instances\"),\n {\n ...params,\n activedata: this.getActiveData(data, context)\n }\n );\n }\n /**\n * 提交工作流\n *\n * @author lxm\n * @date 2022-09-30 17:09:51\n * @param {IParams} context 路径参数\n * @param {IParams} params 请求参数\n * @param {IData} data 数据\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async wfSubmit(context, params, data) {\n return this.app.net.post(\n \"\".concat(this.getBaseUrl(), \"/\").concat(context[this.model.codeName.toLowerCase()], \"/tasks/\").concat(params.taskId),\n {\n ...params,\n activedata: this.getActiveData(data, context)\n }\n );\n }\n /**\n * 工作流撤销\n *\n * @author lxm\n * @date 2022-09-30 17:09:51\n * @param {IParams} context 路径参数\n * @param {IParams} params 请求参数\n * @param {IData} data 数据\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async wfWithdraw(context, params, data) {\n return this.app.net.post(\n \"\".concat(this.getBaseUrl(), \"/\").concat(context[this.model.codeName.toLowerCase()], \"/tasks/\").concat(params.taskId, \"/withdraw\"),\n {\n ...params,\n activedata: this.getActiveData(data, context)\n }\n );\n }\n /**\n * 转办\n *\n * @author lxm\n * @date 2022-09-30 17:09:51\n * @param {IParams} context 路径参数\n * @param {IParams} params 请求参数\n * @param {IData} data 数据\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async wfReassign(context, params, data) {\n return ibiz.net.post(\n \"\".concat(this.getBaseUrl(), \"/\").concat(context[this.model.codeName.toLowerCase()], \"/tasks/\").concat(params.taskId, \"/transfer\"),\n {\n ...params,\n activedata: this.getActiveData(data, context)\n }\n );\n }\n /**\n * 前加签\n *\n * @author lxm\n * @date 2022-09-30 17:09:51\n * @param {IParams} context 路径参数\n * @param {IParams} params 请求参数\n * @param {IData} data 数据\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async wfAddStepBefore(context, params, data) {\n return ibiz.net.post(\n \"\".concat(this.getBaseUrl(), \"/\").concat(context[this.model.codeName.toLowerCase()], \"/tasks/\").concat(params.taskId, \"/beforesign\"),\n {\n ...params,\n activedata: this.getActiveData(data, context)\n }\n );\n }\n /**\n * 回退\n *\n * @author lxm\n * @date 2022-09-30 17:09:51\n * @param {IParams} context 路径参数\n * @param {IParams} params 请求参数\n * @param {IData} data 数据\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async wfSendBack(context, params, data) {\n return ibiz.net.post(\n \"\".concat(this.getBaseUrl(), \"/\").concat(context[this.model.codeName.toLowerCase()], \"/tasks/\").concat(params.taskId, \"/sendback\"),\n {\n ...params,\n activedata: this.getActiveData(data, context)\n }\n );\n }\n /**\n * 抄送\n *\n * @author lxm\n * @date 2022-09-30 17:09:51\n * @param {IParams} context 路径参数\n * @param {IParams} params 请求参数\n * @param {IData} data 数据\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async wfSendCopy(context, params, data) {\n return ibiz.net.post(\n \"\".concat(this.getBaseUrl(), \"/\").concat(context[this.model.codeName.toLowerCase()], \"/tasks/\").concat(params.taskId, \"/sendcopy\"),\n {\n ...params,\n activedata: this.getActiveData(data, context)\n }\n );\n }\n /**\n * 调用工作流接口\n *\n * @author lxm\n * @date 2022-09-30 17:09:38\n * @param {string} methodName 接口名称\n * @param {IParams} context 路径参数\n * @param {IParams} [params={}] 查询参数\n * @param {IData} [data={}] 主数据数据\n * @returns {*} {Promise<IHttpResponse<IData>>}\n */\n async exec(methodName, context, params = {}, data = {}) {\n switch (methodName) {\n case \"wfstart\":\n return this.wfStart(context, params, data);\n case \"wfsubmit\":\n return this.wfSubmit(context, params, data);\n case \"reassign\":\n return this.wfReassign(context, params, data);\n case \"addstepbefore\":\n return this.wfAddStepBefore(context, params, data);\n case \"sendback\":\n return this.wfSendBack(context, params, data);\n case \"sendcopy\":\n return this.wfSendCopy(context, params, data);\n default: {\n throw new RuntimeError9(\"\\u300C\".concat(methodName, \"\\u300D\\u672A\\u5B9E\\u73B0\"));\n }\n }\n }\n};\n\n// src/service/service/file/file.service.ts\nvar FileService = class {\n /**\n * Creates an instance of FileService.\n * @author lxm\n * @date 2022-11-25 13:11:49\n * @param {IAppDataEntity} model 应用实体\n */\n constructor(model) {\n this.model = model;\n }\n /**\n * 后台导出数据,返回文件流\n *\n * @author lxm\n * @date 2022-11-25 14:11:53\n * @param {IDEDataExport} dataExport 导出模型\n * @param {string} fetchAction 查询方法\n * @param {IParams} context 上下文\n * @param {IParams} params 请求参数\n * @returns {*} {Promise<IHttpResponse<Blob>>}\n */\n exportData(dataExport, fetchAction, context, params) {\n const resPath = calcResPath(context, this.model);\n const exportUrl = \"\".concat(resPath, \"/\").concat(this.model.codeName2.toLowerCase(), \"/exportdata/\").concat(fetchAction.toLowerCase(), \"/?srfexporttag=\").concat(dataExport.codeName);\n return ibiz.net.request(exportUrl, {\n method: \"post\",\n data: params,\n responseType: \"blob\"\n });\n }\n};\n\n// src/service/service/entity/method/de-action.ts\nimport {\n HttpResponse as HttpResponse3,\n RuntimeModelError as RuntimeModelError18\n} from \"@ibiz-template/core\";\n\n// src/service/service/entity/method/method.ts\nimport { RuntimeModelError as RuntimeModelError7 } from \"@ibiz-template/core\";\n\n// src/service/app-data-entity/app-data-entity.ts\nimport { clone as clone4 } from \"ramda\";\n\n// src/service/constant/srfuf.ts\nvar Srfuf = /* @__PURE__ */ ((Srfuf2) => {\n Srfuf2[Srfuf2[\"CREATE\"] = 0] = \"CREATE\";\n Srfuf2[Srfuf2[\"UPDATE\"] = 1] = \"UPDATE\";\n return Srfuf2;\n})(Srfuf || {});\n\n// src/service/app-data-entity/app-data-entity.ts\nvar AppDataEntity = class _AppDataEntity {\n get srfuf() {\n return this.srfkey ? 1 /* UPDATE */ : 0 /* CREATE */;\n }\n /**\n * Creates an instance of AppDataEntity.\n *\n * @author chitanda\n * @date 2022-10-11 21:10:21\n * @param {IAppDataEntity} entity\n * @param {(IData | AppDataEntity)} data\n */\n constructor(entity, data) {\n let _srfkey;\n Object.defineProperty(this, \"_entity\", {\n enumerable: false,\n configurable: true,\n value: entity\n });\n Object.defineProperty(this, \"_data\", {\n enumerable: false,\n configurable: true,\n value: data instanceof _AppDataEntity ? clone4(data._data) : clone4(data)\n });\n Object.defineProperty(this, \"srfdeid\", {\n get() {\n return entity.id;\n }\n });\n Object.defineProperty(this, \"srfdecodename\", {\n get() {\n return entity.codeName;\n }\n });\n const keyAppField = findModelChild(\n entity.appDEFields || [],\n entity.keyAppDEFieldId\n );\n if (keyAppField) {\n const key = keyAppField.codeName.toLowerCase();\n Object.defineProperty(this, \"srfkeyfile\", {\n get() {\n return key;\n }\n });\n Object.defineProperty(this, \"srfkey\", {\n set(val) {\n _srfkey = val;\n this._data[key] = val;\n },\n get() {\n return this._data[key] || _srfkey;\n }\n });\n } else {\n ibiz.log.warn(\"\\u5B9E\\u4F53[\".concat(entity.codeName, \"]\\u672A\\u914D\\u7F6E\\u4E3B\\u952E\\u5B57\\u6BB5\"));\n }\n const majorAppField = findModelChild(\n entity.appDEFields || [],\n entity.majorAppDEFieldId\n );\n if (majorAppField) {\n const major = majorAppField.codeName.toLowerCase();\n Object.defineProperty(this, \"srfmajorfile\", {\n get() {\n return major;\n }\n });\n Object.defineProperty(this, \"srfmajortext\", {\n set(val) {\n this._data[major] = val;\n },\n get() {\n return this._data[major];\n }\n });\n } else {\n ibiz.log.warn(\"\\u5B9E\\u4F53[\".concat(entity.codeName, \"]\\u672A\\u914D\\u7F6E\\u4E3B\\u6587\\u672C\\u5B57\\u6BB5\"));\n }\n this.defineProperties();\n }\n /**\n * 代理实际数据\n *\n * @author chitanda\n * @date 2022-10-11 22:10:55\n * @protected\n */\n defineProperties() {\n var _a;\n const { _data } = this;\n const properties = {};\n const keys = Object.keys(_data);\n keys.forEach((key) => {\n properties[key] = {\n enumerable: true,\n set(val) {\n _data[key] = val;\n },\n get() {\n return _data[key];\n }\n };\n });\n (_a = this._entity.appDEFields) == null ? void 0 : _a.forEach((field) => {\n const key = field.codeName.toLowerCase();\n if (!keys.includes(key)) {\n properties[key] = {\n enumerable: true,\n set(val) {\n _data[key] = val;\n },\n get() {\n return _data[key];\n }\n };\n }\n });\n Object.defineProperties(this, properties);\n }\n /**\n * 克隆数据\n *\n * @author chitanda\n * @date 2022-10-11 00:10:15\n * @return {*} {AppDataEntity}\n */\n clone() {\n return new _AppDataEntity(this._entity, this._data);\n }\n /**\n * 合并参数\n *\n * @author chitanda\n * @date 2022-10-19 11:10:25\n * @param {(IData | AppDataEntity)} data\n * @return {*} {AppDataEntity}\n */\n assign(data) {\n if (data instanceof _AppDataEntity) {\n Object.assign(this._data, data._data);\n } else {\n Object.assign(this._data, data);\n }\n return this;\n }\n};\n\n// src/service/dto/method.dto.ts\nimport { isNilOrEmpty as isNilOrEmpty5 } from \"qx-util\";\nimport { ModelError as ModelError7 } from \"@ibiz-template/core\";\nvar MethodDto = class _MethodDto {\n constructor(entity, dto) {\n this.entity = entity;\n this.dto = dto;\n this.dtoMap = /* @__PURE__ */ new Map();\n if (dto) {\n this.app = ibiz.hub.getApp(entity.appId);\n this.fields = dto.appDEMethodDTOFields || [];\n } else {\n this.fields = [];\n }\n }\n get isLocalMode() {\n return this.entity.storageMode === 1 || this.entity.storageMode === 4;\n }\n /**\n * 请求参数组合 DTO\n *\n * @author chitanda\n * @date 2022-10-10 23:10:33\n * @param {IParams} context\n * @param {IData} data\n * @return {*} {Promise<IData>}\n */\n async get(context, data) {\n const params = {};\n for (let i = 0; i < this.fields.length; i++) {\n const field = this.fields[i];\n const key = field.codeName.toLowerCase();\n switch (field.type) {\n case \"SIMPLE\": {\n const val = data[key];\n if (isNilOrEmpty5(val)) {\n params[key] = null;\n } else {\n params[key] = val;\n }\n break;\n }\n case \"DTOS\": {\n const dto = await this.getFieldDto(field);\n const service = await this.app.deService.getService(\n field.refAppDataEntityId\n );\n const items = service.local.getList(context);\n if (items) {\n const arr = [];\n for (let j = 0; j < items.length; j++) {\n arr.push(await dto.get(context, items[j]));\n }\n params[key] = arr;\n }\n break;\n }\n default:\n throw new ModelError7(\n field,\n \"\\u672A\\u652F\\u6301\\u7684\\u5E94\\u7528\\u5B9E\\u4F53\\u65B9\\u6CD5\\u8F93\\u5165\\u5C5E\\u6027\\u7C7B\\u578B: \".concat(field.type)\n );\n }\n }\n return params;\n }\n /**\n * 设置本地 DTO 存储\n *\n * @author chitanda\n * @date 2022-10-10 23:10:50\n * @param {IParams} context\n * @param {IData[]} data\n * @return {*} {Promise<AppDataEntity[]>}\n */\n async sets(context, data) {\n const service = await this.app.deService.getService(this.entity.id);\n service.local.clear(context);\n return Promise.all(\n data.map(async (datum) => {\n const all = this.fields.filter((field) => field.type === \"DTOS\").map(async (field) => {\n const key = field.codeName.toLowerCase();\n const dto = await this.getFieldDto(field);\n const items = datum[key];\n if (items) {\n await dto.sets(context, items);\n }\n });\n for (let i = 0; i < all.length; i++) {\n await all[i];\n }\n const entityData = new AppDataEntity(this.entity, datum);\n if (this.isLocalMode) {\n await service.local.add(context, entityData);\n }\n return entityData;\n })\n );\n }\n /**\n * 获取子属性 DTO\n *\n * @author chitanda\n * @date 2022-10-17 16:10:47\n * @protected\n * @param {IAppDEMethodDTOField} field\n * @return {*} {Promise<MethodDto>}\n */\n async getFieldDto(field) {\n if (this.dtoMap.has(field.codeName)) {\n return this.dtoMap.get(field.codeName);\n }\n const entity = await ibiz.hub.getAppDataEntity(\n field.refAppDataEntityId,\n this.entity.appId\n );\n const methodDto = findModelChild(\n entity.appDEMethodDTOs || [],\n field.refAppDEMethodDTOId\n );\n const dto = new _MethodDto(entity, methodDto);\n this.dtoMap.set(field.codeName, dto);\n return dto;\n }\n};\n\n// src/service/service/entity/method/method-input.ts\nvar MethodInput = class {\n /**\n * Creates an instance of MethodInput.\n *\n * @author chitanda\n * @date 2022-10-11 17:10:59\n * @param {IAppDataEntity} entity\n * @param {IAppDEMethodInput} [input]\n */\n constructor(entity, input) {\n this.entity = entity;\n this.input = input;\n if (input) {\n const methodDto = findModelChild(\n entity.appDEMethodDTOs || [],\n input.appDEMethodDTOId\n );\n if (methodDto) {\n this.dto = new MethodDto(entity, methodDto);\n }\n }\n }\n /**\n * 处理请求发送参数\n *\n * @author chitanda\n * @date 2022-10-11 14:10:22\n * @param {IParams} context\n * @param {IData} data\n * @return {*} {Promise<IData>}\n */\n async handle(context, data) {\n if (this.dto) {\n return this.dto.get(context, data);\n }\n return data;\n }\n};\n\n// src/service/service/entity/method/method-renturn.ts\nvar MethodReturn = class {\n /**\n * Creates an instance of MethodReturn.\n *\n * @author chitanda\n * @date 2022-10-11 17:10:47\n * @param {IAppDataEntity} entity\n * @param {IAppDEMethodReturn} [output]\n */\n constructor(entity, output) {\n this.entity = entity;\n this.output = output;\n if (output) {\n const methodDto = findModelChild(\n entity.appDEMethodDTOs || [],\n output.appDEMethodDTOId\n );\n if (methodDto) {\n this.dto = new MethodDto(entity, methodDto);\n }\n }\n }\n /**\n * 处理请求返回参数\n *\n * @author chitanda\n * @date 2022-10-19 21:10:06\n * @param {IParams} context\n * @param {IData} data\n * @return {*} {Promise<IDataEntity>}\n */\n async handle(context, data) {\n if (this.dto) {\n const items = await this.dto.sets(context, [data]);\n return items[0];\n }\n return new AppDataEntity(this.entity, data);\n }\n};\n\n// src/service/service/entity/method/method.ts\nvar Method = class {\n /**\n * Creates an instance of Method.\n *\n * @author chitanda\n * @date 2022-10-10 14:10:19\n * @param {IAppDataEntity} entity\n * @param {IAppDEMethod} method\n * @param {ServicePathItem[][]} paths\n */\n constructor(entity, method) {\n this.entity = entity;\n this.method = method;\n this.app = ibiz.hub.getApp(entity.appId);\n this.input = new MethodInput(entity, method.appDEMethodInput);\n this.result = new MethodReturn(entity, method.appDEMethodReturn);\n }\n /**\n * 是否为本地模式\n *\n * @author chitanda\n * @date 2023-04-19 16:04:46\n * @readonly\n * @protected\n * @type {boolean}\n */\n get isLocalMode() {\n return this.entity.storageMode === 1 || this.entity.storageMode === 4;\n }\n /**\n * 发送请求\n *\n * @author chitanda\n * @date 2022-10-10 17:10:44\n * @protected\n * @param {string} path\n * @param {IParams} context\n * @param {IData} data\n * @param {IParams} params\n * @return {*} {Promise<HttpResponse<any>>}\n */\n async request(path2, context, data, params) {\n const { actionType, requestMethod } = this.method;\n if (actionType === \"REMOTE\") {\n const methodName = this.method.codeName.toLowerCase();\n let res = null;\n switch (requestMethod) {\n case \"POST\":\n res = await this.app.net.post(\"\".concat(path2, \"/\").concat(methodName), data, params);\n break;\n case \"GET\":\n res = await this.app.net.get(\"\".concat(path2, \"/\").concat(methodName), data, params);\n break;\n case \"PUT\":\n res = await this.app.net.put(\"\".concat(path2, \"/\").concat(methodName), data, params);\n break;\n case \"DELETE\":\n res = await this.app.net.delete(\n \"\".concat(path2, \"/\").concat(methodName),\n data,\n params\n );\n break;\n default:\n if (requestMethod) {\n throw new RuntimeModelError7(\n this.method,\n \"\\u672A\\u652F\\u6301\\u7684\\u8BF7\\u6C42\\u65B9\\u5F0F: \".concat(requestMethod)\n );\n } else {\n throw new RuntimeModelError7(this.method, \"\\u672A\\u914D\\u7F6E\\u8BF7\\u6C42\\u65B9\\u5F0F\");\n }\n }\n return res;\n }\n throw new RuntimeModelError7(this.method, \"\\u672A\\u652F\\u6301\\u7684\\u884C\\u4E3A\\u7C7B\\u578B[\".concat(actionType, \"]\"));\n }\n /**\n * 根据上下文计算当前请求路径\n *\n * @author chitanda\n * @date 2022-08-24 18:08:46\n * @protected\n * @param {IParams} context\n * @return {*} {string} 拼接结果说明: /祖父实体/祖父实体主键/爷爷实体/爷爷实体主键/父实体/父实体主键/当前实体\n */\n calcPath(context) {\n const curPath = \"/\".concat(this.entity.codeName2.toLowerCase());\n const resPath = calcResPath(context, this.entity);\n return resPath + curPath;\n }\n /**\n * 获取当前实体服务\n *\n * @author chitanda\n * @date 2022-10-11 21:10:12\n * @protected\n * @return {*} {Promise<IAppDEService>}\n */\n async getService() {\n if (!this.service) {\n this.service = await this.app.deService.getService(this.entity.id);\n }\n return this.service;\n }\n /**\n * 创建实体\n *\n * @author chitanda\n * @date 2022-10-11 22:10:05\n * @protected\n * @param {(IData | IDataEntity)} data\n * @return {*} {IDataEntity}\n */\n createEntity(data) {\n return new AppDataEntity(this.entity, data);\n }\n};\n\n// src/de-logic/index.ts\nimport { HttpError as HttpError2, HttpResponse as HttpResponse2 } from \"@ibiz-template/core\";\n\n// src/de-logic/de-logic.ts\nimport { ModelError as ModelError13, RuntimeModelError as RuntimeModelError17 } from \"@ibiz-template/core\";\n\n// src/de-logic/de-logic-context.ts\nvar DELogicContext = class {\n /**\n * Creates an instance of DELogicContext.\n * @author lxm\n * @date 2023-03-24 09:15:14\n * @param {Map<string, DELogicParam>} deLogicParams 实体逻辑参数集合\n * @param {IParams} context 上下文\n * @param {IData} data 数据对象\n * @param {IParams} viewParams 视图参数\n */\n constructor(deLogicParams, context, data, viewParams) {\n this.deLogicParams = deLogicParams;\n this.context = context;\n this.data = data;\n this.viewParams = viewParams;\n /**\n * 实体逻辑参数\n *\n * @description 实体逻辑参数初始化时设置\n * @author lxm\n * @date 2023-02-08 17:02:38\n * @type {Record<string, any>}\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n this.params = {};\n /**\n * UI逻辑执行返回值\n *\n * @author lxm\n * @date 2023-02-09 21:02:40\n * @type {unknown}\n */\n this.result = null;\n /**\n * 是否存在结束节点\n *\n * @author lxm\n * @date 2023-03-16 12:08:58\n * @type {boolean}\n */\n this.isEndNode = false;\n /**\n * 默认参数节点\n *\n * @author lxm\n * @date 2023-03-16 12:11:14\n * @type {string}\n */\n this.defaultParamName = \"Default\";\n }\n /**\n * 重置实体逻辑参数\n * @author lxm\n * @date 2023-03-24 09:18:02\n * @param {string} name\n */\n resetParam(name) {\n var _a;\n (_a = this.deLogicParams.get(name)) == null ? void 0 : _a.calc(this);\n }\n /**\n * 重新建立变量\n * @author lxm\n * @date 2023-03-24 09:20:24\n * @param {string} name\n */\n renewParam(name) {\n var _a;\n (_a = this.deLogicParams.get(name)) == null ? void 0 : _a.renew(this);\n }\n};\n\n// src/de-logic/de-logic-node/de-action-node/de-action-node.ts\nimport { RuntimeModelError as RuntimeModelError10 } from \"@ibiz-template/core\";\n\n// src/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.ts\nimport { RuntimeModelError as RuntimeModelError9 } from \"@ibiz-template/core\";\n\n// src/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.ts\nvar DELogicLinkCond = class {\n};\n\n// src/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.ts\nimport { ModelError as ModelError8, RuntimeModelError as RuntimeModelError8 } from \"@ibiz-template/core\";\nvar DELogicLinkSingleCond = class extends DELogicLinkCond {\n constructor(model) {\n super();\n this.model = model;\n this.srcParam = model.srcLogicParamId;\n this.dstParam = model.dstLogicParamId;\n }\n get dstField() {\n return this.model.dstFieldName.toLowerCase();\n }\n get op() {\n return this.model.condOP;\n }\n /**\n * 条件值类型\n * @author lxm\n * @date 2023-06-14 03:35:39\n * @readonly\n */\n get type() {\n return this.model.paramType;\n }\n /**\n * 条件值\n * @author lxm\n * @date 2023-06-14 03:36:45\n * @readonly\n */\n get value() {\n return this.model.paramValue;\n }\n /**\n * 执行逻辑检测\n *\n * @author lxm\n * @date 2023-02-15 18:02:05\n * @param {DELogicContext} ctx\n * @param {IParams} context\n * @param {IData} data\n * @return {*} {boolean}\n */\n test(ctx, context, data) {\n const dst = ctx.params[this.dstParam];\n switch (this.type) {\n case \"ENTITYFIELD\": {\n if (!this.value) {\n throw new RuntimeModelError8(\n this.model,\n \"\\u5F53\\u524D\\u6761\\u4EF6\\u503C\\u7C7B\\u578B\\u4E3A[\\u6570\\u636E\\u5BF9\\u8C61\\u5C5E\\u6027],\\u7F3A\\u5C11\\u914D\\u7F6E\\u6761\\u4EF6\\u503C\"\n );\n }\n const value = data[this.value] != null ? data[this.value] : context[this.value];\n return testCond(dst[this.dstField], this.op, value);\n }\n case \"SRCENTITYFIELD\": {\n if (!this.value) {\n throw new RuntimeModelError8(\n this.model,\n \"\\u5F53\\u524D\\u6761\\u4EF6\\u503C\\u7C7B\\u578B\\u4E3A[\\u6E90\\u6570\\u636E\\u5BF9\\u8C61\\u5C5E\\u6027],\\u7F3A\\u5C11\\u914D\\u7F6E\\u6761\\u4EF6\\u503C\"\n );\n }\n const src = ctx.params[this.srcParam];\n return testCond(dst[this.dstField], this.op, src[this.value]);\n }\n case \"CURTIME\":\n throw new ModelError8(this.model, \"\\u6682\\u672A\\u652F\\u6301\\u6761\\u4EF6\\u503C\\u7C7B\\u578B\\u4E3A[\\u5F53\\u524D\\u65F6\\u95F4]\");\n default:\n return testCond(dst[this.dstField], this.op, this.value);\n }\n }\n};\n\n// src/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.ts\nvar DELogicLinkGroupCond = class _DELogicLinkGroupCond extends DELogicLinkCond {\n constructor(model) {\n super();\n this.model = model;\n const conds = model.conds || [];\n this.conds = conds.map((cond) => {\n return cond.logicType === \"SINGLE\" ? new DELogicLinkSingleCond(cond) : new _DELogicLinkGroupCond(cond);\n });\n }\n /**\n * 操作标识\n *\n * @author lxm\n * @date 2023-02-15 17:02:04\n * @readonly\n * @protected\n * @type {('AND' | 'OR')}\n */\n get op() {\n return this.model.groupOP;\n }\n /**\n * 结果是否取反值\n *\n * @author lxm\n * @date 2023-02-15 17:02:10\n * @readonly\n * @protected\n * @type {boolean}\n */\n get notMode() {\n return this.model.notMode === true;\n }\n /**\n * 条件判断\n *\n * @author lxm\n * @date 2023-02-15 17:02:19\n * @param {DELogicContext} ctx\n * @param {IParams} context\n * @param {IData} data\n * @return {*} {boolean}\n */\n test(ctx, context, data) {\n let bol = true;\n if (this.conds.length === 0) {\n throw new RuntimeModelError9(this.model, \"\\u754C\\u9762\\u8FDE\\u63A5\\u6761\\u4EF6\\u903B\\u8F91\\u7EC4\\u672A\\u914D\\u7F6E\\u903B\\u8F91\\u9879\");\n }\n for (let i = 0; i < this.conds.length; i++) {\n const cond = this.conds[i];\n const judge = cond.test(ctx, context, data);\n if (this.op === \"AND\" && judge === false) {\n bol = false;\n break;\n }\n if (this.op === \"OR\" && judge === true) {\n bol = true;\n break;\n }\n }\n return this.notMode ? !bol : bol;\n }\n};\n\n// src/de-logic/de-logic-link/de-logic-link.ts\nvar DELogicLink = class {\n /**\n * Creates an instance of DELogicLink.\n *\n * @author lxm\n * @date 2023-02-08 16:02:19\n * @param {DELogicLinkModel} model\n */\n constructor(model) {\n this.model = model;\n /**\n * 源节点\n *\n * @author lxm\n * @date 2023-02-08 21:02:53\n * @type {DELogicNode}\n */\n this.srcNode = null;\n /**\n * 目标节点\n *\n * @author lxm\n * @date 2023-02-08 21:02:59\n * @type {DELogicNode}\n */\n this.dstNode = null;\n /**\n * 连接条件组\n *\n * @author lxm\n * @date 2023-02-15 17:02:49\n * @type {(DELogicLinkGroupCond | null)}\n */\n this.groupCond = null;\n const cond = this.model.delogicLinkGroupCond;\n if (cond) {\n this.groupCond = new DELogicLinkGroupCond(cond);\n }\n }\n /**\n * 执行连接\n *\n * @author lxm\n * @date 2023-02-08 22:02:18\n * @param {DELogicContext} ctx\n * @param {IParams} context\n * @param {IData} data\n * @return {*} {Promise<boolean>} 是否连接成功\n */\n async exec(ctx) {\n const { defaultLink } = this.model;\n if (defaultLink || !this.groupCond) {\n return true;\n }\n return this.groupCond.test(ctx, ctx.context, ctx.data || {});\n }\n};\n\n// src/de-logic/de-logic-node/de-logic-node.ts\nvar DELogicNode = class {\n /**\n * Creates an instance of DELogicNode.\n *\n * @author lxm\n * @date 2023-02-08 16:02:19\n * @param {DELogicNodeModel} model\n */\n constructor(model) {\n this.model = model;\n var _a;\n this.links = (_a = model.links || []) == null ? void 0 : _a.map((link) => new DELogicLink(link));\n }\n};\n\n// src/de-logic/de-logic-node/de-action-node/de-action-node.ts\nvar DEActionNode = class extends DELogicNode {\n async exec(ctx) {\n const {\n dstAppDataEntityId,\n dstAppDEActionId,\n dstDELogicParamId,\n retDELogicParamId\n } = this.model;\n if (!dstAppDataEntityId) {\n throw new RuntimeModelError10(this.model, \"\\u672A\\u6307\\u5B9A\\u5E94\\u7528\\u5B9E\\u4F53\");\n }\n if (!dstAppDEActionId) {\n throw new RuntimeModelError10(this.model, \"\\u672A\\u6307\\u5B9A\\u5B9E\\u4F53\\u884C\\u4E3A\");\n }\n const requestData = ctx.params[dstDELogicParamId];\n const app = ibiz.hub.getApp(ctx.context.srfappid);\n const res = await app.deService.exec(\n dstAppDataEntityId,\n dstAppDEActionId,\n ctx.context,\n requestData,\n ctx.viewParams\n );\n if (res.ok) {\n ctx.params[retDELogicParamId] = res.data;\n }\n }\n};\n\n// src/de-logic/de-logic-node/start-node/start-node.ts\nvar StartNode = class extends DELogicNode {\n async exec(_ctx) {\n }\n};\n\n// src/de-logic/de-logic-node/end-node/end-node.ts\nimport { ModelError as ModelError9 } from \"@ibiz-template/core\";\nvar EndNode = class extends DELogicNode {\n async exec(ctx) {\n ctx.isEndNode = true;\n const { returnParamId, returnType, rawValue } = this.model;\n switch (returnType) {\n case \"NONEVALUE\":\n ctx.result = void 0;\n break;\n case \"NULLVALUE\":\n ctx.result = null;\n break;\n case \"SRCVALUE\":\n ctx.result = rawValue;\n break;\n case \"LOGICPARAM\":\n ctx.result = ctx.params[returnParamId];\n break;\n case \"LOGICPARAMFIELD\":\n case \"BREAK\":\n default:\n throw new ModelError9(\n this.model,\n \"\\u6682\\u672A\\u652F\\u6301\\u7684\\u7ED3\\u675F\\u8282\\u70B9\\u8FD4\\u56DE\\u503C\\u7C7B\\u578B: \".concat(returnType)\n );\n }\n }\n};\n\n// src/de-logic/de-logic-node/prepare-param-node/prepare-param-node.ts\nimport { ModelError as ModelError11 } from \"@ibiz-template/core\";\nimport { clone as clone6 } from \"ramda\";\n\n// src/de-logic/utils/handle-src-val.ts\nimport { ModelError as ModelError10 } from \"@ibiz-template/core\";\nimport { clone as clone5 } from \"ramda\";\nfunction handleSrcVal(ctx, srcValParams) {\n const { srcDELogicParamId, srcValueType, srcFieldName, srcValue } = srcValParams;\n if (!srcValParams.srcValueType) {\n srcValParams.srcValueType = \"SRCDLPARAM\";\n }\n let value;\n switch (srcValueType) {\n case \"SRCDLPARAM\":\n value = ctx.params[srcDELogicParamId];\n break;\n case \"NULLVALUE\":\n return null;\n case \"NONEVALUE\":\n return void 0;\n case \"SRCVALUE\":\n return srcValue;\n case \"VIEWPARAM\":\n value = ctx.viewParams;\n break;\n case \"APPDATA\":\n value = ctx.context;\n break;\n case \"ENVPARAM\":\n value = clone5(ibiz.env);\n break;\n default:\n throw new ModelError10(srcValParams, \"\\u6682\\u672A\\u652F\\u6301\\u6E90\\u503C\\u7C7B\\u578B\".concat(srcValueType));\n }\n const srcField = srcFieldName == null ? void 0 : srcFieldName.toLowerCase();\n if (value && srcField) {\n value = value[srcField];\n }\n return value;\n}\n\n// src/de-logic/de-logic-node/prepare-param-node/prepare-param-node.ts\nvar PrepareParamNode = class extends DELogicNode {\n async exec(ctx) {\n const nodeParams = this.model.delogicNodeParams;\n if (nodeParams == null ? void 0 : nodeParams.length) {\n await Promise.all(\n nodeParams.map((nodeParam) => {\n switch (nodeParam.paramAction) {\n case \"SETPARAMVALUE\":\n return this.setParamValue(nodeParam, ctx);\n case \"RESETPARAM\":\n return this.resetParam(nodeParam, ctx);\n case \"COPYPARAM\":\n return this.copyParam(nodeParam, ctx);\n case \"BINDPARAM\":\n return this.bindParam(nodeParam, ctx);\n case \"RENEWPARAM\":\n return this.renewParam(nodeParam, ctx);\n case \"APPENDPARAM\":\n return this.appendParam(nodeParam, ctx);\n case \"SORTPARAM\":\n return this.sortParam(nodeParam, ctx);\n default:\n throw new ModelError11(\n nodeParam,\n \"\\u6682\\u672A\\u652F\\u6301\\u903B\\u8F91\\u5904\\u7406\\u53C2\\u6570\\u64CD\\u4F5C\".concat(nodeParam.paramAction)\n );\n }\n })\n );\n }\n }\n /**\n * 拷贝变量\n * @author lxm\n * @date 2023-03-24 09:50:02\n * @protected\n * @param {IDELogicNodeParam} nodeParam\n * @param {DELogicContext} ctx\n * @return {*} {*}\n */\n copyParam(nodeParam, ctx) {\n const { dstDELogicParamId } = nodeParam;\n const srcVal = handleSrcVal(ctx, nodeParam);\n ctx.params[dstDELogicParamId] = clone6(srcVal);\n }\n /**\n * 绑定参数\n * @author lxm\n * @date 2023-06-13 05:43:43\n * @protected\n * @param {IDELogicNodeParam} nodeParam\n * @param {DELogicContext} ctx\n */\n bindParam(nodeParam, ctx) {\n const srcVal = handleSrcVal(ctx, nodeParam);\n ctx.params[nodeParam.dstDELogicParamId] = srcVal;\n }\n /**\n * 设置变量\n * @author lxm\n * @date 2023-03-17 03:34:02\n * @protected\n * @param {IDELogicNodeParam} nodeParam\n * @param {DELogicContext} ctx\n */\n setParamValue(nodeParam, ctx) {\n const { dstFieldName, dstDELogicParamId } = nodeParam;\n const dstField = dstFieldName == null ? void 0 : dstFieldName.toLowerCase();\n const srcVal = handleSrcVal(ctx, nodeParam);\n if (dstField) {\n ctx.params[dstDELogicParamId][dstField] = srcVal;\n } else {\n ctx.params[dstDELogicParamId] = srcVal;\n }\n }\n /**\n * 重置变量\n * @author lxm\n * @date 2023-03-24 09:46:57\n * @protected\n * @param {IDELogicNodeParam} nodeParam\n * @param {DELogicContext} ctx\n */\n resetParam(nodeParam, ctx) {\n const { dstDELogicParamId } = nodeParam;\n ctx.resetParam(dstDELogicParamId);\n }\n /**\n * 重新建立变量\n * @author lxm\n * @date 2023-03-24 09:46:47\n * @protected\n * @param {IDELogicNodeParam} nodeParam\n * @param {DELogicContext} ctx\n */\n renewParam(nodeParam, ctx) {\n const { dstDELogicParamId } = nodeParam;\n ctx.renewParam(dstDELogicParamId);\n }\n /**\n * 附加到数组变量\n * @author lxm\n * @date 2023-03-24 09:46:47\n * @protected\n * @param {IDELogicNodeParam} nodeParam\n * @param {DELogicContext} ctx\n */\n appendParam(nodeParam, ctx) {\n const { dstDELogicParamId, dstIndex, srcIndex, srcSize } = nodeParam;\n const srcVal = handleSrcVal(ctx, nodeParam);\n const insertIndex = dstIndex || 0;\n const _srcIndex = srcIndex || 0;\n const _srcSize = srcSize || srcVal.length;\n ctx.params[dstDELogicParamId].splice(\n insertIndex,\n 0,\n ...srcVal.slice(_srcIndex, _srcSize)\n );\n }\n /**\n * 排序数组变量\n * @author lxm\n * @date 2023-03-24 10:23:01\n * @protected\n * @param {IDELogicNodeParam} nodeParam\n * @param {DELogicContext} ctx\n */\n sortParam(nodeParam, ctx) {\n const { dstDELogicParamId, dstFieldName, dstSortDir } = nodeParam;\n const key = dstFieldName.toLowerCase();\n const arr = ctx.params[dstDELogicParamId];\n arr.sort((a, b) => {\n return dstSortDir === \"ASC\" ? a[key] - b[key] : b[key] - a[key];\n });\n }\n};\n\n// src/de-logic/de-logic-node/data-set-node/data-set-node.ts\nvar DataSetNode = class extends DELogicNode {\n async exec(ctx) {\n const {\n dstAppDEDataSetId,\n dstAppDataEntityId,\n dstDELogicParamId,\n retDELogicParamId\n } = this.model;\n const requestData = ctx.params[dstDELogicParamId];\n const app = ibiz.hub.getApp(ctx.context.srfappid);\n const res = await app.deService.exec(\n dstAppDataEntityId,\n dstAppDEDataSetId,\n ctx.context,\n requestData,\n ctx.viewParams\n );\n if (res.ok) {\n ctx.params[retDELogicParamId] = res.data;\n }\n }\n};\n\n// src/de-logic/de-logic-node/bind-param-node/bind-param-node.ts\nimport { RuntimeModelError as RuntimeModelError11 } from \"@ibiz-template/core\";\nvar BindParamNode = class extends DELogicNode {\n async exec(ctx) {\n const { dstDELogicParamId, srcDELogicParamId } = this.model;\n if (!dstDELogicParamId || !srcDELogicParamId) {\n throw new RuntimeModelError11(\n this.model,\n \"\\u7F3A\\u5C11\\u76EE\\u6807\\u53C2\\u6570\\u5BF9\\u8C61\\u6216\\u8005\\u6E90\\u53C2\\u6570\\u5BF9\\u8C61\\u914D\\u7F6E\"\n );\n }\n const srcVal = handleSrcVal(ctx, this.model);\n ctx.params[dstDELogicParamId] = srcVal;\n }\n};\n\n// src/de-logic/de-logic-node/reset-param-node/reset-param-node.ts\nimport { RuntimeModelError as RuntimeModelError12 } from \"@ibiz-template/core\";\nvar ResetParamNode = class extends DELogicNode {\n async exec(ctx) {\n const { dstDELogicParamId } = this.model;\n if (!dstDELogicParamId) {\n throw new RuntimeModelError12(this.model, \"\\u7F3A\\u5C11\\u76EE\\u6807\\u53C2\\u6570\\u5BF9\\u8C61\\u914D\\u7F6E\");\n }\n ctx.resetParam(dstDELogicParamId);\n }\n};\n\n// src/de-logic/de-logic-node/renew-param-node/renew-param-node.ts\nimport { RuntimeModelError as RuntimeModelError13 } from \"@ibiz-template/core\";\nvar RenewParamNode = class extends DELogicNode {\n async exec(ctx) {\n const { dstDELogicParamId } = this.model;\n if (!dstDELogicParamId) {\n throw new RuntimeModelError13(this.model, \"\\u7F3A\\u5C11\\u76EE\\u6807\\u53C2\\u6570\\u5BF9\\u8C61\\u914D\\u7F6E\");\n }\n ctx.renewParam(dstDELogicParamId);\n }\n};\n\n// src/de-logic/de-logic-node/copy-param-node/copy-param-node.ts\nimport { RuntimeModelError as RuntimeModelError14 } from \"@ibiz-template/core\";\nimport { clone as clone7 } from \"ramda\";\nvar CopyParamNode = class extends DELogicNode {\n async exec(ctx) {\n const { dstDELogicParamId, srcDELogicParamId } = this.model;\n if (!dstDELogicParamId || !srcDELogicParamId) {\n throw new RuntimeModelError14(\n this.model,\n \"\\u7F3A\\u5C11\\u76EE\\u6807\\u53C2\\u6570\\u5BF9\\u8C61\\u6216\\u8005\\u6E90\\u53C2\\u6570\\u5BF9\\u8C61\\u914D\\u7F6E\"\n );\n }\n const srcVal = handleSrcVal(ctx, this.model);\n ctx.params[dstDELogicParamId] = clone7(srcVal);\n }\n};\n\n// src/de-logic/de-logic-node/sort-param-node/sort-param-node.ts\nimport { RuntimeModelError as RuntimeModelError15 } from \"@ibiz-template/core\";\nvar SortParamNode = class extends DELogicNode {\n async exec(ctx) {\n const { dstDELogicParamId, dstSortDir, dstFieldName } = this.model;\n if (!dstDELogicParamId || !dstFieldName) {\n throw new RuntimeModelError15(this.model, \"\\u7F3A\\u5C11\\u76EE\\u6807\\u53C2\\u6570\\u5BF9\\u8C61\\u6216\\u76EE\\u6807\\u5C5E\\u6027\\u914D\\u7F6E\");\n }\n const key = dstFieldName.toLowerCase();\n const arr = ctx.params[dstDELogicParamId];\n arr.sort((a, b) => {\n return dstSortDir === \"ASC\" ? a[key] - b[key] : b[key] - a[key];\n });\n }\n};\n\n// src/de-logic/de-logic-node/append-param-node/append-param-node.ts\nimport { RuntimeModelError as RuntimeModelError16 } from \"@ibiz-template/core\";\nvar AppendParamNode = class extends DELogicNode {\n async exec(ctx) {\n const {\n dstDELogicParamId,\n srcDELogicParamId,\n dstIndex,\n srcIndex,\n srcSize\n } = this.model;\n if (!dstDELogicParamId || !srcDELogicParamId) {\n throw new RuntimeModelError16(\n this.model,\n \"\\u7F3A\\u5C11\\u76EE\\u6807\\u53C2\\u6570\\u5BF9\\u8C61\\u6216\\u8005\\u6E90\\u53C2\\u6570\\u5BF9\\u8C61\\u914D\\u7F6E\"\n );\n }\n const srcVal = handleSrcVal(ctx, this.model);\n const insertIndex = dstIndex || 0;\n const _srcIndex = srcIndex || 0;\n const _srcSize = srcSize || srcVal.length;\n ctx.params[dstDELogicParamId].splice(\n insertIndex,\n 0,\n ...srcVal.slice(_srcIndex, _srcSize)\n );\n }\n};\n\n// src/de-logic/de-logic-node/throw-exception-node/throw-exception-node.ts\nimport { HttpError } from \"@ibiz-template/core\";\nvar ThrowExceptionNode = class extends DELogicNode {\n async exec(_ctx) {\n const { errorCode, errorInfo } = this.model;\n throw new HttpError({\n response: {\n status: errorCode,\n statusText: errorInfo\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n });\n }\n};\n\n// src/de-logic/de-logic-param/de-logic-param.ts\nimport { ModelError as ModelError12 } from \"@ibiz-template/core\";\nimport { clone as clone8 } from \"ramda\";\nvar DELogicParam = class {\n /**\n * Creates an instance of DELogicParam.\n *\n * @author lxm\n * @date 2023-02-08 16:02:22\n * @param {DELogicParamModel} model\n */\n constructor(model) {\n this.model = model;\n }\n /**\n * 向界面逻辑中计算基础参数\n *\n * @author lxm\n * @date 2023-02-08 20:02:33\n * @param {DELogicContext} ctx\n * @param {IParams} context\n * @param {IData} data\n * @param {IParams} [opt]\n */\n calc(ctx) {\n const tag = this.model.id;\n const m = this.model;\n if (m.default) {\n ctx.params[tag] = ctx.data || {};\n } else if (m.appGlobalParam) {\n ctx.params[tag] = clone8(ibiz.env);\n } else if (m.entityListParam) {\n ctx.params[tag] = [];\n } else if (m.entityPageParam) {\n throw new ModelError12(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u5206\\u9875\\u67E5\\u8BE2\\u7ED3\\u679C\");\n } else if (m.entityParam) {\n ctx.params[tag] = {};\n } else if (m.lastReturnParam) {\n throw new ModelError12(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u4E0A\\u6B21\\u8C03\\u7528\\u8FD4\\u56DE\");\n } else if (m.appContextParam) {\n ctx.params[tag] = ctx.context;\n } else if (m.simpleListParam) {\n ctx.params[tag] = [];\n } else if (m.simpleParam) {\n ctx.params[tag] = {};\n } else if (m.cloneParam) {\n ctx.params[tag] = clone8(ctx.data || {});\n } else if (m.envParam) {\n throw new ModelError12(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u7CFB\\u7EDF\\u73AF\\u5883\\u53D8\\u91CF\");\n } else if (m.fileListParam) {\n throw new ModelError12(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u6587\\u4EF6\\u5BF9\\u8C61\\u5217\\u8868\\u53D8\\u91CF\");\n } else if (m.fileParam) {\n throw new ModelError12(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u6587\\u4EF6\\u5BF9\\u8C61\\u53D8\\u91CF\");\n } else if (m.filterParam) {\n throw new ModelError12(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u8FC7\\u6EE4\\u5668\\u5BF9\\u8C61\\u53D8\\u91CF\");\n } else if (m.lastParam) {\n throw new ModelError12(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u6700\\u540E\\u6570\\u636E\\u53D8\\u91CF\");\n } else if (m.originEntity) {\n throw new ModelError12(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u539F\\u59CB\\u6570\\u636E\\u5BF9\\u8C61\");\n } else if (m.sessionParam) {\n throw new ModelError12(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u64CD\\u4F5C\\u4F1A\\u8BDD\\u53D8\\u91CF\");\n }\n }\n /**\n * 重新建立变量\n * @author lxm\n * @date 2023-03-24 09:20:42\n * @param {DELogicContext} ctx\n */\n renew(ctx) {\n const tag = this.model.id;\n const m = this.model;\n if (m.entityListParam || m.simpleListParam || m.entityPageParam) {\n ctx.params[tag] = [];\n } else if (m.simpleParam || m.entityParam) {\n ctx.params[tag] = {};\n } else {\n throw new ModelError12(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B\\u91CD\\u65B0\\u5EFA\\u7ACB\\u53D8\\u91CF\");\n }\n }\n};\n\n// src/de-logic/de-logic.ts\nvar DELogic = class {\n /**\n * Creates an instance of DELogic.\n * @author lxm\n * @date 2023-02-08 17:02:26\n * @param {IAppDELogic} model\n */\n constructor(model) {\n this.model = model;\n /**\n * 所有节点实例\n *\n * @author lxm\n * @date 2023-02-08 21:02:38\n * @protected\n * @type {Map<string, DELogicNode>}\n */\n this.nodes = /* @__PURE__ */ new Map();\n /**\n * 所有参数实例\n *\n * @author lxm\n * @date 2023-02-08 21:02:25\n * @protected\n * @type {Map<string, DELogicParam>}\n */\n this.params = /* @__PURE__ */ new Map();\n var _a, _b;\n if (!((_a = model.delogicNodes) == null ? void 0 : _a.length)) {\n throw new RuntimeModelError17(model, \"\\u5B9E\\u4F53\\u903B\\u8F91\\u6CA1\\u6709\\u914D\\u7F6E\\u903B\\u8F91\\u8282\\u70B9\");\n }\n model.delogicNodes.forEach((node) => {\n const { logicNodeType } = node;\n let logicNode;\n switch (logicNodeType) {\n case \"BEGIN\":\n logicNode = new StartNode(node);\n break;\n case \"END\":\n logicNode = new EndNode(node);\n break;\n case \"DEACTION\":\n logicNode = new DEActionNode(node);\n break;\n case \"PREPAREPARAM\":\n logicNode = new PrepareParamNode(node);\n break;\n case \"DEDATASET\":\n logicNode = new DataSetNode(node);\n break;\n case \"THROWEXCEPTION\":\n logicNode = new ThrowExceptionNode(node);\n break;\n case \"BINDPARAM\":\n logicNode = new BindParamNode(node);\n break;\n case \"RESETPARAM\":\n logicNode = new ResetParamNode(node);\n break;\n case \"COPYPARAM\":\n logicNode = new CopyParamNode(node);\n break;\n case \"RENEWPARAM\":\n logicNode = new RenewParamNode(node);\n break;\n case \"APPENDPARAM\":\n logicNode = new AppendParamNode(node);\n break;\n case \"SORTPARAM\":\n logicNode = new SortParamNode(node);\n break;\n default:\n throw new ModelError13(node, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u8282\\u70B9\\u7C7B\\u578B: \".concat(logicNodeType));\n }\n this.nodes.set(node.id, logicNode);\n });\n (_b = model.delogicParams) == null ? void 0 : _b.forEach((param) => {\n this.params.set(param.id, new DELogicParam(param));\n });\n this.nodes.forEach((node) => {\n node.links.forEach((link) => {\n link.srcNode = node;\n if (this.nodes.has(link.model.thenId)) {\n link.dstNode = this.nodes.get(link.model.thenId);\n }\n });\n });\n }\n /**\n * 初始化当前环境的逻辑参数的实例\n *\n * @author lxm\n * @date 2023-02-08 21:02:58\n * @protected\n * @param {DELogicContext} ctx\n * @param {IParams} context\n * @param {IData} data\n * @param {IParams} [opt]\n */\n initLogicParams(ctx) {\n this.params.forEach((param) => {\n if (param.model.default) {\n ctx.defaultParamName = param.model.id;\n }\n param.calc(ctx);\n });\n }\n /**\n * 执行逻辑\n *\n * @author lxm\n * @date 2023-02-08 21:02:09\n * @param {IParams} context\n * @param {IData} data\n * @param {IParams} [opt]\n * @return {*} {Promise<IData>}\n */\n async exec(context, data, params) {\n const ctx = new DELogicContext(this.params, context, data, params);\n this.initLogicParams(ctx);\n const { startDELogicNodeId } = this.model;\n if (startDELogicNodeId && this.nodes.has(startDELogicNodeId)) {\n const start = this.nodes.get(startDELogicNodeId);\n await this.deepExec(start, ctx);\n } else {\n throw new RuntimeModelError17(this.model, \"\\u672A\\u8BBE\\u7F6E\\u8D77\\u59CB\\u8282\\u70B9\");\n }\n if (ctx.isEndNode) {\n return ctx.result;\n }\n if (ctx.params[ctx.defaultParamName]) {\n return ctx.params[ctx.defaultParamName];\n }\n return null;\n }\n /**\n * 开始根据连线递归执行逻辑\n *\n * @author lxm\n * @date 2023-06-13 08:29:36\n * @protected\n * @param {DELogicNode} node 逻辑节点\n * @param {DELogicContext} ctx 逻辑上下文\n * @return {*} {Promise<void>}\n */\n async deepExec(node, ctx) {\n await node.exec(ctx);\n const { links } = node;\n for (let index = 0; index < links.length; index++) {\n const link = links[index];\n const bol = await link.exec(ctx);\n if (bol && link.dstNode) {\n await this.deepExec(link.dstNode, ctx);\n if (node.model.parallelOutput === false) {\n break;\n }\n }\n }\n }\n};\n\n// src/de-logic/index.ts\nvar deLogicMap = /* @__PURE__ */ new Map();\nasync function execDELogic(deDELogic, context, data, params) {\n if (!deLogicMap.has(deDELogic)) {\n deLogicMap.set(deDELogic, new DELogic(deDELogic));\n }\n const deLogic = deLogicMap.get(deDELogic);\n return deLogic.exec(context, data, params);\n}\nasync function execDELogicAction(deDELogic, context, data, params) {\n try {\n const result = await execDELogic(deDELogic, context, data, params);\n return new HttpResponse2(result);\n } catch (err) {\n if (err instanceof HttpError2) {\n return new HttpResponse2(err, 500);\n }\n throw err;\n }\n}\nasync function execFieldLogics(entity, type, context, data, params) {\n const fieldLogics = filterFieldLogics(entity, type);\n if (fieldLogics.length) {\n const promiseResult = await Promise.all(\n fieldLogics.map((logic) => {\n return execDELogic(logic, context, data, params);\n })\n );\n promiseResult.forEach((value) => {\n Object.assign(data, value);\n });\n }\n}\n\n// src/service/service/entity/method/de-action.ts\nvar DEActionMethod = class extends Method {\n async exec(context, data, params) {\n if (this.method.actionType === \"DELOGIC\") {\n const deLogic = findDELogic(this.method.appDELogicId, this.entity);\n if (!deLogic) {\n throw new RuntimeModelError18(this.method, \"\\u7F3A\\u5C11\\u5B9E\\u4F53\\u5904\\u7406\\u903B\\u8F91\");\n }\n return execDELogicAction(deLogic, context, data, params);\n }\n if (!this.isLocalMode) {\n data = await this.input.handle(context, data);\n }\n if (![\"READ\", \"GETDRAFT\"].includes(this.method.actionMode)) {\n await execFieldLogics(this.entity, \"change\", context, data, params);\n }\n let result;\n switch (this.method.codeName) {\n case \"Create\":\n result = await this.create(context, data, params);\n break;\n case \"Get\":\n result = await this.get(context, params);\n break;\n case \"GetDraft\":\n result = await this.getDraft(context, params);\n break;\n case \"Remove\":\n result = await this.remove(context, params);\n break;\n case \"Update\":\n result = await this.update(context, data, params);\n break;\n case \"CreateTemp\":\n result = await this.createTemp(context, data);\n break;\n case \"GetTemp\":\n result = await this.getTemp(context, data);\n break;\n case \"GetDraftTemp\":\n result = await this.getDraftTemp(context, params);\n break;\n case \"RemoveTemp\":\n result = await this.removeTemp(context, data);\n break;\n case \"UpdateTemp\":\n result = await this.updateTemp(context, data);\n break;\n default: {\n let path2 = this.calcPath(context);\n if (this.method.needResourceKey) {\n path2 = \"\".concat(path2, \"/\").concat(context[this.entity.codeName.toLowerCase()] || data[this.entity.keyAppDEFieldId]);\n }\n const res = await this.request(path2, context, data, params);\n res.data = await this.result.handle(context, res.data);\n result = res;\n }\n }\n await execFieldLogics(this.entity, \"compute\", context, result.data, params);\n return result;\n }\n /**\n * 创建数据\n *\n * @author chitanda\n * @date 2022-08-24 20:08:01\n * @param {IParams} context\n * @param {IData} data\n * @return {*} {Promise<IHttpResponse<IData>>}\n */\n async create(context, data, params) {\n if (this.isLocalMode) {\n return this.createTemp(context, this.createEntity(data));\n }\n const path2 = this.calcPath(context);\n const res = await this.app.net.post(path2, data, params);\n res.data = await this.result.handle(context, res.data);\n return res;\n }\n /**\n * 删除数据\n *\n * @author chitanda\n * @date 2022-08-24 20:08:56\n * @param {IParams} context\n * @param {IParams} [params]\n * @return {*} {Promise<IHttpResponse<IDataEntity>>}\n */\n async remove(context, params) {\n if (this.isLocalMode) {\n return this.removeTemp(context, params);\n }\n const path2 = this.calcPath(context);\n const res = await this.app.net.delete(\n \"\".concat(path2, \"/\").concat(context[this.entity.codeName.toLowerCase()]),\n params\n );\n return res;\n }\n /**\n * 更新数据\n *\n * @author chitanda\n * @date 2022-09-13 19:09:39\n * @param {IParams} context\n * @param {(IData | IDataEntity)} data\n * @param {IParams} [params={}]\n * @return {*} {Promise<IHttpResponse<IDataEntity>>}\n */\n async update(context, data, params = {}) {\n if (this.isLocalMode) {\n return this.updateTemp(context, this.createEntity(data));\n }\n const path2 = this.calcPath(context);\n const res = await this.app.net.put(\n \"\".concat(path2, \"/\").concat(context[this.entity.codeName.toLowerCase()]),\n data,\n params\n );\n res.data = await this.result.handle(context, res.data);\n return res;\n }\n /**\n * 获取数据\n *\n * @author chitanda\n * @date 2022-08-24 20:08:07\n * @param {IParams} context\n * @param {IParams} [params]\n * @return {*} {Promise<IHttpResponse<IDataEntity>>}\n */\n async get(context, params = {}) {\n if (this.isLocalMode) {\n return this.getTemp(context, params);\n }\n const path2 = this.calcPath(context);\n const res = await this.app.net.get(\n \"\".concat(path2, \"/\").concat(context[this.entity.codeName.toLowerCase()]),\n params\n );\n res.data = await this.result.handle(context, res.data);\n return res;\n }\n /**\n * 获取默认数据\n *\n * @author chitanda\n * @date 2022-08-24 20:08:26\n * @param {IParams} context\n * @param {IParams} [params]\n * @return {*} {Promise<IHttpResponse<IData>>}\n */\n async getDraft(context, params) {\n if (this.isLocalMode) {\n return this.getDraftTemp(context, params);\n }\n const path2 = this.calcPath(context);\n const res = await this.app.net.get(\"\".concat(path2, \"/getdraft\"), params);\n res.data = await this.result.handle(context, res.data);\n return res;\n }\n /**\n * 新建临时数据\n *\n * @author chitanda\n * @date 2022-08-21 17:08:45\n * @param {IParams} context\n * @param {IData} entity\n * @return {*} {Promise<IHttpResponse<IDataEntity>>}\n */\n async createTemp(context, entity) {\n try {\n const s = await this.getService();\n const data = await s.local.add(context, this.createEntity(entity));\n return new HttpResponse3(data);\n } catch (err) {\n return new HttpResponse3(err, 500);\n }\n }\n /**\n * 获取临时数据默认值\n *\n * @author chitanda\n * @date 2022-08-21 17:08:56\n * @param {IParams} context\n * @param {IParams} [params]\n * @return {*} {Promise<IHttpResponse<IDataEntity>>}\n */\n async getDraftTemp(_context, _params) {\n try {\n const data = this.createEntity({});\n if (data) {\n return new HttpResponse3(data);\n }\n return new HttpResponse3(data, 500);\n } catch (err) {\n return new HttpResponse3(err, 500);\n }\n }\n /**\n * 删除临时数据\n *\n * @author chitanda\n * @date 2022-08-21 17:08:11\n * @param {IParams} context\n * @param {IParams} [params]\n * @return {*} {Promise<IHttpResponse<IDataEntity>>}\n */\n async removeTemp(context, params) {\n try {\n let key = null;\n if (params) {\n }\n if (!key && context) {\n key = context[this.entity.codeName.toLowerCase()];\n }\n const s = await this.getService();\n const data = s.local.delete(context, key);\n if (data) {\n return new HttpResponse3(data);\n }\n return new HttpResponse3(data, 500);\n } catch (err) {\n return new HttpResponse3(err, 500);\n }\n }\n /**\n * 更新临时数据\n *\n * @author chitanda\n * @date 2022-08-21 17:08:17\n * @param {IParams} context\n * @param {IData} entity\n * @return {*} {Promise<IHttpResponse<IDataEntity>>}\n */\n async updateTemp(context, entity) {\n try {\n const s = await this.getService();\n const data = s.local.update(context, this.createEntity(entity));\n if (data) {\n return new HttpResponse3(data);\n }\n return new HttpResponse3(data, 500);\n } catch (err) {\n return new HttpResponse3(err, 500);\n }\n }\n /**\n * 获取临时数据\n *\n * @author chitanda\n * @date 2022-08-21 17:08:23\n * @param {IParams} context\n * @param {IParams} [params]\n * @return {*} {Promise<IHttpResponse<IDataEntity>>}\n */\n async getTemp(context, params) {\n try {\n let key = null;\n if (params) {\n }\n if (!key && context) {\n key = context[this.entity.codeName.toLowerCase()];\n }\n const s = await this.getService();\n const data = s.local.get(context, key);\n if (data) {\n return new HttpResponse3(data);\n }\n return new HttpResponse3(data, 500);\n } catch (err) {\n return new HttpResponse3(err, 500);\n }\n }\n /**\n * 批量删除本地数据\n *\n * @param {IParams} context\n * @param {IParams} [params]\n * @return {*} {Promise<IHttpResponse>}\n */\n async removeBatchTemp(_context, _params) {\n return new HttpResponse3(true);\n }\n};\n\n// src/service/service/entity/method/fetch.ts\nimport { HttpResponse as HttpResponse4 } from \"@ibiz-template/core\";\nimport { ascSort, descSort } from \"qx-util\";\nimport { clone as clone9, equals as equals2, isEmpty as isEmpty7, isNil as isNil7, where as where2 } from \"ramda\";\nvar FetchMethod = class extends Method {\n async exec(context, data, params) {\n if (this.isLocalMode) {\n const items2 = await this.searchLocal(\n null,\n new SearchFilter(context, data)\n );\n return new HttpResponse4(items2, 200);\n }\n const path2 = this.calcPath(context);\n const res = await this.request(path2, context, data, params);\n const items = res.data || [];\n res.data = items.map((item) => this.createEntity(item));\n if (res.data.length) {\n await Promise.all(\n res.data.map(\n (item) => execFieldLogics(this.entity, \"compute\", context, item, params)\n )\n );\n }\n return res;\n }\n /**\n * 查询本地数据,根据属性\n *\n * @param {IParams} context\n * @param {IParams} params 根据多实体属性查找,例:{ name: '张三', age: 18, parent: null }\n * @return {*} {Promise<IDataEntity[]>}\n */\n async selectLocal(context, params = {}) {\n const service = await this.getService();\n let items = service.local.getList(context);\n items = ascSort(items, \"srfordervalue\");\n const data = {};\n const nullData = {};\n const undefinedData = {};\n const emptyData = {};\n if (params.srfkey) {\n data.srfkey = equals2(params.srfkey);\n delete params.srfkey;\n }\n for (const key in params) {\n if (Object.prototype.hasOwnProperty.call(params, key)) {\n const val = params[key];\n if (val == null) {\n nullData[key] = equals2(null);\n undefinedData[key] = equals2(void 0);\n emptyData[key] = equals2(\"\");\n } else {\n data[key] = equals2(val);\n }\n }\n }\n if (!isEmpty7(data)) {\n const pred = where2(data);\n const nullPred = where2(nullData);\n const undefinedPred = where2(undefinedData);\n const emptyPred = where2(emptyData);\n items = items.filter((obj) => {\n if (isEmpty7(nullData)) {\n if (pred(obj)) {\n return true;\n }\n } else if (pred(obj) && (nullPred(obj) || undefinedPred(obj) || emptyPred(obj))) {\n return true;\n }\n return false;\n });\n }\n const list = items.map((obj) => obj.clone());\n return list;\n }\n /**\n * 搜索本地数据\n *\n * @protected\n * @param {PSDEDQCondEngine | null} cond 查询实例\n * @param {SearchFilter} filter 过滤对象\n * @param {string[]} [queryParamKeys=this.entity.quickSearchKeys] 当前实体支持快速搜索的属性\n * @return {*} {Promise<IDataEntity[]>}\n */\n async searchLocal(cond, filter, queryParamKeys = this.entity.quickSearchAppDEFieldIds) {\n const service = await this.getService();\n let list = [];\n if (cond) {\n list = service.local.getList(filter.context);\n if (list.length > 0) {\n list = list.filter((obj) => cond.test(obj, filter));\n }\n } else {\n list = await this.selectLocal(filter.context);\n if (list.length > 0) {\n if (filter.query && filter.query !== \"\") {\n if (queryParamKeys) {\n list = list.filter((obj) => {\n const reg2 = new RegExp(filter.query);\n for (let i = 0; i < queryParamKeys.length; i += 1) {\n const key = queryParamKeys[i];\n const val = obj[key];\n if (reg2.test(val)) {\n return true;\n }\n }\n return false;\n });\n }\n }\n }\n }\n if (!isNil7(filter.sortField) && !isEmpty7(filter.sortField)) {\n if (filter.sortMode === \"DESC\") {\n list = descSort(list, filter.sortField);\n } else {\n list = ascSort(list, filter.sortField);\n }\n }\n const { page, size } = filter;\n const start = page * size;\n const end = (page + 1) * size - 1;\n const items = list.slice(start, end).map((item) => clone9(item));\n return items;\n }\n};\n\n// src/service/service/entity/de.service.ts\nvar DEService = class {\n /**\n * Creates an instance of EntityService.\n *\n * @author chitanda\n * @date 2022-08-24 18:08:44\n * @param {IAppDataEntity} model 应用实体模型\n */\n constructor(model) {\n this.model = model;\n /**\n * 请求方法实例\n *\n * @author chitanda\n * @date 2022-10-10 12:10:13\n * @protected\n * @type {Map<string, Method>}\n */\n this.methodMap = /* @__PURE__ */ new Map();\n /**\n * 数据缓存\n *\n * @author chitanda\n * @date 2022-08-18 19:08:40\n * @type {DECache}\n */\n this.local = new DECache();\n this.wf = new WorkFlowService(model);\n this.file = new FileService(model);\n }\n /**\n * 获取实体服务方法实例\n *\n * @author chitanda\n * @date 2022-10-10 14:10:53\n * @protected\n * @param {string} id\n * @return {*} {Method}\n */\n getMethod(id) {\n if (this.methodMap.has(id)) {\n return this.methodMap.get(id);\n }\n const model = findModelChild(this.model.appDEMethods, id);\n let method = null;\n switch (model.methodType) {\n case \"DEACTION\":\n method = new DEActionMethod(this.model, model);\n break;\n case \"FETCH\":\n case \"FETCHTEMP\":\n method = new FetchMethod(this.model, model);\n break;\n default:\n throw new ModelError14(\n model,\n \"\\u672A\\u652F\\u6301\\u7684\\u670D\\u52A1\\u65B9\\u6CD5\\u7C7B\\u578B: \".concat(model.methodType)\n );\n }\n this.methodMap.set(id, method);\n return method;\n }\n /**\n * 执行服务方法\n *\n * @author chitanda\n * @date 2022-09-13 19:09:55\n * @param {string} id 执行服务方法标识\n * @param {IParams} context\n * @param {IData} [params={}] 请求参数\n * @param {IParams} [params2={}] 查询参数\n * @return {*} {Promise<IHttpResponse>}\n */\n exec(id, context, params = {}, params2 = {}) {\n const method = this.getMethod(id);\n if (method) {\n return method.exec(context, params, params2);\n }\n throw new RuntimeError10(\"\".concat(this.model.codeName, \"\\u672A\\u652F\\u6301\\u300C\").concat(id, \"\\u300D\\u65B9\\u6CD5\"));\n }\n};\n\n// src/service/vo/control.vo.ts\nimport { isNil as isNil8 } from \"ramda\";\nvar ControlVO = class _ControlVO {\n /**\n * 是否是新建数据,0为新建\n *\n * @author lxm\n * @date 2022-09-06 22:09:24\n * @type {Srfuf}\n */\n get srfuf() {\n if (isNil8(this.$origin.srfuf)) {\n return this.srfkey ? 1 /* UPDATE */ : 0 /* CREATE */;\n }\n return this.$origin.srfuf;\n }\n /**\n * 主键\n *\n * @author lxm\n * @date 2022-09-07 19:09:42\n * @type {string}\n */\n get srfkey() {\n return this.$origin.srfkey;\n }\n /**\n * 主信息\n *\n * @author lxm\n * @date 2022-09-07 19:09:42\n * @type {string}\n */\n get srfmajortext() {\n return this.$origin.srfmajortext;\n }\n /**\n * 实体模型标识\n *\n * @author lxm\n * @date 2022-09-07 19:09:42\n * @type {string}\n */\n get srfdeid() {\n return this.$origin.srfdeid;\n }\n /**\n * 实体模型代码名称\n *\n * @author lxm\n * @date 2022-09-07 19:09:42\n * @type {string}\n */\n get srfdecodename() {\n return this.$origin.srfdecodename;\n }\n /**\n * 实体主键属性\n *\n * @author lxm\n * @date 2022-09-07 19:09:42\n * @type {string}\n */\n get srfkeyfile() {\n return this.$origin.srfkeyfile;\n }\n /**\n * 实体主信息属性\n *\n * @author lxm\n * @date 2022-09-07 19:09:42\n * @type {string}\n */\n get srfmajorfile() {\n return this.$origin.srfmajorfile;\n }\n /**\n * Creates an instance of ControlVO.\n * @author lxm\n * @date 2022-09-05 15:09:10\n * @param {IData} origin 后台原始数据\n * @param {Map<string, string>} dataUIMap 转换映射map,key为转换后的属性,value为映射字段描述信息\n */\n constructor($origin = {}, $dataUIMap = /* @__PURE__ */ new Map()) {\n Object.defineProperty(this, \"$origin\", {\n enumerable: false,\n configurable: true,\n value: $origin || {}\n });\n Object.defineProperty(this, \"$dataUIMap\", {\n enumerable: false,\n configurable: true,\n value: $dataUIMap || /* @__PURE__ */ new Map()\n });\n this.$dataUIMap.forEach((mapField, key) => {\n const value = mapField.dataKey;\n this.linkProperty(key, value, mapField.isOriginField);\n });\n Object.keys($origin).forEach((value) => {\n if (!Object.prototype.hasOwnProperty.call(this, value)) {\n this.linkProperty(value, value);\n }\n });\n }\n /**\n * 关联实体属性\n *\n * @author lxm\n * @date 2022-10-18 15:10:48\n * @private\n * @param {string} uiKey 界面字段\n * @param {string} dataKey 数据字段\n * @param {boolean} [isOriginField=true] 是否是后台存储字段,是的话存取都在$origin里\n * @returns {*}\n */\n linkProperty(uiKey, dataKey, isOriginField = true) {\n if (uiKey === \"srfuf\") {\n return;\n }\n if (isOriginField || Object.prototype.hasOwnProperty.call(this.$origin, uiKey)) {\n Object.defineProperty(this, uiKey, {\n enumerable: true,\n configurable: true,\n get() {\n return this.$origin[dataKey];\n },\n set(val) {\n this.$origin[dataKey] = val;\n }\n });\n } else {\n Object.defineProperty(this, uiKey, {\n enumerable: true,\n configurable: true,\n writable: true,\n value: null\n });\n }\n }\n /**\n * 获取原始数据\n *\n * @author lxm\n * @date 2022-09-05 15:09:52\n * @returns {*}\n */\n getOrigin() {\n return this.$origin;\n }\n /**\n * 设置原始数据\n *\n * @author lxm\n * @date 2022-10-17 20:10:39\n * @param {IData} data\n */\n setOrigin(data) {\n this.$origin = data instanceof _ControlVO ? data.getOrigin() : data;\n }\n};\n\n// src/service/service/control/control.service.ts\nvar ControlService = class {\n /**\n * Creates an instance of ControlService.\n * @author lxm\n * @date 2022-08-29 18:08:08\n * @param {T} model\n */\n constructor(model) {\n /**\n * UI数据和实体数据的属性名映射\n * key:UI数据属性名\n * value: 映射属性描述信息\n *\n * @author lxm\n * @date 2022-08-31 17:08:35\n */\n this.dataUIMap = /* @__PURE__ */ new Map();\n this.model = model;\n }\n /**\n * 子类不可覆盖或重写此方法,在 init 时需要重写的使用 onInit 方法。\n *\n * @author lxm\n * @date 2022-08-18 22:08:30\n * @returns {*} {Promise<void>}\n */\n async init(context) {\n this.app = ibiz.hub.getApp(context == null ? void 0 : context.srfappid);\n this.initUIDataMap();\n }\n /**\n * 初始化属性映射\n *\n * @author lxm\n * @date 2022-08-31 18:08:37\n */\n initUIDataMap() {\n }\n /**\n * 执行服务方法\n *\n * @author lxm\n * @date 2022-08-31 17:08:41\n * @param {string} methodName 方法名\n * @param {IParams} context 上下文\n * @param {IParams} [params={}] 视图参数或数据\n * @returns {*} {Promise<IHttpResponse>}\n */\n async exec(methodName, context, data = {}, params = {}) {\n const res = await this.app.deService.exec(\n this.model.appDataEntityId,\n methodName,\n context,\n data,\n params\n );\n return res;\n }\n /**\n * 处理响应\n *\n * @author lxm\n * @date 2022-08-31 17:08:13\n * @param {IHttpResponse} res\n * @returns {*} {IHttpResponse}\n */\n handleResponse(res) {\n return res;\n }\n /**\n * 实体数据转ui数据\n *\n * @author lxm\n * @date 2022-08-31 17:08:15\n * @param {IData} entityData 实体数据\n * @returns {*} {IData}\n */\n toUIData(entityData) {\n return new ControlVO(entityData, this.dataUIMap);\n }\n};\n\n// src/service/service/control/md-control.service.ts\nimport { RuntimeError as RuntimeError11 } from \"@ibiz-template/core\";\nimport { isArray } from \"qx-util\";\nvar MDControlService = class extends ControlService {\n /**\n * 执行查询多条数据的方法\n *\n * @author lxm\n * @date 2022-08-31 17:08:41\n * @param {IParams} context 上下文\n * @param {IParams} [params={}] 视图参数\n * @returns {*} {Promise<IHttpResponse>}\n */\n async fetch(context, params = {}) {\n var _a;\n const fetchAction = ((_a = this.model.fetchControlAction) == null ? void 0 : _a.appDEMethodId) || \"fetchdefault\";\n let res = await this.exec(fetchAction, context, params);\n res = this.handleResponse(res);\n return res;\n }\n /**\n * 执行获取单条数据方法\n *\n * @author lxm\n * @date 2022-08-31 17:08:41\n * @param {IParams} context 上下文\n * @param {IParams} [params={}] 视图参数\n * @returns {*} {Promise<IHttpResponse>}\n */\n async get(context, params = {}) {\n var _a;\n const getAction = ((_a = this.model.getControlAction) == null ? void 0 : _a.appDEMethodId) || \"get\";\n let res = await this.exec(getAction, context, void 0, params);\n res = this.handleResponse(res);\n return res;\n }\n /**\n * 执行获取草稿方法\n *\n * @author lxm\n * @date 2022-08-31 17:08:41\n * @param {IParams} context 上下文\n * @param {IParams} [params={}] 视图参数\n * @returns {*} {Promise<IHttpResponse>}\n */\n async getDraft(context, params = {}) {\n var _a;\n const getDraftAction = ((_a = this.model.getDraftControlAction) == null ? void 0 : _a.appDEMethodId) || \"getdraft\";\n let res = await this.exec(getDraftAction, context, void 0, params);\n res = this.handleResponse(res);\n return res;\n }\n /**\n * 删除单条数据\n *\n * @author lxm\n * @date 2022-09-07 19:09:48\n * @param {IParams} context 上下文\n * @param {IParams} [params={}] 视图参数\n * @returns {*}\n */\n async remove(context, params = {}) {\n var _a;\n const removeAction = ((_a = this.model.removeControlAction) == null ? void 0 : _a.appDEMethodId) || \"remove\";\n const res = await this.exec(removeAction, context, void 0, params);\n return res;\n }\n /**\n * 新建数据\n *\n * @author lxm\n * @date 2022-09-07 19:09:11\n * @param {IParams} context 上下文\n * @param {ControlVO} data 数据\n * @returns {*}\n */\n async create(context, data) {\n var _a;\n const createAction = ((_a = this.model.createControlAction) == null ? void 0 : _a.appDEMethodId) || \"create\";\n let res = await this.exec(createAction, context, data.getOrigin());\n res = this.handleResponse(res);\n return res;\n }\n /**\n * 更新数据\n *\n * @author lxm\n * @date 2022-09-07 19:09:11\n * @param {IParams} context 上下文\n * @param {ControlVO} data 数据\n * @returns {*}\n */\n async update(context, data) {\n var _a;\n const updateAction = ((_a = this.model.updateControlAction) == null ? void 0 : _a.appDEMethodId) || \"update\";\n let res = await this.exec(updateAction, context, data.getOrigin());\n res = this.handleResponse(res);\n return res;\n }\n /**\n * 导出数据\n *\n * @author lxm\n * @date 2022-11-25 14:11:09\n * @param {IPSDEDataExport} dataExport 导出模型\n * @param {IParams} context 上下文\n * @param {IParams} [params={}] 请求参数\n * @returns {*} {Promise<IHttpResponse>}\n */\n async exportData(_dataExport, _context, _params = {}) {\n throw new RuntimeError11(\"\\u672A\\u5B9E\\u73B0\");\n }\n /**\n * 处理响应\n *\n * @author lxm\n * @date 2022-08-31 17:08:13\n * @param {IHttpResponse} res\n * @returns {*} {IHttpResponse}\n */\n handleResponse(response) {\n const res = super.handleResponse(response);\n if (res.headers) {\n if (res.headers[\"x-page\"]) {\n res.page = Number(res.headers[\"x-page\"]);\n }\n if (res.headers[\"x-per-page\"]) {\n res.size = Number(res.headers[\"x-per-page\"]);\n }\n if (res.headers[\"x-total\"]) {\n res.total = Number(res.headers[\"x-total\"]);\n }\n }\n if (res.ok) {\n if (isArray(res.data)) {\n res.data = res.data.map((item) => this.toUIData(item));\n } else {\n res.data = this.toUIData(res.data);\n }\n }\n return res;\n }\n};\n\n// src/service/service/authority/authority.service.ts\nimport { RuntimeError as RuntimeError12 } from \"@ibiz-template/core\";\n\n// src/service/service/authority/de-authority.service.ts\nvar DeAuthorityService = class {\n constructor(entityModel) {\n this.entityModel = entityModel;\n }\n /**\n * 通过操作标识计算权限\n * @author lxm\n * @date 2023-05-10 12:33:10\n * @param {string} dataAccessAction 操作标识\n * @param {IData} [data] 实体数据\n * @param {string} [appDeId] 应用实体id\n * @return {*} {Promise<boolean>}\n */\n async calcByDataAccessAction(dataAccessAction, data) {\n if (data.srfopprivs && !data.srfopprivs.includes(dataAccessAction)) {\n return false;\n }\n const mainStateResult = await this.calcByDeMainState(\n dataAccessAction,\n data\n );\n if (!mainStateResult) {\n return false;\n }\n return true;\n }\n /**\n * 通过实体主状态计算权限\n * @author lxm\n * @date 2023-05-10 01:15:43\n * @param {string} dataAccessAction 权限操作标识\n * @param {IData} data 当前数据\n * @param {string} appDeId 应用实体id\n * @return {*} {Promise<boolean>}\n */\n async calcByDeMainState(dataAccessAction, data) {\n let result = true;\n const appDataEntity = this.entityModel;\n if (!appDataEntity.enableDEMainState) {\n ibiz.log.debug(\n \"\".concat(appDataEntity.codeName, \"\\u5B9E\\u4F53\\u4E0D\\u5B58\\u5728\\u6216\\u8005\\u4E3A\\u542F\\u7528\\u4E3B\\u72B6\\u6001\\uFF0C\\u8FD4\\u56DEtrue\")\n );\n return result;\n }\n ibiz.log.debug(\n \"\\u64CD\\u4F5C\\u6807\\u8BC6\".concat(dataAccessAction, \"\\u4E3B\\u72B6\\u6001\\u8BA1\\u7B97\\u5F00\\u59CB\"),\n data,\n appDataEntity\n );\n const match = matchMainState(appDataEntity, data);\n if (match) {\n ibiz.log.debug(\"\\u5339\\u914D\\u4E3B\\u72B6\\u6001\", match);\n const opprivs = calcMainStateOPPrivsStrs(match, appDataEntity);\n ibiz.log.debug(\"\\u5141\\u8BB8\\u7684\\u4E3B\\u72B6\\u6001\\u6743\\u9650\\u96C6\\u5408\", opprivs);\n result = opprivs.includes(dataAccessAction);\n } else {\n ibiz.log.debug(\"\\u6CA1\\u5339\\u914D\\u4E3B\\u72B6\\u6001\\uFF0C\\u8FD4\\u56DEfalse\");\n result = false;\n }\n ibiz.log.debug(\"\\u64CD\\u4F5C\\u6807\\u8BC6\".concat(dataAccessAction, \"\\u6743\\u9650\\u8BA1\\u7B97\\u7ED3\\u675F\\uFF1A\").concat(result));\n return result;\n }\n};\n\n// src/service/service/authority/authority.service.ts\nvar AuthorityService = class {\n constructor(appModel) {\n this.appModel = appModel;\n /**\n * 实体服务缓存\n *\n * @author chitanda\n * @date 2022-08-17 23:08:36\n * @protected\n * @type {Map<string, IAppDEService>}\n */\n this.cache = /* @__PURE__ */ new Map();\n /**\n * 实体服务构造方法缓存\n *\n * @author chitanda\n * @date 2022-08-17 23:08:36\n * @protected\n * @type {Map<string, IAppDEService>}\n */\n this.constructorCache = /* @__PURE__ */ new Map();\n /**\n * 统一资源集合\n *\n * @author lxm\n * @date 2022-10-12 17:10:46\n * @private\n * @type {string[]}\n */\n this.resCodes = [];\n /**\n * 是否启用权限校验\n * @author lxm\n * @date 2022-10-14 19:10:50\n * @private\n * @type {boolean}\n */\n this.enablePermission = false;\n }\n /**\n * 注册服务工厂方法\n *\n * @author chitanda\n * @date 2023-06-14 10:06:21\n * @param {string} id\n * @param {(\n * entityModel: IAppDataEntity,\n * ) => Promise<IAppDeAuthorityService>} constructor\n */\n register(id, constructor) {\n this.constructorCache.set(id, constructor);\n }\n /**\n * 根据实体标识获取实体服务\n *\n * @author chitanda\n * @date 2022-12-23 10:12:24\n * @param {string} id 实体标识\n * @param {IParams} [context] 上下文,用于计算模型所属沙箱环境\n * @return {*} {Promise<IAppDEService>}\n */\n async getService(id) {\n if (!this.cache.has(id)) {\n const entityModel = await ibiz.hub.getAppDataEntity(\n id,\n this.appModel.appId\n );\n if (!entityModel) {\n throw new RuntimeError12(\"\\u672A\\u627E\\u5230\\u5E94\\u7528\\u5B9E\\u4F53[\".concat(id, \"]\"));\n }\n const constructor = this.constructorCache.get(id);\n let service;\n if (constructor) {\n service = await constructor(entityModel);\n } else {\n service = new DeAuthorityService(entityModel);\n }\n this.cache.set(id, service);\n }\n return this.cache.get(id);\n }\n /**\n * 权限服务初始化\n *\n * @author lxm\n * @date 2022-10-13 15:10:44\n * @param {*} [appData=ibiz.appData]\n * @returns {*} {Promise<void>}\n */\n async init(appData = ibiz.appData) {\n if (!appData) {\n throw new RuntimeError12(\"\\u6CA1\\u6709appData\\u6570\\u636E\");\n }\n if (appData.unires) {\n this.resCodes = appData.unires;\n }\n if (appData.enablepermissionvalid === true && ibiz.env.enablePermission) {\n this.enablePermission = true;\n }\n }\n /**\n * 通过统一资源标识计算权限\n * @author lxm\n * @date 2023-05-10 12:29:53\n * @param {string} resCode\n */\n calcByResCode(resCode) {\n return !this.enablePermission || this.resCodes.includes(resCode);\n }\n /**\n * 通过操作标识计算权限\n * @author lxm\n * @date 2023-05-10 12:33:10\n * @param {string} dataAccessAction 操作标识\n * @param {IData} [data] 实体数据\n * @param {string} [appDeId] 应用实体id\n * @return {*} {Promise<boolean>}\n */\n async calcByDataAccessAction(dataAccessAction, data, appDeId) {\n const result = true;\n if (this.enablePermission) {\n const app = await ibiz.hub.getApp(this.appModel.appId);\n const opPriv = await app.getOPPriv(dataAccessAction, appDeId);\n if (this.enablePermission && (opPriv == null ? void 0 : opPriv.mapSysUniResCode) && !this.calcByResCode(opPriv.mapSysUniResCode)) {\n return false;\n }\n }\n if (data && appDeId) {\n const service = await this.getService(appDeId);\n return service.calcByDataAccessAction(dataAccessAction, data);\n }\n return result;\n }\n};\n\n// src/service/service/auth/auth.service.ts\nvar AuthService = class {\n /**\n * v7 uaa 登录\n *\n * @author chitanda\n * @date 2022-07-19 18:07:54\n * @param {string} loginname\n * @param {string} password\n * @return {*} {Promise<IHttpResponse>}\n */\n async v7login(loginname, password) {\n const res = await ibiz.net.post(\n \"/v7/login\",\n { loginname, password },\n {},\n {\n // sass 模式下,注册在 sassMgr 管理平台的应用中心系统标识\n // srfdcsystem: ibiz.env.dcSystem,\n }\n );\n return res;\n }\n /**\n * v7 uaa 登出\n *\n * @author chitanda\n * @date 2022-09-14 18:07:54\n * @return {*} {Promise<IHttpResponse>}\n */\n async v7logout() {\n const res = await ibiz.net.get(\"/v7/logout\", {});\n return res;\n }\n};\n\n// src/service/vo/tree-node-data/tree-node-data.ts\nvar TreeNodeData = class {\n constructor(model, parentNodeData, opts) {\n this.leaf = false;\n this.leaf = opts.leaf === true;\n this.parent = parentNodeData;\n if (this.parent) {\n this.context = { ...this.parent.context };\n }\n if (opts.navContext) {\n this.context = Object.assign(this.context || {}, opts.navContext);\n }\n if (opts.navParams) {\n this.params = { ...opts.navParams };\n }\n this.nodeId = model.id;\n }\n};\n\n// src/service/vo/tree-node-data/tree-code-list-node-data.ts\nvar TreeCodeListNodeData = class extends TreeNodeData {\n constructor(model, parentNodeData, opts) {\n super(model, parentNodeData, opts);\n const { data } = opts;\n this.deData = data;\n this.text = data.text;\n this.value = data.value;\n this.id = parentNodeData ? \"\".concat(parentNodeData.id, \":\").concat(model.id, \"@\").concat(this.value) : model.id + this.value;\n this.id = this.id.toLowerCase();\n if (model.appDataEntityId) {\n const deName = calcDeCodeNameById(model.appDataEntityId);\n this.context = Object.assign(this.context || {}, {\n [deName]: this.value\n });\n }\n this.srfkey = this.value;\n this.srfmajortext = this.text;\n }\n};\n\n// src/service/vo/tree-node-data/tree-data-set-node-data.ts\nvar TreeDataSetNodeData = class extends TreeNodeData {\n constructor(model, parentNodeData, opts) {\n super(model, parentNodeData, opts);\n const { data } = opts;\n this.deData = data;\n this.text = data.srfmajortext;\n this.value = data.srfkey;\n this.id = parentNodeData ? \"\".concat(parentNodeData.id, \":\").concat(model.id, \"@\").concat(data.srfkey) : model.id + data.srfkey;\n this.id = this.id.toLowerCase();\n if (model.appDataEntityId) {\n const deName = calcDeCodeNameById(model.appDataEntityId);\n this.context = Object.assign(this.context || {}, {\n [deName]: data.srfkey\n });\n }\n this.srfkey = this.deData.srfkey;\n this.srfmajortext = this.deData.srfmajortext;\n }\n};\n\n// src/service/vo/tree-node-data/tree-static-node-data.ts\nvar TreeStaticNodeData = class extends TreeNodeData {\n constructor(model, parentNodeData, opts) {\n var _a, _b;\n super(model, parentNodeData, opts);\n const nodeValue = model.nodeValue === \"root\" ? void 0 : model.nodeValue;\n this.id = parentNodeData ? \"\".concat(parentNodeData.id, \":\").concat(model.id) : model.id;\n this.id = this.id.toLowerCase();\n this.text = model.text;\n this.value = nodeValue;\n if (parentNodeData && opts.parentValueLevel) {\n let parent = parentNodeData;\n for (let index = 1; index < opts.parentValueLevel; index++) {\n parent = parent == null ? void 0 : parent.parent;\n }\n if (parent == null ? void 0 : parent.deData) {\n this.deData = parent.deData;\n }\n this.value = nodeValue || (parent == null ? void 0 : parent.value);\n }\n this.srfkey = ((_a = this.deData) == null ? void 0 : _a.srfkey) || this.value;\n this.srfmajortext = ((_b = this.deData) == null ? void 0 : _b.srfmajortext) || this.text;\n }\n};\n\n// src/service/vo/ui-map-field.ts\nimport { isNil as isNil9 } from \"ramda\";\nvar UIMapField = class {\n constructor(uiKey, dataKey, opts = {}) {\n /**\n * 是否存储到origin里面(默认false)\n *\n * @author lxm\n * @date 2022-10-18 14:10:24\n * @type {boolean}\n */\n this.isOriginField = false;\n /**\n * 是否是请求需要的字段(默认true)\n *\n * @author lxm\n * @date 2022-10-18 14:10:44\n * @type {boolean}\n */\n this.isRequestNeed = true;\n this.uiKey = uiKey;\n this.dataKey = dataKey;\n if (!isNil9(opts.isOriginField)) {\n this.isOriginField = opts.isOriginField;\n }\n }\n};\n\n// src/service/de-service-util.ts\nimport { RuntimeError as RuntimeError13 } from \"@ibiz-template/core\";\nvar DEServiceUtil = class {\n /**\n * Creates an instance of DEServiceUtil.\n *\n * @author chitanda\n * @date 2023-04-18 14:04:01\n * @param {IApplication} appModel\n */\n constructor(appModel) {\n this.appModel = appModel;\n /**\n * 实体服务缓存\n *\n * @author chitanda\n * @date 2022-08-17 23:08:36\n * @protected\n * @type {Map<string, IAppDEService>}\n */\n this.cache = /* @__PURE__ */ new Map();\n /**\n * 实体服务构造方法缓存\n * @author lxm\n * @date 2023-05-15 08:37:13\n * @protected\n */\n this.constructorCache = /* @__PURE__ */ new Map();\n }\n /**\n * 注册服务工厂方法\n *\n * @author chitanda\n * @date 2023-06-14 10:06:31\n * @param {string} id\n * @param {(entityModel: IAppDataEntity) => Promise<IAppDEService>} constructor\n */\n register(id, constructor) {\n this.constructorCache.set(id, constructor);\n }\n /**\n * 根据实体标识获取实体服务\n *\n * @author chitanda\n * @date 2022-12-23 10:12:24\n * @param {string} id 实体标识\n * @param {IParams} [context] 上下文,用于计算模型所属沙箱环境\n * @return {*} {Promise<IAppDEService>}\n */\n async getService(id) {\n if (!this.cache.has(id)) {\n const entityModel = await ibiz.hub.getAppDataEntity(\n id,\n this.appModel.appId\n );\n if (!entityModel) {\n throw new RuntimeError13(\"\\u672A\\u627E\\u5230\\u5E94\\u7528\\u5B9E\\u4F53[\".concat(id, \"]\"));\n }\n const constructor = this.constructorCache.get(id);\n let service;\n if (constructor) {\n service = await constructor(entityModel);\n } else {\n service = new DEService(entityModel);\n }\n this.cache.set(id, service);\n }\n return this.cache.get(id);\n }\n /**\n * 清理所有服务, 当前临时域下的所有临时数据缓存\n *\n * @description 根据 srfsessionid 作为临时数据域\n * @author chitanda\n * @date 2022-08-18 14:08:48\n * @param {IParams} context\n */\n clearTempCache(context) {\n this.cache.forEach((service) => {\n service.local.clear(context);\n });\n }\n /**\n * 执行服务方法\n * @author lxm\n * @date 2023-04-26 02:02:43\n * @param {string} appDataEntityId 实体名称\n * @param {string} methodName 方法名\n * @param {IParams} context 上下文\n * @param {(IData | undefined)} [params] 数据\n * @param {(IParams | undefined)} [params2] 视图参数\n * @return {*} {Promise<IHttpResponse<IData>>}\n */\n async exec(appDataEntityId, methodName, context, params, params2) {\n const service = await this.getService(appDataEntityId);\n return service.exec(methodName, context, params, params2);\n }\n};\n\n// src/app-hub.ts\nimport { RuntimeError as RuntimeError15 } from \"@ibiz-template/core\";\n\n// src/application.ts\nimport { Net } from \"@ibiz-template/core\";\nvar Application = class {\n /**\n * Creates an instance of Application.\n *\n * @author chitanda\n * @date 2022-12-22 15:12:26\n * @param {IApplication} model\n */\n constructor(model) {\n this.model = model;\n /**\n * 应用实体名称到应用实体代码名称的映射\n *\n * @author chitanda\n * @date 2023-06-14 17:06:02\n * @type {Map<string, string>}\n */\n this.deName2DeCodeName = /* @__PURE__ */ new Map();\n this.net = new Net({\n baseURL: \"\".concat(ibiz.env.baseUrl, \"/\").concat(model.appId)\n });\n this.deService = new DEServiceUtil(model);\n this.codeList = new CodeListService(model);\n this.authority = new AuthorityService(model);\n }\n /**\n * 当前应用标识\n *\n * @author chitanda\n * @date 2023-04-19 22:04:55\n * @readonly\n * @type {string}\n */\n get appId() {\n return this.model.appId;\n }\n /**\n * 初始化应用\n *\n * @author chitanda\n * @date 2023-04-19 11:04:02\n * @return {*} {Promise<void>}\n */\n async init() {\n await this.authority.init();\n await this.loadAppModelStyle();\n }\n /**\n * 加载应用模型全局样式\n *\n * @author chitanda\n * @date 2023-07-24 20:07:41\n * @protected\n * @return {*} {Promise<void>}\n */\n async loadAppModelStyle() {\n await this.net.get(\"\".concat(ibiz.env.remoteModelUrl, \"/PSSYSAPP.json.css\")).then((res) => {\n const dom = document.createElement(\"style\");\n dom.setAttribute(\"type\", \"text/css\");\n if (res.request && res.request.responseURL) {\n const url = new URL(res.request.responseURL);\n dom.id = url.pathname;\n }\n dom.innerHTML = res.data;\n document.head.appendChild(dom);\n }).catch((err) => {\n ibiz.log.error(\n \"\\u5E94\\u7528[\".concat(this.appId, \"]\\u6A21\\u578B\\u5168\\u5C40\\u6837\\u5F0F\\u52A0\\u8F7D\\u5931\\u8D25\\uFF1A\").concat(err.message)\n );\n });\n }\n /**\n * 根据 id 查找应用功能\n *\n * @author chitanda\n * @date 2023-04-20 17:04:24\n * @param {string} id\n * @return {*} {(IAppFunc | null)}\n */\n getAppFunc(id) {\n const items = this.model.appFuncs || [];\n const item = items.find((func) => func.id === id);\n return item || null;\n }\n /**\n * 获取界面行为模型\n * @author lxm\n * @date 2023-04-28 05:44:14\n * @param {string} actionId\n * @param {string} [_appDataEntityId]\n * @return {*}\n */\n async getUIAction(actionId) {\n const [, appDeId] = actionId.split(\"@\");\n if (appDeId) {\n const appDataEntity = await ibiz.hub.getAppDataEntity(\n appDeId,\n this.model.appId\n );\n const find = appDataEntity.appDEUIActions.find((action) => {\n return action.id === actionId;\n });\n if (find) {\n return find;\n }\n }\n return this.model.appDEUIActions.find((action) => {\n return action.id === actionId;\n });\n }\n /**\n * 获取操作标识模型\n * @author lxm\n * @date 2023-05-10 11:24:17\n * @param {string} id\n * @param {string} [appDataEntityId]\n * @return {*} {(Promise<IDEOPPriv | undefined>)}\n */\n async getOPPriv(id, appDataEntityId) {\n var _a, _b;\n let result = (_a = this.model.deopprivs) == null ? void 0 : _a.find((item) => item.name === id);\n if (!result && appDataEntityId) {\n const appDataEntity = await ibiz.hub.getAppDataEntity(\n appDataEntityId,\n this.model.appId\n );\n result = (_b = appDataEntity.deopprivs) == null ? void 0 : _b.find((item) => item.name === id);\n }\n return result;\n }\n /**\n * 查找实体的界面逻辑模型\n * @author lxm\n * @date 2023-06-14 07:20:30\n * @param {string} deUILogicId\n * @param {string} appDataEntityId\n * @return {*} {(Promise<IDEUILogic | undefined>)}\n */\n async getDEUILogic(deUILogicId, appDataEntityId) {\n const appDataEntity = await ibiz.hub.getAppDataEntity(\n appDataEntityId,\n this.model.appId\n );\n return appDataEntity.appDEUILogics.find((logic) => {\n return logic.id === deUILogicId;\n });\n }\n};\n\n// src/hub/convert/app-menu-convert/app-menu-convert.ts\nvar AppMenuConvert = class {\n /**\n * 转化\n *\n * @author chitanda\n * @date 2023-04-19 14:04:46\n * @param {IAppMenu} appMenu\n * @return {*} {IAppMenu}\n */\n parse(appMenu) {\n return appMenu;\n }\n};\n\n// src/hub/convert/convert.ts\nvar Convert = class {\n constructor() {\n /**\n * 应用菜单转换器\n *\n * @author chitanda\n * @date 2023-04-19 14:04:54\n */\n this.appMenu = new AppMenuConvert();\n }\n};\n\n// src/hub/config/app-view-config-service.ts\nimport { RuntimeError as RuntimeError14 } from \"@ibiz-template/core\";\nvar AppViewConfigService = class {\n constructor() {\n /**\n * 视图配置信息集合\n * @author lxm\n * @date 2023-07-03 07:08:33\n */\n this.viewConfigs = /* @__PURE__ */ new Map();\n }\n set(id, viewConfig) {\n this.viewConfigs.set(id, viewConfig);\n }\n async get(key) {\n if (!this.viewConfigs.has(key)) {\n const model = await ibiz.hub.getAppView(key);\n if (!model) {\n throw new RuntimeError14(\"\\u89C6\\u56FE[\".concat(key, \"]\\u4E0D\\u5B58\\u5728\"));\n }\n this.set(model.id, {\n id: model.id,\n codeName: model.codeName,\n openMode: model.openMode,\n width: model.width,\n height: model.height,\n appDataEntityId: model.appDataEntityId,\n redirectView: model.redirectView\n });\n }\n return this.viewConfigs.get(key);\n }\n};\n\n// src/hub/config/app-config-service.ts\nvar AppConfigService = class {\n constructor() {\n this.view = new AppViewConfigService();\n }\n};\n\n// src/app-hub.ts\nvar AppHub = class {\n constructor() {\n /**\n * 多应用模式下,应用模型转换器\n *\n * @author chitanda\n * @date 2023-04-23 15:04:06\n * @type {Convert}\n */\n this.convert = new Convert();\n /**\n * 应用总集\n *\n * @author chitanda\n * @date 2022-12-21 14:12:45\n * @protected\n * @type {Map<string, Application>}\n */\n this.appMap = /* @__PURE__ */ new Map();\n /**\n * 实例化的应用模型\n *\n * @author chitanda\n * @date 2023-04-17 23:04:45\n * @protected\n * @type {Map<string, IApplication>}\n */\n this.apps = /* @__PURE__ */ new Map();\n /**\n * 当前基座下所有的应用视图\n *\n * @author chitanda\n * @date 2023-04-17 11:04:20\n * @protected\n * @type {Map<string, string>} Map<视图 id, 视图所属应用>\n */\n this.view2appMap = /* @__PURE__ */ new Map();\n /**\n * 实例化的应用视图模型\n *\n * @author chitanda\n * @date 2023-04-17 23:04:00\n * @protected\n * @type {Map<string, IAppView>}\n */\n this.views = /* @__PURE__ */ new Map();\n /**\n * 应用实体实例模型\n *\n * @author chitanda\n * @date 2023-04-17 23:04:32\n * @protected\n * @type {Map<string, Map<string, IAppDataEntity>>}\n */\n this.dataEntities = /* @__PURE__ */ new Map();\n /**\n * hub配置信息服务\n * @author lxm\n * @date 2023-07-03 07:12:05\n */\n this.config = new AppConfigService();\n /**\n * 默认首页视图名称\n *\n * @author chitanda\n * @date 2023-04-19 20:04:22\n * @type {string}\n */\n this.defaultAppIndexViewName = \"Index\";\n }\n /**\n * 计算应用视图 标识\n *\n * @author chitanda\n * @date 2023-04-20 18:04:48\n * @protected\n * @param {string} tag\n * @return {*} {string}\n */\n calcAppViewId(tag) {\n let id = \"\";\n if (tag.indexOf(\".\") !== -1) {\n const ids = tag.split(\".\");\n id = ids[ids.length - 1];\n } else {\n id = tag.toLowerCase();\n }\n return id;\n }\n /**\n * 注册模型加载适配器\n *\n * @author chitanda\n * @date 2023-04-17 23:04:14\n * @param {ModelLoaderProvider} provider\n */\n registerModelLoaderProvider(provider) {\n this.modelLoaderProvider = provider;\n }\n /**\n * 注册应用实例模型\n *\n * @author chitanda\n * @date 2023-04-17 23:04:29\n * @param {IApplication} model\n */\n registerApp(model) {\n this.apps.set(model.codeName, model);\n }\n /**\n * 注册应用视图实例模型\n *\n * @author chitanda\n * @date 2023-04-17 23:04:42\n * @param {IAppView} model\n */\n registerAppView(model) {\n this.views.set(model.codeName, model);\n }\n /**\n * 注册应用实体\n *\n * @author chitanda\n * @date 2023-04-17 23:04:24\n * @param {IAppDataEntity} model\n * @param {string} [appId=ibiz.env.appId]\n */\n registerAppDataEntity(model, appId = ibiz.env.appId) {\n if (!this.dataEntities.has(appId)) {\n this.dataEntities.set(appId, /* @__PURE__ */ new Map());\n }\n const map = this.dataEntities.get(appId);\n map.set(model.id, model);\n }\n /**\n * 设置应用视图所属应用\n *\n * @author chitanda\n * @date 2023-04-17 23:04:37\n * @param {string} tag 视图 codeName 或者视图 id\n * @param {string} [appId=ibiz.env.appId]\n */\n setAppView(tag, appId = ibiz.env.appId) {\n const id = this.calcAppViewId(tag);\n this.view2appMap.set(id, appId);\n }\n /**\n * 判断应用视图是否存在\n *\n * @author chitanda\n * @date 2023-04-20 18:04:00\n * @param {string} tag 视图 codeName 或者视图 id\n * @return {*} {boolean}\n */\n hasAppView(tag) {\n const id = this.calcAppViewId(tag);\n return this.view2appMap.has(id);\n }\n /**\n * 根据视图代码名称查找视图\n *\n * @author chitanda\n * @date 2023-04-17 21:04:14\n * @param {string} tag 视图 codeName 或者视图 id\n * @return {*} {Promise<IAppView>}\n */\n async getAppView(tag) {\n const id = this.calcAppViewId(tag);\n const appId = this.view2appMap.get(id) || ibiz.env.appId;\n if (!this.appMap.has(appId)) {\n await this.createApp(appId);\n }\n if (this.views.has(id)) {\n return this.views.get(id);\n }\n if (this.modelLoaderProvider) {\n const appView = await this.modelLoaderProvider.getAppView(appId, id);\n this.registerAppView(appView);\n return appView;\n }\n throw new RuntimeError15(\"\\u89C6\\u56FE[\".concat(id, \"]\\u4E0D\\u5B58\\u5728\"));\n }\n /**\n * 根据应用实体代码名称查找应用视图\n *\n * @author chitanda\n * @date 2023-04-17 23:04:08\n * @param {string} name\n * @param {string} [appId=ibiz.env.appId]\n * @return {*} {Promise<IAppDataEntity>}\n */\n async getAppDataEntity(id, appId = ibiz.env.appId) {\n if (this.dataEntities.has(appId)) {\n const map = this.dataEntities.get(appId);\n if (map.has(id)) {\n return map.get(id);\n }\n }\n if (this.modelLoaderProvider) {\n let entity;\n if (id.indexOf(\".\") !== -1) {\n entity = await this.modelLoaderProvider.getAppDataEntity(appId, id);\n } else {\n entity = await this.modelLoaderProvider.getAppDataEntityByCodeName(\n appId,\n id\n );\n }\n this.registerAppDataEntity(entity, appId);\n return entity;\n }\n throw new RuntimeError15(\"\\u672A\\u627E\\u5230\\u5E94\\u7528\\u5B9E\\u4F53[\".concat(id, \"]\"));\n }\n /**\n * 新建 hub 应用\n *\n * @author chitanda\n * @date 2023-04-17 21:04:11\n * @param {string} id\n * @return {*} {Promise<Application>}\n */\n async createApp(id) {\n if (this.appMap.has(id)) {\n return this.appMap.get(id);\n }\n let appModel;\n if (this.apps.has(id)) {\n appModel = this.apps.get(id);\n } else if (this.modelLoaderProvider) {\n appModel = await this.modelLoaderProvider.getApp(id);\n this.registerApp(appModel);\n } else {\n throw new RuntimeError15(\"\\u672A\\u627E\\u5230\\u5E94\\u7528[\".concat(id, \"]\\u6A21\\u578B\"));\n }\n const app = new Application(appModel);\n this.appMap.set(id, app);\n await app.init();\n return app;\n }\n /**\n * 异步获取应用对象,用于不确定应用是否已经加载的情况\n *\n * @author chitanda\n * @date 2023-04-17 21:04:41\n * @param {string} [key=ibiz.env.appId]\n * @return {*} {Promise<Application>}\n */\n async getAppAsync(key = ibiz.env.appId) {\n return this.createApp(key);\n }\n /**\n * 根据应用 id 或应用模型获取应用实例\n *\n * @author chitanda\n * @date 2023-04-17 22:04:42\n * @param {(string | IApplication)} [app]\n * @return {*} {Application}\n */\n getApp(app) {\n let key = null;\n if (app) {\n if (app instanceof Object) {\n key = app.id;\n } else {\n key = app;\n }\n } else {\n key = ibiz.env.appId;\n }\n return this.appMap.get(key);\n }\n};\n\n// src/engine/engine-factory.ts\nvar EngineFactory = class {\n constructor() {\n /**\n * 视图引擎classMap\n * @author lxm\n * @date 2023-04-25 07:28:36\n * @protected\n */\n this.viewEngines = /* @__PURE__ */ new Map();\n }\n /**\n * 注册视图引擎\n * @author lxm\n * @date 2023-04-25 07:40:23\n * @param {string} key\n * @param {IViewEngine} engine\n */\n register(key, engine) {\n this.viewEngines.set(key, engine);\n }\n /**\n * 注销视图引擎\n * @author lxm\n * @date 2023-04-25 07:40:32\n * @param {string} key\n */\n unRegister(key) {\n this.viewEngines.delete(key);\n }\n /**\n * 获取视图引擎\n * @author lxm\n * @date 2023-05-04 02:26:34\n * @param {IAppView} model\n * @param {IViewController} viewController 视图控制器\n * @return {*} {(ViewEngine | undefined)}\n */\n getEngine(model, ...args) {\n const { engineType, engineCat } = model;\n const key = \"\".concat(engineCat, \"_\").concat(engineType);\n const func = this.viewEngines.get(key);\n if (func) {\n return func(...args);\n }\n ibiz.log.error(\"\\u6CA1\\u6709\".concat(key, \"\\u5BF9\\u5E94\\u7684\\u5F15\\u64CE\"), model);\n }\n};\n\n// src/engine/view-base.engine.ts\nimport { RuntimeError as RuntimeError16 } from \"@ibiz-template/core\";\nvar ViewEngineBase = class {\n /**\n * 构造函数在视图控制器的构造函数逻辑内部执行\n * @author lxm\n * @date 2023-05-06 08:18:28\n * @param {IViewController} view 视图控制器\n */\n constructor(view) {\n this.view = view;\n this.initViewState();\n }\n /**\n * 获取工具栏控制器\n * @author lxm\n * @date 2023-05-22 03:47:43\n * @readonly\n * @protected\n * @type {(IToolbarController | undefined)}\n */\n get toolbar() {\n return this.view.getController(\"toolbar\");\n }\n /**\n * 左工具栏\n * @author lxm\n * @date 2023-06-20 02:36:45\n * @readonly\n * @protected\n * @type {(IToolbarController | undefined)}\n */\n get leftToolbar() {\n return this.view.getController(\"lefttoolbar\");\n }\n /**\n * 右工具栏\n * @author lxm\n * @date 2023-06-20 02:36:45\n * @readonly\n * @protected\n * @type {(IToolbarController | undefined)}\n */\n get rightToolbar() {\n return this.view.getController(\"righttoolbar\");\n }\n /**\n * 右工具栏\n * @author lxm\n * @date 2023-06-20 02:36:45\n * @readonly\n * @protected\n * @type {(IToolbarController | undefined)}\n */\n get footerToolbar() {\n return this.view.getController(\"footertoolbar\");\n }\n /**\n * 获取视图布局面板控制器\n * @author lxm\n * @date 2023-05-22 03:47:43\n * @readonly\n * @protected\n * @type {(IToolbarController | undefined)}\n */\n get viewLayoutPanel() {\n return this.view.layoutPanel;\n }\n async onCreated() {\n const { childNames } = this.view;\n childNames.push(\"captionbar\", \"toolbar\");\n }\n async onMounted() {\n var _a, _b;\n const { model, childNames } = this.view;\n ibiz.log.debug(\"\".concat(model.id, \"\\u7684\\u5B50\\u7EC4\\u4EF6\\uFF1A\").concat(childNames.join(\";\"), \"\\u90FD\\u5DF2mounted\"));\n const showHeader = this.calcViewHeaderVisible();\n if (!showHeader) {\n const controller = (_a = this.viewLayoutPanel) == null ? void 0 : _a.panelItems.view_header;\n if (controller) {\n controller.state.visible = false;\n }\n }\n if (ibiz.env.isMob) {\n const showFooter = this.calcViewFooterVisible();\n if (!showFooter) {\n const controller = (_b = this.viewLayoutPanel) == null ? void 0 : _b.panelItems.view_footer;\n if (controller) {\n controller.state.visible = false;\n }\n }\n }\n }\n async onDestroyed() {\n }\n async call(key, _args) {\n if (key === \"GetData\") {\n return this.getData();\n }\n return void 0;\n }\n /**\n * 初始化视图state\n * @author lxm\n * @date 2023-05-15 06:42:25\n * @protected\n */\n initViewState() {\n }\n /**\n * 获取视图数据部件的数据\n * @author lxm\n * @date 2023-05-08 12:46:19\n * @return {*} {IData[]}\n */\n getData() {\n return [];\n }\n /**\n * 计算视图头部元素的显示与否\n * 所有部件容器名称均为:view_部件名称\n *\n * @author lxm\n * @date 2023-06-06 07:16:26\n * @protected\n */\n calcViewHeaderVisible() {\n var _a, _b, _c, _d;\n let showHeader = false;\n const { model } = this.view;\n if (model.showCaptionBar === false) {\n const controller = (_a = this.viewLayoutPanel) == null ? void 0 : _a.panelItems.view_captionbar;\n if (controller) {\n controller.state.visible = false;\n }\n } else {\n showHeader = true;\n }\n if (ibiz.env.isMob) {\n if (!this.leftToolbar) {\n const controller = (_b = this.viewLayoutPanel) == null ? void 0 : _b.panelItems.lefttoolbar;\n if (controller) {\n controller.state.visible = false;\n }\n } else {\n showHeader = true;\n }\n if (!this.rightToolbar) {\n const controller = (_c = this.viewLayoutPanel) == null ? void 0 : _c.panelItems.righttoolbar;\n if (controller) {\n controller.state.visible = false;\n }\n } else {\n showHeader = true;\n }\n } else if (!this.toolbar) {\n const controller = (_d = this.viewLayoutPanel) == null ? void 0 : _d.panelItems.view_toolbar;\n if (controller) {\n controller.state.visible = false;\n }\n } else {\n showHeader = true;\n }\n return showHeader;\n }\n /**\n * 计算底部的显示与否\n * @author lxm\n * @date 2023-06-20 02:45:17\n * @protected\n * @return {*} {boolean}\n */\n calcViewFooterVisible() {\n let showFooter = false;\n if (this.footerToolbar) {\n showFooter = true;\n }\n return showFooter;\n }\n /**\n * 加载实体数据\n * @author lxm\n * @date 2023-07-13 09:59:08\n * @return {*} {Promise<void>}\n */\n async loadEntityData() {\n const { appDataEntityId } = this.view.model;\n const { evt, context, params } = this.view;\n if (!appDataEntityId) {\n throw new RuntimeError16(\"\\u8BE5\\u89C6\\u56FE\\u6CA1\\u6709\\u5B9E\\u4F53\\uFF0C\\u65E0\\u6CD5\\u52A0\\u8F7D\\u5B9E\\u4F53\\u6570\\u636E\");\n }\n const app = ibiz.hub.getApp(context.srfappid);\n const res = await app.deService.exec(\n appDataEntityId,\n \"get\",\n context,\n params\n );\n if (res.data) {\n this.view.state.srfactiveviewdata = res.data;\n evt.emit(\"onDataChange\", { actionType: \"LOAD\", data: [res.data] });\n const info = {};\n info.dataInfo = res.data.srfmajortext || \"\";\n evt.emit(\"onViewInfoChange\", info);\n }\n }\n};\n\n// src/engine/md-view.engine.ts\nimport { RuntimeModelError as RuntimeModelError19 } from \"@ibiz-template/core\";\nvar MDViewEngine = class extends ViewEngineBase {\n /**\n * 多数据部件名称\n * @author lxm\n * @date 2023-06-07 09:17:19\n * @readonly\n * @type {string}\n */\n get xdataControlName() {\n return this.view.model.xdataControlName;\n }\n /**\n * 搜索表单控制器\n * @author lxm\n * @date 2023-05-22 01:56:25\n * @readonly\n */\n get searchForm() {\n return this.view.getController(\"searchform\");\n }\n /**\n * 搜索栏控制器\n * @author lxm\n * @date 2023-05-22 01:56:25\n * @readonly\n */\n get searchBar() {\n return this.view.getController(\"searchbar\");\n }\n /**\n * 数据部件控制器(多数据)\n * @author lxm\n * @date 2023-05-22 01:56:35\n * @readonly\n * @type {IMDControlController}\n */\n get xdataControl() {\n return this.view.getController(\n this.xdataControlName\n );\n }\n async onCreated() {\n await super.onCreated();\n const { childNames } = this.view;\n childNames.push(this.xdataControlName, \"searchform\", \"searchbar\");\n }\n async onMounted() {\n await super.onMounted();\n const { model } = this.view;\n this.xdataControl.evt.on(\"onActive\", async (event) => {\n await this.openData(event);\n });\n this.xdataControl.evt.on(\"onSelectionChange\", async (event) => {\n var _a;\n (_a = this.toolbar) == null ? void 0 : _a.calcButtonState(\n event.data[0],\n this.xdataControl.model.appDataEntityId\n );\n });\n this.xdataControl.evt.on(\"onBeforeLoad\", () => {\n this.xdataControl.state.searchParams = this.getSearchParams();\n });\n this.xdataControl.evt.on(\"onLoadSuccess\", (event) => {\n this.view.evt.emit(\"onDataChange\", { ...event, actionType: \"LOAD\" });\n });\n this.xdataControl.evt.on(\"onRemoveSuccess\", (event) => {\n this.view.evt.emit(\"onDataChange\", { ...event, actionType: \"REMOVE\" });\n });\n this.xdataControl.evt.on(\"onSaveSuccess\", (event) => {\n this.view.evt.emit(\"onDataChange\", { ...event, actionType: \"SAVE\" });\n });\n const controller = this.viewLayoutPanel.panelItems.view_searchform;\n if (controller) {\n const formExists = !!this.searchForm;\n controller.state.keepAlive = formExists;\n controller.state.visible = formExists && !!model.expandSearchForm;\n }\n if (this.searchForm) {\n this.searchForm.evt.on(\"onSearch\", () => {\n this.refresh();\n });\n }\n if (this.searchBar) {\n this.searchBar.evt.on(\"onSearch\", () => {\n this.refresh();\n });\n }\n if (!this.view.state.noLoadDefault && model.loadDefault) {\n this.load();\n }\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types\n async call(key, args) {\n if (key === \"ToggleFilter\" /* TOGGLE_FILTER */) {\n this.toggleFilter();\n return null;\n }\n if (key === \"Edit\" /* EDIT */ || key === \"View\" /* VIEW */) {\n this.openData(args);\n return null;\n }\n if (key === \"New\" /* NEW */) {\n this.newData(args);\n return null;\n }\n if (key === \"Remove\" /* REMOVE */) {\n await this.remove(args);\n return null;\n }\n if (key === \"Import\" /* IMPORT */) {\n await this.importData();\n return null;\n }\n if (key === \"Refresh\" /* REFRESH */) {\n await this.refresh();\n return null;\n }\n if (key === \"ExportExcel\" /* EXPORT_EXCEL */) {\n await this.exportData(args);\n return null;\n }\n if (key === \"Copy\" /* COPY */) {\n this.copy(args);\n return null;\n }\n return super.call(key, args);\n }\n getData() {\n return this.xdataControl.getData();\n }\n /**\n * 打开编辑数据视图\n *\n * @author lxm\n * @date 2022-09-01 18:09:19\n * @param {IData} data\n * @param {MouseEvent} [event]\n * @returns {*}\n */\n async openData(args) {\n var _a, _b;\n const { data, event } = args;\n const context = this.view.context.clone();\n const deName = ((_a = data[0].srfdecodename) == null ? void 0 : _a.toLowerCase()) || calcDeCodeNameById(this.xdataControl.model.appDataEntityId);\n context[deName.toLowerCase()] = data[0].srfkey;\n const result = await ((_b = this.view.scheduler) == null ? void 0 : _b.triggerCustom(\"opendata\", {\n context,\n params: this.view.params,\n data,\n event,\n view: this.view\n }));\n if (result === -1) {\n throw new RuntimeModelError19(this.view.model, \"\\u7F3A\\u5C11opendata\\u7684\\u89C6\\u56FE\\u903B\\u8F91\");\n }\n }\n /**\n * 打开编辑数据视图\n *\n * @author lxm\n * @date 2022-09-01 18:09:19\n * @param {IData} data\n * @param {MouseEvent} [event]\n * @returns {*}\n */\n async newData(args) {\n var _a, _b, _c;\n const { data, event, copyMode } = args;\n const openAppViewLogic = (_b = (_a = this.view.model.viewLayoutPanel) == null ? void 0 : _a.appViewLogics) == null ? void 0 : _b.find(\n (item) => item.id === \"newdata\"\n );\n if (!openAppViewLogic) {\n throw new RuntimeModelError19(this.view.model, \"\\u7F3A\\u5C11newdata\\u7684\\u89C6\\u56FE\\u903B\\u8F91\");\n }\n const context = this.view.context.clone();\n if (copyMode) {\n context.srfcopymode = true;\n }\n const result = await ((_c = this.view.scheduler) == null ? void 0 : _c.triggerCustom(\"newdata\", {\n context,\n params: this.view.params,\n data,\n event,\n view: this.view\n }));\n if (result === -1) {\n throw new RuntimeModelError19(this.view.model, \"\\u7F3A\\u5C11newdata\\u7684\\u89C6\\u56FE\\u903B\\u8F91\");\n }\n }\n /**\n * 视图删除\n *\n * @author lxm\n * @date 2022-08-30 19:08:59\n * @returns {*} {Promise<void>}\n */\n async remove(args) {\n await this.xdataControl.remove(args);\n }\n /**\n * 视图加载\n * @author lxm\n * @date 2023-05-22 03:17:33\n * @return {*} {Promise<void>}\n */\n async load() {\n await this.xdataControl.load({ isInitialLoad: true });\n }\n /**\n * 视图刷新\n * @author lxm\n * @date 2023-05-22 03:17:33\n * @return {*} {Promise<void>}\n */\n async refresh() {\n await this.xdataControl.refresh();\n }\n /**\n * 获取搜索相关的查询参数\n * @author lxm\n * @date 2023-05-22 03:26:04\n * @return {*} {IParams}\n */\n getSearchParams() {\n const params = {};\n if (this.searchForm) {\n const addParams = this.searchForm.getData()[0];\n Object.assign(params, addParams);\n }\n if (this.searchBar) {\n const addParams = {\n query: this.searchBar.state.query\n };\n Object.assign(params, addParams);\n }\n return params;\n }\n /**\n * 导入数据\n * @author lxm\n * @date 2023-05-22 03:28:26\n * @return {*} {Promise<void>}\n */\n async importData() {\n await this.xdataControl.importData();\n }\n /**\n * 导出数据\n * @author lxm\n * @date 2023-05-22 03:29:06\n * @param {{ event: MouseEvent }} args\n * @return {*} {Promise<void>}\n */\n async exportData(args) {\n await this.xdataControl.exportData(args);\n }\n /**\n * 复制数据\n *\n * @author zk\n * @date 2023-06-01 12:06:58\n * @memberof MDViewEngine\n */\n async copy(args) {\n this.newData(Object.assign(args, { copyMode: true }));\n }\n calcViewHeaderVisible() {\n let showHeader = super.calcViewHeaderVisible();\n if (!this.searchBar) {\n const controller = this.viewLayoutPanel.panelItems.view_searchbar;\n if (controller) {\n controller.state.visible = false;\n }\n } else {\n showHeader = true;\n }\n return showHeader;\n }\n /**\n * 切换搜索表单的显示与否\n * @author lxm\n * @date 2023-06-06 09:20:35\n * @protected\n */\n toggleFilter() {\n if (this.searchForm) {\n const searchformContainer = this.viewLayoutPanel.panelItems.view_searchform;\n if (searchformContainer) {\n searchformContainer.state.visible = !searchformContainer.state.visible;\n }\n }\n }\n};\n\n// src/global/global-util/global-util.ts\nvar GlobalUtil = class {\n constructor() {\n /**\n * 布局面板\n *\n * @author chitanda\n * @date 2023-04-27 21:04:46\n */\n this.layoutPanel = new LayoutPanelUtil();\n }\n};\n\n// src/register/helper/control-register.ts\nvar CONTROL_PROVIDER_PREFIX = \"CONTROL\";\nfunction registerControlProvider(key, callback) {\n ibiz.register.register(\"\".concat(CONTROL_PROVIDER_PREFIX, \"_\").concat(key), callback);\n}\nfunction getProvider(key) {\n return ibiz.register.get(\n \"\".concat(CONTROL_PROVIDER_PREFIX, \"_\").concat(key)\n );\n}\nasync function getControlProvider(model) {\n let provider;\n const { controlType, controlStyle } = model;\n if (controlStyle && controlStyle !== \"DEFAULT\") {\n const key = \"\".concat(controlType, \"_\").concat(controlStyle);\n provider = getProvider(key);\n if (!provider) {\n ibiz.log.error(\n \"\\u627E\\u4E0D\\u5230\\u90E8\\u4EF6\\u7C7B\\u578B\\uFF1A[\".concat(controlType, \"]\\u7684\\u90E8\\u4EF6\\u6837\\u5F0F\\uFF1A[\").concat(controlStyle, \"]\\u5BF9\\u5E94\\u7684\\u9002\\u914D\\u5668\"),\n model\n );\n }\n }\n if (!provider) {\n provider = getProvider(controlType);\n }\n if (!provider) {\n ibiz.log.error(\"\\u627E\\u4E0D\\u5230\\u90E8\\u4EF6\\u7C7B\\u578B\".concat(controlType, \"\\u5BF9\\u5E94\\u7684\\u9002\\u914D\\u5668\"));\n }\n return provider;\n}\n\n// src/register/helper/editor-register.ts\nvar EDITOR_PROVIDER_PREFIX = \"EDITOR\";\nfunction registerEditorProvider(key, callback) {\n ibiz.register.register(\"\".concat(EDITOR_PROVIDER_PREFIX, \"_\").concat(key), callback);\n}\nfunction getProvider2(key) {\n return ibiz.register.get(\n \"\".concat(EDITOR_PROVIDER_PREFIX, \"_\").concat(key)\n );\n}\nasync function getEditorProvider(model) {\n let provider;\n const { editorType, editorStyle } = model;\n if (editorStyle && editorStyle !== \"DEFAULT\") {\n const key = \"\".concat(editorType, \"_\").concat(editorStyle);\n provider = getProvider2(key);\n if (!provider) {\n ibiz.log.error(\n \"\\u627E\\u4E0D\\u5230\\u7F16\\u8F91\\u5668\\u7C7B\\u578B\\uFF1A[\".concat(editorType, \"]\\u7684\\u7F16\\u8F91\\u5668\\u6837\\u5F0F\\uFF1A[\").concat(editorStyle, \"]\\u5BF9\\u5E94\\u7684\\u9002\\u914D\\u5668\"),\n model\n );\n }\n }\n if (!provider) {\n provider = getProvider2(editorType);\n }\n if (!provider) {\n ibiz.log.error(\"\\u627E\\u4E0D\\u5230\\u7F16\\u8F91\\u5668\\u7C7B\\u578B\".concat(editorType, \"\\u5BF9\\u5E94\\u7684\\u9002\\u914D\\u5668\"));\n }\n return provider;\n}\n\n// src/register/helper/form-detail-register.ts\nvar FORMDETAIL_PROVIDER_PREFIX = \"FORMDETAIL\";\nfunction registerFormDetailProvider(key, callback) {\n ibiz.register.register(\"\".concat(FORMDETAIL_PROVIDER_PREFIX, \"_\").concat(key), callback);\n}\nfunction getProvider3(key) {\n return ibiz.register.get(\n \"\".concat(FORMDETAIL_PROVIDER_PREFIX, \"_\").concat(key)\n );\n}\nasync function getFormDetailProvider(model) {\n let provider;\n const { detailType } = model;\n if (!provider) {\n provider = getProvider3(detailType);\n }\n if (!provider) {\n ibiz.log.error(\"\\u627E\\u4E0D\\u5230\\u8868\\u5355\\u6210\\u5458\\u7C7B\\u578B\".concat(detailType, \"\\u5BF9\\u5E94\\u7684\\u9002\\u914D\\u5668\"));\n }\n return provider;\n}\n\n// src/register/helper/grid-column-register.ts\nvar GRIDCOLUMN_PROVIDER_PREFIX = \"GRIDCOLUMN\";\nfunction registerGridColumnProvider(key, callback) {\n ibiz.register.register(\"\".concat(GRIDCOLUMN_PROVIDER_PREFIX, \"_\").concat(key), callback);\n}\nfunction getProvider4(key) {\n return ibiz.register.get(\n \"\".concat(GRIDCOLUMN_PROVIDER_PREFIX, \"_\").concat(key)\n );\n}\nasync function getGridColumnProvider(model) {\n let provider;\n const { columnType, enableRowEdit } = model;\n const key = enableRowEdit ? \"\".concat(columnType, \"_EDIT\") : columnType;\n if (!provider) {\n provider = getProvider4(key);\n }\n if (!provider) {\n ibiz.log.error(\"\\u627E\\u4E0D\\u5230\\u8868\\u683C\\u5217\\u7C7B\\u578B\".concat(key, \"\\u5BF9\\u5E94\\u7684\\u9002\\u914D\\u5668\"));\n }\n return provider;\n}\n\n// src/register/helper/panel-item-register.ts\nvar PANELITEM_PROVIDER_PREFIX = \"PANELITEM\";\nfunction registerPanelItemProvider(key, callback) {\n ibiz.register.register(\n \"\".concat(PANELITEM_PROVIDER_PREFIX, \"_\").concat(key.toUpperCase()),\n callback\n );\n}\nfunction getProvider5(key) {\n return ibiz.register.get(\n \"\".concat(PANELITEM_PROVIDER_PREFIX, \"_\").concat(key.toUpperCase())\n );\n}\nasync function getPanelItemProvider(model) {\n var _a;\n let provider;\n const { itemType } = model;\n if (itemType === \"CONTAINER\") {\n const predefinedType = model.predefinedType || \"DEFAULT\";\n const key = \"CONTAINER_\".concat(predefinedType);\n provider = getProvider5(key);\n if (!provider) {\n ibiz.log.error(\"\\u627E\\u4E0D\\u5230\\u9762\\u677F\\u5BB9\\u5668\\u9884\\u7F6E\\u7C7B\\u578B\\u4E3A\".concat(predefinedType, \"\\u7684\\u9002\\u914D\\u5668\"));\n }\n }\n if (itemType === \"RAWITEM\") {\n const predefinedType = ((_a = model.rawItem) == null ? void 0 : _a.predefinedType) || \"DEFAULT\";\n const key = \"RAWITEM_\".concat(predefinedType);\n provider = getProvider5(key);\n if (!provider) {\n ibiz.log.error(\n \"\\u627E\\u4E0D\\u5230\\u9762\\u677F\\u6210\\u5458\\u76F4\\u63A5\\u5185\\u5BB9\\u9884\\u7F6E\\u7C7B\\u578B\\u4E3A\".concat(predefinedType, \"\\u7684\\u9002\\u914D\\u5668\")\n );\n }\n }\n if (!provider) {\n provider = getProvider5(itemType);\n }\n if (!provider) {\n ibiz.log.error(\"\\u627E\\u4E0D\\u5230\\u9762\\u677F\\u6210\\u5458\\u7C7B\\u578B\".concat(itemType, \"\\u5BF9\\u5E94\\u7684\\u9002\\u914D\\u5668\"));\n }\n return provider;\n}\n\n// src/register/helper/ui-action-register.ts\nimport { RuntimeError as RuntimeError17 } from \"@ibiz-template/core\";\nvar UIACTION_PROVIDER_PREFIX = \"UIACTION\";\nfunction registerUIActionProvider(key, callback) {\n ibiz.register.register(\"\".concat(UIACTION_PROVIDER_PREFIX, \"_\").concat(key), callback);\n}\nfunction getProvider6(key) {\n return ibiz.register.get(\n \"\".concat(UIACTION_PROVIDER_PREFIX, \"_\").concat(key)\n );\n}\nasync function getUIActionProvider(model) {\n let provider;\n const { uiactionMode } = model;\n if (!provider) {\n provider = getProvider6(uiactionMode);\n }\n if (!provider) {\n throw new RuntimeError17(\"\\u627E\\u4E0D\\u754C\\u9762\\u884C\\u4E3A\\u6A21\\u5F0F\".concat(uiactionMode, \"\\u5BF9\\u5E94\\u7684\\u9002\\u914D\\u5668\"));\n }\n return provider;\n}\n\n// src/register/helper/view-register.ts\nvar VIEW_PROVIDER_PREFIX = \"VIEW\";\nfunction registerViewProvider(key, callback) {\n ibiz.register.register(\"\".concat(VIEW_PROVIDER_PREFIX, \"_\").concat(key), callback);\n}\nfunction getProvider7(key) {\n return ibiz.register.get(\"\".concat(VIEW_PROVIDER_PREFIX, \"_\").concat(key));\n}\nasync function getViewProvider(model) {\n let provider;\n const { viewType, viewStyle } = model;\n if (viewStyle && viewStyle !== \"DEFAULT\") {\n const key = \"\".concat(viewType, \"_\").concat(viewStyle);\n provider = getProvider7(key);\n if (!provider) {\n ibiz.log.error(\n \"\\u627E\\u4E0D\\u5230\\u89C6\\u56FE\\u7C7B\\u578B\\uFF1A[\".concat(viewType, \"]\\u7684\\u89C6\\u56FE\\u6837\\u5F0F\\uFF1A[\").concat(viewStyle, \"]\\u5BF9\\u5E94\\u7684\\u9002\\u914D\\u5668\"),\n model\n );\n }\n }\n if (!provider) {\n provider = getProvider7(viewType);\n }\n if (!provider) {\n provider = getProvider7(\"DEFAULT\");\n }\n return provider;\n}\n\n// src/register/helper/portlet-register.ts\nvar PORTLET_PROVIDER_PREFIX = \"PORTLET\";\nfunction registerPortletProvider(key, callback) {\n ibiz.register.register(\"\".concat(PORTLET_PROVIDER_PREFIX, \"_\").concat(key), callback);\n}\nfunction getProvider8(key) {\n return ibiz.register.get(\n \"\".concat(PORTLET_PROVIDER_PREFIX, \"_\").concat(key)\n );\n}\nasync function getPortletProvider(model) {\n let provider;\n const { portletType } = model;\n if (!provider) {\n provider = getProvider8(portletType);\n }\n if (!provider) {\n ibiz.log.error(\"\\u627E\\u4E0D\\u5230\\u95E8\\u6237\\u90E8\\u4EF6\\u6210\\u5458\\u7C7B\\u578B\".concat(portletType, \"\\u5BF9\\u5E94\\u7684\\u9002\\u914D\\u5668\"));\n }\n return provider;\n}\n\n// src/ui-action/provider/backend-ui-action-provider.ts\nimport { RuntimeModelError as RuntimeModelError27 } from \"@ibiz-template/core\";\nimport { isArray as isArray2 } from \"qx-util\";\n\n// src/ui-action/provider/ui-action-provider-base.ts\nimport { RuntimeModelError as RuntimeModelError26 } from \"@ibiz-template/core\";\n\n// src/ui-logic/index.ts\nimport { RuntimeError as RuntimeError20 } from \"@ibiz-template/core\";\n\n// src/ui-logic/ui-logic.ts\nimport { ModelError as ModelError21, RuntimeModelError as RuntimeModelError25 } from \"@ibiz-template/core\";\n\n// src/ui-logic/ui-logic-context.ts\nvar UILogicContext = class {\n /**\n * Creates an instance of DELogicContext.\n * @author lxm\n * @date 2023-03-24 09:15:14\n * @param {Map<string, DELogicParam>} deLogicParams 实体逻辑参数集合\n * @param {IParams} context 上下文\n * @param {IData} data 数据对象\n * @param {IParams} viewParams 视图参数\n * @param {IParams} [opt] 额外参数\n */\n /**\n * Creates an instance of UILogicContext.\n * @author lxm\n * @date 2023-06-14 07:36:42\n * @param {Map<string, UILogicParam>} deLogicParams 实体逻辑参数集合\n * @param {IUILogicParams} parameters 界面逻辑执行参数\n */\n constructor(deLogicParams, parameters) {\n this.deLogicParams = deLogicParams;\n this.parameters = parameters;\n /**\n * 界面逻辑参数\n *\n * @description 界面逻辑参数初始化时设置\n * @author chitanda\n * @date 2023-02-08 17:02:38\n * @type {Record<string, any>}\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n this.params = {};\n /**\n * UI逻辑执行返回值\n *\n * @author chitanda\n * @date 2023-02-09 21:02:40\n * @type {unknown}\n */\n this.result = null;\n /**\n * 是否存在结束节点\n *\n * @author chitanda\n * @date 2023-03-16 18:03:09\n * @type {boolean}\n */\n this.isEndNode = false;\n /**\n * 默认参数节点\n *\n * @default 'Default'\n * @author chitanda\n * @date 2023-03-16 18:03:39\n * @type {string}\n */\n this.defaultParamName = \"Default\";\n }\n /**\n * 上下文\n */\n get context() {\n return this.parameters.context;\n }\n /**\n * 数据\n */\n get data() {\n return this.parameters.data;\n }\n /**\n * 视图参数\n */\n get viewParams() {\n return this.parameters.params;\n }\n /**\n * 重置实体逻辑参数\n * @author lxm\n * @date 2023-03-24 09:18:02\n * @param {string} name\n */\n resetParam(name) {\n var _a;\n (_a = this.deLogicParams.get(name)) == null ? void 0 : _a.calc(this);\n }\n /**\n * 重新建立变量\n * @author lxm\n * @date 2023-03-24 09:20:24\n * @param {string} name\n */\n renewParam(name) {\n var _a;\n (_a = this.deLogicParams.get(name)) == null ? void 0 : _a.renew(this);\n }\n};\n\n// src/ui-logic/ui-logic-node/de-action-node/de-action-node.ts\nimport { RuntimeModelError as RuntimeModelError22 } from \"@ibiz-template/core\";\n\n// src/ui-logic/ui-logic-link/ui-logic-link.ts\nimport { ModelError as ModelError16 } from \"@ibiz-template/core\";\n\n// src/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.ts\nimport { RuntimeModelError as RuntimeModelError21 } from \"@ibiz-template/core\";\n\n// src/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.ts\nvar UILogicLinkCond = class {\n};\n\n// src/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.ts\nimport { ModelError as ModelError15, RuntimeModelError as RuntimeModelError20 } from \"@ibiz-template/core\";\nvar UILogicLinkSingleCond = class extends UILogicLinkCond {\n constructor(model) {\n super();\n this.model = model;\n this.srcParam = model.srcLogicParamId;\n this.dstParam = model.dstLogicParamId;\n }\n get dstField() {\n return this.model.dstFieldName.toLowerCase();\n }\n get op() {\n return this.model.condOP;\n }\n get type() {\n return this.model.paramType;\n }\n get value() {\n return this.model.paramValue;\n }\n /**\n * 执行逻辑检测\n *\n * @author chitanda\n * @date 2023-02-15 18:02:05\n * @param {UILogicContext} ctx\n * @param {IContext} context\n * @param {IData} data\n * @return {*} {boolean}\n */\n test(ctx, context, data) {\n const dst = ctx.params[this.dstParam];\n switch (this.type) {\n case \"ENTITYFIELD\": {\n if (!this.value) {\n throw new RuntimeModelError20(\n this.model,\n \"\\u5F53\\u524D\\u6761\\u4EF6\\u503C\\u7C7B\\u578B\\u4E3A[\\u6570\\u636E\\u5BF9\\u8C61\\u5C5E\\u6027],\\u7F3A\\u5C11\\u914D\\u7F6E\\u6761\\u4EF6\\u503C\"\n );\n }\n const value = data[this.value] != null ? data[this.value] : context[this.value];\n return testCond(dst[this.dstField], this.op, value);\n }\n case \"SRCENTITYFIELD\": {\n if (!this.value) {\n throw new RuntimeModelError20(\n this.model,\n \"\\u5F53\\u524D\\u6761\\u4EF6\\u503C\\u7C7B\\u578B\\u4E3A[\\u6E90\\u6570\\u636E\\u5BF9\\u8C61\\u5C5E\\u6027],\\u7F3A\\u5C11\\u914D\\u7F6E\\u6761\\u4EF6\\u503C\"\n );\n }\n const src = ctx.params[this.srcParam];\n return testCond(dst[this.dstField], this.op, src[this.value]);\n }\n case \"CURTIME\":\n throw new ModelError15(this.model, \"\\u6682\\u672A\\u652F\\u6301\\u6761\\u4EF6\\u503C\\u7C7B\\u578B\\u4E3A[\\u5F53\\u524D\\u65F6\\u95F4]\");\n default:\n return testCond(dst[this.dstField], this.op, this.value);\n }\n }\n};\n\n// src/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.ts\nvar UILogicLinkGroupCond = class _UILogicLinkGroupCond extends UILogicLinkCond {\n constructor(model) {\n super();\n this.model = model;\n const conds = model.deuilogicLinkConds || [];\n this.conds = conds.map((cond) => {\n return cond.logicType === \"SINGLE\" ? new UILogicLinkSingleCond(cond) : new _UILogicLinkGroupCond(cond);\n });\n }\n /**\n * 操作标识\n *\n * @author chitanda\n * @date 2023-02-15 17:02:04\n * @readonly\n * @protected\n * @type {('AND' | 'OR')}\n */\n get op() {\n return this.model.groupOP;\n }\n /**\n * 结果是否取反值\n *\n * @author chitanda\n * @date 2023-02-15 17:02:10\n * @readonly\n * @protected\n * @type {boolean}\n */\n get notMode() {\n return this.model.notMode === true;\n }\n /**\n * 条件判断\n *\n * @author chitanda\n * @date 2023-02-15 17:02:19\n * @param {UILogicContext} ctx\n * @param {IContext} context\n * @param {IData} data\n * @return {*} {boolean}\n */\n test(ctx, context, data) {\n let bol = true;\n if (this.conds.length === 0) {\n throw new RuntimeModelError21(this.model, \"\\u754C\\u9762\\u8FDE\\u63A5\\u6761\\u4EF6\\u903B\\u8F91\\u7EC4\\u672A\\u914D\\u7F6E\\u903B\\u8F91\\u9879\");\n }\n for (let i = 0; i < this.conds.length; i++) {\n const cond = this.conds[i];\n const judge = cond.test(ctx, context, data);\n if (this.op === \"AND\" && judge === false) {\n bol = false;\n break;\n }\n if (this.op === \"OR\" && judge === true) {\n bol = true;\n break;\n }\n }\n return this.notMode ? !bol : bol;\n }\n};\n\n// src/ui-logic/ui-logic-link/ui-logic-link.ts\nvar UILogicLink = class {\n /**\n * Creates an instance of UILogicLink.\n *\n * @author chitanda\n * @date 2023-02-08 16:02:19\n * @param {UILogicLinkModel} model\n */\n constructor(model) {\n this.model = model;\n /**\n * 源节点\n *\n * @author chitanda\n * @date 2023-02-08 21:02:53\n * @type {UILogicNode}\n */\n this.srcNode = null;\n /**\n * 目标节点\n *\n * @author chitanda\n * @date 2023-02-08 21:02:59\n * @type {UILogicNode}\n */\n this.dstNode = null;\n /**\n * 连接条件组\n *\n * @author chitanda\n * @date 2023-02-15 17:02:49\n * @type {(UILogicLinkGroupCond | null)}\n */\n this.groupCond = null;\n const { linkMode, deuilogicLinkGroupCond } = this.model;\n if (linkMode === 0) {\n if (deuilogicLinkGroupCond) {\n this.groupCond = new UILogicLinkGroupCond(deuilogicLinkGroupCond);\n }\n }\n }\n /**\n * 执行连接\n *\n * @author chitanda\n * @date 2023-02-08 22:02:18\n * @param {UILogicContext} ctx\n * @param {IContext} context\n * @param {IData} data\n * @param {IParams} [opt]\n * @return {*} {Promise<boolean>} 是否连接成功\n */\n async exec(ctx) {\n const { linkMode } = this.model;\n const { context, data } = ctx;\n switch (linkMode || 0) {\n case 0: {\n if (this.groupCond) {\n return this.groupCond.test(\n ctx,\n context,\n data && data.length > 0 ? data[0] : {}\n );\n }\n return true;\n }\n case 1:\n return true;\n case 2:\n throw new ModelError16(this.model, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u8FDE\\u63A5\\u7C7B\\u578B: \\u5F02\\u6B65\\u7ED3\\u675F\");\n case 3:\n throw new ModelError16(this.model, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u8FDE\\u63A5\\u7C7B\\u578B: \\u5F02\\u6B65\\u62D2\\u7EDD\");\n case 9:\n throw new ModelError16(this.model, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u8FDE\\u63A5\\u7C7B\\u578B: \\u5F02\\u5E38\\u5904\\u7406\");\n default:\n throw new ModelError16(this.model, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u8FDE\\u63A5\\u7C7B\\u578B:\".concat(linkMode));\n }\n }\n};\n\n// src/ui-logic/ui-logic-node/ui-logic-node.ts\nvar UILogicNode = class {\n /**\n * Creates an instance of UILogicNode.\n *\n * @author chitanda\n * @date 2023-02-08 16:02:19\n * @param {UILogicNodeModel} model\n */\n constructor(model) {\n this.model = model;\n this.links = (model.deuilogicLinks || []).map(\n (link) => new UILogicLink(link)\n );\n }\n};\n\n// src/ui-logic/ui-logic-node/de-action-node/de-action-node.ts\nvar DEActionNode2 = class extends UILogicNode {\n async exec(ctx) {\n const {\n dstAppDataEntityId,\n dstAppDEActionId,\n dstDEUILogicParamId,\n retDEUILogicParamId\n } = this.model;\n if (!dstAppDataEntityId) {\n throw new RuntimeModelError22(this.model, \"\\u672A\\u6307\\u5B9A\\u5E94\\u7528\\u5B9E\\u4F53\");\n }\n if (!dstAppDEActionId) {\n throw new RuntimeModelError22(this.model, \"\\u672A\\u6307\\u5B9A\\u5B9E\\u4F53\\u884C\\u4E3A\");\n }\n const requestData = ctx.params[dstDEUILogicParamId];\n const app = ibiz.hub.getApp(ctx.context.srfappid);\n const res = await app.deService.exec(\n dstAppDataEntityId,\n dstAppDEActionId,\n ctx.context,\n requestData,\n ctx.viewParams\n );\n if (res.ok) {\n ctx.params[retDEUILogicParamId] = res.data;\n }\n }\n};\n\n// src/ui-logic/ui-logic-node/de-ui-action-node/de-ui-action-node.ts\nimport { RuntimeModelError as RuntimeModelError23 } from \"@ibiz-template/core\";\nvar DEUIActionNode = class extends UILogicNode {\n async exec(ctx) {\n const { dstAppDEUIActionId, dstDEUILogicParamId } = this.model;\n const { data, parameters } = ctx;\n if (!dstAppDEUIActionId) {\n throw new RuntimeModelError23(this.model, \"\\u672A\\u914D\\u7F6E\\u754C\\u9762\\u884C\\u4E3A\");\n }\n let actionData = [data];\n if (dstDEUILogicParamId) {\n const param = ctx.params[dstDEUILogicParamId];\n if (param instanceof Array) {\n actionData = param;\n } else {\n actionData = [param];\n }\n }\n await UIActionUtil.execAndResolved(dstAppDEUIActionId, {\n ...parameters,\n data: actionData\n });\n }\n};\n\n// src/ui-logic/ui-logic-node/start-node/start-node.ts\nvar StartNode2 = class extends UILogicNode {\n async exec(_ctx) {\n }\n};\n\n// src/ui-logic/ui-logic-node/end-node/end-node.ts\nimport { ModelError as ModelError17 } from \"@ibiz-template/core\";\nvar EndNode2 = class extends UILogicNode {\n async exec(ctx) {\n ctx.isEndNode = true;\n const { returnType, rawValue, returnParamId } = this.model;\n switch (returnType) {\n case \"NONEVALUE\":\n ctx.result = void 0;\n break;\n case \"NULLVALUE\":\n ctx.result = null;\n break;\n case \"SRCVALUE\":\n ctx.result = rawValue;\n break;\n case \"LOGICPARAM\":\n ctx.result = ctx.params[returnParamId];\n break;\n case \"LOGICPARAMFIELD\":\n case \"BREAK\":\n default:\n throw new ModelError17(\n this.model,\n \"\\u6682\\u672A\\u652F\\u6301\\u7684\\u7ED3\\u675F\\u8282\\u70B9\\u8FD4\\u56DE\\u503C\\u7C7B\\u578B: \".concat(returnType)\n );\n }\n }\n};\n\n// src/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.ts\nimport { ModelError as ModelError19 } from \"@ibiz-template/core\";\n\n// src/ui-logic/utils/handle-src-val.ts\nimport { ModelError as ModelError18 } from \"@ibiz-template/core\";\nimport { clone as clone10 } from \"ramda\";\nfunction handleSrcVal2(ctx, srcValParams) {\n const { srcDEUILogicParamId, srcValueType, srcFieldName, srcValue } = srcValParams;\n if (!srcValParams.srcValueType) {\n srcValParams.srcValueType = \"SRCDLPARAM\";\n }\n let value;\n switch (srcValueType) {\n case \"SRCDLPARAM\":\n value = ctx.params[srcDEUILogicParamId];\n break;\n case \"NULLVALUE\":\n return null;\n case \"NONEVALUE\":\n return void 0;\n case \"SRCVALUE\":\n return srcValue;\n case \"VIEWPARAM\":\n value = ctx.viewParams;\n break;\n case \"APPDATA\":\n value = ctx.context;\n break;\n case \"ENVPARAM\":\n value = clone10(ibiz.env);\n break;\n default:\n throw new ModelError18(srcValParams, \"\\u6682\\u672A\\u652F\\u6301\\u6E90\\u503C\\u7C7B\\u578B\".concat(srcValueType));\n }\n const srcField = srcFieldName == null ? void 0 : srcFieldName.toLowerCase();\n if (value && srcField) {\n value = value[srcField];\n }\n return value;\n}\n\n// src/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.ts\nvar PrepareJSParamNode = class extends UILogicNode {\n async exec(ctx) {\n const nodeParams = this.model.deuilogicNodeParams;\n if (nodeParams == null ? void 0 : nodeParams.length) {\n await Promise.all(\n nodeParams.map((nodeParam) => {\n switch (nodeParam.paramAction) {\n case \"SETPARAMVALUE\":\n return this.setParamValue(nodeParam, ctx);\n default:\n throw new ModelError19(\n nodeParam,\n \"\\u6682\\u672A\\u652F\\u6301\\u903B\\u8F91\\u5904\\u7406\\u53C2\\u6570\\u64CD\\u4F5C\".concat(nodeParam.paramAction)\n );\n }\n })\n );\n }\n }\n /**\n * 设置变量\n * @author lxm\n * @date 2023-03-17 03:34:02\n * @protected\n * @param {IPSDELogicNodeParam} nodeParam\n * @param {DELogicContext} ctx\n */\n setParamValue(nodeParam, ctx) {\n const { dstFieldName, dstDEUILogicParamId } = nodeParam;\n const dstField = dstFieldName == null ? void 0 : dstFieldName.toLowerCase();\n const srcVal = handleSrcVal2(ctx, nodeParam);\n if (dstField) {\n ctx.params[dstDEUILogicParamId][dstField] = srcVal;\n } else {\n ctx.params[dstDEUILogicParamId] = srcVal;\n }\n }\n};\n\n// src/ui-logic/ui-logic-node/view-ctrl-invoke-node/view-ctrl-invoke-node.ts\nimport { RuntimeError as RuntimeError18, RuntimeModelError as RuntimeModelError24 } from \"@ibiz-template/core\";\nimport { isFunction } from \"lodash-es\";\nvar ViewCtrlInvokeNode = class extends UILogicNode {\n async exec(ctx) {\n ctx.isEndNode = true;\n const { invokeMethod, invokeCtrlId, invokeParamId } = this.model;\n if (!invokeCtrlId) {\n throw new RuntimeModelError24(this.model, \"\\u6CA1\\u6709\\u914D\\u7F6E\\u754C\\u9762\\u5BF9\\u8C61\");\n }\n if (!invokeParamId) {\n throw new RuntimeModelError24(this.model, \"\\u6CA1\\u6709\\u914D\\u7F6E\\u64CD\\u4F5C\\u53C2\\u6570\");\n }\n if (!invokeMethod) {\n throw new RuntimeModelError24(this.model, \"\\u6CA1\\u6709\\u914D\\u7F6E\\u8C03\\u7528\\u65B9\\u6CD5\");\n }\n const invokeParam = ctx.params[invokeParamId];\n if (!invokeParam) {\n throw new RuntimeError18(\"\\u6CA1\\u6709\\u627E\\u5230\\u64CD\\u4F5C\\u53C2\\u6570\".concat(invokeParamId));\n }\n const invokeCtrl = ctx.params[invokeCtrlId];\n if (!invokeCtrl) {\n throw new RuntimeError18(\"\\u6CA1\\u6709\\u627E\\u5230\\u754C\\u9762\\u5BF9\\u8C61\".concat(invokeCtrlId));\n }\n if (!invokeCtrl[invokeMethod] || !isFunction(invokeCtrl[invokeMethod])) {\n throw new RuntimeError18(\"\\u6CA1\\u6709\\u627E\\u5230\\u8C03\\u7528\\u65B9\\u6CD5\".concat(invokeMethod));\n }\n await invokeCtrl[invokeMethod](invokeParam);\n }\n};\n\n// src/ui-logic/ui-logic-param/ui-logic-param.ts\nimport { ModelError as ModelError20, RuntimeError as RuntimeError19 } from \"@ibiz-template/core\";\nvar UILogicParam = class {\n /**\n * Creates an instance of UILogicParam.\n *\n * @author chitanda\n * @date 2023-02-08 16:02:22\n * @param {UILogicParamModel} model\n */\n constructor(model) {\n this.model = model;\n }\n /**\n * 向界面逻辑中计算基础参数\n *\n * @author chitanda\n * @date 2023-02-08 20:02:33\n * @param {UILogicContext} ctx\n */\n calc(ctx) {\n const tag = this.model.id;\n const m = this.model;\n const { context, viewParams, data, parameters } = ctx;\n const app = ibiz.hub.getApp(context.srfappid);\n if (m.default) {\n ctx.params[tag] = data && data.length > 0 ? data[0] : {};\n } else if (m.activeContainerParam) {\n ctx.params[tag] = parameters.ctrl || parameters.view;\n } else if (m.activeCtrlParam) {\n ctx.params[tag] = parameters.ctrl;\n } else if (m.ctrlParam) {\n const control = parameters.view.getController(m.codeName.toLowerCase());\n if (control) {\n ctx.params[tag] = control;\n } else {\n throw new RuntimeError19(\"\\u6CA1\\u627E\\u5230\".concat(m.codeName, \"\\u6307\\u5B9A\\u90E8\\u4EF6\\u5BF9\\u8C61\"));\n }\n } else if (m.activeViewParam) {\n ctx.params[tag] = parameters.view;\n } else if (m.appGlobalParam) {\n ctx.params[tag] = ibiz.env;\n } else if (m.applicationParam) {\n ctx.params[tag] = app;\n } else if (m.entityListParam) {\n ctx.params[tag] = [];\n } else if (m.entityPageParam) {\n throw new ModelError20(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u5206\\u9875\\u67E5\\u8BE2\\u7ED3\\u679C\");\n } else if (m.entityParam) {\n ctx.params[tag] = {};\n } else if (m.lastReturnParam) {\n throw new ModelError20(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u4E0A\\u6B21\\u8C03\\u7528\\u8FD4\\u56DE\");\n } else if (m.navContextParam) {\n ctx.params[tag] = context;\n } else if (m.navViewParamParam) {\n throw new ModelError20(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u89C6\\u56FE\\u8DEF\\u7531\\u53C2\\u6570\");\n } else if (m.routeViewSessionParam) {\n throw new ModelError20(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u8DEF\\u7531\\u89C6\\u56FE\\u4F1A\\u8BDD\");\n } else if (m.simpleListParam) {\n ctx.params[tag] = [];\n } else if (m.simpleParam) {\n ctx.params[tag] = {};\n } else if (m.viewNavDataParam) {\n ctx.params[tag] = viewParams;\n } else if (m.viewSessionParam) {\n throw new ModelError20(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B: \\u5F53\\u524D\\u89C6\\u56FE\\u4F1A\\u8BDD\");\n }\n }\n /**\n * 重新建立变量\n * @author lxm\n * @date 2023-03-24 09:20:42\n * @param {DELogicContext} ctx\n */\n renew(ctx) {\n const tag = this.model.id;\n const m = this.model;\n if (m.entityListParam || m.simpleListParam || m.entityPageParam) {\n ctx.params[tag] = [];\n } else if (m.simpleParam || m.entityParam) {\n ctx.params[tag] = {};\n } else {\n throw new ModelError20(m, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u53C2\\u6570\\u7C7B\\u578B\\u91CD\\u65B0\\u5EFA\\u7ACB\\u53D8\\u91CF\");\n }\n }\n};\n\n// src/ui-logic/ui-logic.ts\nvar UILogic = class {\n /**\n * Creates an instance of UILogic.\n * @author chitanda\n * @date 2023-02-08 17:02:26\n * @param {IDEUILogic} model\n */\n constructor(model) {\n this.model = model;\n /**\n * 所有节点实例\n *\n * @author chitanda\n * @date 2023-02-08 21:02:38\n * @protected\n * @type {Map<string, UILogicNode>}\n */\n this.nodes = /* @__PURE__ */ new Map();\n /**\n * 所有参数实例\n *\n * @author chitanda\n * @date 2023-02-08 21:02:25\n * @protected\n * @type {Map<string, UILogicParam>}\n */\n this.params = /* @__PURE__ */ new Map();\n var _a;\n if (!((_a = model.deuilogicNodes) == null ? void 0 : _a.length)) {\n throw new RuntimeModelError25(model, \"\\u754C\\u9762\\u903B\\u8F91\\u6CA1\\u6709\\u914D\\u7F6E\\u903B\\u8F91\\u8282\\u70B9\");\n }\n model.deuilogicNodes.forEach((node) => {\n const { logicNodeType } = node;\n let logicNode;\n switch (logicNodeType) {\n case \"BEGIN\":\n logicNode = new StartNode2(node);\n break;\n case \"END\":\n logicNode = new EndNode2(node);\n break;\n case \"DEACTION\":\n logicNode = new DEActionNode2(node);\n break;\n case \"DEUIACTION\":\n logicNode = new DEUIActionNode(node);\n break;\n case \"PREPAREJSPARAM\":\n logicNode = new PrepareJSParamNode(node);\n break;\n case \"RESETPARAM\":\n case \"COPYPARAM\":\n case \"BINDPARAM\":\n case \"VIEWCTRLINVOKE\":\n logicNode = new ViewCtrlInvokeNode(node);\n break;\n case \"VIEWCTRLFIREEVENT\":\n case \"APPENDPARAM\":\n case \"SORTPARAM\":\n case \"RENEWPARAM\":\n case \"PFPLUGIN\":\n case \"MSGBOX\":\n case \"DEDATASET\":\n case \"DELOGIC\":\n case \"THROWEXCEPTION\":\n case \"DEBUGPARAM\":\n default:\n throw new ModelError21(node, \"\\u672A\\u652F\\u6301\\u7684\\u903B\\u8F91\\u8282\\u70B9\\u7C7B\\u578B: \".concat(logicNodeType));\n }\n this.nodes.set(node.id, logicNode);\n });\n model.deuilogicParams.forEach((param) => {\n this.params.set(param.id, new UILogicParam(param));\n });\n this.nodes.forEach((node) => {\n node.links.forEach((link) => {\n link.srcNode = node;\n if (this.nodes.has(link.model.dstDEUILogicNodeId)) {\n link.dstNode = this.nodes.get(link.model.dstDEUILogicNodeId);\n }\n });\n });\n }\n /**\n * 初始化逻辑参数\n *\n * @author chitanda\n * @date 2023-02-08 21:02:58\n * @protected\n * @param {UILogicContext} ctx\n * @param {IContext} context\n * @param {IData} data\n * @param {IParams} [opt]\n */\n initLogicParams(ctx) {\n this.params.forEach((param) => {\n if (param.model.default) {\n ctx.defaultParamName = param.model.id;\n }\n param.calc(ctx);\n });\n }\n /**\n * 执行视图逻辑\n *\n * @author chitanda\n * @date 2023-02-08 21:02:09\n * @param {IContext} context\n * @param {IData} data\n * @param {IParams} [opt]\n * @return {*} {Promise<IData>}\n */\n async exec(parameters) {\n const ctx = new UILogicContext(this.params, parameters);\n this.initLogicParams(ctx);\n const { startDEUILogicNodeId } = this.model;\n if (startDEUILogicNodeId && this.nodes.has(startDEUILogicNodeId)) {\n const start = this.nodes.get(startDEUILogicNodeId);\n await this.deepExec(start, ctx);\n } else {\n throw new RuntimeModelError25(this.model, \"\\u672A\\u8BBE\\u7F6E\\u8D77\\u59CB\\u8282\\u70B9\");\n }\n if (ctx.isEndNode) {\n return ctx.result;\n }\n if (ctx.params[ctx.defaultParamName]) {\n return ctx.params[ctx.defaultParamName];\n }\n return null;\n }\n /**\n * 开始根据连线递归执行逻辑\n *\n * @author chitanda\n * @date 2023-02-09 15:02:32\n * @protected\n * @param {UILogicNode} node\n * @param {UILogicContext} ctx\n * @param {IContext} context\n * @param {(IData[] | null)} data\n * @param {IParams} params\n * @param {IParams} [opt]\n * @return {*} {(Promise<IData | null>)}\n */\n async deepExec(node, ctx) {\n await node.exec(ctx);\n const { links } = node;\n for (let index = 0; index < links.length; index++) {\n const link = links[index];\n const bol = await link.exec(ctx);\n if (bol && link.dstNode) {\n await this.deepExec(link.dstNode, ctx);\n if (node.model.parallelOutput === false) {\n break;\n }\n }\n }\n }\n};\n\n// src/ui-logic/index.ts\nvar uiLogicMap = /* @__PURE__ */ new Map();\nasync function execUILogic(deUILogicId, appDataEntityId, parameters) {\n const app = ibiz.hub.getApp(parameters.context.srfappid);\n const deUILogic = await app.getDEUILogic(deUILogicId, appDataEntityId);\n if (!deUILogic) {\n throw new RuntimeError20(\n \"\\u627E\\u4E0D\\u5230\\u5B9E\\u4F53\".concat(appDataEntityId, \"\\u7684\\u754C\\u9762\\u903B\\u8F91\").concat(deUILogicId)\n );\n }\n if (!uiLogicMap.has(deUILogic)) {\n uiLogicMap.set(deUILogic, new UILogic(deUILogic));\n }\n const uiLogic = uiLogicMap.get(deUILogic);\n await uiLogic.exec(parameters);\n return null;\n}\n\n// src/ui-action/uiaction-util.ts\nimport { RuntimeError as RuntimeError21 } from \"@ibiz-template/core\";\nvar UIActionUtil = class {\n /**\n * 执行界面行为\n *\n * @author lxm\n * @date 2023-05-15 07:54:53\n * @static\n * @param {string} actionId 界面行为id\n * @param {IUILogicParams} params 界面行为参数\n * @return {*} {Promise<IUIActionResult>}\n */\n static async exec(actionId, params) {\n const action = await getUIActionById(actionId);\n if (!action) {\n throw new RuntimeError21(\"\\u6CA1\\u627E\\u5230\".concat(actionId, \"\\u7684\\u754C\\u9762\\u884C\\u4E3A\\u6A21\\u578B\"));\n }\n const provider = await getUIActionProvider(action);\n return provider.exec(action, params);\n }\n /**\n * 执行界面行为并处理返回值\n * @author lxm\n * @date 2023-05-15 07:54:36\n * @static\n * @param {string} actionId 界面行为id\n * @param {IUILogicParams} params 界面行为参数\n */\n static async execAndResolved(actionId, params) {\n const result = await this.exec(actionId, params);\n if (result.closeView) {\n params.view.closeView();\n } else if (result.refresh) {\n await params.view.callUIAction(\"Refresh\" /* REFRESH */);\n }\n }\n};\n\n// src/ui-action/provider/ui-action-provider-base.ts\nvar UIActionProviderBase = class {\n /**\n * 界面行为执行入口,处理公共逻辑,子类一般不要重写\n * @author lxm\n * @date 2023-05-08 10:02:10\n * @param {IAppDEUIAction} action\n * @param {IUILogicParams} params\n * @return {*} {Promise<IUIActionResult>}\n */\n async exec(action, args) {\n const { context, params, data } = args;\n const result = {\n refresh: action.reloadData,\n closeView: action.closeEditView\n };\n const { appDEUILogicId, appDataEntityId, uilogicAttachMode } = action;\n if (uilogicAttachMode === \"REPLACE\") {\n if (!appDEUILogicId) {\n throw new RuntimeModelError26(action, \"\\u6CA1\\u6709\\u914D\\u7F6E\\u5B9E\\u4F53\\u754C\\u9762\\u903B\\u8F91\");\n }\n await execUILogic(appDEUILogicId, appDataEntityId, args);\n return result;\n }\n if (!await this.isConfirm(action)) {\n return this.returnError(result);\n }\n const _result = await this.execAction(action, args);\n Object.assign(result, _result);\n if (result.cancel === true) {\n return this.returnError(result);\n }\n const nextResult = await this.doNextAction(action, {\n ...args,\n context: result.nextContext || context,\n data: result.data || data,\n params: result.nextParams || params\n });\n if (nextResult) {\n Object.assign(result, nextResult);\n if (nextResult.cancel === true) {\n return this.returnError(result);\n }\n }\n if (action.uilogicAttachMode === \"AFTER\") {\n if (!appDEUILogicId) {\n throw new RuntimeModelError26(action, \"\\u6CA1\\u6709\\u914D\\u7F6E\\u5B9E\\u4F53\\u754C\\u9762\\u903B\\u8F91\");\n }\n await execUILogic(appDEUILogicId, appDataEntityId, args);\n }\n return result;\n }\n /**\n * 有错误和取消时对result做的处理\n * @author lxm\n * @date 2023-03-15 07:43:21\n * @protected\n * @param {IUIActionResult} result\n * @returns {*} {IUIActionResult}\n * @memberof UIActionHandler\n */\n returnError(result) {\n return Object.assign(result, {\n refresh: false,\n closeView: false\n });\n }\n /**\n * 用户操作确认\n *\n * @author lxm\n * @date 2022-10-25 14:10:55\n * @param {IAppDEUIAction} action 界面行为模型\n * @returns {*} {Promise<boolean>}\n */\n async isConfirm(action) {\n if (action.enableConfirm && action.confirmMsg) {\n return ibiz.modal.confirm({ title: action.confirmMsg });\n }\n return true;\n }\n /**\n * 执行后续界面行为\n *\n * @author lxm\n * @date 2022-10-25 15:10:54\n * @param {IAppDEUIAction} action\n * @param {IContext} context\n * @param {(IData[])} data\n * @param {IParams} params\n * @param {(IData | undefined)} [opts]\n * @returns {*} {Promise<void>}\n */\n async doNextAction(action, params) {\n const nextActionId = action.nextId;\n if (nextActionId) {\n return UIActionUtil.exec(nextActionId, params);\n }\n }\n /**\n * 参数处理(根据数据目标和数据参数,导航参数)\n *\n * @author lxm\n * @date 2022-08-29 17:08:00\n * @protected\n * @static\n * @param {IAppDEUIAction} action 界面行为\n * @param {IContext} context 上下文\n * @param {(IData[])} data 数据集合\n * @param {IParams} params 视图参数\n * @returns {*} {Promise<{\n * resultContext: IContext; 处理后的上下文\n * resultData: IData[]; 处理后的数据集合\n * resultParams: IParams; 处理后的视图参数\n * }>}\n */\n async handleParams(action, context, data, params) {\n let resultData = [];\n const deName = calcDeCodeNameById(action.appDataEntityId);\n switch (action.actionTarget) {\n case \"NONE\":\n resultData = [];\n break;\n case \"SINGLEDATA\":\n resultData = [data[0]];\n break;\n case \"MULTIDATA\":\n resultData = data;\n break;\n case \"MULTIKEY\":\n resultData = deName && data.length > 0 ? data.map((item) => ({ [deName]: item.srfkey || item[deName] })) : [{}];\n break;\n case \"SINGLEKEY\":\n {\n const originData = data[0] || {};\n resultData = deName ? [{ [deName]: originData.srfkey || originData[deName] }] : [{}];\n }\n break;\n default:\n break;\n }\n const resultContext = context.clone();\n const navContexts = [...action.navigateContexts || []];\n if (deName && action.actionTarget !== \"NONE\") {\n const { valueItem, paramItem } = action;\n const key = paramItem || deName;\n const valueKey = valueItem || \"srfkey\";\n navContexts.unshift({\n key,\n value: valueKey,\n rawValue: false\n });\n }\n const isMultiData = [\"MULTIKEY\", \"MULTIDATA\"].includes(action.actionTarget) && data.length > 0;\n const tempContext = convertNavData(\n navContexts,\n context,\n params,\n isMultiData ? formatMultiData(navContexts, data) : data[0] || {}\n );\n Object.assign(resultContext, tempContext);\n const navParams = action.navigateParams;\n const resultParams = convertNavData(\n navParams,\n resultContext,\n params,\n isMultiData ? formatMultiData(navParams, data) : data[0] || {}\n );\n return { resultContext, resultData, resultParams };\n }\n};\n\n// src/ui-action/provider/backend-ui-action-provider.ts\nvar BackendUIActionProvider = class extends UIActionProviderBase {\n async execAction(action, args) {\n const { context, params, data, event } = args;\n const actionResult = {};\n const entityName = action.appDataEntityId;\n const methodName = action.appDEMethodId;\n if (!entityName || !methodName) {\n throw new RuntimeModelError27(action, \"\\u672A\\u914D\\u7F6E\\u5B9E\\u4F53\\u6216\\u5B9E\\u4F53\\u884C\\u4E3A\");\n }\n const { resultContext, resultParams, resultData } = await this.handleParams(\n action,\n context,\n data,\n params\n );\n const tempParams = { ...params, ...resultParams };\n const frontPSAppView = action.frontAppViewId;\n if (frontPSAppView) {\n const res2 = await ibiz.commands.execute(\n OpenAppViewCommand.TAG,\n frontPSAppView,\n resultContext,\n resultParams,\n { event }\n );\n if (!(res2 == null ? void 0 : res2.ok)) {\n actionResult.cancel = true;\n return actionResult;\n }\n if ((res2 == null ? void 0 : res2.ok) && res2.data) {\n if (resultData.length === 0) {\n resultData.push({});\n }\n resultData.forEach((item) => {\n item.srfactionparam = res2.data;\n });\n }\n }\n const app = ibiz.hub.getApp(context == null ? void 0 : context.srfappid);\n const _data = resultData.map((item) => {\n var _a;\n return ((_a = item.getOrigin) == null ? void 0 : _a.call(item)) || item || {};\n });\n const isMultiData = [\"MULTIKEY\", \"MULTIDATA\"].includes(\n action.actionTarget\n );\n const res = await app.deService.exec(\n entityName,\n methodName,\n resultContext,\n isMultiData ? _data : _data[0],\n tempParams\n );\n if (res.ok && action.successMsg) {\n ibiz.message.success(action.successMsg);\n }\n Object.assign(actionResult, {\n data: isArray2(res.data) ? res.data : [res.data],\n nextContext: resultContext,\n nextParams: tempParams\n });\n return actionResult;\n }\n};\n\n// src/ui-action/provider/sys-ui-action-provider.ts\nvar SysUIActionProvider = class extends UIActionProviderBase {\n async execAction(action, args) {\n const { view } = args;\n const uIActionTag = action.uiactionTag;\n if (uIActionTag === \"Exit\" /* EXIT */) {\n return { closeView: true };\n }\n const result = await view.callUIAction(uIActionTag, args);\n return result || {};\n }\n};\n\n// src/ui-action/provider/front-ui-action-provider.ts\nimport { StringUtil, RuntimeModelError as RuntimeModelError28, ModelError as ModelError22 } from \"@ibiz-template/core\";\nvar FrontUIActionProvider = class extends UIActionProviderBase {\n async execAction(action, args) {\n const { context, params, data, event, noWaitRoute } = args;\n let actionResult = {};\n switch (action.frontProcessType) {\n case \"OPENHTMLPAGE\": {\n const url = StringUtil.fill(action.htmlPageUrl, context, data == null ? void 0 : data[0]);\n window.open(url, \"_blank\");\n break;\n }\n case \"TOP\":\n case \"WIZARD\": {\n const frontPSAppView = action.frontAppViewId;\n if (!frontPSAppView) {\n throw new RuntimeModelError28(action, \"\\u672A\\u914D\\u7F6E\\u6253\\u5F00\\u89C6\\u56FE\");\n }\n const { resultContext, resultParams } = await this.handleParams(\n action,\n context,\n data,\n params\n );\n const res = await ibiz.commands.execute(\n OpenAppViewCommand.TAG,\n frontPSAppView,\n resultContext,\n resultParams,\n { event, noWaitRoute }\n );\n if (!(res == null ? void 0 : res.ok)) {\n actionResult.cancel = true;\n }\n if ((res == null ? void 0 : res.ok) && res.data) {\n actionResult.data = res.data;\n actionResult.nextContext = resultContext;\n actionResult.nextParams = { ...params, ...resultParams };\n }\n break;\n }\n case \"OTHER\":\n actionResult = this.doOther(action, args);\n break;\n default:\n throw new ModelError22(\n action,\n \"\\u672A\\u652F\\u6301\\u7684\\u524D\\u53F0\\u5904\\u7406\\u6A21\\u5F0F[\".concat(action.frontProcessType, \"]\")\n );\n }\n return actionResult;\n }\n /**\n * 处理模式:用户自定义\n * @author lxm\n * @date 2023-07-25 02:39:48\n * @protected\n * @param {IAppDEUIAction} action\n * @param {IUILogicParams} args\n * @return {*}\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n doOther(action, args) {\n const { scriptCode } = action;\n const { context, params, data, event } = args;\n if (scriptCode) {\n const result = ScriptFactory.execScriptFn(\n { context, params, data, el: event == null ? void 0 : event.target },\n scriptCode\n );\n return result || {};\n }\n throw new RuntimeModelError28(action, \"\\u81EA\\u5B9A\\u4E49\\u7C7B\\u578B\\u7F3A\\u5C11\\u914D\\u7F6E\\u811A\\u672C\\u4EE3\\u7801\");\n }\n};\n\n// src/ui-action/provider/wf-withdraw-ui-action-provider.ts\nvar WFWithdrawUIActionProvider = class extends UIActionProviderBase {\n async execAction(_action, args) {\n const { view } = args;\n const isWithdraw = await ibiz.modal.confirm({\n title: \"\\u63D0\\u793A\",\n desc: \"\\u662F\\u5426\\u786E\\u8BA4\\u6267\\u884C\\u64A4\\u56DE\\u64CD\\u4F5C\\uFF1F\"\n });\n let isCloseView = false;\n if (isWithdraw && view) {\n await view.call(\"WFWithdraw\", args);\n isCloseView = true;\n }\n return {\n refresh: false,\n closeView: isCloseView\n };\n }\n};\n\n// src/ui-action/provider/index.ts\nfunction presetUIActionProvider() {\n const frontUIActionProvider = new FrontUIActionProvider();\n registerUIActionProvider(\"FRONT\", () => frontUIActionProvider);\n const backendUIActionProvider = new BackendUIActionProvider();\n registerUIActionProvider(\"BACKEND\", () => backendUIActionProvider);\n const sysUIActionProvider = new SysUIActionProvider();\n registerUIActionProvider(\"SYS\", () => sysUIActionProvider);\n const wfWithdrawUIActionProvider = new WFWithdrawUIActionProvider();\n registerUIActionProvider(\n \"DEUIACTION_WFWithdraw\",\n () => wfWithdrawUIActionProvider\n );\n}\n\n// src/logic-scheduler/executor/logic-executor.ts\nimport { RuntimeError as RuntimeError22 } from \"@ibiz-template/core\";\nvar LogicExecutor = class {\n /**\n * @author lxm\n * @date 2023-06-25 07:32:57\n * @param {ISchedulerLogic} logic 逻辑\n */\n constructor(logic, scheduler) {\n this.logic = logic;\n this.scheduler = scheduler;\n this.type = logic.logicType;\n }\n /**\n * 执行逻辑\n * @author lxm\n * @date 2023-06-26 02:55:40\n * @param {IUILogicParams} _executeParams 执行参数\n * @return {*} {*}\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n execute(_executeParams) {\n throw new RuntimeError22(\"Method not implemented.\");\n }\n /**\n * 销毁方法\n * @author lxm\n * @date 2023-07-17 11:48:54\n */\n destroy() {\n }\n};\n\n// src/logic-scheduler/executor/logic-executor-factory.ts\nimport { ModelError as ModelError23 } from \"@ibiz-template/core\";\nvar LogicExecutorFactory = class {\n constructor() {\n /**\n * 构造回调方法集合\n * @author lxm\n * @date 2023-06-25 06:53:31\n */\n this.constructorMap = /* @__PURE__ */ new Map();\n }\n /**\n * 注册\n * @author lxm\n * @date 2023-06-25 06:54:17\n * @param {string} key 注册标识\n * @param {(logic: ISchedulerLogic, scheduler: LogicScheduler) => LogicExecutor} callback\n */\n register(key, callback) {\n this.constructorMap.set(key, callback);\n }\n /**\n * 创建执行器实例\n * @author lxm\n * @date 2023-06-25 06:59:51\n * @param {ISchedulerLogic} logic\n * @return {*}\n */\n createExecutor(logic, scheduler) {\n const constructor = this.constructorMap.get(logic.logicType);\n if (!constructor) {\n throw new ModelError23(logic, \"\\u903B\\u8F91\\u7C7B\\u578B \".concat(logic.logicType, \" \\u6682\\u672A\\u652F\\u6301\\uFF01\"));\n }\n return constructor(logic, scheduler);\n }\n};\n\n// src/logic-scheduler/executor/script-executor.ts\nimport { RuntimeError as RuntimeError23 } from \"@ibiz-template/core\";\nvar ScriptExecutor = class extends LogicExecutor {\n constructor() {\n super(...arguments);\n /**\n * 是否单行返回,脚本只是单行的且默认把值返回\n * @author lxm\n * @date 2023-06-25 10:06:32\n * @type {boolean}\n */\n this.isRowReturn = false;\n }\n /**\n * 执行参数转换成脚本执行作用域参数\n * @author lxm\n * @date 2023-06-26 03:29:24\n * @param {IUILogicParams} _executeParams\n * @return {*} {IData[]}\n */\n convertScriptArgs(_executeParams) {\n throw new RuntimeError23(\"\\u672A\\u8BBE\\u7F6E\\u811A\\u672C\\u6267\\u884C\\u53C2\\u6570\\u8F6C\\u6362\\u65B9\\u6CD5\");\n }\n /**\n * 初始化脚本执行器\n * @author lxm\n * @date 2023-06-26 03:27:50\n * @param {string[]} paramKeys 脚本作用域参数键值和顺序\n * @param {(executeParams: IUILogicParams) => IData[]} convertFun 脚本参数转换方法\n */\n init(paramKeys, convertFun) {\n this.convertScriptArgs = convertFun;\n let code = this.logic.scriptCode;\n if (this.isRowReturn) {\n code = \"return (\".concat(code, \")\");\n }\n this.scriptFn = ScriptFactory.createScriptFn(paramKeys, code, {\n singleRowReturn: this.isRowReturn\n });\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n execute(executeParams) {\n const scriptArgs = this.convertScriptArgs(executeParams);\n return this.scriptFn.exec(scriptArgs);\n }\n};\n\n// src/logic-scheduler/executor/app-de-ui-logic-executor.ts\nimport { RuntimeModelError as RuntimeModelError29 } from \"@ibiz-template/core\";\nvar AppDEUILogicExecutor = class extends LogicExecutor {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n execute(executeParams) {\n const { appDEUILogicId, appDataEntityId } = this.logic;\n if (!appDEUILogicId) {\n throw new RuntimeModelError29(this.logic, \"\\u6CA1\\u6709\\u914D\\u7F6E\\u5B9E\\u4F53\\u754C\\u9762\\u903B\\u8F91\");\n }\n execUILogic(appDEUILogicId, appDataEntityId, executeParams);\n }\n};\n\n// src/logic-scheduler/scheduler/logic-scheduler.ts\nimport { mergeLeft } from \"ramda\";\nvar LogicScheduler = class {\n constructor(logics) {\n this.triggers = /* @__PURE__ */ new Map();\n this.executors = /* @__PURE__ */ new Map();\n this.logics = logics;\n logics.forEach((logic) => {\n try {\n const executor = this.createExecutor(logic);\n this.executors.set(logic.id, executor);\n const trigger = this.createTrigger(logic);\n this.triggers.set(logic.id, trigger);\n trigger.bindExecutor(executor);\n } catch (error) {\n ibiz.log.error(error.message);\n }\n });\n }\n /**\n * 销毁方法\n * @author lxm\n * @date 2023-07-17 11:47:51\n */\n destroy() {\n this.triggers.forEach((trigger) => trigger.destroy());\n this.executors.forEach((executor) => executor.destroy());\n }\n /**\n * 获取执行参数,把默认参数和调用参数合并\n * @author lxm\n * @date 2023-06-25 08:28:34\n * @param {IData} args\n * @return {*}\n */\n getExecuteParams(executeParams) {\n let defaultParams = {};\n if (this.defaultParamsCb) {\n defaultParams = this.defaultParamsCb();\n }\n return mergeLeft(executeParams, defaultParams);\n }\n /**\n * 创建触发器实例\n * @author lxm\n * @date 2023-06-26 02:33:35\n * @protected\n * @param {ISchedulerLogic} logic\n * @return {*} {LogicTrigger}\n */\n createTrigger(logic) {\n return ibiz.scheduler.triggerFactory.createTrigger(logic, this);\n }\n /**\n * 创建执行器实例\n * @author lxm\n * @date 2023-06-26 02:33:52\n * @protected\n * @param {ISchedulerLogic} logic\n * @return {*} {LogicExecutor}\n */\n createExecutor(logic) {\n return ibiz.scheduler.executorFactory.createExecutor(logic, this);\n }\n /**\n * 获取匹配的触发器。\n * @author lxm\n * @date 2023-06-26 02:32:24\n * @param {ITriggerMatchParams} matchParams\n * @return {*} {LogicTrigger[]}\n */\n getMatchTriggers(matchParams) {\n const triggers = [];\n this.triggers.forEach((trigger) => {\n if (trigger.match(matchParams)) {\n triggers.push(trigger);\n }\n });\n return triggers;\n }\n /**\n * 找到匹配的触发器并执行对应的执行器,并返回结果。\n * 返回undefined表示没有匹配的触发器。\n * @author lxm\n * @date 2023-06-26 02:30:24\n * @param {ITriggerMatchParams} matchParams 匹配参数\n * @param {Partial<IUILogicParams>} [executeParams={}] 执行参数\n * @return {*} {(any[] | undefined)}\n */\n triggerAndExecute(matchParams, executeParams = {}) {\n const triggers = this.getMatchTriggers(matchParams);\n if (triggers.length > 0) {\n const params = this.getExecuteParams(executeParams);\n const result = triggers.map((trigger) => {\n return trigger.execute(params);\n });\n return result;\n }\n }\n /**\n * 预定义项的动态逻辑\n * @author lxm\n * @date 2023-06-26 02:29:08\n * @protected\n * @param {string} itemName 子项名称\n * @param {('ITEMVISIBLE' | 'ITEMENABLE' | 'ITEMBLANK')} triggerType 预定义逻辑类型\n * @param {Partial<IUILogicParams>} executeParams 执行参数\n * @return {*} {(boolean | undefined)}\n */\n triggerItemDynaLogic(itemName, triggerType, executeParams) {\n const matchParams = { itemName, triggerType };\n const result = this.triggerAndExecute(matchParams, executeParams);\n if (result == null ? void 0 : result.length) {\n return result.pop();\n }\n }\n /**\n * 预定义项显示逻辑\n * @author lxm\n * @date 2023-06-26 02:26:36\n * @param {string} itemName 子项名称\n * @param {Partial<IUILogicParams>} executeParams 执行参数\n * @return {*} {(boolean | undefined)}\n */\n triggerItemVisible(itemName, executeParams) {\n return this.triggerItemDynaLogic(itemName, \"ITEMVISIBLE\", executeParams);\n }\n /**\n * 预定义项启用逻辑\n * @author lxm\n * @date 2023-06-26 02:26:35\n * @param {string} itemName 子项名称\n * @param {Partial<IUILogicParams>} executeParams 执行参数\n * @return {*} {(boolean | undefined)}\n */\n triggerItemEnable(itemName, executeParams) {\n return this.triggerItemDynaLogic(itemName, \"ITEMENABLE\", executeParams);\n }\n /**\n * 预定义项空输入逻辑\n * @author lxm\n * @date 2023-06-26 02:26:33\n * @param {string} itemName 子项名称\n * @param {Partial<IUILogicParams>} executeParams 执行参数\n * @return {*} {(boolean | undefined)}\n */\n triggerItemBlank(itemName, executeParams) {\n return this.triggerItemDynaLogic(itemName, \"ITEMBLANK\", executeParams);\n }\n /**\n * 定时器触发开始启用并计时\n * @author lxm\n * @date 2023-07-17 01:49:14\n */\n startTimerTrigger() {\n const triggers = this.getMatchTriggers({ triggerType: \"TIMER\" });\n triggers.forEach((trigger) => trigger.start());\n }\n /**\n * 执行自定义触发逻辑类型的视图逻辑\n * @author lxm\n * @date 2023-07-17 07:44:12\n * @param {string} id\n * @param {Partial<IUILogicParams>} executeParams\n * @return {*}\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n triggerCustom(id, executeParams) {\n const trigger = this.triggers.get(id);\n if (!trigger) {\n return -1;\n }\n const params = this.getExecuteParams(executeParams);\n return trigger.execute(params);\n }\n};\n\n// src/logic-scheduler/scheduler/control-logic-scheduler.ts\nvar ControlLogicScheduler = class extends LogicScheduler {\n constructor(logics) {\n const filterLogics = logics.filter(\n (item) => item.triggerType !== \"APPVIEWENGINE\"\n );\n super(filterLogics);\n }\n};\n\n// src/logic-scheduler/scheduler/view-logic-scheduler.ts\nvar ViewLogicScheduler = class extends LogicScheduler {\n constructor(logics) {\n logics.forEach((logic) => {\n logic.triggerType = logic.logicTrigger;\n });\n super(logics);\n }\n /**\n * 触发视图事件\n * @author lxm\n * @date 2023-06-26 02:26:33\n * @param {string} itemName 子项名称\n * @param {Partial<IUILogicParams>} executeParams 执行参数\n * @return {*} {(boolean | undefined)}\n */\n triggerViewEvent(event) {\n const matchParams = {\n eventName: event.eventName,\n triggerType: \"VIEWEVENT\"\n };\n this.triggerAndExecute(matchParams, event);\n }\n};\n\n// src/logic-scheduler/trigger/logic-trigger-factory.ts\nimport { ModelError as ModelError24 } from \"@ibiz-template/core\";\nvar LogicTriggerFactory = class {\n constructor() {\n /**\n * 构造回调方法集合\n * @author lxm\n * @date 2023-06-25 06:53:31\n */\n this.constructorMap = /* @__PURE__ */ new Map();\n }\n /**\n * 注册\n * @author lxm\n * @date 2023-06-25 06:54:17\n * @param {string} key 注册标识\n * @param {(logic: ISchedulerLogic, scheduler: LogicScheduler) => LogicTrigger} callback\n */\n register(key, callback) {\n this.constructorMap.set(key, callback);\n }\n /**\n * 创建触发器实例\n * @author lxm\n * @date 2023-06-25 06:56:32\n * @param {ISchedulerLogic} logic\n * @return {*}\n */\n createTrigger(logic, scheduler) {\n const constructor = this.constructorMap.get(logic.triggerType);\n if (!constructor) {\n throw new ModelError24(logic, \"\\u89E6\\u53D1\\u5668\\u7C7B\\u578B \".concat(logic.triggerType, \" \\u6682\\u672A\\u652F\\u6301\\uFF01\"));\n }\n return constructor(logic, scheduler);\n }\n};\n\n// src/logic-scheduler/logic-scheduler-center.ts\nvar LogicSchedulerCenter = class {\n constructor() {\n /**\n * 执行器工厂\n * @author lxm\n * @date 2023-06-25 06:41:42\n * @type {LogicExecutorFactory}\n */\n this.executorFactory = new LogicExecutorFactory();\n /**\n * 触发器工厂\n * @author lxm\n * @date 2023-06-25 06:44:12\n * @type {LogicTriggerFactory}\n */\n this.triggerFactory = new LogicTriggerFactory();\n }\n /**\n * 创建视图逻辑调度器实例\n * @author lxm\n * @date 2023-06-25 03:41:43\n * @param {IAppDEViewLogic} logics\n * @return {*} {ViewLogicScheduler}\n */\n createViewScheduler(logics) {\n return new ViewLogicScheduler(logics);\n }\n /**\n * 创建部件逻辑调度器实例\n * @author lxm\n * @date 2023-06-25 03:48:30\n * @param {IControlLogic} logics\n * @return {*} {ControlLogicScheduler}\n */\n createControlScheduler(logics) {\n return new ControlLogicScheduler(logics);\n }\n};\n\n// src/logic-scheduler/trigger/logic-trigger.ts\nimport { RuntimeError as RuntimeError24 } from \"@ibiz-template/core\";\nvar LogicTrigger = class {\n /**\n * @author lxm\n * @date 2023-06-25 07:32:57\n * @param {ISchedulerLogic} logic 逻辑\n */\n constructor(logic, scheduler) {\n this.logic = logic;\n this.scheduler = scheduler;\n this.type = logic.triggerType;\n }\n /**\n * 绑定执行器\n * @author lxm\n * @date 2023-06-25 07:25:13\n * @param {LogicExecutor} executor\n */\n bindExecutor(executor) {\n this.executor = executor;\n }\n /**\n * 匹配触发器,返回true表示该触发器满足触发条件。\n * @author lxm\n * @date 2023-06-25 07:49:00\n * @param {IData} _args\n * @return {*} {boolean}\n */\n match(matchParams) {\n return matchParams.triggerType === this.type;\n }\n /**\n * 执行对应的执行器\n * @author lxm\n * @date 2023-06-26 01:45:42\n * @param {Partial<IUILogicParams>} executeParams\n * @return {*}\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n execute(executeParams) {\n if (this.executor) {\n return this.executor.execute(executeParams);\n }\n throw new RuntimeError24(\"\".concat(this.logic.id, \"\\u6CA1\\u6709\\u7ED1\\u5B9Aexecutor\"));\n }\n /**\n * 销毁方法\n * @author lxm\n * @date 2023-07-17 11:48:54\n */\n destroy() {\n this.executor = void 0;\n }\n};\n\n// src/logic-scheduler/trigger/custom-trigger.ts\nvar CustomTrigger = class extends LogicTrigger {\n};\n\n// src/logic-scheduler/trigger/item-dyna-logic-trigger.ts\nimport { RuntimeError as RuntimeError25 } from \"@ibiz-template/core\";\nvar ItemDynaLogicTrigger = class extends LogicTrigger {\n bindExecutor(executor) {\n super.bindExecutor(executor);\n if (this.executor.type !== \"SCRIPT\") {\n throw new RuntimeError25(\n \"\\u9884\\u5B9A\\u4E49\\u903B\\u8F91\\u7C7B\\u578B\".concat(this.type, \"\\u7684\\u89E6\\u53D1\\u5668\\u7C7B\\u578B\\u53EA\\u80FD\\u662F\\u811A\\u672C\")\n );\n }\n this.executor.isRowReturn = true;\n this.executor.init(\n [\"context\", \"viewparams\", \"data\", \"env\"],\n (executeParams) => {\n const { context, params, data } = executeParams;\n return {\n context,\n params,\n data: (data == null ? void 0 : data[0]) || {},\n env: ibiz.env\n };\n }\n );\n }\n match(matchParams) {\n const superResult = super.match(matchParams);\n return superResult && matchParams.itemName === this.logic.itemName;\n }\n execute(executeParams) {\n const result = this.executor.execute(executeParams);\n if (typeof result === \"boolean\") {\n return result;\n }\n throw new RuntimeError25(\"\".concat(this.logic.id, \"\\u903B\\u8F91\\u8FD4\\u56DE\\u503C\\u4E0D\\u662F\\u5E03\\u5C14\\u503C\"));\n }\n};\n\n// src/logic-scheduler/trigger/timer-trigger.ts\nimport { RuntimeError as RuntimeError26 } from \"@ibiz-template/core\";\nvar TimerTrigger = class extends LogicTrigger {\n constructor() {\n super(...arguments);\n this.timer = null;\n }\n start() {\n this.timer = setInterval(() => {\n if (!this.scheduler.defaultParamsCb) {\n throw new RuntimeError26(\"\\u5B9A\\u65F6\\u5668\\u7F3A\\u5C11\\u9ED8\\u8BA4\\u53C2\\u6570\\u56DE\\u8C03\");\n }\n const params = this.scheduler.defaultParamsCb();\n this.executor.execute(params);\n }, this.logic.timer);\n }\n destroy() {\n super.destroy();\n if (this.timer) {\n clearInterval(this.timer);\n }\n }\n};\n\n// src/logic-scheduler/executor/app-ui-logic-executor.ts\nimport { RuntimeError as RuntimeError27, RuntimeModelError as RuntimeModelError30 } from \"@ibiz-template/core\";\nimport { notNilEmpty as notNilEmpty5 } from \"qx-util\";\nvar AppUILogicExecutor = class extends LogicExecutor {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n execute(executeParams) {\n if (this.logic.id === \"opendata\" && this.logic.builtinAppUILogic) {\n return this.executeOpenDataAppUILogic(\n this.logic.builtinAppUILogic,\n executeParams\n );\n }\n if (this.logic.id === \"newdata\" && this.logic.builtinAppUILogic) {\n return this.executeNewDataAppUILogic(\n this.logic.builtinAppUILogic,\n executeParams\n );\n }\n }\n /**\n * 执行应用预置界面逻辑opendata\n *\n * @author lxm\n * @date 2022-08-22 14:08:03\n * @export\n * @param {IPSAppUIOpenDataLogic} appUILogic 应用预置界面逻辑opendata模型对象\n * @param {IContext} context 上下文参数\n * @param {(IData | null)} data 数据集合\n * @param {IParams} params 视图参数\n * @param {IData} [opts] 额外参数,event是js原生事件\n */\n async executeOpenDataAppUILogic(appUILogic, parameters) {\n const { context, params, data, ...rest } = parameters;\n if (!(data == null ? void 0 : data[0])) {\n throw new RuntimeError27(\"opendata\\u6CA1\\u6709\\u53EF\\u64CD\\u4F5C\\u6570\\u636E\\uFF01\");\n }\n const openViewRef = appUILogic.openDataAppView;\n if (!openViewRef) {\n throw new RuntimeModelError30(\n appUILogic,\n \"opendata\\u89C6\\u56FE\\u903B\\u8F91\\u6CA1\\u6709\\u914D\\u7F6E\\u9ED8\\u8BA4\\u6253\\u5F00\\u89C6\\u56FE\"\n );\n }\n const openView = openViewRef.refAppViewId;\n if (!openView) {\n throw new RuntimeModelError30(\n appUILogic,\n \"opendata\\u89C6\\u56FE\\u903B\\u8F91\\u7684\\u9ED8\\u8BA4\\u6253\\u5F00\\u89C6\\u56FE\\u6CA1\\u6709\\u5B9E\\u9645\\u5F15\\u7528\\u89C6\\u56FE\"\n );\n }\n const navContexts = openViewRef.navigateContexts || [];\n const tempContext = Object.assign(\n context,\n convertNavData(navContexts, context, params, data[0])\n );\n let tempParams = {};\n const navParams = openViewRef.navigateParams;\n if (notNilEmpty5(navParams)) {\n tempParams = convertNavData(navParams, params, context, data[0]);\n }\n await ibiz.commands.execute(\n OpenAppViewCommand.TAG,\n openView,\n tempContext,\n tempParams,\n rest\n );\n }\n /**\n * 执行应用预置界面逻辑newdata\n *\n * @author lxm\n * @date 2022-08-22 14:08:03\n * @export\n * @param {IPSAppUINewDataLogic} appUILogic 应用预置界面逻辑newdata模型对象\n * @param {IContext} context 上下文参数\n * @param {(IData | null)} data 数据集合\n * @param {IParams} params 视图参数\n * @param {IData} [opts] 额外参数,event是js原生事件\n */\n async executeNewDataAppUILogic(appUILogic, parameters) {\n const { context, params, data, ...rest } = parameters;\n const newViewRef = appUILogic.newDataAppView;\n if (!newViewRef) {\n throw new RuntimeModelError30(\n appUILogic,\n \"newdata\\u89C6\\u56FE\\u903B\\u8F91\\u6CA1\\u6709\\u914D\\u7F6E\\u9ED8\\u8BA4\\u65B0\\u5EFA\\u6570\\u636E\\u89C6\\u56FE\"\n );\n }\n const newView = newViewRef.refAppViewId;\n if (!newView) {\n throw new RuntimeModelError30(\n appUILogic,\n \"newdata\\u89C6\\u56FE\\u903B\\u8F91\\u7684\\u9ED8\\u8BA4\\u65B0\\u5EFA\\u6570\\u636E\\u89C6\\u56FE\\u6CA1\\u6709\\u5B9E\\u9645\\u5F15\\u7528\\u89C6\\u56FE\"\n );\n }\n let tempContext = {};\n let tempParams = {};\n const _data = (data == null ? void 0 : data[0]) || {};\n const navContexts = newViewRef.navigateContexts;\n if (notNilEmpty5(navContexts)) {\n tempContext = convertNavData(navContexts, context, params, _data);\n }\n tempContext = Object.assign(context, tempContext);\n const navParams = newViewRef.navigateParams;\n if (notNilEmpty5(navParams)) {\n tempParams = convertNavData(navParams, params, context, _data);\n }\n if (context.srfcopymode) {\n _data.srfkey = void 0;\n tempParams = Object.assign(tempParams, _data.$origin);\n }\n if (appUILogic.enableWizardAdd) {\n } else if (appUILogic.enableBatchAdd) {\n } else if (appUILogic.batchAddOnly) {\n }\n await ibiz.commands.execute(\n OpenAppViewCommand.TAG,\n newView,\n tempContext,\n tempParams,\n rest\n );\n }\n};\n\n// src/logic-scheduler/trigger/view-event-trigger.ts\nvar ViewEventTrigger = class extends LogicTrigger {\n constructor(logic, scheduler) {\n super(logic, scheduler);\n this.logic = logic;\n this.scheduler = scheduler;\n /**\n * 监听事件名称集合\n * @author lxm\n * @date 2023-07-26 05:48:30\n * @protected\n * @type {string[]}\n */\n this.listenEventNames = [];\n const names = logic.eventNames.split(\",\");\n this.listenEventNames = names.map(\n (name) => StudioViewEvents[name] || name\n );\n }\n match(matchParams) {\n const superResult = super.match(matchParams);\n return superResult && this.listenEventNames.includes(matchParams.eventName);\n }\n};\n\n// src/logic-scheduler/index.ts\nfunction installLogicSchedule() {\n ibiz.scheduler = new LogicSchedulerCenter();\n ibiz.scheduler.triggerFactory.register(\n \"ITEMVISIBLE\",\n (logic, scheduler) => new ItemDynaLogicTrigger(logic, scheduler)\n );\n ibiz.scheduler.triggerFactory.register(\n \"ITEMENABLE\",\n (logic, scheduler) => new ItemDynaLogicTrigger(logic, scheduler)\n );\n ibiz.scheduler.triggerFactory.register(\n \"ITEMBLANK\",\n (logic, scheduler) => new ItemDynaLogicTrigger(logic, scheduler)\n );\n ibiz.scheduler.triggerFactory.register(\n \"TIMER\",\n (logic, scheduler) => new TimerTrigger(logic, scheduler)\n );\n ibiz.scheduler.triggerFactory.register(\n \"CUSTOM\",\n (logic, scheduler) => new CustomTrigger(logic, scheduler)\n );\n ibiz.scheduler.triggerFactory.register(\n \"VIEWEVENT\",\n (logic, scheduler) => new ViewEventTrigger(logic, scheduler)\n );\n ibiz.scheduler.executorFactory.register(\n \"SCRIPT\",\n (logic, scheduler) => new ScriptExecutor(logic, scheduler)\n );\n ibiz.scheduler.executorFactory.register(\n \"APPDEUILOGIC\",\n (logic, scheduler) => new AppDEUILogicExecutor(logic, scheduler)\n );\n ibiz.scheduler.executorFactory.register(\n \"DEUILOGIC\",\n (logic, scheduler) => new AppDEUILogicExecutor(logic, scheduler)\n );\n ibiz.scheduler.executorFactory.register(\n \"APPUILOGIC\",\n (logic, scheduler) => new AppUILogicExecutor(logic, scheduler)\n );\n}\n\n// src/install.ts\nfunction install() {\n const { ibiz: ibiz2 } = window;\n ibiz2.util = new GlobalUtil();\n ibiz2.hub = new AppHub();\n ibiz2.register = new RegisterCenter();\n ibiz2.config = new GlobalConfig();\n ibiz2.auth = new AuthService();\n ibiz2.engine = new EngineFactory();\n installCommand();\n presetUIActionProvider();\n installLogicSchedule();\n}\n\n// src/plugin/plugin-static-resource/plugin-static-resource.ts\nvar import_path_browserify = __toESM(require_path_browserify(), 1);\nvar PluginStaticResource = class {\n /**\n * 插件静态资源工具类.\n *\n * @author chitanda\n * @date 2022-11-03 10:11:41\n * @param {string} mateUrl import.mate.url\n */\n constructor(mateUrl) {\n /**\n * 已经输出过路径的 style 标签\n *\n * @author chitanda\n * @date 2023-03-23 10:03:38\n * @protected\n * @type {Map<string, null>}\n */\n this.styleElementMap = /* @__PURE__ */ new Map();\n this.url = new URL(mateUrl);\n const dir = import_path_browserify.default.dirname(this.url.pathname);\n this.baseDir = dir;\n }\n /**\n * 合并输出静态资源目录\n *\n * @author chitanda\n * @date 2022-11-03 10:11:39\n * @param {string} pathStr\n * @return {*} {string}\n */\n dir(pathStr) {\n return import_path_browserify.default.resolve(this.baseDir, pathStr);\n }\n /**\n * 加载样式静态资源\n *\n * @author chitanda\n * @date 2023-03-23 10:03:49\n * @param {string[]} urls\n * @return {*} {Promise<void>}\n */\n async loadStyle(urls) {\n const all = urls.map((styleUrl) => {\n const url = this.dir(styleUrl);\n if (this.styleElementMap.has(url)) {\n return false;\n }\n this.styleElementMap.set(url, null);\n return new Promise((resolve, reject) => {\n const linkDom = document.createElement(\"link\");\n linkDom.setAttribute(\"type\", \"text/css\");\n linkDom.setAttribute(\"rel\", \"stylesheet\");\n linkDom.setAttribute(\"href\", url);\n linkDom.onload = resolve;\n linkDom.onerror = reject;\n document.head.appendChild(linkDom);\n });\n });\n try {\n await Promise.all(all);\n } catch (error) {\n ibiz.log.error(error);\n }\n }\n};\n\n// src/plugin/remote-plugin-item/remote-plugin-item.ts\nvar RemotePluginItem = class {\n /**\n * Creates an instance of RemotePluginItem.\n *\n * @author chitanda\n * @date 2023-02-02 15:02:13\n * @param {string} tag 插件标识名称\n * @param {string} repo 插件路径\n * @param {RemotePluginConfig} config\n */\n constructor(tag, repo, config) {\n this.tag = tag;\n this.repo = repo;\n this.config = config;\n }\n};\n\n// src/controller/constant/control/form/form-notify.state.ts\nvar FormNotifyState = /* @__PURE__ */ ((FormNotifyState2) => {\n FormNotifyState2[\"LOAD\"] = \"LOAD\";\n FormNotifyState2[\"DRAFT\"] = \"DRAFT\";\n FormNotifyState2[\"SAVE\"] = \"SAVE\";\n return FormNotifyState2;\n})(FormNotifyState || {});\n\n// src/controller/constant/control/grid/grid-notify.state.ts\nvar GridNotifyState = /* @__PURE__ */ ((GridNotifyState2) => {\n GridNotifyState2[\"LOAD\"] = \"LOAD\";\n GridNotifyState2[\"DRAFT\"] = \"DRAFT\";\n GridNotifyState2[\"SAVE\"] = \"SAVE\";\n return GridNotifyState2;\n})(GridNotifyState || {});\n\n// src/controller/constant/control/panel/panel-notify.state.ts\nvar PanelNotifyState = /* @__PURE__ */ ((PanelNotifyState2) => {\n PanelNotifyState2[\"LOAD\"] = \"LOAD\";\n PanelNotifyState2[\"DRAFT\"] = \"DRAFT\";\n PanelNotifyState2[\"SAVE\"] = \"SAVE\";\n return PanelNotifyState2;\n})(PanelNotifyState || {});\n\n// src/controller/common/view/view.controller.ts\nimport { createUUID as createUUID2, notNilEmpty as notNilEmpty6 } from \"qx-util\";\nimport { IBizContext as IBizContext2, RuntimeError as RuntimeError30 } from \"@ibiz-template/core\";\n\n// src/controller/utils/loading/loading.state.ts\nimport { NOOP } from \"@ibiz-template/core\";\n\n// src/controller/utils/counter/counter.ts\nimport { RuntimeError as RuntimeError28 } from \"@ibiz-template/core\";\nvar Counter = class {\n /**\n * Creates an instance of Counter.\n * @author lxm\n * @date 2022-09-19 11:09:57\n * @param {() => void} callback 回调函数,在计数归零的时候被调用\n */\n constructor(callback) {\n this.callback = callback;\n /**\n * 计数\n *\n * @author lxm\n * @date 2022-09-19 11:09:30\n * @type {number}\n */\n this.count = 0;\n /**\n * 计数器状态\n * 调用过一次回调后就会变为使用过的状态,任何操作都不会执行\n *\n * @author lxm\n * @date 2022-09-21 19:09:21\n * @private\n * @type {('Unused' | 'Used')}\n */\n this.state = \"Unused\";\n /**\n * 是否可以重复使用\n *\n * @author lxm\n * @date 2022-09-21 19:09:22\n * @protected\n * @type {boolean}\n */\n this.reusable = true;\n }\n /**\n * 增加计数,返回增加后的计数\n *\n * @author lxm\n * @date 2022-08-18 21:08:22\n */\n increment() {\n if (this.state === \"Used\") {\n return this.count;\n }\n this.count += 1;\n return this.count;\n }\n /**\n * 减少计数,当计数为0时触发回调\n *\n * @author lxm\n * @date 2022-08-18 21:08:22\n */\n decrement(callback2) {\n if (this.state === \"Used\") {\n return;\n }\n if (this.count === 0) {\n throw new RuntimeError28(\"\\u9519\\u8BEF\\u7684\\u8C03\\u7528\\uFF01decrement\\u4E0D\\u80FD\\u5BF9count\\u4E3A0\\u8C03\\u7528\");\n }\n this.count -= 1;\n if (this.count === 0) {\n if (callback2) {\n callback2();\n } else if (this.callback) {\n this.callback();\n }\n if (!this.reusable) {\n this.state = \"Used\";\n }\n }\n }\n /**\n * 销毁方法,解除关联\n *\n * @author lxm\n * @date 2022-09-19 11:09:27\n */\n destroy() {\n this.callback = void 0;\n }\n};\n\n// src/controller/utils/loading/loading.state.ts\nvar LoadingState = class {\n constructor() {\n /**\n * 当前的loading状态,多次loading叠加时,只有所有loading都结束才会变回false。\n *\n * @author lxm\n * @date 2022-09-19 11:09:43\n * @readonly\n * @type {boolean}\n */\n this.isLoading = false;\n /**\n * loading计数器\n *\n * @author lxm\n * @date 2022-09-19 11:09:08\n * @private\n */\n this.counter = new Counter(NOOP);\n }\n /**\n * 开始loading\n *\n * @author lxm\n * @date 2022-09-19 11:09:55\n */\n begin() {\n this.isLoading = true;\n this.counter.increment();\n }\n /**\n * 结束loading\n *\n * @author lxm\n * @date 2022-09-19 11:09:34\n */\n end() {\n this.counter.decrement(() => {\n this.isLoading = false;\n });\n }\n};\n\n// src/controller/ctx/ctx.ts\nimport { QXEvent as QXEvent2 } from \"qx-util\";\n\n// src/controller/ctx/ctx.state.ts\nvar CTXState = class {\n};\n\n// src/controller/ctx/ctx.ts\nvar CTX = class {\n /**\n * Creates an instance of CTX.\n * @author lxm\n * @date 2023-07-06 09:43:47\n * @param {CTX} [parent] 父级上下文环境对象\n */\n constructor(parent) {\n this.parent = parent;\n /**\n * CTX事件\n * @author lxm\n * @date 2023-04-26 07:54:46\n * @protected\n */\n this.evt = new QXEvent2();\n /**\n * 当前视图控制器集合(包含自身视图控制器,部件控制器,和下一层级的视图的控制器)\n * @author lxm\n * @date 2023-03-28 02:25:59\n * @protected\n */\n this.controllersMap = /* @__PURE__ */ new Map();\n this.state = new CTXState();\n }\n /**\n * 初始化上下文环境对象\n * @author lxm\n * @date 2023-03-27 01:54:18\n * @param {V} controller 当前视图的控制器\n * @return {*} {Promise<void>}\n */\n async init(controller) {\n this.view = controller;\n this.registerController(controller.model.name, controller);\n }\n /**\n * 销毁ctx\n * @author lxm\n * @date 2023-03-28 02:29:45\n */\n destroy() {\n this.controllersMap.clear();\n this.view = null;\n this.state = null;\n }\n /**\n * 修改上下文环境状态\n * @author lxm\n * @date 2023-03-27 01:50:38\n * @param {Required<CTXState>} nextState\n * @return {*} {Promise<void>}\n */\n async setState(nextState) {\n Object.assign(this.state, nextState);\n }\n /**\n * 开启视图加载\n * @author lxm\n * @date 2023-03-27 01:59:22\n */\n startLoading() {\n this.view.startLoading();\n }\n /**\n * 关闭视图加载\n * @author lxm\n * @date 2023-03-27 01:59:35\n */\n endLoading() {\n this.view.endLoading();\n }\n /**\n * 注册控制器到上下文里\n * @author lxm\n * @date 2023-03-28 02:26:46\n * @param {string} name\n * @param {IController} c\n */\n registerController(name, c) {\n this.controllersMap.set(name, c);\n this.evt.emit(\"onRegister\", name, c);\n }\n /**\n * 获取指定名称的控制器\n * @author lxm\n * @date 2023-04-25 10:14:42\n * @param {string} name\n * @param {boolean} [traceRoot=false] 是否跨越视图作用域,一路向根上找。\n * @return {*} {(IController | undefined)}\n */\n getController(name, traceRoot = false) {\n if (this.controllersMap.has(name)) {\n return this.controllersMap.get(name);\n }\n if (this.parent && traceRoot) {\n return this.parent.getController(name);\n }\n }\n /**\n * 获取顶级视图,\n * - 模态等打开方式是根ctx的视图\n * - 路由模式是首页下一级的视图,即第二级路由的视图\n * @author lxm\n * @date 2023-07-14 11:59:30\n * @return {*} {IViewController}\n */\n getTopView() {\n if (!this.parent) {\n return this.view;\n }\n if (this.view.modal.routeDepth === 2) {\n return this.view;\n }\n return this.parent.getTopView();\n }\n};\n\n// src/controller/utils/counter/mounted-counter.ts\nvar ActivityCounter = class extends Counter {\n constructor() {\n super(...arguments);\n this.reusable = false;\n /**\n * 登记情况,记录了登记的名称和是否已经出席\n *\n * @author lxm\n * @date 2022-09-21 18:09:27\n * @type {string[]}\n */\n this.registration = /* @__PURE__ */ new Map();\n }\n /**\n * 登记要等待的名称\n *\n * @author lxm\n * @date 2022-09-21 18:09:01\n * @param {string} name\n */\n enroll(name) {\n if (this.state === \"Unused\" && !this.registration.has(name)) {\n this.registration.set(name, false);\n this.increment();\n }\n }\n /**\n * 出席,只有登记了的名称才能出席,当所有登记的名称出席后计数器结束,触发回调\n *\n * @author lxm\n * @date 2022-09-21 18:09:09\n * @param {string} name\n */\n attend(name) {\n if (this.registration.has(name) && this.registration.get(name) === false) {\n this.registration.set(name, true);\n this.decrement();\n }\n }\n};\n\n// src/controller/utils/button-state/ui-action-button.state.ts\nvar UIActionButtonState = class {\n constructor(name, appId, uiActionId) {\n this.disabled = false;\n this.visible = true;\n this.loading = false;\n /**\n * 是否有权限\n */\n this.permitted = true;\n /**\n * 没权限时是否隐藏\n */\n this.noPermissionHidden = true;\n /**\n * 有权限时且没数据时,是否禁用\n */\n this.noDataDisabled = false;\n /**\n * 是否初始化\n */\n this.isInit = false;\n this.name = name;\n this.uiActionId = uiActionId;\n this.appId = appId;\n }\n /**\n * 初始化,没有界面行为id就是普通的buttonState\n * @author lxm\n * @date 2023-05-10 02:16:22\n * @protected\n * @return {*}\n */\n async init() {\n if (!this.uiActionId) {\n this.isInit = true;\n return;\n }\n const uiAction = await getUIActionById(this.uiActionId);\n [, this.appDeName] = this.uiActionId.split(\"@\");\n if (!uiAction) {\n return;\n }\n const {\n dataAccessAction,\n noPrivDisplayMode,\n actionTarget,\n uiactionMode,\n uiactionTag\n } = uiAction;\n this.dataAccessAction = dataAccessAction;\n if (noPrivDisplayMode === 1) {\n this.noPermissionHidden = false;\n } else if (noPrivDisplayMode === 6) {\n this.visible = false;\n }\n if (actionTarget && actionTarget !== \"NONE\" || uiactionMode === \"SYS\" && [\n \"Save\",\n \"SaveAndExit\",\n \"SaveAndNew\",\n \"Edit\",\n \"Remove\",\n \"RemoveAndExit\"\n ].includes(uiactionTag)) {\n this.noDataDisabled = true;\n }\n this.isInit = true;\n }\n /**\n * 计算按钮权限\n * @author lxm\n * @date 2023-05-11 07:46:09\n * @protected\n * @param {IData} [data] 数据\n * @param {string} [appDeId] 数据对应的实体id\n * @return {*}\n */\n async calcPermission(data, appDeId) {\n if (!this.dataAccessAction) {\n return;\n }\n const app = await ibiz.hub.getApp(this.appId);\n if (this.appDeName && appDeId && !appDeId.includes(this.appDeName)) {\n ibiz.log.warn(\n \"\".concat(this.uiActionId, \"\\u754C\\u9762\\u884C\\u4E3A\\u7684\\u5B9E\\u4F53\").concat(this.appDeName, \"\\u548C\\u6570\\u636E\\u7684\\u5B9E\\u4F53\").concat(appDeId, \"\\u4E0D\\u4E00\\u81F4\")\n );\n }\n this.permitted = await app.authority.calcByDataAccessAction(\n this.dataAccessAction,\n data,\n appDeId\n );\n }\n async update(data, appDeId) {\n if (!this.isInit) {\n await this.init();\n }\n await this.calcPermission(data, appDeId);\n if (!this.permitted) {\n this.disabled = true;\n this.visible = !this.noPermissionHidden;\n } else {\n this.visible = true;\n this.disabled = this.noDataDisabled && !data;\n }\n }\n};\n\n// src/controller/utils/button-state/button-container.state.ts\nvar ButtonContainerState = class {\n constructor() {\n Object.defineProperty(this, \"children\", {\n enumerable: false,\n configurable: true,\n writable: true,\n value: []\n });\n Object.defineProperty(this, \"visible\", {\n enumerable: true,\n configurable: true,\n get: () => {\n if (this.children.length === 0) {\n return false;\n }\n return !!this.children.find((child) => child.visible);\n }\n });\n }\n addState(name, state) {\n Object.defineProperty(this, name, {\n enumerable: true,\n configurable: true,\n writable: true,\n value: state\n });\n this.children.push(state);\n }\n setLoading(name) {\n this.children.forEach((child) => {\n if (child.setLoading) {\n child.setLoading(name);\n } else {\n child.loading = !name ? false : child.name === name;\n }\n });\n }\n async update(data, appDeId) {\n await Promise.all(\n this.children.map((child) => {\n return child.update(data, appDeId);\n })\n );\n }\n};\n\n// src/controller/utils/event/qx-event-ex.ts\nimport { clearAll, QXEvent as QXEvent3 } from \"qx-util\";\nvar QXEventEx = class extends QXEvent3 {\n constructor() {\n super(...arguments);\n this.anyEventFns = [];\n }\n /**\n * 监听任意事件,返回值必须是数组,用来返回单次或多次的正常回调的结果。\n * 该返回值数组会在正常事件触发的时候展开合并入正常事件的结果里,模拟多次监听的常规返回。\n * @author lxm\n * @date 2023-03-23 09:50:33\n * @param {(...args: any[]) => Promise<any[]>} fn\n */\n onAll(fn) {\n if (!this.anyEventFns.includes(fn)) {\n this.anyEventFns.push(fn);\n }\n }\n emit(name, ...args) {\n super.emit(name, ...args);\n this.anyEventFns.forEach((fn) => {\n fn(name, ...args);\n });\n }\n async asyncEmit(name, ...args) {\n const result = await super.asyncEmit(name, ...args);\n const all = this.anyEventFns.map((fn) => fn(name, ...args));\n const resultArr = await Promise.all(all);\n result.concat(...resultArr);\n return result;\n }\n reset() {\n super.reset();\n clearAll(this.anyEventFns);\n }\n};\n\n// src/controller/utils/event/controller-event.ts\nvar ControllerEvent = class {\n /**\n * Creates an instance of ControllerEvent.\n * @author lxm\n * @date 2023-04-25 09:30:28\n * @param {() => Omit<EventBase, 'eventName'>} getBaseArgs 提供当前控制器环境内的通用的事件参数\n */\n constructor(getBaseArgs) {\n this.getBaseArgs = getBaseArgs;\n /**\n * 事件对象\n *\n * @author lxm\n * @date 2022-08-30 14:08:40\n */\n this.evt = new QXEventEx();\n }\n /**\n * 发送事件,并等待所有监听器执行完毕\n * @author lxm\n * @date 2023-03-30 06:49:12\n * @template K\n * @param name 事件名称\n * @param args 事件参数\n * @return {*} {Promise<void>}\n */\n async emit(name, args) {\n await this.evt.asyncEmit(name, {\n ...this.getBaseArgs(),\n eventName: name,\n // 合并抛出事件时候的输入的参数\n ...args || {}\n });\n }\n /**\n * 订阅指定事件\n * @author lxm\n * @date 2023-03-30 06:46:59\n * @param name 事件名\n * @param fn 事件回调\n */\n on(name, fn) {\n this.evt.on(name, fn);\n }\n /**\n * 订阅任意事件\n * @author lxm\n * @date 2023-03-30 06:48:28\n * @param fn 事件回调\n */\n onAll(fn) {\n this.evt.onAll(fn);\n }\n /**\n * 销毁方法,清空\n *\n * @author lxm\n * @date 2022-08-30 17:08:41\n */\n destroy() {\n this.getBaseArgs = void 0;\n this.evt.reset();\n }\n};\n\n// src/controller/utils/util/util.ts\nimport { isNil as isNil10 } from \"ramda\";\nfunction isValueChange(value, value2) {\n if ((isNil10(value) || value === \"\") && (isNil10(value2) || value2 === \"\")) {\n return false;\n }\n return value !== value2;\n}\nfunction getOriginData(data) {\n let singleData = Array.isArray(data) ? data[0] : data;\n if (singleData && singleData instanceof ControlVO) {\n singleData = singleData.getOrigin();\n }\n return singleData;\n}\n\n// src/controller/utils/value-rule/value-rule.ts\nimport { RuntimeError as RuntimeError29 } from \"@ibiz-template/core\";\nimport { isNilOrEmpty as isNilOrEmpty6 } from \"qx-util\";\nfunction generateRules(itemVRs, name, valueItemName) {\n const rules = [];\n itemVRs.forEach((item) => {\n const { valueRuleType } = item;\n const sysRule = item.sysValueRule;\n const deRule = item.defvalueRule;\n if (valueRuleType === \"SYSVALUERULE\" && sysRule) {\n if (sysRule.ruleType === \"REG\") {\n rules.push({\n pattern: new RegExp(sysRule.regExCode),\n message: sysRule.ruleInfo,\n trigger: \"change blur\"\n });\n } else if (sysRule.ruleType === \"SCRIPT\") {\n rules.push({\n validator: (rule, value, callback, source) => {\n if (!value) {\n return true;\n }\n try {\n ScriptFactory.execScriptFn(\n { rule, value, callback, source },\n sysRule.scriptCode\n );\n } catch (error) {\n console.error(error);\n return false;\n }\n return true;\n },\n trigger: \"change blur\"\n });\n }\n } else if (valueRuleType === \"DEFVALUERULE\" && deRule) {\n const valueName = valueItemName || name;\n rules.push({\n validator: (rule, value, callback, source) => {\n if (isNilOrEmpty6(source[valueName])) {\n return true;\n }\n const { isPast, infoMessage } = verifyDeRules(\n valueName,\n source,\n deRule.groupCond\n );\n if (!isPast) {\n callback(new RuntimeError29(infoMessage || deRule.ruleInfo));\n }\n return true;\n },\n trigger: \"change blur\"\n });\n }\n });\n return rules;\n}\n\n// src/controller/common/base.controller.ts\nvar SELF_KEY = \"__self\";\nvar BaseController = class {\n /**\n * Creates an instance of BaseController.\n * @author lxm\n * @date 2023-04-26 06:46:21\n * @param {CTX} ctx 跨组件上下文环境,内部机制不暴露\n */\n constructor(model, context, params, ctx) {\n this.model = model;\n this.context = context;\n this.params = params;\n this.ctx = ctx;\n this.state = {};\n /**\n * 控制器名称,作为检索控制器的唯一标识\n * @author lxm\n * @date 2023-04-26 08:22:30\n * @type {string}\n */\n this.name = \"\";\n /**\n * 事件触发器\n * @author lxm\n * @date 2023-04-25 09:36:31\n * @type {ControllerEvent}\n */\n this.evt = new ControllerEvent(\n this.getEventArgs.bind(this)\n );\n /**\n * 计算父子加载顺序的计数器\n * @author lxm\n * @date 2023-04-26 06:14:22\n * @type {ActivityCounter}\n */\n this.mountCounter = new ActivityCounter(this.mounted.bind(this));\n /**\n * 子组件的名称,会监听指定子组件的生命周期,影响自身的声明周期。\n * @author lxm\n * @date 2023-04-26 08:10:57\n * @type {string[]}\n */\n this.childNames = [];\n this.name = model.name || model.id;\n this.initState();\n }\n /**\n * 中间层的基类才会使用,用于在内部使用自身的事件,事件类型不是泛型用evt就能正确推导出来。\n * @author lxm\n * @date 2023-05-18 02:48:57\n * @readonly\n * @protected\n */\n get _evt() {\n return this.evt;\n }\n /**\n * 初始化state的属性放,一般情况下只需要把对应的默认值直接赋值给state\n * 如果需要构造特殊class类型的state,可以重写该方法时,\n * 一开就new一个state替换当前的state,然后调用super初始化默认值\n * @author lxm\n * @date 2023-05-18 02:57:00\n * @protected\n */\n initState() {\n this.state.isCreated = false;\n this.state.isMounted = false;\n }\n /**\n * 获取事件的基础参数\n * @author lxm\n * @date 2023-04-25 11:03:44\n * @return {*} {Omit<EventBase, 'eventName'>}\n */\n getEventArgs() {\n return {\n context: this.context,\n params: this.params,\n data: [],\n targetName: this.model.name,\n view: this.ctx.view\n };\n }\n /**\n * 生命周期-创建完成,不推荐子类实现\n * @author lxm\n * @date 2023-04-25 11:08:54\n */\n async created() {\n this.mountCounter.enroll(SELF_KEY);\n await this.onCreated();\n this.state.isCreated = true;\n this.force(() => {\n this.mountSelf();\n });\n ibiz.log.debug(\"\".concat(this.constructor.name, \":\").concat(this.name, \" onCreated\"));\n this._evt.emit(\"onCreated\", void 0);\n }\n /**\n * 生命周期-创建完成,实际执行逻辑,子类重写用这个\n * @author lxm\n * @date 2023-04-25 11:12:02\n */\n async onCreated() {\n this.ctx.evt.on(\"onForecast\", (name) => {\n if (this.childNames.includes(name)) {\n this.mountCounter.enroll(name);\n }\n });\n this.ctx.evt.on(\"onRegister\", (name, c) => {\n if (this.childNames.includes(name)) {\n c.evt.on(\"onMounted\", () => {\n this.mountCounter.attend(name);\n });\n }\n });\n }\n /**\n * 自身挂载方法,默认是设置自身已经挂载的状态,用于计数器计算。\n * 异步方法,可以把异步初始化放这里,执行完后调基类的mountSelf,mounted声明周期就可以在异步之后触发\n * @author lxm\n * @date 2023-04-27 03:34:35\n */\n async mountSelf() {\n const isSelfMounted = this.mountCounter.registration.get(SELF_KEY);\n if (!isSelfMounted) {\n this.mountCounter.attend(SELF_KEY);\n }\n }\n /**\n * 生命周期-加载完成,不推荐子类实现\n * 外部不允许调用,只能被mountCounter触发,保证mounted时机正确,外部调用mountSelf\n *\n * @author lxm\n * @date 2023-04-25 11:08:54\n */\n async mounted() {\n await this.onMounted();\n this.state.isMounted = true;\n ibiz.log.debug(\"\".concat(this.constructor.name, \":\").concat(this.name, \" onMounted\"));\n this._evt.emit(\"onMounted\", void 0);\n }\n /**\n * 生命周期-加载完成,实际执行逻辑,子类重写用这个\n * 放置等自身后需要等待的子组件都加载完成后才会执行的逻辑。\n * @author lxm\n * @date 2023-04-25 11:12:02\n */\n async onMounted() {\n }\n /**\n * 生命周期-销毁完成,不推荐子类实现\n * @author lxm\n * @date 2023-04-25 11:08:54\n */\n async destroyed() {\n await this.onDestroyed();\n ibiz.log.debug(\"\".concat(this.constructor.name, \":\").concat(this.name, \" onDestroyed\"));\n this._evt.emit(\"onDestroyed\", void 0);\n this.evt.destroy();\n }\n /**\n * 生命周期-销毁完成,实际执行逻辑,子类重写用这个\n * @author lxm\n * @date 2023-04-25 11:12:02\n */\n async onDestroyed() {\n }\n /**\n * 强制更新视图(框架级)\n *\n * @author chitanda\n * @param {() => void} [callback] 更新之后,组件渲染完成后的回调\n * @date 2022-07-24 14:07:38\n */\n force(_callback) {\n }\n /**\n * 获取指定名称的控制器\n * @author lxm\n * @date 2023-04-25 10:14:42\n * @param {string} name\n * @param {boolean} [traceRoot=false] 是否跨越视图作用域,一路向根上找。\n * @return {*} {(BaseController | undefined)}\n */\n getController(name, traceRoot = false) {\n return this.ctx.getController(name, traceRoot);\n }\n getTopView() {\n return this.ctx.getTopView();\n }\n /**\n * 当前视图上下文内有新的控制产生时触发回调。\n * @author lxm\n * @date 2023-04-26 07:59:41\n * @param {(name: string, c: IController) => void} cb\n */\n listenNewController(cb) {\n this.ctx.evt.on(\"onRegister\", cb);\n }\n};\n\n// src/controller/common/view/view.controller.ts\nvar ViewController = class extends BaseController {\n /**\n * Creates an instance of ViewController.\n * @author lxm\n * @date 2023-04-20 02:05:33\n * @param {T} model 视图模型\n * @param {IContext} context 上下文\n * @param {IParams} [params] 视图参数\n * @param {CTX} [ctx]\n */\n constructor(model, context, params, ctx) {\n const _model = ibiz.util.layoutPanel.fill(model);\n super(_model, IBizContext2.create({}, context), params || {}, new CTX(ctx));\n this.modal = new Modal({});\n this.providers = {};\n this.engines = [];\n this.slotProps = {};\n this.counters = {};\n /**\n * 视图loading状态控制器\n *\n * @author lxm\n * @date 2022-09-19 14:09:12\n */\n this.viewLoading = new LoadingState();\n /**\n * 视图是否已经关闭\n *\n * @author chitanda\n * @date 2023-07-12 22:07:52\n * @protected\n * @type {boolean}\n */\n this.isCloseView = false;\n this._isActive = true;\n if (ctx) {\n ctx.registerController(this.model.name, this);\n }\n this.ctx.init(this);\n this.initEngines();\n }\n get _evt() {\n return this.evt;\n }\n /**\n * 上层视图控制器\n * @author lxm\n * @date 2023-07-06 09:48:16\n * @readonly\n * @type {(IViewController | undefined)}\n */\n get parentView() {\n var _a;\n return (_a = this.ctx.parent) == null ? void 0 : _a.view;\n }\n get isActive() {\n return this._isActive;\n }\n /**\n * 视图重新激活\n *\n * @author chitanda\n * @date 2023-07-12 17:07:55\n */\n onActivated() {\n this._isActive = true;\n ibiz.log.debug(\"\\u89C6\\u56FE[\".concat(this.model.name, \"](\").concat(this.model.id, \")\\u6FC0\\u6D3B\"));\n }\n /**\n * 视图暂时停用\n *\n * @author chitanda\n * @date 2023-07-12 17:07:06\n */\n onDeactivated() {\n this._isActive = false;\n ibiz.log.debug(\"\\u89C6\\u56FE[\".concat(this.model.name, \"](\").concat(this.model.id, \")\\u6682\\u505C\"));\n }\n /**\n * 初始化引擎\n * @author lxm\n * @date 2023-05-23 06:43:53\n * @protected\n */\n initEngines() {\n const engineModels = getViewEngines(this.model);\n if (engineModels.length) {\n engineModels.forEach((engine) => {\n const ins = ibiz.engine.getEngine(engine, this);\n if (ins) {\n this.engines.push(ins);\n }\n });\n } else {\n const ins = ibiz.engine.getEngine(\n { engineCat: \"VIEW\", engineType: this.model.viewType },\n this\n );\n if (ins) {\n this.engines.push(ins);\n }\n }\n }\n /**\n * 初始化计数器\n * @return {*}\n * @author: zhujiamin\n * @Date: 2023-07-10 14:53:53\n */\n async initCounters() {\n const viewLayoutPanel = this.model.viewLayoutPanel;\n const { appCounterRefs } = viewLayoutPanel;\n if (appCounterRefs && appCounterRefs.length > 0) {\n try {\n await Promise.all(\n appCounterRefs.map(async (counterRef) => {\n const counter = await CounterService.getCounterByRef(\n counterRef,\n this.context\n );\n this.counters[counterRef.id] = counter;\n })\n );\n } catch (error) {\n console.error(error);\n }\n }\n }\n initState() {\n super.initState();\n this.state.isLoading = false;\n this.state.caption = this.model.caption;\n this.state.srfactiveviewdata = null;\n }\n async onCreated() {\n await super.onCreated();\n this.modal.hooks.beforeDismiss.tapPromise(async (modalData) => {\n await this._evt.emit(\"onCloseView\", { ...modalData });\n });\n this._evt.emit(\"onViewInfoChange\", {\n caption: this.model.caption,\n title: this.model.title\n });\n this.handleContextParams();\n const viewLayoutPanel = this.model.viewLayoutPanel;\n this.childNames.push(viewLayoutPanel.name);\n const provider = await getControlProvider(viewLayoutPanel);\n this.providers[viewLayoutPanel.name] = provider;\n const controls = getControlsByView(this.model);\n if (controls) {\n await Promise.all(\n controls.map(async (ctrl) => {\n const ctrlProvider = await getControlProvider(ctrl);\n this.providers[ctrl.name || ctrl.id] = ctrlProvider;\n })\n );\n }\n await this.initCounters();\n const appViewLogics = getViewLogics(this.model);\n if (appViewLogics.length) {\n this.scheduler = ibiz.scheduler.createViewScheduler(appViewLogics);\n this.scheduler.defaultParamsCb = () => {\n return this.getEventArgs();\n };\n this.evt.onAll((_eventName, event) => {\n this.scheduler.triggerViewEvent(event);\n });\n }\n if (this.engines.length) {\n await Promise.all(this.engines.map((engine) => engine.onCreated()));\n }\n }\n async onMounted() {\n var _a;\n await super.onMounted();\n if (this.engines.length) {\n await Promise.all(this.engines.map((engine) => engine.onMounted()));\n }\n (_a = this.scheduler) == null ? void 0 : _a.startTimerTrigger();\n }\n async onDestroyed() {\n await super.onDestroyed();\n if (this.engines.length) {\n await Promise.all(this.engines.map((engine) => engine.onDestroyed()));\n }\n this.ctx.destroy();\n this.context.destroy();\n this.engines = [];\n if (this.scheduler) {\n this.scheduler.destroy();\n }\n ibiz.log.debug(\"\\u89C6\\u56FE[\".concat(this.model.name, \"](\").concat(this.model.id, \")\\u9500\\u6BC1\"));\n }\n /**\n * 处理上下文和导航参数相关的,如自定义导航参数的处理\n *\n * @author lxm\n * @date 2022-09-08 15:09:47\n * @protected\n */\n handleContextParams() {\n this.context.srfappid = this.model.appId;\n if (this.modal.mode === \"ROUTE\" /* ROUTE */) {\n this.context.srfsessionid = createUUID2();\n }\n const navContexts = this.model.appViewNavContexts;\n let context = {};\n if (notNilEmpty6(navContexts)) {\n context = convertNavData(navContexts, this.context, this.params);\n }\n Object.assign(this.context, context);\n const navParams = this.model.appViewNavParams;\n let params = {};\n if (notNilEmpty6(navParams)) {\n params = convertNavData(navParams, this.context, this.params);\n }\n Object.assign(this.params, params);\n if (this.state.isMounted) {\n this.callUIAction(\"Refresh\" /* REFRESH */);\n }\n }\n async call(key, args) {\n let result;\n for (const engine of this.engines) {\n result = await engine.call(key, args);\n if (result !== void 0) {\n break;\n }\n }\n return result;\n }\n async callUIAction(key, args) {\n const result = this.call(key, args);\n if (result === void 0) {\n throw new RuntimeError30(\"\\u6CA1\\u6709\\u5F15\\u64CE\\u652F\\u6301\\u9884\\u7F6E\\u754C\\u9762\\u884C\\u4E3A\".concat(key));\n }\n return result;\n }\n async closeView(modalData = { ok: false, data: [] }) {\n await this.modal.dismiss(modalData);\n }\n startLoading() {\n this.viewLoading.begin();\n this.state.isLoading = this.viewLoading.isLoading;\n }\n endLoading() {\n this.viewLoading.end();\n this.state.isLoading = this.viewLoading.isLoading;\n }\n /**\n * 设置布局面板控制器\n * @author lxm\n * @date 2023-08-01 03:28:04\n * @param {IViewLayoutPanelController} panel\n */\n setLayoutPanel(panel) {\n this.layoutPanel = panel;\n if (this.layoutPanel.state.isMounted) {\n this.mountCounter.attend(this.layoutPanel.model.name);\n } else {\n this.layoutPanel.evt.on(\"onMounted\", () => {\n this.mountCounter.attend(this.layoutPanel.model.name);\n });\n }\n }\n};\n\n// src/controller/common/view/mob-view.controller.ts\nvar MobViewController = class extends ViewController {\n};\n\n// src/controller/common/editor/editor.controller.ts\nvar EditorController = class {\n /**\n * Creates an instance of EditorController.\n * @author lxm\n * @date 2022-08-24 20:08:19\n * @param {T} model\n */\n constructor(model, parent) {\n /**\n * 占位\n * @return {*}\n * @author: zhujiamin\n * @Date: 2022-08-25 14:33:14\n */\n this.placeHolder = \"\";\n /**\n * 占位\n * @return {*}\n * @author: zhujiamin\n * @Date: 2022-08-25 14:33:14\n */\n this.editorParams = {};\n this.model = model;\n this.parent = parent;\n this.context = parent.context;\n this.params = parent.params;\n }\n /**\n * 是否只读\n *\n * @author lxm\n * @date 2022-12-12 21:12:51\n * @readonly\n */\n get readonly() {\n return !!this.model.readOnly;\n }\n /**\n * 子类不可覆盖或重写此方法,在 init 时需要重写的使用 onInit 方法。\n *\n * @author lxm\n * @date 2022-08-18 22:08:30\n * @returns {*} {Promise<void>}\n */\n async init() {\n await this.onInit();\n }\n async onInit() {\n if (this.model.placeHolder) {\n this.placeHolder = this.model.placeHolder;\n }\n if (this.model.editorParams) {\n Object.keys(this.model.editorParams).forEach((key) => {\n this.editorParams[key.toLowerCase()] = this.model.editorParams[key];\n });\n }\n }\n /**\n * 公共参数处理,计算上下文和视图参数\n *\n * @return {*}\n * @author: zhujiamin\n * @Date: 2022-08-25 15:44:14\n */\n handlePublicParams(data, context, params) {\n const { navigateContexts, navigateParams } = this.model;\n let selfContext = {};\n if (navigateContexts && data) {\n selfContext = convertNavData(navigateContexts, context, params, data);\n }\n const _context = Object.assign(context.clone(), selfContext);\n let selfParams = {};\n if (navigateParams && data) {\n selfParams = convertNavData(navigateParams, context, params, data);\n }\n const _params = { ...params, ...selfParams };\n return { context: _context, params: _params };\n }\n /**\n * 字符串转对象、数组对象\n *\n * @author chitanda\n * @date 2023-08-02 17:08:03\n * @param {string} value\n * @return {*} {(IData | IData[] | undefined)}\n */\n toObj(value) {\n if (!value) {\n return void 0;\n }\n const func = new Function(\"return (\".concat(value, \");\"));\n return func();\n }\n /**\n * 字符串布尔转布尔类型\n *\n * @author chitanda\n * @date 2023-08-02 17:08:34\n * @param {string} value\n * @return {*} {boolean}\n */\n toBoolean(value) {\n return Object.is(\"true\", value);\n }\n};\n\n// src/controller/common/editor/code-list-editor.controller.ts\nimport { RuntimeModelError as RuntimeModelError31 } from \"@ibiz-template/core\";\nvar CodeListEditorController = class extends EditorController {\n /**\n * 加载代码表数据\n * @return {*}\n * @author: zhujiamin\n * @Date: 2022-08-25 15:46:27\n */\n async loadCodeList(data) {\n const { context, params } = this.handlePublicParams(\n data,\n this.context,\n this.params\n );\n if (this.model.appCodeListId) {\n const app = await ibiz.hub.getApp(this.context.srfappid);\n let dataItems = [];\n dataItems = await app.codeList.get(\n this.model.appCodeListId,\n context,\n params\n );\n return dataItems;\n }\n throw new RuntimeModelError31(this.model, \"\\u8BF7\\u914D\\u7F6E\\u4EE3\\u7801\\u8868\");\n }\n};\n\n// src/controller/common/control/control.controller.ts\nvar ControlController = class extends BaseController {\n /**\n * Creates an instance of ControlController.\n *\n * @author chitanda\n * @date 2022-07-24 17:07:58\n * @param {T} model\n * @param {IContext} context\n * @param {IParams} [params={}]\n */\n constructor(model, context, params, ctx) {\n super(model, context, params, ctx);\n /**\n * 子部件适配器\n * @author lxm\n * @date 2023-07-19 04:14:50\n * @type {{ [key: string]: IControlProvider }}\n */\n this.providers = {};\n this.registerToCtx();\n const panelModel = ibiz.util.layoutPanel.get(\n \"\".concat(model.controlType, \"_DEFAULT\")\n );\n if (panelModel) {\n this.controlPanel = panelModel;\n }\n }\n get _evt() {\n return this.evt;\n }\n get view() {\n return this.ctx.view;\n }\n /**\n * 往ctx里注册控制器\n * @author lxm\n * @date 2023-07-31 08:37:17\n * @protected\n */\n registerToCtx() {\n this.ctx.registerController(this.model.name, this);\n }\n /**\n * 获取部件通用的事件参数\n * @author lxm\n * @date 2023-03-26 11:42:21\n * @readonly\n */\n getEventArgs() {\n const result = super.getEventArgs();\n return {\n ...result,\n data: this.getData() || [],\n ctrl: this\n };\n }\n initState() {\n super.initState();\n this.state.isLoading = false;\n }\n async onCreated() {\n var _a;\n await super.onCreated();\n if (this.controlPanel) {\n this.childNames.push(this.controlPanel.name);\n const provider = await getControlProvider(this.controlPanel);\n this.providers[this.controlPanel.name] = provider;\n }\n if ((_a = this.model.controlLogics) == null ? void 0 : _a.length) {\n this.scheduler = ibiz.scheduler.createControlScheduler(\n this.model.controlLogics\n );\n this.scheduler.defaultParamsCb = () => {\n return this.getEventArgs();\n };\n }\n }\n async onDestroyed() {\n await super.onDestroyed();\n if (this.scheduler) {\n this.scheduler.destroy();\n }\n }\n /**\n * 获取部件类型\n * @author lxm\n * @date 2023-03-28 02:23:37\n * @return {*} {string}\n */\n getControlType() {\n return this.model.controlType;\n }\n /**\n * 获取部件数据,非数据部件没有数据\n * @author lxm\n * @date 2023-03-26 11:41:51\n * @return {*} {(IData[] | null)}\n */\n getData() {\n return null;\n }\n /**\n * 开始加载\n *\n * @author chitanda\n * @date 2022-09-21 15:09:18\n * @return {*} {Promise<void>}\n */\n async startLoading() {\n this.state.isLoading = true;\n this.ctx.startLoading();\n }\n /**\n * 加载完毕\n *\n * @author chitanda\n * @date 2022-09-21 15:09:31\n * @return {*} {Promise<void>}\n */\n async endLoading() {\n this.state.isLoading = false;\n this.ctx.endLoading();\n }\n /**\n * 处理数据能力方法通用参数,返回能力执行最终使用的参数\n * @author lxm\n * @date 2023-05-23 03:12:47\n * @protected\n * @param {IDataAbilityParams} [args]\n * @return {*}\n */\n handlerAbilityParams(args) {\n const context = this.context.clone();\n const params = { ...this.params };\n const data = (args == null ? void 0 : args.data) || this.getData() || [];\n return { context, params, data };\n }\n /**\n * 设置布局面板控制器\n * @author lxm\n * @date 2023-08-01 03:28:17\n * @param {IViewLayoutPanelController} panel\n */\n setLayoutPanel(panel) {\n this.layoutPanel = panel;\n if (this.layoutPanel.state.isMounted) {\n this.mountCounter.attend(this.layoutPanel.model.name);\n } else {\n this.layoutPanel.evt.on(\"onMounted\", () => {\n this.mountCounter.attend(this.layoutPanel.model.name);\n });\n }\n }\n};\n\n// src/controller/common/control/md-control.controller.ts\nimport { isElementSame, RuntimeError as RuntimeError31 } from \"@ibiz-template/core\";\nvar MDControlController = class extends ControlController {\n get _evt() {\n return this.evt;\n }\n initState() {\n super.initState();\n this.state.items = [];\n this.state.selectedData = [];\n this.state.searchParams = {};\n this.state.noSort = false;\n this.state.sortQuery = \"\";\n this.state.curPage = 1;\n this.state.size = 20;\n this.state.total = 0;\n this.state.isLoaded = false;\n this.state.singleSelect = true;\n this.state.mdctrlActiveMode = 0;\n }\n /**\n * 设置排序\n *\n * @author lxm\n * @date 2022-09-28 13:09:44\n * @param {string} key 排序字段\n * @param {string} order 排序顺序\n */\n setSort(key, order) {\n this.state.sortQuery = \"\".concat(key, \",\").concat(order);\n }\n /**\n * 获取请求过滤参数(整合了视图参数,各种过滤条件,排序,分页)\n * @author lxm\n * @date 2023-05-23 03:20:40\n * @param {IParams} [extraParams] 额外视图参数,附加在最后\n * @return {*} {Promise<IParams>}\n */\n async getFetchParams(extraParams) {\n const { curPage, size, sortQuery, noSort } = this.state;\n const resultParams = {\n ...this.params\n };\n if (size) {\n resultParams.page = curPage - 1;\n resultParams.size = size;\n }\n if (!noSort && sortQuery) {\n resultParams.sort = sortQuery;\n }\n await this._evt.emit(\"onBeforeLoad\", void 0);\n Object.assign(resultParams, {\n ...this.state.searchParams\n });\n if (extraParams) {\n Object.assign(resultParams, extraParams);\n }\n return resultParams;\n }\n /**\n * 部件加载数据行为\n *\n * @author lxm\n * @date 2022-08-19 14:08:50\n */\n async load(args = {}) {\n const isInitialLoad = args.isInitialLoad === true;\n const isLoadMore = args.isLoadMore === true;\n if (isInitialLoad) {\n this.state.curPage = 1;\n } else if (isLoadMore) {\n this.state.curPage += 1;\n }\n const { context } = this.handlerAbilityParams(args);\n const params = await this.getFetchParams(args == null ? void 0 : args.params);\n await this.startLoading();\n let res;\n try {\n res = await this.service.fetch(context, params);\n if (typeof res.total === \"number\") {\n this.state.total = res.total;\n }\n } finally {\n await this.endLoading();\n }\n if (isLoadMore) {\n this.state.items.push(...res.data);\n } else {\n this.state.items = res.data;\n }\n await this.afterLoad(args, res.data);\n this.state.isLoaded = true;\n await this._evt.emit(\"onLoadSuccess\", {\n isInitialLoad\n });\n return this.state.items;\n }\n /**\n * 部件加载后处理\n *\n * @author chitanda\n * @date 2023-06-21 15:06:44\n * @param {MDCtrlLoadParams} args 本次请求参数\n * @param {IData[]} items 上游处理的数据(默认是后台数据)\n * @return {*} {Promise<IData[]>} 返回给后续处理的数据\n */\n async afterLoad(args, items) {\n return items;\n }\n /**\n * 部件刷新,走初始加载\n * @author lxm\n * @date 2023-05-23 03:42:41\n */\n async refresh() {\n await this.load({ isInitialLoad: false });\n }\n /**\n * 删除选中的数据\n *\n * @author lxm\n * @date 2022-09-06 19:09:48\n * @returns {*} {Promise<void>}\n */\n async remove(args) {\n const { context, params, data } = this.handlerAbilityParams(args);\n if (!(data == null ? void 0 : data.length)) {\n throw new RuntimeError31(\"\\u672A\\u9009\\u4E2D\\u6570\\u636E\");\n }\n const del = await ibiz.modal.confirm({\n title: \"\\u6570\\u636E\\u5220\\u9664\",\n desc: \"\\u786E\\u8BA4\\u5220\\u9664\\u6570\\u636E\\uFF1F\"\n });\n if (!del) {\n return;\n }\n await this.startLoading();\n try {\n const deName = calcDeCodeNameById(this.model.appDataEntityId);\n await Promise.allSettled(\n data.map(async (item) => {\n if (item.srfuf !== 0 /* CREATE */) {\n const tempContext = context.clone();\n tempContext[deName] = item.srfkey;\n await this.service.remove(tempContext, params);\n }\n this.afterRemove(data);\n })\n );\n ibiz.notification.success({\n desc: \"\\u6570\\u636E[\".concat(data.map((item) => item.srfmajortext).join(\"\\u3001\"), \"]\\u5220\\u9664\\u6210\\u529F!\")\n });\n this.refresh();\n } finally {\n await this.endLoading();\n }\n this.state.selectedData = [];\n await this._evt.emit(\"onRemoveSuccess\", void 0);\n }\n /**\n * 后台删除结束后界面删除逻辑\n *\n * @author lxm\n * @date 2022-09-06 19:09:10\n * @param {IData} data\n */\n afterRemove(data) {\n const index = this.state.items.findIndex(\n (item) => item.srfkey === data.srfkey\n );\n this.state.items.splice(index, 1);\n }\n /**\n * 获取多数据部件的选中数据集合\n *\n * @author lxm\n * @date 2022-08-30 18:08:00\n * @returns {*} {IData[]}\n */\n getData() {\n return this.state.selectedData || [];\n }\n setActive(item) {\n return this._evt.emit(\"onActive\", {\n data: [item]\n });\n }\n setSelection(selection) {\n const { selectedData } = this.state;\n if (!isElementSame(selectedData, selection)) {\n this.state.selectedData = selection;\n this._evt.emit(\"onSelectionChange\", {\n data: selection\n });\n }\n }\n /**\n * 行单击事件\n *\n * @author lxm\n * @date 2022-08-18 22:08:16\n * @param {IData} data 选中的单条数据\n */\n async onRowClick(data) {\n const { selectedData } = this.state;\n const filterArr = selectedData.filter((item) => item.srfkey !== data.srfkey);\n if (filterArr.length === selectedData.length) {\n this.setSelection(\n this.state.singleSelect ? [data] : selectedData.concat([data])\n );\n } else {\n this.setSelection(filterArr);\n }\n if (this.state.mdctrlActiveMode === 1) {\n await this.setActive(data);\n }\n }\n /**\n * 行双击事件\n *\n * @author lxm\n * @date 2022-08-18 22:08:16\n * @param {IData} data 选中的单条数据\n */\n async onDbRowClick(data) {\n if (this.state.mdctrlActiveMode === 2) {\n await this.setActive(data);\n }\n }\n /**\n * 数据导入\n *\n * @author lxm\n * @date 2022-11-08 15:11:54\n * @returns {*} {Promise<void>}\n */\n async importData() {\n }\n /**\n * 数据导出\n *\n * @param {MouseEvent} event 原生js点击事件\n * @returns {*} {Promise<void>}\n * @memberof MDControlController\n */\n async exportData(_args) {\n }\n};\nexport {\n ActivityCounter,\n AppCounter,\n AppDataEntity,\n AppFuncCommand,\n Application,\n AuthService,\n AuthorityService,\n BackendUIActionProvider,\n BaseController,\n ButtonContainerState,\n CONTROL_PROVIDER_PREFIX,\n CTX,\n CTXState,\n CodeListEditorController,\n CodeListService,\n ControlController,\n ControlService,\n ControlType,\n ControlVO,\n ControllerEvent,\n Counter,\n CounterService,\n DECache,\n DEDQCondUtil,\n DEService,\n DEServiceUtil,\n DeAuthorityService,\n DynamicCodeListCache,\n EDITOR_PROVIDER_PREFIX,\n EditorController,\n EngineFactory,\n FORMDETAIL_PROVIDER_PREFIX,\n FormNotifyState,\n FrontUIActionProvider,\n GRIDCOLUMN_PROVIDER_PREFIX,\n GridNotifyState,\n LayoutPanelUtil,\n LoadingState,\n MDControlController,\n MDControlService,\n MDViewEngine,\n MethodDto,\n MobViewController,\n Modal,\n OpenAppViewCommand,\n PANELITEM_PROVIDER_PREFIX,\n PORTLET_PROVIDER_PREFIX,\n PSDEDQCondEngine,\n PanelNotifyState,\n PluginStaticResource,\n QXEventEx,\n RegisterCenter,\n RemotePluginItem,\n ScriptFactory,\n ScriptFunction,\n SearchFilter,\n Srfuf,\n StudioControlEvents,\n StudioPanelEvents,\n StudioViewEvents,\n SysUIActionProvider,\n SysUIActionTag,\n TreeCodeListNodeData,\n TreeDataSetNodeData,\n TreeNodeData,\n TreeStaticNodeData,\n UIACTION_PROVIDER_PREFIX,\n UIActionButtonState,\n UIActionUtil,\n UIMapField,\n VIEW_PROVIDER_PREFIX,\n ViewController,\n ViewEngineBase,\n ViewMode,\n ViewType,\n WFWithdrawUIActionProvider,\n WorkFlowService,\n calcContentAlignStyle,\n calcDeCodeNameById,\n calcDynaClass,\n calcGridLayoutPos,\n calcLayoutHeightWidth,\n calcMainStateOPPrivsStrs,\n calcNavParams,\n calcResPath,\n calcRouteContext,\n compare,\n compareNumber,\n contains,\n convertNavData,\n convertNavDataByArray,\n convertNavDataByObject,\n convertObjectToNavParams,\n filterFieldLogics,\n filterValueRules,\n findChildFormDetails,\n findDELogic,\n findEditItem,\n findFieldById,\n findModelChild,\n formatMultiData,\n generateRules,\n getAppViewRef,\n getChildNodeRSs,\n getControl,\n getControlProvider,\n getControlsByView,\n getDeACMode,\n getEditorProvider,\n getFormDetailProvider,\n getGridColumnProvider,\n getMatchResPath,\n getOriginData,\n getPanelItemProvider,\n getPortletProvider,\n getRootNode,\n getTreeNode,\n getUIActionById,\n getUIActionProvider,\n getViewEngines,\n getViewLogics,\n getViewProvider,\n getWFContext,\n getWFSubmitViewId,\n hasDeCodeName,\n install,\n installCommand,\n isValueChange,\n matchMainState,\n openRedirectView,\n parseUserParams,\n presetUIActionProvider,\n registerControlProvider,\n registerEditorProvider,\n registerFormDetailProvider,\n registerGridColumnProvider,\n registerPanelItemProvider,\n registerPortletProvider,\n registerUIActionProvider,\n registerViewProvider,\n strContain,\n testCond,\n toLocalOpenWFRedirectView,\n verifyDeRules,\n verifyFormGroupLogic,\n verifyPanelGroupLogic\n};\n"],"names":["layoutPos","valignSelf","halignSelf","result","Object","assign","display","expression","data","ScriptFactory","execScriptFn","singleRowReturn","layout","colXS","colXSOffset","colSM","colSMOffset","colMD","colMDOffset","colLG","colLGOffset","calcActualValues","span","offset","xs","sm","md","lg","width","height","widthMode","heightMode","concat","model","originParams","deName","navFilter","pickupDEFName","navContexts","navParams","context","params","derValue","resultContext","resultParams","deSrfkey","srfkey","toLowerCase","tempContext","convertNavData","tempParams","_appView","paths","sort","a","b","length","pathArr","obj","forEach","key","val","vrs","name","filter","vr","checkMode","belongName","deformItemName","degridEditItemName","parent","childDetails","detailType","deformTabPages","deformDetails","grid","codeName","_a","degridEditItems","find","item","itemVRs","valueItemName","rules","valueRuleType","sysRule","sysValueRule","deRule","defvalueRule","ruleType","push","pattern","RegExp","regExCode","message","ruleInfo","trigger","validator","rule","value","callback","source","scriptCode","error","console","valueName","isNilOrEmpty6","isPast","infoMessage","verifyDeRules","groupCond","RuntimeError29","view","_b","appViewRefs","viewLayoutPanel","id","tree","args","parentId","getRootNode","detreeNodeRSs","nodeRs","parentDETreeNodeId","searchMode","hasQuery","controls","async","appDEACModeId","entityId","srfappid","appDataEntity","ibiz","hub","getAppDataEntity","appDEACModes","mode","provider","editorType","editorStyle","getProvider2","log","register","get","FORMDETAIL_PROVIDER_PREFIX","columnType","enableRowEdit","GRIDCOLUMN_PROVIDER_PREFIX","getProvider4","singleData","Array","isArray","ControlVO","getOrigin","itemType","predefinedType","getProvider5","rawItem","portletType","PORTLET_PROVIDER_PREFIX","detreeNodes","node","viewType","viewStyle","getProvider7","param09","srfprocessinstanceid","link","type","sequenceFlowView","sequenceFlowMobView","toUpperCase","env","isMob","submitViewRef","viewRef","refAppViewId","calcDeCodeNameById","isNotNil","ibiz2","window","util","GlobalUtil","AppHub","RegisterCenter","config","GlobalConfig","auth","AuthService","engine","EngineFactory","installCommand","presetUIActionProvider","scheduler","LogicSchedulerCenter","triggerFactory","logic","ItemDynaLogicTrigger","TimerTrigger","CustomTrigger","ViewEventTrigger","executorFactory","ScriptExecutor","AppDEUILogicExecutor","AppUILogicExecutor","value2","isNil10","userParams","navigateContexts","navigateParams","other","prototype","hasOwnProperty","call","param","indexOf","splitArr","split","CONTROL_PROVIDER_PREFIX","EDITOR_PROVIDER_PREFIX","PANELITEM_PROVIDER_PREFIX","VIEW_PROVIDER_PREFIX","verifyFormGroupLogic","logicType","isGroupLogic","children","defdlogics","RuntimeModelError2","groupOP","childLogic","notMode","isSingleLogic","testCond","defdname","condOP","ModelError","verifyPanelGroupLogic","isGroupLogic2","panelItemLogics","RuntimeModelError3","isSingleLogic2","dstModelField","condOp","ModelError2","cb","mod","__create","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","require_path_browserify","exports","module","assertPath","path2","TypeError","JSON","stringify","normalizeStringPosix","allowAboveRoot","code","res","lastSegmentLength","lastSlash","dots","i","charCodeAt","lastSlashIndex","lastIndexOf","slice","posix","resolve","cwd","resolvedPath","resolvedAbsolute","arguments","process","normalize","isAbsolute","trailingSeparator","join","joined","arg","relative","from","to","fromStart","fromEnd","fromLen","toStart","toLen","lastCommonSep","fromCode","out","_makeLong","dirname","hasRoot","end","matchedSlash","basename","ext","start","extIdx","firstNonSlashEnd","extname","startDot","startPart","preDotState","format","pathObject","sep","dir","root","base","_format","parse","ret","delimiter","win32","constructor","this","enableDataInfoBar","editShowMode","editSaveMode","appMenu","enableEcho","codeList","timeout","providers","Map","newProvider","set","unRegister","delete","func","naviDatas","origins","isEmpty","toString","convertNavDataByArray","convertNavDataByObject","naviData","notNilEmpty","rawValue","findOrigin","isNilOrEmpty","reg2","test","valueKey","substring","convertObjectToNavParams","formatMultiData","dataArr","naviArr","data1","naviParam","map","findModelChild","models","matchMainState","mainStateAppDEFieldIds","demainStates","values","field","stateValue","state2Value","state3Value","stateValues","calcMainStateOPPrivsStrs","mainState","app","getApp","demainStateOPPrivs","opprivAllowMode","mainStateOPPrivIds","opprivs","deopprivs","includes","pop","findDELogic","appDELogicId","entity","appDELogics","filterFieldLogics","resultIds","appDEFields","computeAppDEFLogicId","onChangeAppDEFLogicId","defaultValueAppDEFLogicId","findFieldById","fieldId","getUIActionById","appId","getUIAction","rootNode","getControlsByView","getViewLogics","viewLogics","appViewLogics","getViewEngines","appViewEngines","openRedirectView","appView","navContext","appViewNavContexts","navContextData","clone","appViewNavParams","navParamsData","appDataEntityId","curData","actionId","getDataAppDEActionId","service","deService","getService","loading","showRedirect","exec","ok","linkUrl","linkurl","dev","startsWith","Promise","newWindow","open","toLocalOpenWFRedirectView","hideRedirect","rdTag","rdView","typeFieldId","typeAppDEFieldId","notNilEmpty2","defView","srfWf","srfwf","wf","typeValue","indexTypeAppDEFieldId","isNilOrEmpty2","formTypeAppDEFieldId","calcDERdTag","rdTagItems","wfRdTag","deRdTag","allRefViews","redirectAppViewRefs","refView","realTitle","viewId","tag","title","RuntimeModelError","commands","execute","OpenAppViewCommand","TAG","openDERedirectView","queryStr","decodeURIComponent","qs","srfdename","RuntimeError","deCodeName","deName2DeCodeName","deRdViewCodeName","deRdView","getAppView","wfTag","processDefinitionKey","wfVersion","op","is","contains","compare","isNilOrEmpty3","notNilEmpty3","isNil","strContain","RuntimeError2","number1","Number","number2","isNaN","compareNumber","date1","Date","getTime","date2","val2","index","DefaultOptions","ScriptFunction","argKeys","options","formatCode","calcArgKeys","scriptFn","Function","keys","presetParams","Set","convertArgs","_params","mergeRight","document","selector","className","getElementsByClassName","scriptArgs","static","createScriptFn","condition","flag","condType","isGroupCondition","childRules","conds","array","operateTag","isReverse","len","temp","logicForEach","defname","isSimpleCondition","errorInfo","paramType","form","primaryModel","isNil2","isEmpty2","RuntimeError3","checkFieldSimpleRule","paramValue","keyCond","isValueRange2Condition","viewValue","minNumber","indexOfMin","maxNumber","indexOfMax","isNilOrEmpty4","checkFieldRegExRule","parseFloat","checkFieldValueRangeRule","minValue","includeMinValue","maxValue","includeMaxValue","isRegExCondition","isStringLengthCondition","minLength","maxLength","viewValueLength","checkFieldStringLengthRule","isSysValueRuleCondition","selfError","resultBoolean","checkFieldScriptRule","strReg","LayoutPanelUtil","cache","fill","viewModel","useDefaultLayout","calcLayoutTag","has","appCounterRefs","calcIndexViewLayoutTag","blankMode","mainMenuAlign","exTag","ControlType","ControlType2","ViewType","ViewType2","ViewMode","ViewMode2","SysUIActionTag","SysUIActionTag2","StudioViewEvents","onViewMounted","onViewDestroyed","StudioPanelEvents","onClick","onChange","onEnter","onLeave","StudioControlEvents","onBeforeLoad","onLoadSuccess","onLoadError","onBeforeLoadDraft","onLoadDraftSuccess","onLoadDraftError","onBeforeSave","onSaveSuccess","onSaveError","onBeforeRemove","onRemoveSuccess","onRemoveError","CLICK","Modal","opts","viewUsage","hooks","shouldDismiss","AsyncSeriesHook","beforeDismiss","_dismiss","routeDepth","dismiss","injectDismiss","allowClose","destroy","debug","clear","_OpenAppViewCommand","bind","appViewId","RuntimeError4","redirectView","openMode","noWaitRoute","openIndexViewTab","ModelError3","openModal","openPopover","event","openDrawer","openUserCustom","openView","modal","popover","drawer","custom","_AppFuncCommand","appFuncId","appFunc","getAppFunc","RuntimeError5","appFuncType","_context","openAppView","openHtmlPage","openPdAppFunc","executeJavaScript","ModelError4","url","htmlPageUrl","warn","AppFuncCommand","AppCounter","destroyed","IBizContext","evt","QXEvent","isDestroyed","setParams","action","getAppDEActionId","RuntimeModelError4","interval","load","clone2","destroyInterval","intervalTimer","setInterval","getSize","timer","clearInterval","emit","refresh","fn","immediate","on","notNilEmpty4","offChange","off","getCounter","reset","PSModelCondEngineBase","psModelGroupCondBase","createPSModelGroupCond","testSingleCond","strCondOp","objValue","objCondValue","nRet","err","getPSModelGroupCondBase","PSModelCondBase","getCondOp","setCondOp","PSModelSingleCondBase","arr","nCount","bOpStart","bParamStart","bValueStart","strText","setParam","setValueType","setValue","getValueType","strValueType","getValue","strValue","getParamType","strParamType","setParamType","getParam","strParam","PSModelGroupCondBase","_PSModelGroupCondBase","super","childCondList","bNotMode","bNotStart","bCondStart","setNotMode","list","RuntimeError6","child","isNotMode","getChildPSModelCondBases","PSDEDQGroupCond","PSDEDQSingleCond","_PSDEDQCondEngine","cond","isEmpty3","bAnd","bRet","childCond","valType","PARAMTYPE_WEBCONTEXT","PARAMTYPE_DATACONTEXT","createPSModelSingleCond","PSDEDQCondEngine","dataSet","groups","dedqgroupConditions","calcCond","items","condArr","dedqconditions","ModelError5","fieldName","condValue","WeakMap","DynamicCodeListCache","isPredefined","initPromise","ModelError6","convertData","valueAppDEFieldId","textAppDEFieldId","text","srfmajortext","freeze","size","res2","net","appDEDataSetId","RuntimeModelError5","resultItems","enableCache","cacheData2","expirationTime","promise","cacheTimeout","waitTime","isNil3","cacheData","isExistSrfKey","funcName","isNil4","isEmpty4","RuntimeError7","isExistSessionId","srfsessionid","DECache","cacheMap","forceAdd","getCacheByTag","forceUpdate","clone3","forceDelete","srfKey","add","isNil5","isEmpty5","createUUID","srftempdate","update","Error","createBatch","entities","updateBatch","deleteBatch","srfKeys","notRemoveKeys","checkData","getList","findIndex","generatePred","equals","where","reg","getMatchResPath","filterItems","requestPaths","str","path","match","every","calcResPath","replace","SearchFilter","page","sortField","sortMode","isNil6","isEmpty6","query","srfparentkey","srfparentdename","CodeListService","appModel","allCodeLists","getStatic","codeItems","formatStaticItems","codeItemValueNumber","setCodeList","getCodeList","isValueNumber","codeItem","_codeItem","color","dynamicCache","init","RuntimeError8","codeListType","getDynamicCodeList","CounterService","counterMap","counter2","counter","appCounter","RuntimeModelError6","WorkFlowService","commonBaseUrl","appContext","appData","srfsystemid","getBaseUrl","getActiveData","taskDefinitionKey","deKeyValue","post","activedata","request","method","responseType","taskId","methodName","wfStart","wfSubmit","wfReassign","wfAddStepBefore","wfSendBack","wfSendCopy","RuntimeError9","Srfuf","Srfuf2","AppDataEntity","_AppDataEntity","srfuf","_srfkey","enumerable","configurable","clone4","_data","keyAppField","keyAppDEFieldId","majorAppField","majorAppDEFieldId","major","defineProperties","properties","_entity","MethodDto","_MethodDto","dto","dtoMap","fields","appDEMethodDTOFields","isLocalMode","storageMode","isNilOrEmpty5","getFieldDto","refAppDataEntityId","local","j","ModelError7","all","datum","sets","entityData","methodDto","appDEMethodDTOs","refAppDEMethodDTOId","Method","input","appDEMethodDTOId","appDEMethodInput","output","appDEMethodReturn","actionType","requestMethod","put","RuntimeModelError7","calcPath","curPath","codeName2","createEntity","DELogicLinkCond","DELogicLinkSingleCond","srcParam","srcLogicParamId","dstParam","dstLogicParamId","dstField","dstFieldName","ctx","dst","RuntimeModelError8","src","ModelError8","DELogicLinkGroupCond","_DELogicLinkGroupCond","bol","RuntimeModelError9","judge","DELogicNode","links","srcNode","dstNode","delogicLinkGroupCond","defaultLink","DEActionNode","dstAppDataEntityId","dstAppDEActionId","dstDELogicParamId","retDELogicParamId","RuntimeModelError10","requestData","viewParams","StartNode","_ctx","EndNode","isEndNode","returnParamId","returnType","ModelError9","handleSrcVal","srcValParams","srcDELogicParamId","srcValueType","srcFieldName","srcValue","clone5","ModelError10","srcField","PrepareParamNode","nodeParams","delogicNodeParams","nodeParam","paramAction","setParamValue","resetParam","copyParam","bindParam","renewParam","appendParam","sortParam","ModelError11","srcVal","clone6","dstIndex","srcIndex","srcSize","insertIndex","_srcIndex","_srcSize","splice","dstSortDir","DataSetNode","dstAppDEDataSetId","BindParamNode","RuntimeModelError11","ResetParamNode","RuntimeModelError12","RenewParamNode","RuntimeModelError13","CopyParamNode","RuntimeModelError14","clone7","SortParamNode","RuntimeModelError15","AppendParamNode","RuntimeModelError16","ThrowExceptionNode","errorCode","HttpError","response","status","statusText","DELogic","nodes","delogicNodes","RuntimeModelError17","logicNodeType","logicNode","ModelError13","delogicParams","calc","m","default","appGlobalParam","clone8","entityListParam","entityPageParam","ModelError12","entityParam","lastReturnParam","appContextParam","simpleListParam","simpleParam","cloneParam","envParam","fileListParam","fileParam","filterParam","lastParam","originEntity","sessionParam","renew","thenId","initLogicParams","defaultParamName","deLogicParams","startDELogicNodeId","deepExec","parallelOutput","deLogicMap","execDELogic","deDELogic","execFieldLogics","fieldLogics","DEActionMethod","deLogic","RuntimeModelError18","HttpResponse2","HttpError2","execDELogicAction","handle","actionMode","getDraft","remove","createTemp","getTemp","getDraftTemp","removeTemp","updateTemp","needResourceKey","s","HttpResponse3","FetchMethod","items2","searchLocal","HttpResponse4","ascSort","nullData","undefinedData","emptyData","equals2","isEmpty7","pred","where2","nullPred","undefinedPred","emptyPred","queryParamKeys","quickSearchAppDEFieldIds","selectLocal","isNil7","descSort","clone9","DEService","methodMap","file","exportData","dataExport","fetchAction","resPath","exportUrl","getMethod","appDEMethods","methodType","ModelError14","params2","RuntimeError10","_ControlVO","isNil8","$origin","srfdeid","srfdecodename","srfkeyfile","srfmajorfile","$dataUIMap","mapField","dataKey","linkProperty","isOriginField","uiKey","writable","setOrigin","ControlService","dataUIMap","initUIDataMap","handleResponse","toUIData","DeAuthorityService","fetchControlAction","appDEMethodId","getAction","getControlAction","getDraftAction","getDraftControlAction","removeAction","removeControlAction","createAction","createControlAction","updateAction","updateControlAction","_dataExport","RuntimeError11","headers","total","entityModel","dataAccessAction","srfopprivs","calcByDeMainState","enableDEMainState","AuthorityService","constructorCache","resCodes","enablePermission","RuntimeError12","unires","enablepermissionvalid","calcByResCode","resCode","appDeId","opPriv","getOPPriv","mapSysUniResCode","calcByDataAccessAction","loginname","password","TreeNodeData","parentNodeData","leaf","nodeId","DEServiceUtil","deData","nodeValue","parentValueLevel","isRequestNeed","isNil9","RuntimeError13","clearTempCache","Application","Net","baseURL","baseUrl","authority","loadAppModelStyle","remoteModelUrl","then","dom","createElement","setAttribute","responseURL","URL","pathname","innerHTML","head","appendChild","catch","appFuncs","appDEUIActions","deUILogicId","appDEUILogics","convert","appMap","apps","view2appMap","views","dataEntities","viewConfigs","viewConfig","RuntimeError14","defaultAppIndexViewName","calcAppViewId","ids","registerModelLoaderProvider","modelLoaderProvider","registerApp","registerAppView","registerAppDataEntity","setAppView","hasAppView","createApp","RuntimeError15","getAppDataEntityByCodeName","viewEngines","getEngine","engineType","engineCat","ViewEngineBase","initViewState","toolbar","getController","leftToolbar","rightToolbar","footerToolbar","layoutPanel","childNames","calcViewHeaderVisible","controller","panelItems","view_header","state","visible","calcViewFooterVisible","view_footer","_args","getData","_c","_d","showHeader","showCaptionBar","view_captionbar","lefttoolbar","righttoolbar","view_toolbar","showFooter","RuntimeError16","srfactiveviewdata","info","dataInfo","xdataControlName","searchForm","searchBar","xdataControl","onCreated","onMounted","openData","calcButtonState","searchParams","getSearchParams","view_searchform","formExists","keepAlive","expandSearchForm","noLoadDefault","loadDefault","toggleFilter","newData","importData","copy","triggerCustom","RuntimeModelError19","copyMode","srfcopymode","isInitialLoad","addParams","view_searchbar","searchformContainer","getProvider","getControlProvider","controlType","controlStyle","UIACTION_PROVIDER_PREFIX","registerUIActionProvider","getUIActionProvider","uiactionMode","RuntimeError17","UILogicLinkCond","UILogicLinkSingleCond","RuntimeModelError20","ModelError15","UILogicLinkGroupCond","_UILogicLinkGroupCond","deuilogicLinkConds","RuntimeModelError21","UILogicNode","deuilogicLinks","linkMode","deuilogicLinkGroupCond","ModelError16","DEActionNode2","dstDEUILogicParamId","retDEUILogicParamId","RuntimeModelError22","DEUIActionNode","dstAppDEUIActionId","parameters","RuntimeModelError23","actionData","UIActionUtil","execAndResolved","StartNode2","EndNode2","ModelError17","PrepareJSParamNode","deuilogicNodeParams","ModelError19","srcDEUILogicParamId","clone10","ModelError18","handleSrcVal2","ViewCtrlInvokeNode","invokeMethod","invokeCtrlId","invokeParamId","RuntimeModelError24","invokeParam","RuntimeError18","invokeCtrl","isFunction","uiLogicMap","execUILogic","deUILogic","getDEUILogic","RuntimeError20","deuilogicNodes","RuntimeModelError25","ModelError21","deuilogicParams","activeContainerParam","ctrl","activeCtrlParam","ctrlParam","control","RuntimeError19","activeViewParam","applicationParam","ModelError20","navContextParam","navViewParamParam","routeViewSessionParam","viewNavDataParam","viewSessionParam","dstDEUILogicNodeId","startDEUILogicNodeId","uiLogic","RuntimeError21","closeView","callUIAction","UIActionProviderBase","reloadData","closeEditView","appDEUILogicId","uilogicAttachMode","RuntimeModelError26","isConfirm","returnError","_result","execAction","cancel","nextResult","doNextAction","nextContext","nextParams","enableConfirm","confirmMsg","confirm","nextActionId","nextId","resultData","actionTarget","originData","valueItem","paramItem","unshift","isMultiData","BackendUIActionProvider","actionResult","entityName","RuntimeModelError27","handleParams","frontPSAppView","frontAppViewId","srfactionparam","successMsg","success","isArray2","SysUIActionProvider","uIActionTag","uiactionTag","FrontUIActionProvider","frontProcessType","StringUtil","RuntimeModelError28","doOther","ModelError22","el","target","WFWithdrawUIActionProvider","_action","isCloseView","desc","frontUIActionProvider","backendUIActionProvider","sysUIActionProvider","wfWithdrawUIActionProvider","LogicExecutor","_executeParams","RuntimeError22","isRowReturn","convertScriptArgs","RuntimeError23","paramKeys","convertFun","executeParams","RuntimeModelError29","LogicScheduler","logics","triggers","executors","executor","createExecutor","createTrigger","bindExecutor","getExecuteParams","defaultParams","defaultParamsCb","mergeLeft","getMatchTriggers","matchParams","triggerAndExecute","triggerItemDynaLogic","itemName","triggerType","triggerItemVisible","triggerItemEnable","triggerItemBlank","startTimerTrigger","ControlLogicScheduler","ViewLogicScheduler","logicTrigger","triggerViewEvent","eventName","constructorMap","ModelError23","ModelError24","createViewScheduler","createControlScheduler","LogicTrigger","RuntimeError24","RuntimeError25","RuntimeError26","builtinAppUILogic","executeOpenDataAppUILogic","executeNewDataAppUILogic","appUILogic","rest","RuntimeError27","openViewRef","openDataAppView","RuntimeModelError30","notNilEmpty5","newViewRef","newDataAppView","newView","enableWizardAdd","enableBatchAdd","batchAddOnly","listenEventNames","names","eventNames","import_path_browserify","isNodeMode","except","__copyProps","__esModule","__toESM","FormNotifyState","mateUrl","styleElementMap","baseDir","pathStr","urls","styleUrl","reject","linkDom","onload","onerror","repo","FormNotifyState2","GridNotifyState","GridNotifyState2","PanelNotifyState","PanelNotifyState2","Counter","count","reusable","increment","decrement","callback2","RuntimeError28","LoadingState","isLoading","NOOP","begin","CTXState","CTX","QXEvent2","controllersMap","registerController","nextState","startLoading","endLoading","c","traceRoot","getTopView","ActivityCounter","registration","enroll","attend","QXEventEx","uiActionId","disabled","permitted","noPermissionHidden","noDataDisabled","isInit","uiAction","appDeName","noPrivDisplayMode","calcPermission","addState","setLoading","QXEvent3","anyEventFns","onAll","asyncEmit","resultArr","clearAll","ControllerEvent","getBaseArgs","SELF_KEY","BaseController","getEventArgs","mountCounter","mounted","initState","_evt","isCreated","isMounted","targetName","force","mountSelf","onDestroyed","_callback","listenNewController","ViewController","IBizContext2","engines","slotProps","counters","viewLoading","_isActive","initEngines","parentView","isActive","onActivated","onDeactivated","engineModels","ins","counterRef","getCounterByRef","caption","tapPromise","modalData","handleContextParams","ctrlProvider","initCounters","_eventName","createUUID2","notNilEmpty6","RuntimeError30","setLayoutPanel","panel","EditorController","placeHolder","editorParams","readonly","readOnly","onInit","handlePublicParams","selfContext","selfParams","toObj","toBoolean","ControlController","appCodeListId","dataItems","RuntimeModelError31","registerToCtx","panelModel","controlPanel","controlLogics","getControlType","handlerAbilityParams","selectedData","noSort","sortQuery","curPage","isLoaded","singleSelect","mdctrlActiveMode","setSort","order","extraParams","isLoadMore","getFetchParams","fetch","afterLoad","RuntimeError31","allSettled","afterRemove","notification","setActive","setSelection","selection","isElementSame","filterArr"],"mappings":"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"}