@ibiz-template/vue3-components 0.7.41-alpha.20 → 0.7.41-alpha.22

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 (141) hide show
  1. package/dist/ibiz-markdown-editor-Bd4vTqbM.js +1 -0
  2. package/dist/{index-K6B-Odyq.js → index-mjpFeLkH.js} +1 -1
  3. package/dist/{index-Bt6TkADL.js → index-pz3nYBld.js} +1 -1
  4. package/dist/index-zV2qOpaC.js +11 -0
  5. package/dist/index.min.css +1 -1
  6. package/dist/index.system.min.js +1 -1
  7. package/dist/wang-editor-Xio5lpNl.js +1 -0
  8. package/dist/{xlsx-util-mN5WSU7v.js → xlsx-util-8tqSNsIL.js} +1 -1
  9. package/es/common/action-toolbar/action-toolbar.css +1 -1
  10. package/es/common/action-toolbar/action-toolbar.d.ts +1 -1
  11. package/es/common/action-toolbar/action-toolbar.mjs +49 -7
  12. package/es/common/index.mjs +2 -1
  13. package/es/control/dashboard/dashboard.d.ts +2 -2
  14. package/es/control/dashboard/dashboard.mjs +3 -2
  15. package/es/control/dashboard/portlet/actionbar-portlet/actionbar-portlet.d.ts +1 -0
  16. package/es/control/dashboard/portlet/actionbar-portlet/actionbar-portlet.mjs +3 -0
  17. package/es/control/dashboard/portlet/actionbar-portlet/index.d.ts +1 -0
  18. package/es/control/dashboard/portlet/portlet-layout/portlet-layout.d.ts +4 -3
  19. package/es/control/dashboard/portlet/portlet-layout/portlet-layout.mjs +6 -3
  20. package/es/control/data-view/data-view.css +1 -1
  21. package/es/control/data-view/data-view.mjs +4 -1
  22. package/es/control/form/edit-form/edit-form.mjs +10 -1
  23. package/es/control/form/form/form.d.ts +1 -1
  24. package/es/control/form/form/form.mjs +2 -1
  25. package/es/control/form/form-detail/form-group-panel/form-group-panel.d.ts +1 -0
  26. package/es/control/form/form-detail/form-group-panel/form-group-panel.mjs +3 -0
  27. package/es/control/form/form-detail/form-group-panel/index.d.ts +1 -0
  28. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs +3 -1
  29. package/es/control/form/form-detail/form-mdctrl/form-mdctrl.d.ts +2 -1
  30. package/es/control/form/form-detail/form-mdctrl/form-mdctrl.mjs +4 -1
  31. package/es/control/form/form-detail/form-mdctrl/index.d.ts +2 -1
  32. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs +2 -2
  33. package/es/control/grid/grid/grid.mjs +3 -7
  34. package/es/control/grid/grid-column/grid-field-column/attachment-column/attachment-column.mjs +4 -3
  35. package/es/control/grid/grid-column/grid-field-column/attachment-column/file-util.d.ts +4 -0
  36. package/es/control/grid/grid-column/grid-field-column/attachment-column/file-util.mjs +30 -3
  37. package/es/control/grid/grid-column/grid-field-column/grid-field-column.mjs +1 -1
  38. package/es/control/kanban/kanban.css +1 -1
  39. package/es/control/kanban/kanban.mjs +11 -6
  40. package/es/control/kanban/swimlane-kanban/swimlane-kanban.css +1 -1
  41. package/es/control/kanban/swimlane-kanban/swimlane-kanban.mjs +3 -0
  42. package/es/control/list/list.d.ts +1 -1
  43. package/es/control/list/list.mjs +4 -1
  44. package/es/control/search-bar/index.d.ts +1 -0
  45. package/es/control/search-bar/search-bar.css +1 -1
  46. package/es/control/search-bar/search-bar.d.ts +3 -2
  47. package/es/control/search-bar/search-bar.mjs +26 -3
  48. package/es/control/search-bar/search-groups/search-groups.css +1 -1
  49. package/es/control/search-bar/search-groups/search-groups.d.ts +11 -1
  50. package/es/control/search-bar/search-groups/search-groups.mjs +14 -1
  51. package/es/control/toolbar/index.d.ts +3 -3
  52. package/es/control/toolbar/toolbar.d.ts +5 -5
  53. package/es/control/toolbar/toolbar.mjs +1 -1
  54. package/es/control/tree-grid/tree-grid.mjs +2 -1
  55. package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/index.d.ts +5 -4
  56. package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.d.ts +5 -4
  57. package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.mjs +8 -5
  58. package/es/control/tree-grid-ex/tree-grid-ex.d.ts +1 -1
  59. package/es/control/tree-grid-ex/tree-grid-ex.mjs +3 -2
  60. package/es/editor/carousel/ibiz-carousel/ibiz-carousel.mjs +2 -2
  61. package/es/editor/code/monaco-editor/monaco-editor.mjs +7 -3
  62. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.d.ts +1 -1
  63. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.mjs +4 -1
  64. package/es/editor/html/wang-editor/wang-editor.d.ts +2 -0
  65. package/es/editor/html/wang-editor/wang-editor.mjs +10 -6
  66. package/es/editor/index.mjs +6 -0
  67. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.d.ts +2 -0
  68. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +2 -2
  69. package/es/editor/text-box/index.d.ts +1 -0
  70. package/es/editor/text-box/index.mjs +1 -0
  71. package/es/editor/text-box/input/input.mjs +7 -3
  72. package/es/editor/text-box/signature/signature.css +1 -0
  73. package/es/editor/text-box/signature/signature.d.ts +102 -0
  74. package/es/editor/text-box/signature/signature.mjs +238 -0
  75. package/es/editor/text-box/text-box-editor.provider.mjs +4 -0
  76. package/es/editor/upload/ibiz-file-upload/ibiz-file-upload.d.ts +2 -0
  77. package/es/editor/upload/ibiz-image-cropping/ibiz-image-cropping.d.ts +2 -0
  78. package/es/editor/upload/ibiz-image-upload/ibiz-image-upload.d.ts +2 -0
  79. package/es/editor/upload/use/use-iview-upload.mjs +12 -3
  80. package/es/locale/en/index.d.ts +7 -0
  81. package/es/locale/en/index.mjs +7 -0
  82. package/es/locale/zh-CN/index.d.ts +7 -0
  83. package/es/locale/zh-CN/index.mjs +7 -0
  84. package/es/panel-component/panel-static-carousel/panel-static-carousel.d.ts +1 -1
  85. package/es/panel-component/user-message/async-action/async-data-export/async-data-export.mjs +1 -1
  86. package/es/util/app-util/app-util.mjs +7 -7
  87. package/es/util/open-view-util/open-view-util.mjs +1 -1
  88. package/es/view-engine/gantt-view.engine.mjs +4 -0
  89. package/lib/common/action-toolbar/action-toolbar.cjs +49 -7
  90. package/lib/common/action-toolbar/action-toolbar.css +1 -1
  91. package/lib/common/index.cjs +1 -0
  92. package/lib/control/dashboard/dashboard.cjs +2 -1
  93. package/lib/control/dashboard/portlet/actionbar-portlet/actionbar-portlet.cjs +3 -0
  94. package/lib/control/dashboard/portlet/portlet-layout/portlet-layout.cjs +6 -3
  95. package/lib/control/data-view/data-view.cjs +3 -0
  96. package/lib/control/data-view/data-view.css +1 -1
  97. package/lib/control/form/edit-form/edit-form.cjs +10 -1
  98. package/lib/control/form/form/form.cjs +1 -0
  99. package/lib/control/form/form-detail/form-group-panel/form-group-panel.cjs +3 -0
  100. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.cjs +3 -1
  101. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl.cjs +4 -1
  102. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.cjs +2 -2
  103. package/lib/control/grid/grid/grid.cjs +2 -6
  104. package/lib/control/grid/grid-column/grid-field-column/attachment-column/attachment-column.cjs +4 -3
  105. package/lib/control/grid/grid-column/grid-field-column/attachment-column/file-util.cjs +30 -3
  106. package/lib/control/grid/grid-column/grid-field-column/grid-field-column.cjs +1 -1
  107. package/lib/control/kanban/kanban.cjs +10 -5
  108. package/lib/control/kanban/kanban.css +1 -1
  109. package/lib/control/kanban/swimlane-kanban/swimlane-kanban.cjs +3 -0
  110. package/lib/control/kanban/swimlane-kanban/swimlane-kanban.css +1 -1
  111. package/lib/control/list/list.cjs +3 -0
  112. package/lib/control/search-bar/search-bar.cjs +25 -2
  113. package/lib/control/search-bar/search-bar.css +1 -1
  114. package/lib/control/search-bar/search-groups/search-groups.cjs +14 -1
  115. package/lib/control/search-bar/search-groups/search-groups.css +1 -1
  116. package/lib/control/toolbar/toolbar.cjs +1 -1
  117. package/lib/control/tree-grid/tree-grid.cjs +1 -0
  118. package/lib/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.cjs +8 -5
  119. package/lib/control/tree-grid-ex/tree-grid-ex.cjs +2 -1
  120. package/lib/editor/carousel/ibiz-carousel/ibiz-carousel.cjs +2 -2
  121. package/lib/editor/code/monaco-editor/monaco-editor.cjs +7 -3
  122. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.cjs +4 -1
  123. package/lib/editor/html/wang-editor/wang-editor.cjs +10 -6
  124. package/lib/editor/index.cjs +6 -0
  125. package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +2 -2
  126. package/lib/editor/text-box/index.cjs +2 -0
  127. package/lib/editor/text-box/input/input.cjs +7 -3
  128. package/lib/editor/text-box/signature/signature.cjs +240 -0
  129. package/lib/editor/text-box/signature/signature.css +1 -0
  130. package/lib/editor/text-box/text-box-editor.provider.cjs +4 -0
  131. package/lib/editor/upload/use/use-iview-upload.cjs +12 -3
  132. package/lib/locale/en/index.cjs +7 -0
  133. package/lib/locale/zh-CN/index.cjs +7 -0
  134. package/lib/panel-component/user-message/async-action/async-data-export/async-data-export.cjs +1 -1
  135. package/lib/util/app-util/app-util.cjs +7 -7
  136. package/lib/util/open-view-util/open-view-util.cjs +1 -1
  137. package/lib/view-engine/gantt-view.engine.cjs +4 -0
  138. package/package.json +7 -7
  139. package/dist/ibiz-markdown-editor-e33m6ees.js +0 -1
  140. package/dist/index-hzGAQk1t.js +0 -11
  141. package/dist/wang-editor-qbGW8Rzj.js +0 -1
@@ -23,6 +23,23 @@ function useFilesParse(props, c) {
23
23
  const files = ref([]);
24
24
  const uploadUrl = ref("");
25
25
  const svgBlob = /* @__PURE__ */ new Map();
26
+ const getDownloadTicketParams = () => {
27
+ const downloadTicketParams = {};
28
+ if (!c.model.userParam) {
29
+ return downloadTicketParams;
30
+ }
31
+ if (c.model.userParam.appentitytag) {
32
+ Object.assign(downloadTicketParams, {
33
+ appEntityTag: c.model.userParam.appentitytag
34
+ });
35
+ }
36
+ if (c.model.userParam.datafieldtag) {
37
+ Object.assign(downloadTicketParams, {
38
+ dataFieldTag: c.model.userParam.datafieldtag
39
+ });
40
+ }
41
+ return downloadTicketParams;
42
+ };
26
43
  const fetchSVGAsBase64 = async (url) => {
27
44
  try {
28
45
  const response = await fetch(url);
@@ -81,7 +98,8 @@ function useFilesParse(props, c) {
81
98
  params: c.params,
82
99
  data: props.data,
83
100
  file: { fileId: file.id, ...file },
84
- extraParams: {}
101
+ extraParams: {},
102
+ downloadTicketParams: getDownloadTicketParams()
85
103
  });
86
104
  };
87
105
  watch(
@@ -116,7 +134,15 @@ function useFilesParse(props, c) {
116
134
  url: file.url || downloadUrl.replace("%fileId%", file.id)
117
135
  });
118
136
  if (ibiz.config.common.enableDownloadTicket) {
119
- ibiz.util.file.getDownloadTicket(c.context, { fileId: file.id }).then((downloadTicket) => {
137
+ ibiz.util.file.getDownloadTicket(
138
+ c.context,
139
+ c.params,
140
+ props.data,
141
+ {
142
+ fileId: file.id
143
+ },
144
+ getDownloadTicketParams()
145
+ ).then((downloadTicket) => {
120
146
  if (downloadTicket && downloadTicket.ticket) {
121
147
  file.url = downloadUrl.replace(
122
148
  "%fileId%",
@@ -139,7 +165,8 @@ function useFilesParse(props, c) {
139
165
  files,
140
166
  uploadUrl,
141
167
  onDownload,
142
- getDownloadUrl
168
+ getDownloadUrl,
169
+ getDownloadTicketParams
143
170
  };
144
171
  }
145
172
 
@@ -22,7 +22,7 @@ const GridFieldColumn = /* @__PURE__ */ defineComponent({
22
22
  var _a;
23
23
  const ns = useNamespace("grid-field-column");
24
24
  const zIndex = props.controller.grid.state.zIndex;
25
- const columnType = (_a = props.controller.model.userParam) == null ? void 0 : _a.columnType;
25
+ const columnType = (_a = props.controller.model.userParam) == null ? void 0 : _a.columntype;
26
26
  const onCellClick = (event) => {
27
27
  if (props.controller.hasAction) {
28
28
  event.stopPropagation();
@@ -1 +1 @@
1
- .ibiz-control-kanban{--ibiz-control-kanban-text-color:var(--ibiz-color-text-0);--ibiz-control-kanban-font-size:var(--ibiz-font-size-regular);--ibiz-control-kanban-font-weight:var(--ibiz-font-weight-bold);--ibiz-control-kanban-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-kanban-selected-bg-color:var(--ibiz-color-fill-0);--ibiz-control-kanban-group-header-height:48px;display:flex;flex-direction:column;width:100%;height:100%}.ibiz-control-kanban.is-enable-page .ibiz-control-kanban__content{height:calc(100% - 50px)}.ibiz-control-kanban__drag-icon{margin-right:var(--ibiz-spacing-tight);cursor:move;visibility:hidden}.ibiz-control-kanban__content{display:flex;flex-grow:1}.ibiz-control-kanban--row .ibiz-control-kanban-group-container{display:flex;padding-bottom:var(--ibiz-spacing-tight);overflow:auto}.ibiz-control-kanban--row .ibiz-control-kanban-group-container>*+*{margin-left:var(--ibiz-spacing-base)}.ibiz-control-kanban--row .ibiz-control-kanban-group.is-collapse{width:32px}.ibiz-control-kanban--row .ibiz-control-kanban-group.is-collapse .ibiz-control-kanban-group__header{position:relative;flex-direction:column;align-items:start;height:100%;padding:var(--ibiz-spacing-none)}.ibiz-control-kanban--row .ibiz-control-kanban-group.is-collapse .ibiz-control-kanban-group__header ion-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ibiz-control-kanban--row .ibiz-control-kanban-group.is-collapse .ibiz-control-kanban-group__header-caption{align-self:center;transform:rotate(90deg) translate(calc(50% - var(--ibiz-spacing-tight)),0)}.ibiz-control-kanban--column .ibiz-control-kanban-group-container{display:flex;flex-direction:column}.ibiz-control-kanban--column .ibiz-control-kanban-group-container>*+*{margin-top:var(--ibiz-spacing-base)}.ibiz-control-kanban--column .ibiz-control-kanban-group.is-collapse{width:100%}.ibiz-control-kanban--column .ibiz-control-kanban-group.is-collapse ion-icon{transform:rotate(-90deg)}.ibiz-control-kanban-group-container{flex:1}.ibiz-control-kanban-group{display:flex;flex-flow:column nowrap;flex-shrink:0;border:1px solid var(--ibiz-color-border);border-radius:var(--ibiz-border-radius-small);transition:all .3s}.ibiz-control-kanban-group__header{position:relative;height:var(--ibiz-control-kanban-group-header-height);padding:var(--ibiz-spacing-none) var(--ibiz-spacing-base);font-size:var(--ibiz-control-kanban-font-size);font-weight:var(--ibiz-control-kanban-font-weight);cursor:pointer;border-bottom:1px solid var(--ibiz-color-border);display:flex;align-items:center;justify-content:space-between}.ibiz-control-kanban-group__header::before{position:absolute;top:0;left:0;display:block;width:100%;content:"";border-color:inherit;border-top:2px solid}.ibiz-control-kanban-group__header-left{display:flex;align-items:center;justify-content:center}.ibiz-control-kanban-group__header-left ion-icon{margin-right:var(--ibiz-spacing-tight);transition:transform .3s}.ibiz-control-kanban-group__header-caption{padding:0 var(--ibiz-spacing-tight);white-space:nowrap}.ibiz-control-kanban-group__header-caption.is-badge{color:var(--ibiz-color-primary-active-text)}.ibiz-control-kanban-group__list{position:relative;flex:auto;width:100%;height:calc(100% - 48px);padding:var(--ibiz-spacing-none) var(--ibiz-spacing-tight);overflow:auto}.ibiz-control-kanban-group__list:hover .ibiz-control-kanban__quicktoolbar{visibility:visible}.ibiz-control-kanban-group__draggable{min-height:100%;padding:var(--ibiz-spacing-base) 0}.ibiz-control-kanban-group__list.is-empty{display:flex;flex-direction:column}.ibiz-control-kanban-group__list.is-empty .ibiz-control-kanban-group__draggable{flex-shrink:0;min-height:0}.ibiz-control-kanban-group__list.is-empty .ibiz-control-kanban__quicktoolbar{flex-grow:1;width:calc(100% - var(--ibiz-spacing-base))}.ibiz-control-kanban-group__list.is-empty .ibiz-control-toolbar__item{justify-content:center}.ibiz-control-kanban-group__header-actions{position:relative;z-index:100;width:32px;height:32px;padding:var(--ibiz-spacing-tight);margin-left:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-control-kanban-font-size);color:var(--ibiz-color-primary);cursor:pointer;border-radius:var(--ibiz-border-radius-circle)}.ibiz-control-kanban-group__header-actions:hover{background-color:var(--ibiz-color-fill-0)}.ibiz-control-kanban-group__actions-dropdown:has(.el-button){padding:var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-none)}.ibiz-control-kanban-group__actions-dropdown .ibiz-action-toolbar{display:flex;flex-flow:column nowrap}.ibiz-control-kanban-group__actions-dropdown .el-button{--el-button-size:var(--ibiz-height-control-large);justify-content:flex-start;width:100%;padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);margin:var(--ibiz-spacing-none);font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-primary-text)}.ibiz-control-kanban-group__actions-dropdown .el-button ion-icon{margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-control-kanban-group__actions-dropdown .el-button.is-text:not(.is-disabled):hover{background-color:var(--el-button-hover-bg-color);border-color:var(--el-button-hover-border-color)}.ibiz-control-kanban-item{cursor:pointer}.ibiz-control-kanban-item:hover{background-color:var(--ibiz-control-kanban-hover-bg-color)}.ibiz-control-kanban-item:hover .ibiz-control-kanban__drag-icon{visibility:visible}.ibiz-control-kanban-item.is-selected{background-color:var(--ibiz-control-kanban-selected-bg-color)}.ibiz-control-kanban-item.is-disabled{cursor:no-drop}.ibiz-control-kanban-item__content{display:flex;align-items:center;width:100%;height:100%}.ibiz-control-kanban-item__bottom{display:flex;align-items:center;justify-content:center;padding:var(--ibiz-spacing-tight);margin-top:var(--ibiz-spacing-tight);border-top:1px solid var(--ibiz-color-border)}.ibiz-control-kanban-item__bottom--actions{display:flex;justify-content:center}.ibiz-control-kanban-item__bottom--actions .ibiz-action-toolbar__item{margin:0}.ibiz-control-kanban-item__bottom--actions .ibiz-action-toolbar__item--label.is-has-caption{margin:0}.ibiz-control-kanban-item+.ibiz-control-kanban-item{margin-top:var(--ibiz-spacing-base)}.ibiz-control-kanban{position:relative}.ibiz-control-kanban__quicktoolbar{margin-bottom:var(--ibiz-spacing-base);visibility:hidden;display:flex;flex-flow:column nowrap}.ibiz-control-kanban__quicktoolbar>*+*{margin-top:var(--ibiz-spacing-tight)}.ibiz-control-kanban.is-full{padding:var(--ibiz-spacing-base);background-color:var(--ibiz-color-bg-2)}.ibiz-control-kanban-toolbar{display:flex;flex-shrink:0;gap:var(--ibiz-spacing-tight)}.ibiz-control-kanban-toolbar .el-button{border:1px solid var(--ibiz-color-border)}.ibiz-control-kanban-batch{padding:var(--ibiz-spacing-base-tight);border-bottom:1px solid var(--ibiz-color-border)}.ibiz-control-kanban-batch__toolbar .ibiz-control-toolbar{flex-wrap:wrap;row-gap:var(--ibiz-spacing-tight)}.ibiz-control-kanban-batch__check{display:flex;align-items:center;justify-content:space-between;margin-top:var(--ibiz-spacing-base-tight);font-size:var(--ibiz-font-size-regular)}.ibiz-control-kanban-batch__info span{margin:var(--ibiz-spacing-none) var(--ibiz-spacing-extra-tight);color:var(--ibiz-color-primary)}
1
+ .ibiz-control-kanban{--ibiz-control-kanban-text-color:var(--ibiz-color-text-0);--ibiz-control-kanban-font-size:var(--ibiz-font-size-regular);--ibiz-control-kanban-font-weight:var(--ibiz-font-weight-bold);--ibiz-control-kanban-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-kanban-selected-bg-color:var(--ibiz-color-fill-0);--ibiz-control-kanban-group-header-height:48px;display:flex;flex-direction:column;width:100%;height:100%}.ibiz-control-kanban.is-enable-page .ibiz-control-kanban__content{height:calc(100% - 50px)}.ibiz-control-kanban__drag-icon{margin-right:var(--ibiz-spacing-tight);cursor:move;visibility:hidden}.ibiz-control-kanban__content{display:flex;flex-grow:1}.ibiz-control-kanban--row .ibiz-control-kanban-group-container{display:flex;padding-bottom:var(--ibiz-spacing-tight);overflow:auto}.ibiz-control-kanban--row .ibiz-control-kanban-group-container>*+*{margin-left:var(--ibiz-spacing-base)}.ibiz-control-kanban--row .ibiz-control-kanban-group.is-collapse{width:32px}.ibiz-control-kanban--row .ibiz-control-kanban-group.is-collapse .ibiz-control-kanban-group__header{position:relative;flex-direction:column;align-items:start;height:100%;padding:var(--ibiz-spacing-none)}.ibiz-control-kanban--row .ibiz-control-kanban-group.is-collapse .ibiz-control-kanban-group__header ion-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ibiz-control-kanban--row .ibiz-control-kanban-group.is-collapse .ibiz-control-kanban-group__header-caption{align-self:center;transform:rotate(90deg) translate(calc(50% - var(--ibiz-spacing-tight)),0)}.ibiz-control-kanban--column .ibiz-control-kanban-group-container{display:flex;flex-direction:column}.ibiz-control-kanban--column .ibiz-control-kanban-group-container>*+*{margin-top:var(--ibiz-spacing-base)}.ibiz-control-kanban--column .ibiz-control-kanban-group.is-collapse{width:100%}.ibiz-control-kanban--column .ibiz-control-kanban-group.is-collapse ion-icon{transform:rotate(-90deg)}.ibiz-control-kanban .ibiz-control-kanban__default-item,.ibiz-control-kanban .ibiz-control-kanban__panel-item{flex-grow:1}.ibiz-control-kanban-group-container{flex:1}.ibiz-control-kanban-group{display:flex;flex-flow:column nowrap;flex-shrink:0;border:1px solid var(--ibiz-color-border);border-radius:var(--ibiz-border-radius-small);transition:all .3s}.ibiz-control-kanban-group__header{position:relative;height:var(--ibiz-control-kanban-group-header-height);padding:var(--ibiz-spacing-none) var(--ibiz-spacing-base);font-size:var(--ibiz-control-kanban-font-size);font-weight:var(--ibiz-control-kanban-font-weight);cursor:pointer;border-bottom:1px solid var(--ibiz-color-border);display:flex;align-items:center;justify-content:space-between}.ibiz-control-kanban-group__header::before{position:absolute;top:0;left:0;display:block;width:100%;content:"";border-color:inherit;border-top:2px solid}.ibiz-control-kanban-group__header-left{display:flex;align-items:center;justify-content:center}.ibiz-control-kanban-group__header-left ion-icon{margin-right:var(--ibiz-spacing-tight);transition:transform .3s}.ibiz-control-kanban-group__header-caption{padding:0 var(--ibiz-spacing-tight);white-space:nowrap}.ibiz-control-kanban-group__header-caption.is-badge{color:var(--ibiz-color-primary-active-text)}.ibiz-control-kanban-group__list{position:relative;flex:auto;width:100%;height:calc(100% - 48px);padding:var(--ibiz-spacing-none) var(--ibiz-spacing-tight);overflow:auto}.ibiz-control-kanban-group__list:hover .ibiz-control-kanban__quicktoolbar{visibility:visible}.ibiz-control-kanban-group__draggable{min-height:100%;padding:var(--ibiz-spacing-base) 0}.ibiz-control-kanban-group__list.is-empty{display:flex;flex-direction:column}.ibiz-control-kanban-group__list.is-empty .ibiz-control-kanban-group__draggable{flex-shrink:0;min-height:0}.ibiz-control-kanban-group__list.is-empty .ibiz-control-kanban__quicktoolbar{flex-grow:1;width:calc(100% - var(--ibiz-spacing-base))}.ibiz-control-kanban-group__list.is-empty .ibiz-control-toolbar__item{justify-content:center}.ibiz-control-kanban-group__header-actions{position:relative;z-index:100;width:32px;height:32px;padding:var(--ibiz-spacing-tight);margin-left:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-control-kanban-font-size);color:var(--ibiz-color-primary);cursor:pointer;border-radius:var(--ibiz-border-radius-circle)}.ibiz-control-kanban-group__header-actions:hover{background-color:var(--ibiz-color-fill-0)}.ibiz-control-kanban-group__actions-dropdown:has(.el-button){padding:var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-none)}.ibiz-control-kanban-group__actions-dropdown .ibiz-action-toolbar{display:flex;flex-flow:column nowrap}.ibiz-control-kanban-group__actions-dropdown .el-button{--el-button-size:var(--ibiz-height-control-large);justify-content:flex-start;width:100%;padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);margin:var(--ibiz-spacing-none);font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-primary-text)}.ibiz-control-kanban-group__actions-dropdown .el-button ion-icon{margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-control-kanban-group__actions-dropdown .el-button.is-text:not(.is-disabled):hover{background-color:var(--el-button-hover-bg-color);border-color:var(--el-button-hover-border-color)}.ibiz-control-kanban-item{cursor:pointer}.ibiz-control-kanban-item:hover{background-color:var(--ibiz-control-kanban-hover-bg-color)}.ibiz-control-kanban-item:hover .ibiz-control-kanban__drag-icon{visibility:visible}.ibiz-control-kanban-item.is-selected{background-color:var(--ibiz-control-kanban-selected-bg-color)}.ibiz-control-kanban-item.is-disabled{cursor:no-drop}.ibiz-control-kanban-item__content{display:flex;align-items:center;width:100%;height:100%}.ibiz-control-kanban-item__bottom{display:flex;align-items:center;justify-content:center;padding:var(--ibiz-spacing-tight);margin-top:var(--ibiz-spacing-tight);border-top:1px solid var(--ibiz-color-border)}.ibiz-control-kanban-item__bottom--actions{display:flex;justify-content:center}.ibiz-control-kanban-item__bottom--actions .ibiz-action-toolbar__item{margin:0}.ibiz-control-kanban-item__bottom--actions .ibiz-action-toolbar__item--label.is-has-caption{margin:0}.ibiz-control-kanban-item+.ibiz-control-kanban-item{margin-top:var(--ibiz-spacing-base)}.ibiz-control-kanban{position:relative}.ibiz-control-kanban__popover>.el-scrollbar{overflow:visible}.ibiz-control-kanban__popover .ibiz-action-toolbar__popover{background-color:var(--ibiz-color-primary)!important}.ibiz-control-kanban__quicktoolbar{margin-bottom:var(--ibiz-spacing-base);visibility:hidden;display:flex;flex-flow:column nowrap}.ibiz-control-kanban__quicktoolbar>*+*{margin-top:var(--ibiz-spacing-tight)}.ibiz-control-kanban.is-full{padding:var(--ibiz-spacing-base);background-color:var(--ibiz-color-bg-2)}.ibiz-control-kanban-toolbar{display:flex;flex-shrink:0;gap:var(--ibiz-spacing-tight)}.ibiz-control-kanban-toolbar .el-button{border:1px solid var(--ibiz-color-border)}.ibiz-control-kanban-batch{padding:var(--ibiz-spacing-base-tight);border-bottom:1px solid var(--ibiz-color-border)}.ibiz-control-kanban-batch__toolbar .ibiz-control-toolbar{flex-wrap:wrap;row-gap:var(--ibiz-spacing-tight)}.ibiz-control-kanban-batch__check{display:flex;align-items:center;justify-content:space-between;margin-top:var(--ibiz-spacing-base-tight);font-size:var(--ibiz-font-size-regular)}.ibiz-control-kanban-batch__info span{margin:var(--ibiz-spacing-none) var(--ibiz-spacing-extra-tight);color:var(--ibiz-color-primary)}
@@ -1,5 +1,5 @@
1
1
  import { isVNode, ref, watch, computed, onMounted, onBeforeUnmount, resolveComponent, createVNode, createTextVNode, defineComponent } from 'vue';
2
- import { useControlController, useNamespace, hasEmptyPanelRenderer, IBizCustomRender } from '@ibiz-template/vue3-util';
2
+ import { useControlController, useControlPopoverzIndex, useNamespace, hasEmptyPanelRenderer, IBizCustomRender } from '@ibiz-template/vue3-util';
3
3
  import draggable from 'vuedraggable';
4
4
  import { KanbanController, ControlVO } from '@ibiz-template/runtime';
5
5
  import { NOOP, listenJSEvent } from '@ibiz-template/core';
@@ -86,6 +86,7 @@ const KanbanControl = /* @__PURE__ */ defineComponent({
86
86
  setup(props) {
87
87
  var _a, _b, _c;
88
88
  const c = useControlController((...args) => new KanbanController(...args));
89
+ useControlPopoverzIndex(c);
89
90
  const ns = useNamespace("control-".concat(c.model.controlType.toLowerCase()));
90
91
  const kanban = ref();
91
92
  const isFull = ref(false);
@@ -177,9 +178,8 @@ const KanbanControl = /* @__PURE__ */ defineComponent({
177
178
  });
178
179
  });
179
180
  onBeforeUnmount(() => {
180
- if (cleanup !== NOOP) {
181
+ if (cleanup !== NOOP)
181
182
  cleanup();
182
- }
183
183
  });
184
184
  const renderPanelItemLayout = (item, modelData) => {
185
185
  const {
@@ -188,6 +188,7 @@ const KanbanControl = /* @__PURE__ */ defineComponent({
188
188
  } = c;
189
189
  return createVNode(resolveComponent("iBizControlShell"), {
190
190
  "data": item,
191
+ "class": ns.e("panel-item"),
191
192
  "modelData": modelData,
192
193
  "context": context,
193
194
  "params": params
@@ -195,6 +196,7 @@ const KanbanControl = /* @__PURE__ */ defineComponent({
195
196
  };
196
197
  const renderItemAction = (item, group) => {
197
198
  return createVNode(resolveComponent("iBizActionToolbar"), {
199
+ "zIndex": c.state.zIndex,
198
200
  "class": ns.bem("item", "bottom", "actions"),
199
201
  "action-details": c.getOptItemModel(),
200
202
  "actions-state": c.state.uaState[item.srfkey],
@@ -257,7 +259,9 @@ const KanbanControl = /* @__PURE__ */ defineComponent({
257
259
  };
258
260
  const renderDefaultItem = (item, group) => {
259
261
  const actionModel = c.getOptItemModel();
260
- return [createVNode("div", {
262
+ return createVNode("div", {
263
+ "class": ns.e("default-item")
264
+ }, [createVNode("div", {
261
265
  "class": ns.be("item", "top")
262
266
  }, [createVNode("div", {
263
267
  "class": ns.bem("item", "top", "title")
@@ -265,7 +269,7 @@ const KanbanControl = /* @__PURE__ */ defineComponent({
265
269
  "class": ns.bem("item", "top", "description")
266
270
  }, [item.content])]), actionModel.length ? createVNode("div", {
267
271
  "class": ns.be("item", "bottom")
268
- }, [renderItemAction(item, group)]) : null];
272
+ }, [renderItemAction(item, group)]) : null]);
269
273
  };
270
274
  const renderCard = (item, group) => {
271
275
  const findIndex = c.state.selectedData.findIndex((data) => {
@@ -393,7 +397,8 @@ const KanbanControl = /* @__PURE__ */ defineComponent({
393
397
  }), showActionBar && createVNode(resolveComponent("el-dropdown"), {
394
398
  "class": ns.be("group", "header-actions"),
395
399
  "trigger": "click",
396
- "teleported": false
400
+ "teleported": false,
401
+ "popper-class": ns.e("popover")
397
402
  }, {
398
403
  default: () => createVNode("span", {
399
404
  "title": ibiz.i18n.t("app.more")
@@ -1 +1 @@
1
- .ibiz-swimlane-kanban{--ibiz-swimlane-kanban-width:320px;display:flex;flex-direction:column;width:100%;height:100%;padding:var(--ibiz-spacing-tight);background-color:var(--ibiz-color-white)}.ibiz-swimlane-kanban__default .ibiz-swimlane-kanban__cell:not(.is-collapsed){width:var(--ibiz-swimlane-kanban-width)}.ibiz-swimlane-kanban__style2 .ibiz-swimlane-kanban__cell:not(.is-collapsed){flex:1 0 0;min-width:var(--ibiz-swimlane-kanban-width)}.ibiz-swimlane-kanban__table{overflow:auto hidden}.ibiz-swimlane-kanban__drag-icon{margin-right:var(--ibiz-spacing-tight);cursor:move;visibility:hidden}.ibiz-swimlane-kanban__header{box-sizing:border-box;width:100%;min-width:-moz-fit-content;min-width:fit-content;padding-right:4px;border-top:1px solid var(--ibiz-color-border)}.ibiz-swimlane-kanban__header--action{visibility:hidden}.ibiz-swimlane-kanban__header--action.is-visible{visibility:visible}.ibiz-swimlane-kanban__header--row{display:flex}.ibiz-swimlane-kanban__header--cell .ibiz-swimlane-kanban__cell--content{display:flex;justify-content:space-between}.ibiz-swimlane-kanban__header--cell:hover .ibiz-swimlane-kanban__header--action{visibility:visible}.ibiz-swimlane-kanban__header--cell.is-collapsed{position:relative;width:50px;border-bottom:none}.ibiz-swimlane-kanban__header--cell.is-collapsed .ibiz-swimlane-kanban__cell--content{position:absolute;top:var(--ibiz-spacing-base);left:0;flex-direction:column}.ibiz-swimlane-kanban__header--cell.is-collapsed .ibiz-swimlane-kanban__cell--left{flex-direction:column;gap:var(--ibiz-spacing-extra-tight)}.ibiz-swimlane-kanban__header--cell.is-collapsed .ibiz-swimlane-kanban__cell--caption{writing-mode:tb}.ibiz-swimlane-kanban__header--cell.is-collapsed .ibiz-swimlane-kanban__cell--separator{margin:var(--ibiz-spacing-extra-tight) 0}.ibiz-swimlane-kanban__header--toolbar .ibiz-action-toolbar{display:flex;flex-flow:column nowrap}.ibiz-swimlane-kanban__header--toolbar .el-button{--el-button-size:var(--ibiz-height-control-large);justify-content:flex-start;width:100%;padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);margin:var(--ibiz-spacing-none);font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-primary-text)}.ibiz-swimlane-kanban__header--toolbar .el-button ion-icon{margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-swimlane-kanban__header--toolbar .el-button.is-text:not(.is-disabled):hover{background-color:var(--el-button-hover-bg-color);border-color:var(--el-button-hover-border-color)}.ibiz-swimlane-kanban__header--popper.el-popper.el-dropdown__popper .el-scrollbar__view.el-dropdown__list{padding:var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-none);background-color:var(--ibiz-color-white)}.ibiz-swimlane-kanban__header--popper.el-popper.el-dropdown__popper .el-button{color:var(--ibiz-color-text-2);--el-button-bg-color:var(--ibiz-color-white);--el-button-hover-bg-color:var(--ibiz-color-fill-0);--el-button-active-bg-color:var(--ibiz-color-fill-0);--el-button-text-color:var(--ibiz-color-text-2);--el-button-hover-text-color:var(--ibiz-color-primary);--el-button-active-text-color:var(--ibiz-color-primary);border:none}.ibiz-swimlane-kanban__body{width:100%;min-width:-moz-fit-content;min-width:fit-content;height:calc(100% - 66px);padding-bottom:var(--ibiz-spacing-extra-tight);overflow:hidden scroll}.ibiz-swimlane-kanban__body--row{display:flex}.ibiz-swimlane-kanban__body--row.is-expand .ibiz-swimlane-kanban__cell{height:auto;min-height:200px;padding:var(--ibiz-spacing-tight)}.ibiz-swimlane-kanban__body--row:not(.is-expand) .ibiz-swimlane-kanban__cell:not(.is-collapsed){border-right:none}.ibiz-swimlane-kanban__body--cell:first-child .ibiz-swimlane-kanban__cell--content{display:flex;align-items:start;justify-content:space-between}.ibiz-swimlane-kanban__body--cell.is-collapsed{width:50px;min-width:50px;border-right:1px solid var(--ibiz-color-border);border-bottom:none}.ibiz-swimlane-kanban__body--cell:has(+.is-collapsed){border-right:1px solid var(--ibiz-color-border)!important}.ibiz-swimlane-kanban__cell{padding:var(--ibiz-spacing-base) var(--ibiz-spacing-tight);border-right:1px solid var(--ibiz-color-border);border-bottom:1px solid var(--ibiz-color-border)}.ibiz-swimlane-kanban__cell--expand-icon{display:flex;align-items:center;margin-right:var(--ibiz-spacing-tight);font-size:var(--ibiz-font-size-header-6);color:var(--ibiz-color-text-3);cursor:pointer}.ibiz-swimlane-kanban__cell--content{width:100%;height:100%}.ibiz-swimlane-kanban__cell--left{display:flex;align-items:center}.ibiz-swimlane-kanban__cell--right{display:flex;align-items:center}.ibiz-swimlane-kanban__cell--toolbar{margin:var(--ibiz-spacing-tight);visibility:hidden}.ibiz-swimlane-kanban__cell--separator{margin:0 var(--ibiz-spacing-extra-tight)}.ibiz-swimlane-kanban__cell--description{font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-text-3)}.ibiz-swimlane-kanban__cell:hover .ibiz-swimlane-kanban__cell--toolbar{visibility:visible}.ibiz-swimlane-kanban__card{margin:var(--ibiz-spacing-tight);cursor:pointer;border-radius:var(--ibiz-spacing-super-tight)}.ibiz-swimlane-kanban__card.is-disabled{cursor:no-drop}.ibiz-swimlane-kanban__card.is-selected{background-color:var(--ibiz-color-fill-0)}.ibiz-swimlane-kanban__card--content{display:flex;align-items:center;width:100%;height:100%}.ibiz-swimlane-kanban__card:hover .ibiz-swimlane-kanban__drag-icon{visibility:visible}.ibiz-swimlane-kanban__default-item--footer{display:flex;align-items:center;justify-content:center;padding:var(--ibiz-spacing-tight);margin-top:var(--ibiz-spacing-tight);border-top:1px solid var(--ibiz-color-border)}.ibiz-swimlane-kanban__default-item--actions{display:flex;justify-content:center}.ibiz-swimlane-kanban__default-item--actions .ibiz-action-toolbar__item{margin:0}.ibiz-swimlane-kanban__default-item--actions .ibiz-action-toolbar__item--label.is-has-caption{margin:0}.ibiz-swimlane-kanban__batch{padding:var(--ibiz-spacing-base-tight);border-bottom:1px solid var(--ibiz-color-border)}.ibiz-swimlane-kanban__batch--toolbar{flex-wrap:wrap;row-gap:var(--ibiz-spacing-tight)}.ibiz-swimlane-kanban__batch--check{display:flex;align-items:center;justify-content:space-between;margin-top:var(--ibiz-spacing-base-tight);font-size:var(--ibiz-font-size-regular)}.ibiz-swimlane-kanban__batch--info span{margin:var(--ibiz-spacing-none) var(--ibiz-spacing-extra-tight);color:var(--ibiz-color-primary)}.ibiz-swimlane-kanban__scrollbar .el-scrollbar__view{width:100%}.ibiz-swimlane-kanban__quicktoolbar{flex-flow:column nowrap;gap:var(--ibiz-spacing-tight);align-items:center;justify-content:center}
1
+ .ibiz-swimlane-kanban{--ibiz-swimlane-kanban-width:320px;display:flex;flex-direction:column;width:100%;height:100%;padding:var(--ibiz-spacing-tight);background-color:var(--ibiz-color-white)}.ibiz-swimlane-kanban .ibiz-swimlane-kanban__default-item,.ibiz-swimlane-kanban .ibiz-swimlane-kanban__panel-item{flex-grow:1}.ibiz-swimlane-kanban__default .ibiz-swimlane-kanban__cell:not(.is-collapsed){width:var(--ibiz-swimlane-kanban-width)}.ibiz-swimlane-kanban__style2 .ibiz-swimlane-kanban__cell:not(.is-collapsed){flex:1 0 0;min-width:var(--ibiz-swimlane-kanban-width)}.ibiz-swimlane-kanban__table{overflow:auto hidden}.ibiz-swimlane-kanban__drag-icon{margin-right:var(--ibiz-spacing-tight);cursor:move;visibility:hidden}.ibiz-swimlane-kanban__header{box-sizing:border-box;width:100%;min-width:-moz-fit-content;min-width:fit-content;padding-right:4px;border-top:1px solid var(--ibiz-color-border)}.ibiz-swimlane-kanban__header--action{visibility:hidden}.ibiz-swimlane-kanban__header--action.is-visible{visibility:visible}.ibiz-swimlane-kanban__header--row{display:flex}.ibiz-swimlane-kanban__header--cell .ibiz-swimlane-kanban__cell--content{display:flex;justify-content:space-between}.ibiz-swimlane-kanban__header--cell:hover .ibiz-swimlane-kanban__header--action{visibility:visible}.ibiz-swimlane-kanban__header--cell.is-collapsed{position:relative;width:50px;border-bottom:none}.ibiz-swimlane-kanban__header--cell.is-collapsed .ibiz-swimlane-kanban__cell--content{position:absolute;top:var(--ibiz-spacing-base);left:0;flex-direction:column}.ibiz-swimlane-kanban__header--cell.is-collapsed .ibiz-swimlane-kanban__cell--left{flex-direction:column;gap:var(--ibiz-spacing-extra-tight)}.ibiz-swimlane-kanban__header--cell.is-collapsed .ibiz-swimlane-kanban__cell--caption{writing-mode:tb}.ibiz-swimlane-kanban__header--cell.is-collapsed .ibiz-swimlane-kanban__cell--separator{margin:var(--ibiz-spacing-extra-tight) 0}.ibiz-swimlane-kanban__header--toolbar .ibiz-action-toolbar{display:flex;flex-flow:column nowrap}.ibiz-swimlane-kanban__header--toolbar .el-button{--el-button-size:var(--ibiz-height-control-large);justify-content:flex-start;width:100%;padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);margin:var(--ibiz-spacing-none);font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-primary-text)}.ibiz-swimlane-kanban__header--toolbar .el-button ion-icon{margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-swimlane-kanban__header--toolbar .el-button.is-text:not(.is-disabled):hover{background-color:var(--el-button-hover-bg-color);border-color:var(--el-button-hover-border-color)}.ibiz-swimlane-kanban__header--popper.el-popper>.el-scrollbar{overflow:visible}.ibiz-swimlane-kanban__header--popper.el-popper .ibiz-action-toolbar__popover{background-color:var(--ibiz-color-primary)}.ibiz-swimlane-kanban__header--popper.el-popper.el-dropdown__popper .el-scrollbar__view.el-dropdown__list{padding:var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-none)}.ibiz-swimlane-kanban__body{width:100%;min-width:-moz-fit-content;min-width:fit-content;height:calc(100% - 66px);padding-bottom:var(--ibiz-spacing-extra-tight);overflow:hidden scroll}.ibiz-swimlane-kanban__body--row{display:flex}.ibiz-swimlane-kanban__body--row.is-expand .ibiz-swimlane-kanban__cell{height:auto;min-height:200px;padding:var(--ibiz-spacing-tight)}.ibiz-swimlane-kanban__body--row:not(.is-expand) .ibiz-swimlane-kanban__cell:not(.is-collapsed){border-right:none}.ibiz-swimlane-kanban__body--cell:first-child .ibiz-swimlane-kanban__cell--content{display:flex;align-items:start;justify-content:space-between}.ibiz-swimlane-kanban__body--cell.is-collapsed{width:50px;min-width:50px;border-right:1px solid var(--ibiz-color-border);border-bottom:none}.ibiz-swimlane-kanban__body--cell:has(+.is-collapsed){border-right:1px solid var(--ibiz-color-border)!important}.ibiz-swimlane-kanban__cell{padding:var(--ibiz-spacing-base) var(--ibiz-spacing-tight);border-right:1px solid var(--ibiz-color-border);border-bottom:1px solid var(--ibiz-color-border)}.ibiz-swimlane-kanban__cell--expand-icon{display:flex;align-items:center;margin-right:var(--ibiz-spacing-tight);font-size:var(--ibiz-font-size-header-6);color:var(--ibiz-color-text-3);cursor:pointer}.ibiz-swimlane-kanban__cell--content{width:100%;height:100%}.ibiz-swimlane-kanban__cell--left{display:flex;align-items:center}.ibiz-swimlane-kanban__cell--right{display:flex;align-items:center}.ibiz-swimlane-kanban__cell--toolbar{margin:var(--ibiz-spacing-tight);visibility:hidden}.ibiz-swimlane-kanban__cell--separator{margin:0 var(--ibiz-spacing-extra-tight)}.ibiz-swimlane-kanban__cell--description{font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-text-3)}.ibiz-swimlane-kanban__cell:hover .ibiz-swimlane-kanban__cell--toolbar{visibility:visible}.ibiz-swimlane-kanban__card{margin:var(--ibiz-spacing-tight);cursor:pointer;border-radius:var(--ibiz-spacing-super-tight)}.ibiz-swimlane-kanban__card.is-disabled{cursor:no-drop}.ibiz-swimlane-kanban__card.is-selected{background-color:var(--ibiz-color-fill-0)}.ibiz-swimlane-kanban__card--content{display:flex;align-items:center;width:100%;height:100%}.ibiz-swimlane-kanban__card:hover .ibiz-swimlane-kanban__drag-icon{visibility:visible}.ibiz-swimlane-kanban__default-item--footer{display:flex;align-items:center;justify-content:center;padding:var(--ibiz-spacing-tight);margin-top:var(--ibiz-spacing-tight);border-top:1px solid var(--ibiz-color-border)}.ibiz-swimlane-kanban__default-item--actions{display:flex;justify-content:center}.ibiz-swimlane-kanban__default-item--actions .ibiz-action-toolbar__item{margin:0}.ibiz-swimlane-kanban__default-item--actions .ibiz-action-toolbar__item--label.is-has-caption{margin:0}.ibiz-swimlane-kanban__batch{padding:var(--ibiz-spacing-base-tight);border-bottom:1px solid var(--ibiz-color-border)}.ibiz-swimlane-kanban__batch--toolbar{flex-wrap:wrap;row-gap:var(--ibiz-spacing-tight)}.ibiz-swimlane-kanban__batch--check{display:flex;align-items:center;justify-content:space-between;margin-top:var(--ibiz-spacing-base-tight);font-size:var(--ibiz-font-size-regular)}.ibiz-swimlane-kanban__batch--info span{margin:var(--ibiz-spacing-none) var(--ibiz-spacing-extra-tight);color:var(--ibiz-color-primary)}.ibiz-swimlane-kanban__scrollbar .el-scrollbar__view{width:100%}.ibiz-swimlane-kanban__quicktoolbar{flex-flow:column nowrap;gap:var(--ibiz-spacing-tight);align-items:center;justify-content:center}
@@ -155,6 +155,7 @@ const SwimlaneKanban = /* @__PURE__ */ defineComponent({
155
155
  }, null)]
156
156
  }), showActionBar && createVNode(resolveComponent("el-dropdown"), {
157
157
  "trigger": "click",
158
+ "teleported": false,
158
159
  "style": popperStyle,
159
160
  "class": [ns.em("header", "action"), ns.is("visible", group.key === dropdownKey.value)],
160
161
  "popper-class": ns.em("header", "popper"),
@@ -172,6 +173,7 @@ const SwimlaneKanban = /* @__PURE__ */ defineComponent({
172
173
  dropdown: () => createVNode("div", {
173
174
  "class": ns.em("header", "toolbar")
174
175
  }, [c.model.groupUIActionGroup && createVNode(resolveComponent("iBizActionToolbar"), {
176
+ "zIndex": c.state.zIndex,
175
177
  "actionDetails": c.model.groupUIActionGroup.uiactionGroupDetails,
176
178
  "actionsState": group.groupActionGroupState,
177
179
  "onActionClick": (detail, event) => {
@@ -283,6 +285,7 @@ const SwimlaneKanban = /* @__PURE__ */ defineComponent({
283
285
  }, [item.content]), actionModel.length ? createVNode("div", {
284
286
  "class": ns.em("default-item", "footer")
285
287
  }, [createVNode(resolveComponent("iBizActionToolbar"), {
288
+ "zIndex": c.state.zIndex,
286
289
  "class": ns.em("default-item", "actions"),
287
290
  "action-details": actionModel,
288
291
  "actions-state": c.state.uaState[item.srfkey],
@@ -1,4 +1,4 @@
1
- import { PropType, VNode } from 'vue';
1
+ import { VNode, PropType } from 'vue';
2
2
  import { IDEList } from '@ibiz/model-core';
3
3
  import { ListController, IControlProvider } from '@ibiz-template/runtime';
4
4
  import './list.scss';
@@ -1,5 +1,5 @@
1
1
  import { isVNode, computed, ref, watch, resolveComponent, createVNode, resolveDirective, withDirectives, defineComponent } from 'vue';
2
- import { useControlController, useNamespace, hasEmptyPanelRenderer, IBizCustomRender } from '@ibiz-template/vue3-util';
2
+ import { useControlController, useNamespace, useControlPopoverzIndex, hasEmptyPanelRenderer, IBizCustomRender } from '@ibiz-template/vue3-util';
3
3
  import { isNil } from 'lodash-es';
4
4
  import { createUUID } from 'qx-util';
5
5
  import { ListController, ControlVO } from '@ibiz-template/runtime';
@@ -87,6 +87,7 @@ const ListControl = /* @__PURE__ */ defineComponent({
87
87
  setup(props) {
88
88
  const c = useControlController((...args) => new ListController(...args));
89
89
  const ns = useNamespace("control-".concat(c.model.controlType.toLowerCase()));
90
+ useControlPopoverzIndex(c);
90
91
  const {
91
92
  onPageChange,
92
93
  onPageRefresh,
@@ -217,6 +218,7 @@ const ListControl = /* @__PURE__ */ defineComponent({
217
218
  "class": ns.bem("item", "right", "actions"),
218
219
  "action-details": c.getOptItemModel(),
219
220
  "actions-state": c.state.uaState[item.srfkey],
221
+ "zIndex": c.state.zIndex,
220
222
  "onActionClick": (detail, event) => c.onActionClick(detail, item, event)
221
223
  }, null);
222
224
  };
@@ -247,6 +249,7 @@ const ListControl = /* @__PURE__ */ defineComponent({
247
249
  const renderGroupAction = (group) => {
248
250
  if (c.model.groupUIActionGroup && group.groupActionGroupState) {
249
251
  return createVNode(resolveComponent("iBizActionToolbar"), {
252
+ "zIndex": c.state.zIndex,
250
253
  "class": ns.be("group-content", "header-actions"),
251
254
  "action-details": c.model.groupUIActionGroup.uiactionGroupDetails,
252
255
  "actions-state": group.groupActionGroupState,
@@ -19,6 +19,7 @@ export declare const IBizSearchBarControl: import("@ibiz-template/vue3-util").Ty
19
19
  ns: import("@ibiz-template/core").Namespace;
20
20
  cssVars: import("vue").ComputedRef<Record<string, string>>;
21
21
  filterButtonRef: import("vue").Ref<any>;
22
+ counterData: import("vue").Ref<import("@ibiz-template/core").IApiData>;
22
23
  onClear: () => void;
23
24
  onSearch: () => void;
24
25
  onKeydown: (e: KeyboardEvent) => void;
@@ -1 +1 @@
1
- @charset "UTF-8";.ibiz-control-searchbar{--ibiz-control-searchbar-quick-search-width:220px;--ibiz-control-searchbar-quick-search-bg:var(--ibiz-color-bg-1);--ibiz-control-searchbar-quick-group-item-padding:var(--ibiz-spacing-base-tight);display:flex;align-items:center;justify-content:flex-start;height:100%}.ibiz-control-searchbar .ibiz-control-searchbar-quick-search{width:var(--ibiz-control-searchbar-quick-search-width);margin-left:var(--ibiz-spacing-base-tight);font-size:var(--ibiz-font-size-regular);color:var(--ibiz-text-color);background:var(--ibiz-control-searchbar-quick-search-bg);border:1px solid var(--ibiz-border-color);border-radius:var(--ibiz-border-radius-small)}.ibiz-control-searchbar .ibiz-control-searchbar-quick-search .el-input-group__prepend,.ibiz-control-searchbar .ibiz-control-searchbar-quick-search.el-input-group__append{padding:var(--ibiz-spacing-none)}.ibiz-control-searchbar .ibiz-control-searchbar-quick-search.is-advanced-quick-search .el-input-group__prepend+.el-input__wrapper{border-radius:0 var(--ibiz-border-radius-small) var(--ibiz-border-radius-small) 0}.ibiz-control-searchbar .ibiz-control-searchbar-quick-group{height:100%;overflow-x:auto;white-space:nowrap}.ibiz-control-searchbar .ibiz-control-searchbar-quick-group .ibiz-control-searchbar-quick-group-item{position:relative;display:inline-block;height:100%;padding:var(--ibiz-control-searchbar-quick-group-item-padding);font-size:var(--ibiz-font-size-regular);cursor:pointer}.ibiz-control-searchbar .ibiz-control-searchbar-quick-group .ibiz-control-searchbar-quick-group-item.is-selected::after{position:absolute;bottom:2px;left:var(--ibiz-spacing-base-tight);width:calc(100% - 2 * var(--ibiz-spacing-base-tight));height:2px;content:"";background-color:var(--ibiz-color-primary)}.ibiz-control-searchbar .ibiz-control-searchbar-quick-group .ibiz-control-searchbar-quick-group-item:hover{color:var(--ibiz-color-primary)}.ibiz-control-searchbar .el-input__icon{cursor:pointer}.ibiz-control-searchbar-filter{margin-right:var(--ibiz-spacing-extra-tight);margin-left:var(--ibiz-spacing-base-tight)}.ibiz-control-searchbar-save{margin-left:var(--ibiz-spacing-base-tight)}
1
+ @charset "UTF-8";.ibiz-control-searchbar{--ibiz-control-searchbar-quick-search-width:220px;--ibiz-control-searchbar-quick-search-bg:var(--ibiz-color-bg-1);--ibiz-control-searchbar-quick-group-item-padding:var(--ibiz-spacing-base-tight);display:flex;align-items:center;justify-content:flex-start;height:100%}.ibiz-control-searchbar__counter{margin-left:var(--ibiz-spacing-tight)}.ibiz-control-searchbar .ibiz-control-searchbar-quick-search{width:var(--ibiz-control-searchbar-quick-search-width);margin-left:var(--ibiz-spacing-base-tight);font-size:var(--ibiz-font-size-regular);color:var(--ibiz-text-color);background:var(--ibiz-control-searchbar-quick-search-bg);border:1px solid var(--ibiz-border-color);border-radius:var(--ibiz-border-radius-small)}.ibiz-control-searchbar .ibiz-control-searchbar-quick-search .el-input-group__prepend,.ibiz-control-searchbar .ibiz-control-searchbar-quick-search.el-input-group__append{padding:var(--ibiz-spacing-none)}.ibiz-control-searchbar .ibiz-control-searchbar-quick-search.is-advanced-quick-search .el-input-group__prepend+.el-input__wrapper{border-radius:0 var(--ibiz-border-radius-small) var(--ibiz-border-radius-small) 0}.ibiz-control-searchbar .ibiz-control-searchbar-quick-group{height:100%;overflow-x:auto;white-space:nowrap}.ibiz-control-searchbar .ibiz-control-searchbar-quick-group .ibiz-control-searchbar-quick-group-item{position:relative;display:inline-block;height:100%;padding:var(--ibiz-control-searchbar-quick-group-item-padding);font-size:var(--ibiz-font-size-regular);cursor:pointer}.ibiz-control-searchbar .ibiz-control-searchbar-quick-group .ibiz-control-searchbar-quick-group-item.is-selected::after{position:absolute;bottom:2px;left:var(--ibiz-spacing-base-tight);width:calc(100% - 2 * var(--ibiz-spacing-base-tight));height:2px;content:"";background-color:var(--ibiz-color-primary)}.ibiz-control-searchbar .ibiz-control-searchbar-quick-group .ibiz-control-searchbar-quick-group-item:hover{color:var(--ibiz-color-primary)}.ibiz-control-searchbar .el-input__icon{cursor:pointer}.ibiz-control-searchbar-filter{margin-right:var(--ibiz-spacing-extra-tight);margin-left:var(--ibiz-spacing-base-tight)}.ibiz-control-searchbar-save{margin-left:var(--ibiz-spacing-base-tight)}
@@ -1,4 +1,4 @@
1
- import { PropType } from 'vue';
1
+ import { PropType, Ref } from 'vue';
2
2
  import { ISearchBar, ISearchBarGroup } from '@ibiz/model-core';
3
3
  import './search-bar.scss';
4
4
  import { IControlProvider, SearchBarController } from '@ibiz-template/runtime';
@@ -35,7 +35,8 @@ export declare const SearchBarControl: import("vue").DefineComponent<{
35
35
  c: SearchBarController;
36
36
  ns: import("@ibiz-template/core").Namespace;
37
37
  cssVars: import("vue").ComputedRef<Record<string, string>>;
38
- filterButtonRef: import("vue").Ref<any>;
38
+ filterButtonRef: Ref<any>;
39
+ counterData: Ref<import("@ibiz-template/core").IApiData>;
39
40
  onClear: () => void;
40
41
  onSearch: () => void;
41
42
  onKeydown: (e: KeyboardEvent) => void;
@@ -1,4 +1,4 @@
1
- import { computed, ref, resolveComponent, createVNode, defineComponent } from 'vue';
1
+ import { ref, onUnmounted, computed, resolveComponent, createVNode, defineComponent } from 'vue';
2
2
  import { useControlController, useLocalCacheKey, useNamespace } from '@ibiz-template/vue3-util';
3
3
  import './search-bar.css';
4
4
  import { SearchBarController } from '@ibiz-template/runtime';
@@ -40,6 +40,19 @@ const SearchBarControl = /* @__PURE__ */ defineComponent({
40
40
  setup() {
41
41
  var _a;
42
42
  const c = useControlController((...args) => new SearchBarController(...args));
43
+ const counterData = ref({});
44
+ const fn = (counter) => {
45
+ counterData.value = counter;
46
+ };
47
+ c.evt.on("onCreated", () => {
48
+ if (c.counter) {
49
+ c.counter.onChange(fn, true);
50
+ }
51
+ });
52
+ onUnmounted(() => {
53
+ var _a2;
54
+ (_a2 = c.counter) == null ? void 0 : _a2.offChange(fn);
55
+ });
43
56
  c.setStorageKeyFn(useLocalCacheKey(c.context, "SEARCH_BAR_SELECTED_GROUP", c.view.modal.routeDepth, "@", "".concat(c.view.model.codeName, "@").concat(c.model.codeName)));
44
57
  const ns = useNamespace("control-".concat(c.model.controlType.toLowerCase()));
45
58
  let isSearch = false;
@@ -136,6 +149,7 @@ const SearchBarControl = /* @__PURE__ */ defineComponent({
136
149
  ns,
137
150
  cssVars,
138
151
  filterButtonRef,
152
+ counterData,
139
153
  onClear,
140
154
  onSearch,
141
155
  onKeydown,
@@ -154,15 +168,24 @@ const SearchBarControl = /* @__PURE__ */ defineComponent({
154
168
  default: () => {
155
169
  var _a;
156
170
  return [this.c.model.enableGroup && (this.c.isBackendSearchGroup ? createVNode(resolveComponent("iBizSearchGroups"), {
157
- "controller": this.c
171
+ "controller": this.c,
172
+ "counterData": this.counterData
158
173
  }, null) : createVNode("div", {
159
174
  "class": this.ns.b("quick-group")
160
175
  }, [(_a = this.c.model.searchBarGroups) == null ? void 0 : _a.map((groupItem) => {
161
176
  var _a2;
177
+ const visible = this.c.calcCountVisible(groupItem);
178
+ if (!visible) {
179
+ return null;
180
+ }
162
181
  return createVNode("span", {
163
182
  "class": [this.ns.b("quick-group-item"), this.ns.is("selected", ((_a2 = this.c.state.selectedGroupItem) == null ? void 0 : _a2.id) === groupItem.id)],
164
183
  "onClick": () => this.onGroupClick(groupItem)
165
- }, [groupItem.caption]);
184
+ }, [groupItem.caption, groupItem.counterId && createVNode(resolveComponent("iBizBadge"), {
185
+ "class": this.ns.e("counter"),
186
+ "value": this.counterData[groupItem.counterId],
187
+ "counterMode": groupItem.counterMode
188
+ }, null)]);
166
189
  })])), this.c.model.enableGroup && this.c.isBackendSearchGroup && createVNode(resolveComponent("el-button"), {
167
190
  "class": this.ns.b("save"),
168
191
  "title": showTitle(ibiz.i18n.t("control.searchBar.saveGroup")),
@@ -1 +1 @@
1
- .ibiz-search-groups{display:flex;align-items:center;justify-content:flex-start;height:100%}.ibiz-search-groups .ibiz-search-groups-quick-group-item{position:relative;display:inline-block;height:100%;padding:var(--ibiz-spacing-tight);margin-right:var(--ibiz-spacing-tight);font-size:var(--ibiz-font-size-regular);cursor:pointer}.ibiz-search-groups .ibiz-search-groups-quick-group-item.is-selected::after{position:absolute;bottom:2px;left:0;width:100%;height:2px;content:"";background-color:var(--ibiz-color-primary)}.ibiz-search-groups .ibiz-search-groups-quick-group-item:hover{color:var(--ibiz-color-primary)}.ibiz-search-groups-dropdown .el-dropdown-menu__item{width:180px;display:flex;align-items:center;justify-content:space-b}.ibiz-search-groups-dropdown .el-dropdown-menu__item .ibiz-search-groups-item-caption{display:inline-block;flex:1;margin:0 var(--ibiz-spacing-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-search-groups-more{display:flex;align-items:center;justify-content:flex-start;padding:var(--ibiz-spacing-tight);font-size:var(--ibiz-font-size-regular);cursor:pointer}.ibiz-search-groups-more:hover{color:var(--ibiz-color-primary)}.ibiz-search-groups-more>ion-icon{margin-left:var(--ibiz-spacing-extra-tight)}.ibiz-search-groups-more.is-selected::after{position:absolute;bottom:0;left:0;width:100%;height:2px;content:"";background-color:var(--ibiz-color-primary)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-top{display:flex;align-items:center;justify-content:space-between}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-top .ibiz-search-groups-content-top-left{display:flex;align-items:center;justify-content:flex-start}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-top .ibiz-search-groups-content-top-left>ion-icon{margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-top .ibiz-search-groups-content-top-right ion-icon{margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom{width:100%;margin-top:var(--ibiz-spacing-base);border:1px solid var(--ibiz-color-border)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-header{display:flex;align-items:center;justify-content:flex-start;width:100%;background-color:var(--ibiz-color-tertiary-light-hover)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-header .ibiz-search-groups-name{width:40%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-header .ibiz-search-groups-show{width:30%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-header .ibiz-search-groups-action{width:30%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row{position:relative;cursor:pointer;border-bottom:1px solid var(--ibiz-color-border);display:flex;align-items:center;justify-content:flex-start}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row:nth-last-child(1){border-bottom:none}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row .ibiz-search-groups-name{width:40%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row .ibiz-search-groups-show{width:30%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row .ibiz-search-groups-action{width:30%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row .ibiz-search-groups-action .el-link{margin-right:var(--ibiz-spacing-loose)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row:hover{background-color:var(--ibiz-color-primary-light-default)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row-ghost{background-color:var(--ibiz-color-primary-light-default);opacity:.5}.ibiz-search-groups-new-dialog .ibiz-search-groups-new-dialog-footer .ibiz-search-groups-cancel-btn{color:var(--ibiz-color-text-3);background-color:transparent}.ibiz-search-groups-new-dialog .ibiz-search-groups-new-dialog-footer .ibiz-search-groups-cancel-btn:hover{color:var(--ibiz-color-primary);background-color:transparent}.ibiz-search-groups-edit-dialog .ibiz-search-groups-edit-dialog-footer .ibiz-search-groups-cancel-btn{color:var(--ibiz-color-text-3);background-color:transparent}.ibiz-search-groups-edit-dialog .ibiz-search-groups-edit-dialog-footer .ibiz-search-groups-cancel-btn:hover{color:var(--ibiz-color-primary);background-color:transparent}.ibiz-search-groups-remove-dialog .ibiz-search-groups-remove-dialog-content{margin-bottom:var(--ibiz-spacing-base)}.ibiz-search-groups-remove-dialog .ibiz-search-groups-remove-dialog-content>span{padding:var(--ibiz-spacing-super-tight) var(--ibiz-spacing-tight);margin:0 var(--ibiz-spacing-tight);color:var(--ibiz-color-danger-text);background-color:var(--ibiz-color-danger);border-radius:var(--ibiz-border-radius-small)}.ibiz-search-groups-remove-dialog .ibiz-search-groups-remove-dialog-tip{color:var(--ibiz-color-text-3)}.ibiz-search-groups-remove-confirm-btn.el-button{background-color:var(--ibiz-color-danger)}.ibiz-search-groups-remove-confirm-btn:hover{background-color:var(--ibiz-color-danger-hover)}.ibiz-search-groups-remove-cancel-btn{color:var(--ibiz-color-text-3);background-color:transparent}.ibiz-search-groups-remove-cancel-btn:hover{color:var(--ibiz-color-primary);background-color:transparent}
1
+ .ibiz-search-groups{display:flex;align-items:center;justify-content:flex-start;height:100%}.ibiz-search-groups__counter{margin-left:var(--ibiz-spacing-tight)}.ibiz-search-groups .ibiz-search-groups-quick-group-item{position:relative;display:inline-block;height:100%;padding:var(--ibiz-spacing-tight);margin-right:var(--ibiz-spacing-tight);font-size:var(--ibiz-font-size-regular);cursor:pointer}.ibiz-search-groups .ibiz-search-groups-quick-group-item.is-selected::after{position:absolute;bottom:2px;left:0;width:100%;height:2px;content:"";background-color:var(--ibiz-color-primary)}.ibiz-search-groups .ibiz-search-groups-quick-group-item:hover{color:var(--ibiz-color-primary)}.ibiz-search-groups-dropdown .el-dropdown-menu__item{width:180px;display:flex;align-items:center;justify-content:space-b}.ibiz-search-groups-dropdown .el-dropdown-menu__item .ibiz-search-groups-item-caption{display:inline-block;flex:1;margin:0 var(--ibiz-spacing-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-search-groups-more{display:flex;align-items:center;justify-content:flex-start;padding:var(--ibiz-spacing-tight);font-size:var(--ibiz-font-size-regular);cursor:pointer}.ibiz-search-groups-more:hover{color:var(--ibiz-color-primary)}.ibiz-search-groups-more>ion-icon{margin-left:var(--ibiz-spacing-extra-tight)}.ibiz-search-groups-more.is-selected::after{position:absolute;bottom:0;left:0;width:100%;height:2px;content:"";background-color:var(--ibiz-color-primary)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-top{display:flex;align-items:center;justify-content:space-between}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-top .ibiz-search-groups-content-top-left{display:flex;align-items:center;justify-content:flex-start}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-top .ibiz-search-groups-content-top-left>ion-icon{margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-top .ibiz-search-groups-content-top-right ion-icon{margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom{width:100%;margin-top:var(--ibiz-spacing-base);border:1px solid var(--ibiz-color-border)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-header{display:flex;align-items:center;justify-content:flex-start;width:100%;background-color:var(--ibiz-color-tertiary-light-hover)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-header .ibiz-search-groups-name{width:40%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-header .ibiz-search-groups-show{width:30%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-header .ibiz-search-groups-action{width:30%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row{position:relative;cursor:pointer;border-bottom:1px solid var(--ibiz-color-border);display:flex;align-items:center;justify-content:flex-start}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row:nth-last-child(1){border-bottom:none}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row .ibiz-search-groups-name{width:40%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row .ibiz-search-groups-show{width:30%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row .ibiz-search-groups-action{width:30%;padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row .ibiz-search-groups-action .el-link{margin-right:var(--ibiz-spacing-loose)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row:hover{background-color:var(--ibiz-color-primary-light-default)}.ibiz-search-groups-manage-dialog .ibiz-search-groups-manage-dialog-content .ibiz-search-groups-content-bottom .ibiz-search-groups-table-body .ibiz-search-groups-table-row-ghost{background-color:var(--ibiz-color-primary-light-default);opacity:.5}.ibiz-search-groups-new-dialog .ibiz-search-groups-new-dialog-footer .ibiz-search-groups-cancel-btn{color:var(--ibiz-color-text-3);background-color:transparent}.ibiz-search-groups-new-dialog .ibiz-search-groups-new-dialog-footer .ibiz-search-groups-cancel-btn:hover{color:var(--ibiz-color-primary);background-color:transparent}.ibiz-search-groups-edit-dialog .ibiz-search-groups-edit-dialog-footer .ibiz-search-groups-cancel-btn{color:var(--ibiz-color-text-3);background-color:transparent}.ibiz-search-groups-edit-dialog .ibiz-search-groups-edit-dialog-footer .ibiz-search-groups-cancel-btn:hover{color:var(--ibiz-color-primary);background-color:transparent}.ibiz-search-groups-remove-dialog .ibiz-search-groups-remove-dialog-content{margin-bottom:var(--ibiz-spacing-base)}.ibiz-search-groups-remove-dialog .ibiz-search-groups-remove-dialog-content>span{padding:var(--ibiz-spacing-super-tight) var(--ibiz-spacing-tight);margin:0 var(--ibiz-spacing-tight);color:var(--ibiz-color-danger-text);background-color:var(--ibiz-color-danger);border-radius:var(--ibiz-border-radius-small)}.ibiz-search-groups-remove-dialog .ibiz-search-groups-remove-dialog-tip{color:var(--ibiz-color-text-3)}.ibiz-search-groups-remove-confirm-btn.el-button{background-color:var(--ibiz-color-danger)}.ibiz-search-groups-remove-confirm-btn:hover{background-color:var(--ibiz-color-danger-hover)}.ibiz-search-groups-remove-cancel-btn{color:var(--ibiz-color-text-3);background-color:transparent}.ibiz-search-groups-remove-cancel-btn:hover{color:var(--ibiz-color-primary);background-color:transparent}
@@ -6,6 +6,10 @@ export declare const SearchGroups: import("vue").DefineComponent<{
6
6
  type: PropType<SearchBarController>;
7
7
  required: true;
8
8
  };
9
+ counterData: {
10
+ type: PropType<import("@ibiz-template/core").IApiData>;
11
+ default: () => void;
12
+ };
9
13
  }, {
10
14
  ns: import("@ibiz-template/core").Namespace;
11
15
  c: SearchBarController;
@@ -37,4 +41,10 @@ export declare const SearchGroups: import("vue").DefineComponent<{
37
41
  type: PropType<SearchBarController>;
38
42
  required: true;
39
43
  };
40
- }>>, {}, {}>;
44
+ counterData: {
45
+ type: PropType<import("@ibiz-template/core").IApiData>;
46
+ default: () => void;
47
+ };
48
+ }>>, {
49
+ counterData: import("@ibiz-template/core").IApiData;
50
+ }, {}>;
@@ -20,6 +20,11 @@ const SearchGroups = /* @__PURE__ */ defineComponent({
20
20
  controller: {
21
21
  type: Object,
22
22
  required: true
23
+ },
24
+ counterData: {
25
+ type: Object,
26
+ default: () => {
27
+ }
23
28
  }
24
29
  },
25
30
  setup(props) {
@@ -190,10 +195,18 @@ const SearchGroups = /* @__PURE__ */ defineComponent({
190
195
  "class": this.ns.b()
191
196
  }, [(_a = this.showGroups) == null ? void 0 : _a.map((groupItem) => {
192
197
  var _a2;
198
+ const visible = this.c.calcCountVisible(groupItem);
199
+ if (!visible) {
200
+ return null;
201
+ }
193
202
  return createVNode("span", {
194
203
  "class": [this.ns.b("quick-group-item"), this.ns.is("selected", ((_a2 = this.c.state.selectedSearchGroupItem) == null ? void 0 : _a2.name) === groupItem.name)],
195
204
  "onClick": () => this.onGroupClick(groupItem)
196
- }, [groupItem.caption || groupItem.name]);
205
+ }, [groupItem.caption || groupItem.name, groupItem.counterId && createVNode(resolveComponent("iBizBadge"), {
206
+ "class": this.ns.e("counter"),
207
+ "value": this.counterData[groupItem.counterId],
208
+ "counterMode": groupItem.counterMode
209
+ }, null)]);
197
210
  }), createVNode(resolveComponent("el-dropdown"), {
198
211
  "popper-class": this.ns.b("dropdown")
199
212
  }, {
@@ -4,7 +4,7 @@ export declare const IBizToolbarControl: import("@ibiz-template/vue3-util").Type
4
4
  required: true;
5
5
  };
6
6
  runMode: {
7
- type: import("vue").PropType<"DESIGN" | "RUNTIME">;
7
+ type: StringConstructor;
8
8
  default: string;
9
9
  };
10
10
  context: {
@@ -40,7 +40,7 @@ export declare const IBizToolbarControl: import("@ibiz-template/vue3-util").Type
40
40
  required: true;
41
41
  };
42
42
  runMode: {
43
- type: import("vue").PropType<"DESIGN" | "RUNTIME">;
43
+ type: StringConstructor;
44
44
  default: string;
45
45
  };
46
46
  context: {
@@ -62,7 +62,7 @@ export declare const IBizToolbarControl: import("@ibiz-template/vue3-util").Type
62
62
  onClick?: ((...args: any[]) => any) | undefined;
63
63
  }, {
64
64
  params: import("@ibiz-template/core").IApiParams;
65
- runMode: "DESIGN" | "RUNTIME";
65
+ runMode: string;
66
66
  manualCalcButtonState: boolean;
67
67
  }, {}>>;
68
68
  export default IBizToolbarControl;
@@ -11,10 +11,10 @@ export declare const ToolbarControl: import("vue").DefineComponent<{
11
11
  required: true;
12
12
  };
13
13
  /**
14
- * @description 绘制模式
14
+ * @description 绘制模式,可选值为DESIGN、RUNTIME,默认值为RUNTIME
15
15
  */
16
16
  runMode: {
17
- type: PropType<"DESIGN" | "RUNTIME">;
17
+ type: StringConstructor;
18
18
  default: string;
19
19
  };
20
20
  /**
@@ -63,10 +63,10 @@ export declare const ToolbarControl: import("vue").DefineComponent<{
63
63
  required: true;
64
64
  };
65
65
  /**
66
- * @description 绘制模式
66
+ * @description 绘制模式,可选值为DESIGN、RUNTIME,默认值为RUNTIME
67
67
  */
68
68
  runMode: {
69
- type: PropType<"DESIGN" | "RUNTIME">;
69
+ type: StringConstructor;
70
70
  default: string;
71
71
  };
72
72
  /**
@@ -102,6 +102,6 @@ export declare const ToolbarControl: import("vue").DefineComponent<{
102
102
  onClick?: ((...args: any[]) => any) | undefined;
103
103
  }, {
104
104
  params: import("@ibiz-template/core").IApiParams;
105
- runMode: "DESIGN" | "RUNTIME";
105
+ runMode: string;
106
106
  manualCalcButtonState: boolean;
107
107
  }, {}>;
@@ -53,7 +53,7 @@ const ToolbarControl = /* @__PURE__ */ defineComponent({
53
53
  required: true
54
54
  },
55
55
  /**
56
- * @description 绘制模式
56
+ * @description 绘制模式,可选值为DESIGN、RUNTIME,默认值为RUNTIME
57
57
  */
58
58
  runMode: {
59
59
  type: String,
@@ -1,5 +1,5 @@
1
1
  import { isVNode, resolveComponent, createVNode, nextTick, watch, createTextVNode, renderSlot, mergeProps, defineComponent } from 'vue';
2
- import { useControlController, useNamespace, hasEmptyPanelRenderer, IBizCustomRender } from '@ibiz-template/vue3-util';
2
+ import { useControlController, useControlPopoverzIndex, useNamespace, hasEmptyPanelRenderer, IBizCustomRender } from '@ibiz-template/vue3-util';
3
3
  import { recursiveIterate } from '@ibiz-template/core';
4
4
  import { TreeGridController } from '@ibiz-template/runtime';
5
5
  import { useRowEditPopover } from '../grid/row-edit-popover/use-row-edit-popover.mjs';
@@ -90,6 +90,7 @@ const TreeGridControl = /* @__PURE__ */ defineComponent({
90
90
  slots
91
91
  }) {
92
92
  const c = useControlController((...args) => new TreeGridController(...args));
93
+ useControlPopoverzIndex(c);
93
94
  const ns = useNamespace("control-grid");
94
95
  const ns2 = useNamespace("control-".concat(c.model.controlType.toLowerCase()));
95
96
  const {
@@ -9,14 +9,15 @@ export declare const IBizTreeGridExFieldColumn: import("@ibiz-template/vue3-util
9
9
  };
10
10
  }, {
11
11
  ns: import("@ibiz-template/core").Namespace;
12
- nodeColumn: import("vue").ComputedRef<import("@ibiz-template/runtime").TreeGridExNodeColumnController | undefined>;
13
- fieldValue: import("vue").ComputedRef<any>;
12
+ zIndex: number | undefined;
13
+ tooltip: import("vue").ComputedRef<any>;
14
14
  showText: import("vue").ComputedRef<any>;
15
15
  clickable: import("vue").ComputedRef<any>;
16
- tooltip: import("vue").ComputedRef<any>;
17
- onInfoTextChange: (text: string) => void;
16
+ nodeColumn: import("vue").ComputedRef<import("@ibiz-template/runtime").TreeGridExNodeColumnController | undefined>;
17
+ fieldValue: import("vue").ComputedRef<any>;
18
18
  onTextClick: (event: MouseEvent) => void;
19
19
  onActionClick: (detail: import("@ibiz/model-core").IUIActionGroupDetail, event: MouseEvent) => Promise<void>;
20
+ onInfoTextChange: (text: string) => void;
20
21
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
21
22
  controller: {
22
23
  type: typeof import("@ibiz-template/runtime").TreeGridExFieldColumnController;
@@ -12,14 +12,15 @@ export declare const TreeGridExFieldColumn: import("vue").DefineComponent<{
12
12
  };
13
13
  }, {
14
14
  ns: import("@ibiz-template/core").Namespace;
15
- nodeColumn: import("vue").ComputedRef<import("@ibiz-template/runtime").TreeGridExNodeColumnController | undefined>;
16
- fieldValue: import("vue").ComputedRef<any>;
15
+ zIndex: number | undefined;
16
+ tooltip: import("vue").ComputedRef<any>;
17
17
  showText: import("vue").ComputedRef<any>;
18
18
  clickable: import("vue").ComputedRef<any>;
19
- tooltip: import("vue").ComputedRef<any>;
20
- onInfoTextChange: (text: string) => void;
19
+ nodeColumn: import("vue").ComputedRef<import("@ibiz-template/runtime").TreeGridExNodeColumnController | undefined>;
20
+ fieldValue: import("vue").ComputedRef<any>;
21
21
  onTextClick: (event: MouseEvent) => void;
22
22
  onActionClick: (detail: IUIActionGroupDetail, event: MouseEvent) => Promise<void>;
23
+ onInfoTextChange: (text: string) => void;
23
24
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
24
25
  controller: {
25
26
  type: typeof TreeGridExFieldColumnController;
@@ -20,6 +20,7 @@ const TreeGridExFieldColumn = /* @__PURE__ */ defineComponent({
20
20
  },
21
21
  setup(props) {
22
22
  const ns = useNamespace("tree-grid-ex-field-column");
23
+ const zIndex = props.controller.treeGrid.state.zIndex;
23
24
  const fieldValue = computed(() => {
24
25
  if (props.row.data._nodeType !== "DE" && props.controller.isFirstShowColumn) {
25
26
  return props.row.data._text;
@@ -74,14 +75,15 @@ const TreeGridExFieldColumn = /* @__PURE__ */ defineComponent({
74
75
  };
75
76
  return {
76
77
  ns,
77
- nodeColumn,
78
- fieldValue,
78
+ zIndex,
79
+ tooltip,
79
80
  showText,
80
81
  clickable,
81
- tooltip,
82
- onInfoTextChange,
82
+ nodeColumn,
83
+ fieldValue,
83
84
  onTextClick,
84
- onActionClick
85
+ onActionClick,
86
+ onInfoTextChange
85
87
  };
86
88
  },
87
89
  render() {
@@ -114,6 +116,7 @@ const TreeGridExFieldColumn = /* @__PURE__ */ defineComponent({
114
116
  actions = this.$slots.actions();
115
117
  } else if (this.row.columnActionsStates[this.controller.name]) {
116
118
  actions = createVNode(resolveComponent("iBizActionToolbar"), {
119
+ "zIndex": this.zIndex,
117
120
  "class": this.ns.e("toolbar"),
118
121
  "action-details": (_c = this.nodeColumn) == null ? void 0 : _c.nodeColumn.deuiactionGroup.uiactionGroupDetails,
119
122
  "actions-state": this.row.columnActionsStates[this.controller.name],