@ibiz-template/runtime 0.2.9 → 0.2.10

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 (36) hide show
  1. package/dist/index.esm.js +61 -33
  2. package/dist/index.system.min.js +1 -1
  3. package/dist/index.system.min.js.map +1 -1
  4. package/out/controller/control/map/map.controller.js +2 -2
  5. package/out/controller/control/panel/panel/panel-item.controller.d.ts +1 -0
  6. package/out/controller/control/panel/panel/panel-item.controller.d.ts.map +1 -1
  7. package/out/controller/control/panel/panel/panel-item.controller.js +1 -0
  8. package/out/controller/control/panel/panel/panel.controller.d.ts +3 -1
  9. package/out/controller/control/panel/panel/panel.controller.d.ts.map +1 -1
  10. package/out/controller/control/panel/panel/panel.controller.js +20 -2
  11. package/out/interface/controller/controller/control/panel-item/i-panel-item.controller.d.ts +6 -0
  12. package/out/interface/controller/controller/control/panel-item/i-panel-item.controller.d.ts.map +1 -1
  13. package/out/interface/controller/state/control/i-map.state.d.ts +4 -4
  14. package/out/interface/controller/state/control/i-map.state.d.ts.map +1 -1
  15. package/out/logic-scheduler/executor/app-ui-logic-executor.d.ts +6 -9
  16. package/out/logic-scheduler/executor/app-ui-logic-executor.d.ts.map +1 -1
  17. package/out/logic-scheduler/executor/app-ui-logic-executor.js +14 -16
  18. package/out/model/data-entity/data-entity.d.ts +0 -11
  19. package/out/model/data-entity/data-entity.d.ts.map +1 -1
  20. package/out/model/data-entity/data-entity.js +0 -14
  21. package/out/service/vo/map-data/map-data.d.ts +1 -1
  22. package/out/service/vo/map-data/map-data.d.ts.map +1 -1
  23. package/out/service/vo/map-data/map-data.js +4 -3
  24. package/out/service/vo/panel-data/panel-data.d.ts +9 -4
  25. package/out/service/vo/panel-data/panel-data.d.ts.map +1 -1
  26. package/out/service/vo/panel-data/panel-data.js +18 -1
  27. package/package.json +2 -2
  28. package/src/controller/control/map/map.controller.ts +2 -2
  29. package/src/controller/control/panel/panel/panel-item.controller.ts +2 -0
  30. package/src/controller/control/panel/panel/panel.controller.ts +21 -3
  31. package/src/interface/controller/controller/control/panel-item/i-panel-item.controller.ts +7 -0
  32. package/src/interface/controller/state/control/i-map.state.ts +4 -4
  33. package/src/logic-scheduler/executor/app-ui-logic-executor.ts +17 -16
  34. package/src/model/data-entity/data-entity.ts +0 -17
  35. package/src/service/vo/map-data/map-data.ts +6 -4
  36. package/src/service/vo/panel-data/panel-data.ts +25 -6
package/dist/index.esm.js CHANGED
@@ -18810,10 +18810,6 @@ async function getDeACMode(appDEACModeId, entityId, srfappid) {
18810
18810
  });
18811
18811
  return deACMode;
18812
18812
  }
18813
- async function getFormTypeFieldName(entityId) {
18814
- const appDataEntity = await ibiz.hub.getAppDataEntity(entityId);
18815
- return appDataEntity.formTypeAppDEFieldId;
18816
- }
18817
18813
  function findDELogic(appDELogicId, entity) {
18818
18814
  var _a;
18819
18815
  return (_a = entity.appDELogics) == null ? void 0 : _a.find((item) => item.id === appDELogicId);
@@ -26325,6 +26321,7 @@ function updateKeyDefine(target, keys) {
26325
26321
  }
26326
26322
  });
26327
26323
  }
26324
+ var AreaItemStyles = ["REGION", "REGION2", "REGION3", "REGION4"];
26328
26325
  var MapData = class {
26329
26326
  constructor(deData, mapItem) {
26330
26327
  this._longitude = void 0;
@@ -26336,7 +26333,7 @@ var MapData = class {
26336
26333
  this._symbol = void 0;
26337
26334
  const {
26338
26335
  id,
26339
- itemType,
26336
+ itemStyle,
26340
26337
  longitudeAppDEFieldId,
26341
26338
  latitudeAppDEFieldId,
26342
26339
  textAppDEFieldId,
@@ -26346,9 +26343,9 @@ var MapData = class {
26346
26343
  } = mapItem;
26347
26344
  const keyMap = /* @__PURE__ */ new Map();
26348
26345
  this._id = id + deData.srfkey;
26349
- this._type = itemType;
26346
+ this._itemStyle = itemStyle;
26350
26347
  this._mapItemId = id;
26351
- if (itemType === "area") {
26348
+ if (AreaItemStyles.includes(this._itemStyle)) {
26352
26349
  if (longitudeAppDEFieldId) {
26353
26350
  keyMap.set("_areaCode", longitudeAppDEFieldId);
26354
26351
  }
@@ -26406,6 +26403,7 @@ var MapData = class {
26406
26403
  };
26407
26404
 
26408
26405
  // src/service/vo/panel-data/panel-data.ts
26406
+ import { QXEvent as QXEvent2 } from "qx-util";
26409
26407
  function updateKeyDefine2(target, keys) {
26410
26408
  keys.forEach((key) => {
26411
26409
  if (!Object.prototype.hasOwnProperty.call(target, key)) {
@@ -26420,6 +26418,7 @@ function updateKeyDefine2(target, keys) {
26420
26418
  }
26421
26419
  var PanelData = class {
26422
26420
  constructor(fields, origin) {
26421
+ const _evt = new QXEvent2();
26423
26422
  const keyMap = {};
26424
26423
  const reverseKeyMap = {};
26425
26424
  fields.forEach((field) => {
@@ -26438,11 +26437,21 @@ var PanelData = class {
26438
26437
  target[p] = value;
26439
26438
  }
26440
26439
  } else {
26441
- origin[keyMap[p]] = value;
26440
+ origin[p] = value;
26441
+ }
26442
+ _evt.emit("change", p);
26443
+ if (keyMap[p] && keyMap[p] !== p) {
26444
+ _evt.emit("change", keyMap[p]);
26445
+ }
26446
+ if (reverseKeyMap[p] && reverseKeyMap[p] !== p) {
26447
+ _evt.emit("change", reverseKeyMap[p]);
26442
26448
  }
26443
26449
  return true;
26444
26450
  },
26445
26451
  get(target, p, _receiver) {
26452
+ if (p === "_evt") {
26453
+ return _evt;
26454
+ }
26446
26455
  if (keyMap[p]) {
26447
26456
  return origin[keyMap[p]];
26448
26457
  }
@@ -26458,10 +26467,13 @@ var PanelData = class {
26458
26467
  }
26459
26468
  });
26460
26469
  }
26470
+ destroy() {
26471
+ this._evt.reset();
26472
+ }
26461
26473
  };
26462
26474
 
26463
26475
  // src/service/mqtt/mqtt.service.ts
26464
- import { QXEvent as QXEvent2, createUUID as createUUID4, isNilOrEmpty as isNilOrEmpty6 } from "qx-util";
26476
+ import { QXEvent as QXEvent3, createUUID as createUUID4, isNilOrEmpty as isNilOrEmpty6 } from "qx-util";
26465
26477
  var MqttService = class {
26466
26478
  /**
26467
26479
  * Creates an instance of MqttService.
@@ -26482,7 +26494,7 @@ var MqttService = class {
26482
26494
  * @author chitanda
26483
26495
  * @date 2023-10-23 15:10:06
26484
26496
  */
26485
- this.evt = new QXEvent2();
26497
+ this.evt = new QXEvent3();
26486
26498
  /**
26487
26499
  * 连接选项
26488
26500
  *
@@ -27340,7 +27352,7 @@ var LoadingState = class {
27340
27352
  };
27341
27353
 
27342
27354
  // src/controller/ctx/ctx.ts
27343
- import { QXEvent as QXEvent3 } from "qx-util";
27355
+ import { QXEvent as QXEvent4 } from "qx-util";
27344
27356
 
27345
27357
  // src/controller/ctx/ctx.state.ts
27346
27358
  var CTXState = class {
@@ -27370,7 +27382,7 @@ var CTX = class {
27370
27382
  * @date 2023-04-26 07:54:46
27371
27383
  * @protected
27372
27384
  */
27373
- this.evt = new QXEvent3(3e3);
27385
+ this.evt = new QXEvent4(3e3);
27374
27386
  /**
27375
27387
  * 当前视图控制器集合(包含自身视图控制器,部件控制器,和下一层级的视图的控制器)
27376
27388
  * @author lxm
@@ -27675,8 +27687,8 @@ var ButtonContainerState = class {
27675
27687
  };
27676
27688
 
27677
27689
  // src/controller/utils/event/qx-event-ex.ts
27678
- import { clearAll, QXEvent as QXEvent4 } from "qx-util";
27679
- var QXEventEx = class extends QXEvent4 {
27690
+ import { clearAll, QXEvent as QXEvent5 } from "qx-util";
27691
+ var QXEventEx = class extends QXEvent5 {
27680
27692
  constructor() {
27681
27693
  super(...arguments);
27682
27694
  this.anyEventFns = [];
@@ -39844,6 +39856,14 @@ var PanelController = class extends ControlController {
39844
39856
  async onMounted() {
39845
39857
  this.load();
39846
39858
  }
39859
+ async onDestroyed() {
39860
+ var _a, _b;
39861
+ await super.onDestroyed();
39862
+ (_b = (_a = this.data).destroy) == null ? void 0 : _b.call(_a);
39863
+ Object.values(this.panelItems).forEach((item) => {
39864
+ item.destroy();
39865
+ });
39866
+ }
39847
39867
  /**
39848
39868
  * 初始化面板成员控制器
39849
39869
  *
@@ -39894,11 +39914,13 @@ var PanelController = class extends ControlController {
39894
39914
  * @memberof PanelController
39895
39915
  */
39896
39916
  async load() {
39917
+ var _a, _b;
39897
39918
  const data = await this.prepareData();
39898
39919
  if (!data) {
39899
39920
  throw new RuntimeError49("\u672A\u83B7\u53D6\u5230\u9762\u677F\u6570\u636E");
39900
39921
  }
39901
39922
  const panelData = this.convertData(data);
39923
+ (_b = (_a = this.data).destroy) == null ? void 0 : _b.call(_a);
39902
39924
  this.state.data = panelData;
39903
39925
  this.panelStateNotify("LOAD" /* LOAD */);
39904
39926
  }
@@ -39934,7 +39956,14 @@ var PanelController = class extends ControlController {
39934
39956
  */
39935
39957
  convertData(data) {
39936
39958
  const fields = getAllPanelField(this.model);
39937
- return new PanelData(fields, data);
39959
+ const fieldKeys = fields.map((item) => item.id);
39960
+ const panelData = new PanelData(fields, data);
39961
+ panelData._evt.on("change", (key) => {
39962
+ if (fieldKeys.includes(key)) {
39963
+ this.dataChangeNotify([key]);
39964
+ }
39965
+ });
39966
+ return panelData;
39938
39967
  }
39939
39968
  /**
39940
39969
  * 通知所有面板成员面板操作过程中的数据变更
@@ -39970,7 +39999,6 @@ var PanelController = class extends ControlController {
39970
39999
  return;
39971
40000
  }
39972
40001
  this.state.data[name] = value;
39973
- this.dataChangeNotify([name]);
39974
40002
  }
39975
40003
  initControlScheduler(logics = []) {
39976
40004
  const actualLogics = [...logics];
@@ -40193,6 +40221,8 @@ var PanelItemController = class {
40193
40221
  this.state.class.label.push(labelSysCss.cssName);
40194
40222
  }
40195
40223
  }
40224
+ destroy() {
40225
+ }
40196
40226
  /**
40197
40227
  * 创建面板状态对象
40198
40228
  *
@@ -43078,9 +43108,9 @@ var MapController = class extends MDControlController {
43078
43108
  const tempareaData = [];
43079
43109
  const temppointData = [];
43080
43110
  result.forEach((item) => {
43081
- if (item._type === "area") {
43111
+ if (item._itemStyle === "REGION") {
43082
43112
  tempareaData.push(item);
43083
- } else if (item._type === "point") {
43113
+ } else if (item._itemStyle === "POINT") {
43084
43114
  temppointData.push(item);
43085
43115
  }
43086
43116
  });
@@ -44829,16 +44859,13 @@ var AppUILogicExecutor = class extends LogicExecutor {
44829
44859
  }
44830
44860
  }
44831
44861
  /**
44832
- * 执行应用预置界面逻辑opendata
44862
+ * 执行应用预置界面逻辑 opendata
44833
44863
  *
44834
- * @author lxm
44835
- * @date 2022-08-22 14:08:03
44836
- * @export
44837
- * @param {IPSAppUIOpenDataLogic} appUILogic 应用预置界面逻辑opendata模型对象
44838
- * @param {IContext} context 上下文参数
44839
- * @param {(IData | null)} data 数据集合
44840
- * @param {IParams} params 视图参数
44841
- * @param {IData} [opts] 额外参数,event是js原生事件
44864
+ * @author chitanda
44865
+ * @date 2023-11-02 11:11:36
44866
+ * @param {IAppUIOpenDataLogic} appUILogic 应用预置界面逻辑 opendata 模型对象
44867
+ * @param {IUILogicParams} parameters
44868
+ * @return {*} {Promise<IModalData>}
44842
44869
  */
44843
44870
  async executeOpenDataAppUILogic(appUILogic, parameters) {
44844
44871
  const { context, params, ...rest } = parameters;
@@ -44885,16 +44912,18 @@ var AppUILogicExecutor = class extends LogicExecutor {
44885
44912
  );
44886
44913
  }
44887
44914
  async calcOpenViewRef(appUILogic, parameters) {
44888
- const appDataEntityId = parameters.view.model.appDataEntityId;
44889
- const formTypeName = await getFormTypeFieldName(appDataEntityId);
44890
- if (!formTypeName) {
44915
+ const appDataEntity = await ibiz.hub.getAppDataEntity(
44916
+ parameters.view.model.appDataEntityId
44917
+ );
44918
+ const typeFileName = appDataEntity.formTypeAppDEFieldId || appDataEntity.dataTypeAppDEFieldId;
44919
+ if (!typeFileName) {
44891
44920
  throw new RuntimeModelError62(
44892
44921
  appUILogic,
44893
- "".concat(appDataEntityId, "\u5B9E\u4F53\u7F3A\u5C11\u8868\u5355\u7C7B\u578B\u5E94\u7528\u5B9E\u4F53\u5C5E\u6027")
44922
+ "".concat(appDataEntity.codeName, "[\u591A\u8868\u5355\u5B9E\u4F53] or [\u7D22\u5F15\u5B9E\u4F53]\u7F3A\u5C11\u7C7B\u578B\u5C5E\u6027\u914D\u7F6E")
44894
44923
  );
44895
44924
  }
44896
44925
  const { data } = parameters;
44897
- const formTypeValue = data[0][formTypeName];
44926
+ const formTypeValue = data[0][typeFileName];
44898
44927
  if (!formTypeValue) {
44899
44928
  throw new RuntimeModelError62(appUILogic, "\u6570\u636E\u6E90\u65E0\u8868\u5355\u7C7B\u578B\u5E94\u7528\u5B9E\u4F53\u5C5E\u6027\u503C");
44900
44929
  }
@@ -45543,7 +45572,6 @@ export {
45543
45572
  getDefaultValue,
45544
45573
  getEditorProvider,
45545
45574
  getFormDetailProvider,
45546
- getFormTypeFieldName,
45547
45575
  getGridColumnProvider,
45548
45576
  getMatchResPath,
45549
45577
  getOriginData,