@ibiz-template/runtime 0.1.24 → 0.1.25

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 (40) hide show
  1. package/dist/index.esm.js +60 -18
  2. package/dist/index.system.min.js +1 -1
  3. package/dist/index.system.min.js.map +1 -1
  4. package/out/config/global-config.d.ts.map +1 -1
  5. package/out/config/global-config.js +1 -0
  6. package/out/controller/common/control/control.controller.d.ts +4 -4
  7. package/out/controller/common/control/control.controller.d.ts.map +1 -1
  8. package/out/controller/common/control/control.controller.js +2 -2
  9. package/out/controller/control/exp-bar/calendar-exp-bar.controller.d.ts.map +1 -1
  10. package/out/controller/control/exp-bar/calendar-exp-bar.controller.js +1 -0
  11. package/out/controller/control/exp-bar/exp-bar.controller.d.ts +10 -0
  12. package/out/controller/control/exp-bar/exp-bar.controller.d.ts.map +1 -1
  13. package/out/controller/control/exp-bar/exp-bar.controller.js +32 -7
  14. package/out/controller/control/exp-bar/tree-exp-bar.controller.d.ts.map +1 -1
  15. package/out/controller/control/exp-bar/tree-exp-bar.controller.js +1 -0
  16. package/out/interface/common/i-global-config/i-global-view-config.d.ts +8 -0
  17. package/out/interface/common/i-global-config/i-global-view-config.d.ts.map +1 -1
  18. package/out/interface/controller/controller/control/i-exp-bar-control.controller.d.ts +10 -0
  19. package/out/interface/controller/controller/control/i-exp-bar-control.controller.d.ts.map +1 -1
  20. package/out/interface/provider/i-control.provider.d.ts +15 -0
  21. package/out/interface/provider/i-control.provider.d.ts.map +1 -1
  22. package/out/interface/provider/i-view.provider.d.ts +15 -0
  23. package/out/interface/provider/i-view.provider.d.ts.map +1 -1
  24. package/out/service/vo/control.vo.d.ts.map +1 -1
  25. package/out/service/vo/control.vo.js +9 -12
  26. package/out/service/vo/ui-map-field.d.ts +7 -0
  27. package/out/service/vo/ui-map-field.d.ts.map +1 -1
  28. package/out/service/vo/ui-map-field.js +24 -0
  29. package/package.json +2 -2
  30. package/src/config/global-config.ts +1 -0
  31. package/src/controller/common/control/control.controller.ts +4 -4
  32. package/src/controller/control/exp-bar/calendar-exp-bar.controller.ts +1 -0
  33. package/src/controller/control/exp-bar/exp-bar.controller.ts +35 -7
  34. package/src/controller/control/exp-bar/tree-exp-bar.controller.ts +1 -0
  35. package/src/interface/common/i-global-config/i-global-view-config.ts +9 -0
  36. package/src/interface/controller/controller/control/i-exp-bar-control.controller.ts +8 -0
  37. package/src/interface/provider/i-control.provider.ts +22 -0
  38. package/src/interface/provider/i-view.provider.ts +22 -0
  39. package/src/service/vo/control.vo.ts +10 -15
  40. package/src/service/vo/ui-map-field.ts +28 -0
package/dist/index.esm.js CHANGED
@@ -6158,7 +6158,8 @@ var GlobalConfig = class {
6158
6158
  constructor() {
6159
6159
  // 全局视图配置
6160
6160
  this.view = {
6161
- enableDataInfoBar: true
6161
+ enableDataInfoBar: true,
6162
+ enableExpCache: true
6162
6163
  };
6163
6164
  // 全局表格配置
6164
6165
  this.grid = {
@@ -13222,7 +13223,6 @@ var DEService = class {
13222
13223
  };
13223
13224
 
13224
13225
  // src/service/vo/control.vo.ts
13225
- import { DataTypes } from "@ibiz-template/core";
13226
13226
  import { clone as clone10, isNil as isNil8 } from "ramda";
13227
13227
  var ControlVO = class _ControlVO {
13228
13228
  /**
@@ -13318,8 +13318,7 @@ var ControlVO = class _ControlVO {
13318
13318
  });
13319
13319
  this.$dataUIMap.forEach((mapField, key) => {
13320
13320
  const value = mapField.dataKey;
13321
- const forceNumber = mapField.dataType !== void 0 && DataTypes.isNumber(mapField.dataType);
13322
- this.linkProperty(key, value, mapField.isOriginField, forceNumber);
13321
+ this.linkProperty(key, value, mapField);
13323
13322
  });
13324
13323
  Object.keys($origin).forEach((value) => {
13325
13324
  if (!Object.prototype.hasOwnProperty.call(this, value)) {
@@ -13339,7 +13338,8 @@ var ControlVO = class _ControlVO {
13339
13338
  * @param {boolean} [forceNumber=false] 是否强制转换成数值,是的话set的时候转成数值
13340
13339
  * @returns {*}
13341
13340
  */
13342
- linkProperty(uiKey, dataKey, isOriginField = true, forceNumber = false) {
13341
+ linkProperty(uiKey, dataKey, mapField) {
13342
+ const isOriginField = mapField ? mapField.isOriginField : true;
13343
13343
  if (uiKey === "srfuf") {
13344
13344
  return;
13345
13345
  }
@@ -13351,14 +13351,12 @@ var ControlVO = class _ControlVO {
13351
13351
  return uiKey === "srfkey" ? this.$origin[dataKey] || this.$origin[uiKey] : this.$origin[dataKey];
13352
13352
  },
13353
13353
  set(val) {
13354
- let val2 = forceNumber && !isNil8(val) && val !== "" ? Number(val) : val;
13355
- if (Number.isNaN(val2)) {
13356
- val2 = val;
13357
- ibiz.log.error("".concat(val, "\u4E0D\u80FD\u8F6C\u6362\u6210\u6570\u5B57"));
13358
- }
13359
- this.$origin[dataKey] = val2;
13354
+ this.$origin[dataKey] = mapField ? mapField.convertVal(val) : val;
13360
13355
  }
13361
13356
  });
13357
+ if (mapField) {
13358
+ this[uiKey] = mapField.convertVal(this.$origin[dataKey]);
13359
+ }
13362
13360
  } else {
13363
13361
  Object.defineProperty(this, uiKey, {
13364
13362
  enumerable: true,
@@ -14037,6 +14035,7 @@ var TreeStaticNodeData = class extends TreeNodeData {
14037
14035
  };
14038
14036
 
14039
14037
  // src/service/vo/ui-map-field.ts
14038
+ import { DataTypes } from "@ibiz-template/core";
14040
14039
  import { isNil as isNil9 } from "ramda";
14041
14040
  var UIMapField = class {
14042
14041
  constructor(uiKey, dataKey, opts = {}) {
@@ -14065,6 +14064,26 @@ var UIMapField = class {
14065
14064
  this.dataType = opts.dataType;
14066
14065
  }
14067
14066
  }
14067
+ /**
14068
+ * 值转换
14069
+ * @author lxm
14070
+ * @date 2023-09-14 06:45:44
14071
+ * @param {unknown} value 原值
14072
+ */
14073
+ convertVal(value) {
14074
+ if (!this.dataType) {
14075
+ return value;
14076
+ }
14077
+ if (DataTypes.isNumber(this.dataType)) {
14078
+ const numVal = !isNil9(value) && value !== "" ? Number(value) : value;
14079
+ if (Number.isNaN(numVal)) {
14080
+ ibiz.log.debug("".concat(value, "\u4E0D\u80FD\u8F6C\u6362\u6210\u6570\u5B57"));
14081
+ return value;
14082
+ }
14083
+ return numVal;
14084
+ }
14085
+ return value;
14086
+ }
14068
14087
  };
14069
14088
 
14070
14089
  // src/service/vo/calendar-item-data/calendar-item-data.ts
@@ -15887,10 +15906,10 @@ var ControlController = class extends BaseController {
15887
15906
  constructor(model, context, params, ctx) {
15888
15907
  super(model, context, params, ctx);
15889
15908
  /**
15890
- * 子部件适配器
15909
+ * 子适配器
15891
15910
  * @author lxm
15892
15911
  * @date 2023-07-19 04:14:50
15893
- * @type {{ [key: string]: IControlProvider }}
15912
+ * @type {{ [key: string]: IProvider }}
15894
15913
  */
15895
15914
  this.providers = {};
15896
15915
  this.registerToCtx();
@@ -20543,13 +20562,20 @@ var ExpBarControlController = class extends ControlController {
20543
20562
  const selectItem = (_a = this.xDataController) == null ? void 0 : _a.state.items.find(
20544
20563
  (item) => item[this.navKeyName] === this.state.srfnav
20545
20564
  );
20546
- if (selectItem) {
20565
+ const routeAndHasSub = this.routeDepth && window.location.hash.split("/").length > this.routeDepth * 2 + 2;
20566
+ console.log("routeAndHasSub", routeAndHasSub);
20567
+ if (routeAndHasSub) {
20568
+ if (selectItem) {
20569
+ this.xDataController.setSelection([selectItem]);
20570
+ }
20571
+ this._evt.emit("onNavViewChange", {
20572
+ navViewMsg: { key: this.state.srfnav },
20573
+ context: this.context
20574
+ });
20575
+ } else if (selectItem) {
20576
+ this.xDataController.setActive(selectItem);
20547
20577
  this.xDataController.setSelection([selectItem]);
20548
20578
  }
20549
- this._evt.emit("onNavViewChange", {
20550
- navViewMsg: { key: this.state.srfnav },
20551
- context: this.context
20552
- });
20553
20579
  }
20554
20580
  /**
20555
20581
  * 导航页面首次打开且没有回显时,
@@ -20562,6 +20588,7 @@ var ExpBarControlController = class extends ControlController {
20562
20588
  defaultNavByFirstItem() {
20563
20589
  const data = this.xDataController.state.items[0];
20564
20590
  if (!data) {
20591
+ this.state.srfnav = "";
20565
20592
  this._evt.emit("onNavViewChange", { navViewMsg: { key: "" } });
20566
20593
  return;
20567
20594
  }
@@ -20614,6 +20641,7 @@ var ExpBarControlController = class extends ControlController {
20614
20641
  const tempContext = Object.assign(context.clone(), resultContext, {
20615
20642
  currentSrfNav: data[this.navKeyName]
20616
20643
  });
20644
+ this.state.srfnav = data[this.navKeyName];
20617
20645
  const tempParams = { ...resultParams };
20618
20646
  return { context: tempContext, params: tempParams };
20619
20647
  }
@@ -20680,6 +20708,18 @@ var ExpBarControlController = class extends ControlController {
20680
20708
  }
20681
20709
  });
20682
20710
  }
20711
+ /**
20712
+ * 路由变更处理回调
20713
+ * @author lxm
20714
+ * @date 2023-09-14 07:03:39
20715
+ * @param {{ srfnav?: string; path: string }} info 当前系统的路由的从一级到最后一级的所有路径。
20716
+ */
20717
+ onRouterChange(info) {
20718
+ if (this.state.srfnav !== info.srfnav) {
20719
+ this.state.srfnav = info.srfnav;
20720
+ this.defaultNavBySrfnav();
20721
+ }
20722
+ }
20683
20723
  };
20684
20724
 
20685
20725
  // src/controller/control/exp-bar/calendar-exp-bar.controller.ts
@@ -20743,6 +20783,7 @@ var CalendarExpBarController = class extends ExpBarControlController {
20743
20783
  this.params
20744
20784
  );
20745
20785
  context.currentSrfNav = item.navId;
20786
+ this.state.srfnav = item.navId;
20746
20787
  return {
20747
20788
  key: item.navId,
20748
20789
  context,
@@ -20838,6 +20879,7 @@ var TreeExpBarController = class extends ExpBarControlController {
20838
20879
  }
20839
20880
  const result = this.prepareParams(nodeModel, deData, context, params);
20840
20881
  result.context.currentSrfNav = nodeId;
20882
+ this.state.srfnav = nodeId;
20841
20883
  return {
20842
20884
  key: nodeId,
20843
20885
  viewId: nodeModel.navAppViewId,