@ibiz-template/vue3-components 0.7.41-alpha.112 → 0.7.41-alpha.114

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 (112) hide show
  1. package/dist/{index-BLBroBhu.js → index-B3O6yu1f.js} +1 -1
  2. package/dist/index-BugLIX5r.js +339 -0
  3. package/dist/{index-C-9vEACb.js → index-qO4rCmKY.js} +1 -1
  4. package/dist/{index.es-Dsu1bPbQ.js → index.es-EGP1S-jJ.js} +1 -1
  5. package/dist/index.min.css +1 -1
  6. package/dist/index.system.min.js +1 -1
  7. package/dist/{wang-editor-4OTQfjW9.js → wang-editor-CBp2ammw.js} +1 -1
  8. package/dist/{xlsx-util--TUzshNx.js → xlsx-util-NIbtpljc.js} +1 -1
  9. package/es/common/button-list/button-list.mjs +6 -1
  10. package/es/common/data-import/data-import.mjs +11 -8
  11. package/es/control/calendar/components/calendar-user2/calendar-user2.mjs +2 -2
  12. package/es/control/calendar/components/custom-calendar/custom-calendar.mjs +1 -2
  13. package/es/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.mjs +2 -0
  14. package/es/control/drtab/drtab-control.util.mjs +1 -1
  15. package/es/control/drtab/drtab.controller.mjs +48 -13
  16. package/es/control/drtab/drtab.mjs +1 -1
  17. package/es/control/drtab/flow-drtab.mjs +9 -9
  18. package/es/control/exp-bar/render-util.mjs +2 -2
  19. package/es/control/medit-view-panel/medit-view-panel.mjs +1 -1
  20. package/es/control/toolbar/toolbar.mjs +3 -0
  21. package/es/control/tree/tree.mjs +1 -1
  22. package/es/control/tree-grid-ex/tree-grid-ex.mjs +1 -0
  23. package/es/editor/check-box-list/checkbox-list-editor.controller.mjs +11 -1
  24. package/es/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.mjs +9 -4
  25. package/es/editor/date-picker/ibiz-date-picker/ibiz-date-picker.mjs +2 -1
  26. package/es/editor/date-range-select/date-range-select-picker/date-range-select.mjs +4 -4
  27. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +1 -1
  28. package/es/editor/dropdown-list/ibiz-tree-picker/ibiz-tree-picker.mjs +17 -1
  29. package/es/editor/dropdown-list/ibiz-virtualized-list/ibiz-virtualized-list.mjs +19 -4
  30. package/es/editor/list-box/ibiz-list-box/ibiz-list-box.mjs +24 -7
  31. package/es/editor/list-box/list-box-editor.controller.mjs +11 -0
  32. package/es/editor/list-box/list-box-picker-editor.controller.mjs +11 -0
  33. package/es/editor/radio-button-list/ibiz-radio/ibiz-radio.mjs +7 -0
  34. package/es/editor/radio-button-list/radio-button-list.controller.mjs +11 -1
  35. package/es/locale/en/index.mjs +1 -0
  36. package/es/locale/zh-CN/index.mjs +1 -0
  37. package/es/panel-component/global-search/global-search.mjs +2 -1
  38. package/es/panel-component/nav-tabs/nav-tabs.mjs +12 -3
  39. package/es/panel-component/short-cut/short-cut.mjs +2 -1
  40. package/es/panel-component/user-message/user-message.mjs +1 -0
  41. package/es/util/ai-chat-util/ai-chat-util.mjs +11 -0
  42. package/es/util/fullscreen/fullscreen-util.mjs +1 -1
  43. package/lib/common/button-list/button-list.cjs +6 -1
  44. package/lib/common/data-import/data-import.cjs +11 -8
  45. package/lib/control/calendar/components/calendar-user2/calendar-user2.cjs +2 -2
  46. package/lib/control/calendar/components/custom-calendar/custom-calendar.cjs +1 -2
  47. package/lib/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.cjs +2 -0
  48. package/lib/control/drtab/drtab-control.util.cjs +1 -1
  49. package/lib/control/drtab/drtab.cjs +1 -1
  50. package/lib/control/drtab/drtab.controller.cjs +48 -13
  51. package/lib/control/drtab/flow-drtab.cjs +9 -9
  52. package/lib/control/exp-bar/render-util.cjs +2 -2
  53. package/lib/control/medit-view-panel/medit-view-panel.cjs +1 -1
  54. package/lib/control/toolbar/toolbar.cjs +3 -0
  55. package/lib/control/tree/tree.cjs +1 -1
  56. package/lib/control/tree-grid-ex/tree-grid-ex.cjs +1 -0
  57. package/lib/editor/check-box-list/checkbox-list-editor.controller.cjs +11 -1
  58. package/lib/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.cjs +9 -4
  59. package/lib/editor/date-picker/ibiz-date-picker/ibiz-date-picker.cjs +2 -1
  60. package/lib/editor/date-range-select/date-range-select-picker/date-range-select.cjs +4 -4
  61. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +1 -1
  62. package/lib/editor/dropdown-list/ibiz-tree-picker/ibiz-tree-picker.cjs +17 -1
  63. package/lib/editor/dropdown-list/ibiz-virtualized-list/ibiz-virtualized-list.cjs +19 -4
  64. package/lib/editor/list-box/ibiz-list-box/ibiz-list-box.cjs +24 -7
  65. package/lib/editor/list-box/list-box-editor.controller.cjs +11 -0
  66. package/lib/editor/list-box/list-box-picker-editor.controller.cjs +11 -0
  67. package/lib/editor/radio-button-list/ibiz-radio/ibiz-radio.cjs +7 -0
  68. package/lib/editor/radio-button-list/radio-button-list.controller.cjs +11 -1
  69. package/lib/locale/en/index.cjs +1 -0
  70. package/lib/locale/zh-CN/index.cjs +1 -0
  71. package/lib/panel-component/global-search/global-search.cjs +2 -1
  72. package/lib/panel-component/nav-tabs/nav-tabs.cjs +12 -3
  73. package/lib/panel-component/short-cut/short-cut.cjs +2 -1
  74. package/lib/panel-component/user-message/user-message.cjs +1 -0
  75. package/lib/util/ai-chat-util/ai-chat-util.cjs +11 -0
  76. package/lib/util/fullscreen/fullscreen-util.cjs +1 -1
  77. package/package.json +5 -5
  78. package/src/common/button-list/button-list.tsx +4 -1
  79. package/src/common/data-import/data-import.tsx +16 -9
  80. package/src/control/calendar/components/calendar-user2/calendar-user2.tsx +2 -2
  81. package/src/control/calendar/components/custom-calendar/custom-calendar.tsx +1 -1
  82. package/src/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.tsx +2 -0
  83. package/src/control/drtab/drtab.controller.ts +54 -14
  84. package/src/control/drtab/drtab.tsx +1 -1
  85. package/src/control/drtab/flow-drtab.tsx +9 -9
  86. package/src/control/exp-bar/render-util.tsx +3 -3
  87. package/src/control/medit-view-panel/medit-view-panel.tsx +1 -1
  88. package/src/control/toolbar/toolbar.tsx +1 -0
  89. package/src/control/tree/tree.tsx +1 -1
  90. package/src/control/tree-grid-ex/tree-grid-ex.tsx +1 -0
  91. package/src/editor/check-box-list/checkbox-list-editor.controller.ts +11 -0
  92. package/src/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.tsx +28 -6
  93. package/src/editor/date-picker/ibiz-date-picker/ibiz-date-picker.tsx +1 -0
  94. package/src/editor/date-range-select/date-range-select-picker/date-range-select.tsx +8 -5
  95. package/src/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.tsx +3 -1
  96. package/src/editor/dropdown-list/ibiz-tree-picker/ibiz-tree-picker.tsx +28 -1
  97. package/src/editor/dropdown-list/ibiz-virtualized-list/ibiz-virtualized-list.tsx +31 -4
  98. package/src/editor/list-box/ibiz-list-box/ibiz-list-box.tsx +45 -9
  99. package/src/editor/list-box/list-box-editor.controller.ts +11 -0
  100. package/src/editor/list-box/list-box-picker-editor.controller.ts +11 -0
  101. package/src/editor/radio-button-list/ibiz-radio/ibiz-radio.tsx +13 -0
  102. package/src/editor/radio-button-list/radio-button-list.controller.ts +11 -0
  103. package/src/locale/en/index.ts +1 -0
  104. package/src/locale/zh-CN/index.ts +1 -0
  105. package/src/panel-component/global-search/global-search.tsx +1 -0
  106. package/src/panel-component/nav-tabs/nav-tabs.tsx +9 -0
  107. package/src/panel-component/short-cut/short-cut.tsx +1 -0
  108. package/src/panel-component/user-message/user-message.tsx +1 -0
  109. package/src/util/ai-chat-util/ai-chat-util.ts +13 -0
  110. package/dist/index-XI8ySm9i.js +0 -339
  111. /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.117_axios@1.12.2_lodash-es@4.17.21_qs@6.14.0_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.41-alpha.119_axios@1.12.2_lodash-es@4.17.21_qs@6.14.0_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.mjs +0 -0
  112. /package/lib/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.117_axios@1.12.2_lodash-es@4.17.21_qs@6.14.0_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.41-alpha.119_axios@1.12.2_lodash-es@4.17.21_qs@6.14.0_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.cjs +0 -0
@@ -169,7 +169,12 @@ const IBizButtonList = /* @__PURE__ */ defineComponent({
169
169
  }
170
170
  }]
171
171
  },
172
- "popper-style": "z-index: ".concat(zIndex.zIndex)
172
+ "popper-style": {
173
+ zIndex: zIndex.zIndex,
174
+ ...props.semantic.semanticStyle("popup", {
175
+ model: detail
176
+ })
177
+ }
173
178
  }, {
174
179
  reference: () => {
175
180
  var _a2, _b;
@@ -1,7 +1,7 @@
1
1
  import { isVNode, defineComponent, withDirectives, createVNode, resolveComponent, resolveDirective, ref } from 'vue';
2
2
  import { useNamespace } from '@ibiz-template/vue3-util';
3
- import './data-import.css';
4
3
  import { downloadImportTemplate, selectAndImport } from '@ibiz-template/runtime';
4
+ import './data-import.css';
5
5
 
6
6
  "use strict";
7
7
  function _isSlot(s) {
@@ -32,6 +32,7 @@ const DataImport = /* @__PURE__ */ defineComponent({
32
32
  }
33
33
  },
34
34
  setup(props) {
35
+ var _a;
35
36
  const ns = useNamespace("data-import");
36
37
  const message = ref({
37
38
  state: "ready",
@@ -39,11 +40,12 @@ const DataImport = /* @__PURE__ */ defineComponent({
39
40
  });
40
41
  const errorMessage = ref("");
41
42
  const isLoading = ref(false);
43
+ const importTemplName = ibiz.config.common.importTemplNameMode === "custom" ? "".concat((_a = props.dataImport) == null ? void 0 : _a.name).concat(ibiz.i18n.t("component.dataImport.template")) : "".concat(props.appDataEntity.logicName).concat(ibiz.i18n.t("component.dataImport.templateFile"));
42
44
  const onCancelButtonClick = () => {
43
45
  props.dismiss();
44
46
  };
45
47
  const onLinkClick = async () => {
46
- downloadImportTemplate(props.appDataEntity, props.dataImport, props.context, props.params);
48
+ downloadImportTemplate(props.appDataEntity, props.dataImport, props.context, props.params, ibiz.config.common.importTemplNameMode === "custom" ? importTemplName : void 0);
47
49
  };
48
50
  const selectFile = async () => {
49
51
  isLoading.value = true;
@@ -84,12 +86,13 @@ const DataImport = /* @__PURE__ */ defineComponent({
84
86
  };
85
87
  return {
86
88
  ns,
87
- onLinkClick,
88
- selectFile,
89
- onCancelButtonClick,
90
- isLoading,
91
89
  message,
92
- errorMessage
90
+ isLoading,
91
+ errorMessage,
92
+ importTemplName,
93
+ selectFile,
94
+ onLinkClick,
95
+ onCancelButtonClick
93
96
  };
94
97
  },
95
98
  render() {
@@ -124,7 +127,7 @@ const DataImport = /* @__PURE__ */ defineComponent({
124
127
  }, [createVNode("ion-icon", {
125
128
  "class": this.ns.e("link-icon"),
126
129
  "name": "link"
127
- }, null), this.appDataEntity.logicName, ibiz.i18n.t("component.dataImport.templateFile")])]), createVNode("div", {
130
+ }, null), this.importTemplName])]), createVNode("div", {
128
131
  "class": this.ns.e("button-bar")
129
132
  }, [createVNode(resolveComponent("el-button"), {
130
133
  "onClick": this.onCancelButtonClick
@@ -122,11 +122,11 @@ const CalendarUser2 = /* @__PURE__ */ defineComponent({
122
122
  "class": [this.ns.e("title"), this.ns.em("header", "left"), this.semanticClass("title")],
123
123
  "style": this.semanticStyle("title")
124
124
  }, [this.title]), createVNode("div", {
125
- "class": [this.ns.e("legend"), this.ns.em("header", "legend"), this.semanticStyle("legend")],
125
+ "class": [this.ns.e("legend"), this.ns.em("header", "legend"), this.semanticClass("legend")],
126
126
  "style": this.semanticStyle("legend")
127
127
  }, [this.legends.length > 1 && this.legends.map((legend) => {
128
128
  return createVNode("div", {
129
- "class": [this.ns.e("legend-item"), this.ns.em("legend", "item"), this.semanticStyle("legend.item")],
129
+ "class": [this.ns.e("legend-item"), this.ns.em("legend", "item"), this.semanticClass("legend.item")],
130
130
  "style": this.semanticStyle("legend.item"),
131
131
  "onClick": () => this.$emit("legendClick", legend)
132
132
  }, [createVNode("div", {
@@ -107,8 +107,7 @@ const CustomCalendar = /* @__PURE__ */ defineComponent({
107
107
  const renderDay = () => {
108
108
  var _a;
109
109
  return createVNode("div", {
110
- "class": ns.e("calendar-day"),
111
- "style": props.semanticStyle("day")
110
+ "class": ns.e("calendar-day")
112
111
  }, [(slots == null ? void 0 : slots.header) ? createVNode("div", {
113
112
  "class": [ns.e("header"), ns.em("calendar-day", "header"), props.semanticClass("header")],
114
113
  "style": props.semanticStyle("header")
@@ -171,6 +171,7 @@ const AppMenuPortletControl = /* @__PURE__ */ defineComponent({
171
171
  let _slot;
172
172
  content = createVNode(resolveComponent("el-collapse"), {
173
173
  "class": [this.ns.e("content"), this.semanticClass("content")],
174
+ "style": this.semanticStyle("content"),
174
175
  "modelValue": this.defaultOpens,
175
176
  "onUpdate:modelValue": ($event) => this.defaultOpens = $event
176
177
  }, _isSlot(_slot = model.appMenuItems.map((item) => {
@@ -184,6 +185,7 @@ const AppMenuPortletControl = /* @__PURE__ */ defineComponent({
184
185
  }
185
186
  return createVNode(resolveComponent("iBizControlBase"), {
186
187
  "class": [this.ns.b(), this.semanticClass("root")],
188
+ "style": this.semanticStyle("root"),
187
189
  "controller": this.c
188
190
  }, _isSlot(content) ? content : {
189
191
  default: () => [content]
@@ -1,5 +1,5 @@
1
1
  import { ref, watch, watchEffect, onUnmounted } from 'vue';
2
- import { defaultNamespace } from '../../node_modules/.pnpm/@ibiz-template_core@0.7.41-alpha.117_axios@1.12.2_lodash-es@4.17.21_qs@6.14.0_qx-util@0.4.8_ramda@0.29.1/node_modules/@ibiz-template/core/out/utils/namespace/namespace.mjs';
2
+ import { defaultNamespace } from '../../node_modules/.pnpm/@ibiz-template_core@0.7.41-alpha.119_axios@1.12.2_lodash-es@4.17.21_qs@6.14.0_qx-util@0.4.8_ramda@0.29.1/node_modules/@ibiz-template/core/out/utils/namespace/namespace.mjs';
3
3
 
4
4
  "use strict";
5
5
  function useAppDRTab(c, controlRef, counterData) {
@@ -32,6 +32,12 @@ class DRTabController extends ControlController {
32
32
  * @memberof DRTabController
33
33
  */
34
34
  __publicField(this, "srfCacheKeyTempl", "");
35
+ /**
36
+ * @description 显示位置
37
+ * @type {(string | undefined)}
38
+ * @memberof DRTabController
39
+ */
40
+ __publicField(this, "tabPosition");
35
41
  /**
36
42
  * Router 对象
37
43
  *
@@ -146,6 +152,7 @@ class DRTabController extends ControlController {
146
152
  super.initState();
147
153
  this.state.drTabPages = [];
148
154
  this.state.showMore = false;
155
+ this.state.expViewParams = {};
149
156
  this.state.hideEditItem = !!this.model.hideEditItem;
150
157
  }
151
158
  /**
@@ -155,6 +162,8 @@ class DRTabController extends ControlController {
155
162
  * @memberof DRTabController
156
163
  */
157
164
  async onCreated() {
165
+ var _a;
166
+ this.tabPosition = (_a = this.view.model.tabLayout) == null ? void 0 : _a.toLowerCase();
158
167
  await super.onCreated();
159
168
  await this.initCounter();
160
169
  this.srfCacheKeyTempl = this.controlParams.srfcachekeytempl || "";
@@ -360,7 +369,7 @@ class DRTabController extends ControlController {
360
369
  testScriptCode,
361
370
  counterMode
362
371
  } = item;
363
- drTabPages.push({
372
+ const drTabPage = {
364
373
  tag: item.id,
365
374
  caption: item.caption,
366
375
  sysImage: item.sysImage,
@@ -372,7 +381,15 @@ class DRTabController extends ControlController {
372
381
  testAppDELogicId,
373
382
  testScriptCode,
374
383
  counterMode
375
- });
384
+ };
385
+ if (this.tabPosition === "flow_noheader" || this.tabPosition === "flow") {
386
+ const { context, params } = this.prepareParams(item);
387
+ Object.assign(drTabPage, {
388
+ context,
389
+ params
390
+ });
391
+ }
392
+ drTabPages.push(drTabPage);
376
393
  });
377
394
  this.state.drTabPages = drTabPages;
378
395
  this.state.defaultName = drTabPages[0].tag;
@@ -449,12 +466,12 @@ class DRTabController extends ControlController {
449
466
  /**
450
467
  * 准备参数
451
468
  *
452
- * @param {IDEDRCtrlItem} drTabPages 关系分页
469
+ * @param {IDEDRCtrlItem} drTabPage 关系分页
453
470
  * @return {*}
454
471
  * @memberof DRTabController
455
472
  */
456
- prepareParams(drTabPages) {
457
- const { navigateContexts, navigateParams } = drTabPages;
473
+ prepareParams(drTabPage) {
474
+ const { navigateContexts, navigateParams } = drTabPage;
458
475
  const model = {
459
476
  navContexts: navigateContexts,
460
477
  navParams: navigateParams
@@ -466,9 +483,13 @@ class DRTabController extends ControlController {
466
483
  };
467
484
  const { resultContext, resultParams } = calcNavParams(model, originParams);
468
485
  const context = Object.assign(this.context.clone(), resultContext, {
469
- currentSrfNav: drTabPages.id
486
+ currentSrfNav: drTabPage.id
470
487
  });
471
- const params = { ...this.params, ...resultParams };
488
+ const params = {
489
+ ...this.params,
490
+ ...resultParams,
491
+ ...this.state.expViewParams
492
+ };
472
493
  return { context, params };
473
494
  }
474
495
  /**
@@ -476,20 +497,20 @@ class DRTabController extends ControlController {
476
497
  *
477
498
  * @author lxm
478
499
  * @date 2023-12-21 05:40:07
479
- * @param {IDEDRCtrlItem} drTabPages
500
+ * @param {IDEDRCtrlItem} drTabPage
480
501
  * @param {boolean} [isRoutePushed=false]
481
502
  * @return {*} {Promise<void>}
482
503
  */
483
- async openNavPosView(drTabPages, isRoutePushed = false, navViewKey) {
504
+ async openNavPosView(drTabPage, isRoutePushed = false, navViewKey) {
484
505
  var _a;
485
- const { context, params } = this.prepareParams(drTabPages);
486
- if (!drTabPages.appViewId)
506
+ const { context, params } = this.prepareParams(drTabPage);
507
+ if (!drTabPage.appViewId)
487
508
  return;
488
509
  (_a = this.navPos) == null ? void 0 : _a.openView({
489
- key: navViewKey || drTabPages.id,
510
+ key: navViewKey || drTabPage.id,
490
511
  context,
491
512
  params,
492
- viewId: drTabPages.appViewId,
513
+ viewId: drTabPage.appViewId,
493
514
  isRoutePushed
494
515
  });
495
516
  }
@@ -524,6 +545,20 @@ class DRTabController extends ControlController {
524
545
  */
525
546
  async refresh() {
526
547
  var _a;
548
+ if (this.tabPosition === "flow_noheader" || this.tabPosition === "flow") {
549
+ this.state.drTabPages.forEach((tabPageState) => {
550
+ var _a2;
551
+ const dedrtabPage = (_a2 = this.model.dedrtabPages) == null ? void 0 : _a2.find(
552
+ (item) => item.id === tabPageState.tag
553
+ );
554
+ if (dedrtabPage) {
555
+ const { context, params } = this.prepareParams(dedrtabPage);
556
+ tabPageState.context = context;
557
+ tabPageState.params = params;
558
+ }
559
+ });
560
+ return;
561
+ }
527
562
  const { activeName } = this.state;
528
563
  const drBarItem = (_a = this.model.dedrtabPages) == null ? void 0 : _a.find(
529
564
  (item) => item.id === activeName
@@ -259,7 +259,7 @@ const DRTabControl = /* @__PURE__ */ defineComponent({
259
259
  "style": this.semanticStyle("root"),
260
260
  "semanticClass": this.semanticClass,
261
261
  "semanticStyle": this.semanticStyle,
262
- "pagesstate": this.visibleItems,
262
+ "pagesState": this.visibleItems,
263
263
  "drtabpages": this.modelData.dedrtabPages,
264
264
  "context": this.c.context,
265
265
  "params": this.c.params,
@@ -8,7 +8,7 @@ import './flow-drtab.css';
8
8
  const FlowDrtab = /* @__PURE__ */ defineComponent({
9
9
  name: "FlowDrtab",
10
10
  props: {
11
- pagesstate: {
11
+ pagesState: {
12
12
  type: Array,
13
13
  default: () => []
14
14
  },
@@ -71,7 +71,7 @@ const FlowDrtab = /* @__PURE__ */ defineComponent({
71
71
  navbarpos.value = c.navbarpos;
72
72
  navBarWidth.value = c.navbarwidth;
73
73
  const allVisibleViews = computed(() => {
74
- return props.pagesstate.filter((item) => {
74
+ return props.pagesState.filter((item) => {
75
75
  const target = props.drtabpages.find((page) => {
76
76
  return page.id === item.tag;
77
77
  });
@@ -79,8 +79,8 @@ const FlowDrtab = /* @__PURE__ */ defineComponent({
79
79
  }).length;
80
80
  });
81
81
  const allNavTags = computed(() => {
82
- if (props.pagesstate) {
83
- return props.pagesstate.map((item) => {
82
+ if (props.pagesState) {
83
+ return props.pagesState.map((item) => {
84
84
  const target = props.drtabpages.find((page) => {
85
85
  return page.id === item.tag;
86
86
  });
@@ -172,7 +172,7 @@ const FlowDrtab = /* @__PURE__ */ defineComponent({
172
172
  });
173
173
  completedViews.value += 1;
174
174
  if (completedViews.value === allVisibleViews.value && !navtag.value) {
175
- navtag.value = "".concat(target == null ? void 0 : target.appViewId, "_").concat(props.pagesstate[0].tag);
175
+ navtag.value = "".concat(target == null ? void 0 : target.appViewId, "_").concat(props.pagesState[0].tag);
176
176
  }
177
177
  const el = document.getElementById("".concat(target == null ? void 0 : target.appViewId, "_").concat(item.tag));
178
178
  if (el) {
@@ -263,7 +263,7 @@ const FlowDrtab = /* @__PURE__ */ defineComponent({
263
263
  "ref": (el) => {
264
264
  navbarRef.value = el;
265
265
  }
266
- }, [props.pagesstate.map((item) => {
266
+ }, [props.pagesState.map((item) => {
267
267
  const target = props.drtabpages.find((page) => {
268
268
  return page.id === item.tag;
269
269
  });
@@ -303,7 +303,7 @@ const FlowDrtab = /* @__PURE__ */ defineComponent({
303
303
  },
304
304
  render() {
305
305
  var _a, _b;
306
- const tabs = this.pagesstate.map((item) => {
306
+ const tabs = this.pagesState.map((item) => {
307
307
  const counterNum = item.counterId ? this.counterData[item.counterId] : void 0;
308
308
  const viewShell = resolveComponent("IBizViewShell");
309
309
  const target = this.drtabpages.find((page) => {
@@ -359,8 +359,8 @@ const FlowDrtab = /* @__PURE__ */ defineComponent({
359
359
  })
360
360
  }
361
361
  }, [h(viewShell, {
362
- context: this.context,
363
- params: this.params,
362
+ context: item.context || this.context,
363
+ params: item.params || this.params,
364
364
  viewId: target.appViewId,
365
365
  onMounted: () => this.onViewMounted(item)
366
366
  })])]);
@@ -32,11 +32,11 @@ function useExpBarRender(c, ns) {
32
32
  "style": semanticStyle("title"),
33
33
  "class": [ns.b("caption"), expBarNs.b("caption"), semanticClass("title")]
34
34
  }, [model.sysImage && createVNode(resolveComponent("iBizIcon"), {
35
+ "class": [expBarNs.be("caption", "icon"), semanticClass("title.icon")],
35
36
  "style": semanticStyle("title.icon"),
36
- "class": [expBarNs.be("caption", "icon"), semanticStyle("title.icon")],
37
37
  "icon": model.sysImage
38
38
  }, null), title && createVNode("span", {
39
- "class": [ns.be("caption", "text"), expBarNs.be("caption", "text"), semanticStyle("title.text")],
39
+ "class": [ns.be("caption", "text"), expBarNs.be("caption", "text"), semanticClass("title.text")],
40
40
  "style": semanticStyle("title.text")
41
41
  }, [title])]);
42
42
  };
@@ -142,7 +142,7 @@ const MEditViewPanelControl = /* @__PURE__ */ defineComponent({
142
142
  "class": [this.ns.be("tab-label", "remove"), this.semanticClass("tab.remove", {
143
143
  item
144
144
  })],
145
- "style": this.semanticClass("tab.remove", {
145
+ "style": this.semanticStyle("tab.remove", {
146
146
  item
147
147
  }),
148
148
  "name": "close-outline",
@@ -304,6 +304,9 @@ const ToolbarControl = /* @__PURE__ */ defineComponent({
304
304
  "popper-class": [ns2.b("popper"), ns2.b("dropdown-popper"), ns2.bm("dropdown-popper", toolbarStyle), ns2.em("dropdown-popper", groupButtonStyle.toLowerCase()), ns2.bm("dropdown-popper", calcCssName(item)), semanticClass("popup", {
305
305
  item
306
306
  })],
307
+ "popper-style": semanticStyle("popup", {
308
+ item
309
+ }),
307
310
  "placement": "right-start",
308
311
  "teleported": false,
309
312
  "popper-options": {
@@ -964,7 +964,7 @@ const TreeControl = /* @__PURE__ */ defineComponent({
964
964
  "ref": "treeviewRef",
965
965
  "controller": this.c,
966
966
  "class": this.semanticClass("root"),
967
- "style": this.semanticClass("root"),
967
+ "style": this.semanticStyle("root"),
968
968
  "element-loading-text": this.c.state.loadingText
969
969
  }, _isSlot(slots) ? slots : {
970
970
  default: () => [slots]
@@ -297,6 +297,7 @@ const TreeGridExControl = /* @__PURE__ */ defineComponent({
297
297
  "ref": "tableRef",
298
298
  "key": this.tableRefreshKey,
299
299
  "class": [this.ns.e("table"), this.semanticClass("content")],
300
+ "style": this.semanticStyle("content"),
300
301
  "border": true,
301
302
  "row-key": "id",
302
303
  "data": this.elTableData,
@@ -24,9 +24,14 @@ class CheckBoxListEditorController extends CodeListEditorController {
24
24
  * @type {(number | undefined)}
25
25
  */
26
26
  __publicField(this, "rowNumber");
27
+ /**
28
+ * @description 自动选中第一个
29
+ * @memberof CheckBoxListEditorController
30
+ */
31
+ __publicField(this, "autoSelectFirstOption", false);
27
32
  }
28
33
  async onInit() {
29
- var _a, _b;
34
+ var _a, _b, _c;
30
35
  super.onInit();
31
36
  if (this.model.appCodeListId) {
32
37
  const app = await ibiz.hub.getApp(this.context.srfappid);
@@ -38,6 +43,11 @@ class CheckBoxListEditorController extends CodeListEditorController {
38
43
  if ((_b = this.editorParams) == null ? void 0 : _b.rownumber) {
39
44
  this.rowNumber = Number(this.editorParams.rownumber);
40
45
  }
46
+ if ((_c = this.editorParams) == null ? void 0 : _c.autoselectfirstoption) {
47
+ this.autoSelectFirstOption = this.toBoolean(
48
+ this.editorParams.autoselectfirstoption
49
+ );
50
+ }
41
51
  }
42
52
  }
43
53
 
@@ -55,10 +55,19 @@ const IBizCheckboxList = /* @__PURE__ */ defineComponent({
55
55
  }
56
56
  return false;
57
57
  });
58
+ const valueSeparator = (codeList == null ? void 0 : codeList.valueSeparator) || ",";
58
59
  const items = ref([]);
60
+ const autoSelectFirstOption = () => {
61
+ const item = items.value[0];
62
+ if (!c.autoSelectFirstOption || props.value || !item)
63
+ return;
64
+ const selections = c.allItems ? items.value.filter((_item) => _item.value !== c.allItemsValue).map((_item) => _item.value) : [item.value];
65
+ emit("change", c.model.valueType === "SIMPLES" ? selections : selections.join(valueSeparator), void 0, true);
66
+ };
59
67
  watch(() => props.data, (newVal) => {
60
68
  c.loadCodeList(newVal).then((_codeList) => {
61
69
  items.value = c.handleCodeListAllItems(_codeList);
70
+ autoSelectFirstOption();
62
71
  });
63
72
  }, {
64
73
  immediate: true,
@@ -80,10 +89,6 @@ const IBizCheckboxList = /* @__PURE__ */ defineComponent({
80
89
  items.value = c.handleCodeListAllItems(data);
81
90
  };
82
91
  useCodeListListen(c.model.appCodeListId, c.context.srfappid, fn);
83
- let valueSeparator = ",";
84
- if (codeList && codeList.valueSeparator) {
85
- valueSeparator = codeList.valueSeparator;
86
- }
87
92
  const {
88
93
  useInFocusAndBlur,
89
94
  useInValueChange
@@ -189,7 +189,8 @@ const IBizDatePicker = /* @__PURE__ */ defineComponent({
189
189
  }, this.$attrs), null);
190
190
  const readonlyContent = this.formatValue;
191
191
  const formDefaultContent = createVNode("div", {
192
- "class": [this.ns.e("content"), this.ns.b("form-default-content"), this.semanticClass("editor.content")]
192
+ "class": [this.ns.e("content"), this.ns.b("form-default-content"), this.semanticClass("editor.content")],
193
+ "style": this.semanticStyle("editor.content")
193
194
  }, [this.formatValue ? this.formatValue : createVNode(resolveComponent("iBizEditorEmptyText"), {
194
195
  "showPlaceholder": this.c.emptyShowPlaceholder,
195
196
  "placeHolder": this.c.placeHolder
@@ -132,8 +132,8 @@ const IBizDateRangeSelect = /* @__PURE__ */ defineComponent({
132
132
  "onUpdate:modelValue": ($event) => unitValue.value = $event,
133
133
  "onChange": unitChange,
134
134
  "class": ns.em("date-unit", "editor-select"),
135
- "popper-class": [ns.b("popper"), semanticClass("editor.popup")],
136
- "popper-style": semanticStyle("editor.popup")
135
+ "popper-class": [ns.b("date-unit-popper"), semanticClass("editor.dateUnit.popup")],
136
+ "popper-style": semanticStyle("editor.dateUnit.popup")
137
137
  }, _isSlot(_slot = units.map((item) => {
138
138
  return createVNode(resolveComponent("el-option"), {
139
139
  "class": [ns.em("date-unit", "item"), semanticClass("editor.dateUnit.popup.item", {
@@ -272,8 +272,8 @@ const IBizDateRangeSelect = /* @__PURE__ */ defineComponent({
272
272
  "visible": popVisible.value.ALL || popVisible.value.DYNAMIC || popVisible.value.STATIC,
273
273
  "trigger": "click",
274
274
  "width": "240px",
275
- "popper-class": [ns.b("popper"), ns.b("date-range-select"), semanticClass("editor.popup")],
276
- "popper-style": semanticStyle("editor.popup")
275
+ "popper-class": [ns.b("date-type-popper"), ns.b("date-range-select"), semanticClass("editor.dateType.popup")],
276
+ "popper-style": semanticStyle("editor.dateType.popup")
277
277
  }, {
278
278
  reference: () => {
279
279
  return createVNode("div", {
@@ -149,7 +149,7 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
149
149
  if (!c.autoSelectFirstOption || props.value || !item)
150
150
  return;
151
151
  if (c.multiple) {
152
- const value = c.allItems && !hasChildren.value ? getSelectionValue(item.value).map((v) => "".concat(v)) : [item.value];
152
+ const value = c.allItems && !hasChildren.value ? items.value.filter((_item) => _item.value !== c.allItemsValue).map((_item) => _item.value) : [item.value];
153
153
  emit("change", c.model.valueType === "SIMPLES" ? value : value.join(valueSeparator), void 0, true);
154
154
  } else if (editorItems && editorItems.length > 0) {
155
155
  emit("change", item.value, editorItems[0].id, true);
@@ -1,4 +1,5 @@
1
1
  import { isVNode, defineComponent, createVNode, resolveComponent, withDirectives, resolveDirective, ref, watch, onMounted } from 'vue';
2
+ import { recursiveIterate } from '@ibiz-template/core';
2
3
  import { useNamespace, useSemanticNode, useCodeListListen, getEditorEmits, getDropdownProps } from '@ibiz-template/vue3-util';
3
4
  import { isArray, isString } from 'lodash-es';
4
5
  import './ibiz-tree-picker.css';
@@ -108,6 +109,20 @@ const IBizTreePicker = /* @__PURE__ */ defineComponent({
108
109
  });
109
110
  return list;
110
111
  };
112
+ const autoSelectFirstOption = () => {
113
+ const item = items.value[0];
114
+ if (!c.autoSelectFirstOption || props.value || !item)
115
+ return;
116
+ const selections = [];
117
+ recursiveIterate({
118
+ children: [item]
119
+ }, (_item) => {
120
+ selections.push(_item.value);
121
+ }, {
122
+ childrenFields: ["children"]
123
+ });
124
+ emit("change", c.model.valueType === "SIMPLES" ? selections : selections.join(valueSeparator), void 0, true);
125
+ };
111
126
  const afterLoadCodeList = (codeList) => {
112
127
  items.value = [];
113
128
  codeListItems.value = [];
@@ -123,6 +138,7 @@ const IBizTreePicker = /* @__PURE__ */ defineComponent({
123
138
  break;
124
139
  }
125
140
  }
141
+ autoSelectFirstOption();
126
142
  };
127
143
  const loadCodeList = async () => {
128
144
  if (c.model.appCodeListId) {
@@ -149,7 +165,7 @@ const IBizTreePicker = /* @__PURE__ */ defineComponent({
149
165
  } else if (isString(newVal)) {
150
166
  val = newVal.split(valueSeparator);
151
167
  }
152
- defaultCheckedKeys.value = val.filter((_key) => codeListItems.value.find((item) => item.value === _key && item.isLeaf));
168
+ defaultCheckedKeys.value = val.filter((_key) => codeListItems.value.find((item) => item.value === _key && !item.children));
153
169
  }
154
170
  }, {
155
171
  immediate: true
@@ -94,6 +94,10 @@ const IBizVirtualizedList = /* @__PURE__ */ defineComponent({
94
94
  const isLoading = ref(false);
95
95
  let editorState = "";
96
96
  const codeItemValueNumber = ref(false);
97
+ const {
98
+ getSelection,
99
+ getSelectionValue
100
+ } = useCodeListSelection(c.allItemsValue);
97
101
  const handleTreeNodes = (nodes) => {
98
102
  if (nodes.length === 0) {
99
103
  return [];
@@ -121,6 +125,20 @@ const IBizVirtualizedList = /* @__PURE__ */ defineComponent({
121
125
  });
122
126
  return list;
123
127
  };
128
+ const autoSelectFirstOption = () => {
129
+ const item = items.value[0];
130
+ if (!c.autoSelectFirstOption || props.value || !item)
131
+ return;
132
+ if (c.multiple) {
133
+ const value = c.allItems && !hasChildren.value ? getSelectionValue(item.value).map((v) => "".concat(v)) : [item.value];
134
+ emit("change", c.model.valueType === "SIMPLES" ? value : value.join(","), void 0, true);
135
+ } else if (editorItems && editorItems.length > 0) {
136
+ emit("change", item.value, editorItems[0].id, true);
137
+ emit("change", item.text, void 0, true);
138
+ } else {
139
+ emit("change", item.value, void 0, true);
140
+ }
141
+ };
124
142
  const afterLoadCodeList = (codeList) => {
125
143
  items.value = [];
126
144
  codeListItems.value = [];
@@ -143,6 +161,7 @@ const IBizVirtualizedList = /* @__PURE__ */ defineComponent({
143
161
  break;
144
162
  }
145
163
  }
164
+ autoSelectFirstOption();
146
165
  };
147
166
  const loadCodeList = async () => {
148
167
  if (c.model.appCodeListId) {
@@ -194,10 +213,6 @@ const IBizVirtualizedList = /* @__PURE__ */ defineComponent({
194
213
  const list = hasChildren.value ? codeListItems.value : items.value;
195
214
  return list.find((item) => item.value === value);
196
215
  };
197
- const {
198
- getSelection,
199
- getSelectionValue
200
- } = useCodeListSelection(c.allItemsValue);
201
216
  const curValue = computed({
202
217
  get() {
203
218
  var _a, _b, _c;
@@ -64,16 +64,31 @@ const IBizListBox = /* @__PURE__ */ defineComponent({
64
64
  });
65
65
  const codeList = c.codeList;
66
66
  const editorType = editorModel.editorType;
67
+ const valueSeparator = (codeList == null ? void 0 : codeList.valueSeparator) || ",";
67
68
  const items = ref([]);
69
+ const autoSelectFirstOption = () => {
70
+ const item = items.value[0];
71
+ if (!c.autoSelectFirstOption || props.value || !item)
72
+ return;
73
+ let value;
74
+ if (multiple) {
75
+ const selections = c.allItems ? items.value.filter((_item) => _item.value !== c.allItemsValue).map((_item) => _item.value) : [item.value];
76
+ value = c.model.valueType === "SIMPLES" ? selections : selections.join(valueSeparator);
77
+ } else {
78
+ value = item.value;
79
+ }
80
+ emit("change", value, void 0, true);
81
+ };
68
82
  const loadListBoxItems = async () => {
69
83
  if (Object.is("LISTBOX", editorType)) {
70
84
  const controller = c;
71
85
  controller.loadCodeList(props.data).then((_codeList) => {
72
86
  if (multiple) {
73
87
  items.value = controller.handleCodeListAllItems(_codeList);
74
- return;
88
+ } else {
89
+ items.value = _codeList;
75
90
  }
76
- items.value = _codeList;
91
+ autoSelectFirstOption();
77
92
  });
78
93
  } else if (Object.is("LISTBOXPICKUP", editorType)) {
79
94
  const controller = c;
@@ -84,11 +99,17 @@ const IBizListBox = /* @__PURE__ */ defineComponent({
84
99
  value: item[controller.keyName],
85
100
  text: item[controller.textName]
86
101
  }));
102
+ autoSelectFirstOption();
87
103
  }
88
104
  }
89
105
  }
90
106
  };
91
- loadListBoxItems();
107
+ watch(() => props.data, () => {
108
+ loadListBoxItems();
109
+ }, {
110
+ immediate: true,
111
+ deep: true
112
+ });
92
113
  const fn = (data) => {
93
114
  if (data) {
94
115
  if (Object.is("LISTBOX", editorType) && multiple) {
@@ -106,10 +127,6 @@ const IBizListBox = /* @__PURE__ */ defineComponent({
106
127
  return "STR";
107
128
  });
108
129
  const calcOrMode = useCalcOrMode(currentMode.value, c.model.valueType);
109
- let valueSeparator = ",";
110
- if (codeList && codeList.valueSeparator) {
111
- valueSeparator = codeList.valueSeparator;
112
- }
113
130
  const {
114
131
  getSelection,
115
132
  getSelectionValue