@ibiz-template/vue3-components 0.7.26-alpha.3 → 0.7.27

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 (240) hide show
  1. package/dist/{index-8tGeBxpc.js → index-0TO7mjm5.js} +1 -1
  2. package/dist/index-Dq21zXhV.js +4 -0
  3. package/dist/{index-CDgQJyai.js → index-g6o3vQXo.js} +1 -1
  4. package/dist/index.min.css +1 -1
  5. package/dist/index.system.min.js +1 -1
  6. package/dist/{xlsx-util-8_6qMs6z.js → xlsx-util-qdXxbg2A.js} +1 -1
  7. package/es/common/action-toolbar/action-toolbar.mjs +1 -1
  8. package/es/common/custom-theme/custom-theme.mjs +1 -1
  9. package/es/common/data-import2/data-import2.mjs +4 -1
  10. package/es/common/emoji-select/components/categories/categories.css +1 -0
  11. package/es/common/emoji-select/components/categories/categories.d.ts +30 -0
  12. package/es/common/emoji-select/components/categories/categories.mjs +48 -0
  13. package/es/common/emoji-select/components/categories/index.d.ts +1 -0
  14. package/es/common/emoji-select/components/categories/index.mjs +3 -0
  15. package/es/common/emoji-select/components/category-label/category-label.css +1 -0
  16. package/es/common/emoji-select/components/category-label/category-label.d.ts +18 -0
  17. package/es/common/emoji-select/components/category-label/category-label.mjs +28 -0
  18. package/es/common/emoji-select/components/category-label/index.d.ts +1 -0
  19. package/es/common/emoji-select/components/category-label/index.mjs +3 -0
  20. package/es/common/emoji-select/components/emoji-item/emoji-item.css +1 -0
  21. package/es/common/emoji-select/components/emoji-item/emoji-item.d.ts +44 -0
  22. package/es/common/emoji-select/components/emoji-item/emoji-item.mjs +56 -0
  23. package/es/common/emoji-select/components/emoji-item/index.d.ts +1 -0
  24. package/es/common/emoji-select/components/emoji-item/index.mjs +3 -0
  25. package/es/common/emoji-select/components/emoji-list/emoji-list.css +1 -0
  26. package/es/common/emoji-select/components/emoji-list/emoji-list.d.ts +92 -0
  27. package/es/common/emoji-select/components/emoji-list/emoji-list.mjs +165 -0
  28. package/es/common/emoji-select/components/emoji-list/index.d.ts +1 -0
  29. package/es/common/emoji-select/components/emoji-list/index.mjs +3 -0
  30. package/es/common/emoji-select/components/index.d.ts +5 -0
  31. package/es/common/emoji-select/components/index.mjs +12 -0
  32. package/es/common/emoji-select/components/input-search/index.d.ts +1 -0
  33. package/es/common/emoji-select/components/input-search/index.mjs +3 -0
  34. package/es/common/emoji-select/components/input-search/input-search.css +1 -0
  35. package/es/common/emoji-select/components/input-search/input-search.d.ts +9 -0
  36. package/es/common/emoji-select/components/input-search/input-search.mjs +49 -0
  37. package/es/common/emoji-select/emoji-select.css +1 -0
  38. package/es/common/emoji-select/emoji-select.d.ts +142 -0
  39. package/es/common/emoji-select/emoji-select.mjs +234 -0
  40. package/es/common/emoji-select/icons/categories.d.ts +2 -0
  41. package/es/common/emoji-select/icons/categories.mjs +64 -0
  42. package/es/common/emoji-select/icons/emoji.d.ts +2 -0
  43. package/es/common/emoji-select/icons/emoji.mjs +1444 -0
  44. package/es/common/emoji-select/icons/index.d.ts +3 -0
  45. package/es/common/emoji-select/icons/index.mjs +5 -0
  46. package/es/common/emoji-select/icons/search.d.ts +1 -0
  47. package/es/common/emoji-select/icons/search.mjs +16 -0
  48. package/es/common/emoji-select/interface/category.d.ts +44 -0
  49. package/es/common/emoji-select/interface/category.mjs +22 -0
  50. package/es/common/emoji-select/interface/emoji.d.ts +37 -0
  51. package/es/common/emoji-select/interface/emoji.mjs +19 -0
  52. package/es/common/emoji-select/interface/index.d.ts +3 -0
  53. package/es/common/emoji-select/interface/index.mjs +5 -0
  54. package/es/common/emoji-select/interface/map-emojis.d.ts +17 -0
  55. package/es/common/emoji-select/interface/map-emojis.mjs +1 -0
  56. package/es/common/index.mjs +2 -0
  57. package/es/common/view-message/view-message.d.ts +1 -0
  58. package/es/control/calendar/calendar.css +1 -1
  59. package/es/control/calendar/calendar.d.ts +3 -2
  60. package/es/control/calendar/calendar.mjs +203 -86
  61. package/es/control/calendar/components/calendar-daily/calendar-daily.d.ts +1 -1
  62. package/es/control/calendar/components/calendar-daily/index.d.ts +1 -1
  63. package/es/control/calendar/components/calendar-week/calendar-week.d.ts +1 -1
  64. package/es/control/calendar/components/calendar-week/calendar-week.mjs +15 -12
  65. package/es/control/calendar/components/calendar-week/index.d.ts +1 -1
  66. package/es/control/calendar/components/calendar-week/use-calendar-week.mjs +1 -0
  67. package/es/control/calendar/components/custom-calendar/custom-calendar.mjs +4 -114
  68. package/es/control/calendar/components/interface/calendar-daily.mjs +0 -3
  69. package/es/control/calendar/components/interface/calendar-week.mjs +3 -2
  70. package/es/control/calendar/components/interface/custom-calendar.mjs +8 -3
  71. package/es/control/calendar/components/interface/index.d.ts +0 -1
  72. package/es/control/calendar/components/interface/index.mjs +0 -1
  73. package/es/control/calendar/index.d.ts +2 -1
  74. package/es/control/context-menu/context-menu.mjs +2 -2
  75. package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.d.ts +36 -2
  76. package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.mjs +18 -8
  77. package/es/control/dashboard/dashboard-design/dashboard-design.d.ts +10 -32
  78. package/es/control/dashboard/dashboard-design/dashboard-design.mjs +93 -56
  79. package/es/control/drtab/drtab-control.util.mjs +7 -11
  80. package/es/control/form/form-detail/form-button/form-button.mjs +1 -1
  81. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  82. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.d.ts +28 -0
  83. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.mjs +52 -7
  84. package/es/control/form/form-detail/form-item/form-item.mjs +4 -0
  85. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.d.ts +25 -0
  86. package/es/control/grid/grid/grid-control.util.d.ts +8 -0
  87. package/es/control/grid/grid/grid-control.util.mjs +166 -12
  88. package/es/control/grid/grid/grid.css +1 -1
  89. package/es/control/grid/grid/grid.d.ts +8 -0
  90. package/es/control/grid/grid/grid.mjs +12 -2
  91. package/es/control/grid/grid/index.d.ts +8 -0
  92. package/es/control/grid/grid-column/grid-field-column/grid-field-column.d.ts +1 -0
  93. package/es/control/grid/grid-column/grid-field-column/grid-field-column.mjs +21 -1
  94. package/es/control/grid/grid-column/grid-field-column/index.d.ts +1 -0
  95. package/es/control/search-bar/search-bar.mjs +2 -2
  96. package/es/control/toolbar/export-excel/export-excel.mjs +2 -2
  97. package/es/control/toolbar/short-cut-button/short-cut-button.mjs +4 -1
  98. package/es/control/toolbar/toolbar.mjs +2 -2
  99. package/es/control/tree/index.d.ts +9 -0
  100. package/es/control/tree/tree.css +1 -1
  101. package/es/control/tree/tree.d.ts +9 -0
  102. package/es/control/tree/tree.mjs +5 -1
  103. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  104. package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +2 -2
  105. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.css +1 -1
  106. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.d.ts +4 -0
  107. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.mjs +48 -3
  108. package/es/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.mjs +2 -2
  109. package/es/editor/data-picker/picker-editor.controller.d.ts +2 -2
  110. package/es/editor/dropdown-list/dropdown-list-editor.controller.d.ts +6 -0
  111. package/es/editor/dropdown-list/dropdown-list-editor.controller.mjs +10 -1
  112. package/es/editor/dropdown-list/dropdown-list-editor.provider.d.ts +1 -0
  113. package/es/editor/dropdown-list/dropdown-list-editor.provider.mjs +10 -1
  114. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.d.ts +1 -1
  115. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +17 -4
  116. package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.css +1 -0
  117. package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.d.ts +74 -0
  118. package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.mjs +144 -0
  119. package/es/editor/dropdown-list/index.d.ts +1 -0
  120. package/es/editor/dropdown-list/index.mjs +1 -0
  121. package/es/editor/index.mjs +6 -0
  122. package/es/editor/span/span/span.mjs +3 -1
  123. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +12 -10
  124. package/es/editor/text-box/input/input.d.ts +1 -1
  125. package/es/editor/text-box/input/input.mjs +3 -0
  126. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.mjs +1 -1
  127. package/es/locale/en/index.d.ts +17 -0
  128. package/es/locale/en/index.mjs +17 -0
  129. package/es/locale/zh-CN/index.d.ts +17 -0
  130. package/es/locale/zh-CN/index.mjs +17 -0
  131. package/es/panel-component/nav-tabs/nav-tabs.controller.d.ts +7 -0
  132. package/es/panel-component/nav-tabs/nav-tabs.controller.mjs +20 -0
  133. package/es/panel-component/panel-button/panel-button.mjs +1 -1
  134. package/es/view-engine/edit-view.engine.mjs +3 -2
  135. package/es/view-engine/opt-view.engine.mjs +2 -1
  136. package/es/view-engine/pickup-tree-view.engine.mjs +1 -0
  137. package/es/web-app/attach-environment-config.mjs +2 -1
  138. package/lib/common/action-toolbar/action-toolbar.cjs +1 -1
  139. package/lib/common/custom-theme/custom-theme.cjs +1 -1
  140. package/lib/common/data-import2/data-import2.cjs +4 -1
  141. package/lib/common/emoji-select/components/categories/categories.cjs +50 -0
  142. package/lib/common/emoji-select/components/categories/categories.css +1 -0
  143. package/lib/common/emoji-select/components/categories/index.cjs +7 -0
  144. package/lib/common/emoji-select/components/category-label/category-label.cjs +30 -0
  145. package/lib/common/emoji-select/components/category-label/category-label.css +1 -0
  146. package/lib/common/emoji-select/components/category-label/index.cjs +7 -0
  147. package/lib/common/emoji-select/components/emoji-item/emoji-item.cjs +58 -0
  148. package/lib/common/emoji-select/components/emoji-item/emoji-item.css +1 -0
  149. package/lib/common/emoji-select/components/emoji-item/index.cjs +7 -0
  150. package/lib/common/emoji-select/components/emoji-list/emoji-list.cjs +167 -0
  151. package/lib/common/emoji-select/components/emoji-list/emoji-list.css +1 -0
  152. package/lib/common/emoji-select/components/emoji-list/index.cjs +7 -0
  153. package/lib/common/emoji-select/components/index.cjs +20 -0
  154. package/lib/common/emoji-select/components/input-search/index.cjs +7 -0
  155. package/lib/common/emoji-select/components/input-search/input-search.cjs +51 -0
  156. package/lib/common/emoji-select/components/input-search/input-search.css +1 -0
  157. package/lib/common/emoji-select/emoji-select.cjs +236 -0
  158. package/lib/common/emoji-select/emoji-select.css +1 -0
  159. package/lib/common/emoji-select/icons/categories.cjs +66 -0
  160. package/lib/common/emoji-select/icons/emoji.cjs +1446 -0
  161. package/lib/common/emoji-select/icons/index.cjs +11 -0
  162. package/lib/common/emoji-select/icons/search.cjs +18 -0
  163. package/lib/common/emoji-select/interface/category.cjs +24 -0
  164. package/lib/common/emoji-select/interface/emoji.cjs +21 -0
  165. package/lib/common/emoji-select/interface/index.cjs +10 -0
  166. package/lib/common/emoji-select/interface/map-emojis.cjs +3 -0
  167. package/lib/common/index.cjs +2 -0
  168. package/lib/control/calendar/calendar.cjs +203 -86
  169. package/lib/control/calendar/calendar.css +1 -1
  170. package/lib/control/calendar/components/calendar-week/calendar-week.cjs +15 -12
  171. package/lib/control/calendar/components/calendar-week/use-calendar-week.cjs +1 -0
  172. package/lib/control/calendar/components/custom-calendar/custom-calendar.cjs +7 -117
  173. package/lib/control/calendar/components/interface/calendar-daily.cjs +0 -3
  174. package/lib/control/calendar/components/interface/calendar-week.cjs +3 -2
  175. package/lib/control/calendar/components/interface/custom-calendar.cjs +8 -3
  176. package/lib/control/calendar/components/interface/index.cjs +0 -3
  177. package/lib/control/context-menu/context-menu.cjs +2 -2
  178. package/lib/control/dashboard/custom-dashboard-container/custom-dashboard-container.cjs +18 -8
  179. package/lib/control/dashboard/dashboard-design/dashboard-design.cjs +93 -56
  180. package/lib/control/drtab/drtab-control.util.cjs +7 -11
  181. package/lib/control/form/form-detail/form-button/form-button.cjs +1 -1
  182. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.cjs +51 -6
  183. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  184. package/lib/control/form/form-detail/form-item/form-item.cjs +4 -0
  185. package/lib/control/grid/grid/grid-control.util.cjs +166 -12
  186. package/lib/control/grid/grid/grid.cjs +12 -2
  187. package/lib/control/grid/grid/grid.css +1 -1
  188. package/lib/control/grid/grid-column/grid-field-column/grid-field-column.cjs +21 -1
  189. package/lib/control/search-bar/search-bar.cjs +2 -2
  190. package/lib/control/toolbar/export-excel/export-excel.cjs +2 -2
  191. package/lib/control/toolbar/short-cut-button/short-cut-button.cjs +4 -1
  192. package/lib/control/toolbar/toolbar.cjs +2 -2
  193. package/lib/control/tree/tree.cjs +5 -1
  194. package/lib/control/tree/tree.css +1 -1
  195. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  196. package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +2 -2
  197. package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.cjs +48 -3
  198. package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.css +1 -1
  199. package/lib/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.cjs +2 -2
  200. package/lib/editor/dropdown-list/dropdown-list-editor.controller.cjs +10 -1
  201. package/lib/editor/dropdown-list/dropdown-list-editor.provider.cjs +10 -1
  202. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +17 -4
  203. package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.cjs +146 -0
  204. package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.css +1 -0
  205. package/lib/editor/dropdown-list/index.cjs +2 -0
  206. package/lib/editor/index.cjs +6 -0
  207. package/lib/editor/span/span/span.cjs +2 -0
  208. package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +12 -10
  209. package/lib/editor/text-box/input/input.cjs +3 -0
  210. package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.cjs +1 -1
  211. package/lib/locale/en/index.cjs +17 -0
  212. package/lib/locale/zh-CN/index.cjs +17 -0
  213. package/lib/panel-component/nav-tabs/nav-tabs.controller.cjs +20 -0
  214. package/lib/panel-component/panel-button/panel-button.cjs +1 -1
  215. package/lib/view-engine/edit-view.engine.cjs +3 -2
  216. package/lib/view-engine/opt-view.engine.cjs +2 -1
  217. package/lib/view-engine/pickup-tree-view.engine.cjs +1 -0
  218. package/lib/web-app/attach-environment-config.cjs +2 -1
  219. package/package.json +8 -8
  220. package/dist/index-oBteffLj.js +0 -4
  221. package/es/_virtual/localeData.mjs +0 -3
  222. package/es/control/calendar/components/calendar-month/calendar-month.css +0 -1
  223. package/es/control/calendar/components/calendar-month/calendar-month.d.ts +0 -18
  224. package/es/control/calendar/components/calendar-month/calendar-month.mjs +0 -242
  225. package/es/control/calendar/components/calendar-month/index.d.ts +0 -18
  226. package/es/control/calendar/components/calendar-month/index.mjs +0 -9
  227. package/es/control/calendar/components/calendar-month/use-calendar-month.d.ts +0 -3
  228. package/es/control/calendar/components/calendar-month/use-calendar-month.mjs +0 -384
  229. package/es/control/calendar/components/interface/calendar-month.d.ts +0 -20
  230. package/es/control/calendar/components/interface/calendar-month.mjs +0 -43
  231. package/es/node_modules/.pnpm/dayjs@1.11.10/node_modules/dayjs/plugin/localeData.mjs +0 -13
  232. package/lib/_virtual/localeData.cjs +0 -5
  233. package/lib/control/calendar/components/calendar-month/calendar-month.cjs +0 -244
  234. package/lib/control/calendar/components/calendar-month/calendar-month.css +0 -1
  235. package/lib/control/calendar/components/calendar-month/index.cjs +0 -14
  236. package/lib/control/calendar/components/calendar-month/use-calendar-month.cjs +0 -386
  237. package/lib/control/calendar/components/interface/calendar-month.cjs +0 -46
  238. package/lib/node_modules/.pnpm/dayjs@1.11.10/node_modules/dayjs/plugin/localeData.cjs +0 -17
  239. /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.25_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.27_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.mjs +0 -0
  240. /package/lib/node_modules/.pnpm/{@ibiz-template_core@0.7.25_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.27_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.cjs +0 -0
@@ -708,6 +708,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
708
708
  propertyIsEnumerable: (v: PropertyKey) => boolean;
709
709
  } | undefined;
710
710
  tag?: string | undefined;
711
+ uniqueTag?: string | undefined;
711
712
  appId: string;
712
713
  id?: string | undefined;
713
714
  name?: string | undefined;
@@ -1565,6 +1566,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
1565
1566
  propertyIsEnumerable: (v: PropertyKey) => boolean;
1566
1567
  } | undefined;
1567
1568
  tag?: string | undefined;
1569
+ uniqueTag?: string | undefined;
1568
1570
  appId: string;
1569
1571
  id?: string | undefined;
1570
1572
  name?: string | undefined;
@@ -2095,6 +2097,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
2095
2097
  propertyIsEnumerable: (v: PropertyKey) => boolean;
2096
2098
  } | undefined;
2097
2099
  tag?: string | undefined;
2100
+ uniqueTag?: string | undefined;
2098
2101
  appId: string;
2099
2102
  id?: string | undefined;
2100
2103
  name?: string | undefined;
@@ -2775,6 +2778,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
2775
2778
  propertyIsEnumerable: (v: PropertyKey) => boolean;
2776
2779
  } | undefined;
2777
2780
  tag?: string | undefined;
2781
+ uniqueTag?: string | undefined;
2778
2782
  appId: string;
2779
2783
  id?: string | undefined;
2780
2784
  name?: string | undefined;
@@ -3935,6 +3939,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
3935
3939
  propertyIsEnumerable: (v: PropertyKey) => boolean;
3936
3940
  } | undefined;
3937
3941
  tag?: string | undefined;
3942
+ uniqueTag?: string | undefined;
3938
3943
  appId: string;
3939
3944
  id?: string | undefined;
3940
3945
  name?: string | undefined;
@@ -4705,6 +4710,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
4705
4710
  propertyIsEnumerable: (v: PropertyKey) => boolean;
4706
4711
  } | undefined;
4707
4712
  tag?: string | undefined;
4713
+ uniqueTag?: string | undefined;
4708
4714
  appId: string;
4709
4715
  id?: string | undefined;
4710
4716
  name?: string | undefined;
@@ -5562,6 +5568,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
5562
5568
  propertyIsEnumerable: (v: PropertyKey) => boolean;
5563
5569
  } | undefined;
5564
5570
  tag?: string | undefined;
5571
+ uniqueTag?: string | undefined;
5565
5572
  appId: string;
5566
5573
  id?: string | undefined;
5567
5574
  name?: string | undefined;
@@ -6092,6 +6099,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
6092
6099
  propertyIsEnumerable: (v: PropertyKey) => boolean;
6093
6100
  } | undefined;
6094
6101
  tag?: string | undefined;
6102
+ uniqueTag?: string | undefined;
6095
6103
  appId: string;
6096
6104
  id?: string | undefined;
6097
6105
  name?: string | undefined;
@@ -6772,6 +6780,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
6772
6780
  propertyIsEnumerable: (v: PropertyKey) => boolean;
6773
6781
  } | undefined;
6774
6782
  tag?: string | undefined;
6783
+ uniqueTag?: string | undefined;
6775
6784
  appId: string;
6776
6785
  id?: string | undefined;
6777
6786
  name?: string | undefined;
@@ -7204,6 +7213,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
7204
7213
  propertyIsEnumerable: (v: PropertyKey) => boolean;
7205
7214
  } | undefined;
7206
7215
  tag?: string | undefined;
7216
+ uniqueTag?: string | undefined;
7207
7217
  appId: string;
7208
7218
  id?: string | undefined;
7209
7219
  name?: string | undefined;
@@ -8191,6 +8201,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
8191
8201
  propertyIsEnumerable: (v: PropertyKey) => boolean;
8192
8202
  } | undefined;
8193
8203
  tag?: string | undefined;
8204
+ uniqueTag?: string | undefined;
8194
8205
  appId: string;
8195
8206
  id?: string | undefined;
8196
8207
  name?: string | undefined;
@@ -8961,6 +8972,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
8961
8972
  propertyIsEnumerable: (v: PropertyKey) => boolean;
8962
8973
  } | undefined;
8963
8974
  tag?: string | undefined;
8975
+ uniqueTag?: string | undefined;
8964
8976
  appId: string;
8965
8977
  id?: string | undefined;
8966
8978
  name?: string | undefined;
@@ -9782,6 +9794,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
9782
9794
  propertyIsEnumerable: (v: PropertyKey) => boolean;
9783
9795
  } | undefined;
9784
9796
  tag?: string | undefined;
9797
+ uniqueTag?: string | undefined;
9785
9798
  appId: string;
9786
9799
  id?: string | undefined;
9787
9800
  name?: string | undefined;
@@ -10312,6 +10325,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
10312
10325
  propertyIsEnumerable: (v: PropertyKey) => boolean;
10313
10326
  } | undefined;
10314
10327
  tag?: string | undefined;
10328
+ uniqueTag?: string | undefined;
10315
10329
  appId: string;
10316
10330
  id?: string | undefined;
10317
10331
  name?: string | undefined;
@@ -10992,6 +11006,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
10992
11006
  propertyIsEnumerable: (v: PropertyKey) => boolean;
10993
11007
  } | undefined;
10994
11008
  tag?: string | undefined;
11009
+ uniqueTag?: string | undefined;
10995
11010
  appId: string;
10996
11011
  id?: string | undefined;
10997
11012
  name?: string | undefined;
@@ -11400,6 +11415,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
11400
11415
  propertyIsEnumerable: (v: PropertyKey) => boolean;
11401
11416
  } | undefined;
11402
11417
  tag?: string | undefined;
11418
+ uniqueTag?: string | undefined;
11403
11419
  appId: string;
11404
11420
  id?: string | undefined;
11405
11421
  name?: string | undefined;
@@ -11964,6 +11980,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
11964
11980
  propertyIsEnumerable: (v: PropertyKey) => boolean;
11965
11981
  } | undefined;
11966
11982
  tag?: string | undefined;
11983
+ uniqueTag?: string | undefined;
11967
11984
  appId: string;
11968
11985
  id?: string | undefined;
11969
11986
  name?: string | undefined;
@@ -12821,6 +12838,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
12821
12838
  propertyIsEnumerable: (v: PropertyKey) => boolean;
12822
12839
  } | undefined;
12823
12840
  tag?: string | undefined;
12841
+ uniqueTag?: string | undefined;
12824
12842
  appId: string;
12825
12843
  id?: string | undefined;
12826
12844
  name?: string | undefined;
@@ -13351,6 +13369,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
13351
13369
  propertyIsEnumerable: (v: PropertyKey) => boolean;
13352
13370
  } | undefined;
13353
13371
  tag?: string | undefined;
13372
+ uniqueTag?: string | undefined;
13354
13373
  appId: string;
13355
13374
  id?: string | undefined;
13356
13375
  name?: string | undefined;
@@ -14031,6 +14050,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
14031
14050
  propertyIsEnumerable: (v: PropertyKey) => boolean;
14032
14051
  } | undefined;
14033
14052
  tag?: string | undefined;
14053
+ uniqueTag?: string | undefined;
14034
14054
  appId: string;
14035
14055
  id?: string | undefined;
14036
14056
  name?: string | undefined;
@@ -15276,6 +15296,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
15276
15296
  propertyIsEnumerable: (v: PropertyKey) => boolean;
15277
15297
  } | undefined;
15278
15298
  tag?: string | undefined;
15299
+ uniqueTag?: string | undefined;
15279
15300
  appId: string;
15280
15301
  id?: string | undefined;
15281
15302
  name?: string | undefined;
@@ -16283,6 +16304,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
16283
16304
  propertyIsEnumerable: (v: PropertyKey) => boolean;
16284
16305
  } | undefined;
16285
16306
  tag?: string | undefined;
16307
+ uniqueTag?: string | undefined;
16286
16308
  appId: string;
16287
16309
  id?: string | undefined;
16288
16310
  name?: string | undefined;
@@ -17147,6 +17169,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
17147
17169
  propertyIsEnumerable: (v: PropertyKey) => boolean;
17148
17170
  } | undefined;
17149
17171
  tag?: string | undefined;
17172
+ uniqueTag?: string | undefined;
17150
17173
  appId: string;
17151
17174
  id?: string | undefined;
17152
17175
  name?: string | undefined;
@@ -17687,6 +17710,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
17687
17710
  propertyIsEnumerable: (v: PropertyKey) => boolean;
17688
17711
  } | undefined;
17689
17712
  tag?: string | undefined;
17713
+ uniqueTag?: string | undefined;
17690
17714
  appId: string;
17691
17715
  id?: string | undefined;
17692
17716
  name?: string | undefined;
@@ -18367,6 +18391,7 @@ export declare const RepeaterGrid: import("vue").DefineComponent<{
18367
18391
  propertyIsEnumerable: (v: PropertyKey) => boolean;
18368
18392
  } | undefined;
18369
18393
  tag?: string | undefined;
18394
+ uniqueTag?: string | undefined;
18370
18395
  appId: string;
18371
18396
  id?: string | undefined;
18372
18397
  name?: string | undefined;
@@ -74,6 +74,14 @@ export declare function useAppGridBase(c: GridController, props: IGridProps): {
74
74
  columns: TableColumnCtx<IData>[];
75
75
  data: IData[];
76
76
  }) => string[];
77
+ spanMethod: ({ row, column, rowIndex, columnIndex, }: {
78
+ row: IData;
79
+ column: IData;
80
+ rowIndex: number;
81
+ columnIndex: number;
82
+ }) => IData | void;
83
+ cellMouseEnter: (row: IData, column: IData, cell: HTMLTableCellElement, event: Event) => void;
84
+ cellMouseLeave: (row: IData, column: IData, cell: HTMLTableCellElement, event: Event) => void;
77
85
  };
78
86
  /**
79
87
  * 监听表格头部高度变化,计算css变量
@@ -3,6 +3,26 @@ import { Srfuf, ControlVO, GridRowState } from '@ibiz-template/runtime';
3
3
  import { ref, watch, nextTick, computed, watchEffect, onUnmounted } from 'vue';
4
4
 
5
5
  "use strict";
6
+ function sortMergeData(rowSpanKeys, items) {
7
+ const otherItems = [];
8
+ const sortedItems = items.filter((item) => {
9
+ const index = rowSpanKeys.findIndex((key) => !item[key]);
10
+ if (index !== -1) {
11
+ otherItems.push(item);
12
+ }
13
+ return index === -1;
14
+ });
15
+ sortedItems.sort((a, b) => {
16
+ for (const key of rowSpanKeys) {
17
+ if (a[key] !== b[key]) {
18
+ return a[key] > b[key] ? 1 : -1;
19
+ }
20
+ }
21
+ return 0;
22
+ });
23
+ sortedItems.push(...otherItems);
24
+ return sortedItems;
25
+ }
6
26
  function useITableEvent(c) {
7
27
  const tableRef = ref();
8
28
  let forbidChange = false;
@@ -178,6 +198,8 @@ function useAppGridBase(c, props) {
178
198
  const row = new GridRowState(new ControlVO(item), c);
179
199
  return row;
180
200
  });
201
+ c.calcAggResult(c.state.items);
202
+ c.calcTotalData();
181
203
  };
182
204
  const defaultSort = computed(() => {
183
205
  var _a;
@@ -227,6 +249,13 @@ function useAppGridBase(c, props) {
227
249
  });
228
250
  return result;
229
251
  }
252
+ const { rowspankeys = [] } = c.controlParams;
253
+ if (rowspankeys.length > 0) {
254
+ return sortMergeData(
255
+ rowspankeys,
256
+ state.rows.map((row) => row.data)
257
+ );
258
+ }
230
259
  return state.rows.map((row) => row.data);
231
260
  });
232
261
  const renderColumns = computed(() => {
@@ -256,7 +285,128 @@ function useAppGridBase(c, props) {
256
285
  return c.state.aggResult[item.property];
257
286
  });
258
287
  };
259
- return { tableData, renderColumns, defaultSort, summaryMethod };
288
+ const spanMethod = ({
289
+ row,
290
+ column,
291
+ rowIndex,
292
+ columnIndex
293
+ }) => {
294
+ const { property } = column;
295
+ const { rowspankeys = [], colspankeys = [] } = c.controlParams;
296
+ if (rowspankeys.length > 0 && rowspankeys.includes(property)) {
297
+ if (rowIndex > 0 && row[property] && row[property] === tableData.value[rowIndex - 1][property]) {
298
+ return {
299
+ rowspan: 0,
300
+ colspan: 0
301
+ };
302
+ }
303
+ let rowspan = 1;
304
+ for (let i = rowIndex + 1; i < tableData.value.length; i++) {
305
+ if (row[property] && tableData.value[i][property] === row[property]) {
306
+ rowspan += 1;
307
+ } else {
308
+ break;
309
+ }
310
+ }
311
+ return {
312
+ rowspan,
313
+ colspan: 1
314
+ };
315
+ }
316
+ if (colspankeys.length > 0 && colspankeys.includes(property)) {
317
+ const preProperty = renderColumns.value[columnIndex - 1].codeName;
318
+ if (columnIndex > 0 && row[property] && colspankeys.includes(preProperty) && row[property] === row[preProperty]) {
319
+ return {
320
+ rowspan: 0,
321
+ colspan: 0
322
+ };
323
+ }
324
+ let colspan = 1;
325
+ for (let i = columnIndex + 1; i < renderColumns.value.length; i++) {
326
+ const nextProperty = renderColumns.value[i].codeName;
327
+ if (row[property] && colspankeys.includes(nextProperty) && row[nextProperty] === row[property]) {
328
+ colspan += 1;
329
+ } else {
330
+ break;
331
+ }
332
+ }
333
+ return {
334
+ rowspan: 1,
335
+ colspan
336
+ };
337
+ }
338
+ };
339
+ const cellMouseEnter = (row, column, cell) => {
340
+ const { rowspankeys = [] } = c.controlParams;
341
+ if (rowspankeys.length === 0) {
342
+ return;
343
+ }
344
+ let { rowSpan } = cell;
345
+ if (rowSpan && rowSpan > 1) {
346
+ let tableRow = cell.parentNode;
347
+ while (rowSpan > 1) {
348
+ if (tableRow && tableRow.nextSibling) {
349
+ tableRow.nextSibling.classList.add(
350
+ "hover-row"
351
+ );
352
+ tableRow = tableRow.nextSibling;
353
+ }
354
+ rowSpan -= 1;
355
+ }
356
+ } else {
357
+ const columnLenth = renderColumns.value.length;
358
+ let tableRow = cell.parentNode;
359
+ while (tableRow.children.length !== columnLenth) {
360
+ tableRow = tableRow.previousSibling;
361
+ }
362
+ for (let index = 0; index < tableRow.children.length; index++) {
363
+ const newCell = tableRow.children.item(index);
364
+ if (newCell.rowSpan > 1) {
365
+ newCell.classList.add("hover-cell");
366
+ }
367
+ }
368
+ }
369
+ };
370
+ const cellMouseLeave = (row, column, cell) => {
371
+ const { rowspankeys = [] } = c.controlParams;
372
+ if (rowspankeys.length === 0) {
373
+ return;
374
+ }
375
+ let { rowSpan } = cell;
376
+ if (rowSpan && rowSpan > 1) {
377
+ let tableRow = cell.parentNode;
378
+ while (rowSpan > 1) {
379
+ if (tableRow && tableRow.nextSibling) {
380
+ tableRow.nextSibling.classList.remove(
381
+ "hover-row"
382
+ );
383
+ tableRow = tableRow.nextSibling;
384
+ }
385
+ rowSpan -= 1;
386
+ }
387
+ } else {
388
+ const columnLenth = renderColumns.value.length;
389
+ let tableRow = cell.parentNode;
390
+ while (tableRow.children.length !== columnLenth) {
391
+ tableRow = tableRow.previousSibling;
392
+ }
393
+ for (let index = 0; index < tableRow.children.length; index++) {
394
+ const newCell = tableRow.children.item(index);
395
+ if (newCell.rowSpan > 1) {
396
+ newCell.classList.remove("hover-cell");
397
+ }
398
+ }
399
+ }
400
+ };
401
+ return {
402
+ tableData,
403
+ renderColumns,
404
+ defaultSort,
405
+ summaryMethod,
406
+ spanMethod,
407
+ cellMouseEnter,
408
+ cellMouseLeave
409
+ };
260
410
  }
261
411
  function useGridHeaderStyle(tableRef, ns) {
262
412
  let resizeObserver = null;
@@ -298,13 +448,13 @@ function useGridHeaderStyle(tableRef, ns) {
298
448
  };
299
449
  }
300
450
  function useGridDraggable(tableRef, ns, c) {
301
- if (!c.enableRowEditOrder || !c.model.orderValueAppDEFieldId) {
451
+ if (!c.enableRowEditOrder) {
302
452
  return {};
303
453
  }
304
- let draggingDom = null;
305
454
  let dragIndex = 0;
306
- let draggingKey = "";
455
+ let dropIndex = 0;
307
456
  let draggingData = null;
457
+ let dropData = null;
308
458
  const cleanups = [];
309
459
  const calcSrfKeyByClass = (classList) => {
310
460
  let result = "";
@@ -322,9 +472,9 @@ function useGridDraggable(tableRef, ns, c) {
322
472
  "dragstart",
323
473
  (event) => {
324
474
  if (event.target) {
325
- draggingDom = event.target;
475
+ const draggingDom = event.target;
326
476
  event.dataTransfer.effectAllowed = "move";
327
- draggingKey = calcSrfKeyByClass(draggingDom.classList);
477
+ const draggingKey = calcSrfKeyByClass(draggingDom.classList);
328
478
  dragIndex = c.state.rows.findIndex(
329
479
  (row) => row.data.srfkey === draggingKey
330
480
  );
@@ -339,15 +489,13 @@ function useGridDraggable(tableRef, ns, c) {
339
489
  event.preventDefault();
340
490
  const targetDom = event.currentTarget;
341
491
  const targetKey = calcSrfKeyByClass(targetDom.classList);
342
- const targetIndex = c.state.rows.findIndex(
492
+ dropIndex = c.state.rows.findIndex(
343
493
  (row) => row.data.srfkey === targetKey
344
494
  );
345
- if (draggingKey === targetKey || targetIndex === -1) {
495
+ if ((draggingData == null ? void 0 : draggingData.data.srfkey) === targetKey || dropIndex === -1) {
346
496
  return;
347
497
  }
348
- c.state.rows.splice(dragIndex, 1);
349
- c.state.rows.splice(targetIndex, 0, draggingData);
350
- dragIndex = targetIndex;
498
+ dropData = c.state.rows[dropIndex];
351
499
  }
352
500
  );
353
501
  const cleanDragOver = listenJSEvent(
@@ -359,7 +507,13 @@ function useGridDraggable(tableRef, ns, c) {
359
507
  );
360
508
  const cleanDragEnd = listenJSEvent(item, "dragend", (event) => {
361
509
  event.preventDefault();
362
- c.onDragChange();
510
+ if (draggingData && dropData) {
511
+ c.onDragChange(
512
+ draggingData,
513
+ dropData,
514
+ dropIndex > dragIndex ? "next" : "prev"
515
+ );
516
+ }
363
517
  });
364
518
  cleanups.push(cleanDragStart);
365
519
  cleanups.push(cleanDragEnter);
@@ -1 +1 @@
1
- .ibiz-control-grid{--ibiz-control-grid-text-color:var(--ibiz-color-text-0);--ibiz-control-grid-bg-color:transparent;--ibiz-control-grid-padding:var(--ibiz-spacing-none);--ibiz-control-grid-cell-padding:calc(var(--ibiz-spacing-base-tight) / 2) var(--ibiz-spacing-base-tight);--ibiz-control-grid-selection-padding:var(--ibiz-spacing-base-loose);--ibiz-control-grid-row-edit-bg-color:var(--ibiz-color-fill-2);--ibiz-control-grid-row-bg-color:var(--ibiz-color-bg-1);--ibiz-control-grid-row-bg-color-2:var(--ibiz-color-bg-0);--ibiz-control-grid-row-hover-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-row-select-color:var(--ibiz-color-primary-light-default);--ibiz-control-grid-row-expand-icon-margin:var(--ibiz-spacing-none) var(--ibiz-spacing-none) var(--ibiz-spacing-none) var(--ibiz-spacing-tight);--ibiz-control-grid-now-header-height:auto;--ibiz-control-grid-header-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-header-cell-padding:var(--ibiz-control-grid-cell-padding);--ibiz-control-grid-header-height:auto;--ibiz-control-grid-header-bg-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-header-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-header-font-weight:var(--ibiz-font-weight-regular);--ibiz-control-grid-content-text-color:var(--ibiz-control-grid-text-color);--ibiz-control-grid-content-row-height:48px;--ibiz-control-grid-page-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-page-height:50px;--ibiz-control-grid-page-padding:var(--ibiz-spacing-none) var(--ibiz-spacing-base-tight);--ibiz-control-grid-footer-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-footer-bg-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-footer-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-footer-font-weight:var(--ibiz-font-weight-bold);position:relative;width:100%;height:100%;padding:var(--ibiz-control-grid-padding);background-color:var(--ibiz-control-grid-bg-color)}.ibiz-control-grid .el-table{--el-table-header-bg-color:var(--ibiz-control-grid-header-bg-color);--el-table-current-row-bg-color:var(--ibiz-control-grid-row-select-color);--el-table-border-color:transparent}.ibiz-control-grid.is-empty .el-scrollbar .el-scrollbar__view{height:100%}.ibiz-control-grid.is-empty .el-table__empty-text{display:inline-block;height:100%}.ibiz-control-grid .el-table--border .el-table__cell{border-right:none}.ibiz-control-grid .el-table-fixed-column--left,.ibiz-control-grid .el-table-fixed-column--right{--el-bg-color:transparent}.ibiz-control-grid .el-table thead.is-group th.el-table__cell{background:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-page .ibiz-control-grid__table{height:calc(100% - var(--ibiz-control-grid-page-height))}.ibiz-control-grid.is-enable-group .el-table__indent{display:none}.ibiz-control-grid__table{width:100%;height:100%}.ibiz-control-grid__table .caret-wrapper{justify-content:center}.ibiz-control-grid__table .caret-wrapper>*+*{margin-top:var(--ibiz-spacing-super-tight)}.ibiz-control-grid__table .sort-caret{--el-text-color-placeholder:--ibiz-control-grid-header-text-color;position:initial;opacity:.6}.ibiz-control-grid__table.el-table .el-table__cell{padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr td{background:var(--ibiz-control-grid-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:nth-child(2n) td{background-color:var(--ibiz-control-grid-row-bg-color-2)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:hover td{background-color:var(--ibiz-control-grid-row-hover-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.current-row td{background-color:var(--el-table-current-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.editing-row td{background-color:var(--ibiz-control-grid-row-edit-bg-color)}.ibiz-control-grid__table .el-table__header-wrapper .cell{height:var(--ibiz-control-grid-header-height);padding:var(--ibiz-control-grid-header-cell-padding);font-size:var(--ibiz-control-grid-header-font-size);font-weight:var(--ibiz-control-grid-header-font-weight);color:var(--ibiz-control-grid-header-text-color);word-break:break-word;white-space:pre-wrap}.ibiz-control-grid__table .el-table__header-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__header-wrapper .is-sortable.el-table__cell .cell{display:flex;align-items:center;justify-content:var(--ibiz-grid-column-justify-content)}.ibiz-control-grid__table .el-table__body-wrapper{color:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-0:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-1:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-2:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-3:var(--ibiz-control-grid-content-text-color);border-bottom:.1px solid var(--ibiz-color-border)}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row{height:var(--ibiz-control-grid-content-row-height);cursor:pointer}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:0;padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row .el-table__expand-icon{margin:var(--ibiz-control-grid-row-expand-icon-margin)}@-moz-document url-prefix(){.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:100%}}.ibiz-control-grid__table .el-table__body-wrapper .cell{display:flex;align-items:center;height:100%;padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table .el-table__body-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__cell.is-center{--ibiz-grid-column-text-align:center;--ibiz-grid-column-justify-content:center}.ibiz-control-grid__table .el-table__cell.is-left{--ibiz-grid-column-text-align:left;--ibiz-grid-column-justify-content:flex-start}.ibiz-control-grid__table .el-table__cell.is-right{--ibiz-grid-column-text-align:right;--ibiz-grid-column-justify-content:flex-end}.ibiz-control-grid__table .el-scrollbar__wrap{position:relative}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell{font-size:var(--ibiz-control-grid-footer-font-size);font-weight:var(--ibiz-control-grid-footer-font-weight);color:var(--ibiz-control-grid-footer-text-color);background-color:var(--ibiz-control-grid-footer-bg-color)}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell:first-child>div{display:inline;vertical-align:4px}.ibiz-control-grid__table .enable-order{position:relative;padding-left:var(--ibiz-spacing-base-tight);transition:transform .25s cubic-bezier(0,0,.2,1)}.ibiz-control-grid__table .enable-order .ibiz-control-grid__drag-icon{padding:var(--ibiz-spacing-none)!important}.ibiz-control-grid__table .enable-order .ibiz-control-grid__drag-icon .cell{display:none}.ibiz-control-grid__table .enable-order:hover .ibiz-control-grid__drag-icon .cell{display:flex}.ibiz-control-grid__load-more-button{padding:var(--ibiz-control-grid-header-cell-padding);text-align:center}.ibiz-control-grid .el-table td.el-table__cell,.ibiz-control-grid .el-table th.el-table__cell.is-leaf{border-bottom:none}.ibiz-control-grid .ibiz-pagination{--ibiz-pagination-height:var(--ibiz-control-grid-page-height);--ibiz-pagination-text-color:var(--ibiz-control-grid-text-color);--ibiz-pagination-padding:var(--ibiz-control-grid-page-padding)}.ibiz-control-grid.is-single-select .el-table__header-wrapper .el-table__header thead>tr th:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-single-select .el-table__body-wrapper .el-table__body tbody>tr td:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-enable-customized .el-table__header-wrapper .el-table__header thead>tr th:last-child{padding-right:var(--ibiz-spacing-base-loose)}.ibiz-control-grid.is-enable-customized .ibiz-control-grid-setting-box{display:flex;align-items:center;justify-content:flex-start;position:absolute;top:0;right:0;z-index:1;height:var(--ibiz-control-grid-now-header-height);padding-right:var(--ibiz-spacing-extra-tight);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-customized .ibiz-grid-setting{cursor:pointer}.ibiz-control-grid-quick-toolbar{justify-content:center}.ibiz-control-grid-batch-toolbar{position:absolute;top:0;left:54px;z-index:99;display:none;width:calc(100% - 54px);height:var(--ibiz-control-grid-now-header-height);font-size:var(--ibiz-font-size-regular);font-weight:var(--ibiz-font-weight-regular);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid-batch-toolbar.is-show{display:flex;align-items:center;justify-content:flex-start}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-separator{padding:0 var(--ibiz-spacing-base-tight)}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-content{height:100%;display:flex;align-items:center;justify-content:flex-start}
1
+ .ibiz-control-grid{--ibiz-control-grid-text-color:var(--ibiz-color-text-0);--ibiz-control-grid-bg-color:transparent;--ibiz-control-grid-padding:var(--ibiz-spacing-none);--ibiz-control-grid-cell-padding:calc(var(--ibiz-spacing-base-tight) / 2) var(--ibiz-spacing-base-tight);--ibiz-control-grid-selection-padding:var(--ibiz-spacing-base-loose);--ibiz-control-grid-row-edit-bg-color:var(--ibiz-color-fill-2);--ibiz-control-grid-row-bg-color:var(--ibiz-color-bg-1);--ibiz-control-grid-row-bg-color-2:var(--ibiz-color-bg-0);--ibiz-control-grid-row-hover-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-row-select-color:var(--ibiz-color-primary-light-default);--ibiz-control-grid-row-expand-icon-margin:var(--ibiz-spacing-none) var(--ibiz-spacing-none) var(--ibiz-spacing-none) var(--ibiz-spacing-tight);--ibiz-control-grid-now-header-height:auto;--ibiz-control-grid-scrollbar-width:4px;--ibiz-control-grid-header-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-header-cell-padding:var(--ibiz-control-grid-cell-padding);--ibiz-control-grid-header-height:auto;--ibiz-control-grid-header-bg-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-header-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-header-font-weight:var(--ibiz-font-weight-regular);--ibiz-control-grid-content-text-color:var(--ibiz-control-grid-text-color);--ibiz-control-grid-content-row-height:48px;--ibiz-control-grid-page-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-page-height:50px;--ibiz-control-grid-page-padding:var(--ibiz-spacing-none) var(--ibiz-spacing-base-tight);--ibiz-control-grid-footer-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-footer-bg-color:rgba(var(--ibiz-grey-1), 1);--ibiz-control-grid-footer-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-footer-font-weight:var(--ibiz-font-weight-bold);position:relative;width:100%;height:100%;padding:var(--ibiz-control-grid-padding);background-color:var(--ibiz-control-grid-bg-color)}.ibiz-control-grid .el-table{--el-table-header-bg-color:var(--ibiz-control-grid-header-bg-color);--el-table-current-row-bg-color:var(--ibiz-control-grid-row-select-color);--el-table-border-color:transparent}.ibiz-control-grid.is-empty .el-scrollbar .el-scrollbar__view{height:100%}.ibiz-control-grid.is-empty .el-table__empty-text{display:inline-block;height:100%}.ibiz-control-grid .el-table--border .el-table__cell{border-right:none}.ibiz-control-grid .el-table-fixed-column--left,.ibiz-control-grid .el-table-fixed-column--right{--el-bg-color:transparent}.ibiz-control-grid .el-table thead.is-group th.el-table__cell{background:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-page .ibiz-control-grid__table{height:calc(100% - var(--ibiz-control-grid-page-height))}.ibiz-control-grid.is-enable-group .el-table__indent{display:none}.ibiz-control-grid__table{width:100%;height:100%}.ibiz-control-grid__table .caret-wrapper{justify-content:center}.ibiz-control-grid__table .caret-wrapper>*+*{margin-top:var(--ibiz-spacing-super-tight)}.ibiz-control-grid__table .sort-caret{--el-text-color-placeholder:--ibiz-control-grid-header-text-color;position:initial;opacity:.6}.ibiz-control-grid__table.el-table .el-table__cell{padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr td{background:var(--ibiz-control-grid-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:nth-child(2n) td{background-color:var(--ibiz-control-grid-row-bg-color-2)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:hover td{background-color:var(--ibiz-control-grid-row-hover-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.current-row td{background-color:var(--el-table-current-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.editing-row td{background-color:var(--ibiz-control-grid-row-edit-bg-color)}.ibiz-control-grid__table .el-table__header-wrapper .cell{height:var(--ibiz-control-grid-header-height);padding:var(--ibiz-control-grid-header-cell-padding);font-size:var(--ibiz-control-grid-header-font-size);font-weight:var(--ibiz-control-grid-header-font-weight);color:var(--ibiz-control-grid-header-text-color);word-break:break-word;white-space:pre-wrap}.ibiz-control-grid__table .el-table__header-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__header-wrapper .is-sortable.el-table__cell .cell{display:flex;align-items:center;justify-content:var(--ibiz-grid-column-justify-content)}.ibiz-control-grid__table .el-table__body-wrapper{color:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-0:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-1:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-2:var(--ibiz-control-grid-content-text-color);--ibiz-color-text-3:var(--ibiz-control-grid-content-text-color);border-bottom:.1px solid var(--ibiz-color-border)}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row{height:var(--ibiz-control-grid-content-row-height);cursor:pointer}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:0;padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row .el-table__expand-icon{margin:var(--ibiz-control-grid-row-expand-icon-margin)}@-moz-document url-prefix(){.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:100%}}.ibiz-control-grid__table .el-table__body-wrapper .cell{display:flex;align-items:center;height:100%;padding:var(--ibiz-spacing-none)}.ibiz-control-grid__table .el-table__body-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__cell.is-center{--ibiz-grid-column-text-align:center;--ibiz-grid-column-justify-content:center}.ibiz-control-grid__table .el-table__cell.is-left{--ibiz-grid-column-text-align:left;--ibiz-grid-column-justify-content:flex-start}.ibiz-control-grid__table .el-table__cell.is-right{--ibiz-grid-column-text-align:right;--ibiz-grid-column-justify-content:flex-end}.ibiz-control-grid__table .el-scrollbar__wrap{position:relative}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell{font-size:var(--ibiz-control-grid-footer-font-size);font-weight:var(--ibiz-control-grid-footer-font-weight);color:var(--ibiz-control-grid-footer-text-color);background-color:var(--ibiz-control-grid-footer-bg-color)}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell:first-child>div{display:inline;vertical-align:4px}.ibiz-control-grid__table .enable-order{position:relative;padding-left:var(--ibiz-spacing-base-tight);transition:transform .25s cubic-bezier(0,0,.2,1)}.ibiz-control-grid__table .enable-order .ibiz-control-grid__drag-icon{padding:var(--ibiz-spacing-none)!important}.ibiz-control-grid__table .enable-order .ibiz-control-grid__drag-icon .cell{display:none}.ibiz-control-grid__table .enable-order:hover .ibiz-control-grid__drag-icon .cell{display:flex}.ibiz-control-grid__table .el-scrollbar__bar.is-horizontal{height:var(--ibiz-control-grid-scrollbar-width)}.ibiz-control-grid__table .el-scrollbar__bar.is-vertical{width:var(--ibiz-control-grid-scrollbar-width)}.ibiz-control-grid__load-more-button{padding:var(--ibiz-control-grid-header-cell-padding);text-align:center}.ibiz-control-grid .el-table td.el-table__cell,.ibiz-control-grid .el-table th.el-table__cell.is-leaf{border-bottom:none}.ibiz-control-grid .ibiz-pagination{--ibiz-pagination-height:var(--ibiz-control-grid-page-height);--ibiz-pagination-text-color:var(--ibiz-control-grid-text-color);--ibiz-pagination-padding:var(--ibiz-control-grid-page-padding)}.ibiz-control-grid.is-single-select .el-table__header-wrapper .el-table__header thead>tr th:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-single-select .el-table__body-wrapper .el-table__body tbody>tr td:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-enable-customized .el-table__header-wrapper .el-table__header thead>tr th:last-child{padding-right:var(--ibiz-spacing-base-loose)}.ibiz-control-grid.is-enable-customized .ibiz-control-grid-setting-box{display:flex;align-items:center;justify-content:flex-start;position:absolute;top:0;right:0;z-index:1;height:var(--ibiz-control-grid-now-header-height);padding-right:var(--ibiz-spacing-extra-tight);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-customized .ibiz-grid-setting{cursor:pointer}.ibiz-control-grid .el-table .el-table__body tr.hover-row.current-row>td.el-table__cell,.ibiz-control-grid .el-table .el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.ibiz-control-grid .el-table .el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.ibiz-control-grid .el-table .el-table__body tr.hover-row>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.ibiz-control-grid .el-table .el-table__body tr.current-row td:not([rowspan="1"]){background-color:var(--ibiz-control-grid-row-bg-color)}.ibiz-control-grid .el-table .el-table__body-wrapper .el-table__body tr.el-table__row>td.hover-cell{background-color:var(--el-table-row-hover-bg-color)}.ibiz-control-grid-quick-toolbar{justify-content:center}.ibiz-control-grid-batch-toolbar{position:absolute;top:0;left:54px;z-index:99;display:none;width:calc(100% - 54px);height:var(--ibiz-control-grid-now-header-height);font-size:var(--ibiz-font-size-regular);font-weight:var(--ibiz-font-weight-regular);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid-batch-toolbar.is-show{display:flex;align-items:center;justify-content:flex-start}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-separator{padding:0 var(--ibiz-spacing-base-tight)}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-content{height:100%;display:flex;align-items:center;justify-content:flex-start}
@@ -83,6 +83,8 @@ export declare const GridControl: import("vue").DefineComponent<{
83
83
  onPageChange: (page: number) => void;
84
84
  onPageSizeChange: (size: number) => void;
85
85
  onPageRefresh: () => void;
86
+ cellMouseEnter: (row: IData, column: IData, cell: HTMLTableCellElement, event: Event) => void;
87
+ cellMouseLeave: (row: IData, column: IData, cell: HTMLTableCellElement, event: Event) => void;
86
88
  handleRowClassName: ({ row }: {
87
89
  row: IData;
88
90
  }) => string;
@@ -97,6 +99,12 @@ export declare const GridControl: import("vue").DefineComponent<{
97
99
  columns: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx<IData>[];
98
100
  data: IData[];
99
101
  }) => string[];
102
+ spanMethod: ({ row, column, rowIndex, columnIndex, }: {
103
+ row: IData;
104
+ column: IData;
105
+ rowIndex: number;
106
+ columnIndex: number;
107
+ }) => void | IData;
100
108
  renderPopover: () => JSX.Element[];
101
109
  defaultSort: import("vue").Ref<IData>;
102
110
  renderBatchToolBar: () => VNode | undefined;
@@ -199,7 +199,10 @@ const GridControl = /* @__PURE__ */ defineComponent({
199
199
  tableData,
200
200
  renderColumns,
201
201
  defaultSort,
202
- summaryMethod
202
+ summaryMethod,
203
+ spanMethod,
204
+ cellMouseEnter,
205
+ cellMouseLeave
203
206
  } = useAppGridBase(c, props);
204
207
  const {
205
208
  renderPopover
@@ -306,10 +309,13 @@ const GridControl = /* @__PURE__ */ defineComponent({
306
309
  onPageChange,
307
310
  onPageSizeChange,
308
311
  onPageRefresh,
312
+ cellMouseEnter,
313
+ cellMouseLeave,
309
314
  handleRowClassName,
310
315
  handleHeaderCellClassName,
311
316
  renderNoData,
312
317
  summaryMethod,
318
+ spanMethod,
313
319
  renderPopover,
314
320
  defaultSort,
315
321
  renderBatchToolBar,
@@ -343,11 +349,15 @@ const GridControl = /* @__PURE__ */ defineComponent({
343
349
  "header-cell-class-name": this.handleHeaderCellClassName,
344
350
  "row-key": "tempsrfkey",
345
351
  "data": this.tableData,
352
+ "span-method": this.spanMethod,
346
353
  "onRowClick": this.onRowClick,
354
+ "onCellMouseEnter": this.cellMouseEnter,
355
+ "onCellMouseLeave": this.cellMouseLeave,
347
356
  "onRowDblclick": this.onDbRowClick,
348
357
  "onSelectionChange": this.onSelectionChange,
349
358
  "onSortChange": this.onSortChange,
350
- "tooltip-effect": "light"
359
+ "tooltip-effect": "light",
360
+ "scrollbar-always-on": true
351
361
  }, {
352
362
  empty: this.renderNoData,
353
363
  default: () => {
@@ -72,6 +72,8 @@ export declare const IBizGridControl: import("@ibiz-template/vue3-util").TypeWit
72
72
  onPageChange: (page: number) => void;
73
73
  onPageSizeChange: (size: number) => void;
74
74
  onPageRefresh: () => void;
75
+ cellMouseEnter: (row: IData, column: IData, cell: HTMLTableCellElement, event: Event) => void;
76
+ cellMouseLeave: (row: IData, column: IData, cell: HTMLTableCellElement, event: Event) => void;
75
77
  handleRowClassName: ({ row }: {
76
78
  row: IData;
77
79
  }) => string;
@@ -88,6 +90,12 @@ export declare const IBizGridControl: import("@ibiz-template/vue3-util").TypeWit
88
90
  columns: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx<IData>[];
89
91
  data: IData[];
90
92
  }) => string[];
93
+ spanMethod: ({ row, column, rowIndex, columnIndex, }: {
94
+ row: IData;
95
+ column: IData;
96
+ rowIndex: number;
97
+ columnIndex: number;
98
+ }) => void | IData;
91
99
  renderPopover: () => JSX.Element[];
92
100
  defaultSort: import("vue").Ref<IData>;
93
101
  renderBatchToolBar: () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
@@ -19,6 +19,7 @@ export declare const GridFieldColumn: import("vue").DefineComponent<{
19
19
  CustomHtml: import("vue").ComputedRef<string | undefined>;
20
20
  fieldValue: import("vue").ComputedRef<any>;
21
21
  formatValue: import("vue").ComputedRef<string>;
22
+ percent: import("vue").ComputedRef<string>;
22
23
  codeListValue: import("vue").ComputedRef<string>;
23
24
  tooltip: import("vue").ComputedRef<string | undefined>;
24
25
  zIndex: number | undefined;
@@ -37,6 +37,25 @@ const GridFieldColumn = /* @__PURE__ */ defineComponent({
37
37
  });
38
38
  const fieldValue = computed(() => props.row.data[props.controller.fieldName]);
39
39
  const formatValue = computed(() => props.controller.formatValue(fieldValue.value));
40
+ const percent = computed(() => {
41
+ const {
42
+ grid
43
+ } = props.controller;
44
+ if (!grid.showPercent) {
45
+ return "";
46
+ }
47
+ const value = Number(fieldValue.value);
48
+ if (!Number.isNaN(value)) {
49
+ const {
50
+ totalResult = {}
51
+ } = grid.state;
52
+ const total = totalResult[props.controller.fieldName];
53
+ if (total) {
54
+ return ibiz.util.text.format("".concat(value / total), "0.##%");
55
+ }
56
+ }
57
+ return "";
58
+ });
40
59
  const codeListValue = computed(() => ValueExUtil.toText(props.controller.model, fieldValue.value));
41
60
  const codeListText = ref("");
42
61
  const onInfoTextChange = (text) => {
@@ -70,6 +89,7 @@ const GridFieldColumn = /* @__PURE__ */ defineComponent({
70
89
  CustomHtml,
71
90
  fieldValue,
72
91
  formatValue,
92
+ percent,
73
93
  codeListValue,
74
94
  tooltip,
75
95
  zIndex,
@@ -108,7 +128,7 @@ const GridFieldColumn = /* @__PURE__ */ defineComponent({
108
128
  "class": this.ns.e("text"),
109
129
  "title": this.tooltip,
110
130
  "onClick": this.onTextClick
111
- }, [this.formatValue, this.fieldValue != null && c.model.unitName]);
131
+ }, [this.formatValue, this.fieldValue != null && c.model.unitName, this.percent && "(".concat(this.percent, ")")]);
112
132
  }
113
133
  return createVNode("div", {
114
134
  "class": [this.ns.b(), c.clickable(this.row) && this.ns.m("clickable"), this.ns.m(this.controller.grid.overflowMode), (_a = this.controller.model.cellSysCss) == null ? void 0 : _a.cssName, this.ns.is("has-action", !!c.model.deuiactionGroup)],
@@ -16,6 +16,7 @@ export declare const IBizGridFieldColumn: import("@ibiz-template/vue3-util").Typ
16
16
  CustomHtml: import("vue").ComputedRef<string | undefined>;
17
17
  fieldValue: import("vue").ComputedRef<any>;
18
18
  formatValue: import("vue").ComputedRef<string>;
19
+ percent: import("vue").ComputedRef<string>;
19
20
  codeListValue: import("vue").ComputedRef<string>;
20
21
  tooltip: import("vue").ComputedRef<string | undefined>;
21
22
  zIndex: number | undefined;
@@ -137,7 +137,7 @@ const SearchBarControl = /* @__PURE__ */ defineComponent({
137
137
  }, [groupItem.caption]);
138
138
  })])), this.c.model.enableGroup && this.c.isBackendSearchGroup && createVNode(resolveComponent("el-button"), {
139
139
  "class": this.ns.b("save"),
140
- "title": ibiz.i18n.t("control.searchBar.saveGroup"),
140
+ "title": ibiz.env.enableTitle ? ibiz.i18n.t("control.searchBar.saveGroup") : void 0,
141
141
  "onClick": this.handleSave
142
142
  }, {
143
143
  default: () => [createVNode("ion-icon", {
@@ -161,7 +161,7 @@ const SearchBarControl = /* @__PURE__ */ defineComponent({
161
161
  }), this.c.enableFilter && createVNode(resolveComponent("el-button"), {
162
162
  "ref": "filterButtonRef",
163
163
  "type": "primary",
164
- "title": ibiz.i18n.t("control.searchBar.filter"),
164
+ "title": ibiz.env.enableTitle ? ibiz.i18n.t("control.searchBar.filter") : void 0,
165
165
  "class": this.ns.b("filter"),
166
166
  "onClick": () => this.triggerFilter()
167
167
  }, {