@ibiz-template/runtime 0.7.41-alpha.124 → 0.7.41-alpha.126

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 (288) hide show
  1. package/dist/index.esm.js +45309 -44911
  2. package/dist/index.system.min.js +1 -1
  3. package/out/application.d.ts +7 -0
  4. package/out/application.d.ts.map +1 -1
  5. package/out/application.js +21 -0
  6. package/out/controller/control/app-menu/app-menu.controller.js +1 -1
  7. package/out/controller/control/form/form-detail/form-item/form-item.controller.d.ts.map +1 -1
  8. package/out/controller/control/form/form-detail/form-item/form-item.controller.js +1 -1
  9. package/out/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.d.ts.map +1 -1
  10. package/out/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.js +1 -1
  11. package/out/controller/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.controller.d.ts.map +1 -1
  12. package/out/controller/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.controller.js +1 -1
  13. package/out/controller/control/toolbar/toolbar.controller.js +1 -1
  14. package/out/controller/control/tree/tree.service.d.ts.map +1 -1
  15. package/out/controller/control/tree/tree.service.js +1 -1
  16. package/out/controller/utils/view-msg/view-msg-controller.d.ts.map +1 -1
  17. package/out/controller/utils/view-msg/view-msg-controller.js +1 -1
  18. package/out/de-logic/de-logic-context.d.ts +4 -13
  19. package/out/de-logic/de-logic-context.d.ts.map +1 -1
  20. package/out/de-logic/de-logic-context.js +2 -3
  21. package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.d.ts +15 -5
  22. package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.d.ts.map +1 -1
  23. package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.js +3 -4
  24. package/out/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.d.ts +2 -1
  25. package/out/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.d.ts.map +1 -1
  26. package/out/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.d.ts +2 -1
  27. package/out/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.d.ts.map +1 -1
  28. package/out/de-logic/de-logic-link/de-logic-link.d.ts +6 -7
  29. package/out/de-logic/de-logic-link/de-logic-link.d.ts.map +1 -1
  30. package/out/de-logic/de-logic-link/de-logic-link.js +3 -4
  31. package/out/de-logic/de-logic-node/de-logic-node.d.ts +2 -1
  32. package/out/de-logic/de-logic-node/de-logic-node.d.ts.map +1 -1
  33. package/out/de-logic/de-logic-node/index.d.ts +1 -0
  34. package/out/de-logic/de-logic-node/index.d.ts.map +1 -1
  35. package/out/de-logic/de-logic-node/index.js +1 -0
  36. package/out/de-logic/de-logic.d.ts +31 -37
  37. package/out/de-logic/de-logic.d.ts.map +1 -1
  38. package/out/de-logic/de-logic.js +49 -98
  39. package/out/de-logic/index.d.ts +31 -40
  40. package/out/de-logic/index.d.ts.map +1 -1
  41. package/out/de-logic/index.js +57 -76
  42. package/out/de-logic/provider.d.ts +6 -0
  43. package/out/de-logic/provider.d.ts.map +1 -0
  44. package/out/de-logic/provider.js +25 -0
  45. package/out/install.d.ts.map +1 -1
  46. package/out/install.js +6 -0
  47. package/out/interface/api/common/i-api-de-logic-params.d.ts +9 -0
  48. package/out/interface/api/common/i-api-de-logic-params.d.ts.map +1 -0
  49. package/out/interface/api/common/i-api-logic-context.d.ts +83 -0
  50. package/out/interface/api/common/i-api-logic-context.d.ts.map +1 -0
  51. package/out/interface/api/common/i-api-logic-context.js +1 -0
  52. package/out/interface/api/common/i-api-logic-params.d.ts +27 -0
  53. package/out/interface/api/common/i-api-logic-params.d.ts.map +1 -0
  54. package/out/interface/api/common/i-api-logic-params.js +1 -0
  55. package/out/interface/api/common/i-api-ui-logic-params.d.ts +3 -21
  56. package/out/interface/api/common/i-api-ui-logic-params.d.ts.map +1 -1
  57. package/out/interface/api/common/index.d.ts +2 -0
  58. package/out/interface/api/common/index.d.ts.map +1 -1
  59. package/out/interface/api/controller/control/form-detail/i-api-form-detail.controller.d.ts +1 -1
  60. package/out/interface/common/i-logic-context/i-logic-context.d.ts +27 -0
  61. package/out/interface/common/i-logic-context/i-logic-context.d.ts.map +1 -0
  62. package/out/interface/common/i-logic-context/i-logic-context.js +1 -0
  63. package/out/interface/common/i-logic-link-cond/i-logic-link-cond.d.ts +18 -0
  64. package/out/interface/common/i-logic-link-cond/i-logic-link-cond.d.ts.map +1 -0
  65. package/out/interface/common/i-logic-link-cond/i-logic-link-cond.js +1 -0
  66. package/out/interface/common/index.d.ts +2 -1
  67. package/out/interface/common/index.d.ts.map +1 -1
  68. package/out/interface/de-logic/i-de-logic-context.d.ts +10 -0
  69. package/out/interface/de-logic/i-de-logic-context.d.ts.map +1 -0
  70. package/out/interface/de-logic/i-de-logic-context.js +1 -0
  71. package/out/interface/de-logic/i-de-logic-link-cond.d.ts +33 -0
  72. package/out/interface/de-logic/i-de-logic-link-cond.d.ts.map +1 -0
  73. package/out/interface/de-logic/i-de-logic-link-cond.js +1 -0
  74. package/out/interface/de-logic/i-de-logic-link.d.ts +43 -0
  75. package/out/interface/de-logic/i-de-logic-link.d.ts.map +1 -0
  76. package/out/interface/de-logic/i-de-logic-link.js +1 -0
  77. package/out/interface/de-logic/i-de-logic-node.d.ts +10 -0
  78. package/out/interface/de-logic/i-de-logic-node.d.ts.map +1 -0
  79. package/out/interface/de-logic/i-de-logic-node.js +1 -0
  80. package/out/interface/de-logic/i-de-logic-params.d.ts +10 -0
  81. package/out/interface/de-logic/i-de-logic-params.d.ts.map +1 -0
  82. package/out/interface/de-logic/i-de-logic-params.js +1 -0
  83. package/out/interface/de-logic/i-de-logic.d.ts +23 -0
  84. package/out/interface/de-logic/i-de-logic.d.ts.map +1 -0
  85. package/out/interface/de-logic/i-de-logic.js +1 -0
  86. package/out/interface/de-logic/index.d.ts +7 -0
  87. package/out/interface/de-logic/index.d.ts.map +1 -0
  88. package/out/interface/de-logic/index.js +1 -0
  89. package/out/interface/index.d.ts +1 -0
  90. package/out/interface/index.d.ts.map +1 -1
  91. package/out/interface/index.js +1 -0
  92. package/out/interface/provider/i-de-logic-node.provider.d.ts +29 -0
  93. package/out/interface/provider/i-de-logic-node.provider.d.ts.map +1 -0
  94. package/out/interface/provider/i-de-logic-node.provider.js +1 -0
  95. package/out/interface/provider/i-de-logic.provider.d.ts +22 -0
  96. package/out/interface/provider/i-de-logic.provider.d.ts.map +1 -0
  97. package/out/interface/provider/i-de-logic.provider.js +1 -0
  98. package/out/interface/provider/i-ui-action.provider.d.ts +2 -1
  99. package/out/interface/provider/i-ui-action.provider.d.ts.map +1 -1
  100. package/out/interface/provider/i-ui-logic-node.provider.d.ts +20 -14
  101. package/out/interface/provider/i-ui-logic-node.provider.d.ts.map +1 -1
  102. package/out/interface/provider/i-ui-logic.provider.d.ts +22 -0
  103. package/out/interface/provider/i-ui-logic.provider.d.ts.map +1 -0
  104. package/out/interface/provider/i-ui-logic.provider.js +1 -0
  105. package/out/interface/provider/index.d.ts +3 -0
  106. package/out/interface/provider/index.d.ts.map +1 -1
  107. package/out/interface/register/i-register-params.d.ts +29 -34
  108. package/out/interface/register/i-register-params.d.ts.map +1 -1
  109. package/out/interface/ui-logic/i-ui-logic-context.d.ts +8 -83
  110. package/out/interface/ui-logic/i-ui-logic-context.d.ts.map +1 -1
  111. package/out/interface/ui-logic/i-ui-logic-link-cond.d.ts +33 -0
  112. package/out/interface/ui-logic/i-ui-logic-link-cond.d.ts.map +1 -0
  113. package/out/interface/ui-logic/i-ui-logic-link-cond.js +1 -0
  114. package/out/interface/ui-logic/i-ui-logic-link.d.ts +43 -0
  115. package/out/interface/ui-logic/i-ui-logic-link.d.ts.map +1 -0
  116. package/out/interface/ui-logic/i-ui-logic-link.js +1 -0
  117. package/out/interface/ui-logic/i-ui-logic-node.d.ts +10 -0
  118. package/out/interface/ui-logic/i-ui-logic-node.d.ts.map +1 -0
  119. package/out/interface/ui-logic/i-ui-logic-node.js +1 -0
  120. package/out/interface/{common/i-ui-logic-params → ui-logic}/i-ui-logic-params.d.ts +3 -5
  121. package/out/interface/ui-logic/i-ui-logic-params.d.ts.map +1 -0
  122. package/out/interface/ui-logic/i-ui-logic-params.js +1 -0
  123. package/out/interface/ui-logic/i-ui-logic.d.ts +23 -0
  124. package/out/interface/ui-logic/i-ui-logic.d.ts.map +1 -0
  125. package/out/interface/ui-logic/i-ui-logic.js +1 -0
  126. package/out/interface/ui-logic/index.d.ts +5 -0
  127. package/out/interface/ui-logic/index.d.ts.map +1 -1
  128. package/out/locale/en/index.d.ts +21 -0
  129. package/out/locale/en/index.d.ts.map +1 -1
  130. package/out/locale/en/index.js +21 -0
  131. package/out/locale/zh-CN/index.d.ts +21 -0
  132. package/out/locale/zh-CN/index.d.ts.map +1 -1
  133. package/out/locale/zh-CN/index.js +21 -0
  134. package/out/register/custom-register.d.ts +54 -22
  135. package/out/register/custom-register.d.ts.map +1 -1
  136. package/out/register/custom-register.js +172 -78
  137. package/out/register/helper/app-menu-item-register.d.ts +2 -2
  138. package/out/register/helper/app-menu-item-register.d.ts.map +1 -1
  139. package/out/register/helper/app-menu-item-register.js +18 -10
  140. package/out/register/helper/control-register.js +2 -2
  141. package/out/register/helper/de-logic-node-register.d.ts +24 -0
  142. package/out/register/helper/de-logic-node-register.d.ts.map +1 -0
  143. package/out/register/helper/de-logic-node-register.js +50 -0
  144. package/out/register/helper/de-logic-register.d.ts +20 -0
  145. package/out/register/helper/de-logic-register.d.ts.map +1 -0
  146. package/out/register/helper/de-logic-register.js +41 -0
  147. package/out/register/helper/de-method-register.d.ts +1 -1
  148. package/out/register/helper/de-method-register.d.ts.map +1 -1
  149. package/out/register/helper/de-method-register.js +4 -4
  150. package/out/register/helper/editor-register.d.ts +2 -3
  151. package/out/register/helper/editor-register.d.ts.map +1 -1
  152. package/out/register/helper/editor-register.js +4 -6
  153. package/out/register/helper/form-detail-register.js +3 -3
  154. package/out/register/helper/grid-column-register.d.ts +3 -3
  155. package/out/register/helper/grid-column-register.d.ts.map +1 -1
  156. package/out/register/helper/grid-column-register.js +9 -9
  157. package/out/register/helper/index.d.ts +3 -0
  158. package/out/register/helper/index.d.ts.map +1 -1
  159. package/out/register/helper/index.js +3 -0
  160. package/out/register/helper/panel-item-register.js +4 -4
  161. package/out/register/helper/portlet-register.d.ts +3 -5
  162. package/out/register/helper/portlet-register.d.ts.map +1 -1
  163. package/out/register/helper/portlet-register.js +20 -19
  164. package/out/register/helper/toolbar-item-register.d.ts +5 -7
  165. package/out/register/helper/toolbar-item-register.d.ts.map +1 -1
  166. package/out/register/helper/toolbar-item-register.js +24 -16
  167. package/out/register/helper/ui-action-register.js +2 -2
  168. package/out/register/helper/ui-logic-node-register.d.ts +13 -9
  169. package/out/register/helper/ui-logic-node-register.d.ts.map +1 -1
  170. package/out/register/helper/ui-logic-node-register.js +51 -17
  171. package/out/register/helper/ui-logic-register.d.ts +20 -0
  172. package/out/register/helper/ui-logic-register.d.ts.map +1 -0
  173. package/out/register/helper/ui-logic-register.js +41 -0
  174. package/out/register/helper/view-register.d.ts.map +1 -1
  175. package/out/register/helper/view-register.js +14 -0
  176. package/out/service/service/entity/method/de-action.d.ts.map +1 -1
  177. package/out/service/service/entity/method/de-action.js +1 -1
  178. package/out/ui-logic/index.d.ts +5 -10
  179. package/out/ui-logic/index.d.ts.map +1 -1
  180. package/out/ui-logic/index.js +12 -14
  181. package/out/ui-logic/provider.d.ts +6 -0
  182. package/out/ui-logic/provider.d.ts.map +1 -0
  183. package/out/ui-logic/provider.js +32 -0
  184. package/out/ui-logic/ui-logic-context.d.ts +1 -1
  185. package/out/ui-logic/ui-logic-context.d.ts.map +1 -1
  186. package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.d.ts +16 -5
  187. package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.d.ts.map +1 -1
  188. package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.js +3 -4
  189. package/out/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.d.ts +2 -1
  190. package/out/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.d.ts.map +1 -1
  191. package/out/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.d.ts +2 -1
  192. package/out/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.d.ts.map +1 -1
  193. package/out/ui-logic/ui-logic-link/ui-logic-link.d.ts +6 -8
  194. package/out/ui-logic/ui-logic-link/ui-logic-link.d.ts.map +1 -1
  195. package/out/ui-logic/ui-logic-link/ui-logic-link.js +3 -5
  196. package/out/ui-logic/ui-logic-node/pf-plugin-node/pf-plugin-node.js +3 -3
  197. package/out/ui-logic/ui-logic-node/ui-logic-node.d.ts +9 -14
  198. package/out/ui-logic/ui-logic-node/ui-logic-node.d.ts.map +1 -1
  199. package/out/ui-logic/ui-logic-node/ui-logic-node.js +2 -4
  200. package/out/ui-logic/ui-logic.d.ts +27 -36
  201. package/out/ui-logic/ui-logic.d.ts.map +1 -1
  202. package/out/ui-logic/ui-logic.js +35 -108
  203. package/out/utils/dr-ctrl-util/index.d.ts.map +1 -1
  204. package/out/utils/dr-ctrl-util/index.js +1 -1
  205. package/package.json +2 -2
  206. package/src/application.ts +23 -0
  207. package/src/controller/control/app-menu/app-menu.controller.ts +1 -1
  208. package/src/controller/control/form/form-detail/form-item/form-item.controller.ts +0 -1
  209. package/src/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.ts +0 -1
  210. package/src/controller/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.controller.ts +0 -1
  211. package/src/controller/control/toolbar/toolbar.controller.ts +1 -1
  212. package/src/controller/control/tree/tree.service.ts +1 -0
  213. package/src/controller/utils/view-msg/view-msg-controller.ts +7 -1
  214. package/src/de-logic/de-logic-context.ts +4 -16
  215. package/src/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.ts +17 -5
  216. package/src/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.ts +5 -1
  217. package/src/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.ts +5 -1
  218. package/src/de-logic/de-logic-link/de-logic-link.ts +6 -6
  219. package/src/de-logic/de-logic-node/de-logic-node.ts +2 -1
  220. package/src/de-logic/de-logic-node/index.ts +1 -0
  221. package/src/de-logic/de-logic.ts +60 -123
  222. package/src/de-logic/index.ts +66 -85
  223. package/src/de-logic/provider.ts +83 -0
  224. package/src/install.ts +6 -0
  225. package/src/interface/api/common/i-api-de-logic-params.ts +8 -0
  226. package/src/interface/api/common/i-api-logic-context.ts +83 -0
  227. package/src/interface/api/common/i-api-logic-params.ts +29 -0
  228. package/src/interface/api/common/i-api-ui-logic-params.ts +3 -24
  229. package/src/interface/api/common/index.ts +2 -0
  230. package/src/interface/api/controller/control/form-detail/i-api-form-detail.controller.ts +1 -1
  231. package/src/interface/common/i-logic-context/i-logic-context.ts +27 -0
  232. package/src/interface/common/i-logic-link-cond/i-logic-link-cond.ts +18 -0
  233. package/src/interface/common/index.ts +2 -1
  234. package/src/interface/de-logic/i-de-logic-context.ts +9 -0
  235. package/src/interface/de-logic/i-de-logic-link-cond.ts +33 -0
  236. package/src/interface/de-logic/i-de-logic-link.ts +47 -0
  237. package/src/interface/de-logic/i-de-logic-node.ts +9 -0
  238. package/src/interface/de-logic/i-de-logic-params.ts +9 -0
  239. package/src/interface/de-logic/i-de-logic.ts +23 -0
  240. package/src/interface/de-logic/index.ts +10 -0
  241. package/src/interface/index.ts +1 -0
  242. package/src/interface/provider/i-de-logic-node.provider.ts +29 -0
  243. package/src/interface/provider/i-de-logic.provider.ts +22 -0
  244. package/src/interface/provider/i-ui-action.provider.ts +2 -1
  245. package/src/interface/provider/i-ui-logic-node.provider.ts +20 -14
  246. package/src/interface/provider/i-ui-logic.provider.ts +22 -0
  247. package/src/interface/provider/index.ts +3 -0
  248. package/src/interface/register/i-register-params.ts +49 -35
  249. package/src/interface/ui-logic/i-ui-logic-context.ts +9 -95
  250. package/src/interface/ui-logic/i-ui-logic-link-cond.ts +33 -0
  251. package/src/interface/ui-logic/i-ui-logic-link.ts +47 -0
  252. package/src/interface/ui-logic/i-ui-logic-node.ts +9 -0
  253. package/src/interface/{common/i-ui-logic-params → ui-logic}/i-ui-logic-params.ts +3 -5
  254. package/src/interface/ui-logic/i-ui-logic.ts +23 -0
  255. package/src/interface/ui-logic/index.ts +9 -0
  256. package/src/locale/en/index.ts +38 -0
  257. package/src/locale/zh-CN/index.ts +36 -0
  258. package/src/register/custom-register.ts +184 -82
  259. package/src/register/helper/app-menu-item-register.ts +26 -13
  260. package/src/register/helper/control-register.ts +2 -2
  261. package/src/register/helper/de-logic-node-register.ts +76 -0
  262. package/src/register/helper/de-logic-register.ts +63 -0
  263. package/src/register/helper/de-method-register.ts +4 -4
  264. package/src/register/helper/editor-register.ts +4 -7
  265. package/src/register/helper/form-detail-register.ts +3 -3
  266. package/src/register/helper/grid-column-register.ts +9 -9
  267. package/src/register/helper/index.ts +3 -0
  268. package/src/register/helper/panel-item-register.ts +4 -4
  269. package/src/register/helper/portlet-register.ts +23 -22
  270. package/src/register/helper/toolbar-item-register.ts +32 -19
  271. package/src/register/helper/ui-action-register.ts +2 -2
  272. package/src/register/helper/ui-logic-node-register.ts +79 -25
  273. package/src/register/helper/ui-logic-register.ts +63 -0
  274. package/src/register/helper/view-register.ts +15 -0
  275. package/src/service/service/entity/method/de-action.ts +7 -1
  276. package/src/ui-logic/index.ts +17 -16
  277. package/src/ui-logic/provider.ts +122 -0
  278. package/src/ui-logic/ui-logic-context.ts +1 -1
  279. package/src/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.ts +18 -5
  280. package/src/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.ts +5 -1
  281. package/src/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.ts +5 -1
  282. package/src/ui-logic/ui-logic-link/ui-logic-link.ts +6 -7
  283. package/src/ui-logic/ui-logic-node/pf-plugin-node/pf-plugin-node.ts +3 -3
  284. package/src/ui-logic/ui-logic-node/ui-logic-node.ts +9 -14
  285. package/src/ui-logic/ui-logic.ts +46 -141
  286. package/src/utils/dr-ctrl-util/index.ts +7 -1
  287. package/out/interface/common/i-ui-logic-params/i-ui-logic-params.d.ts.map +0 -1
  288. /package/out/interface/{common/i-ui-logic-params/i-ui-logic-params.js → api/common/i-api-de-logic-params.js} +0 -0
@@ -44,13 +44,13 @@ export async function getControlProvider(
44
44
 
45
45
  // 找自定义注册的适配器
46
46
  const registerKey = CustomRegister.getRegisterKey(CONTROL_PROVIDER_PREFIX, {
47
- controlModel: model,
47
+ mainModel: model,
48
48
  });
49
49
  provider = getProvider(registerKey);
50
50
 
51
51
  if (!provider) {
52
52
  ibiz.log.debug(
53
- ibiz.i18n.t('runtime.register.helper.customRegistration', {
53
+ ibiz.i18n.t('runtime.register.helper.ctrlCustomRegistration', {
54
54
  registerKey,
55
55
  }),
56
56
  );
@@ -0,0 +1,76 @@
1
+ import { RuntimeError } from '@ibiz-template/core';
2
+ import { IAppDELogic, IDELogicNode, IAppDataEntity } from '@ibiz/model-core';
3
+ import { IDELogicNodeProvider } from '../../interface';
4
+ import { CustomRegister } from '../custom-register';
5
+
6
+ /** 实体逻辑节点适配器前缀 */
7
+ export const DELOGICNODE_PROVIDER_PREFIX = 'DE_LOGIC_NODE';
8
+
9
+ /**
10
+ * 注册实体逻辑节点适配器
11
+ *
12
+ * @author lxm
13
+ * @date 2023-05-06 09:14:16
14
+ * @export
15
+ * @param {string} key
16
+ * @param {() => IDELogicNodeProvider} callback 生成实体行为适配器的回调
17
+ */
18
+ export function registerDELogicNodeProvider(
19
+ key: string,
20
+ callback: (node: IDELogicNode) => IDELogicNodeProvider,
21
+ ): void {
22
+ ibiz.register.register(`${DELOGICNODE_PROVIDER_PREFIX}_${key}`, callback);
23
+ }
24
+
25
+ function getProvider(
26
+ key: string,
27
+ logic: IDELogicNode,
28
+ ): IDELogicNodeProvider | undefined {
29
+ return ibiz.register.get(
30
+ `${DELOGICNODE_PROVIDER_PREFIX}_${key}`,
31
+ logic,
32
+ ) as IDELogicNodeProvider;
33
+ }
34
+
35
+ /**
36
+ * @description 获取实体逻辑节点适配器
37
+ * @export
38
+ * @param {IDELogicNode} model
39
+ * @param {IAppDELogic} logic
40
+ * @param {IAppDataEntity} entity
41
+ * @returns {*} {Promise<IDELogicNodeProvider>}
42
+ */
43
+ export async function getDELogicNodeProvider(
44
+ model: IDELogicNode,
45
+ logic: IAppDELogic,
46
+ entity: IAppDataEntity,
47
+ ): Promise<IDELogicNodeProvider> {
48
+ let provider: IDELogicNodeProvider | undefined;
49
+ const { logicNodeType } = model as Required<IDELogicNode>;
50
+
51
+ // 自定义注册
52
+ const registerKey = CustomRegister.getRegisterKey(
53
+ DELOGICNODE_PROVIDER_PREFIX,
54
+ {
55
+ mainModel: model,
56
+ logic,
57
+ entity,
58
+ },
59
+ );
60
+ provider = getProvider(registerKey, model);
61
+ if (provider) return provider;
62
+ ibiz.log.debug(
63
+ ibiz.i18n.t('runtime.register.helper.uiLogicNodeCustomRegistration', {
64
+ registerKey,
65
+ }),
66
+ );
67
+
68
+ // 找节点类型适配器
69
+ provider = getProvider(logicNodeType, model);
70
+ if (provider) return provider;
71
+ throw new RuntimeError(
72
+ ibiz.i18n.t('runtime.register.helper.frontEndTypeNode', {
73
+ logicNodeType,
74
+ }),
75
+ );
76
+ }
@@ -0,0 +1,63 @@
1
+ import { IAppDELogic, IAppDataEntity } from '@ibiz/model-core';
2
+ import { RuntimeError } from '@ibiz-template/core';
3
+ import { IDELogicProvider } from '../../interface';
4
+ import { CustomRegister } from '../custom-register';
5
+
6
+ /** 实体逻辑适配器前缀 */
7
+ export const DELOGIC_PROVIDER_PREFIX = 'DELOGIC';
8
+
9
+ /**
10
+ * @description 注册实体逻辑适配器
11
+ * @export
12
+ * @param {string} key
13
+ * @param {Callback} callback
14
+ */
15
+ export function registerDELogicProvider(
16
+ key: string,
17
+ callback: (deLogic: IAppDELogic, entity: IAppDataEntity) => IDELogicProvider,
18
+ ): void {
19
+ ibiz.register.register(`${DELOGIC_PROVIDER_PREFIX}_${key}`, callback);
20
+ }
21
+
22
+ function getProvider(
23
+ key: string,
24
+ logic: IAppDELogic,
25
+ entity: IAppDataEntity,
26
+ ): IDELogicProvider | undefined {
27
+ return ibiz.register.get(
28
+ `${DELOGIC_PROVIDER_PREFIX}_${key}`,
29
+ logic,
30
+ entity,
31
+ ) as IDELogicProvider;
32
+ }
33
+
34
+ /**
35
+ * @description 获取实体逻辑适配器
36
+ * @export
37
+ * @param {IAppDELogic} model
38
+ * @param {IAppDataEntity} entity
39
+ * @returns {*} {IDELogicProvider}
40
+ */
41
+ export function getDELogicProvider(
42
+ mainModel: IAppDELogic,
43
+ entity: IAppDataEntity,
44
+ ): IDELogicProvider {
45
+ // 找自定义注册的适配器
46
+ const registerKey = CustomRegister.getRegisterKey(DELOGIC_PROVIDER_PREFIX, {
47
+ mainModel,
48
+ entity,
49
+ });
50
+ let provider = getProvider(registerKey, mainModel, entity);
51
+ if (provider) return provider;
52
+ ibiz.log.debug(
53
+ ibiz.i18n.t('runtime.register.helper.deLogicCustomRegistration', {
54
+ registerKey,
55
+ }),
56
+ );
57
+
58
+ // 找默认适配器
59
+ provider = getProvider('DEFAULT', mainModel, entity);
60
+ if (!provider)
61
+ throw new RuntimeError(ibiz.i18n.t('runtime.register.helper.deLogic'));
62
+ return provider;
63
+ }
@@ -38,18 +38,18 @@ function getProvider(key: string): IDEMethodProvider | undefined {
38
38
  */
39
39
  export async function getDEMethodProvider(
40
40
  model: IAppDEMethod,
41
- entityModel?: IAppDataEntity,
41
+ entity?: IAppDataEntity,
42
42
  ): Promise<IDEMethodProvider> {
43
43
  let provider: IDEMethodProvider | undefined;
44
44
  const { methodType, sysPFPluginId, appId } = model as Required<IAppDEMethod>;
45
45
  const registerKey = CustomRegister.getRegisterKey(DEMETHOD_PROVIDER_PREFIX, {
46
- deMethodModel: model,
47
- entityModel,
46
+ mainModel: model,
47
+ entity,
48
48
  });
49
49
  provider = getProvider(registerKey);
50
50
  if (!provider) {
51
51
  ibiz.log.debug(
52
- ibiz.i18n.t('runtime.register.helper.customRegistration', {
52
+ ibiz.i18n.t('runtime.register.helper.deMethodCustomRegistration', {
53
53
  registerKey,
54
54
  }),
55
55
  );
@@ -1,4 +1,4 @@
1
- import { IControl, IControlItem, IEditor } from '@ibiz/model-core';
1
+ import { IControl, IEditor } from '@ibiz/model-core';
2
2
  import { IEditorProvider } from '../../interface';
3
3
  import { getPluginRegisterKey } from './common-register';
4
4
  import { CustomRegister } from '../custom-register';
@@ -31,13 +31,11 @@ function getProvider(key: string): IEditorProvider | undefined {
31
31
  * @description 获取编辑器适配器
32
32
  * @export
33
33
  * @param {IEditor} model 编辑器模型
34
- * @param {IControlItem} [ctrlItem] 控件项模型
35
34
  * @param {IControl} [ctrl] 部件模型
36
35
  * @returns {*} {(Promise<IEditorProvider | undefined>)}
37
36
  */
38
37
  export async function getEditorProvider(
39
38
  model: IEditor,
40
- ctrlItem?: IControlItem,
41
39
  ctrl?: IControl,
42
40
  ): Promise<IEditorProvider | undefined> {
43
41
  let provider: IEditorProvider | undefined;
@@ -46,14 +44,13 @@ export async function getEditorProvider(
46
44
 
47
45
  // 找自定义的编辑器适配器
48
46
  const registerKey = CustomRegister.getRegisterKey(EDITOR_PROVIDER_PREFIX, {
49
- controlItemModel: ctrlItem,
50
- controlModel: ctrl,
51
- editorModel: model,
47
+ mainModel: model,
48
+ control: ctrl,
52
49
  });
53
50
  provider = getProvider(registerKey);
54
51
  if (!provider) {
55
52
  ibiz.log.debug(
56
- ibiz.i18n.t('runtime.register.helper.customRegistration', {
53
+ ibiz.i18n.t('runtime.register.helper.editorCustomRegistration', {
57
54
  registerKey,
58
55
  }),
59
56
  );
@@ -46,14 +46,14 @@ export async function getFormDetailProvider(
46
46
  const registerKey = CustomRegister.getRegisterKey(
47
47
  FORMDETAIL_PROVIDER_PREFIX,
48
48
  {
49
- controlItemModel: model,
50
- controlModel: formModel,
49
+ mainModel: model,
50
+ control: formModel,
51
51
  },
52
52
  );
53
53
  provider = getProvider(registerKey);
54
54
  if (!provider) {
55
55
  ibiz.log.debug(
56
- ibiz.i18n.t('runtime.register.helper.customRegistration', {
56
+ ibiz.i18n.t('runtime.register.helper.formDetailCustomRegistration', {
57
57
  registerKey,
58
58
  }),
59
59
  );
@@ -37,7 +37,7 @@ function getProvider(key: string): IGridColumnProvider | undefined {
37
37
  */
38
38
  export async function getGridColumnProvider(
39
39
  model: IDEGridColumn,
40
- gridModel: IDEGrid,
40
+ grid: IDEGrid,
41
41
  ): Promise<IGridColumnProvider | undefined> {
42
42
  let provider: IGridColumnProvider | undefined;
43
43
  const { columnType, enableRowEdit, sysPFPluginId, appId } =
@@ -47,14 +47,14 @@ export async function getGridColumnProvider(
47
47
  const registerKey = CustomRegister.getRegisterKey(
48
48
  GRIDCOLUMN_PROVIDER_PREFIX,
49
49
  {
50
- controlItemModel: model,
51
- controlModel: gridModel,
50
+ mainModel: model,
51
+ control: grid,
52
52
  },
53
53
  );
54
54
  provider = getProvider(registerKey);
55
55
  if (!provider) {
56
56
  ibiz.log.debug(
57
- ibiz.i18n.t('runtime.register.helper.customRegistration', {
57
+ ibiz.i18n.t('runtime.register.helper.gridColumnCustomRegistration', {
58
58
  registerKey,
59
59
  }),
60
60
  );
@@ -98,12 +98,12 @@ export async function getGridColumnProvider(
98
98
  *
99
99
  * @export
100
100
  * @param {IDEGridColumn} model
101
- * @param {IDEGrid} gridModel
101
+ * @param {IDEGrid} grid
102
102
  * @return {*} {(Promise<IGridColumnProvider | undefined>)}
103
103
  */
104
104
  export async function getAutoGridColumnProvider(
105
105
  model: IDEGridColumn,
106
- gridModel: IDEGrid,
106
+ grid: IDEGrid,
107
107
  ): Promise<IGridColumnProvider | undefined> {
108
108
  let provider: IGridColumnProvider | undefined;
109
109
  const { columnType, enableRowEdit, sysPFPluginId, appId } =
@@ -113,14 +113,14 @@ export async function getAutoGridColumnProvider(
113
113
  const registerKey = CustomRegister.getRegisterKey(
114
114
  GRIDCOLUMN_PROVIDER_PREFIX,
115
115
  {
116
- controlItemModel: model,
117
- controlModel: gridModel,
116
+ mainModel: model,
117
+ control: grid,
118
118
  },
119
119
  );
120
120
  provider = getProvider(registerKey);
121
121
  if (!provider) {
122
122
  ibiz.log.debug(
123
- ibiz.i18n.t('runtime.register.helper.customRegistration', {
123
+ ibiz.i18n.t('runtime.register.helper.gridColumnCustomRegistration', {
124
124
  registerKey,
125
125
  }),
126
126
  );
@@ -18,3 +18,6 @@ export * from './error-view-register';
18
18
  export * from './toolbar-item-register';
19
19
  export * from './ac-item-register';
20
20
  export * from './app-func-block-register';
21
+ export * from './ui-logic-register';
22
+ export * from './de-logic-register';
23
+ export * from './de-logic-node-register';
@@ -56,14 +56,14 @@ export async function getPanelItemProvider(
56
56
 
57
57
  // 找自定义注册的适配器
58
58
  const registerKey = CustomRegister.getRegisterKey(PANELITEM_PROVIDER_PREFIX, {
59
- controlItemModel: model,
60
- controlModel: panelModel,
61
- viewModel,
59
+ mainModel: model,
60
+ view: viewModel,
61
+ control: panelModel,
62
62
  });
63
63
  provider = getProvider(registerKey);
64
64
  if (!provider) {
65
65
  ibiz.log.debug(
66
- ibiz.i18n.t('runtime.register.helper.customRegistration', {
66
+ ibiz.i18n.t('runtime.register.helper.panelItemCustomRegistration', {
67
67
  registerKey,
68
68
  }),
69
69
  );
@@ -1,6 +1,7 @@
1
1
  import { IDBPortletPart } from '@ibiz/model-core';
2
2
  import { IPortletProvider } from '../../interface';
3
3
  import { getPluginRegisterKey } from './common-register';
4
+ import { CustomRegister } from '../custom-register';
4
5
 
5
6
  /** 门户部件成员适配器前缀 */
6
7
  export const PORTLET_PROVIDER_PREFIX = 'PORTLET';
@@ -27,12 +28,10 @@ function getProvider(key: string): IPortletProvider | undefined {
27
28
  }
28
29
 
29
30
  /**
30
- * 获取门户部件成员适配器
31
- * @author lxm
32
- * @date 2023-05-06 09:29:23
31
+ * @description 获取门户部件成员适配器
33
32
  * @export
34
- * @param {IAppView} model
35
- * @return {*} {Promise<IPortletProvider>}
33
+ * @param {IDBPortletPart} model
34
+ * @returns {*} {(Promise<IPortletProvider | undefined>)}
36
35
  */
37
36
  export async function getPortletProvider(
38
37
  model: IDBPortletPart,
@@ -40,33 +39,35 @@ export async function getPortletProvider(
40
39
  let provider: IPortletProvider | undefined;
41
40
  const { portletType, sysPFPluginId, appId } =
42
41
  model as Required<IDBPortletPart>;
43
-
42
+ const registerKey = CustomRegister.getRegisterKey(PORTLET_PROVIDER_PREFIX, {
43
+ mainModel: model,
44
+ });
45
+ provider = getProvider(registerKey);
46
+ if (provider) return provider;
47
+ ibiz.log.debug(
48
+ ibiz.i18n.t('runtime.register.helper.portalCustomRegistration', {
49
+ registerKey,
50
+ }),
51
+ );
44
52
  // 找插件适配器
45
53
  if (sysPFPluginId) {
46
54
  const pluginKey = await getPluginRegisterKey(sysPFPluginId, appId);
47
- if (pluginKey) {
48
- provider = getProvider(pluginKey);
49
- }
50
- if (!provider) {
51
- ibiz.log.warn(
52
- ibiz.i18n.t('runtime.register.helper.portalWidgetPlugin', {
53
- pluginKey,
54
- }),
55
- );
56
- } else {
57
- return provider;
58
- }
55
+ if (pluginKey) provider = getProvider(pluginKey);
56
+ if (provider) return provider;
57
+ ibiz.log.warn(
58
+ ibiz.i18n.t('runtime.register.helper.portalWidgetPlugin', {
59
+ pluginKey,
60
+ }),
61
+ );
59
62
  }
60
63
 
61
64
  // 找门户部件成员类型
62
65
  provider = getProvider(portletType);
63
- if (!provider) {
66
+ if (!provider)
64
67
  ibiz.log.warn(
65
68
  ibiz.i18n.t('runtime.register.helper.portalWidgetMemberType', {
66
69
  portletType,
67
70
  }),
68
71
  );
69
- } else {
70
- return provider;
71
- }
72
+ return provider;
72
73
  }
@@ -1,6 +1,7 @@
1
- import { IDEToolbarItem } from '@ibiz/model-core';
1
+ import { IDEToolbar, IDEToolbarItem } from '@ibiz/model-core';
2
2
  import { getPluginRegisterKey } from './common-register';
3
3
  import { IToolbarItemProvider } from '../../interface';
4
+ import { CustomRegister } from '../custom-register';
4
5
 
5
6
  /** 工具栏项适配器前缀 */
6
7
  export const TOOLBAR_ITEM_PROVIDER_PREFIX = 'TOOLBAR_ITEM';
@@ -36,36 +37,48 @@ function getProvider(key: string): IToolbarItemProvider | undefined {
36
37
  }
37
38
 
38
39
  /**
39
- * 获取工具栏项适配器
40
- *
41
- * @author zhanghengfeng
42
- * @date 2024-05-15 18:05:47
40
+ * @description 获取工具栏项适配器
43
41
  * @export
44
42
  * @param {IDEToolbarItem} model
45
- * @return {*} {(Promise<IToolbarItemProvider | undefined>)}
43
+ * @param {IDEToolbar} toolbarModel
44
+ * @returns {*} {(Promise<IToolbarItemProvider | undefined>)}
46
45
  */
47
46
  export async function getToolbarItemProvider(
48
47
  model: IDEToolbarItem,
48
+ toolbarModel: IDEToolbar,
49
49
  ): Promise<IToolbarItemProvider | undefined> {
50
50
  let provider: IToolbarItemProvider | undefined;
51
- const { sysPFPluginId, appId } = model;
51
+ const { sysPFPluginId, appId, itemType } = model as Required<IDEToolbarItem>;
52
+
53
+ // 找自定义注册的适配器
54
+ const registerKey = CustomRegister.getRegisterKey(
55
+ TOOLBAR_ITEM_PROVIDER_PREFIX,
56
+ {
57
+ mainModel: model,
58
+ control: toolbarModel,
59
+ },
60
+ );
61
+ provider = getProvider(registerKey);
62
+ if (provider) return provider;
63
+ ibiz.log.debug(
64
+ ibiz.i18n.t('runtime.register.helper.toolbarItemCustomRegistration', {
65
+ registerKey,
66
+ }),
67
+ );
52
68
 
53
69
  // 找插件适配器
54
70
  if (sysPFPluginId) {
55
71
  const pluginKey = await getPluginRegisterKey(sysPFPluginId, appId);
56
- if (pluginKey) {
57
- provider = getProvider(pluginKey);
58
- }
59
- if (!provider) {
60
- ibiz.log.warn(
61
- ibiz.i18n.t('runtime.register.helper.toolbarItem', {
62
- pluginKey,
63
- }),
64
- );
65
- } else {
66
- return provider;
67
- }
72
+ if (pluginKey) provider = getProvider(pluginKey);
73
+ if (provider) return provider;
74
+ ibiz.log.warn(
75
+ ibiz.i18n.t('runtime.register.helper.toolbarItem', {
76
+ pluginKey,
77
+ }),
78
+ );
68
79
  }
69
80
 
81
+ // 找工具栏项类型
82
+ provider = getProvider(itemType);
70
83
  return provider;
71
84
  }
@@ -44,12 +44,12 @@ export async function getUIActionProvider(
44
44
  model as Required<IAppUIAction>;
45
45
  // 找自定义注册的适配器
46
46
  const registerKey = CustomRegister.getRegisterKey(UIACTION_PROVIDER_PREFIX, {
47
- uiActionModel: model,
47
+ mainModel: model,
48
48
  });
49
49
  provider = getProvider(registerKey);
50
50
  if (!provider) {
51
51
  ibiz.log.debug(
52
- ibiz.i18n.t('runtime.register.helper.customRegistration', {
52
+ ibiz.i18n.t('runtime.register.helper.uiactionCustomRegistration', {
53
53
  registerKey,
54
54
  }),
55
55
  );
@@ -1,10 +1,16 @@
1
- import { IAppUIAction, IDEUIPFPluginLogic } from '@ibiz/model-core';
1
+ import {
2
+ IDEUILogic,
3
+ IDEUILogicNode,
4
+ IAppDataEntity,
5
+ IDEUIPFPluginLogic,
6
+ } from '@ibiz/model-core';
2
7
  import { RuntimeError } from '@ibiz-template/core';
3
8
  import { getPluginRegisterKey } from './common-register';
4
9
  import { IUILogicNodeProvider } from '../../interface';
10
+ import { CustomRegister } from '../custom-register';
5
11
 
6
12
  /** 界面逻辑节点适配器前缀 */
7
- export const UILOGINNODE_PROVIDER_PREFIX = 'UI_LOGIN_NODE';
13
+ export const UILOGICNODE_PROVIDER_PREFIX = 'UI_LOGIC_NODE';
8
14
 
9
15
  /**
10
16
  * 注册界面逻辑节点适配器
@@ -17,38 +23,86 @@ export const UILOGINNODE_PROVIDER_PREFIX = 'UI_LOGIN_NODE';
17
23
  */
18
24
  export function registerUILogicNodeProvider(
19
25
  key: string,
20
- callback: () => IUILogicNodeProvider,
26
+ callback: (node: IDEUILogicNode) => IUILogicNodeProvider,
21
27
  ): void {
22
- ibiz.register.register(`${UILOGINNODE_PROVIDER_PREFIX}_${key}`, callback);
28
+ ibiz.register.register(`${UILOGICNODE_PROVIDER_PREFIX}_${key}`, callback);
29
+ }
30
+
31
+ function getProvider(
32
+ key: string,
33
+ logic: IDEUILogicNode,
34
+ ): IUILogicNodeProvider | undefined {
35
+ return ibiz.register.get(
36
+ `${UILOGICNODE_PROVIDER_PREFIX}_${key}`,
37
+ logic,
38
+ ) as IUILogicNodeProvider;
23
39
  }
24
40
 
25
41
  /**
26
- * 获取界面逻辑节点适配器
27
- *
28
- * @author chitanda
29
- * @date 2023-11-01 17:11:43
42
+ * @description 获取界面逻辑节点插件适配器
30
43
  * @export
31
44
  * @param {IDEUIPFPluginLogic} model
32
- * @return {*} {Promise<IUILogicNodeProvider>}
45
+ * @returns {*} {(Promise<IUILogicNodeProvider | undefined>)}
33
46
  */
34
- export async function getUILogicNodeProvider(
47
+ export async function getUILogicNodePluginProvider(
35
48
  model: IDEUIPFPluginLogic,
36
49
  ): Promise<IUILogicNodeProvider | undefined> {
37
50
  let provider: IUILogicNodeProvider | undefined;
38
- const { sysPFPluginId, appId } = model as Required<IAppUIAction>;
39
-
40
- const pluginKey = await getPluginRegisterKey(sysPFPluginId, appId);
41
- if (pluginKey) {
42
- provider = ibiz.register.get(
43
- `${UILOGINNODE_PROVIDER_PREFIX}_${pluginKey}`,
44
- ) as IUILogicNodeProvider;
45
- if (provider) {
46
- return provider;
47
- }
48
- throw new RuntimeError(
49
- ibiz.i18n.t('runtime.register.helper.frontEndPluginNode', {
50
- pluginKey,
51
- }),
52
- );
51
+ const { sysPFPluginId, appId } = model;
52
+ if (sysPFPluginId) {
53
+ const pluginKey = await getPluginRegisterKey(sysPFPluginId, appId);
54
+ if (pluginKey) provider = getProvider(pluginKey, model);
55
+ if (!provider)
56
+ ibiz.log.warn(
57
+ ibiz.i18n.t('runtime.register.helper.frontEndPluginNode', {
58
+ pluginKey,
59
+ }),
60
+ );
53
61
  }
62
+ return provider;
63
+ }
64
+
65
+ /**
66
+ * @description 获取界面逻辑节点适配器
67
+ * @export
68
+ * @param {IDEUILogicNode} model
69
+ * @returns {*} {(Promise<IUILogicNodeProvider>)}
70
+ */
71
+ export async function getUILogicNodeProvider(
72
+ model: IDEUILogicNode,
73
+ logic: IDEUILogic,
74
+ entity: IAppDataEntity,
75
+ ): Promise<IUILogicNodeProvider> {
76
+ let provider: IUILogicNodeProvider | undefined;
77
+ const { logicNodeType } = model as Required<IDEUIPFPluginLogic>;
78
+
79
+ // 自定义注册
80
+ const registerKey = CustomRegister.getRegisterKey(
81
+ UILOGICNODE_PROVIDER_PREFIX,
82
+ {
83
+ mainModel: model,
84
+ logic,
85
+ entity,
86
+ },
87
+ );
88
+ provider = getProvider(registerKey, model);
89
+ if (provider) return provider;
90
+ ibiz.log.debug(
91
+ ibiz.i18n.t('runtime.register.helper.uiLogicNodeCustomRegistration', {
92
+ registerKey,
93
+ }),
94
+ );
95
+
96
+ // 找插件适配器
97
+ provider = await getUILogicNodePluginProvider(model);
98
+ if (provider) return provider;
99
+
100
+ // 找节点类型适配器
101
+ provider = getProvider(logicNodeType, model);
102
+ if (provider) return provider;
103
+ throw new RuntimeError(
104
+ ibiz.i18n.t('runtime.register.helper.frontEndTypeNode', {
105
+ logicNodeType,
106
+ }),
107
+ );
54
108
  }
@@ -0,0 +1,63 @@
1
+ import { IAppDataEntity, IDEUILogic } from '@ibiz/model-core';
2
+ import { RuntimeError } from '@ibiz-template/core';
3
+ import { IUILogicProvider } from '../../interface';
4
+ import { CustomRegister } from '../custom-register';
5
+
6
+ /** 界面逻辑适配器前缀 */
7
+ export const UILOGIC_PROVIDER_PREFIX = 'UILOGIC';
8
+
9
+ /**
10
+ * @description 注册界面逻辑适配器
11
+ * @export
12
+ * @param {string} key
13
+ * @param {Callback} callback
14
+ */
15
+ export function registerUILogicProvider(
16
+ key: string,
17
+ callback: (uiLogic: IDEUILogic, entity: IAppDataEntity) => IUILogicProvider,
18
+ ): void {
19
+ ibiz.register.register(`${UILOGIC_PROVIDER_PREFIX}_${key}`, callback);
20
+ }
21
+
22
+ function getProvider(
23
+ key: string,
24
+ uiLogic: IDEUILogic,
25
+ entity: IAppDataEntity,
26
+ ): IUILogicProvider | undefined {
27
+ return ibiz.register.get(
28
+ `${UILOGIC_PROVIDER_PREFIX}_${key}`,
29
+ uiLogic,
30
+ entity,
31
+ ) as IUILogicProvider;
32
+ }
33
+
34
+ /**
35
+ * @description 获取界面逻辑适配器
36
+ * @export
37
+ * @param {IDEUILogic} model
38
+ * @param {IAppDataEntity} entity
39
+ * @returns {*} {IUILogicProvider}
40
+ */
41
+ export function getUILogicProvider(
42
+ mainModel: IDEUILogic,
43
+ entity: IAppDataEntity,
44
+ ): IUILogicProvider {
45
+ // 找自定义注册的适配器
46
+ const registerKey = CustomRegister.getRegisterKey(UILOGIC_PROVIDER_PREFIX, {
47
+ mainModel,
48
+ entity,
49
+ });
50
+ let provider = getProvider(registerKey, mainModel, entity);
51
+ if (provider) return provider;
52
+ ibiz.log.debug(
53
+ ibiz.i18n.t('runtime.register.helper.uiLogicCustomRegistration', {
54
+ registerKey,
55
+ }),
56
+ );
57
+
58
+ // 找默认适配器
59
+ provider = getProvider('DEFAULT', mainModel, entity);
60
+ if (!provider)
61
+ throw new RuntimeError(ibiz.i18n.t('runtime.register.helper.uiLogic'));
62
+ return provider;
63
+ }