@ibiz-template/vue3-components 0.6.9 → 0.6.11

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 (144) hide show
  1. package/dist/index-oPRPtU0q.js +4 -0
  2. package/dist/index.min.css +1 -1
  3. package/dist/index.system.min.js +1 -1
  4. package/dist/wang-editor-Zc_Y0dGt.js +1 -0
  5. package/dist/{xlsx-util-vDgpWrEL.js → xlsx-util-5X-82uzW.js} +1 -1
  6. package/es/control/calendar/calendar.css +1 -1
  7. package/es/control/drbar/drbar.controller.d.ts +15 -1
  8. package/es/control/drbar/drbar.controller.mjs +53 -4
  9. package/es/control/drbar/drbar.css +1 -1
  10. package/es/control/drbar/drbar.d.ts +0 -1
  11. package/es/control/drbar/drbar.mjs +8 -13
  12. package/es/control/drbar/index.d.ts +0 -1
  13. package/es/control/exp-bar/calendar-exp-bar/calendar-exp-bar.d.ts +1 -1
  14. package/es/control/exp-bar/calendar-exp-bar/calendar-exp-bar.mjs +3 -3
  15. package/es/control/exp-bar/calendar-exp-bar/index.d.ts +1 -1
  16. package/es/control/exp-bar/chart-exp-bar/chart-exp-bar.d.ts +1 -1
  17. package/es/control/exp-bar/chart-exp-bar/chart-exp-bar.mjs +3 -3
  18. package/es/control/exp-bar/chart-exp-bar/index.d.ts +1 -1
  19. package/es/control/exp-bar/data-view-exp-bar/data-view-view-exp-bar.d.ts +1 -1
  20. package/es/control/exp-bar/data-view-exp-bar/data-view-view-exp-bar.mjs +3 -3
  21. package/es/control/exp-bar/data-view-exp-bar/index.d.ts +1 -1
  22. package/es/control/exp-bar/grid-exp-bar/grid-exp-bar.d.ts +1 -1
  23. package/es/control/exp-bar/grid-exp-bar/grid-exp-bar.mjs +3 -3
  24. package/es/control/exp-bar/grid-exp-bar/index.d.ts +1 -1
  25. package/es/control/exp-bar/list-exp-bar/index.d.ts +1 -1
  26. package/es/control/exp-bar/list-exp-bar/list-exp-bar.d.ts +1 -1
  27. package/es/control/exp-bar/list-exp-bar/list-exp-bar.mjs +3 -3
  28. package/es/control/exp-bar/render-util.d.ts +2 -2
  29. package/es/control/exp-bar/render-util.mjs +16 -3
  30. package/es/control/exp-bar/tree-exp-bar/index.d.ts +1 -1
  31. package/es/control/exp-bar/tree-exp-bar/tree-exp-bar.d.ts +1 -1
  32. package/es/control/exp-bar/tree-exp-bar/tree-exp-bar.mjs +3 -3
  33. package/es/control/form/form/form.mjs +16 -2
  34. package/es/control/form/form-detail/form-item/form-item.mjs +2 -1
  35. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.d.ts +3 -0
  36. package/es/control/grid/grid/grid.mjs +18 -2
  37. package/es/control/grid/grid-column/grid-field-column/grid-field-column.css +1 -1
  38. package/es/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.mjs +2 -1
  39. package/es/control/toolbar/toolbar.mjs +12 -2
  40. package/es/control/tree-grid/tree-grid.mjs +14 -2
  41. package/es/editor/array/ibiz-array/ibiz-array.mjs +5 -5
  42. package/es/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.mjs +3 -3
  43. package/es/editor/carousel/ibiz-carousel/ibiz-carousel.mjs +3 -3
  44. package/es/editor/cascader/ibiz-cascader/ibiz-cascader.mjs +3 -3
  45. package/es/editor/check-box/ibiz-checkbox/ibiz-checkbox.mjs +3 -3
  46. package/es/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.mjs +3 -3
  47. package/es/editor/color-picker/ibiz-color-picker/ibiz-color-picker.mjs +3 -3
  48. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  49. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.mjs +3 -3
  50. package/es/editor/data-picker/ibiz-picker/ibiz-picker.css +1 -1
  51. package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +5 -5
  52. package/es/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.css +1 -1
  53. package/es/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.mjs +3 -3
  54. package/es/editor/date-picker/ibiz-date-picker/ibiz-date-picker.css +1 -1
  55. package/es/editor/date-picker/ibiz-date-picker/ibiz-date-picker.mjs +4 -4
  56. package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.css +1 -1
  57. package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.mjs +5 -5
  58. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +4 -4
  59. package/es/editor/html/wang-editor/wang-editor.mjs +4 -0
  60. package/es/editor/list-box/ibiz-list-box/ibiz-list-box.mjs +5 -5
  61. package/es/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.mjs +5 -5
  62. package/es/editor/radio-button-list/ibiz-radio/ibiz-radio.mjs +3 -3
  63. package/es/editor/rate/ibiz-rate/ibiz-rate.mjs +3 -3
  64. package/es/editor/slider/ibiz-slider/ibiz-slider.mjs +3 -3
  65. package/es/editor/stepper/ibiz-stepper/ibiz-stepper.mjs +3 -3
  66. package/es/editor/switch/ibiz-switch/ibiz-switch.mjs +3 -3
  67. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +3 -3
  68. package/es/editor/text-box/input/input.css +1 -1
  69. package/es/editor/text-box/input/input.mjs +3 -3
  70. package/es/editor/upload/ibiz-file-upload/ibiz-file-upload.mjs +3 -3
  71. package/es/editor/upload/ibiz-image-preview/ibiz-image-preview.mjs +3 -3
  72. package/es/editor/upload/ibiz-image-upload/ibiz-image-upload.mjs +5 -5
  73. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.mjs +3 -3
  74. package/es/util/message-util/message-util.d.ts +13 -1
  75. package/es/util/message-util/message-util.mjs +50 -0
  76. package/es/view-engine/edit-view.engine.mjs +7 -7
  77. package/es/view-engine/exp-view.engine.d.ts +2 -1
  78. package/es/view-engine/exp-view.engine.mjs +10 -0
  79. package/es/view-engine/index.mjs +5 -0
  80. package/es/view-engine/tab-search-view.engine.d.ts +61 -0
  81. package/es/view-engine/tab-search-view.engine.mjs +105 -0
  82. package/es/web-app/App.css +1 -1
  83. package/es/web-app/guard/auth-guard/auth-guard.mjs +8 -4
  84. package/lib/control/calendar/calendar.css +1 -1
  85. package/lib/control/drbar/drbar.cjs +7 -12
  86. package/lib/control/drbar/drbar.controller.cjs +53 -4
  87. package/lib/control/drbar/drbar.css +1 -1
  88. package/lib/control/exp-bar/calendar-exp-bar/calendar-exp-bar.cjs +3 -3
  89. package/lib/control/exp-bar/chart-exp-bar/chart-exp-bar.cjs +3 -3
  90. package/lib/control/exp-bar/data-view-exp-bar/data-view-view-exp-bar.cjs +3 -3
  91. package/lib/control/exp-bar/grid-exp-bar/grid-exp-bar.cjs +3 -3
  92. package/lib/control/exp-bar/list-exp-bar/list-exp-bar.cjs +3 -3
  93. package/lib/control/exp-bar/render-util.cjs +15 -2
  94. package/lib/control/exp-bar/tree-exp-bar/tree-exp-bar.cjs +3 -3
  95. package/lib/control/form/form/form.cjs +15 -1
  96. package/lib/control/form/form-detail/form-item/form-item.cjs +2 -1
  97. package/lib/control/grid/grid/grid.cjs +17 -1
  98. package/lib/control/grid/grid-column/grid-field-column/grid-field-column.css +1 -1
  99. package/lib/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.cjs +2 -1
  100. package/lib/control/toolbar/toolbar.cjs +12 -2
  101. package/lib/control/tree-grid/tree-grid.cjs +14 -2
  102. package/lib/editor/array/ibiz-array/ibiz-array.cjs +4 -4
  103. package/lib/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.cjs +2 -2
  104. package/lib/editor/carousel/ibiz-carousel/ibiz-carousel.cjs +2 -2
  105. package/lib/editor/cascader/ibiz-cascader/ibiz-cascader.cjs +2 -2
  106. package/lib/editor/check-box/ibiz-checkbox/ibiz-checkbox.cjs +2 -2
  107. package/lib/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.cjs +2 -2
  108. package/lib/editor/color-picker/ibiz-color-picker/ibiz-color-picker.cjs +2 -2
  109. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.cjs +2 -2
  110. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  111. package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +4 -4
  112. package/lib/editor/data-picker/ibiz-picker/ibiz-picker.css +1 -1
  113. package/lib/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.cjs +2 -2
  114. package/lib/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.css +1 -1
  115. package/lib/editor/date-picker/ibiz-date-picker/ibiz-date-picker.cjs +3 -3
  116. package/lib/editor/date-picker/ibiz-date-picker/ibiz-date-picker.css +1 -1
  117. package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.cjs +4 -4
  118. package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.css +1 -1
  119. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +3 -3
  120. package/lib/editor/html/wang-editor/wang-editor.cjs +4 -0
  121. package/lib/editor/list-box/ibiz-list-box/ibiz-list-box.cjs +4 -4
  122. package/lib/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.cjs +4 -4
  123. package/lib/editor/radio-button-list/ibiz-radio/ibiz-radio.cjs +2 -2
  124. package/lib/editor/rate/ibiz-rate/ibiz-rate.cjs +2 -2
  125. package/lib/editor/slider/ibiz-slider/ibiz-slider.cjs +2 -2
  126. package/lib/editor/stepper/ibiz-stepper/ibiz-stepper.cjs +2 -2
  127. package/lib/editor/switch/ibiz-switch/ibiz-switch.cjs +2 -2
  128. package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +2 -2
  129. package/lib/editor/text-box/input/input.cjs +2 -2
  130. package/lib/editor/text-box/input/input.css +1 -1
  131. package/lib/editor/upload/ibiz-file-upload/ibiz-file-upload.cjs +2 -2
  132. package/lib/editor/upload/ibiz-image-preview/ibiz-image-preview.cjs +2 -2
  133. package/lib/editor/upload/ibiz-image-upload/ibiz-image-upload.cjs +4 -4
  134. package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.cjs +2 -2
  135. package/lib/util/message-util/message-util.cjs +50 -0
  136. package/lib/view-engine/edit-view.engine.cjs +6 -6
  137. package/lib/view-engine/exp-view.engine.cjs +10 -0
  138. package/lib/view-engine/index.cjs +5 -0
  139. package/lib/view-engine/tab-search-view.engine.cjs +107 -0
  140. package/lib/web-app/App.css +1 -1
  141. package/lib/web-app/guard/auth-guard/auth-guard.cjs +8 -4
  142. package/package.json +9 -9
  143. package/dist/index-kZU4Zro0.js +0 -4
  144. package/dist/wang-editor-SyWEeij2.js +0 -1
@@ -0,0 +1,105 @@
1
+ import { SysUIActionTag } from '@ibiz-template/runtime';
2
+ import { TabExpViewEngine } from './tab-exp-view.engine.mjs';
3
+
4
+ "use strict";
5
+ class TabSearchViewEngine extends TabExpViewEngine {
6
+ /**
7
+ * 搜索表单控制器
8
+ * @author lxm
9
+ * @date 2023-05-22 01:56:25
10
+ * @readonly
11
+ */
12
+ get searchForm() {
13
+ return this.view.getController("searchform");
14
+ }
15
+ /**
16
+ * 搜索栏控制器
17
+ * @author lxm
18
+ * @date 2023-05-22 01:56:25
19
+ * @readonly
20
+ */
21
+ get searchBar() {
22
+ return this.view.getController("searchbar");
23
+ }
24
+ /**
25
+ * 分页导航面板控制器
26
+ * @author lxm
27
+ * @date 2023-05-22 01:56:25
28
+ * @readonly
29
+ */
30
+ get tabExpPanel() {
31
+ return this.view.getController("tabexppanel");
32
+ }
33
+ async onCreated() {
34
+ await super.onCreated();
35
+ const { childNames } = this.view;
36
+ childNames.push("searchform", "searchbar");
37
+ }
38
+ async onMounted() {
39
+ await super.onMounted();
40
+ const controller = this.viewLayoutPanel.panelItems.view_searchform;
41
+ if (controller) {
42
+ const formExists = !!this.searchForm;
43
+ controller.state.keepAlive = formExists;
44
+ controller.state.visible = formExists;
45
+ }
46
+ const searchbarC = this.viewLayoutPanel.panelItems.view_searchbar;
47
+ if (searchbarC) {
48
+ const visible = this.searchBar && !!(this.searchBar.model.enableQuickSearch || this.searchBar.model.enableGroup || this.searchBar.model.enableFilter === true);
49
+ searchbarC.state.visible = visible;
50
+ }
51
+ if (this.searchForm) {
52
+ this.searchForm.evt.on("onSearch", () => {
53
+ this.calcViewParams();
54
+ });
55
+ }
56
+ if (this.searchBar) {
57
+ this.searchBar.evt.on("onSearch", () => {
58
+ this.calcViewParams();
59
+ });
60
+ }
61
+ }
62
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types
63
+ async call(key, args) {
64
+ if (key === SysUIActionTag.SEARCH) {
65
+ await this.searchForm.search();
66
+ return null;
67
+ }
68
+ if (key === SysUIActionTag.RESET) {
69
+ await this.searchForm.reset();
70
+ return null;
71
+ }
72
+ if (key === SysUIActionTag.REFRESH) {
73
+ await this.calcViewParams();
74
+ return null;
75
+ }
76
+ return super.call(key, args);
77
+ }
78
+ /**
79
+ * 获取搜索相关的查询参数
80
+ * @author lxm
81
+ * @date 2023-05-22 03:26:04
82
+ * @return {*} {IParams}
83
+ */
84
+ getSearchParams() {
85
+ const params = {};
86
+ if (this.searchForm) {
87
+ Object.assign(params, this.searchForm.getFilterParams());
88
+ }
89
+ if (this.searchBar) {
90
+ Object.assign(params, this.searchBar.getFilterParams());
91
+ }
92
+ return params;
93
+ }
94
+ /**
95
+ * 重新计算视图参数
96
+ * @author lxm
97
+ * @date 2024-03-18 05:00:02
98
+ */
99
+ calcViewParams() {
100
+ this.tabExpPanel.state.expViewParams = this.getSearchParams();
101
+ this.tabExpPanel.refresh();
102
+ }
103
+ }
104
+
105
+ export { TabSearchViewEngine };
@@ -1 +1 @@
1
- #app{width:100vw;height:100vh;background-color:var(--ibiz-color-bg-0)}body,html{padding:0;margin:0;border:0}
1
+ #app{width:100vw;height:100vh;background-color:var(--ibiz-color-bg-0)}body,html{padding:0;margin:0;border:0}.ibiz-message--alert.el-message{--el-message-padding:8px 16px}.ibiz-message--alert.el-message .el-message__content,.ibiz-message--alert.el-message .el-message__icon{color:inherit}.ibiz-message--alert.el-message .el-message__closeBtn{color:#a8abb2}.ibiz-message--alert .el-message__content{line-height:24px}.ibiz-message--alert.el-message--info{color:#909399;background-color:#f4f4f5}.ibiz-message--alert.el-message--success{color:#67c23a;background-color:#f0f9eb}.ibiz-message--alert.el-message--warning{color:#e6a23c;background-color:#fdf6ec}.ibiz-message--alert.el-message--error{color:#f56c6c;background-color:#fef0f0}
@@ -113,11 +113,15 @@ class AuthGuard {
113
113
  const remember = getCookie(CoreConst.TOKEN_REMEMBER);
114
114
  const refreshToken = getCookie(CoreConst.REFRESH_TOKEN);
115
115
  if (responseStatus === 401 && remember && refreshToken != null && refreshToken !== "") {
116
- await ibiz.auth.refreshToken();
117
- if (ibiz.env.isSaaSMode === true) {
118
- await this.loadOrgData();
116
+ try {
117
+ await ibiz.auth.refreshToken();
118
+ if (ibiz.env.isSaaSMode === true) {
119
+ await this.loadOrgData();
120
+ }
121
+ await this.loadAppData();
122
+ } catch (refreshTokenError) {
123
+ throw error;
119
124
  }
120
- await this.loadAppData();
121
125
  } else {
122
126
  throw error;
123
127
  }
@@ -1 +1 @@
1
- .ibiz-control-calendar{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);width:100%;height:100%}.ibiz-control-calendar__calendar-item{display:flex;align-items:center;padding:var(--ibiz-control-calendar-item-padding)}.ibiz-control-calendar__icon{width:10px;height:10px;margin-right:var(--ibiz-spacing-base-tight);border-radius:50%}.ibiz-control-calendar-content{display:flex;flex-direction:column;width:100%;height:100%}.ibiz-control-calendar-content .el-calendar{display:flex;flex-direction:column;height:100%}.ibiz-control-calendar-content .el-calendar__header{flex-wrap:wrap}.ibiz-control-calendar-content .el-calendar-table,.ibiz-control-calendar-content .el-calendar-table .el-calendar-day{width:100%;height:100%;cursor:pointer}.ibiz-control-calendar-content .el-calendar-table{flex:1;width:-moz-fit-content;width:fit-content}.ibiz-control-calendar-content .el-calendar-table .el-calendar-day:hover{cursor:pointer;background-color:var(--el-calendar-selected-bg-color)}.ibiz-control-calendar-content .el-calendar__body{display:flex;flex:1;padding:0;overflow:auto}.ibiz-control-calendar-more{width:100%;font-size:var(--ibiz-font-size-small);border-radius:var(--ibiz-spacing-extra-tight)}.ibiz-control-calendar-more:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-control-calendar-item{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);height:100%;padding:var(--ibiz-control-calendar-item-padding);margin-bottom:var(--ibiz-control-calendar-margin);overflow:hidden;font-size:var(--ibiz-control-calendar-font-size);color:var(--ibiz-control-calendar-text-color);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border:solid .5px transparent;border-radius:var(--ibiz-control-calendar-border-radius)}.ibiz-control-calendar-item:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-control-calendar-item.is-active{background-color:var(--ibiz-control-calendar-active-bg-color);border:solid .5px var(--ibiz-control-calendar-border-color)}.ibiz-control-calendar-date-text{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);padding:var(--ibiz-control-calendar-item-padding);margin:0;text-align:center}.ibiz-control-calendar-day{height:-moz-fit-content;height:fit-content}.ibiz-control-calendar-content-title{line-height:var(--ibiz-editor-default-line-height)}.ibiz-control-calendar-content-header{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);display:flex;align-items:center}.ibiz-control-calendar-content-header>*+*{margin-left:var(--ibiz-control-calendar-item-padding)}.ibiz-control-calendar-legend{display:flex;justify-content:flex-end;width:100%}.ibiz-control-calendar-legend>*+*{margin-left:var(--ibiz-spacing-base-loose)}.ibiz-control-calendar-timeline-content .el-timeline{padding-left:0}
1
+ .ibiz-control-calendar{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);width:100%;height:100%}.ibiz-control-calendar__calendar-item{display:flex;align-items:center;padding:var(--ibiz-control-calendar-item-padding)}.ibiz-control-calendar__icon{width:10px;height:10px;margin-right:var(--ibiz-spacing-base-tight);border-radius:50%}.ibiz-control-calendar .ibiz-control-calendar-item{margin:0}.ibiz-control-calendar-content{display:flex;flex-direction:column;width:100%;height:100%}.ibiz-control-calendar-content .el-calendar{display:flex;flex-direction:column;height:100%}.ibiz-control-calendar-content .el-calendar__header{flex-wrap:wrap}.ibiz-control-calendar-content .el-calendar-table,.ibiz-control-calendar-content .el-calendar-table .el-calendar-day{width:100%;height:100%;min-height:90px;cursor:pointer}.ibiz-control-calendar-content .el-calendar-table{flex:1;width:-moz-fit-content;width:fit-content}.ibiz-control-calendar-content .el-calendar-table .el-calendar-day:hover{cursor:pointer;background-color:var(--el-calendar-selected-bg-color)}.ibiz-control-calendar-content .el-calendar__body{display:flex;flex:1;padding:0;overflow:auto}.ibiz-control-calendar-more{width:100%;font-size:var(--ibiz-font-size-small);border-radius:var(--ibiz-spacing-extra-tight)}.ibiz-control-calendar-more:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-control-calendar-item{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);height:100%;padding:var(--ibiz-control-calendar-item-padding);margin-bottom:var(--ibiz-control-calendar-margin);overflow:hidden;font-size:var(--ibiz-control-calendar-font-size);color:var(--ibiz-control-calendar-text-color);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border:solid .5px transparent;border-radius:var(--ibiz-control-calendar-border-radius)}.ibiz-control-calendar-item:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-control-calendar-item.is-active{background-color:var(--ibiz-control-calendar-active-bg-color);border:solid .5px var(--ibiz-control-calendar-border-color)}.ibiz-control-calendar-date-text{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);padding-bottom:var(--ibiz-control-calendar-item-padding);margin:0;text-align:center}.ibiz-control-calendar-day{height:-moz-fit-content;height:fit-content}.ibiz-control-calendar-content-title{line-height:var(--ibiz-editor-default-line-height)}.ibiz-control-calendar-content-header{--ibiz-control-calendar-text-color:var(--ibiz-color-text-0);--ibiz-control-calendar-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-calendar-border-color:var(--ibiz-color-primary-active);--ibiz-control-calendar-font-size:var(--ibiz-font-size-small);--ibiz-control-calendar-item-padding:var(--ibiz-spacing-tight);--ibiz-control-calendar-border-radius:var(--ibiz-border-radius-small);--ibiz-control-calendar-margin:var(--ibiz-spacing-extra-tight);display:flex;align-items:center}.ibiz-control-calendar-content-header>*+*{margin-left:var(--ibiz-control-calendar-item-padding)}.ibiz-control-calendar-legend{display:flex;justify-content:flex-end;width:100%}.ibiz-control-calendar-legend>*+*{margin-left:var(--ibiz-spacing-base-loose)}.ibiz-control-calendar-timeline-content .el-timeline{padding-left:0}
@@ -58,7 +58,6 @@ const DRBarControl = /* @__PURE__ */ vue.defineComponent({
58
58
  c.handleSelectChange(key);
59
59
  };
60
60
  const route = vueRouter.useRoute();
61
- const defaultActive = vue.ref("");
62
61
  let expViewRoutePath = "";
63
62
  const opens = [];
64
63
  vue.watch(() => c.state.isCreated, (_newVal, _oldVal) => {
@@ -84,13 +83,7 @@ const DRBarControl = /* @__PURE__ */ vue.defineComponent({
84
83
  const {
85
84
  srfnav
86
85
  } = routePath.pathNodes[depth - 1];
87
- if (srfnav && c.state.selectedItem && c.state.selectedItem !== srfnav) {
88
- c.handleSelectChange(srfnav);
89
- defaultActive.value = srfnav;
90
- } else if (srfnav === void 0 && c.state.defaultItem && c.state.selectedItem !== c.state.defaultItem) {
91
- c.handleSelectChange(c.state.defaultItem);
92
- defaultActive.value = "";
93
- }
86
+ c.handleSelectChange(srfnav);
94
87
  }
95
88
  }
96
89
  }
@@ -98,6 +91,9 @@ const DRBarControl = /* @__PURE__ */ vue.defineComponent({
98
91
  immediate: true
99
92
  });
100
93
  const renderMenuItems = (item) => {
94
+ if (!item.visible) {
95
+ return;
96
+ }
101
97
  if (item.children) {
102
98
  let subtitle = "";
103
99
  if (props.showMode === "horizontal") {
@@ -141,7 +137,6 @@ const DRBarControl = /* @__PURE__ */ vue.defineComponent({
141
137
  ns,
142
138
  handleSelect,
143
139
  renderMenuItems,
144
- defaultActive,
145
140
  opens
146
141
  };
147
142
  },
@@ -150,16 +145,16 @@ const DRBarControl = /* @__PURE__ */ vue.defineComponent({
150
145
  const {
151
146
  isCreated,
152
147
  drBarItems,
153
- defaultItem
148
+ selectedItem
154
149
  } = this.c.state;
155
150
  return vue.createVNode(vue.resolveComponent("iBizControlBase"), {
156
151
  "controller": this.c,
157
152
  "class": this.ns.b()
158
153
  }, {
159
- default: () => [isCreated && !!defaultItem && vue.createVNode(vue.resolveComponent("el-menu"), {
154
+ default: () => [isCreated && vue.createVNode(vue.resolveComponent("el-menu"), {
160
155
  "class": this.ns.e("menu"),
161
156
  "mode": this.showMode,
162
- "default-active": this.defaultActive || defaultItem,
157
+ "default-active": selectedItem,
163
158
  "onSelect": this.handleSelect,
164
159
  "default-openeds": this.opens
165
160
  }, _isSlot(_slot = drBarItems.map((item) => {
@@ -118,6 +118,50 @@ class DRBarController extends runtime.ControlController {
118
118
  this.initDRBarItems();
119
119
  await this.initCounter();
120
120
  }
121
+ /**
122
+ * 计算关系界面组权限
123
+ *
124
+ * @param {IData} item 关系组成员
125
+ * @memberof DRBarController
126
+ */
127
+ async calcPermitted(item) {
128
+ let permitted = true;
129
+ if (item.dataAccessAction) {
130
+ const app = await ibiz.hub.getApp(this.context.srfappid);
131
+ const data = this.getData().length > 0 ? this.getData()[0] : void 0;
132
+ permitted = await app.authority.calcByDataAccessAction(
133
+ item.dataAccessAction,
134
+ this.context,
135
+ data,
136
+ this.model.appDataEntityId
137
+ );
138
+ }
139
+ item.visible = permitted;
140
+ }
141
+ /**
142
+ * 计算是否展示
143
+ *
144
+ * @param {IData} item 关系组成员
145
+ * @memberof DRBarController
146
+ */
147
+ async calcDrBarItemsState() {
148
+ const arr = [];
149
+ this.state.drBarItems.forEach((group) => {
150
+ var _a, _b;
151
+ if ((_a = group.children) == null ? void 0 : _a.length) {
152
+ (_b = group.children) == null ? void 0 : _b.forEach((item) => {
153
+ arr.push(this.calcPermitted(item));
154
+ });
155
+ }
156
+ });
157
+ await Promise.all(arr);
158
+ this.state.drBarItems.forEach((group) => {
159
+ var _a;
160
+ if ((_a = group.children) == null ? void 0 : _a.length) {
161
+ group.visible = !group.children.every((item) => item.visible === false);
162
+ }
163
+ });
164
+ }
121
165
  /**
122
166
  * 加载完成
123
167
  *
@@ -127,7 +171,8 @@ class DRBarController extends runtime.ControlController {
127
171
  async onMounted() {
128
172
  await super.onMounted();
129
173
  if (this.form) {
130
- this.form.evt.on("onLoadSuccess", () => {
174
+ this.form.evt.on("onLoadSuccess", async () => {
175
+ await this.calcDrBarItemsState();
131
176
  this.handleFormChange();
132
177
  this.doDefaultSelect();
133
178
  });
@@ -209,7 +254,9 @@ class DRBarController extends runtime.ControlController {
209
254
  caption: itemCaption,
210
255
  sysImage: item.sysImage,
211
256
  disabled: false,
212
- counterId: item.counterId
257
+ counterId: item.counterId,
258
+ visible: true,
259
+ dataAccessAction: item.dataAccessAction || void 0
213
260
  };
214
261
  };
215
262
  if (dedrbarGroups && dedrctrlItems) {
@@ -219,10 +266,11 @@ class DRBarController extends runtime.ControlController {
219
266
  });
220
267
  } else {
221
268
  dedrbarGroups.forEach((group) => {
269
+ var _a;
222
270
  const groupItems = dedrctrlItems.filter(
223
271
  (item) => item.dedrbarGroupId === group.id
224
272
  );
225
- if (groupItems.length > 1) {
273
+ if (groupItems.length > 1 || ((_a = this.controlParams) == null ? void 0 : _a.singleitemgroup) === "true" && groupItems.length === 1) {
226
274
  let itemCaption = group.caption;
227
275
  if (group.capLanguageRes) {
228
276
  itemCaption = ibiz.i18n.t(
@@ -234,6 +282,7 @@ class DRBarController extends runtime.ControlController {
234
282
  tag: group.id,
235
283
  caption: itemCaption,
236
284
  sysImage: group.sysImage,
285
+ visible: true,
237
286
  children: groupItems.map((item) => getItemState(item))
238
287
  });
239
288
  } else if (groupItems.length === 1) {
@@ -250,7 +299,7 @@ class DRBarController extends runtime.ControlController {
250
299
  * @param {string} key
251
300
  * @memberof DRBarController
252
301
  */
253
- handleSelectChange(key, isRoutePushed = false) {
302
+ handleSelectChange(key = this.state.defaultItem, isRoutePushed = false) {
254
303
  var _a;
255
304
  if (this.state.selectedItem === key) {
256
305
  return;
@@ -1 +1 @@
1
- .ibiz-control-drbar .el-menu--horizontal.el-menu{border-bottom:none}.ibiz-control-drbar .el-menu-item{justify-content:space-between;line-height:unset}
1
+ .ibiz-control-drbar{height:100%}.ibiz-control-drbar .el-menu--horizontal.el-menu{border-bottom:none}.ibiz-control-drbar .el-menu-item{justify-content:space-between;line-height:unset}.ibiz-control-drbar__menu{height:100%}
@@ -42,14 +42,14 @@ const CalendarExpBarControl = /* @__PURE__ */ vue.defineComponent({
42
42
  const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
43
43
  const {
44
44
  renderTitle,
45
- renderQuickSearch
45
+ renderSearchBar
46
46
  } = renderUtil.useExpBarRender(c, ns);
47
47
  renderUtil.useWatchRouteChange(c);
48
48
  return {
49
49
  c,
50
50
  ns,
51
51
  renderTitle,
52
- renderQuickSearch
52
+ renderSearchBar
53
53
  };
54
54
  },
55
55
  render() {
@@ -62,7 +62,7 @@ const CalendarExpBarControl = /* @__PURE__ */ vue.defineComponent({
62
62
  } = state;
63
63
  const slots = {
64
64
  captionbar: this.renderTitle,
65
- searchbar: this.renderQuickSearch
65
+ searchbar: this.renderSearchBar
66
66
  };
67
67
  if (isCreated) {
68
68
  if (XDataModel) {
@@ -42,14 +42,14 @@ const ChartExpBarControl = /* @__PURE__ */ vue.defineComponent({
42
42
  const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
43
43
  const {
44
44
  renderTitle,
45
- renderQuickSearch
45
+ renderSearchBar
46
46
  } = renderUtil.useExpBarRender(c, ns);
47
47
  renderUtil.useWatchRouteChange(c);
48
48
  return {
49
49
  c,
50
50
  ns,
51
51
  renderTitle,
52
- renderQuickSearch
52
+ renderSearchBar
53
53
  };
54
54
  },
55
55
  render() {
@@ -61,7 +61,7 @@ const ChartExpBarControl = /* @__PURE__ */ vue.defineComponent({
61
61
  } = this.c;
62
62
  const slots = {
63
63
  captionbar: this.renderTitle,
64
- searchbar: this.renderQuickSearch
64
+ searchbar: this.renderSearchBar
65
65
  };
66
66
  if (isCreated) {
67
67
  if (XDataModel) {
@@ -42,14 +42,14 @@ const DataViewExpBarControl = /* @__PURE__ */ vue.defineComponent({
42
42
  const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
43
43
  const {
44
44
  renderTitle,
45
- renderQuickSearch
45
+ renderSearchBar
46
46
  } = renderUtil.useExpBarRender(c, ns);
47
47
  renderUtil.useWatchRouteChange(c);
48
48
  return {
49
49
  c,
50
50
  ns,
51
51
  renderTitle,
52
- renderQuickSearch
52
+ renderSearchBar
53
53
  };
54
54
  },
55
55
  render() {
@@ -61,7 +61,7 @@ const DataViewExpBarControl = /* @__PURE__ */ vue.defineComponent({
61
61
  } = this.c;
62
62
  const slots = {
63
63
  captionbar: this.renderTitle,
64
- searchbar: this.renderQuickSearch
64
+ searchbar: this.renderSearchBar
65
65
  };
66
66
  if (isCreated) {
67
67
  if (XDataModel) {
@@ -42,14 +42,14 @@ const GridExpBarControl = /* @__PURE__ */ vue.defineComponent({
42
42
  const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
43
43
  const {
44
44
  renderTitle,
45
- renderQuickSearch
45
+ renderSearchBar
46
46
  } = renderUtil.useExpBarRender(c, ns);
47
47
  renderUtil.useWatchRouteChange(c);
48
48
  return {
49
49
  c,
50
50
  ns,
51
51
  renderTitle,
52
- renderQuickSearch
52
+ renderSearchBar
53
53
  };
54
54
  },
55
55
  render() {
@@ -61,7 +61,7 @@ const GridExpBarControl = /* @__PURE__ */ vue.defineComponent({
61
61
  } = this.c;
62
62
  const slots = {
63
63
  captionbar: this.renderTitle,
64
- searchbar: this.renderQuickSearch
64
+ searchbar: this.renderSearchBar
65
65
  };
66
66
  if (isCreated) {
67
67
  if (XDataModel) {
@@ -42,14 +42,14 @@ const ListExpBarControl = /* @__PURE__ */ vue.defineComponent({
42
42
  const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
43
43
  const {
44
44
  renderTitle,
45
- renderQuickSearch
45
+ renderSearchBar
46
46
  } = renderUtil.useExpBarRender(c, ns);
47
47
  renderUtil.useWatchRouteChange(c);
48
48
  return {
49
49
  c,
50
50
  ns,
51
51
  renderTitle,
52
- renderQuickSearch
52
+ renderSearchBar
53
53
  };
54
54
  },
55
55
  render() {
@@ -61,7 +61,7 @@ const ListExpBarControl = /* @__PURE__ */ vue.defineComponent({
61
61
  } = this.c;
62
62
  const slots = {
63
63
  captionbar: this.renderTitle,
64
- searchbar: this.renderQuickSearch
64
+ searchbar: this.renderSearchBar
65
65
  };
66
66
  if (isCreated) {
67
67
  if (XDataModel) {
@@ -36,13 +36,26 @@ function useExpBarRender(c, ns) {
36
36
  "class": [ns.be("caption", "text")]
37
37
  }, [title])]);
38
38
  };
39
- const renderQuickSearch = () => {
39
+ const renderSearchBar = () => {
40
+ var _a, _b;
40
41
  const {
41
42
  model
42
43
  } = c;
43
44
  if (!model.enableSearch) {
44
45
  return null;
45
46
  }
47
+ const modelData = (_b = (_a = c.view.model.viewLayoutPanel) == null ? void 0 : _a.controls) == null ? void 0 : _b.find((item) => item.id === "searchbar");
48
+ if (modelData) {
49
+ const ctrlProps = {
50
+ context: c.context,
51
+ params: c.params
52
+ };
53
+ const comp = vue.resolveComponent("IBizControlShell");
54
+ return vue.h(comp, {
55
+ modelData,
56
+ ...ctrlProps
57
+ });
58
+ }
46
59
  return vue.createVNode(vue.resolveComponent("el-input"), {
47
60
  "model-value": c.state.query,
48
61
  "class": [ns.b("quick-search"), expBarNs.b("quick-search")],
@@ -59,7 +72,7 @@ function useExpBarRender(c, ns) {
59
72
  };
60
73
  return {
61
74
  renderTitle,
62
- renderQuickSearch
75
+ renderSearchBar
63
76
  };
64
77
  }
65
78
  function useWatchRouteChange(c) {
@@ -46,7 +46,7 @@ const TreeExpBarControl = /* @__PURE__ */ vue.defineComponent({
46
46
  const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
47
47
  const {
48
48
  renderTitle,
49
- renderQuickSearch
49
+ renderSearchBar
50
50
  } = renderUtil.useExpBarRender(c, ns);
51
51
  renderUtil.useWatchRouteChange(c);
52
52
  const navigational = vue.computed(() => {
@@ -57,7 +57,7 @@ const TreeExpBarControl = /* @__PURE__ */ vue.defineComponent({
57
57
  ns,
58
58
  navigational,
59
59
  renderTitle,
60
- renderQuickSearch
60
+ renderSearchBar
61
61
  };
62
62
  },
63
63
  render() {
@@ -70,7 +70,7 @@ const TreeExpBarControl = /* @__PURE__ */ vue.defineComponent({
70
70
  } = state;
71
71
  const slots = {
72
72
  captionbar: this.renderTitle,
73
- searchbar: this.renderQuickSearch
73
+ searchbar: this.renderSearchBar
74
74
  };
75
75
  if (isCreated) {
76
76
  if (XDataModel) {
@@ -25,6 +25,19 @@ const FormControl = /* @__PURE__ */ vue.defineComponent({
25
25
  const slotProps = {
26
26
  form: c
27
27
  };
28
+ const renderAttrs = (model) => {
29
+ var _a;
30
+ const attrs = {};
31
+ (_a = model.controlAttributes) == null ? void 0 : _a.forEach((item) => {
32
+ if (item.attrName && item.attrValue) {
33
+ attrs[item.attrName] = runtime.ScriptFactory.execSingleLine(item.attrValue, {
34
+ ...props.controller.getEventArgs(),
35
+ data: props.controller.data
36
+ });
37
+ }
38
+ });
39
+ return attrs;
40
+ };
28
41
  const renderByDetailType = (detail) => {
29
42
  if (detail.hidden) {
30
43
  return;
@@ -33,7 +46,8 @@ const FormControl = /* @__PURE__ */ vue.defineComponent({
33
46
  const detailProps = {
34
47
  modelData: detail,
35
48
  controller: c.details[detailId],
36
- key: detail.id
49
+ key: detail.id,
50
+ ...renderAttrs(detail)
37
51
  };
38
52
  if (slots[detailId]) {
39
53
  return vue.renderSlot(slots, detailId, {
@@ -51,7 +51,8 @@ const FormItem = /* @__PURE__ */ vue.defineComponent({
51
51
  controlParams: this.controller.form.controlParams,
52
52
  onFocus: (event) => this.c.onFocus(event),
53
53
  onBlur: (event) => this.c.onBlur(event),
54
- onEnter: (event) => this.controller.onEnter(event)
54
+ onEnter: (event) => this.controller.onEnter(event),
55
+ ...this.$attrs
55
56
  };
56
57
  if (this.c.form.state.isLoaded) {
57
58
  if (this.$slots.default) {
@@ -10,6 +10,18 @@ require('../../../util/index.cjs');
10
10
  var usePagination = require('../../../util/pagination/use-pagination.cjs');
11
11
 
12
12
  "use strict";
13
+ function renderAttrs(model, params) {
14
+ var _a;
15
+ const attrs = {};
16
+ (_a = model.controlAttributes) == null ? void 0 : _a.forEach((item) => {
17
+ if (item.attrName && item.attrValue) {
18
+ attrs[item.attrName] = runtime.ScriptFactory.execSingleLine(item.attrValue, {
19
+ ...params
20
+ });
21
+ }
22
+ });
23
+ return attrs;
24
+ }
13
25
  function renderColumn(c, model, renderColumns, index) {
14
26
  var _a;
15
27
  const {
@@ -43,7 +55,11 @@ function renderColumn(c, model, renderColumns, index) {
43
55
  return vue.h(comp, {
44
56
  controller: columnC,
45
57
  row: rowState,
46
- key: elRow.tempsrfkey + columnName
58
+ key: elRow.tempsrfkey + columnName,
59
+ ...renderAttrs(model, {
60
+ ...c.getEventArgs(),
61
+ data: rowState.data
62
+ })
47
63
  });
48
64
  }
49
65
  return null;
@@ -1 +1 @@
1
- .ibiz-grid-field-column{--ibiz-grid-field-column-cell-padding:var(--ibiz-spacing-tight);--ibiz-grid-field-column-clickable-text-color:var(--ibiz-color-primary);--ibiz-grid-field-column-clickable-hover-text-color:var(--ibiz-color-primary-hover);--ibiz-grid-field-column-color:var(--ibiz-color-text-2);display:inline-flex;align-items:center;justify-content:var(--ibiz-grid-column-justify-content);width:100%;height:100%;padding:var(--ibiz-grid-field-column-cell-padding)}.ibiz-grid-field-column__text{font-size:var(--ibiz-font-size-regular);font-weight:var(--ibiz-font-weight-regular);color:var(--ibiz-grid-field-column-color)}.ibiz-grid-field-column--clickable{cursor:pointer}.ibiz-grid-field-column--clickable .ibiz-grid-field-column__text{color:var(--ibiz-grid-field-column-clickable-text-color)}.ibiz-grid-field-column--clickable .ibiz-grid-field-column__text:hover{color:var(--ibiz-grid-field-column-clickable-hover-text-color)}.ibiz-grid-field-column--ellipsis .ibiz-grid-field-column-text-container{min-width:0}.ibiz-grid-field-column--ellipsis .ibiz-grid-field-column-toolbar-container{flex-shrink:0}.ibiz-grid-field-column--ellipsis span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-grid-field-column--wrap{word-break:break-word;white-space:pre-wrap}.ibiz-grid-field-column.is-has-action{justify-content:space-between}.ibiz-grid-field-column-text-container{display:inline-flex;flex-grow:1;align-items:center;justify-content:var(--ibiz-grid-column-justify-content);height:100%}.ibiz-grid-field-column-toolbar-container .ibiz-action-toolbar__item:not(.ibiz-action-toolbar__item--level-250){opacity:0}.ibiz-grid-field-column-toolbar-container .ibiz-action-toolbar__separator{opacity:0}.el-table .el-table__body-wrapper tr:hover .ibiz-action-toolbar__item{opacity:1}.el-table .el-table__body-wrapper tr:hover .ibiz-action-toolbar__separator{opacity:1}.el-table .el-table__body-wrapper tr .ibiz-action-toolbar__item.is-expand{opacity:1}
1
+ .ibiz-grid-field-column{--ibiz-grid-field-column-cell-padding:var(--ibiz-spacing-tight);--ibiz-grid-field-column-clickable-text-color:var(--ibiz-color-primary);--ibiz-grid-field-column-clickable-hover-text-color:var(--ibiz-color-primary-hover);--ibiz-grid-field-column-color:var(--ibiz-color-text-2);display:inline-flex;align-items:center;justify-content:var(--ibiz-grid-column-justify-content);width:100%;height:100%;padding:var(--ibiz-grid-field-column-cell-padding)}.ibiz-grid-field-column__text{font-size:var(--ibiz-font-size-regular);font-weight:var(--ibiz-font-weight-regular);color:var(--ibiz-grid-field-column-color)}.ibiz-grid-field-column--clickable{cursor:pointer}.ibiz-grid-field-column--clickable .ibiz-grid-field-column__text{color:var(--ibiz-grid-field-column-clickable-text-color)}.ibiz-grid-field-column--clickable .ibiz-grid-field-column__text:hover{color:var(--ibiz-grid-field-column-clickable-hover-text-color)}.ibiz-grid-field-column--ellipsis .ibiz-grid-field-column-text-container{min-width:0}.ibiz-grid-field-column--ellipsis .ibiz-grid-field-column-toolbar-container{flex-shrink:0}.ibiz-grid-field-column--ellipsis .ibiz-grid-field-column__script{max-height:calc(var(--ibiz-control-grid-content-row-height) - 2 * var(--ibiz-grid-field-column-cell-padding));line-height:calc(var(--ibiz-control-grid-content-row-height) - 2 * var(--ibiz-grid-field-column-cell-padding))}.ibiz-grid-field-column--ellipsis .ibiz-grid-field-column__script *{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-grid-field-column--ellipsis span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-grid-field-column--wrap{word-break:break-word;white-space:pre-wrap}.ibiz-grid-field-column.is-has-action{justify-content:space-between}.ibiz-grid-field-column-text-container{display:inline-flex;flex-grow:1;align-items:center;justify-content:var(--ibiz-grid-column-justify-content);height:100%}.ibiz-grid-field-column-toolbar-container .ibiz-action-toolbar__item:not(.ibiz-action-toolbar__item--level-250){opacity:0}.ibiz-grid-field-column-toolbar-container .ibiz-action-toolbar__separator{opacity:0}.el-table .el-table__body-wrapper tr:hover .ibiz-action-toolbar__item{opacity:1}.el-table .el-table__body-wrapper tr:hover .ibiz-action-toolbar__separator{opacity:1}.el-table .el-table__body-wrapper tr .ibiz-action-toolbar__item.is-expand{opacity:1}
@@ -94,7 +94,8 @@ const GridFieldEditColumn = /* @__PURE__ */ vue.defineComponent({
94
94
  onChange: this.rowDataChange,
95
95
  onInfoTextChange: this.onInfoTextChange,
96
96
  title: this.tooltip,
97
- ...this.editorProps
97
+ ...this.editorProps,
98
+ ...this.$attrs
98
99
  })]
99
100
  });
100
101
  }
@@ -83,7 +83,12 @@ const ToolbarControl = /* @__PURE__ */ vue.defineComponent({
83
83
  default: () => {
84
84
  var _a;
85
85
  return (_a = item.detoolbarItems) == null ? void 0 : _a.map((item2) => {
86
+ var _a2;
86
87
  const actionId = item2.uiactionId;
88
+ const visible = (_a2 = c.state.buttonsState[item2.id]) == null ? void 0 : _a2.visible;
89
+ if (!visible) {
90
+ return null;
91
+ }
87
92
  if (item2.itemType === "SEPERATOR") {
88
93
  return;
89
94
  }
@@ -98,7 +103,7 @@ const ToolbarControl = /* @__PURE__ */ vue.defineComponent({
98
103
  }, null)]
99
104
  });
100
105
  }
101
- if (item2.itemType === "DEUIACTION" && c.state.buttonsState[item2.id].visible) {
106
+ if (item2.itemType === "DEUIACTION") {
102
107
  let _slot2;
103
108
  if (actionId === "exportexcel") {
104
109
  return vue.createVNode(exportExcel.IBizExportExcel, {
@@ -134,7 +139,12 @@ const ToolbarControl = /* @__PURE__ */ vue.defineComponent({
134
139
  });
135
140
  };
136
141
  const renderToolbarItem = (item) => {
142
+ var _a;
137
143
  const itemId = item.id;
144
+ const visible = (_a = c.state.buttonsState[itemId]) == null ? void 0 : _a.visible;
145
+ if (!visible) {
146
+ return null;
147
+ }
138
148
  if (item.itemType === "SEPERATOR") {
139
149
  return vue.createVNode("div", {
140
150
  "key": itemId,
@@ -149,7 +159,7 @@ const ToolbarControl = /* @__PURE__ */ vue.defineComponent({
149
159
  "rawItem": item
150
160
  }, null)]);
151
161
  }
152
- if (item.itemType === "DEUIACTION" && c.state.buttonsState[itemId].visible) {
162
+ if (item.itemType === "DEUIACTION") {
153
163
  let _slot3;
154
164
  const actionId = item.uiactionId;
155
165
  if (actionId === "exportexcel") {