@ibiz-template/vue3-util 0.7.38-alpha.33 → 0.7.38-alpha.57

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 (109) hide show
  1. package/dist/index.min.css +1 -1
  2. package/dist/index.system.min.js +1 -1
  3. package/es/common/badge/badge.d.ts +9 -0
  4. package/es/common/badge/badge.d.ts.map +1 -1
  5. package/es/common/badge/badge.mjs +5 -1
  6. package/es/common/code-list/code-list.d.ts +1 -1
  7. package/es/common/code-list/code-list.d.ts.map +1 -1
  8. package/es/common/code-list/code-list.mjs +1 -1
  9. package/es/common/control-base/control-base.css +1 -1
  10. package/es/common/control-base/control-base.d.ts.map +1 -1
  11. package/es/common/control-base/control-base.mjs +65 -2
  12. package/es/common/custom-render/custom-render.css +1 -0
  13. package/es/common/custom-render/custom-render.d.ts +18 -0
  14. package/es/common/custom-render/custom-render.d.ts.map +1 -0
  15. package/es/common/custom-render/custom-render.mjs +85 -0
  16. package/es/common/icon/icon.d.ts.map +1 -1
  17. package/es/common/icon/icon.mjs +5 -0
  18. package/es/common/index.d.ts +1 -0
  19. package/es/common/index.d.ts.map +1 -1
  20. package/es/common/index.mjs +1 -0
  21. package/es/common/view-shell/view-shell.d.ts.map +1 -1
  22. package/es/common/view-shell/view-shell.mjs +63 -62
  23. package/es/index.mjs +4 -1
  24. package/es/locale/en/index.d.ts +2 -0
  25. package/es/locale/en/index.d.ts.map +1 -1
  26. package/es/locale/en/index.mjs +3 -1
  27. package/es/locale/zh-CN/index.d.ts +2 -0
  28. package/es/locale/zh-CN/index.d.ts.map +1 -1
  29. package/es/locale/zh-CN/index.mjs +3 -1
  30. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.controller.d.ts +126 -0
  31. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.controller.d.ts.map +1 -0
  32. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.controller.mjs +193 -0
  33. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.css +1 -0
  34. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.d.ts +27 -0
  35. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.d.ts.map +1 -0
  36. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.mjs +68 -0
  37. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.provider.d.ts +15 -0
  38. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.provider.d.ts.map +1 -0
  39. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.provider.mjs +15 -0
  40. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.state.d.ts +54 -0
  41. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.state.d.ts.map +1 -0
  42. package/es/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.state.mjs +7 -0
  43. package/es/panel-component/auth-wxmp-qrcode/index.d.ts +24 -0
  44. package/es/panel-component/auth-wxmp-qrcode/index.d.ts.map +1 -0
  45. package/es/panel-component/auth-wxmp-qrcode/index.mjs +19 -0
  46. package/es/panel-component/index.d.ts +1 -0
  47. package/es/panel-component/index.d.ts.map +1 -1
  48. package/es/panel-component/index.mjs +1 -0
  49. package/es/panel-component/multi-data-container/multi-data-container.controller.d.ts +9 -0
  50. package/es/panel-component/multi-data-container/multi-data-container.controller.d.ts.map +1 -1
  51. package/es/panel-component/multi-data-container/multi-data-container.controller.mjs +15 -2
  52. package/es/panel-component/multi-data-container-raw/multi-data-container-raw.controller.d.ts +8 -0
  53. package/es/panel-component/multi-data-container-raw/multi-data-container-raw.controller.d.ts.map +1 -1
  54. package/es/panel-component/multi-data-container-raw/multi-data-container-raw.controller.mjs +14 -2
  55. package/es/panel-component/nav-pos/nav-pos.controller.d.ts.map +1 -1
  56. package/es/panel-component/nav-pos/nav-pos.controller.mjs +4 -2
  57. package/es/panel-component/single-data-container/single-data-container.controller.d.ts +8 -0
  58. package/es/panel-component/single-data-container/single-data-container.controller.d.ts.map +1 -1
  59. package/es/panel-component/single-data-container/single-data-container.controller.mjs +14 -2
  60. package/es/props/editor/common.d.ts +2 -2
  61. package/es/props/editor/common.d.ts.map +1 -1
  62. package/es/props/editor/common.mjs +2 -2
  63. package/es/use/index.mjs +1 -0
  64. package/es/use/view/index.d.ts +1 -0
  65. package/es/use/view/index.d.ts.map +1 -1
  66. package/es/use/view/index.mjs +1 -0
  67. package/es/use/view/use-view-operation/use-view-operation.d.ts +11 -0
  68. package/es/use/view/use-view-operation/use-view-operation.d.ts.map +1 -0
  69. package/es/use/view/use-view-operation/use-view-operation.mjs +27 -0
  70. package/es/util/index.mjs +1 -1
  71. package/es/util/render/render.d.ts +10 -0
  72. package/es/util/render/render.d.ts.map +1 -1
  73. package/es/util/render/render.mjs +8 -1
  74. package/es/util/route/route.d.ts.map +1 -1
  75. package/es/util/route/route.mjs +10 -4
  76. package/es/view/common/view.d.ts.map +1 -1
  77. package/es/view/common/view.mjs +2 -0
  78. package/lib/common/badge/badge.cjs +5 -1
  79. package/lib/common/code-list/code-list.cjs +1 -1
  80. package/lib/common/control-base/control-base.cjs +64 -1
  81. package/lib/common/control-base/control-base.css +1 -1
  82. package/lib/common/custom-render/custom-render.cjs +87 -0
  83. package/lib/common/custom-render/custom-render.css +1 -0
  84. package/lib/common/icon/icon.cjs +5 -0
  85. package/lib/common/index.cjs +2 -0
  86. package/lib/common/view-shell/view-shell.cjs +63 -62
  87. package/lib/index.cjs +30 -23
  88. package/lib/locale/en/index.cjs +3 -1
  89. package/lib/locale/zh-CN/index.cjs +3 -1
  90. package/lib/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.cjs +70 -0
  91. package/lib/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.controller.cjs +195 -0
  92. package/lib/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.css +1 -0
  93. package/lib/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.provider.cjs +17 -0
  94. package/lib/panel-component/auth-wxmp-qrcode/auth-wxmp-qrcode.state.cjs +9 -0
  95. package/lib/panel-component/auth-wxmp-qrcode/index.cjs +24 -0
  96. package/lib/panel-component/index.cjs +2 -0
  97. package/lib/panel-component/multi-data-container/multi-data-container.controller.cjs +14 -1
  98. package/lib/panel-component/multi-data-container-raw/multi-data-container-raw.controller.cjs +13 -1
  99. package/lib/panel-component/nav-pos/nav-pos.controller.cjs +4 -2
  100. package/lib/panel-component/single-data-container/single-data-container.controller.cjs +13 -1
  101. package/lib/props/editor/common.cjs +2 -2
  102. package/lib/use/index.cjs +2 -0
  103. package/lib/use/view/index.cjs +2 -0
  104. package/lib/use/view/use-view-operation/use-view-operation.cjs +29 -0
  105. package/lib/util/index.cjs +1 -0
  106. package/lib/util/render/render.cjs +8 -0
  107. package/lib/util/route/route.cjs +10 -4
  108. package/lib/view/common/view.cjs +2 -0
  109. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"multi-data-container-raw.controller.d.ts","sourceRoot":"","sources":["../../../src/panel-component/multi-data-container-raw/multi-data-container-raw.controller.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,gBAAgB,EAChB,6BAA6B,EAC7B,6BAA6B,EAC7B,oBAAoB,EACpB,kBAAkB,EAElB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAEjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAkB,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E;;;;;;GAMG;AACH,qBAAa,+BACX,SAAQ,mBAAmB,CAAC,eAAe,CAC3C,YAAW,6BAA6B;IAEhC,KAAK,EAAE,0BAA0B,CAAC;IAE1C,QAAQ,CAAC,eAAe,QAAQ;IAEhC;;;;OAIG;IACH,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAE,CAAM;IAEzD;;;;;OAKG;IACH,SAAS,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAA;KAAE,CAAM;IAEtD;;;;;;OAMG;IACH,IAAI,IAAI,IAAI,KAAK,CAEhB;IAED,SAAS,CAAC,WAAW,IAAI,0BAA0B;cAInC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAMvC;;;;;;;;;OASG;cACa,wBAAwB,CACtC,UAAU,GAAE,UAAU,EAAE,GAAG,SAAiC,EAC5D,KAAK,GAAE,gBAA6B,EACpC,MAAM,GAAE,6BAA6B,GAAG,SAAgB,GACvD,OAAO,CAAC,IAAI,CAAC;IA4ChB;;;;;;OAMG;IACH,SAAS,CAAC,gBAAgB,IAAI,KAAK;IAgBnC;;;;;OAKG;IACH,SAAS,CAAC,iBAAiB,IAAI,IAAI;IA0EnC;;;;;OAKG;IACH,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI;IAMlD;;;;;;OAMG;IACG,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5C;;;;;;OAMG;cACa,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCjD;;;;;OAKG;IACH,SAAS,CAAC,uBAAuB,IAAI,IAAI;IAYzC;;;;;;OAMG;cACa,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BlD;;;;;;;;OAQG;IACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IA2BrE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3D,OAAO,IAAI,IAAI;CAOhB"}
1
+ {"version":3,"file":"multi-data-container-raw.controller.d.ts","sourceRoot":"","sources":["../../../src/panel-component/multi-data-container-raw/multi-data-container-raw.controller.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,gBAAgB,EAChB,6BAA6B,EAC7B,6BAA6B,EAC7B,oBAAoB,EACpB,kBAAkB,EAElB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAEjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAkB,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E;;;;;;GAMG;AACH,qBAAa,+BACX,SAAQ,mBAAmB,CAAC,eAAe,CAC3C,YAAW,6BAA6B;IAEhC,KAAK,EAAE,0BAA0B,CAAC;IAE1C,QAAQ,CAAC,eAAe,QAAQ;IAEhC;;;;OAIG;IACH,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAE,CAAM;IAEzD;;;;;OAKG;IACH,SAAS,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAA;KAAE,CAAM;IAEtD;;;;;;OAMG;IACH,IAAI,IAAI,IAAI,KAAK,CAEhB;IAED,SAAS,CAAC,WAAW,IAAI,0BAA0B;cAInC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAKvC;;;;;;OAMG;IACG,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/D;;;;;;;;;OASG;cACa,wBAAwB,CACtC,UAAU,GAAE,UAAU,EAAE,GAAG,SAAiC,EAC5D,KAAK,GAAE,gBAA6B,EACpC,MAAM,GAAE,6BAA6B,GAAG,SAAgB,GACvD,OAAO,CAAC,IAAI,CAAC;IA4ChB;;;;;;OAMG;IACH,SAAS,CAAC,gBAAgB,IAAI,KAAK;IAgBnC;;;;;OAKG;IACH,SAAS,CAAC,iBAAiB,IAAI,IAAI;IA0EnC;;;;;OAKG;IACH,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI;IAMlD;;;;;;OAMG;IACG,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5C;;;;;;OAMG;cACa,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCjD;;;;;OAKG;IACH,SAAS,CAAC,uBAAuB,IAAI,IAAI;IAYzC;;;;;;OAMG;cACa,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BlD;;;;;;;;OAQG;IACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IA2BrE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3D,OAAO,IAAI,IAAI;CAOhB"}
@@ -1,5 +1,5 @@
1
1
  import { ModelError, RuntimeModelError, RuntimeError } from '@ibiz-template/core';
2
- import { PanelItemController, getPanelItemProvider, isDataContainer, convertNavData, ScriptFactory, PanelNotifyState, execDELogicById } from '@ibiz-template/runtime';
2
+ import { PanelItemController, PanelNotifyState, getPanelItemProvider, isDataContainer, convertNavData, ScriptFactory, execDELogicById } from '@ibiz-template/runtime';
3
3
  import { MultiDataContainerRawState } from './multi-data-container-raw.state.mjs';
4
4
 
5
5
  "use strict";
@@ -38,7 +38,19 @@ class MultiDataContainerRawController extends PanelItemController {
38
38
  async onInit() {
39
39
  await super.onInit();
40
40
  await this.initPanelItemControllers();
41
- this.initContainerData();
41
+ }
42
+ /**
43
+ * 面板状态变更通知
44
+ *
45
+ * @param {PanelNotifyState} _state
46
+ * @return {*} {Promise<void>}
47
+ * @memberof MultiDataContainerRawController
48
+ */
49
+ async panelStateNotify(_state) {
50
+ super.panelStateNotify(_state);
51
+ if (_state === PanelNotifyState.LOAD) {
52
+ this.initContainerData();
53
+ }
42
54
  }
43
55
  /**
44
56
  * 初始化面板子项控制器
@@ -1 +1 @@
1
- {"version":3,"file":"nav-pos.controller.d.ts","sourceRoot":"","sources":["../../../src/panel-component/nav-pos/nav-pos.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,MAAM,EAGN,0BAA0B,EAE1B,WAAW,EAEX,mBAAmB,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,6BAA6B,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAK9C;;;;;;GAMG;AACH,qBAAa,gBACX,SAAQ,mBAAmB,CAAC,aAAa,CACzC,YAAW,0BAA0B;IAErC;;;;;OAKG;IACK,KAAK,EAAE,WAAW,CAAC;IAE3B;;;;;OAKG;IACH,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAM;IAE3C;;;;;OAKG;IACH,aAAa,EAAG,WAAW,CAAC;IAE5B;;;;;OAKG;IACH,MAAM,EAAG,MAAM,CAAC;IAEhB;;;;;OAKG;IACH,WAAW,EAAE,MAAM,EAAE,CAAM;IAE3B;;;;;;;OAOG;IACH,aAAa,EAAE,KAAK,CAAM;IAE1B;;;;;OAKG;IACH,cAAc,EAAE,OAAO,CAAS;IAEhC;;;;;;;OAOG;IACH,IAAI,KAAK,IAAI,6BAA6B,CAEzC;IAED;;;;;;;;OAQG;IACH,iBAAiB,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO;IAUnD;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;cAIf,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAoDvC;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,IAAI,WAAW;IAIpC;;;;;;OAMG;IACH,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAEnC;IAED;;;;;;;;OAQG;IACH,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM;IAOhD;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,6BAA6B,GAAG,IAAI;IAazD;;;;;;;OAOG;IACH,cAAc,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAiC7C;;;;;OAKG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI1B;;;;;OAKG;IACH,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IASrC,YAAY,IAAI,IAAI;IAKpB;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAiBxC;;;;;OAKG;IACG,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA0E7D;;;;;OAKG;IACH,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAM/C;;;;;;;OAOG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI;CAWtC"}
1
+ {"version":3,"file":"nav-pos.controller.d.ts","sourceRoot":"","sources":["../../../src/panel-component/nav-pos/nav-pos.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,MAAM,EAGN,0BAA0B,EAE1B,WAAW,EAEX,mBAAmB,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,6BAA6B,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAK9C;;;;;;GAMG;AACH,qBAAa,gBACX,SAAQ,mBAAmB,CAAC,aAAa,CACzC,YAAW,0BAA0B;IAErC;;;;;OAKG;IACK,KAAK,EAAE,WAAW,CAAC;IAE3B;;;;;OAKG;IACH,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAM;IAE3C;;;;;OAKG;IACH,aAAa,EAAG,WAAW,CAAC;IAE5B;;;;;OAKG;IACH,MAAM,EAAG,MAAM,CAAC;IAEhB;;;;;OAKG;IACH,WAAW,EAAE,MAAM,EAAE,CAAM;IAE3B;;;;;;;OAOG;IACH,aAAa,EAAE,KAAK,CAAM;IAE1B;;;;;OAKG;IACH,cAAc,EAAE,OAAO,CAAS;IAEhC;;;;;;;OAOG;IACH,IAAI,KAAK,IAAI,6BAA6B,CAEzC;IAED;;;;;;;;OAQG;IACH,iBAAiB,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO;IAUnD;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;cAIf,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAoDvC;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,IAAI,WAAW;IAIpC;;;;;;OAMG;IACH,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAEnC;IAED;;;;;;;;OAQG;IACH,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM;IAOhD;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,6BAA6B,GAAG,IAAI;IAazD;;;;;;;OAOG;IACH,cAAc,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAiC7C;;;;;OAKG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI1B;;;;;OAKG;IACH,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IASrC,YAAY,IAAI,IAAI;IAKpB;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAiBxC;;;;;OAKG;IACG,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA4E7D;;;;;OAKG;IACH,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAM/C;;;;;;;OAOG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI;CAWtC"}
@@ -299,8 +299,10 @@ class NavPosController extends PanelItemController {
299
299
  openViewMsg.params,
300
300
  {
301
301
  openMode: "INDEXVIEWTAB",
302
- replace: !this.state.currentKey,
303
- ...openViewMsg.modalOptions
302
+ modalOption: {
303
+ replace: !this.state.currentKey,
304
+ ...openViewMsg.modalOptions
305
+ }
304
306
  }
305
307
  );
306
308
  this.state.isLoading = false;
@@ -41,6 +41,14 @@ export declare class SingleDataContainerController extends PanelItemController<I
41
41
  get data(): IData;
42
42
  protected createState(): SingleDataContainerState;
43
43
  protected onInit(): Promise<void>;
44
+ /**
45
+ * 面板状态变更通知
46
+ *
47
+ * @param {PanelNotifyState} _state
48
+ * @return {*} {Promise<void>}
49
+ * @memberof SingleDataContainerController
50
+ */
51
+ panelStateNotify(_state: PanelNotifyState): Promise<void>;
44
52
  /**
45
53
  * 初始化面板成员控制器
46
54
  *
@@ -1 +1 @@
1
- {"version":3,"file":"single-data-container.controller.d.ts","sourceRoot":"","sources":["../../../src/panel-component/single-data-container/single-data-container.controller.ts"],"names":[],"mappings":"AAKA,OAAO,EAKL,gBAAgB,EAChB,6BAA6B,EAC7B,6BAA6B,EAC7B,oBAAoB,EACpB,kBAAkB,EAElB,eAAe,EAEf,mBAAmB,EACnB,gBAAgB,EAEjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAkB,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE;;;;;;GAMG;AACH,qBAAa,6BACX,SAAQ,mBAAmB,CAAC,eAAe,CAC3C,YAAW,6BAA6B;IAEhC,KAAK,EAAE,wBAAwB,CAAC;IAExC,QAAQ,CAAC,eAAe,QAAQ;IAEhC;;;;;;OAMG;IACH,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAE,CAAM;IAEzD;;;;;;OAMG;IACH,SAAS,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAA;KAAE,CAAM;IAEtD;;;;;;OAMG;IACH,IAAI,IAAI,IAAI,KAAK,CAEhB;IAED,SAAS,CAAC,WAAW,IAAI,wBAAwB;cAIjC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAMvC;;;;;;OAMG;cACa,wBAAwB,CACtC,UAAU,GAAE,UAAU,EAAE,GAAG,SAAiC,EAC5D,KAAK,GAAE,gBAA6B,EACpC,MAAM,GAAE,6BAA6B,GAAG,SAAgB,GACvD,OAAO,CAAC,IAAI,CAAC;IA4ChB;;;;;;;OAOG;IACH,SAAS,CAAC,gBAAgB,IAAI,KAAK;IAgBnC;;;;;OAKG;IACH,SAAS,CAAC,iBAAiB,IAAI,IAAI;IA+EnC;;;;;OAKG;IACH,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI;IAMlD;;;;;OAKG;IACG,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBzC;;;;;OAKG;IACH,SAAS,CAAC,YAAY,IAAI,IAAI;IAI9B;;;;;;OAMG;cACa,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCjD;;;;;OAKG;IACH,SAAS,CAAC,uBAAuB,IAAI,IAAI;IAYzC;;;;;;OAMG;cACa,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BlD;;;;;;;OAOG;IACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IA2BrE;;;;;;OAMG;IACH,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI;IAM5C;;;;;OAKG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAa/D,OAAO,IAAI,IAAI;CAOhB"}
1
+ {"version":3,"file":"single-data-container.controller.d.ts","sourceRoot":"","sources":["../../../src/panel-component/single-data-container/single-data-container.controller.ts"],"names":[],"mappings":"AAKA,OAAO,EAKL,gBAAgB,EAChB,6BAA6B,EAC7B,6BAA6B,EAC7B,oBAAoB,EACpB,kBAAkB,EAElB,eAAe,EAEf,mBAAmB,EACnB,gBAAgB,EAEjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAkB,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE;;;;;;GAMG;AACH,qBAAa,6BACX,SAAQ,mBAAmB,CAAC,eAAe,CAC3C,YAAW,6BAA6B;IAEhC,KAAK,EAAE,wBAAwB,CAAC;IAExC,QAAQ,CAAC,eAAe,QAAQ;IAEhC;;;;;;OAMG;IACH,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAE,CAAM;IAEzD;;;;;;OAMG;IACH,SAAS,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAA;KAAE,CAAM;IAEtD;;;;;;OAMG;IACH,IAAI,IAAI,IAAI,KAAK,CAEhB;IAED,SAAS,CAAC,WAAW,IAAI,wBAAwB;cAIjC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAKvC;;;;;;OAMG;IACG,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/D;;;;;;OAMG;cACa,wBAAwB,CACtC,UAAU,GAAE,UAAU,EAAE,GAAG,SAAiC,EAC5D,KAAK,GAAE,gBAA6B,EACpC,MAAM,GAAE,6BAA6B,GAAG,SAAgB,GACvD,OAAO,CAAC,IAAI,CAAC;IA4ChB;;;;;;;OAOG;IACH,SAAS,CAAC,gBAAgB,IAAI,KAAK;IAgBnC;;;;;OAKG;IACH,SAAS,CAAC,iBAAiB,IAAI,IAAI;IA+EnC;;;;;OAKG;IACH,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI;IAMlD;;;;;OAKG;IACG,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBzC;;;;;OAKG;IACH,SAAS,CAAC,YAAY,IAAI,IAAI;IAI9B;;;;;;OAMG;cACa,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCjD;;;;;OAKG;IACH,SAAS,CAAC,uBAAuB,IAAI,IAAI;IAYzC;;;;;;OAMG;cACa,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BlD;;;;;;;OAOG;IACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IA2BrE;;;;;;OAMG;IACH,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI;IAM5C;;;;;OAKG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAa/D,OAAO,IAAI,IAAI;CAOhB"}
@@ -1,5 +1,5 @@
1
1
  import { ModelError, RuntimeModelError, RuntimeError } from '@ibiz-template/core';
2
- import { PanelItemController, getPanelItemProvider, isDataContainer, convertNavData, ScriptFactory, getAllPanelField, PanelData, PanelNotifyState, execDELogicById } from '@ibiz-template/runtime';
2
+ import { PanelItemController, PanelNotifyState, getPanelItemProvider, isDataContainer, convertNavData, ScriptFactory, getAllPanelField, PanelData, execDELogicById } from '@ibiz-template/runtime';
3
3
  import { SingleDataContainerState } from './single-data-container.state.mjs';
4
4
 
5
5
  "use strict";
@@ -41,7 +41,19 @@ class SingleDataContainerController extends PanelItemController {
41
41
  async onInit() {
42
42
  await super.onInit();
43
43
  await this.initPanelItemControllers();
44
- this.initContainerData();
44
+ }
45
+ /**
46
+ * 面板状态变更通知
47
+ *
48
+ * @param {PanelNotifyState} _state
49
+ * @return {*} {Promise<void>}
50
+ * @memberof SingleDataContainerController
51
+ */
52
+ async panelStateNotify(_state) {
53
+ super.panelStateNotify(_state);
54
+ if (_state === PanelNotifyState.LOAD) {
55
+ this.initContainerData();
56
+ }
45
57
  }
46
58
  /**
47
59
  * 初始化面板成员控制器
@@ -43,7 +43,7 @@ export declare function getEditorProps<C>(): {
43
43
  */
44
44
  export declare function getEditorEmits<V>(): {
45
45
  /** 值变更事件 */
46
- change: (_value: V, _name?: string) => boolean;
46
+ change: (_value: V, _name?: string, _ignore?: boolean) => boolean;
47
47
  /** 失焦事件 */
48
48
  blur: (_event?: IData) => boolean;
49
49
  /** 聚焦事件 */
@@ -64,7 +64,7 @@ export declare function getEditorEmits<V>(): {
64
64
  */
65
65
  export declare function getGridEditorEmits<V>(): {
66
66
  /** 值变更事件 */
67
- change: (_value: V, _name?: string) => boolean;
67
+ change: (_value: V, _name?: string, _ignore?: boolean) => boolean;
68
68
  /** 是否正在操作事件 */
69
69
  rowSave: () => boolean;
70
70
  };
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/props/editor/common.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;EAsB/B;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,CAAC;IAE5B,YAAY;qBACK,CAAC,UAAU,MAAM;IAClC,WAAW;oBACK,KAAK;IACrB,WAAW;qBACM,KAAK;IACtB,WAAW;qBACM,KAAK;IACtB,eAAe;4BACS,MAAM;EAEjC;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,CAAC;IAEhC,YAAY;qBACK,CAAC,UAAU,MAAM;IAClC,eAAe;;EAGlB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB;;;;EAMvC"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/props/editor/common.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;EAsB/B;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,CAAC;IAE5B,YAAY;qBACK,CAAC,UAAU,MAAM,YAAY,OAAO;IACrD,WAAW;oBACK,KAAK;IACrB,WAAW;qBACM,KAAK;IACtB,WAAW;qBACM,KAAK;IACtB,eAAe;4BACS,MAAM;EAEjC;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,CAAC;IAEhC,YAAY;qBACK,CAAC,UAAU,MAAM,YAAY,OAAO;IACrD,eAAe;;EAGlB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB;;;;EAMvC"}
@@ -27,7 +27,7 @@ function getEditorProps() {
27
27
  function getEditorEmits() {
28
28
  return {
29
29
  /** 值变更事件 */
30
- change: (_value, _name) => true,
30
+ change: (_value, _name, _ignore) => true,
31
31
  /** 失焦事件 */
32
32
  blur: (_event) => true,
33
33
  /** 聚焦事件 */
@@ -41,7 +41,7 @@ function getEditorEmits() {
41
41
  function getGridEditorEmits() {
42
42
  return {
43
43
  /** 值变更事件 */
44
- change: (_value, _name) => true,
44
+ change: (_value, _name, _ignore) => true,
45
45
  /** 是否正在操作事件 */
46
46
  rowSave: () => true
47
47
  };
package/es/use/index.mjs CHANGED
@@ -12,5 +12,6 @@ export { useLocalCacheKey } from './storage/index.mjs';
12
12
  export { useAutoFocusBlur } from './autofocus-blur/autofocus-blur.mjs';
13
13
  export { useControlController } from './control/use-control-controller/use-control-controller.mjs';
14
14
  export { useViewController } from './view/use-view-controller/use-view-controller.mjs';
15
+ export { useViewOperation } from './view/use-view-operation/use-view-operation.mjs';
15
16
 
16
17
  "use strict";
@@ -1,2 +1,3 @@
1
1
  export { useViewController } from './use-view-controller/use-view-controller';
2
+ export { useViewOperation } from './use-view-operation/use-view-operation';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/use/view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/use/view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export { useViewController } from './use-view-controller/use-view-controller.mjs';
2
+ export { useViewOperation } from './use-view-operation/use-view-operation.mjs';
2
3
 
3
4
  "use strict";
@@ -0,0 +1,11 @@
1
+ import { ViewController } from '@ibiz-template/runtime';
2
+ /**
3
+ * 监听视图操作
4
+ *
5
+ * @author tony001
6
+ * @date 2025-01-17 18:01:18
7
+ * @export
8
+ * @param {ViewController} view
9
+ */
10
+ export declare function useViewOperation(view: ViewController): void;
11
+ //# sourceMappingURL=use-view-operation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-view-operation.d.ts","sourceRoot":"","sources":["../../../../src/use/view/use-view-operation/use-view-operation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAsB3D"}
@@ -0,0 +1,27 @@
1
+ import { listenJSEvent } from '@ibiz-template/core';
2
+ import { onMounted, onUnmounted } from 'vue';
3
+
4
+ "use strict";
5
+ function useViewOperation(view) {
6
+ let listenJSEventFuncs = [];
7
+ onMounted(() => {
8
+ const viewElement = document.getElementById(view.id);
9
+ const listenJSEventNames = ["keydown", "click"];
10
+ if (!viewElement)
11
+ return;
12
+ listenJSEventFuncs = listenJSEventNames.map((eventName) => {
13
+ return listenJSEvent(viewElement, eventName, (event) => {
14
+ view.setOperateState("MANUAL");
15
+ });
16
+ });
17
+ });
18
+ onUnmounted(() => {
19
+ if (listenJSEventFuncs && listenJSEventFuncs.length > 0) {
20
+ listenJSEventFuncs.forEach((listenJSEventFunc) => {
21
+ listenJSEventFunc();
22
+ });
23
+ }
24
+ });
25
+ }
26
+
27
+ export { useViewOperation };
package/es/util/index.mjs CHANGED
@@ -2,7 +2,7 @@ export { calcResRoutePath, excludeViewTypes, generateRoutePath, generateRoutePat
2
2
  export { RouteListener } from './route/route-listener.mjs';
3
3
  export { withInstall } from './install.mjs';
4
4
  export { prepareControl } from './control/prepare-control.mjs';
5
- export { renderString } from './render/render.mjs';
5
+ export { hasEmptyPanelRenderer, renderString } from './render/render.mjs';
6
6
  export { OverlayContainer } from './overlay-container/overlay-container.mjs';
7
7
  export { OverlayPopoverContainer } from './overlay-popover-container/overlay-popover-container.mjs';
8
8
  export { createOverlayView, getDrawerPlacement, openViewDrawer, openViewFloatWindow, openViewModal, openViewPopover } from './overlay-view-util/overlay-view-util.mjs';
@@ -1,3 +1,4 @@
1
+ import { ControlController } from '@ibiz-template/runtime';
1
2
  /**
2
3
  * 把未知格式的值绘制成字符串
3
4
  * - 空值输出空字符串
@@ -10,4 +11,13 @@
10
11
  * @return {*} {string}
11
12
  */
12
13
  export declare function renderString(value: unknown): string;
14
+ /**
15
+ * 检查部件绘制器集合是否具有无数据绘制器
16
+ * @author ljx
17
+ * @date 2024-01-17 18:51:23
18
+ * @export
19
+ * @param {ControlController} c 部件控制器
20
+ * @return {*} 返回一个布尔值,表示是否具有无数据绘制器
21
+ */
22
+ export declare const hasEmptyPanelRenderer: (c: ControlController) => boolean;
13
23
  //# sourceMappingURL=render.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/util/render/render.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAiBnD"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/util/render/render.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAiBnD;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,MAAO,iBAAiB,KAAG,OAO5D,CAAC"}
@@ -19,5 +19,12 @@ function renderString(value) {
19
19
  }
20
20
  return "";
21
21
  }
22
+ const hasEmptyPanelRenderer = (c) => {
23
+ const controlRenders = c == null ? void 0 : c.model.controlRenders;
24
+ if (!controlRenders || controlRenders.length === 0) {
25
+ return false;
26
+ }
27
+ return !!controlRenders.find((item) => item.id === "emptypanel");
28
+ };
22
29
 
23
- export { renderString };
30
+ export { hasEmptyPanelRenderer, renderString };
@@ -1 +1 @@
1
- {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../src/util/route/route.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6BAA6B,IAAI,KAAK,EAAY,MAAM,YAAY,CAAC;AAE9E,OAAO,EAGL,WAAW,EAGZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,UAAU,EAAkB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE7E;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,KAAK,EACZ,YAAY,GAAE,OAAe,GAC5B,UAAU,CAsEZ;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,UAAU,GAAG,MAAM,CAuD9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAc7D;AA+BD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,EAYpC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,QAAQ,EACjB,eAAe,CAAC,EAAE,MAAM,EACxB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,QAAQ,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAgE3B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,QAAQ,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAkC3B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,MAAM,EACb,YAAY,GAAE,OAAe,GAC5B,OAAO,CAAC,cAAc,CAAC,CA4DzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,OAAc,GACvB,MAAM,CA4BR;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,KAAK,IAAI,EAClE,KAAK,EAAE,MAAM,GACZ,IAAI,CAaN"}
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../src/util/route/route.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6BAA6B,IAAI,KAAK,EAAY,MAAM,YAAY,CAAC;AAE9E,OAAO,EAGL,WAAW,EAGZ,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,UAAU,EAAkB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE7E;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,KAAK,EACZ,YAAY,GAAE,OAAe,GAC5B,UAAU,CAsEZ;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,UAAU,GAAG,MAAM,CAuD9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAc7D;AA+BD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,EAYpC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,QAAQ,EACjB,eAAe,CAAC,EAAE,MAAM,EACxB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,QAAQ,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAkE3B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,QAAQ,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAkC3B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,MAAM,EACb,YAAY,GAAE,OAAe,GAC5B,OAAO,CAAC,cAAc,CAAC,CAoEzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,OAAc,GACvB,MAAM,CA4BR;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,KAAK,IAAI,EAClE,KAAK,EAAE,MAAM,GACZ,IAAI,CAaN"}
@@ -4,6 +4,7 @@ import qs from 'qs';
4
4
  import { useRoute } from 'vue-router';
5
5
  import { watch } from 'vue';
6
6
  import { RouteConst, ViewType, getMatchResPath, calcDeCodeNameById } from '@ibiz-template/runtime';
7
+ import { isNil } from 'ramda';
7
8
 
8
9
  "use strict";
9
10
  function route2routePath(route, isRouteModal = false) {
@@ -106,7 +107,7 @@ function getOwnRouteContext(context) {
106
107
  "toRouteDepth"
107
108
  ];
108
109
  Object.keys(ownContext).forEach((key) => {
109
- if (excludeKeys.includes(key)) {
110
+ if (excludeKeys.includes(key) || isNil(ownContext[key])) {
110
111
  delete ownContext[key];
111
112
  }
112
113
  });
@@ -168,9 +169,11 @@ async function generateRoutePath(appView, route, context, params) {
168
169
  depth = context.toRouteDepth;
169
170
  context.toRouteDepth = void 0;
170
171
  } else if (ibiz.env.isMob) {
171
- routePath.pathNodes[0] = {
172
- viewName: "home"
173
- };
172
+ if (ibiz.env.mobMenuShowMode === "DEFAULT") {
173
+ routePath.pathNodes[0] = {
174
+ viewName: "home"
175
+ };
176
+ }
174
177
  }
175
178
  routePath.pathNodes.splice(depth - 1, routePath.pathNodes.length - depth + 1);
176
179
  if (context.currentSrfNav) {
@@ -263,6 +266,9 @@ async function parseRouteViewData(route, depth, isRouteModal = false) {
263
266
  if (notNilEmpty(pathNode.context)) {
264
267
  Object.assign(context, pathNode.context);
265
268
  }
269
+ if (index === depth - 1 && (!pathNode.context || isNil(pathNode.context.srfnavctrlid))) {
270
+ delete context.srfnavctrlid;
271
+ }
266
272
  }
267
273
  }
268
274
  const { params, srfnav } = routePath.pathNodes[depth - 1];
@@ -1 +1 @@
1
- {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../src/view/common/view.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,MAAM,EACN,0BAA0B,EAC1B,aAAa,EACb,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAGL,QAAQ,EAER,KAAK,EAIN,MAAM,KAAK,CAAC;AACb,OAAO,aAAa,CAAC;AAGrB,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;uCAuDC,0BAA0B,KACrC,IAAI;yBAmBqB,QAAQ,cAAa,KAAK,KAAQ,OAAO;0BAkBxC,QAAQ,cAAa,KAAK,KAAQ,KAAK;+BA/DlC,QAAQ,KAAG,MAAM,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;MAuLjE,CAAC"}
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../src/view/common/view.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,MAAM,EACN,0BAA0B,EAC1B,aAAa,EACb,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAGL,QAAQ,EAER,KAAK,EAIN,MAAM,KAAK,CAAC;AACb,OAAO,aAAa,CAAC;AAGrB,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;uCAyDC,0BAA0B,KACrC,IAAI;yBAmBqB,QAAQ,cAAa,KAAK,KAAQ,OAAO;0BAkBxC,QAAQ,cAAa,KAAK,KAAQ,KAAK;+BA/DlC,QAAQ,KAAG,MAAM,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;MAuLjE,CAAC"}
@@ -4,6 +4,7 @@ import './view.css';
4
4
  import '../../use/index.mjs';
5
5
  import { useNamespace } from '../../use/namespace/namespace.mjs';
6
6
  import { useViewController } from '../../use/view/use-view-controller/use-view-controller.mjs';
7
+ import { useViewOperation } from '../../use/view/use-view-operation/use-view-operation.mjs';
7
8
 
8
9
  "use strict";
9
10
  function _isSlot(s) {
@@ -36,6 +37,7 @@ const View = /* @__PURE__ */ defineComponent({
36
37
  }) {
37
38
  const ns = useNamespace("view");
38
39
  const c = useViewController((...args) => new ViewController(...args));
40
+ useViewOperation(c);
39
41
  const allControls = getControlsByView(c.model);
40
42
  const teleportControls = [];
41
43
  const teleportTags = /* @__PURE__ */ new Map();
@@ -17,6 +17,10 @@ const IBizBadge = /* @__PURE__ */ vue.defineComponent({
17
17
  type: String,
18
18
  default: "danger"
19
19
  },
20
+ max: {
21
+ type: Number,
22
+ default: 99
23
+ },
20
24
  counterMode: {
21
25
  type: Number
22
26
  }
@@ -36,7 +40,7 @@ const IBizBadge = /* @__PURE__ */ vue.defineComponent({
36
40
  }
37
41
  return vue.createVNode("div", {
38
42
  "class": [this.ns.b(), this.ns.m(this.type)]
39
- }, [this.value]);
43
+ }, [this.value > this.max ? "".concat(this.max, "+") : this.value]);
40
44
  }
41
45
  });
42
46
 
@@ -125,7 +125,7 @@ const IBizCodeList = /* @__PURE__ */ vue.defineComponent({
125
125
  }, {
126
126
  immediate: true
127
127
  });
128
- const emptyText = props.codeList.emptyText === ibiz.i18n.t("vue3Util.common.undefined") ? "- - -" : props.codeList.emptyText;
128
+ const emptyText = props.codeList.emptyText === ibiz.i18n.t("vue3Util.common.undefined") || !props.codeList.emptyText ? ibiz.config.common.emptyText : props.codeList.emptyText;
129
129
  return {
130
130
  items,
131
131
  ns,
@@ -1,6 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  var vue = require('vue');
4
+ var runtime = require('@ibiz-template/runtime');
5
+ var core = require('@ibiz-template/core');
4
6
  var ramda = require('ramda');
5
7
  require('../../use/index.cjs');
6
8
  var namespace = require('../../use/namespace/namespace.cjs');
@@ -45,6 +47,66 @@ const IBizControlBase = /* @__PURE__ */ vue.defineComponent({
45
47
  }
46
48
  }
47
49
  }
50
+ const handleHtmlEvent = async (e, eventName) => {
51
+ e.stopPropagation();
52
+ const scriptCode = e.target.getAttribute(eventName);
53
+ const data = e.target.getAttribute("data");
54
+ const context = props.controller.context.clone();
55
+ const _context = e.target.getAttribute("context");
56
+ if (_context) {
57
+ Object.assign(context, core.fixJsonString(_context));
58
+ }
59
+ const params = {
60
+ ...props.controller.params
61
+ };
62
+ const _params = e.target.getAttribute("params");
63
+ if (_params) {
64
+ Object.assign(params, core.fixJsonString(_params));
65
+ }
66
+ if (scriptCode) {
67
+ await runtime.ScriptFactory.asyncExecScriptFn({
68
+ ...props.controller.getEventArgs(),
69
+ context,
70
+ params,
71
+ data: data ? core.fixJsonString(data) : null
72
+ }, scriptCode);
73
+ }
74
+ };
75
+ const getControlRender = (data) => {
76
+ var _a, _b;
77
+ const controlRenders = model.controlRenders ? model.controlRenders.filter((item) => item.id !== "emptypanel") : void 0;
78
+ if (!controlRenders || controlRenders.length === 0) {
79
+ return void 0;
80
+ }
81
+ const controlRender = controlRenders[0];
82
+ if (controlRender.renderType === "LAYOUTPANEL_MODEL" && controlRender.layoutPanelModel) {
83
+ const htmlCode = runtime.ScriptFactory.execScriptFn({
84
+ ...props.controller.getEventArgs(),
85
+ data
86
+ }, controlRender.layoutPanelModel, {
87
+ isAsync: false
88
+ });
89
+ return vue.createVNode("div", {
90
+ "innerHTML": htmlCode,
91
+ "onClick": (e) => handleHtmlEvent(e, "click"),
92
+ "onDblclick": (e) => handleHtmlEvent(e, "dbclick"),
93
+ "class": [ns.e("control-render"), ns.e((_a = controlRender.renderName) == null ? void 0 : _a.toLowerCase())]
94
+ }, null);
95
+ }
96
+ if (controlRender.renderType === "LAYOUTPANEL" && controlRender.layoutPanel) {
97
+ return vue.createVNode(vue.resolveComponent("iBizControlShell"), {
98
+ "class": [ns.e("control-render"), ns.e((_b = controlRender.renderName) == null ? void 0 : _b.toLowerCase())],
99
+ "data": data,
100
+ "params": props.controller.params,
101
+ "context": props.controller.context,
102
+ "modelData": controlRender.layoutPanel
103
+ }, null);
104
+ }
105
+ };
106
+ const customRender = vue.computed(() => {
107
+ const data = props.controller.data || props.controller.items;
108
+ return getControlRender(data);
109
+ });
48
110
  return {
49
111
  ns,
50
112
  typeClass,
@@ -52,6 +114,7 @@ const IBizControlBase = /* @__PURE__ */ vue.defineComponent({
52
114
  inlineStyle,
53
115
  codeName,
54
116
  controls,
117
+ customRender,
55
118
  onLayoutPanelCreated
56
119
  };
57
120
  },
@@ -103,7 +166,7 @@ const IBizControlBase = /* @__PURE__ */ vue.defineComponent({
103
166
  return vue.createVNode("div", {
104
167
  "class": [this.ns.b(), this.ns.b(this.typeClass), this.ns.m(this.codeName), this.sysCssName],
105
168
  "style": this.inlineStyle
106
- }, [layoutPanel || ((_c = (_b = this.$slots).default) == null ? void 0 : _c.call(_b))]);
169
+ }, [layoutPanel || this.customRender || ((_c = (_b = this.$slots).default) == null ? void 0 : _c.call(_b))]);
107
170
  }
108
171
  });
109
172
 
@@ -1 +1 @@
1
- .ibiz-control{width:100%;height:100%}
1
+ .ibiz-control{width:100%;height:100%}.ibiz-control__control-render{width:100%;height:100%}
@@ -0,0 +1,87 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var runtime = require('@ibiz-template/runtime');
5
+ var core = require('@ibiz-template/core');
6
+ require('../../use/index.cjs');
7
+ require('./custom-render.css');
8
+ var namespace = require('../../use/namespace/namespace.cjs');
9
+
10
+ "use strict";
11
+ const IBizCustomRender = /* @__PURE__ */ vue.defineComponent({
12
+ name: "IBizCustomRender",
13
+ props: {
14
+ controller: {
15
+ type: Object,
16
+ required: true
17
+ }
18
+ },
19
+ setup(props) {
20
+ const ns = namespace.useNamespace("custom-render");
21
+ const handleHtmlEvent = async (e, eventName) => {
22
+ e.stopPropagation();
23
+ const scriptCode = e.target.getAttribute(eventName);
24
+ const data = e.target.getAttribute("data");
25
+ const context = props.controller.context.clone();
26
+ const _context = e.target.getAttribute("context");
27
+ if (_context) {
28
+ Object.assign(context, core.fixJsonString(_context));
29
+ }
30
+ const params = {
31
+ ...props.controller.params
32
+ };
33
+ const _params = e.target.getAttribute("params");
34
+ if (_params) {
35
+ Object.assign(params, core.fixJsonString(_params));
36
+ }
37
+ if (scriptCode) {
38
+ await runtime.ScriptFactory.asyncExecScriptFn({
39
+ ...props.controller.getEventArgs(),
40
+ context,
41
+ params,
42
+ data: data ? core.fixJsonString(data) : null
43
+ }, scriptCode);
44
+ }
45
+ };
46
+ const getControlRender = () => {
47
+ var _a, _b, _c;
48
+ const controlRenders = (_a = props.controller) == null ? void 0 : _a.model.controlRenders;
49
+ if (!controlRenders || controlRenders.length === 0) {
50
+ return void 0;
51
+ }
52
+ const noDataRender = controlRenders.find((item) => item.id === "emptypanel");
53
+ if (!noDataRender)
54
+ return void 0;
55
+ if (noDataRender.renderType === "LAYOUTPANEL_MODEL" && noDataRender.layoutPanelModel) {
56
+ const htmlCode = runtime.ScriptFactory.execScriptFn({
57
+ ...props.controller.getEventArgs()
58
+ }, noDataRender.layoutPanelModel, {
59
+ isAsync: false
60
+ });
61
+ return vue.createVNode("div", {
62
+ "innerHTML": htmlCode,
63
+ "onClick": (e) => handleHtmlEvent(e, "click"),
64
+ "onDblclick": (e) => handleHtmlEvent(e, "dbclick"),
65
+ "class": [ns.b(), ns.e((_b = noDataRender.renderName) == null ? void 0 : _b.toLowerCase())]
66
+ }, null);
67
+ }
68
+ if (noDataRender.renderType === "LAYOUTPANEL" && noDataRender.layoutPanel) {
69
+ return vue.createVNode(vue.resolveComponent("iBizControlShell"), {
70
+ "class": [ns.b(), ns.e((_c = noDataRender.renderName) == null ? void 0 : _c.toLowerCase())],
71
+ "params": props.controller.params,
72
+ "context": props.controller.context,
73
+ "modelData": noDataRender.layoutPanel
74
+ }, null);
75
+ }
76
+ };
77
+ return {
78
+ ns,
79
+ getControlRender
80
+ };
81
+ },
82
+ render() {
83
+ return this.getControlRender();
84
+ }
85
+ });
86
+
87
+ exports.IBizCustomRender = IBizCustomRender;
@@ -0,0 +1 @@
1
+ .ibiz-custom-render{width:100%;height:100%}
@@ -38,6 +38,11 @@ const IBizIcon = /* @__PURE__ */ vue.defineComponent({
38
38
  "class": [ns.b(), icon.cssClass]
39
39
  }, null);
40
40
  }
41
+ if (icon.cssClass.indexOf("theme-icon") !== -1) {
42
+ return vue.createVNode("i", {
43
+ "class": [ns.b(), icon.cssClass]
44
+ }, null);
45
+ }
41
46
  return vue.createVNode("ion-icon", {
42
47
  "class": ns.b(),
43
48
  "name": icon.cssClass
@@ -8,6 +8,7 @@ var viewShell = require('./view-shell/view-shell.cjs');
8
8
  var codeList = require('./code-list/code-list.cjs');
9
9
  var controlLoadingPlaceholder = require('./control-loading-placeholder/control-loading-placeholder.cjs');
10
10
  var badge = require('./badge/badge.cjs');
11
+ var customRender = require('./custom-render/custom-render.cjs');
11
12
 
12
13
  "use strict";
13
14
 
@@ -19,3 +20,4 @@ exports.IBizViewShell = viewShell.IBizViewShell;
19
20
  exports.IBizCodeList = codeList.IBizCodeList;
20
21
  exports.ControlLoadingPlaceholder = controlLoadingPlaceholder.ControlLoadingPlaceholder;
21
22
  exports.IBizBadge = badge.IBizBadge;
23
+ exports.IBizCustomRender = customRender.IBizCustomRender;