@ibiz-template/runtime 0.7.41-alpha.71 → 0.7.41-alpha.73

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 (73) hide show
  1. package/dist/index.esm.js +352 -137
  2. package/dist/index.system.min.js +1 -1
  3. package/out/controller/control/calendar/calendar.controller.js +1 -1
  4. package/out/controller/control/data-view/data-view.controller.d.ts +7 -0
  5. package/out/controller/control/data-view/data-view.controller.d.ts.map +1 -1
  6. package/out/controller/control/data-view/data-view.controller.js +24 -1
  7. package/out/controller/control/exp-bar/calendar-exp-bar.controller.d.ts +1 -1
  8. package/out/controller/control/exp-bar/calendar-exp-bar.controller.d.ts.map +1 -1
  9. package/out/controller/control/exp-bar/calendar-exp-bar.controller.js +6 -5
  10. package/out/controller/control/exp-bar/chart-exp-bar.controller.d.ts.map +1 -1
  11. package/out/controller/control/exp-bar/chart-exp-bar.controller.js +4 -0
  12. package/out/controller/control/exp-bar/exp-bar.controller.d.ts +1 -1
  13. package/out/controller/control/exp-bar/exp-bar.controller.d.ts.map +1 -1
  14. package/out/controller/control/exp-bar/exp-bar.controller.js +20 -11
  15. package/out/controller/control/exp-bar/tree-exp-bar.controller.d.ts +1 -1
  16. package/out/controller/control/exp-bar/tree-exp-bar.controller.d.ts.map +1 -1
  17. package/out/controller/control/exp-bar/tree-exp-bar.controller.js +13 -10
  18. package/out/controller/control/form/form-detail/form-button-list/form-button-list.controller.d.ts +7 -0
  19. package/out/controller/control/form/form-detail/form-button-list/form-button-list.controller.d.ts.map +1 -1
  20. package/out/controller/control/form/form-detail/form-button-list/form-button-list.controller.js +14 -2
  21. package/out/controller/control/form/form-detail/form-detail/form-detail.controller.d.ts +7 -0
  22. package/out/controller/control/form/form-detail/form-detail/form-detail.controller.d.ts.map +1 -1
  23. package/out/controller/control/form/form-detail/form-detail/form-detail.controller.js +8 -0
  24. package/out/controller/control/form/form-detail/form-group-panel/form-group-panel.controller.d.ts +7 -0
  25. package/out/controller/control/form/form-detail/form-group-panel/form-group-panel.controller.d.ts.map +1 -1
  26. package/out/controller/control/form/form-detail/form-group-panel/form-group-panel.controller.js +13 -2
  27. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.d.ts +7 -0
  28. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.d.ts.map +1 -1
  29. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.js +13 -2
  30. package/out/controller/control/list/list.controller.d.ts +6 -0
  31. package/out/controller/control/list/list.controller.d.ts.map +1 -1
  32. package/out/controller/control/list/list.controller.js +24 -1
  33. package/out/controller/control/md-ctrl/md-ctrl.controller.d.ts +6 -0
  34. package/out/controller/control/md-ctrl/md-ctrl.controller.d.ts.map +1 -1
  35. package/out/controller/control/md-ctrl/md-ctrl.controller.js +17 -1
  36. package/out/controller/control/toolbar/toolbar.controller.d.ts.map +1 -1
  37. package/out/controller/control/toolbar/toolbar.controller.js +10 -13
  38. package/out/controller/control/tree/tree.controller.d.ts +7 -0
  39. package/out/controller/control/tree/tree.controller.d.ts.map +1 -1
  40. package/out/controller/control/tree/tree.controller.js +29 -1
  41. package/out/controller/control/tree/tree.service.d.ts.map +1 -1
  42. package/out/controller/control/tree/tree.service.js +7 -3
  43. package/out/controller/control/tree-grid-ex/tree-grid-ex.controller.d.ts +7 -0
  44. package/out/controller/control/tree-grid-ex/tree-grid-ex.controller.d.ts.map +1 -1
  45. package/out/controller/control/tree-grid-ex/tree-grid-ex.controller.js +26 -1
  46. package/out/interface/api/controller/control/i-api-edit-form.controller.d.ts +4 -0
  47. package/out/interface/api/controller/control/i-api-edit-form.controller.d.ts.map +1 -1
  48. package/out/interface/api/controller/control/i-api-exp-bar-control.controller.d.ts +2 -2
  49. package/out/interface/api/controller/control/i-api-exp-bar-control.controller.d.ts.map +1 -1
  50. package/out/interface/controller/controller/control/i-calendar-exp-bar.controller.d.ts +0 -7
  51. package/out/interface/controller/controller/control/i-calendar-exp-bar.controller.d.ts.map +1 -1
  52. package/out/interface/controller/controller/control/i-chart-exp-bar.controller.d.ts +0 -7
  53. package/out/interface/controller/controller/control/i-chart-exp-bar.controller.d.ts.map +1 -1
  54. package/out/interface/controller/controller/control/i-exp-bar-control.controller.d.ts +0 -7
  55. package/out/interface/controller/controller/control/i-exp-bar-control.controller.d.ts.map +1 -1
  56. package/out/interface/controller/controller/control/i-tree-exp-bar.controller.d.ts +0 -7
  57. package/out/interface/controller/controller/control/i-tree-exp-bar.controller.d.ts.map +1 -1
  58. package/out/interface/provider/i-mob-platform-provider.d.ts +18 -0
  59. package/out/interface/provider/i-mob-platform-provider.d.ts.map +1 -0
  60. package/out/interface/provider/i-mob-platform-provider.js +1 -0
  61. package/out/interface/provider/index.d.ts +1 -0
  62. package/out/interface/provider/index.d.ts.map +1 -1
  63. package/out/model/utils/util.d.ts.map +1 -1
  64. package/out/model/utils/util.js +5 -6
  65. package/out/service/vo/tree-node-data/tree-code-list-node-data.d.ts.map +1 -1
  66. package/out/service/vo/tree-node-data/tree-code-list-node-data.js +1 -1
  67. package/out/service/vo/tree-node-data/tree-data-set-node-data.d.ts +5 -0
  68. package/out/service/vo/tree-node-data/tree-data-set-node-data.d.ts.map +1 -1
  69. package/out/service/vo/tree-node-data/tree-data-set-node-data.js +10 -3
  70. package/out/service/vo/tree-node-data/tree-node-data.d.ts +5 -7
  71. package/out/service/vo/tree-node-data/tree-node-data.d.ts.map +1 -1
  72. package/out/service/vo/tree-node-data/tree-node-data.js +10 -7
  73. package/package.json +2 -2
package/dist/index.esm.js CHANGED
@@ -20914,8 +20914,8 @@ async function calcDyUiactionGroup(refUIActionGroup, context, params) {
20914
20914
  async function calcUIActionDetails(uiactionGroupDetails, context, params) {
20915
20915
  const refActionDetails = [];
20916
20916
  uiactionGroupDetails.forEach((detail, index) => {
20917
- var _a3;
20918
- if (detail.detailType === "DEUIACTIONGROUP" && ((_a3 = detail.refUIActionGroup) == null ? void 0 : _a3.dynamicMode) === 1) {
20917
+ var _a3, _b2;
20918
+ if (detail.detailType === "DEUIACTIONGROUP" && ((_a3 = detail.refUIActionGroup) == null ? void 0 : _a3.dynamicMode) === 1 && !((_b2 = detail.refUIActionGroup) == null ? void 0 : _b2.uiactionGroupDetails)) {
20919
20919
  refActionDetails.push({ detail, index });
20920
20920
  }
20921
20921
  });
@@ -20960,7 +20960,7 @@ async function calcAllUIActionDetails(details, context, params) {
20960
20960
  return actions;
20961
20961
  }
20962
20962
  async function calcUIActionGroup(uiactionGroup, context, params) {
20963
- if (uiactionGroup.dynamicMode === 1) {
20963
+ if (uiactionGroup.dynamicMode === 1 && !uiactionGroup.uiactionGroupDetails) {
20964
20964
  const uiactionGroupDetails = await calcDyUiactionGroup(
20965
20965
  uiactionGroup,
20966
20966
  context,
@@ -20988,12 +20988,11 @@ function getAllUIActionItems(details = []) {
20988
20988
  const addAction = (items) => {
20989
20989
  items.forEach((item) => {
20990
20990
  var _a3;
20991
+ actions.push(item);
20991
20992
  if (item.detailType === "DEUIACTIONGROUP") {
20992
20993
  const childrenDetails = (_a3 = item.refUIActionGroup) == null ? void 0 : _a3.uiactionGroupDetails;
20993
20994
  if (childrenDetails == null ? void 0 : childrenDetails.length)
20994
20995
  addAction(childrenDetails);
20995
- } else {
20996
- actions.push(item);
20997
20996
  }
20998
20997
  });
20999
20998
  };
@@ -25265,14 +25264,15 @@ var TreeNodeData = class {
25265
25264
  }
25266
25265
  /**
25267
25266
  * 计算节点图标
25268
- * @author lxm
25269
- * @date 2023-08-15 02:24:55
25270
- * @protected
25271
- * @param {IDETreeNode} model
25272
- * @return {*} {(IIcon | undefined)}
25267
+ * @param model
25268
+ * @param dataImage
25269
+ * @returns
25273
25270
  */
25274
- calcIcon(model) {
25275
- const { sysImage } = model;
25271
+ calcIcon(model, dataImage) {
25272
+ let { sysImage } = model;
25273
+ if (dataImage && (dataImage.cssClass || dataImage.imagePath || dataImage.rawContent)) {
25274
+ sysImage = dataImage;
25275
+ }
25276
25276
  const icon = {};
25277
25277
  if (sysImage) {
25278
25278
  if (sysImage.cssClass) {
@@ -25339,7 +25339,7 @@ var TreeCodeListNodeData = class extends TreeNodeData {
25339
25339
  }
25340
25340
  this.srfkey = this._value;
25341
25341
  this.srfmajortext = this._text;
25342
- this._icon = this.calcIcon(model);
25342
+ this._icon = this.calcIcon(model, data.sysImage);
25343
25343
  const getDeKey = (key) => {
25344
25344
  if (Object.prototype.hasOwnProperty.call(this._deData, key)) {
25345
25345
  return key;
@@ -25392,7 +25392,8 @@ var TreeDataSetNodeData = class _TreeDataSetNodeData extends TreeNodeData {
25392
25392
  const { data } = opts;
25393
25393
  this._deData = data;
25394
25394
  this._oldDeData = data.clone();
25395
- const selfId = "".concat(model.id, "@").concat(data.srfkey).toLowerCase();
25395
+ const { idAppDEFieldId } = model;
25396
+ const selfId = "".concat(model.id, "@").concat(data.srfkey || data[idAppDEFieldId]).toLowerCase();
25396
25397
  Object.defineProperty(this, "_id", {
25397
25398
  get() {
25398
25399
  return this._parent ? "".concat(this._parent._id, ":").concat(selfId) : selfId;
@@ -25434,8 +25435,6 @@ var TreeDataSetNodeData = class _TreeDataSetNodeData extends TreeNodeData {
25434
25435
  [deName]: data.srfkey
25435
25436
  });
25436
25437
  }
25437
- this.initIcon(model);
25438
- this.initTextHtml(model);
25439
25438
  if (model.leafFlagAppDEFieldId) {
25440
25439
  this._leaf = fieldValueToBoolean(data[model.leafFlagAppDEFieldId]);
25441
25440
  } else if (model.childCntAppDEFieldId) {
@@ -25541,6 +25540,14 @@ var TreeDataSetNodeData = class _TreeDataSetNodeData extends TreeNodeData {
25541
25540
  }
25542
25541
  });
25543
25542
  }
25543
+ /**
25544
+ * 初始化异步数据
25545
+ * @param model 节点模型
25546
+ */
25547
+ async initAsyncData(model) {
25548
+ await this.initIcon(model);
25549
+ await this.initTextHtml(model);
25550
+ }
25544
25551
  /**
25545
25552
  * 初始化节点图标
25546
25553
  * @author ljx
@@ -44264,9 +44271,9 @@ var ToolbarController = class extends ControlController {
44264
44271
  }
44265
44272
  }
44266
44273
  const groupItem = item;
44267
- if (groupItem.groupExtractMode && groupItem.uiactionGroup && groupItem.uiactionGroup.uiactionGroupDetails) {
44268
- const calcTask = calcUIActionDetails(
44269
- groupItem.uiactionGroup.uiactionGroupDetails,
44274
+ if (groupItem.groupExtractMode && groupItem.uiactionGroup) {
44275
+ const calcTask = calcUIActionGroup(
44276
+ groupItem.uiactionGroup,
44270
44277
  this.context,
44271
44278
  this.params
44272
44279
  );
@@ -44275,20 +44282,21 @@ var ToolbarController = class extends ControlController {
44275
44282
  },
44276
44283
  { childrenFields: ["detoolbarItems"] }
44277
44284
  );
44278
- const allActionDetails = await Promise.all(asyncTasks);
44279
- allActionDetails.forEach((details) => {
44280
- details.forEach((detail) => {
44281
- const actionid = detail.uiactionId;
44282
- if (actionid) {
44283
- const buttonState = new UIActionButtonState(
44284
- detail.id,
44285
- detail.appId,
44286
- actionid,
44287
- detail
44288
- );
44289
- this.state.buttonsState.addState(detail.id, buttonState);
44290
- }
44291
- });
44285
+ const allUIActionGroup = await Promise.all(asyncTasks);
44286
+ allUIActionGroup.forEach((uiactionGroup) => {
44287
+ if (uiactionGroup == null ? void 0 : uiactionGroup.uiactionGroupDetails) {
44288
+ getAllUIActionItems(uiactionGroup == null ? void 0 : uiactionGroup.uiactionGroupDetails).forEach(
44289
+ (detail) => {
44290
+ const buttonState = new UIActionButtonState(
44291
+ detail.id,
44292
+ detail.appId,
44293
+ detail.uiactionId,
44294
+ detail
44295
+ );
44296
+ this.state.buttonsState.addState(detail.id, buttonState);
44297
+ }
44298
+ );
44299
+ }
44292
44300
  });
44293
44301
  await this.initToolbarItemProviders();
44294
44302
  if (!this.state.manualCalcButtonState) {
@@ -44824,7 +44832,7 @@ var CalendarController = class extends MDControlController {
44824
44832
  */
44825
44833
  async afterLoad(args, items) {
44826
44834
  super.afterLoad(args, items);
44827
- this.sortItems(this.state.items);
44835
+ this.sortItems(this.state.items, this.groupTimeField);
44828
44836
  this.calcShowMode(this.state.items);
44829
44837
  await this.handleDataGroup();
44830
44838
  return items;
@@ -51866,6 +51874,35 @@ var DataViewControlController = class extends MDControlController {
51866
51874
  this.service = new DataViewControlService(this.model);
51867
51875
  await this.service.init(this.context);
51868
51876
  }
51877
+ /**
51878
+ * @description 初始化界面行为组
51879
+ * @protected
51880
+ * @returns {*} {Promise<void>}
51881
+ * @memberof DataViewControlController
51882
+ */
51883
+ async initUIActions() {
51884
+ var _a3;
51885
+ const asyncTasks = [];
51886
+ if (this.model.groupUIActionGroup) {
51887
+ const task = calcUIActionGroup(
51888
+ this.model.groupUIActionGroup,
51889
+ this.context,
51890
+ this.params
51891
+ );
51892
+ asyncTasks.push(task);
51893
+ }
51894
+ (_a3 = this.model.dedataViewItems) == null ? void 0 : _a3.forEach((item) => {
51895
+ if (item.itemType === "ACTIONITEM" && item.deuiactionGroup) {
51896
+ const task = calcUIActionGroup(
51897
+ item.deuiactionGroup,
51898
+ this.context,
51899
+ this.params
51900
+ );
51901
+ asyncTasks.push(task);
51902
+ }
51903
+ });
51904
+ await Promise.all(asyncTasks);
51905
+ }
51869
51906
  /**
51870
51907
  * 初始化分组右侧界面行为按钮的状态
51871
51908
  *
@@ -52610,16 +52647,8 @@ var DataViewControlController = class extends MDControlController {
52610
52647
  }
52611
52648
  };
52612
52649
 
52613
- // src/controller/control/exp-bar/calendar-exp-bar.controller.ts
52614
- import { RuntimeModelError as RuntimeModelError59 } from "@ibiz-template/core";
52615
-
52616
52650
  // src/controller/control/exp-bar/exp-bar.controller.ts
52617
- import {
52618
- IBizParams as IBizParams3,
52619
- IBizContext as IBizContext8,
52620
- RuntimeError as RuntimeError49,
52621
- RuntimeModelError as RuntimeModelError58
52622
- } from "@ibiz-template/core";
52651
+ import { IBizParams as IBizParams3, IBizContext as IBizContext8, RuntimeError as RuntimeError49 } from "@ibiz-template/core";
52623
52652
  var ExpBarControlController = class extends ControlController {
52624
52653
  constructor(model, context, params, ctx) {
52625
52654
  var _a3, _b2, _c;
@@ -52698,7 +52727,9 @@ var ExpBarControlController = class extends ControlController {
52698
52727
  * @return {*} {Promise<IData[]>}
52699
52728
  * @memberof ExpBarControlController
52700
52729
  */
52701
- load() {
52730
+ async load() {
52731
+ if (!this.xDataController)
52732
+ return [];
52702
52733
  return this.xDataController.load({ isInitialLoad: true });
52703
52734
  }
52704
52735
  /**
@@ -52712,14 +52743,12 @@ var ExpBarControlController = class extends ControlController {
52712
52743
  */
52713
52744
  get xDataController() {
52714
52745
  const controller = this.view.getController(this.model.xdataControlName);
52715
- if (!controller) {
52716
- throw new RuntimeModelError58(
52717
- this.model,
52746
+ if (!controller)
52747
+ ibiz.log.error(
52718
52748
  ibiz.i18n.t("runtime.controller.control.expBar.unableMore", {
52719
52749
  xdataControlName: this.model.xdataControlName
52720
52750
  })
52721
52751
  );
52722
- }
52723
52752
  return controller;
52724
52753
  }
52725
52754
  /**
@@ -52820,6 +52849,7 @@ var ExpBarControlController = class extends ControlController {
52820
52849
  * @memberof ExpBarControlController
52821
52850
  */
52822
52851
  async onMounted() {
52852
+ var _a3;
52823
52853
  super.onMounted();
52824
52854
  if (this.xDataController) {
52825
52855
  this.xDataController.evt.on("onActive", (event) => {
@@ -52833,7 +52863,7 @@ var ExpBarControlController = class extends ControlController {
52833
52863
  });
52834
52864
  }
52835
52865
  if (this.toolbarController) {
52836
- this.xDataController.evt.on("onSelectionChange", async (event) => {
52866
+ (_a3 = this.xDataController) == null ? void 0 : _a3.evt.on("onSelectionChange", async (event) => {
52837
52867
  this.toolbarController.calcButtonState(
52838
52868
  event.data[0],
52839
52869
  this.model.appDataEntityId,
@@ -52870,8 +52900,9 @@ var ExpBarControlController = class extends ControlController {
52870
52900
  * @protected
52871
52901
  */
52872
52902
  navBySrfnav() {
52873
- var _a3;
52874
- const selectItem = (_a3 = this.xDataController) == null ? void 0 : _a3.state.items.find(
52903
+ if (!this.xDataController)
52904
+ return;
52905
+ const selectItem = this.xDataController.state.items.find(
52875
52906
  (item) => item[this.navKeyName] === this.state.srfnav
52876
52907
  );
52877
52908
  const tempContext = this.context.clone();
@@ -52914,6 +52945,8 @@ var ExpBarControlController = class extends ControlController {
52914
52945
  * @protected
52915
52946
  */
52916
52947
  navByFirstItem() {
52948
+ if (!this.xDataController)
52949
+ return;
52917
52950
  const data = this.xDataController.state.items[0];
52918
52951
  if (!data)
52919
52952
  return this.clearNavigation();
@@ -52926,8 +52959,9 @@ var ExpBarControlController = class extends ControlController {
52926
52959
  * @memberof ExpBarControlController
52927
52960
  */
52928
52961
  clearNavigation() {
52962
+ var _a3;
52929
52963
  this.navStack = [];
52930
- this.xDataController.setSelection([]);
52964
+ (_a3 = this.xDataController) == null ? void 0 : _a3.setSelection([]);
52931
52965
  this.state.srfnav = "";
52932
52966
  this._evt.emit("onNavViewChange", {
52933
52967
  navViewMsg: {
@@ -52942,11 +52976,13 @@ var ExpBarControlController = class extends ControlController {
52942
52976
  * @memberof ExpBarControlController
52943
52977
  */
52944
52978
  navDataByStack() {
52979
+ if (!this.xDataController)
52980
+ return;
52945
52981
  const { items } = this.xDataController.state;
52946
52982
  const navData = this.navStack.map(
52947
52983
  (nav) => items.find((item) => nav[this.navKeyName] === item[this.navKeyName])
52948
52984
  ).find((item) => item !== void 0) || items[0];
52949
- if (navData) {
52985
+ if (navData && this.xDataController) {
52950
52986
  this.xDataController.setActive(navData);
52951
52987
  this.xDataController.setSelection([navData]);
52952
52988
  } else {
@@ -52977,6 +53013,7 @@ var ExpBarControlController = class extends ControlController {
52977
53013
  * @memberof ExpBarControlController
52978
53014
  */
52979
53015
  prepareParams(XDataModel, data, context, params) {
53016
+ var _a3;
52980
53017
  const {
52981
53018
  navDER,
52982
53019
  navFilter,
@@ -52999,7 +53036,7 @@ var ExpBarControlController = class extends ControlController {
52999
53036
  const { resultContext, resultParams } = calcNavParams(model, originParams);
53000
53037
  const tempContext = Object.assign(context.clone(), resultContext, {
53001
53038
  currentSrfNav: data[this.navKeyName],
53002
- srfnavctrlid: this.xDataController.ctrlId
53039
+ srfnavctrlid: (_a3 = this.xDataController) == null ? void 0 : _a3.ctrlId
53003
53040
  });
53004
53041
  this.state.srfnav = data[this.navKeyName];
53005
53042
  const tempParams = { ...resultParams };
@@ -53105,8 +53142,7 @@ var CalendarExpBarController = class extends ExpBarControlController {
53105
53142
  get xDataController() {
53106
53143
  const controller = this.view.getController(this.model.xdataControlName);
53107
53144
  if (!controller)
53108
- throw new RuntimeModelError59(
53109
- this.model,
53145
+ ibiz.log.error(
53110
53146
  ibiz.i18n.t("runtime.controller.control.expBar.unableMore", {
53111
53147
  xdataControlName: this.model.xdataControlName
53112
53148
  })
@@ -53114,8 +53150,9 @@ var CalendarExpBarController = class extends ExpBarControlController {
53114
53150
  return controller;
53115
53151
  }
53116
53152
  navBySrfnav() {
53117
- var _a3;
53118
- const selectItem = (_a3 = this.xDataController) == null ? void 0 : _a3.state.items.find(
53153
+ if (!this.xDataController)
53154
+ return;
53155
+ const selectItem = this.xDataController.state.items.find(
53119
53156
  (item) => item.navId === this.state.srfnav
53120
53157
  );
53121
53158
  super.navBySrfnav();
@@ -53131,6 +53168,8 @@ var CalendarExpBarController = class extends ExpBarControlController {
53131
53168
  */
53132
53169
  navDataByStack() {
53133
53170
  var _a3;
53171
+ if (!this.xDataController)
53172
+ return;
53134
53173
  const { controlParams, state, model } = this.xDataController;
53135
53174
  const calendarStyle = (_a3 = model.calendarStyle) == null ? void 0 : _a3.toLowerCase();
53136
53175
  const items = state.items.filter((item) => {
@@ -53190,7 +53229,7 @@ var CalendarExpBarController = class extends ExpBarControlController {
53190
53229
  };
53191
53230
 
53192
53231
  // src/controller/control/exp-bar/tree-exp-bar.controller.ts
53193
- import { RuntimeError as RuntimeError50, RuntimeModelError as RuntimeModelError60 } from "@ibiz-template/core";
53232
+ import { RuntimeError as RuntimeError50 } from "@ibiz-template/core";
53194
53233
  var TreeExpBarController = class extends ExpBarControlController {
53195
53234
  constructor() {
53196
53235
  super(...arguments);
@@ -53212,14 +53251,12 @@ var TreeExpBarController = class extends ExpBarControlController {
53212
53251
  }
53213
53252
  get xDataController() {
53214
53253
  const controller = this.view.getController(this.model.xdataControlName);
53215
- if (!controller) {
53216
- throw new RuntimeModelError60(
53217
- this.model,
53254
+ if (!controller)
53255
+ ibiz.log.error(
53218
53256
  ibiz.i18n.t("runtime.controller.control.expBar.unableMore", {
53219
53257
  xdataControlName: this.model.xdataControlName
53220
53258
  })
53221
53259
  );
53222
- }
53223
53260
  return controller;
53224
53261
  }
53225
53262
  /**
@@ -53227,12 +53264,11 @@ var TreeExpBarController = class extends ExpBarControlController {
53227
53264
  *
53228
53265
  */
53229
53266
  async onMounted() {
53267
+ var _a3;
53230
53268
  super.onMounted();
53231
- if (this.xDataController) {
53232
- this.xDataController.evt.on("onAfterRefreshParent", (_event) => {
53233
- this.navDataByStack();
53234
- });
53235
- }
53269
+ (_a3 = this.xDataController) == null ? void 0 : _a3.evt.on("onAfterRefreshParent", (_event) => {
53270
+ this.navDataByStack();
53271
+ });
53236
53272
  }
53237
53273
  /**
53238
53274
  * 获取指定节点模型
@@ -53303,6 +53339,8 @@ var TreeExpBarController = class extends ExpBarControlController {
53303
53339
  return navViewMsg;
53304
53340
  }
53305
53341
  navByFirstItem() {
53342
+ if (!this.xDataController)
53343
+ return;
53306
53344
  const data = this.xDataController.state.items.find((node) => {
53307
53345
  if (!this.xDataController.model.rootVisible && this.xDataController.state.rootNodes.includes(node)) {
53308
53346
  return false;
@@ -53323,6 +53361,8 @@ var TreeExpBarController = class extends ExpBarControlController {
53323
53361
  * @memberof TreeExpBarController
53324
53362
  */
53325
53363
  navDataByStack() {
53364
+ if (!this.xDataController)
53365
+ return;
53326
53366
  const { items } = this.xDataController.state;
53327
53367
  const preNav = this.navStack.find(
53328
53368
  (nav) => items.find((item) => nav[this.navKeyName] === item[this.navKeyName])
@@ -53383,9 +53423,10 @@ var TreeExpBarController = class extends ExpBarControlController {
53383
53423
  return expandedKeys;
53384
53424
  }
53385
53425
  async onRouterChange(info) {
53426
+ var _a3;
53386
53427
  if (this.state.srfnav !== info.srfnav) {
53387
53428
  const expandKeys = this.calcExpandKeys(info.srfnav);
53388
- await this.xDataController.expandNodeByKey(expandKeys);
53429
+ await ((_a3 = this.xDataController) == null ? void 0 : _a3.expandNodeByKey(expandKeys));
53389
53430
  }
53390
53431
  await super.onRouterChange(info);
53391
53432
  }
@@ -53434,6 +53475,8 @@ var ChartExpBarController = class extends ExpBarControlController {
53434
53475
  * @protected
53435
53476
  */
53436
53477
  navByFirstItem() {
53478
+ if (!this.xDataController)
53479
+ return;
53437
53480
  const data = this.getDefaultActiveData();
53438
53481
  if (!data)
53439
53482
  return this.clearNavigation();
@@ -53445,6 +53488,8 @@ var ChartExpBarController = class extends ExpBarControlController {
53445
53488
  * @memberof ChartExpBarController
53446
53489
  */
53447
53490
  navDataByStack() {
53491
+ if (!this.xDataController)
53492
+ return;
53448
53493
  const preNav = this.navStack.find((nav) => {
53449
53494
  return this.xDataController.generator.seriesGenerators.find(
53450
53495
  (generator) => generator.chartDataArr.find(
@@ -53543,7 +53588,7 @@ import { RuntimeError as RuntimeError52 } from "@ibiz-template/core";
53543
53588
 
53544
53589
  // src/controller/control/form/form/form.controller.ts
53545
53590
  import {
53546
- RuntimeModelError as RuntimeModelError61,
53591
+ RuntimeModelError as RuntimeModelError58,
53547
53592
  debounceAndAsyncMerge,
53548
53593
  recursiveIterate as recursiveIterate6,
53549
53594
  EntityError,
@@ -53813,7 +53858,7 @@ var FormController = class extends ControlController {
53813
53858
  return;
53814
53859
  }
53815
53860
  if (form.details[detail.id]) {
53816
- throw new RuntimeModelError61(
53861
+ throw new RuntimeModelError58(
53817
53862
  detail,
53818
53863
  ibiz.i18n.t(
53819
53864
  "runtime.controller.control.form.initializationException",
@@ -54958,6 +55003,7 @@ var FormDetailController = class {
54958
55003
  await this.onInit();
54959
55004
  }
54960
55005
  async onInit() {
55006
+ await this.initUIActions();
54961
55007
  this.state.showMoreMode = this.model.showMoreMode;
54962
55008
  const { layoutPos, sysCss, labelSysCss, capLanguageRes } = this.model;
54963
55009
  if (layoutPos) {
@@ -54980,6 +55026,14 @@ var FormDetailController = class {
54980
55026
  this.handleCounterChange = this.handleCounterChange.bind(this);
54981
55027
  this.initCounter();
54982
55028
  }
55029
+ /**
55030
+ * @description 初始化界面行为组
55031
+ * @protected
55032
+ * @returns {*} {Promise<void>}
55033
+ * @memberof FormDetailController
55034
+ */
55035
+ async initUIActions() {
55036
+ }
54983
55037
  /**
54984
55038
  * @description 初始化计数器
54985
55039
  * @protected
@@ -55859,7 +55913,7 @@ var FormGroupPanelController = class extends FormContainerController {
55859
55913
  return new FormGroupPanelState((_a3 = this.parent) == null ? void 0 : _a3.state);
55860
55914
  }
55861
55915
  async onInit() {
55862
- super.onInit();
55916
+ await super.onInit();
55863
55917
  this.state.collapse = !this.defaultExpansion;
55864
55918
  await this.initActionStates();
55865
55919
  }
@@ -55870,6 +55924,21 @@ var FormGroupPanelController = class extends FormContainerController {
55870
55924
  this.state.actionGroupState.update(this.form.context, deData);
55871
55925
  }
55872
55926
  }
55927
+ /**
55928
+ * @description 初始化界面行为组
55929
+ * @protected
55930
+ * @returns {*} {Promise<void>}
55931
+ * @memberof FormGroupPanelController
55932
+ */
55933
+ async initUIActions() {
55934
+ if (this.model.uiactionGroup) {
55935
+ await calcUIActionGroup(
55936
+ this.model.uiactionGroup,
55937
+ this.form.context,
55938
+ this.form.params
55939
+ );
55940
+ }
55941
+ }
55873
55942
  /**
55874
55943
  * 初始化标题右侧界面行为按钮的状态
55875
55944
  *
@@ -56561,12 +56630,27 @@ var FormMDCtrlController = class extends FormDetailController {
56561
56630
  * @memberof FormMDCtrlController
56562
56631
  */
56563
56632
  async onInit() {
56564
- super.onInit();
56633
+ await super.onInit();
56565
56634
  await this.initActionStates();
56566
56635
  this.form.evt.on("onBeforeSave", async () => {
56567
56636
  await this.save();
56568
56637
  });
56569
56638
  }
56639
+ /**
56640
+ * @description 初始化界面行为组
56641
+ * @protected
56642
+ * @returns {*} {Promise<void>}
56643
+ * @memberof FormMDCtrlController
56644
+ */
56645
+ async initUIActions() {
56646
+ if (this.model.uiactionGroup) {
56647
+ await calcUIActionGroup(
56648
+ this.model.uiactionGroup,
56649
+ this.form.context,
56650
+ this.form.params
56651
+ );
56652
+ }
56653
+ }
56570
56654
  /**
56571
56655
  * @description 操作列按钮状态控制
56572
56656
  * @returns {*} {Promise<void>}
@@ -56651,7 +56735,7 @@ var FormMDCtrlController = class extends FormDetailController {
56651
56735
  import {
56652
56736
  ModelError as ModelError25,
56653
56737
  mergeInLeft as mergeInLeft2,
56654
- RuntimeModelError as RuntimeModelError62
56738
+ RuntimeModelError as RuntimeModelError59
56655
56739
  } from "@ibiz-template/core";
56656
56740
  var FormMDCtrlMDController = class extends FormMDCtrlController {
56657
56741
  constructor() {
@@ -56690,7 +56774,7 @@ var FormMDCtrlMDController = class extends FormMDCtrlController {
56690
56774
  if (((_a3 = this.context) == null ? void 0 : _a3.srfrunmode) === "DESIGN") {
56691
56775
  return;
56692
56776
  }
56693
- throw new RuntimeModelError62(
56777
+ throw new RuntimeModelError59(
56694
56778
  this.model,
56695
56779
  ibiz.i18n.t("runtime.controller.control.form.unconfiguredWidgets")
56696
56780
  );
@@ -56821,7 +56905,7 @@ var FormMDCtrlMDController = class extends FormMDCtrlController {
56821
56905
  };
56822
56906
 
56823
56907
  // src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts
56824
- import { RuntimeError as RuntimeError53, RuntimeModelError as RuntimeModelError63 } from "@ibiz-template/core";
56908
+ import { RuntimeError as RuntimeError53, RuntimeModelError as RuntimeModelError60 } from "@ibiz-template/core";
56825
56909
  import { createUUID as createUUID16 } from "qx-util";
56826
56910
 
56827
56911
  // src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.state.ts
@@ -56866,7 +56950,7 @@ var FormMDCtrlFormController = class extends FormMDCtrlController {
56866
56950
  if (((_a3 = this.context) == null ? void 0 : _a3.srfrunmode) === "DESIGN") {
56867
56951
  return;
56868
56952
  }
56869
- throw new RuntimeModelError63(
56953
+ throw new RuntimeModelError60(
56870
56954
  this.model,
56871
56955
  ibiz.i18n.t("runtime.controller.control.form.unconfiguredWidgets")
56872
56956
  );
@@ -57588,9 +57672,25 @@ var FormButtonListController = class extends FormDetailController {
57588
57672
  this.state.buttonsState = new ButtonContainerState();
57589
57673
  }
57590
57674
  async onInit() {
57591
- super.onInit();
57675
+ await super.onInit();
57592
57676
  await this.initButtonsState();
57593
57677
  }
57678
+ /**
57679
+ * @description 初始化界面行为组
57680
+ * @protected
57681
+ * @returns {*} {Promise<void>}
57682
+ * @memberof FormButtonListController
57683
+ */
57684
+ async initUIActions() {
57685
+ const { buttonListType, uiactionGroup } = this.model;
57686
+ if (buttonListType === "UIACTIONGROUP" && uiactionGroup) {
57687
+ await calcUIActionGroup(
57688
+ uiactionGroup,
57689
+ this.form.context,
57690
+ this.form.params
57691
+ );
57692
+ }
57693
+ }
57594
57694
  /**
57595
57695
  * 初始化按钮组状态
57596
57696
  *
@@ -57832,7 +57932,7 @@ import { clone as clone41, isNil as isNil34 } from "ramda";
57832
57932
  // src/controller/control/form/edit-form/edit-form.service.ts
57833
57933
  import {
57834
57934
  recursiveIterate as recursiveIterate10,
57835
- RuntimeModelError as RuntimeModelError64
57935
+ RuntimeModelError as RuntimeModelError61
57836
57936
  } from "@ibiz-template/core";
57837
57937
  var EditFormService = class extends FormService {
57838
57938
  /**
@@ -57959,7 +58059,7 @@ var EditFormService = class extends FormService {
57959
58059
  const wizardForm = this.model;
57960
58060
  const methodName = (_a3 = wizardForm.goBackControlAction) == null ? void 0 : _a3.appDEMethodId;
57961
58061
  if (!methodName) {
57962
- throw new RuntimeModelError64(
58062
+ throw new RuntimeModelError61(
57963
58063
  this.model,
57964
58064
  ibiz.i18n.t("runtime.controller.control.form.lackBehavior")
57965
58065
  );
@@ -59209,7 +59309,7 @@ import {
59209
59309
  awaitTimeout as awaitTimeout2,
59210
59310
  RuntimeError as RuntimeError55,
59211
59311
  recursiveIterate as recursiveIterate11,
59212
- RuntimeModelError as RuntimeModelError66,
59312
+ RuntimeModelError as RuntimeModelError63,
59213
59313
  mergeDefaultInLeft as mergeDefaultInLeft2,
59214
59314
  debounceAndAsyncMerge as debounceAndAsyncMerge2
59215
59315
  } from "@ibiz-template/core";
@@ -59217,7 +59317,7 @@ import { clone as clone43 } from "ramda";
59217
59317
  import dayjs5 from "dayjs";
59218
59318
 
59219
59319
  // src/controller/control/grid/grid/grid.service.ts
59220
- import { RuntimeModelError as RuntimeModelError65 } from "@ibiz-template/core";
59320
+ import { RuntimeModelError as RuntimeModelError62 } from "@ibiz-template/core";
59221
59321
  var GridService = class extends MDControlService {
59222
59322
  /**
59223
59323
  * 初始化属性映射
@@ -59245,7 +59345,7 @@ var GridService = class extends MDControlService {
59245
59345
  dataType: dataItem.dataType
59246
59346
  });
59247
59347
  } else {
59248
- throw new RuntimeModelError65(
59348
+ throw new RuntimeModelError62(
59249
59349
  column,
59250
59350
  ibiz.i18n.t("runtime.controller.control.grid.corresponding", {
59251
59351
  deField
@@ -60164,7 +60264,7 @@ var GridController = class extends MDControlController {
60164
60264
  (item) => item.model.appDEFieldId === groupAppDEFieldId
60165
60265
  );
60166
60266
  if (!this.groupFieldColumn) {
60167
- throw new RuntimeModelError66(
60267
+ throw new RuntimeModelError63(
60168
60268
  this.model,
60169
60269
  ibiz.i18n.t("runtime.controller.control.grid.attributeColumns")
60170
60270
  );
@@ -60175,7 +60275,7 @@ var GridController = class extends MDControlController {
60175
60275
  );
60176
60276
  if (index !== -1 && index !== 0) {
60177
60277
  if (this.isMultistageHeader) {
60178
- throw new RuntimeModelError66(
60278
+ throw new RuntimeModelError63(
60179
60279
  this.model,
60180
60280
  ibiz.i18n.t("runtime.controller.control.grid.configureFirstColumn", {
60181
60281
  groupFieldName
@@ -60187,13 +60287,13 @@ var GridController = class extends MDControlController {
60187
60287
  }
60188
60288
  if (groupMode === "CODELIST") {
60189
60289
  if (!groupCodeListId) {
60190
- throw new RuntimeModelError66(
60290
+ throw new RuntimeModelError63(
60191
60291
  this.model,
60192
60292
  ibiz.i18n.t("runtime.controller.control.grid.requiresCodeTable")
60193
60293
  );
60194
60294
  }
60195
60295
  if (this.groupFieldColumn.model.appCodeListId !== groupCodeListId) {
60196
- throw new RuntimeModelError66(
60296
+ throw new RuntimeModelError63(
60197
60297
  this.model,
60198
60298
  ibiz.i18n.t("runtime.controller.control.grid.noMatchCodeTable", {
60199
60299
  groupFieldName
@@ -60352,7 +60452,7 @@ var GridController = class extends MDControlController {
60352
60452
  return;
60353
60453
  }
60354
60454
  if (!aggAppDEDataSetId || !aggAppDataEntityId) {
60355
- throw new RuntimeModelError66(
60455
+ throw new RuntimeModelError63(
60356
60456
  this.model,
60357
60457
  ibiz.i18n.t("runtime.controller.control.grid.missingConfiguration")
60358
60458
  );
@@ -61396,7 +61496,7 @@ var GridController = class extends MDControlController {
61396
61496
  var _a3;
61397
61497
  const moveAction = (_a3 = this.model.moveControlAction) == null ? void 0 : _a3.appDEMethodId;
61398
61498
  if (!moveAction) {
61399
- throw new RuntimeModelError66(
61499
+ throw new RuntimeModelError63(
61400
61500
  this.model,
61401
61501
  ibiz.i18n.t("runtime.controller.common.md.noMoveDataCconfig")
61402
61502
  );
@@ -61927,7 +62027,7 @@ var GridFieldColumnController = class extends GridColumnController {
61927
62027
  };
61928
62028
 
61929
62029
  // src/controller/control/grid/grid-column/grid-ua-column/grid-ua-column.controller.ts
61930
- import { RuntimeModelError as RuntimeModelError67 } from "@ibiz-template/core";
62030
+ import { RuntimeModelError as RuntimeModelError64 } from "@ibiz-template/core";
61931
62031
  var GridUAColumnController = class extends GridColumnController {
61932
62032
  /**
61933
62033
  * 给rowController初始化操作列的状态
@@ -61940,7 +62040,7 @@ var GridUAColumnController = class extends GridColumnController {
61940
62040
  var _a3;
61941
62041
  const { deuiactionGroup } = this.model;
61942
62042
  if (!deuiactionGroup) {
61943
- throw new RuntimeModelError67(
62043
+ throw new RuntimeModelError64(
61944
62044
  this.model,
61945
62045
  ibiz.i18n.t("runtime.controller.control.grid.behaviorGroup")
61946
62046
  );
@@ -62278,7 +62378,7 @@ import {
62278
62378
  clone as clone46,
62279
62379
  DataTypes as DataTypes7,
62280
62380
  isElementSame as isElementSame4,
62281
- RuntimeModelError as RuntimeModelError68
62381
+ RuntimeModelError as RuntimeModelError65
62282
62382
  } from "@ibiz-template/core";
62283
62383
  import dayjs7 from "dayjs";
62284
62384
 
@@ -62376,6 +62476,34 @@ var ListController = class extends MDControlController {
62376
62476
  this.service = new ListService(this.model);
62377
62477
  await this.service.init(this.context);
62378
62478
  }
62479
+ /**
62480
+ * @description 初始化界面行为组
62481
+ * @protected
62482
+ * @memberof ListController
62483
+ */
62484
+ async initUIActions() {
62485
+ var _a3;
62486
+ const asyncTasks = [];
62487
+ if (this.model.groupUIActionGroup) {
62488
+ const task = calcUIActionGroup(
62489
+ this.model.groupUIActionGroup,
62490
+ this.context,
62491
+ this.params
62492
+ );
62493
+ asyncTasks.push(task);
62494
+ }
62495
+ (_a3 = this.model.delistItems) == null ? void 0 : _a3.forEach((item) => {
62496
+ if (item.itemType === "ACTIONITEM" && item.deuiactionGroup) {
62497
+ const task = calcUIActionGroup(
62498
+ item.deuiactionGroup,
62499
+ this.context,
62500
+ this.params
62501
+ );
62502
+ asyncTasks.push(task);
62503
+ }
62504
+ });
62505
+ await Promise.all(asyncTasks);
62506
+ }
62379
62507
  /**
62380
62508
  * @description 初始化分组界面行为组
62381
62509
  * @return {*} {Promise<void>}
@@ -62965,13 +63093,13 @@ var ListController = class extends MDControlController {
62965
63093
  await this.updateChangedItems([draggedItem]);
62966
63094
  } else {
62967
63095
  if (!minorSortAppDEFieldId)
62968
- throw new RuntimeModelError68(
63096
+ throw new RuntimeModelError65(
62969
63097
  this.model,
62970
63098
  ibiz.i18n.t("runtime.controller.common.md.sortingProperties")
62971
63099
  );
62972
63100
  const moveAction = moveControlAction == null ? void 0 : moveControlAction.appDEMethodId;
62973
63101
  if (!moveAction)
62974
- throw new RuntimeModelError68(
63102
+ throw new RuntimeModelError65(
62975
63103
  this.model,
62976
63104
  ibiz.i18n.t("runtime.controller.common.md.noMoveDataCconfig")
62977
63105
  );
@@ -64347,7 +64475,7 @@ var TabExpPanelController = class extends ControlController {
64347
64475
  import {
64348
64476
  RuntimeError as RuntimeError58,
64349
64477
  recursiveIterate as recursiveIterate13,
64350
- RuntimeModelError as RuntimeModelError69
64478
+ RuntimeModelError as RuntimeModelError66
64351
64479
  } from "@ibiz-template/core";
64352
64480
  import { isNil as isNil37 } from "ramda";
64353
64481
  import { isBoolean as isBoolean4 } from "qx-util";
@@ -64656,13 +64784,15 @@ var TreeService = class extends MDControlService {
64656
64784
  appDataEntityId,
64657
64785
  appId2
64658
64786
  );
64659
- const nodeDatas = result.map((item, index) => {
64787
+ const nodeDatas = [];
64788
+ for (let index = 0; index < result.length; index++) {
64789
+ const item = result[index];
64660
64790
  const defaultExpand = this.calcExpand(nodeModel, index);
64661
64791
  let data = item;
64662
64792
  if (!(item instanceof AppDataEntity)) {
64663
64793
  data = new AppDataEntity(entityModel, item);
64664
64794
  }
64665
- return new TreeDataSetNodeData(nodeModel, parentNodeData, {
64795
+ const nodeData = new TreeDataSetNodeData(nodeModel, parentNodeData, {
64666
64796
  data,
64667
64797
  leaf: !!opts.leaf,
64668
64798
  context: opts.context,
@@ -64671,7 +64801,9 @@ var TreeService = class extends MDControlService {
64671
64801
  navParams,
64672
64802
  defaultExpand
64673
64803
  });
64674
- });
64804
+ await nodeData.initAsyncData(nodeModel);
64805
+ nodeDatas.push(nodeData);
64806
+ }
64675
64807
  this.updatePageItems(
64676
64808
  nodeModel,
64677
64809
  parentNodeData,
@@ -65186,6 +65318,36 @@ var TreeController = class extends MDControlController {
65186
65318
  Object.values(this.contextMenus).map((menu) => menu.created())
65187
65319
  );
65188
65320
  }
65321
+ /**
65322
+ * @description 初始化界面行为组
65323
+ * @protected
65324
+ * @returns {*} {Promise<void>}
65325
+ * @memberof TreeController
65326
+ */
65327
+ async initUIActions() {
65328
+ const asyncTasks = [];
65329
+ this.model.detreeNodes.forEach((node) => {
65330
+ var _a3, _b2;
65331
+ if ((_b2 = (_a3 = node.decontextMenu) == null ? void 0 : _a3.detoolbarItems) == null ? void 0 : _b2.length) {
65332
+ recursiveIterate13(
65333
+ node.decontextMenu,
65334
+ (item) => {
65335
+ const groupItem = item;
65336
+ if (groupItem.groupExtractMode && groupItem.uiactionGroup) {
65337
+ const calcTask = calcUIActionGroup(
65338
+ groupItem.uiactionGroup,
65339
+ this.context,
65340
+ this.params
65341
+ );
65342
+ asyncTasks.push(calcTask);
65343
+ }
65344
+ },
65345
+ { childrenFields: ["detoolbarItems"] }
65346
+ );
65347
+ }
65348
+ });
65349
+ await Promise.all(asyncTasks);
65350
+ }
65189
65351
  /**
65190
65352
  * @description 初始化部件视图逻辑
65191
65353
  * @protected
@@ -65909,7 +66071,7 @@ var TreeController = class extends MDControlController {
65909
66071
  const { moveAppDEActionId, appDataEntityId, allowOrder } = orderNodeModel;
65910
66072
  if (allowOrder) {
65911
66073
  if (!moveAppDEActionId) {
65912
- throw new RuntimeModelError69(
66074
+ throw new RuntimeModelError66(
65913
66075
  this.model,
65914
66076
  ibiz.i18n.t("runtime.controller.common.md.noMoveDataCconfig")
65915
66077
  );
@@ -65991,7 +66153,7 @@ var TreeController = class extends MDControlController {
65991
66153
  async modifyNodeText(nodeData, text) {
65992
66154
  const model = this.getNodeModel(nodeData._nodeId);
65993
66155
  if (!model.allowEditText) {
65994
- throw new RuntimeModelError69(
66156
+ throw new RuntimeModelError66(
65995
66157
  model,
65996
66158
  ibiz.i18n.t("runtime.controller.control.tree.editMode")
65997
66159
  );
@@ -66104,7 +66266,7 @@ var TreeController = class extends MDControlController {
66104
66266
  const nodeModel = this.getNodeModel(nodeType);
66105
66267
  const parentNodeData = this.getNodeData(parentKey);
66106
66268
  if (!nodeModel) {
66107
- throw new RuntimeModelError69(
66269
+ throw new RuntimeModelError66(
66108
66270
  this.model,
66109
66271
  ibiz.i18n.t("runtime.controller.control.tree.noFoundTreeNode")
66110
66272
  );
@@ -66221,6 +66383,8 @@ var TreeController = class extends MDControlController {
66221
66383
  }
66222
66384
  const { context, params, data } = this.parseTreeNodeData(item);
66223
66385
  const { appDataEntityId } = nodeModel;
66386
+ if (!appDataEntityId)
66387
+ return { cancel: true };
66224
66388
  const deName = calcDeCodeNameById(appDataEntityId);
66225
66389
  context[deName.toLowerCase()] = item.srfkey;
66226
66390
  context.srfnavctrlid = this.ctrlId;
@@ -66236,7 +66400,7 @@ var TreeController = class extends MDControlController {
66236
66400
  }
66237
66401
  ));
66238
66402
  if (result === -1)
66239
- throw new RuntimeModelError69(
66403
+ throw new RuntimeModelError66(
66240
66404
  nodeModel,
66241
66405
  ibiz.i18n.t("runtime.controller.common.md.logicOpendata", {
66242
66406
  itemType: nodeModel.id.toLowerCase()
@@ -66275,7 +66439,7 @@ var TreeController = class extends MDControlController {
66275
66439
  }
66276
66440
  ));
66277
66441
  if (result === -1)
66278
- throw new RuntimeModelError69(
66442
+ throw new RuntimeModelError66(
66279
66443
  nodeModel,
66280
66444
  ibiz.i18n.t("runtime.controller.common.md.logicNewdata", {
66281
66445
  itemType: nodeModel.id.toLowerCase()
@@ -66811,7 +66975,7 @@ var WizardPanelController = class extends ControlController {
66811
66975
  };
66812
66976
 
66813
66977
  // src/controller/control/md-ctrl/md-ctrl.controller.ts
66814
- import { RuntimeError as RuntimeError60, RuntimeModelError as RuntimeModelError70 } from "@ibiz-template/core";
66978
+ import { RuntimeError as RuntimeError60, RuntimeModelError as RuntimeModelError67 } from "@ibiz-template/core";
66815
66979
  import { clone as clone47, isNil as isNil38, isNotNil as isNotNil5 } from "ramda";
66816
66980
  import { createUUID as createUUID20 } from "qx-util";
66817
66981
 
@@ -66952,6 +67116,28 @@ var MDCtrlController = class extends MDControlController {
66952
67116
  this.setSort();
66953
67117
  await this.initExportData();
66954
67118
  }
67119
+ /**
67120
+ * @description 初始化界面行为组
67121
+ * @protected
67122
+ * @memberof MDCtrlController
67123
+ */
67124
+ async initUIActions() {
67125
+ const { deuiactionGroup, deuiactionGroup2 } = this.model;
67126
+ if (deuiactionGroup) {
67127
+ await calcUIActionGroup(
67128
+ this.model.deuiactionGroup,
67129
+ this.context,
67130
+ this.params
67131
+ );
67132
+ }
67133
+ if (deuiactionGroup2) {
67134
+ await calcUIActionGroup(
67135
+ this.model.deuiactionGroup2,
67136
+ this.context,
67137
+ this.params
67138
+ );
67139
+ }
67140
+ }
66955
67141
  /**
66956
67142
  * 加载更多
66957
67143
  * @author lxm
@@ -67108,7 +67294,7 @@ var MDCtrlController = class extends MDControlController {
67108
67294
  const { enableGroup, groupMode, groupAppDEFieldId } = this.model;
67109
67295
  if (enableGroup && groupMode) {
67110
67296
  if (!groupAppDEFieldId) {
67111
- throw new RuntimeModelError70(
67297
+ throw new RuntimeModelError67(
67112
67298
  this.model,
67113
67299
  ibiz.i18n.t(
67114
67300
  "runtime.controller.control.dataView.propertiesNoConfigured"
@@ -67200,7 +67386,7 @@ var MDCtrlController = class extends MDControlController {
67200
67386
  async handleCodeListGroup() {
67201
67387
  const { groupAppDEFieldId, groupCodeListId } = this.model;
67202
67388
  if (!groupCodeListId) {
67203
- throw new RuntimeModelError70(
67389
+ throw new RuntimeModelError67(
67204
67390
  this.model,
67205
67391
  ibiz.i18n.t("runtime.controller.control.dataView.tableNoConfigured")
67206
67392
  );
@@ -67540,7 +67726,7 @@ import {
67540
67726
  clone as clone48,
67541
67727
  RuntimeError as RuntimeError61,
67542
67728
  isElementSame as isElementSame5,
67543
- RuntimeModelError as RuntimeModelError71
67729
+ RuntimeModelError as RuntimeModelError68
67544
67730
  } from "@ibiz-template/core";
67545
67731
 
67546
67732
  // src/controller/control/kanban/kanban.service.ts
@@ -67825,7 +68011,7 @@ var KanbanController = class extends DataViewControlController {
67825
68011
  async handleCodeListGroup() {
67826
68012
  const { groupAppDEFieldId, groupCodeListId } = this.model;
67827
68013
  if (!groupCodeListId) {
67828
- throw new RuntimeModelError71(
68014
+ throw new RuntimeModelError68(
67829
68015
  this.model,
67830
68016
  ibiz.i18n.t("runtime.controller.control.dataView.tableNoConfigured")
67831
68017
  );
@@ -67889,13 +68075,13 @@ var KanbanController = class extends DataViewControlController {
67889
68075
  await this.updateChangedItems([draggedItem]);
67890
68076
  } else {
67891
68077
  if (!minorSortAppDEFieldId)
67892
- throw new RuntimeModelError71(
68078
+ throw new RuntimeModelError68(
67893
68079
  this.model,
67894
68080
  ibiz.i18n.t("runtime.controller.common.md.sortingProperties")
67895
68081
  );
67896
68082
  const moveAction = moveControlAction == null ? void 0 : moveControlAction.appDEMethodId;
67897
68083
  if (!moveAction)
67898
- throw new RuntimeModelError71(
68084
+ throw new RuntimeModelError68(
67899
68085
  this.model,
67900
68086
  ibiz.i18n.t("runtime.controller.common.md.noMoveDataCconfig")
67901
68087
  );
@@ -68096,7 +68282,7 @@ import {
68096
68282
  RuntimeError as RuntimeError62,
68097
68283
  awaitTimeout as awaitTimeout3,
68098
68284
  recursiveIterate as recursiveIterate14,
68099
- RuntimeModelError as RuntimeModelError72
68285
+ RuntimeModelError as RuntimeModelError69
68100
68286
  } from "@ibiz-template/core";
68101
68287
  import { clone as clone49 } from "ramda";
68102
68288
 
@@ -68285,6 +68471,35 @@ var TreeGridExController = class extends TreeController {
68285
68471
  this.service = new TreeGridExService(this.model);
68286
68472
  await this.service.init(this.context);
68287
68473
  }
68474
+ /**
68475
+ * @description 初始化界面行为组
68476
+ * @protected
68477
+ * @returns {*} {Promise<void>}
68478
+ * @memberof TreeGridExController
68479
+ */
68480
+ async initUIActions() {
68481
+ var _a3;
68482
+ await super.initUIActions();
68483
+ const asyncTasks = [];
68484
+ (_a3 = this.model.detreeNodes) == null ? void 0 : _a3.forEach((node) => {
68485
+ var _a4;
68486
+ if ((_a4 = node.detreeNodeColumns) == null ? void 0 : _a4.length) {
68487
+ node.detreeNodeColumns.forEach(
68488
+ (column) => {
68489
+ if (column.deuiactionGroup) {
68490
+ const task = calcUIActionGroup(
68491
+ column.deuiactionGroup,
68492
+ this.context,
68493
+ this.params
68494
+ );
68495
+ asyncTasks.push(task);
68496
+ }
68497
+ }
68498
+ );
68499
+ }
68500
+ });
68501
+ await Promise.all(asyncTasks);
68502
+ }
68288
68503
  /**
68289
68504
  * 初始化树表格(增强)属性列,操作列,编辑项控制器
68290
68505
  *
@@ -68481,7 +68696,7 @@ var TreeGridExController = class extends TreeController {
68481
68696
  );
68482
68697
  }
68483
68698
  if (!updateAppDEActionId) {
68484
- throw new RuntimeModelError72(
68699
+ throw new RuntimeModelError69(
68485
68700
  nodeModel,
68486
68701
  ibiz.i18n.t("runtime.controller.control.treeGridEx.updateBehavior")
68487
68702
  );
@@ -68807,7 +69022,7 @@ var TreeGridExColumnController = class {
68807
69022
  import {
68808
69023
  DataTypes as DataTypes8,
68809
69024
  RuntimeError as RuntimeError63,
68810
- RuntimeModelError as RuntimeModelError73
69025
+ RuntimeModelError as RuntimeModelError70
68811
69026
  } from "@ibiz-template/core";
68812
69027
  import { clone as clone50 } from "ramda";
68813
69028
  import dayjs8 from "dayjs";
@@ -68838,7 +69053,7 @@ var TreeGridExNodeColumnController = class {
68838
69053
  }
68839
69054
  );
68840
69055
  if (!nodeColumn || !nodeDataItem) {
68841
- throw new RuntimeModelError73(
69056
+ throw new RuntimeModelError70(
68842
69057
  nodeModel,
68843
69058
  ibiz.i18n.t("runtime.controller.control.treeGridEx.noConfigured", {
68844
69059
  name: this.fieldColumn.name
@@ -68854,7 +69069,7 @@ var TreeGridExNodeColumnController = class {
68854
69069
  }
68855
69070
  );
68856
69071
  if (!nodeEditItem) {
68857
- throw new RuntimeModelError73(
69072
+ throw new RuntimeModelError70(
68858
69073
  nodeModel,
68859
69074
  ibiz.i18n.t("runtime.controller.control.treeGridEx.editItem", {
68860
69075
  name: this.fieldColumn.name
@@ -69363,7 +69578,7 @@ var TreeGridExUAColumnController = class extends TreeGridExColumnController {
69363
69578
  };
69364
69579
 
69365
69580
  // src/controller/control/tree-grid/tree-grid.controller.ts
69366
- import { RuntimeModelError as RuntimeModelError74 } from "@ibiz-template/core";
69581
+ import { RuntimeModelError as RuntimeModelError71 } from "@ibiz-template/core";
69367
69582
  import { createUUID as createUUID21 } from "qx-util";
69368
69583
  var TreeGridController = class extends GridController {
69369
69584
  constructor() {
@@ -69408,7 +69623,7 @@ var TreeGridController = class extends GridController {
69408
69623
  return item.treeColumnMode === 4 || item.treeColumnMode === 12;
69409
69624
  });
69410
69625
  if (!treeGridParent)
69411
- throw new RuntimeModelError74(
69626
+ throw new RuntimeModelError71(
69412
69627
  this.model,
69413
69628
  ibiz.i18n.t("runtime.controller.control.treeGrid.columnMode")
69414
69629
  );
@@ -69416,7 +69631,7 @@ var TreeGridController = class extends GridController {
69416
69631
  return item.treeColumnMode === 2 || item.treeColumnMode === 3;
69417
69632
  });
69418
69633
  if (!treeGridValue)
69419
- throw new RuntimeModelError74(
69634
+ throw new RuntimeModelError71(
69420
69635
  this.model,
69421
69636
  ibiz.i18n.t("runtime.controller.control.treeGrid.columnsSchema")
69422
69637
  );
@@ -86670,7 +86885,7 @@ var ViewEngineBase = class {
86670
86885
  };
86671
86886
 
86672
86887
  // src/engine/md-view.engine.ts
86673
- import { RuntimeModelError as RuntimeModelError75 } from "@ibiz-template/core";
86888
+ import { RuntimeModelError as RuntimeModelError72 } from "@ibiz-template/core";
86674
86889
  import { clone as clone61 } from "ramda";
86675
86890
  var MDViewEngine = class extends ViewEngineBase {
86676
86891
  /**
@@ -86922,7 +87137,7 @@ var MDViewEngine = class extends ViewEngineBase {
86922
87137
  view: this.view
86923
87138
  }));
86924
87139
  if (result === -1) {
86925
- throw new RuntimeModelError75(
87140
+ throw new RuntimeModelError72(
86926
87141
  this.view.model,
86927
87142
  ibiz.i18n.t("runtime.engine.logicOpendata")
86928
87143
  );
@@ -86954,7 +87169,7 @@ var MDViewEngine = class extends ViewEngineBase {
86954
87169
  (item) => item.id === "newdata"
86955
87170
  );
86956
87171
  if (!openAppViewLogic) {
86957
- throw new RuntimeModelError75(
87172
+ throw new RuntimeModelError72(
86958
87173
  this.view.model,
86959
87174
  ibiz.i18n.t("runtime.engine.logicNewdata")
86960
87175
  );
@@ -86974,7 +87189,7 @@ var MDViewEngine = class extends ViewEngineBase {
86974
87189
  view: this.view
86975
87190
  }));
86976
87191
  if (result === -1) {
86977
- throw new RuntimeModelError75(
87192
+ throw new RuntimeModelError72(
86978
87193
  this.view.model,
86979
87194
  ibiz.i18n.t("runtime.engine.logicNewdata")
86980
87195
  );
@@ -87994,13 +88209,13 @@ var ScriptExecutor = class extends LogicExecutor {
87994
88209
  };
87995
88210
 
87996
88211
  // src/logic-scheduler/executor/app-de-ui-logic-executor.ts
87997
- import { RuntimeModelError as RuntimeModelError76 } from "@ibiz-template/core";
88212
+ import { RuntimeModelError as RuntimeModelError73 } from "@ibiz-template/core";
87998
88213
  var AppDEUILogicExecutor = class extends LogicExecutor {
87999
88214
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
88000
88215
  execute(executeParams) {
88001
88216
  const { appDEUILogicId, appDataEntityId } = this.logic;
88002
88217
  if (!appDEUILogicId) {
88003
- throw new RuntimeModelError76(
88218
+ throw new RuntimeModelError73(
88004
88219
  this.logic,
88005
88220
  ibiz.i18n.t("runtime.logicScheduler.executor.noConfiguredLogic")
88006
88221
  );
@@ -88491,7 +88706,7 @@ var ItemDynaLogicTrigger = class extends LogicTrigger {
88491
88706
  };
88492
88707
 
88493
88708
  // src/logic-scheduler/trigger/timer-trigger.ts
88494
- import { RuntimeError as RuntimeError79, RuntimeModelError as RuntimeModelError77 } from "@ibiz-template/core";
88709
+ import { RuntimeError as RuntimeError79, RuntimeModelError as RuntimeModelError74 } from "@ibiz-template/core";
88495
88710
  var TimerTrigger = class extends LogicTrigger {
88496
88711
  constructor() {
88497
88712
  super(...arguments);
@@ -88499,7 +88714,7 @@ var TimerTrigger = class extends LogicTrigger {
88499
88714
  }
88500
88715
  start() {
88501
88716
  if (!this.logic.timer) {
88502
- throw new RuntimeModelError77(
88717
+ throw new RuntimeModelError74(
88503
88718
  this.logic,
88504
88719
  ibiz.i18n.t("runtime.logicScheduler.trigger.timerLacks")
88505
88720
  );
@@ -88539,7 +88754,7 @@ var TimerTrigger = class extends LogicTrigger {
88539
88754
  import {
88540
88755
  ModelError as ModelError34,
88541
88756
  RuntimeError as RuntimeError80,
88542
- RuntimeModelError as RuntimeModelError78
88757
+ RuntimeModelError as RuntimeModelError75
88543
88758
  } from "@ibiz-template/core";
88544
88759
  import { notNilEmpty as notNilEmpty11 } from "qx-util";
88545
88760
  var AppUILogicExecutor = class extends LogicExecutor {
@@ -88587,7 +88802,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
88587
88802
  } else {
88588
88803
  openViewRef = appUILogic.openDataAppView;
88589
88804
  if (!openViewRef) {
88590
- throw new RuntimeModelError78(
88805
+ throw new RuntimeModelError75(
88591
88806
  appUILogic,
88592
88807
  ibiz.i18n.t(
88593
88808
  "runtime.logicScheduler.executor.defaultOpendataViewLogic"
@@ -88597,7 +88812,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
88597
88812
  }
88598
88813
  const openView = openViewRef.refAppViewId;
88599
88814
  if (!openView) {
88600
- throw new RuntimeModelError78(
88815
+ throw new RuntimeModelError75(
88601
88816
  appUILogic,
88602
88817
  ibiz.i18n.t("runtime.logicScheduler.executor.noActuallyReference")
88603
88818
  );
@@ -88635,7 +88850,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
88635
88850
  );
88636
88851
  const typeFileName = appDataEntity.formTypeAppDEFieldId || appDataEntity.dataTypeAppDEFieldId;
88637
88852
  if (!typeFileName) {
88638
- throw new RuntimeModelError78(
88853
+ throw new RuntimeModelError75(
88639
88854
  appUILogic,
88640
88855
  ibiz.i18n.t("runtime.logicScheduler.executor.attributeConfiguration", {
88641
88856
  codeName: appDataEntity.codeName
@@ -88645,7 +88860,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
88645
88860
  const { data } = parameters;
88646
88861
  const formTypeValue = data[0][typeFileName];
88647
88862
  if (!formTypeValue) {
88648
- throw new RuntimeModelError78(
88863
+ throw new RuntimeModelError75(
88649
88864
  appUILogic,
88650
88865
  ibiz.i18n.t("runtime.logicScheduler.executor.entityAttributeValues")
88651
88866
  );
@@ -88692,7 +88907,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
88692
88907
  return viewRef.refMode.toLowerCase() !== parentDeName;
88693
88908
  });
88694
88909
  if (!newViewRef) {
88695
- throw new RuntimeModelError78(
88910
+ throw new RuntimeModelError75(
88696
88911
  appUILogic,
88697
88912
  ibiz.i18n.t("runtime.logicScheduler.executor.selectionView")
88698
88913
  );
@@ -88705,7 +88920,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
88705
88920
  } else {
88706
88921
  newViewRef = newDataAppView;
88707
88922
  if (!newViewRef || !newViewRef.refAppViewId) {
88708
- throw new RuntimeModelError78(
88923
+ throw new RuntimeModelError75(
88709
88924
  appUILogic,
88710
88925
  ibiz.i18n.t("runtime.logicScheduler.executor.newdataViewLogic")
88711
88926
  );
@@ -88778,7 +88993,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
88778
88993
  const { context, params, ...rest } = parameters;
88779
88994
  const { view } = parameters;
88780
88995
  if (!wizardAppView || !wizardAppView.refAppViewId) {
88781
- throw new RuntimeModelError78(
88996
+ throw new RuntimeModelError75(
88782
88997
  appUILogic,
88783
88998
  ibiz.i18n.t("runtime.logicScheduler.executor.indexEntity")
88784
88999
  );
@@ -88836,7 +89051,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
88836
89051
  const minorDERs = selfDe.minorAppDERSs;
88837
89052
  const pickParentDeName = newViewRef.refMode.toLowerCase();
88838
89053
  if (!minorDERs) {
88839
- throw new RuntimeModelError78(
89054
+ throw new RuntimeModelError75(
88840
89055
  selfDe,
88841
89056
  ibiz.i18n.t("runtime.logicScheduler.executor.relationships")
88842
89057
  );
@@ -88947,12 +89162,12 @@ var ControlEventTrigger = class extends LogicTrigger {
88947
89162
  };
88948
89163
 
88949
89164
  // src/logic-scheduler/executor/app-ui-action-executor.ts
88950
- import { RuntimeModelError as RuntimeModelError79 } from "@ibiz-template/core";
89165
+ import { RuntimeModelError as RuntimeModelError76 } from "@ibiz-template/core";
88951
89166
  var AppDEUIActionExecutor = class extends LogicExecutor {
88952
89167
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
88953
89168
  execute(executeParams) {
88954
89169
  if (!this.logic.appDEUIActionId) {
88955
- throw new RuntimeModelError79(
89170
+ throw new RuntimeModelError76(
88956
89171
  this.logic,
88957
89172
  ibiz.i18n.t("runtime.logicScheduler.executor.missingTrigger")
88958
89173
  );