giime 0.0.12 → 0.0.14

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 (235) hide show
  1. package/dist/index.css +48 -83
  2. package/es/api/gatewayApi/request.d.ts +0 -1
  3. package/es/api/gatewayApi/request.mjs +1 -44
  4. package/es/api/gatewayApi/request.mjs.map +1 -1
  5. package/es/components/index.mjs +3 -0
  6. package/es/components/index.mjs.map +1 -1
  7. package/es/components/src/base/countdown/Countdown.vue2.mjs.map +1 -1
  8. package/es/components/src/base/index.d.ts +1 -0
  9. package/es/components/src/base/index.mjs +1 -0
  10. package/es/components/src/base/index.mjs.map +1 -1
  11. package/es/components/src/base/statistic/Statistic.vue2.mjs +1 -1
  12. package/es/components/src/base/statistic/Statistic.vue2.mjs.map +1 -1
  13. package/es/components/src/base/status/index.d.ts +70 -0
  14. package/es/components/src/base/status/index.mjs +8 -0
  15. package/es/components/src/base/status/index.mjs.map +1 -0
  16. package/es/components/src/base/status/status.d.ts +13 -0
  17. package/es/components/src/base/status/status.mjs +14 -0
  18. package/es/components/src/base/status/status.mjs.map +1 -0
  19. package/es/components/src/base/status/status.vue.d.ts +32 -0
  20. package/es/components/src/base/status/status.vue.mjs +7 -0
  21. package/es/components/src/base/status/status.vue.mjs.map +1 -0
  22. package/es/components/src/base/status/status.vue2.mjs +67 -0
  23. package/es/components/src/base/status/status.vue2.mjs.map +1 -0
  24. package/es/components/src/base/step/Step.vue2.mjs.map +1 -1
  25. package/es/components/src/base/table/index.mjs.map +1 -1
  26. package/es/components/src/base/tag/Tag.vue2.mjs.map +1 -1
  27. package/es/components/src/base/tour/Tour.vue.d.ts +2 -2
  28. package/es/components/src/base/tour/index.d.ts +6 -6
  29. package/es/components/src/business/customOperations/CustomOperations.vue.d.ts +24 -26
  30. package/es/components/src/business/customOperations/CustomOperations.vue.mjs +1 -2
  31. package/es/components/src/business/customOperations/CustomOperations.vue.mjs.map +1 -1
  32. package/es/components/src/business/customOperations/CustomOperations.vue2.mjs +212 -322
  33. package/es/components/src/business/customOperations/CustomOperations.vue2.mjs.map +1 -1
  34. package/es/components/src/business/customOperations/customOperations.d.ts +4 -17
  35. package/es/components/src/business/customOperations/customOperations.mjs +1 -9
  36. package/es/components/src/business/customOperations/customOperations.mjs.map +1 -1
  37. package/es/components/src/business/customOperations/index.d.ts +23 -25
  38. package/es/components/src/business/index.mjs +2 -0
  39. package/es/components/src/business/index.mjs.map +1 -1
  40. package/es/components/src/business/loginDialog/LoginDialog.vue2.mjs +23 -18
  41. package/es/components/src/business/loginDialog/LoginDialog.vue2.mjs.map +1 -1
  42. package/es/components/src/business/tableBody/TableBody.vue.d.ts +16 -21
  43. package/es/components/src/business/tableBody/TableBody.vue.mjs +1 -1
  44. package/es/components/src/business/tableBody/TableBody.vue2.mjs +105 -154
  45. package/es/components/src/business/tableBody/TableBody.vue2.mjs.map +1 -1
  46. package/es/components/src/business/tableBody/TableVNodeRenderer.d.ts +26 -0
  47. package/es/components/src/business/tableBody/TableVNodeRenderer.mjs +36 -0
  48. package/es/components/src/business/tableBody/TableVNodeRenderer.mjs.map +1 -0
  49. package/es/components/src/business/tableBody/index.d.ts +24 -27
  50. package/es/components/src/business/tableBody/index.mjs +3 -0
  51. package/es/components/src/business/tableBody/index.mjs.map +1 -1
  52. package/es/components/src/business/tableBody/tableBody.d.ts +4 -5
  53. package/es/components/src/business/tableBody/tableBody.mjs +8 -4
  54. package/es/components/src/business/tableBody/tableBody.mjs.map +1 -1
  55. package/es/components/src/business/tableBody/tableBodyItem/index.d.ts +1 -0
  56. package/es/components/src/business/tableBody/tableBodyItem/index.mjs +3 -0
  57. package/es/components/src/business/tableBody/tableBodyItem/index.mjs.map +1 -0
  58. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/TableBodyOperateButton.vue.d.ts +34 -0
  59. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/TableBodyOperateButton.vue.mjs +7 -0
  60. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/TableBodyOperateButton.vue.mjs.map +1 -0
  61. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/TableBodyOperateButton.vue2.mjs +44 -0
  62. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/TableBodyOperateButton.vue2.mjs.map +1 -0
  63. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/index.d.ts +37 -0
  64. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/index.mjs +9 -0
  65. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/index.mjs.map +1 -0
  66. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/tableBodyOperateButton.d.ts +20 -0
  67. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/tableBodyOperateButton.mjs +24 -0
  68. package/es/components/src/business/tableBody/tableBodyItem/tableBodyOperates/tableBodyOperateButton.mjs.map +1 -0
  69. package/es/components/src/business/tableBody/tableHelper.d.ts +1 -0
  70. package/es/components/src/business/tableBody/tableHelper.mjs +23 -0
  71. package/es/components/src/business/tableBody/tableHelper.mjs.map +1 -0
  72. package/es/components/src/business/tableHeader/TableHeader.vue.mjs +1 -1
  73. package/es/components/src/business/tableHeader/TableHeader.vue2.mjs +10 -13
  74. package/es/components/src/business/tableHeader/TableHeader.vue2.mjs.map +1 -1
  75. package/es/components/src/business/tableHeader/tableHeader.mjs.map +1 -1
  76. package/es/components/src/composite/searchForm/composables/useWatchModelChange.mjs +3 -0
  77. package/es/components/src/composite/searchForm/composables/useWatchModelChange.mjs.map +1 -1
  78. package/es/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue2.mjs +1 -1
  79. package/es/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue2.mjs.map +1 -1
  80. package/es/giime/component.mjs +2 -0
  81. package/es/giime/component.mjs.map +1 -1
  82. package/es/giime/index.mjs +4 -1
  83. package/es/giime/index.mjs.map +1 -1
  84. package/es/giime/version.d.ts +1 -1
  85. package/es/giime/version.mjs +1 -1
  86. package/es/giime/version.mjs.map +1 -1
  87. package/es/hooks/store/useCustomSettings/index.d.ts +16 -10
  88. package/es/hooks/store/useCustomSettings/index.mjs +54 -51
  89. package/es/hooks/store/useCustomSettings/index.mjs.map +1 -1
  90. package/es/hooks/store/useCustomSettings/index2.d.ts +29 -0
  91. package/es/hooks/store/useCustomSettings/index2.mjs +62 -0
  92. package/es/hooks/store/useCustomSettings/index2.mjs.map +1 -0
  93. package/es/hooks/store/useLogin/index.d.ts +13 -1
  94. package/es/hooks/store/useLogin/index.mjs +19 -2
  95. package/es/hooks/store/useLogin/index.mjs.map +1 -1
  96. package/es/index.css +48 -83
  97. package/es/theme-chalk/tailwindPlugin.d.ts +5 -0
  98. package/es/theme-chalk/tailwindPlugin.mjs +46 -0
  99. package/es/theme-chalk/tailwindPlugin.mjs.map +1 -0
  100. package/es/theme-chalk/tailwindPreset.d.ts +7 -36
  101. package/es/theme-chalk/tailwindPreset.mjs +16 -13
  102. package/es/theme-chalk/tailwindPreset.mjs.map +1 -1
  103. package/es/utils/index.mjs +1 -1
  104. package/es/utils/src/general.d.ts +4 -0
  105. package/es/utils/src/general.mjs +9 -0
  106. package/es/utils/src/general.mjs.map +1 -0
  107. package/es/utils/src/http/createAxios.mjs +7 -6
  108. package/es/utils/src/http/createAxios.mjs.map +1 -1
  109. package/es/utils/src/http/interceptors.d.ts +2 -5
  110. package/es/utils/src/http/interceptors.mjs +6 -2
  111. package/es/utils/src/http/interceptors.mjs.map +1 -1
  112. package/es/utils/src/objects.d.ts +1 -0
  113. package/es/utils/src/objects.mjs +3 -1
  114. package/es/utils/src/objects.mjs.map +1 -1
  115. package/global.d.ts +1 -0
  116. package/lib/api/gatewayApi/request.d.ts +0 -1
  117. package/lib/api/gatewayApi/request.js +0 -44
  118. package/lib/api/gatewayApi/request.js.map +1 -1
  119. package/lib/components/index.js +36 -30
  120. package/lib/components/index.js.map +1 -1
  121. package/lib/components/src/base/countdown/Countdown.vue2.js.map +1 -1
  122. package/lib/components/src/base/index.d.ts +1 -0
  123. package/lib/components/src/base/index.js +2 -0
  124. package/lib/components/src/base/index.js.map +1 -1
  125. package/lib/components/src/base/statistic/Statistic.vue2.js +1 -1
  126. package/lib/components/src/base/statistic/Statistic.vue2.js.map +1 -1
  127. package/lib/components/src/base/status/index.d.ts +70 -0
  128. package/lib/components/src/base/status/index.js +13 -0
  129. package/lib/components/src/base/status/index.js.map +1 -0
  130. package/lib/components/src/base/status/status.d.ts +13 -0
  131. package/lib/components/src/base/status/status.js +16 -0
  132. package/lib/components/src/base/status/status.js.map +1 -0
  133. package/lib/components/src/base/status/status.vue.d.ts +32 -0
  134. package/lib/components/src/base/status/status.vue.js +11 -0
  135. package/lib/components/src/base/status/status.vue.js.map +1 -0
  136. package/lib/components/src/base/status/status.vue2.js +71 -0
  137. package/lib/components/src/base/status/status.vue2.js.map +1 -0
  138. package/lib/components/src/base/step/Step.vue2.js.map +1 -1
  139. package/lib/components/src/base/table/index.js.map +1 -1
  140. package/lib/components/src/base/tag/Tag.vue2.js.map +1 -1
  141. package/lib/components/src/base/tour/Tour.vue.d.ts +2 -2
  142. package/lib/components/src/base/tour/index.d.ts +6 -6
  143. package/lib/components/src/business/customOperations/CustomOperations.vue.d.ts +24 -26
  144. package/lib/components/src/business/customOperations/CustomOperations.vue.js +1 -2
  145. package/lib/components/src/business/customOperations/CustomOperations.vue.js.map +1 -1
  146. package/lib/components/src/business/customOperations/CustomOperations.vue2.js +211 -321
  147. package/lib/components/src/business/customOperations/CustomOperations.vue2.js.map +1 -1
  148. package/lib/components/src/business/customOperations/customOperations.d.ts +4 -17
  149. package/lib/components/src/business/customOperations/customOperations.js +1 -9
  150. package/lib/components/src/business/customOperations/customOperations.js.map +1 -1
  151. package/lib/components/src/business/customOperations/index.d.ts +23 -25
  152. package/lib/components/src/business/index.js +12 -8
  153. package/lib/components/src/business/index.js.map +1 -1
  154. package/lib/components/src/business/loginDialog/LoginDialog.vue2.js +22 -17
  155. package/lib/components/src/business/loginDialog/LoginDialog.vue2.js.map +1 -1
  156. package/lib/components/src/business/tableBody/TableBody.vue.d.ts +16 -21
  157. package/lib/components/src/business/tableBody/TableBody.vue.js +1 -1
  158. package/lib/components/src/business/tableBody/TableBody.vue2.js +104 -153
  159. package/lib/components/src/business/tableBody/TableBody.vue2.js.map +1 -1
  160. package/lib/components/src/business/tableBody/TableVNodeRenderer.d.ts +26 -0
  161. package/lib/components/src/business/tableBody/TableVNodeRenderer.js +40 -0
  162. package/lib/components/src/business/tableBody/TableVNodeRenderer.js.map +1 -0
  163. package/lib/components/src/business/tableBody/index.d.ts +24 -27
  164. package/lib/components/src/business/tableBody/index.js +5 -0
  165. package/lib/components/src/business/tableBody/index.js.map +1 -1
  166. package/lib/components/src/business/tableBody/tableBody.d.ts +4 -5
  167. package/lib/components/src/business/tableBody/tableBody.js +8 -4
  168. package/lib/components/src/business/tableBody/tableBody.js.map +1 -1
  169. package/lib/components/src/business/tableBody/tableBodyItem/index.d.ts +1 -0
  170. package/lib/components/src/business/tableBody/tableBodyItem/index.js +10 -0
  171. package/lib/components/src/business/tableBody/tableBodyItem/index.js.map +1 -0
  172. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/TableBodyOperateButton.vue.d.ts +34 -0
  173. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/TableBodyOperateButton.vue.js +11 -0
  174. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/TableBodyOperateButton.vue.js.map +1 -0
  175. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/TableBodyOperateButton.vue2.js +48 -0
  176. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/TableBodyOperateButton.vue2.js.map +1 -0
  177. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/index.d.ts +37 -0
  178. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/index.js +15 -0
  179. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/index.js.map +1 -0
  180. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/tableBodyOperateButton.d.ts +20 -0
  181. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/tableBodyOperateButton.js +26 -0
  182. package/lib/components/src/business/tableBody/tableBodyItem/tableBodyOperates/tableBodyOperateButton.js.map +1 -0
  183. package/lib/components/src/business/tableBody/tableHelper.d.ts +1 -0
  184. package/lib/components/src/business/tableBody/tableHelper.js +25 -0
  185. package/lib/components/src/business/tableBody/tableHelper.js.map +1 -0
  186. package/lib/components/src/business/tableHeader/TableHeader.vue.js +1 -1
  187. package/lib/components/src/business/tableHeader/TableHeader.vue2.js +10 -13
  188. package/lib/components/src/business/tableHeader/TableHeader.vue2.js.map +1 -1
  189. package/lib/components/src/business/tableHeader/tableHeader.js.map +1 -1
  190. package/lib/components/src/composite/searchForm/composables/useWatchModelChange.js +3 -0
  191. package/lib/components/src/composite/searchForm/composables/useWatchModelChange.js.map +1 -1
  192. package/lib/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue2.js +1 -1
  193. package/lib/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue2.js.map +1 -1
  194. package/lib/giime/component.js +16 -14
  195. package/lib/giime/component.js.map +1 -1
  196. package/lib/giime/index.js +59 -52
  197. package/lib/giime/index.js.map +1 -1
  198. package/lib/giime/version.d.ts +1 -1
  199. package/lib/giime/version.js +1 -1
  200. package/lib/giime/version.js.map +1 -1
  201. package/lib/hooks/store/useCustomSettings/index.d.ts +16 -10
  202. package/lib/hooks/store/useCustomSettings/index.js +54 -51
  203. package/lib/hooks/store/useCustomSettings/index.js.map +1 -1
  204. package/lib/hooks/store/useCustomSettings/index2.d.ts +29 -0
  205. package/lib/hooks/store/useCustomSettings/index2.js +64 -0
  206. package/lib/hooks/store/useCustomSettings/index2.js.map +1 -0
  207. package/lib/hooks/store/useLogin/index.d.ts +13 -1
  208. package/lib/hooks/store/useLogin/index.js +18 -1
  209. package/lib/hooks/store/useLogin/index.js.map +1 -1
  210. package/lib/index.css +48 -83
  211. package/lib/theme-chalk/tailwindPlugin.d.ts +5 -0
  212. package/lib/theme-chalk/tailwindPlugin.js +50 -0
  213. package/lib/theme-chalk/tailwindPlugin.js.map +1 -0
  214. package/lib/theme-chalk/tailwindPreset.d.ts +7 -36
  215. package/lib/theme-chalk/tailwindPreset.js +16 -13
  216. package/lib/theme-chalk/tailwindPreset.js.map +1 -1
  217. package/lib/utils/index.js +1 -0
  218. package/lib/utils/index.js.map +1 -1
  219. package/lib/utils/src/general.d.ts +4 -0
  220. package/lib/utils/src/general.js +11 -0
  221. package/lib/utils/src/general.js.map +1 -0
  222. package/lib/utils/src/http/createAxios.js +7 -6
  223. package/lib/utils/src/http/createAxios.js.map +1 -1
  224. package/lib/utils/src/http/interceptors.d.ts +2 -5
  225. package/lib/utils/src/http/interceptors.js +6 -2
  226. package/lib/utils/src/http/interceptors.js.map +1 -1
  227. package/lib/utils/src/objects.d.ts +1 -0
  228. package/lib/utils/src/objects.js +3 -0
  229. package/lib/utils/src/objects.js.map +1 -1
  230. package/package.json +2 -1
  231. package/theme-chalk/index.css +2 -1
  232. package/es/components/src/business/customOperations/CustomOperations.vue3.mjs +0 -4
  233. package/es/components/src/business/customOperations/CustomOperations.vue3.mjs.map +0 -1
  234. package/lib/components/src/business/customOperations/CustomOperations.vue3.js +0 -8
  235. package/lib/components/src/business/customOperations/CustomOperations.vue3.js.map +0 -1
@@ -1,9 +1,17 @@
1
- import { pushScopeId, popScopeId, defineComponent, ref, computed, resolveComponent, openBlock, createElementBlock, Fragment, createElementVNode, createVNode, withCtx, createBlock, createCommentVNode, renderList, renderSlot, createTextVNode, toDisplayString } from 'vue';
1
+ import { pushScopeId, popScopeId, defineComponent, ref, computed, useSlots, watch, nextTick, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, createBlock, createCommentVNode, unref, createTextVNode } from 'vue';
2
2
  import { useElementBounding, useWindowSize } from '@vueuse/core';
3
+ import { hasOwn } from '../../../../utils/src/objects.mjs';
4
+ import VNodeRenderer from '../../common/VNodeRenderer.mjs';
5
+ import TableVNodeRenderer from './TableVNodeRenderer.mjs';
3
6
  import { tableBodyProps, tableBodyEmits } from './tableBody.mjs';
7
+ import { tableBodyOperateButtonProps } from './tableBodyItem/tableBodyOperates/tableBodyOperateButton.mjs';
8
+ import { getVnodesByGmName } from './tableHelper.mjs';
4
9
 
5
- const _withScopeId = (n) => (pushScopeId("data-v-e6c3b52b"), n = n(), popScopeId(), n);
6
- const _hoisted_1 = { id: "table-page" };
10
+ const _withScopeId = (n) => (pushScopeId("data-v-f1eed8aa"), n = n(), popScopeId(), n);
11
+ const _hoisted_1 = {
12
+ key: 0,
13
+ id: "table-page"
14
+ };
7
15
  const _hoisted_2 = {
8
16
  key: 0,
9
17
  class: "text-center"
@@ -12,7 +20,10 @@ const _hoisted_3 = {
12
20
  key: 1,
13
21
  class: "operate-wrap"
14
22
  };
15
- const _hoisted_4 = { class: "operate-wrap" };
23
+ const _hoisted_4 = {
24
+ key: 0,
25
+ class: "gm-flex gm-flex-wrap gm-justify-center"
26
+ };
16
27
  const _hoisted_5 = {
17
28
  key: 0,
18
29
  class: "gm-mt-2 gm-flex gm-justify-end"
@@ -25,18 +36,62 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
25
36
  props: tableBodyProps,
26
37
  emits: tableBodyEmits,
27
38
  setup(__props) {
28
- const props = __props;
29
39
  const GmTbaleRef = ref();
40
+ const props = __props;
30
41
  const { top } = useElementBounding(GmTbaleRef);
31
42
  const { height } = useWindowSize();
32
43
  const tableMaxHeight = computed(() => height.value - top.value - props.offsetBottom);
33
- const columnList = ref(props.headerList);
34
- const customList = ref(props.operateList);
35
- const Formatter = (row, colunm) => {
36
- return row[colunm.property] || "--";
37
- };
44
+ const slots = useSlots();
45
+ const columnDefault = computed(() => {
46
+ const vNodes = slots.default?.() || [];
47
+ const result = vNodes.filter((vNode) => vNode.props && vNode.props.prop !== "tableOperate");
48
+ return result.map((vNode) => vNode.props);
49
+ });
50
+ const columnList = ref(columnDefault.value);
51
+ const columnVNodes = computed(() => {
52
+ const vNodes = slots.default?.(props.data) || [];
53
+ const result = [];
54
+ columnList.value.forEach((vNode) => {
55
+ const { prop, width } = vNode;
56
+ const node = vNodes.find((item) => item.props.prop === prop);
57
+ if (node) {
58
+ node.props.width = width;
59
+ result.push(node);
60
+ }
61
+ });
62
+ return result;
63
+ });
64
+ const tableOperateVnode = computed(() => {
65
+ const vNodes = slots.default?.() || [];
66
+ const nodes = vNodes.find((vNode) => vNode.props && vNode.props.prop === "tableOperate");
67
+ return nodes;
68
+ });
69
+ const customDefaultPropsList = computed(() => {
70
+ const defaultVnodes = tableOperateVnode.value?.children?.default?.(tableOperateVnode.value?.ctx.scope);
71
+ const children = getVnodesByGmName(defaultVnodes, "TableBodyOperateButton");
72
+ const btnProps = children.map((vNode) => vNode.props) ?? [];
73
+ btnProps.forEach((it) => {
74
+ for (const key in tableBodyOperateButtonProps) {
75
+ if (hasOwn(it, key)) {
76
+ continue;
77
+ }
78
+ if (hasOwn(tableBodyOperateButtonProps, key)) {
79
+ const element = tableBodyOperateButtonProps[key];
80
+ if (hasOwn(element, "default")) {
81
+ Reflect.set(it, key, Reflect.get(element, "default"));
82
+ }
83
+ }
84
+ }
85
+ });
86
+ return btnProps;
87
+ });
88
+ const customBtnList = ref(customDefaultPropsList.value);
89
+ const customVNodes = computed(() => {
90
+ const result = [];
91
+ return result;
92
+ });
38
93
  const drawerHeaderVisible = ref(false);
39
- const drawerOperateVisible = ref(false);
94
+ const drawerOperateVisible = ref(true);
40
95
  const setTable = (event) => {
41
96
  if (event === "header") {
42
97
  drawerHeaderVisible.value = true;
@@ -45,23 +100,22 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
45
100
  drawerOperateVisible.value = true;
46
101
  }
47
102
  };
48
- const decisionBtn = (btn, row) => {
49
- let result = true;
50
- const { decision } = btn;
51
- const keys = Object.keys(row).map((k) => k);
52
- if (decision && keys.length) {
53
- Object.entries(decision).forEach(([key, value]) => {
54
- if (key.includes(key)) {
55
- const { extend, condition } = value;
56
- const ext = condition?.includes(row[key]);
57
- if (extend && !ext || !extend && ext) {
58
- result = false;
59
- }
60
- }
61
- });
103
+ const showTable = ref(true);
104
+ watch(
105
+ [columnVNodes, customVNodes],
106
+ async () => {
107
+ showTable.value = false;
108
+ await nextTick();
109
+ setTimeout(() => {
110
+ showTable.value = true;
111
+ }, 10);
112
+ GmTbaleRef.value?.doLayout();
113
+ },
114
+ {
115
+ immediate: true,
116
+ deep: true
62
117
  }
63
- return result;
64
- };
118
+ );
65
119
  return (_ctx, _cache) => {
66
120
  const _component_gm_table_column = resolveComponent("gm-table-column");
67
121
  const _component_gm_button = resolveComponent("gm-button");
@@ -73,7 +127,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
73
127
  Fragment,
74
128
  null,
75
129
  [
76
- createElementVNode("div", _hoisted_1, [
130
+ showTable.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
77
131
  createVNode(_component_gm_table, {
78
132
  ref_key: "GmTbaleRef",
79
133
  ref: GmTbaleRef,
@@ -93,82 +147,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
93
147
  type: "selection",
94
148
  width: "50"
95
149
  })) : createCommentVNode("v-if", true),
96
- (openBlock(true), createElementBlock(
97
- Fragment,
98
- null,
99
- renderList(columnList.value, (col) => {
100
- return openBlock(), createElementBlock(
101
- Fragment,
102
- {
103
- key: col.prop
104
- },
105
- [
106
- col.slot ? (openBlock(), createBlock(_component_gm_table_column, {
107
- key: 0,
108
- prop: col.prop,
109
- label: col.label,
110
- "min-width": col.width,
111
- sortable: col.sortable,
112
- "show-overflow-tooltip": col.tooltip,
113
- fixed: col.fixed
114
- }, {
115
- header: withCtx(() => [
116
- renderSlot(_ctx.$slots, "header", {
117
- prop: col.prop
118
- }, () => [
119
- createTextVNode(
120
- toDisplayString(col.label),
121
- 1
122
- /* TEXT */
123
- )
124
- ], true)
125
- ]),
126
- default: withCtx(({ row }) => [
127
- renderSlot(_ctx.$slots, "default", {
128
- prop: col.prop,
129
- row
130
- }, () => [
131
- createTextVNode(
132
- toDisplayString(row[col.prop] || "--"),
133
- 1
134
- /* TEXT */
135
- )
136
- ], true)
137
- ]),
138
- _: 2
139
- /* DYNAMIC */
140
- }, 1032, ["prop", "label", "min-width", "sortable", "show-overflow-tooltip", "fixed"])) : (openBlock(), createBlock(_component_gm_table_column, {
141
- key: 1,
142
- prop: col.prop,
143
- label: col.label,
144
- "min-width": col.width,
145
- sortable: col.sortable,
146
- "show-overflow-tooltip": col.tooltip,
147
- formatter: col.formatter || Formatter,
148
- fixed: col.fixed
149
- }, {
150
- header: withCtx(() => [
151
- renderSlot(_ctx.$slots, "header", {
152
- prop: col.prop
153
- }, () => [
154
- createTextVNode(
155
- toDisplayString(col.label),
156
- 1
157
- /* TEXT */
158
- )
159
- ], true)
160
- ]),
161
- _: 2
162
- /* DYNAMIC */
163
- }, 1032, ["prop", "label", "min-width", "sortable", "show-overflow-tooltip", "formatter", "fixed"]))
164
- ],
165
- 64
166
- /* STABLE_FRAGMENT */
167
- );
168
- }),
169
- 128
170
- /* KEYED_FRAGMENT */
171
- )),
150
+ createCommentVNode(" \u6E32\u67D3\u6570\u636E "),
151
+ createVNode(unref(VNodeRenderer), { vnode: columnVNodes.value }, null, 8, ["vnode"]),
152
+ createCommentVNode(" \u64CD\u4F5C "),
172
153
  createVNode(_component_gm_table_column, {
173
154
  width: _ctx.operateWidth,
174
155
  fixed: _ctx.operateFixed ? "right" : false
@@ -203,51 +184,21 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
203
184
  })) : createCommentVNode("v-if", true)
204
185
  ]))
205
186
  ]),
206
- default: withCtx(({ row }) => [
207
- createElementVNode("div", _hoisted_4, [
208
- (openBlock(true), createElementBlock(
209
- Fragment,
210
- null,
211
- renderList(customList.value, (btn) => {
212
- return openBlock(), createElementBlock(
213
- Fragment,
214
- {
215
- key: btn.event
216
- },
217
- [
218
- decisionBtn(btn, row) ? (openBlock(), createBlock(_component_gm_button, {
219
- key: 0,
220
- type: btn.type || "primary",
221
- link: "",
222
- size: "small",
223
- onClick: ($event) => _ctx.$emit("tableOperate", btn, row)
224
- }, {
225
- default: withCtx(() => [
226
- createTextVNode(
227
- toDisplayString(btn.label),
228
- 1
229
- /* TEXT */
230
- )
231
- ]),
232
- _: 2
233
- /* DYNAMIC */
234
- }, 1032, ["type", "onClick"])) : createCommentVNode("v-if", true)
235
- ],
236
- 64
237
- /* STABLE_FRAGMENT */
238
- );
239
- }),
240
- 128
241
- /* KEYED_FRAGMENT */
242
- ))
243
- ])
187
+ default: withCtx((slotValue) => [
188
+ createCommentVNode(' <VNodeRenderer :vnode="customVNodes" /> '),
189
+ tableOperateVnode.value ? (openBlock(), createElementBlock("div", _hoisted_4, [
190
+ createVNode(unref(TableVNodeRenderer), {
191
+ vnode: tableOperateVnode.value.children.default(slotValue),
192
+ customPropsList: customBtnList.value
193
+ }, null, 8, ["vnode", "customPropsList"])
194
+ ])) : createCommentVNode("v-if", true)
244
195
  ]),
245
196
  _: 1
246
197
  /* STABLE */
247
198
  }, 8, ["width", "fixed"])
248
199
  ]),
249
- _: 3
250
- /* FORWARDED */
200
+ _: 1
201
+ /* STABLE */
251
202
  }, 8, ["data", "height", "header-cell-style", "border", "row-style", "row-class-name", "selection"]),
252
203
  createCommentVNode(" \u5206\u9875 "),
253
204
  props.pagination ? (openBlock(), createElementBlock("div", _hoisted_5, [
@@ -262,25 +213,25 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
262
213
  onCurrentChange: _cache[5] || (_cache[5] = (value) => _ctx.$emit("currentChange", value))
263
214
  }, null, 8, ["page-size", "current-page", "page-sizes", "layout", "total", "small"])
264
215
  ])) : createCommentVNode("v-if", true)
265
- ]),
216
+ ])) : createCommentVNode("v-if", true),
266
217
  props.customHeader ? (openBlock(), createBlock(_component_gm_table_header, {
267
- key: 0,
218
+ key: 1,
268
219
  drawer: drawerHeaderVisible.value,
269
220
  "onUpdate:drawer": _cache[6] || (_cache[6] = ($event) => drawerHeaderVisible.value = $event),
270
221
  columnList: columnList.value,
271
222
  "onUpdate:columnList": _cache[7] || (_cache[7] = ($event) => columnList.value = $event),
272
- headerList: props.headerList,
223
+ headerList: columnDefault.value,
273
224
  page: props.page
274
225
  }, null, 8, ["drawer", "columnList", "headerList", "page"])) : createCommentVNode("v-if", true),
275
226
  props.customOperate ? (openBlock(), createBlock(_component_gm_custom_operations, {
276
- key: 1,
277
- drawer: drawerOperateVisible.value,
278
- "onUpdate:drawer": _cache[8] || (_cache[8] = ($event) => drawerOperateVisible.value = $event),
279
- customList: customList.value,
280
- "onUpdate:customList": _cache[9] || (_cache[9] = ($event) => customList.value = $event),
281
- operateList: props.operateList,
227
+ key: 2,
228
+ isShowDrawer: drawerOperateVisible.value,
229
+ "onUpdate:isShowDrawer": _cache[8] || (_cache[8] = ($event) => drawerOperateVisible.value = $event),
230
+ customBtnList: customBtnList.value,
231
+ "onUpdate:customBtnList": _cache[9] || (_cache[9] = ($event) => customBtnList.value = $event),
232
+ customDefaultPropsList: customDefaultPropsList.value,
282
233
  page: props.page
283
- }, null, 8, ["drawer", "customList", "operateList", "page"])) : createCommentVNode("v-if", true)
234
+ }, null, 8, ["isShowDrawer", "customBtnList", "customDefaultPropsList", "page"])) : createCommentVNode("v-if", true)
284
235
  ],
285
236
  64
286
237
  /* STABLE_FRAGMENT */
@@ -1 +1 @@
1
- {"version":3,"file":"TableBody.vue2.mjs","sources":["../../../../../../../packages/components/src/business/tableBody/TableBody.vue"],"sourcesContent":["<template>\r\n <div id=\"table-page\">\r\n <gm-table\r\n ref=\"GmTbaleRef\"\r\n :data=\"props.data\"\r\n :height=\"tableMaxHeight\"\r\n :header-cell-style=\"props.headerCellStyle\"\r\n :border=\"props.border\"\r\n :row-style=\"props.rowStyle\"\r\n :row-class-name=\"props.rowClassName\"\r\n :selection=\"props.selection\"\r\n @selection-change=\"(value: HeaderListItem[]) => $emit('selectionChange', value)\"\r\n @sort-change=\"(sort: Sort) => $emit('sortChange', sort)\"\r\n >\r\n <template v-if=\"props.selection\">\r\n <gm-table-column :key=\"999999\" type=\"selection\" width=\"50\" />\r\n </template>\r\n <template v-for=\"col in columnList\" :key=\"col.prop\">\r\n <gm-table-column\r\n v-if=\"col.slot\"\r\n :prop=\"col.prop\"\r\n :label=\"col.label\"\r\n :min-width=\"col.width\"\r\n :sortable=\"col.sortable\"\r\n :show-overflow-tooltip=\"col.tooltip\"\r\n :fixed=\"col.fixed\"\r\n >\r\n <!-- 表头插槽 -->\r\n <template #header>\r\n <slot name=\"header\" :prop=\"col.prop\">\r\n {{ col.label }}\r\n </slot>\r\n </template>\r\n <template #default=\"{ row }\">\r\n <slot name=\"default\" :prop=\"col.prop\" :row=\"row\">\r\n {{ row[col.prop] || '--' }}\r\n </slot>\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column\r\n v-else\r\n :prop=\"col.prop\"\r\n :label=\"col.label\"\r\n :min-width=\"col.width\"\r\n :sortable=\"col.sortable\"\r\n :show-overflow-tooltip=\"col.tooltip\"\r\n :formatter=\"col.formatter || Formatter\"\r\n :fixed=\"col.fixed\"\r\n >\r\n <!-- 表头插槽 -->\r\n <template #header>\r\n <slot name=\"header\" :prop=\"col.prop\">\r\n {{ col.label }}\r\n </slot>\r\n </template>\r\n </gm-table-column>\r\n </template>\r\n <gm-table-column :width=\"operateWidth\" :fixed=\"operateFixed ? 'right' : false\">\r\n <template #header>\r\n <template v-if=\"!customHeader && !customOperate\">\r\n <div class=\"text-center\">操作</div>\r\n </template>\r\n <template v-else>\r\n <div class=\"operate-wrap\">\r\n <gm-button v-if=\"customHeader\" type=\"primary\" link size=\"small\" @click=\"setTable('header')\"> 表头 </gm-button>\r\n <gm-button v-if=\"customOperate\" type=\"primary\" link size=\"small\" @click=\"setTable('operate')\"> 操作 </gm-button>\r\n </div>\r\n </template>\r\n </template>\r\n <template #default=\"{ row }\">\r\n <div class=\"operate-wrap\">\r\n <template v-for=\"btn in customList\" :key=\"btn.event\">\r\n <template v-if=\"decisionBtn(btn, row)\">\r\n <gm-button :type=\"btn.type || 'primary'\" link size=\"small\" @click=\"$emit('tableOperate', btn, row)\">\r\n {{ btn.label }}\r\n </gm-button>\r\n </template>\r\n </template>\r\n </div>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n\r\n <!-- 分页 -->\r\n <template v-if=\"props.pagination\">\r\n <div class=\"gm-mt-2 gm-flex gm-justify-end\">\r\n <gm-pagination\r\n :page-size=\"props.pageSize\"\r\n :current-page=\"props.currentPage\"\r\n :page-sizes=\"props.pageSizes\"\r\n :layout=\"props.layout\"\r\n :total=\"props.total\"\r\n :small=\"props.small\"\r\n @size-change=\"(value: number) => $emit('sizeChange', value)\"\r\n @current-change=\"(value: number) => $emit('currentChange', value)\"\r\n />\r\n </div>\r\n </template>\r\n </div>\r\n\r\n <template v-if=\"props.customHeader\">\r\n <gm-table-header v-model:drawer=\"drawerHeaderVisible\" v-model:columnList=\"columnList\" :headerList=\"props.headerList\" :page=\"props.page\" />\r\n </template>\r\n\r\n <template v-if=\"props.customOperate\">\r\n <gm-custom-operations v-model:drawer=\"drawerOperateVisible\" v-model:customList=\"customList\" :operateList=\"props.operateList\" :page=\"props.page\" />\r\n </template>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, ref } from 'vue';\r\nimport { useElementBounding, useWindowSize } from '@vueuse/core';\r\nimport { type HeaderListItem } from '../tableHeader';\r\nimport { type OperateListItem } from '../customOperations';\r\nimport { tableBodyEmits, tableBodyProps } from './tableBody';\r\nimport type { Sort, TableColumnCtx, TableInstance } from 'element-plus';\r\n\r\ndefineOptions({\r\n name: 'GmTableBody',\r\n});\r\ndefineEmits(tableBodyEmits);\r\nconst props = defineProps(tableBodyProps);\r\n\r\nconst GmTbaleRef = ref<TableInstance>();\r\n\r\n// 表格高度\r\nconst { top } = useElementBounding(GmTbaleRef as any);\r\nconst { height } = useWindowSize();\r\nconst tableMaxHeight = computed(() => height.value - top.value - props.offsetBottom);\r\n\r\n// 已选中表头\r\nconst columnList = ref<HeaderListItem[]>(props.headerList);\r\n\r\n// 操作\r\nconst customList = ref<OperateListItem[]>(props.operateList);\r\n\r\n// 格式化数据\r\nconst Formatter = (row: Record<string, any>, colunm: TableColumnCtx<any>) => {\r\n return row[colunm.property] || '--';\r\n};\r\n\r\n// 表格头部弹层\r\nconst drawerHeaderVisible = ref(false); // 表头设置弹层\r\nconst drawerOperateVisible = ref(false); // 按钮设置弹层\r\nconst setTable = (event: string) => {\r\n if (event === 'header') {\r\n drawerHeaderVisible.value = true;\r\n }\r\n if (event === 'operate') {\r\n drawerOperateVisible.value = true;\r\n }\r\n};\r\n\r\nconst decisionBtn = (btn: OperateListItem, row: any) => {\r\n let result = true; //默认按钮全部展示\r\n const { decision } = btn;\r\n const keys = Object.keys(row).map(k => k);\r\n if (decision && keys.length) {\r\n Object.entries(decision).forEach(([key, value]) => {\r\n if (key.includes(key)) {\r\n const { extend, condition } = value;\r\n const ext = condition?.includes(row[key]);\r\n if ((extend && !ext) || (!extend && ext)) {\r\n result = false;\r\n }\r\n }\r\n });\r\n }\r\n\r\n return result;\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n#table-page {\r\n :deep(.cell) {\r\n white-space: pre-line !important;\r\n }\r\n :deep(.el-tooltip) {\r\n white-space: nowrap !important;\r\n }\r\n :deep(.el-scrollbar__bar.is-horizontal) {\r\n height: 12px;\r\n border-radius: 12px;\r\n }\r\n .operate-wrap {\r\n text-align: center;\r\n }\r\n .el-button {\r\n margin: 0 3px !important;\r\n }\r\n}\r\n</style>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAyHA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAA,MAAM,aAAa,GAAmB,EAAA,CAAA;AAGtC,IAAA,MAAM,EAAE,GAAA,EAAQ,GAAA,kBAAA,CAAmB,UAAiB,CAAA,CAAA;AACpD,IAAM,MAAA,EAAE,MAAO,EAAA,GAAI,aAAc,EAAA,CAAA;AACjC,IAAM,MAAA,cAAA,GAAiB,SAAS,MAAM,MAAA,CAAO,QAAQ,GAAI,CAAA,KAAA,GAAQ,MAAM,YAAY,CAAA,CAAA;AAGnF,IAAM,MAAA,UAAA,GAAa,GAAsB,CAAA,KAAA,CAAM,UAAU,CAAA,CAAA;AAGzD,IAAM,MAAA,UAAA,GAAa,GAAuB,CAAA,KAAA,CAAM,WAAW,CAAA,CAAA;AAG3D,IAAM,MAAA,SAAA,GAAY,CAAC,GAAA,EAA0B,MAAgC,KAAA;AAC3E,MAAO,OAAA,GAAA,CAAI,MAAO,CAAA,QAAQ,CAAK,IAAA,IAAA,CAAA;AAAA,KACjC,CAAA;AAGA,IAAM,MAAA,mBAAA,GAAsB,IAAI,KAAK,CAAA,CAAA;AACrC,IAAM,MAAA,oBAAA,GAAuB,IAAI,KAAK,CAAA,CAAA;AACtC,IAAM,MAAA,QAAA,GAAW,CAAC,KAAkB,KAAA;AAClC,MAAA,IAAI,UAAU,QAAU,EAAA;AACtB,QAAA,mBAAA,CAAoB,KAAQ,GAAA,IAAA,CAAA;AAAA,OAC9B;AACA,MAAA,IAAI,UAAU,SAAW,EAAA;AACvB,QAAA,oBAAA,CAAqB,KAAQ,GAAA,IAAA,CAAA;AAAA,OAC/B;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,WAAA,GAAc,CAAC,GAAA,EAAsB,GAAa,KAAA;AACtD,MAAA,IAAI,MAAS,GAAA,IAAA,CAAA;AACb,MAAM,MAAA,EAAE,UAAa,GAAA,GAAA,CAAA;AACrB,MAAA,MAAM,OAAO,MAAO,CAAA,IAAA,CAAK,GAAG,CAAE,CAAA,GAAA,CAAI,OAAK,CAAC,CAAA,CAAA;AACxC,MAAI,IAAA,QAAA,IAAY,KAAK,MAAQ,EAAA;AAC3B,QAAO,MAAA,CAAA,OAAA,CAAQ,QAAQ,CAAE,CAAA,OAAA,CAAQ,CAAC,CAAC,GAAA,EAAK,KAAK,CAAM,KAAA;AACjD,UAAI,IAAA,GAAA,CAAI,QAAS,CAAA,GAAG,CAAG,EAAA;AACrB,YAAM,MAAA,EAAE,MAAQ,EAAA,SAAA,EAAc,GAAA,KAAA,CAAA;AAC9B,YAAA,MAAM,GAAM,GAAA,SAAA,EAAW,QAAS,CAAA,GAAA,CAAI,GAAG,CAAC,CAAA,CAAA;AACxC,YAAA,IAAK,MAAU,IAAA,CAAC,GAAS,IAAA,CAAC,UAAU,GAAM,EAAA;AACxC,cAAS,MAAA,GAAA,KAAA,CAAA;AAAA,aACX;AAAA,WACF;AAAA,SACD,CAAA,CAAA;AAAA,OACH;AAEA,MAAO,OAAA,MAAA,CAAA;AAAA,KACT,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"TableBody.vue2.mjs","sources":["../../../../../../../packages/components/src/business/tableBody/TableBody.vue"],"sourcesContent":["<template>\r\n <div v-if=\"showTable\" id=\"table-page\">\r\n <gm-table\r\n ref=\"GmTbaleRef\"\r\n :data=\"props.data\"\r\n :height=\"tableMaxHeight\"\r\n :header-cell-style=\"props.headerCellStyle\"\r\n :border=\"props.border\"\r\n :row-style=\"props.rowStyle\"\r\n :row-class-name=\"props.rowClassName\"\r\n :selection=\"props.selection\"\r\n @selection-change=\"(value: HeaderListItem[]) => $emit('selectionChange', value)\"\r\n @sort-change=\"(sort: Sort) => $emit('sortChange', sort)\"\r\n >\r\n <template v-if=\"props.selection\">\r\n <gm-table-column :key=\"999999\" type=\"selection\" width=\"50\" />\r\n </template>\r\n\r\n <!-- 渲染数据 -->\r\n <VNodeRenderer :vnode=\"columnVNodes\" />\r\n <!-- 操作 -->\r\n <gm-table-column :width=\"operateWidth\" :fixed=\"operateFixed ? 'right' : false\">\r\n <template #header>\r\n <template v-if=\"!customHeader && !customOperate\">\r\n <div class=\"text-center\">操作</div>\r\n </template>\r\n <template v-else>\r\n <div class=\"operate-wrap\">\r\n <gm-button v-if=\"customHeader\" type=\"primary\" link size=\"small\" @click=\"setTable('header')\"> 表头 </gm-button>\r\n <gm-button v-if=\"customOperate\" type=\"primary\" link size=\"small\" @click=\"setTable('operate')\"> 操作 </gm-button>\r\n </div>\r\n </template>\r\n </template>\r\n <template #default=\"slotValue\">\r\n <!-- <VNodeRenderer :vnode=\"customVNodes\" /> -->\r\n <div v-if=\"tableOperateVnode\" class=\"gm-flex gm-flex-wrap gm-justify-center\">\r\n <TableVNodeRenderer :vnode=\"tableOperateVnode.children.default(slotValue)\" :customPropsList=\"customBtnList\" />\r\n </div>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n\r\n <!-- 分页 -->\r\n <template v-if=\"props.pagination\">\r\n <div class=\"gm-mt-2 gm-flex gm-justify-end\">\r\n <gm-pagination\r\n :page-size=\"props.pageSize\"\r\n :current-page=\"props.currentPage\"\r\n :page-sizes=\"props.pageSizes\"\r\n :layout=\"props.layout\"\r\n :total=\"props.total\"\r\n :small=\"props.small\"\r\n @size-change=\"(value: number) => $emit('sizeChange', value)\"\r\n @current-change=\"(value: number) => $emit('currentChange', value)\"\r\n />\r\n </div>\r\n </template>\r\n </div>\r\n\r\n <template v-if=\"props.customHeader\">\r\n <gm-table-header v-model:drawer=\"drawerHeaderVisible\" v-model:columnList=\"columnList\" :headerList=\"columnDefault\" :page=\"props.page\" />\r\n </template>\r\n\r\n <template v-if=\"props.customOperate\">\r\n <gm-custom-operations\r\n v-model:isShowDrawer=\"drawerOperateVisible\"\r\n v-model:customBtnList=\"customBtnList\"\r\n :customDefaultPropsList=\"customDefaultPropsList\"\r\n :page=\"props.page\"\r\n />\r\n </template>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { type ComputedRef, computed, nextTick, ref, watch } from 'vue';\r\nimport { useElementBounding, useWindowSize } from '@vueuse/core';\r\nimport { hasOwn } from '@giime/utils/src/objects';\r\n// import { cloneDeep } from 'lodash-es';\r\nimport VNodeRenderer from '../../common/VNodeRenderer';\r\nimport { type HeaderListItem } from '../tableHeader';\r\nimport TableVNodeRenderer from './TableVNodeRenderer';\r\nimport { tableBodyEmits, tableBodyProps } from './tableBody';\r\nimport { tableBodyOperateButtonProps } from './tableBodyItem/tableBodyOperates/tableBodyOperateButton';\r\nimport { getVnodesByGmName } from './tableHelper';\r\nimport type { TableBodyOperateButtonProps } from './tableBodyItem/tableBodyOperates/tableBodyOperateButton';\r\nimport type { Sort, TableInstance } from 'element-plus';\r\n\r\ndefineOptions({\r\n name: 'GmTableBody',\r\n});\r\nconst GmTbaleRef = ref<TableInstance>();\r\ndefineEmits(tableBodyEmits);\r\nconst props = defineProps(tableBodyProps);\r\n\r\n// 表格高度\r\nconst { top } = useElementBounding(GmTbaleRef as any);\r\nconst { height } = useWindowSize();\r\nconst tableMaxHeight = computed(() => height.value - top.value - props.offsetBottom);\r\n\r\nconst slots = defineSlots<{\r\n default(data?: any): HeaderListItem[];\r\n}>();\r\n\r\n// 默认表头\r\nconst columnDefault: ComputedRef<HeaderListItem[]> = computed(() => {\r\n const vNodes: HeaderListItem[] = slots.default?.() || [];\r\n const result = vNodes.filter(vNode => vNode.props && vNode.props.prop !== 'tableOperate');\r\n return result.map(vNode => vNode.props);\r\n});\r\n// 已选中表头\r\nconst columnList = ref<HeaderListItem[]>(columnDefault.value);\r\n// 获取选中插槽内容\r\nconst columnVNodes = computed(() => {\r\n const vNodes: HeaderListItem[] = slots.default?.(props.data) || [];\r\n const result: any = [];\r\n columnList.value.forEach(vNode => {\r\n const { prop, width } = vNode;\r\n const node = vNodes.find(item => item.props.prop === prop);\r\n if (node) {\r\n node.props.width = width;\r\n result.push(node);\r\n }\r\n });\r\n // console.log({ result: result[0].children.default });\r\n return result;\r\n});\r\n// 操作按钮组 当前原始vnode\r\nconst tableOperateVnode = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n const nodes = vNodes.find(vNode => vNode.props && vNode.props.prop === 'tableOperate');\r\n return nodes;\r\n});\r\n\r\n// 操作按钮\r\n// const customElement = computed(() => {\r\n// const vNodes = slots.default?.(props.data) || [];\r\n// const nodes = vNodes.find(vNode => vNode.props && vNode.props.prop === 'tableOperate');\r\n// const btnNodes = nodes?.children.default?.(nodes.ctx.scope);\r\n// return btnNodes;\r\n// });\r\nconst customDefaultPropsList = computed(() => {\r\n const defaultVnodes = tableOperateVnode.value?.children?.default?.(tableOperateVnode.value?.ctx.scope);\r\n const children = getVnodesByGmName(defaultVnodes, 'TableBodyOperateButton');\r\n\r\n const btnProps: TableBodyOperateButtonProps[] = children.map((vNode: { props: any }) => vNode.props) ?? [];\r\n // 循环插入props所需的默认值\r\n btnProps.forEach(it => {\r\n for (const key in tableBodyOperateButtonProps) {\r\n // 如果当前props含有默认值\r\n if (hasOwn(it, key)) {\r\n continue;\r\n }\r\n if (hasOwn(tableBodyOperateButtonProps, key)) {\r\n const element = tableBodyOperateButtonProps[key as keyof TableBodyOperateButtonProps];\r\n // 如果btn 定义中含有默认值 则赋值给props\r\n if (hasOwn(element, 'default')) {\r\n Reflect.set(it, key, Reflect.get(element, 'default'));\r\n }\r\n }\r\n }\r\n });\r\n return btnProps;\r\n});\r\nconst customBtnList = ref<TableBodyOperateButtonProps[]>(customDefaultPropsList.value);\r\n\r\nconst customVNodes = computed(() => {\r\n const result: any = [];\r\n // customBtnList.value.forEach((vNode: any) => {\r\n // if (!vNode) {\r\n // return;\r\n // }\r\n // const { prop, type } = vNode;\r\n\r\n // // const node = customElement.value.find((item: { props: { prop: any } }) => item?.props?.prop === prop);\r\n // const node = null;\r\n\r\n // if (node) {\r\n // node.props.type = type;\r\n // result.push(node);\r\n // }\r\n // });\r\n return result;\r\n});\r\n\r\n// 表格头部弹层\r\nconst drawerHeaderVisible = ref(false); // 表头设置弹层\r\nconst drawerOperateVisible = ref(true); // 按钮设置弹层\r\nconst setTable = (event: string) => {\r\n if (event === 'header') {\r\n drawerHeaderVisible.value = true;\r\n }\r\n if (event === 'operate') {\r\n drawerOperateVisible.value = true;\r\n }\r\n};\r\n\r\nconst showTable = ref(true);\r\n\r\nwatch(\r\n [columnVNodes, customVNodes],\r\n async () => {\r\n showTable.value = false;\r\n await nextTick();\r\n setTimeout(() => {\r\n showTable.value = true;\r\n }, 10);\r\n GmTbaleRef.value?.doLayout();\r\n },\r\n {\r\n immediate: true,\r\n deep: true,\r\n },\r\n);\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n#table-page {\r\n :deep(.cell) {\r\n white-space: pre-line !important;\r\n }\r\n :deep(.el-tooltip) {\r\n white-space: nowrap !important;\r\n }\r\n :deep(.el-scrollbar__bar.is-horizontal) {\r\n height: 12px;\r\n border-radius: 12px;\r\n }\r\n .operate-wrap {\r\n text-align: center;\r\n }\r\n .el-button {\r\n margin: 0 3px !important;\r\n }\r\n}\r\n</style>\r\n"],"names":["_useSlots"],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { PropType } from 'vue';
2
+ import type { TableBodyOperateButtonProps } from './tableBodyItem/tableBodyOperates/tableBodyOperateButton';
3
+ declare const _default: import("vue").DefineComponent<{
4
+ vnode: {
5
+ type: (ObjectConstructor | ArrayConstructor)[];
6
+ required: true;
7
+ };
8
+ customPropsList: {
9
+ type: PropType<TableBodyOperateButtonProps[]>;
10
+ default: () => never[];
11
+ };
12
+ }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
13
+ [key: string]: any;
14
+ }>[], unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
15
+ vnode: {
16
+ type: (ObjectConstructor | ArrayConstructor)[];
17
+ required: true;
18
+ };
19
+ customPropsList: {
20
+ type: PropType<TableBodyOperateButtonProps[]>;
21
+ default: () => never[];
22
+ };
23
+ }>>, {
24
+ customPropsList: TableBodyOperateButtonProps[];
25
+ }, {}>;
26
+ export default _default;
@@ -0,0 +1,36 @@
1
+ import { defineComponent, computed, h } from 'vue';
2
+ import { getVnodesByGmName } from './tableHelper.mjs';
3
+
4
+ var TableVNodeRenderer = /* @__PURE__ */ defineComponent({
5
+ functional: true,
6
+ props: {
7
+ // 当前原始vnode
8
+ vnode: {
9
+ type: [Object, Array],
10
+ required: true
11
+ },
12
+ customPropsList: {
13
+ type: Array,
14
+ default: () => []
15
+ }
16
+ },
17
+ setup(props) {
18
+ const vnodes = computed(() => getVnodesByGmName(Array.isArray(props.vnode) ? props.vnode : [props.vnode], "TableBodyOperateButton"));
19
+ const res = computed(() => props.customPropsList.filter((props2) => props2.isShow).map((props2) => {
20
+ const findVnode = vnodes.value.find((it) => it.props.prop === props2.prop);
21
+ findVnode.props = {
22
+ ...findVnode.props,
23
+ label: props2.label,
24
+ type: props2.type
25
+ };
26
+ return findVnode;
27
+ }));
28
+ const render = computed(() => {
29
+ return res.value.map((it) => h(it));
30
+ });
31
+ return () => render.value;
32
+ }
33
+ });
34
+
35
+ export { TableVNodeRenderer as default };
36
+ //# sourceMappingURL=TableVNodeRenderer.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableVNodeRenderer.mjs","sources":["../../../../../../../packages/components/src/business/tableBody/TableVNodeRenderer.tsx"],"sourcesContent":["// MyVNodeRenderer.js\r\nimport { computed, defineComponent, h } from 'vue';\r\nimport { getVnodesByGmName } from './tableHelper';\r\nimport type { PropType } from 'vue';\r\nimport type { TableBodyOperateButtonProps } from './tableBodyItem/tableBodyOperates/tableBodyOperateButton';\r\nexport default defineComponent({\r\n functional: true,\r\n props: {\r\n // 当前原始vnode\r\n vnode: {\r\n type: [Object, Array],\r\n required: true,\r\n },\r\n customPropsList: {\r\n type: Array as PropType<TableBodyOperateButtonProps[]>,\r\n default: () => [],\r\n },\r\n },\r\n setup(props) {\r\n const vnodes = computed(() => getVnodesByGmName(Array.isArray(props.vnode) ? props.vnode : [props.vnode], 'TableBodyOperateButton'));\r\n const res = computed(() =>\r\n props.customPropsList\r\n .filter(props => props.isShow)\r\n .map(props => {\r\n const findVnode = vnodes.value.find(it => it.props.prop === props.prop);\r\n findVnode.props = {\r\n ...findVnode.props,\r\n label: props.label,\r\n type: props.type,\r\n };\r\n // findVnode.props.label = props.label;\r\n // findVnode.props.type = props.type;\r\n return findVnode;\r\n }),\r\n );\r\n const render = computed(() => {\r\n return res.value.map(it => h(it));\r\n });\r\n return () => render.value;\r\n },\r\n});\r\n"],"names":["functional","props","vnode","type","Object","Array","required","customPropsList","default","setup","vnodes","computed","getVnodesByGmName","isArray","res","filter","isShow","map","findVnode","value","find","it","prop","label","render","h"],"mappings":";;;AAKA,yCAA+B,eAAA,CAAA;AAAA,EAC7BA,UAAY,EAAA,IAAA;AAAA,EACZC,KAAO,EAAA;AAAA;AAAA,IAELC,KAAO,EAAA;AAAA,MACLC,IAAAA,EAAM,CAACC,MAAAA,EAAQC,KAAK,CAAA;AAAA,MACpBC,QAAU,EAAA,IAAA;AAAA,KACZ;AAAA,IACAC,eAAiB,EAAA;AAAA,MACfJ,IAAME,EAAAA,KAAAA;AAAAA,MACNG,OAAAA,EAASA,MAAM,EAAA;AAAA,KACjB;AAAA,GACF;AAAA,EACAC,MAAMR,KAAO,EAAA;AACX,IAAA,MAAMS,SAASC,QAAS,CAAA,MAAMC,iBAAkBP,CAAAA,KAAAA,CAAMQ,QAAQZ,KAAMC,CAAAA,KAAK,CAAID,GAAAA,KAAAA,CAAMC,QAAQ,CAACD,KAAAA,CAAMC,KAAK,CAAA,EAAG,wBAAwB,CAAC,CAAA,CAAA;AACnI,IAAA,MAAMY,GAAMH,GAAAA,QAAAA,CAAS,MACnBV,KAAAA,CAAMM,eACHQ,CAAAA,MAAAA,CAAOd,CAAAA,MAAAA,KAASA,MAAMe,CAAAA,MAAM,CAC5BC,CAAAA,GAAAA,CAAIhB,CAAAA,MAAS,KAAA;AACZ,MAAMiB,MAAAA,SAAAA,GAAYR,OAAOS,KAAMC,CAAAA,IAAAA,CAAKC,QAAMA,EAAGpB,CAAAA,KAAAA,CAAMqB,IAASrB,KAAAA,MAAAA,CAAMqB,IAAI,CAAA,CAAA;AACtEJ,MAAAA,SAAAA,CAAUjB,KAAQ,GAAA;AAAA,QAChB,GAAGiB,SAAUjB,CAAAA,KAAAA;AAAAA,QACbsB,OAAOtB,MAAMsB,CAAAA,KAAAA;AAAAA,QACbpB,MAAMF,MAAME,CAAAA,IAAAA;AAAAA,OACd,CAAA;AAGA,MAAOe,OAAAA,SAAAA,CAAAA;AAAAA,KACR,CACL,CAAA,CAAA;AACA,IAAMM,MAAAA,MAAAA,GAASb,SAAS,MAAM;AAC5B,MAAA,OAAOG,IAAIK,KAAMF,CAAAA,GAAAA,CAAII,CAAMI,EAAAA,KAAAA,CAAAA,CAAEJ,EAAE,CAAC,CAAA,CAAA;AAAA,KACjC,CAAA,CAAA;AACD,IAAA,OAAO,MAAMG,MAAOL,CAAAA,KAAAA,CAAAA;AAAAA,GACtB;AACF,CAAC,CAAA;;;;"}
@@ -36,10 +36,6 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
36
36
  type: BooleanConstructor;
37
37
  default: boolean;
38
38
  };
39
- operateList: {
40
- type: import("vue").PropType<import("../customOperations/customOperations.js").OperateListItem[]>;
41
- default: () => never[];
42
- };
43
39
  operateWidth: {
44
40
  type: NumberConstructor;
45
41
  default: number;
@@ -80,6 +76,10 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
80
76
  type: BooleanConstructor;
81
77
  default: boolean;
82
78
  };
79
+ tableBodySlot: {
80
+ type: BooleanConstructor;
81
+ default: boolean;
82
+ };
83
83
  defaultPageSize: NumberConstructor;
84
84
  pageCount: NumberConstructor;
85
85
  pagerCount: import("element-plus/es/utils/index.js").EpPropFinalized<NumberConstructor, unknown, unknown, 7, boolean>;
@@ -222,10 +222,6 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
222
222
  type: BooleanConstructor;
223
223
  default: boolean;
224
224
  };
225
- operateList: {
226
- type: import("vue").PropType<import("../customOperations/customOperations.js").OperateListItem[]>;
227
- default: () => never[];
228
- };
229
225
  operateWidth: {
230
226
  type: NumberConstructor;
231
227
  default: number;
@@ -266,6 +262,10 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
266
262
  type: BooleanConstructor;
267
263
  default: boolean;
268
264
  };
265
+ tableBodySlot: {
266
+ type: BooleanConstructor;
267
+ default: boolean;
268
+ };
269
269
  defaultPageSize: NumberConstructor;
270
270
  pageCount: NumberConstructor;
271
271
  pagerCount: import("element-plus/es/utils/index.js").EpPropFinalized<NumberConstructor, unknown, unknown, 7, boolean>;
@@ -370,7 +370,6 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
370
370
  data: unknown[];
371
371
  small: boolean;
372
372
  headerList: import("../tableHeader/tableHeader.js").HeaderListItem[];
373
- operateList: import("../customOperations/customOperations.js").OperateListItem[];
374
373
  popperClass: string;
375
374
  teleported: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
376
375
  disabled: boolean;
@@ -414,6 +413,7 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
414
413
  operateWidth: number;
415
414
  operateFixed: boolean;
416
415
  pagination: boolean;
416
+ tableBodySlot: boolean;
417
417
  }, true, {}, {}, {
418
418
  P: {};
419
419
  B: {};
@@ -457,10 +457,6 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
457
457
  type: BooleanConstructor;
458
458
  default: boolean;
459
459
  };
460
- operateList: {
461
- type: import("vue").PropType<import("../customOperations/customOperations.js").OperateListItem[]>;
462
- default: () => never[];
463
- };
464
460
  operateWidth: {
465
461
  type: NumberConstructor;
466
462
  default: number;
@@ -501,6 +497,10 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
501
497
  type: BooleanConstructor;
502
498
  default: boolean;
503
499
  };
500
+ tableBodySlot: {
501
+ type: BooleanConstructor;
502
+ default: boolean;
503
+ };
504
504
  defaultPageSize: NumberConstructor;
505
505
  pageCount: NumberConstructor;
506
506
  pagerCount: import("element-plus/es/utils/index.js").EpPropFinalized<NumberConstructor, unknown, unknown, 7, boolean>;
@@ -605,7 +605,6 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
605
605
  data: unknown[];
606
606
  small: boolean;
607
607
  headerList: import("../tableHeader/tableHeader.js").HeaderListItem[];
608
- operateList: import("../customOperations/customOperations.js").OperateListItem[];
609
608
  popperClass: string;
610
609
  teleported: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
611
610
  disabled: boolean;
@@ -649,6 +648,7 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
649
648
  operateWidth: number;
650
649
  operateFixed: boolean;
651
650
  pagination: boolean;
651
+ tableBodySlot: boolean;
652
652
  }>;
653
653
  __isFragment?: undefined;
654
654
  __isTeleport?: undefined;
@@ -689,10 +689,6 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
689
689
  type: BooleanConstructor;
690
690
  default: boolean;
691
691
  };
692
- operateList: {
693
- type: import("vue").PropType<import("../customOperations/customOperations.js").OperateListItem[]>;
694
- default: () => never[];
695
- };
696
692
  operateWidth: {
697
693
  type: NumberConstructor;
698
694
  default: number;
@@ -733,6 +729,10 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
733
729
  type: BooleanConstructor;
734
730
  default: boolean;
735
731
  };
732
+ tableBodySlot: {
733
+ type: BooleanConstructor;
734
+ default: boolean;
735
+ };
736
736
  defaultPageSize: NumberConstructor;
737
737
  pageCount: NumberConstructor;
738
738
  pagerCount: import("element-plus/es/utils/index.js").EpPropFinalized<NumberConstructor, unknown, unknown, 7, boolean>;
@@ -843,7 +843,6 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
843
843
  data: unknown[];
844
844
  small: boolean;
845
845
  headerList: import("../tableHeader/tableHeader.js").HeaderListItem[];
846
- operateList: import("../customOperations/customOperations.js").OperateListItem[];
847
846
  popperClass: string;
848
847
  teleported: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
849
848
  disabled: boolean;
@@ -887,17 +886,15 @@ export declare const GmTableBody: import("../../../../utils").SFCWithInstall<{
887
886
  operateWidth: number;
888
887
  operateFixed: boolean;
889
888
  pagination: boolean;
889
+ tableBodySlot: boolean;
890
890
  }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
891
- $slots: {
892
- header?(_: {
893
- prop: string;
894
- }): any;
895
- default?(_: {
896
- prop: string;
897
- row: any;
898
- }): any;
891
+ $slots: Readonly<{
892
+ default(data?: any): import("../tableHeader/tableHeader.js").HeaderListItem[];
893
+ }> & {
894
+ default(data?: any): import("../tableHeader/tableHeader.js").HeaderListItem[];
899
895
  };
900
896
  })> & Record<string, any>;
901
897
  export type TableBodyInstance = InstanceType<typeof TableBody>;
902
898
  export * from './tableBody';
899
+ export * from './tableBodyItem';
903
900
  export default GmTableBody;
@@ -1,7 +1,10 @@
1
1
  import '../../../../utils/index.mjs';
2
2
  import TableBody from './TableBody.vue.mjs';
3
3
  export { tableBodyEmits, tableBodyProps } from './tableBody.mjs';
4
+ import './tableBodyItem/index.mjs';
4
5
  import { withInstall } from '../../../../utils/src/vue/install.mjs';
6
+ export { tableBodyOperateButtonProps } from './tableBodyItem/tableBodyOperates/tableBodyOperateButton.mjs';
7
+ export { GmTableBodyOperateButton } from './tableBodyItem/tableBodyOperates/index.mjs';
5
8
 
6
9
  const GmTableBody = withInstall(TableBody);
7
10
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../../../packages/components/src/business/tableBody/index.ts"],"sourcesContent":["import { withInstall } from '@giime/utils';\r\nimport TableBody from './TableBody.vue';\r\n\r\nexport const GmTableBody = withInstall(TableBody);\r\nexport type TableBodyInstance = InstanceType<typeof TableBody>;\r\nexport * from './tableBody';\r\nexport default GmTableBody;\r\n"],"names":[],"mappings":";;;;;AAGa,MAAA,WAAA,GAAc,YAAY,SAAS;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../../packages/components/src/business/tableBody/index.ts"],"sourcesContent":["import { withInstall } from '@giime/utils';\r\nimport TableBody from './TableBody.vue';\r\n\r\nexport const GmTableBody = withInstall(TableBody);\r\nexport type TableBodyInstance = InstanceType<typeof TableBody>;\r\nexport * from './tableBody';\r\nexport * from './tableBodyItem';\r\nexport default GmTableBody;\r\n"],"names":[],"mappings":";;;;;;;;AAGa,MAAA,WAAA,GAAc,YAAY,SAAS;;;;"}