@vtable-guild/vtable-guild 2.7.1 → 2.8.1

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 (162) hide show
  1. package/css/presets/antdv.css +36 -0
  2. package/css/presets/element-plus.css +38 -0
  3. package/css/style.css +436 -0
  4. package/css/tailwind3-utilities.css +337 -0
  5. package/css/tailwind3.css +99 -0
  6. package/css/tailwind4.css +99 -0
  7. package/css/transitions.css +25 -0
  8. package/dist/core/src/components/VirtualList/VirtualList.d.ts +6 -3
  9. package/dist/core/src/components/VirtualList/VirtualList.d.ts.map +1 -1
  10. package/dist/core/src/components/VirtualList/VirtualList.mjs +187 -180
  11. package/dist/core/src/components/VirtualList/VirtualScrollBar.d.ts +1 -1
  12. package/dist/core/src/components/VirtualList/hooks/useChildren.d.ts +2 -2
  13. package/dist/core/src/components/VirtualList/hooks/useChildren.d.ts.map +1 -1
  14. package/dist/core/src/components/VirtualList/hooks/useChildren.mjs +12 -12
  15. package/dist/core/src/components/VirtualList/hooks/useGetSize.d.ts +1 -1
  16. package/dist/core/src/components/VirtualList/hooks/useGetSize.d.ts.map +1 -1
  17. package/dist/core/src/components/VirtualList/hooks/useGetSize.mjs +1 -1
  18. package/dist/core/src/components/VirtualList/hooks/useHeights.d.ts +2 -2
  19. package/dist/core/src/components/VirtualList/hooks/useHeights.d.ts.map +1 -1
  20. package/dist/core/src/components/VirtualList/hooks/useHeights.mjs +36 -36
  21. package/dist/core/src/components/VirtualList/hooks/useMobileTouchMove.d.ts.map +1 -1
  22. package/dist/core/src/components/VirtualList/hooks/useMobileTouchMove.mjs +11 -11
  23. package/dist/core/src/components/VirtualList/hooks/useMobileTouchMove.test.d.ts +2 -0
  24. package/dist/core/src/components/VirtualList/hooks/useMobileTouchMove.test.d.ts.map +1 -0
  25. package/dist/core/src/components/VirtualList/hooks/useScrollTo.d.ts +1 -1
  26. package/dist/core/src/components/VirtualList/hooks/useScrollTo.d.ts.map +1 -1
  27. package/dist/core/src/components/VirtualList/hooks/useScrollTo.mjs +30 -30
  28. package/dist/core/src/index.d.ts +1 -1
  29. package/dist/core/src/index.d.ts.map +1 -1
  30. package/dist/core/src/utils/types.d.ts +18 -0
  31. package/dist/core/src/utils/types.d.ts.map +1 -1
  32. package/dist/css/presets/antdv.css +36 -0
  33. package/dist/css/presets/element-plus.css +38 -0
  34. package/dist/css/style.css +436 -0
  35. package/dist/css/tailwind3-utilities.css +337 -0
  36. package/dist/css/tailwind3.css +99 -0
  37. package/dist/css/tailwind4.css +99 -0
  38. package/dist/css/transitions.css +25 -0
  39. package/dist/index.d.ts +0 -26
  40. package/dist/index.full.mjs +5116 -3769
  41. package/dist/index.mjs +85 -75
  42. package/dist/table/src/components/ColGroup.d.ts.map +1 -1
  43. package/dist/table/src/components/ColGroup.mjs +10 -10
  44. package/dist/table/src/components/ColumnWidthRow.d.ts +4 -0
  45. package/dist/table/src/components/ColumnWidthRow.d.ts.map +1 -0
  46. package/dist/table/src/components/ColumnWidthRow.mjs +23 -0
  47. package/dist/table/src/components/PaginationSizeSelect.d.ts +57 -0
  48. package/dist/table/src/components/PaginationSizeSelect.d.ts.map +1 -0
  49. package/dist/table/src/components/PaginationSizeSelect.mjs +138 -0
  50. package/dist/table/src/components/SelectionDropdown.d.ts +9 -0
  51. package/dist/table/src/components/SelectionDropdown.d.ts.map +1 -1
  52. package/dist/table/src/components/SelectionDropdown.mjs +32 -26
  53. package/dist/table/src/components/Table.d.ts +13 -2
  54. package/dist/table/src/components/Table.d.ts.map +1 -1
  55. package/dist/table/src/components/Table.mjs +496 -403
  56. package/dist/table/src/components/TableCell.d.ts.map +1 -1
  57. package/dist/table/src/components/TableCell.mjs +80 -74
  58. package/dist/table/src/components/TableHeaderCell.d.ts.map +1 -1
  59. package/dist/table/src/components/TableHeaderCell.mjs +85 -83
  60. package/dist/table/src/components/TablePagination.d.ts +74 -0
  61. package/dist/table/src/components/TablePagination.d.ts.map +1 -0
  62. package/dist/table/src/components/TablePagination.mjs +350 -0
  63. package/dist/table/src/components/TablePagination.test.d.ts +2 -0
  64. package/dist/table/src/components/TablePagination.test.d.ts.map +1 -0
  65. package/dist/table/src/components/TablePaginationCompatClass.test.d.ts +2 -0
  66. package/dist/table/src/components/TablePaginationCompatClass.test.d.ts.map +1 -0
  67. package/dist/table/src/components/TablePaginationLayout.test.d.ts +2 -0
  68. package/dist/table/src/components/TablePaginationLayout.test.d.ts.map +1 -0
  69. package/dist/table/src/components/VTable.vue.d.ts.map +1 -1
  70. package/dist/table/src/components/VTable.vue.mjs +34 -26
  71. package/dist/table/src/components/VTableMinWidth.test.d.ts +2 -0
  72. package/dist/table/src/components/VTableMinWidth.test.d.ts.map +1 -0
  73. package/dist/table/src/components/VTableSummary.d.ts +15 -75
  74. package/dist/table/src/components/VTableSummary.d.ts.map +1 -1
  75. package/dist/table/src/components/VTableSummary.mjs +7 -7
  76. package/dist/table/src/components/VTableSummaryCell.d.ts.map +1 -1
  77. package/dist/table/src/components/VTableSummaryCell.mjs +26 -24
  78. package/dist/table/src/components/VirtualTableBody.d.ts.map +1 -1
  79. package/dist/table/src/components/VirtualTableBody.mjs +107 -95
  80. package/dist/table/src/composables/useColumnLayout.d.ts +28 -0
  81. package/dist/table/src/composables/useColumnLayout.d.ts.map +1 -0
  82. package/dist/table/src/composables/useColumnLayout.mjs +259 -0
  83. package/dist/table/src/composables/useColumnLayout.test.d.ts +2 -0
  84. package/dist/table/src/composables/useColumnLayout.test.d.ts.map +1 -0
  85. package/dist/table/src/composables/useColumnMetrics.d.ts +5 -3
  86. package/dist/table/src/composables/useColumnMetrics.d.ts.map +1 -1
  87. package/dist/table/src/composables/useColumnMetrics.mjs +64 -55
  88. package/dist/table/src/composables/useExpand.d.ts +2 -0
  89. package/dist/table/src/composables/useExpand.d.ts.map +1 -1
  90. package/dist/table/src/composables/useExpand.mjs +42 -20
  91. package/dist/table/src/composables/usePagination.d.ts +15 -0
  92. package/dist/table/src/composables/usePagination.d.ts.map +1 -0
  93. package/dist/table/src/composables/usePagination.mjs +65 -0
  94. package/dist/table/src/composables/usePagination.test.d.ts +2 -0
  95. package/dist/table/src/composables/usePagination.test.d.ts.map +1 -0
  96. package/dist/table/src/composables/useResize.d.ts +1 -0
  97. package/dist/table/src/composables/useResize.d.ts.map +1 -1
  98. package/dist/table/src/composables/useResize.mjs +67 -39
  99. package/dist/table/src/composables/useScroll.d.ts +3 -0
  100. package/dist/table/src/composables/useScroll.d.ts.map +1 -1
  101. package/dist/table/src/composables/useScroll.mjs +43 -41
  102. package/dist/table/src/composables/useSelection.d.ts +2 -1
  103. package/dist/table/src/composables/useSelection.d.ts.map +1 -1
  104. package/dist/table/src/composables/useSelection.mjs +204 -155
  105. package/dist/table/src/composables/useTreeData.d.ts +4 -0
  106. package/dist/table/src/composables/useTreeData.d.ts.map +1 -1
  107. package/dist/table/src/composables/useTreeData.mjs +48 -43
  108. package/dist/table/src/context.d.ts +6 -1
  109. package/dist/table/src/context.d.ts.map +1 -1
  110. package/dist/table/src/index.d.ts +10 -87
  111. package/dist/table/src/index.d.ts.map +1 -1
  112. package/dist/table/src/index.mjs +12 -12
  113. package/dist/table/src/types/column.d.ts +8 -2
  114. package/dist/table/src/types/column.d.ts.map +1 -1
  115. package/dist/table/src/types/index.d.ts +1 -0
  116. package/dist/table/src/types/index.d.ts.map +1 -1
  117. package/dist/table/src/types/pagination.d.ts +66 -0
  118. package/dist/table/src/types/pagination.d.ts.map +1 -0
  119. package/dist/table/src/types/pagination.typecheck.d.ts +25 -0
  120. package/dist/table/src/types/pagination.typecheck.d.ts.map +1 -0
  121. package/dist/table/src/types/table.d.ts +8 -1
  122. package/dist/table/src/types/table.d.ts.map +1 -1
  123. package/dist/table/src/utils/columnWidth.d.ts +55 -7
  124. package/dist/table/src/utils/columnWidth.d.ts.map +1 -1
  125. package/dist/table/src/utils/columnWidth.mjs +91 -21
  126. package/dist/table/src/utils/paginationLayout.d.ts +13 -0
  127. package/dist/table/src/utils/paginationLayout.d.ts.map +1 -0
  128. package/dist/table/src/utils/paginationLayout.mjs +55 -0
  129. package/dist/table/src/utils/paginationLayout.test.d.ts +2 -0
  130. package/dist/table/src/utils/paginationLayout.test.d.ts.map +1 -0
  131. package/dist/table/src/utils/popupPosition.d.ts +4 -1
  132. package/dist/table/src/utils/popupPosition.d.ts.map +1 -1
  133. package/dist/table/src/utils/popupPosition.mjs +34 -15
  134. package/dist/theme/src/augment.d.ts +2 -0
  135. package/dist/theme/src/augment.d.ts.map +1 -1
  136. package/dist/theme/src/compat/antdv-pagination.d.ts +4 -0
  137. package/dist/theme/src/compat/antdv-pagination.d.ts.map +1 -0
  138. package/dist/theme/src/compat/antdv-pagination.mjs +29 -0
  139. package/dist/theme/src/index.d.ts +5 -0
  140. package/dist/theme/src/index.d.ts.map +1 -1
  141. package/dist/theme/src/pagination.d.ts +153 -0
  142. package/dist/theme/src/pagination.d.ts.map +1 -0
  143. package/dist/theme/src/pagination.mjs +144 -0
  144. package/dist/theme/src/presets/antdv/table-locale.d.ts +2 -2
  145. package/dist/theme/src/presets/antdv/table-locale.mjs +2 -2
  146. package/dist/theme/src/presets/antdv/table.d.ts +3 -0
  147. package/dist/theme/src/presets/antdv/table.d.ts.map +1 -1
  148. package/dist/theme/src/presets/antdv/table.mjs +3 -0
  149. package/dist/theme/src/presets/element-plus/table-locale.d.ts +2 -2
  150. package/dist/theme/src/presets/element-plus/table-locale.mjs +2 -2
  151. package/dist/theme/src/presets/element-plus/table.d.ts +3 -0
  152. package/dist/theme/src/presets/element-plus/table.d.ts.map +1 -1
  153. package/dist/theme/src/presets/element-plus/table.mjs +3 -0
  154. package/dist/theme/src/presets/index.d.ts.map +1 -1
  155. package/dist/theme/src/presets/index.mjs +60 -57
  156. package/dist/theme/src/presets/types.d.ts +1 -0
  157. package/dist/theme/src/presets/types.d.ts.map +1 -1
  158. package/dist/vtable-guild/src/augment.d.ts +15 -0
  159. package/dist/vtable-guild/src/augment.d.ts.map +1 -0
  160. package/dist/vtable-guild/src/index.d.ts +1 -0
  161. package/dist/vtable-guild/src/index.d.ts.map +1 -1
  162. package/package.json +4 -3
@@ -1,6 +1,6 @@
1
- import { defineComponent as r, inject as o, watch as i } from "vue";
2
- import { TABLE_CONTEXT_KEY as l } from "../context.mjs";
3
- import n from "./VTableSummaryRow.mjs";
1
+ import { defineComponent as r, inject as a, watch as n } from "vue";
2
+ import { TABLE_CONTEXT_KEY as i } from "../context.mjs";
3
+ import l from "./VTableSummaryRow.mjs";
4
4
  import u from "./VTableSummaryCell.mjs";
5
5
  const f = /* @__PURE__ */ r({
6
6
  name: "VTableSummary",
@@ -13,15 +13,15 @@ const f = /* @__PURE__ */ r({
13
13
  setup(e, {
14
14
  slots: t
15
15
  }) {
16
- const m = o(l, {});
17
- return i(() => e.fixed, (a) => {
18
- m.registerSummaryFixed?.(a ?? !1);
16
+ const m = a(i, {});
17
+ return n(() => e.fixed, (o) => {
18
+ m.registerSummaryFixed?.(o ?? !1);
19
19
  }, {
20
20
  immediate: !0
21
21
  }), () => t.default?.();
22
22
  }
23
23
  }), b = Object.assign(f, {
24
- Row: n,
24
+ Row: l,
25
25
  Cell: u
26
26
  });
27
27
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"VTableSummaryCell.d.ts","sourceRoot":"","sources":["../../../../../table/src/components/VTableSummaryCell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,QAAQ,EAAE,MAAM,KAAK,CAAA;AAGtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;;;;;;;;;;;;;;;cAWZ,QAAQ,CAAC,SAAS,CAAC;;;;;;;;;;;;;;;;;cAAnB,QAAQ,CAAC,SAAS,CAAC;;;;;;;;AANhD,wBAoDE"}
1
+ {"version":3,"file":"VTableSummaryCell.d.ts","sourceRoot":"","sources":["../../../../../table/src/components/VTableSummaryCell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,QAAQ,EAAE,MAAM,KAAK,CAAA;AAGtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;;;;;;;;;;;;;;;cAWZ,QAAQ,CAAC,SAAS,CAAC;;;;;;;;;;;;;;;;;cAAnB,QAAQ,CAAC,SAAS,CAAC;;;;;;;;AANhD,wBAmEE"}
@@ -1,11 +1,11 @@
1
- import { defineComponent as c, inject as f, computed as u, createVNode as S } from "vue";
1
+ import { defineComponent as s, inject as f, computed as o, createVNode as S } from "vue";
2
2
  import "../../../core/src/utils/tv.mjs";
3
3
  import { TABLE_CONTEXT_KEY as y } from "../context.mjs";
4
- import { getColumnKey as p } from "../composables/useColumns.mjs";
4
+ import { getColumnKey as x } from "../composables/useColumns.mjs";
5
5
  import { useFixedColumnStyle as C } from "../composables/useFixedColumnStyle.mjs";
6
- import { TABLE_ALIGN_CLASSES as x } from "../../../theme/src/presets/antdv/table.mjs";
6
+ import { TABLE_ALIGN_CLASSES as v } from "../../../theme/src/presets/antdv/table.mjs";
7
7
  import { cn as b } from "tailwind-variants";
8
- const _ = /* @__PURE__ */ c({
8
+ const E = /* @__PURE__ */ s({
9
9
  name: "VTableSummaryCell",
10
10
  props: {
11
11
  index: {
@@ -25,44 +25,46 @@ const _ = /* @__PURE__ */ c({
25
25
  default: void 0
26
26
  }
27
27
  },
28
- setup(n, {
28
+ setup(e, {
29
29
  slots: i
30
30
  }) {
31
- const l = f(y, {}), r = u(() => {
31
+ const l = f(y, {}), d = o(() => {
32
32
  const t = l.displayColumns?.value;
33
33
  if (!t) return null;
34
- const e = t[n.index];
35
- if (!e?.fixed) return null;
36
- const o = p(e) ?? n.index;
37
- return l.fixedOffsets?.value?.get(o) ?? null;
34
+ const n = t[e.index];
35
+ if (!n?.fixed) return null;
36
+ const u = x(n) ?? e.index;
37
+ return l.fixedOffsets?.value?.get(u) ?? null;
38
38
  }), {
39
39
  fixedStyle: a,
40
- fixedClass: s
40
+ fixedClass: r
41
41
  } = C({
42
- fixedInfo: () => r.value
43
- }), d = u(() => {
44
- const t = l.subThemeSlots, e = n.align ? l.vtgClass?.(x[n.align]) ?? "" : "";
45
- return b(t?.summaryCell() ?? "", e, s.value);
46
- }), m = u(() => {
42
+ fixedInfo: () => d.value
43
+ }), c = o(() => {
44
+ const t = l.subThemeSlots, n = e.align ? l.vtgClass?.(v[e.align]) ?? "" : "";
45
+ return b(t?.summaryCell() ?? "", n, r.value, l.columnLayout?.enabled.value && t?.widthLayoutCell());
46
+ }), m = o(() => {
47
47
  const t = l.displayColumns?.value;
48
48
  if (!t) return a.value;
49
- const e = t[n.index], o = {};
50
- return e?.width && (o.width = typeof e.width == "number" ? `${e.width}px` : String(e.width)), {
51
- ...o,
52
- ...a.value ?? {}
49
+ const n = t[e.index], u = {};
50
+ return n?.width && (u.width = typeof n.width == "number" ? `${n.width}px` : String(n.width)), {
51
+ ...u,
52
+ ...a.value ?? {},
53
+ ...l.columnLayout?.columnStyle(e.index, e.colSpan)
53
54
  };
54
55
  });
55
56
  return () => {
56
- const t = n.colSpan !== 1 ? n.colSpan : void 0, e = n.rowSpan !== 1 ? n.rowSpan : void 0;
57
+ const t = e.colSpan !== 1 ? e.colSpan : void 0, n = e.rowSpan !== 1 ? e.rowSpan : void 0;
57
58
  return S("td", {
58
- class: d.value,
59
+ "data-vtg-col": e.index,
60
+ class: c.value,
59
61
  style: m.value,
60
62
  colspan: t,
61
- rowspan: e
63
+ rowspan: n
62
64
  }, [i.default?.()]);
63
65
  };
64
66
  }
65
67
  });
66
68
  export {
67
- _ as default
69
+ E as default
68
70
  };
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualTableBody.d.ts","sourceRoot":"","sources":["../../../../../table/src/components/VirtualTableBody.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,QAAQ,EAAE,MAAM,KAAK,CAAA;AAElD,OAAO,KAAK,EAAW,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAOpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAGpE,OAAO,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAK/C,KAAK,sBAAsB,GAAG,iBAAiB,GAAG;IAChD,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;;;cAQgC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;;;;cACtC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAO3C,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;;cAEhC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC;;;;;;;;;;;IAK3F,wCAAwC;;;;;IAExC;;;OAGG;;;;;IAEH,qCAAqC;;cACJ,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC;;;IAC/D,gEAAgE;;cAE5C,QAAQ,CAAC,CAAC,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAC;;;;cAIvC,QAAQ,CAAC,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC;;;;;cA9BxC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;;;;cACtC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAO3C,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;;cAEhC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC;;;;;;;;;;;IAK3F,wCAAwC;;;;;IAExC;;;OAGG;;;;;IAEH,qCAAqC;;cACJ,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC;;;IAC/D,gEAAgE;;cAE5C,QAAQ,CAAC,CAAC,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAC;;;;cAIvC,QAAQ,CAAC,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC;;;;;4BAJjC,sBAAsB,KAAK,IAAI;+BAhBT,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,GAAG;;;;;;AAb7F,wBAmZE"}
1
+ {"version":3,"file":"VirtualTableBody.d.ts","sourceRoot":"","sources":["../../../../../table/src/components/VirtualTableBody.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,QAAQ,EAAE,MAAM,KAAK,CAAA;AAElD,OAAO,KAAK,EAAW,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAQpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAGpE,OAAO,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAK/C,KAAK,sBAAsB,GAAG,iBAAiB,GAAG;IAChD,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;;;cAQgC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;;;;cACtC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAO3C,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;;cAEhC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC;;;;;;;;;;;IAK3F,wCAAwC;;;;;IAExC;;;OAGG;;;;;IAEH,qCAAqC;;cACJ,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC;;;IAC/D,gEAAgE;;cAE5C,QAAQ,CAAC,CAAC,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAC;;;;cAIvC,QAAQ,CAAC,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC;;;;;cA9BxC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;;;;cACtC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAO3C,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;;cAEhC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC;;;;;;;;;;;IAK3F,wCAAwC;;;;;IAExC;;;OAGG;;;;;IAEH,qCAAqC;;cACJ,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC;;;IAC/D,gEAAgE;;cAE5C,QAAQ,CAAC,CAAC,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAC;;;;cAIvC,QAAQ,CAAC,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC;;;;;4BAJjC,sBAAsB,KAAK,IAAI;+BAhBT,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,GAAG;;;;;;AAb7F,wBAmaE"}
@@ -1,22 +1,23 @@
1
- import { defineComponent as $, inject as G, ref as C, computed as m, onBeforeUnmount as U, watch as Y, createVNode as r, isVNode as J } from "vue";
1
+ import { defineComponent as U, inject as Y, ref as C, computed as w, onBeforeUnmount as J, watch as Q, createVNode as r, isVNode as Z } from "vue";
2
2
  import "../../../core/src/utils/tv.mjs";
3
- import Q from "./TableRow.mjs";
4
- import Z from "./TableCell.mjs";
5
- import ee from "./TableEmpty.mjs";
6
- import te from "./ExpandedRowTr.mjs";
7
- import le from "./ColGroup.mjs";
8
- import { TABLE_CONTEXT_KEY as ne } from "../context.mjs";
9
- import { resolveFixedColumnRanges as oe, useColumnWindow as ae } from "../composables/useColumnWindow.mjs";
10
- import { resolveRowDragClass as re } from "../composables/useRowDragSort.mjs";
11
- import { getRowCompatClass as ie } from "../utils/compat.mjs";
12
- import { resolveRowKey as T } from "../utils/rowKey.mjs";
13
- import { sumDeclaredColumnWidths as se, parseStylePxWidth as de } from "../utils/columnWidth.mjs";
14
- import ue from "../../../core/src/components/VirtualList/VirtualList.mjs";
15
- import { cn as ce } from "tailwind-variants";
16
- function fe(e) {
17
- return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !J(e);
3
+ import ee from "./TableRow.mjs";
4
+ import te from "./TableCell.mjs";
5
+ import le from "./TableEmpty.mjs";
6
+ import oe from "./ExpandedRowTr.mjs";
7
+ import ne from "./ColGroup.mjs";
8
+ import ae from "./ColumnWidthRow.mjs";
9
+ import { TABLE_CONTEXT_KEY as re } from "../context.mjs";
10
+ import { resolveFixedColumnRanges as ie, useColumnWindow as se } from "../composables/useColumnWindow.mjs";
11
+ import { resolveRowDragClass as de } from "../composables/useRowDragSort.mjs";
12
+ import { getRowCompatClass as ue } from "../utils/compat.mjs";
13
+ import { resolveRowKey as N } from "../utils/rowKey.mjs";
14
+ import { sumDeclaredColumnWidths as ce, parseStylePxWidth as fe } from "../utils/columnWidth.mjs";
15
+ import me from "../../../core/src/components/VirtualList/VirtualList.mjs";
16
+ import { cn as W } from "tailwind-variants";
17
+ function we(e) {
18
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !Z(e);
18
19
  }
19
- const Te = /* @__PURE__ */ $({
20
+ const qe = /* @__PURE__ */ U({
20
21
  name: "VirtualTableBody",
21
22
  props: {
22
23
  dataSource: {
@@ -95,101 +96,110 @@ const Te = /* @__PURE__ */ $({
95
96
  default: "hover"
96
97
  }
97
98
  },
98
- setup(e) {
99
- const a = G(ne, {}), w = C(), x = C(0), c = C(0);
99
+ setup(e, {
100
+ expose: F
101
+ }) {
102
+ const n = Y(re, {}), c = C();
103
+ F({
104
+ scrollToTop: () => c.value?.scrollTo({
105
+ top: 0
106
+ })
107
+ });
108
+ const x = C(0), f = C(0);
100
109
  function b(t) {
101
110
  x.value = t.x, e.onVirtualScroll?.({
102
111
  ...t,
103
- maxX: w.value?.getHorizontalRange() ?? 0
112
+ maxX: c.value?.getHorizontalRange() ?? 0
104
113
  });
105
114
  }
106
115
  function V(t, l) {
107
- return T(t, l, e.rowKey);
116
+ return N(t, l, e.rowKey);
108
117
  }
109
- function k(t) {
110
- const l = e.dataSource.indexOf(t);
111
- return T(t, l, e.rowKey);
118
+ function k(t, l) {
119
+ return N(t, l ?? e.dataSource.indexOf(t), e.rowKey);
112
120
  }
113
- const q = m(() => {
114
- const t = e.virtualColumn ? e.columnMetrics?.total : void 0;
121
+ const q = w(() => {
122
+ const t = e.columnMetrics?.total;
115
123
  if (t && t > 0) return t;
116
- const l = se(e.columns, a.columnWidths), u = de(e.tableStyle?.width);
124
+ const l = ce(e.columns, n.columnWidths), u = fe(e.tableStyle?.width);
117
125
  return Math.max(l, u);
118
- }), v = m(() => oe(e.columns)), S = m(() => {
119
- if (!e.virtualColumn || c.value <= 0) return null;
126
+ }), y = w(() => ie(e.columns)), O = w(() => {
127
+ if (!e.virtualColumn || f.value <= 0) return null;
120
128
  const t = e.columnMetrics;
121
129
  return !t || t.widths.length !== e.columns.length ? null : t.widths;
122
130
  }), {
123
- active: R,
124
- start: O,
125
- end: H,
126
- leftSpacer: p,
127
- rightSpacer: E
128
- } = ae({
129
- widths: () => S.value,
130
- leftFixedCount: () => v.value.leftFixedCount,
131
- rightFixedStart: () => v.value.rightFixedStart,
131
+ active: H,
132
+ start: _,
133
+ end: I,
134
+ leftSpacer: S,
135
+ rightSpacer: p
136
+ } = se({
137
+ widths: () => O.value,
138
+ leftFixedCount: () => y.value.leftFixedCount,
139
+ rightFixedStart: () => y.value.rightFixedStart,
132
140
  offsetX: () => x.value,
133
- viewportWidth: () => c.value
134
- }), _ = m(() => {
141
+ viewportWidth: () => f.value
142
+ }), K = w(() => {
135
143
  const t = e.columns.length;
136
- if (!R.value)
144
+ if (!H.value)
137
145
  return Array.from({
138
146
  length: t
139
- }, (n, i) => ({
147
+ }, (o, i) => ({
140
148
  index: i
141
149
  }));
142
150
  const {
143
151
  leftFixedCount: l,
144
152
  rightFixedStart: u
145
- } = v.value, o = [];
146
- for (let n = 0; n < l; n += 1) o.push({
147
- index: n
153
+ } = y.value, a = [];
154
+ for (let o = 0; o < l; o += 1) a.push({
155
+ index: o
148
156
  });
149
- p.value > 0 && o.push({
150
- spacer: p.value
157
+ S.value > 0 && a.push({
158
+ spacer: S.value
151
159
  });
152
- for (let n = O.value; n <= H.value; n += 1) o.push({
153
- index: n
160
+ for (let o = _.value; o <= I.value; o += 1) a.push({
161
+ index: o
154
162
  });
155
- E.value > 0 && o.push({
156
- spacer: E.value
163
+ p.value > 0 && a.push({
164
+ spacer: p.value
157
165
  });
158
- for (let n = u; n < t; n += 1) o.push({
159
- index: n
166
+ for (let o = u; o < t; o += 1) a.push({
167
+ index: o
160
168
  });
161
- return o;
169
+ return a;
162
170
  });
163
- function me(t) {
171
+ function ye(t) {
164
172
  }
165
173
  let s = null, d = null;
166
- function B(t) {
174
+ function R(t) {
167
175
  const l = t ?? null;
168
- l !== d && (s && d && s.unobserve(d), d = l, l && (c.value = l.clientWidth, !s && typeof ResizeObserver < "u" && (s = new ResizeObserver(() => {
169
- d && (c.value = d.clientWidth);
176
+ l !== d && (s && d && s.unobserve(d), d = l, l && (f.value = l.clientWidth, !s && typeof ResizeObserver < "u" && (s = new ResizeObserver(() => {
177
+ d && (f.value = d.clientWidth);
170
178
  })), s?.observe(l)));
171
179
  }
172
- return U(() => {
180
+ return J(() => {
173
181
  s?.disconnect(), s = null, d = null;
174
- }), Y(() => w.value, (t) => {
182
+ }), Q(() => c.value, (t) => {
175
183
  if (t) {
176
184
  const l = t.getScrollInfo();
177
- b(l), t.nativeElement, B(t.nativeElement);
185
+ b(l), t.nativeElement, R(t.nativeElement);
178
186
  } else
179
- B(null);
187
+ R(null);
180
188
  }), () => e.dataSource.length === 0 ? r("table", {
181
- class: e.tableClass,
189
+ "data-vtg-table": "",
190
+ class: W(e.tableClass, n.compatClass?.("body")),
182
191
  style: e.tableStyle
183
- }, [r(le, {
192
+ }, [r(ne, {
184
193
  columns: e.columns
185
- }, null), r("tbody", {
194
+ }, null), r(ae, null, null), r("tbody", {
186
195
  class: e.tbodyClass
187
- }, [r(ee, {
196
+ }, [r(le, {
188
197
  colSpan: e.columns.length || 1,
189
198
  emptyClass: e.emptyClass,
190
199
  tdClass: e.tdClass
191
- }, null)])]) : r(ue, {
192
- ref: w,
200
+ }, null)])]) : r(me, {
201
+ ref: c,
202
+ holderClass: n.compatClass?.("body"),
193
203
  data: e.dataSource,
194
204
  height: e.height,
195
205
  itemHeight: e.itemHeight,
@@ -208,13 +218,14 @@ const Te = /* @__PURE__ */ $({
208
218
  index: l
209
219
  }) => {
210
220
  let u;
211
- const o = l, n = V(t, o), i = a.expandable?.(), I = a.isExpanded?.(n) ?? !1, K = i?.expandRowByClick ?? !1, D = a.isRowExpandable?.(t) ?? !1, N = a.getRowClassName?.(t, o), W = a.getRowProps?.(t, o), P = a.rowDrag?.enabled.value ? a.rowDrag.getBindings(t, o, W) : void 0, j = {
212
- ...W,
213
- ...P
214
- }, A = re(a.rowDrag, n, a.subThemeSlots), y = (a.isTreeData?.value ? a.getFlattenRow?.(t) : void 0)?.level ?? 0, M = typeof i?.expandedRowClassName == "function" ? i.expandedRowClassName(t, o, y) : i?.expandedRowClassName, L = K ? () => {
215
- D && a.toggleExpand?.(t, o);
216
- } : void 0, F = _.value, X = R.value ? S.value : null;
221
+ const a = l, o = V(t, a), i = n.expandable?.(), D = n.isExpanded?.(o) ?? !1, P = i?.expandRowByClick ?? !1, j = n.isRowExpandable?.(t) ?? !1, E = n.getRowClassName?.(t, a), B = n.getRowProps?.(t, a), M = n.rowDrag?.enabled.value ? n.rowDrag.getBindings(t, a, B) : void 0, A = {
222
+ ...B,
223
+ ...M
224
+ }, L = de(n.rowDrag, o, n.subThemeSlots), v = (n.isTreeData?.value ? n.getFlattenRow?.(t) : void 0)?.level ?? 0, X = typeof i?.expandedRowClassName == "function" ? i.expandedRowClassName(t, a, v) : i?.expandedRowClassName, z = P ? () => {
225
+ j && n.toggleExpand?.(t, a);
226
+ } : void 0, T = K.value, $ = e.columnMetrics?.widths;
217
227
  return r("table", {
228
+ "data-vtg-table": "",
218
229
  class: e.tableClass,
219
230
  style: {
220
231
  ...e.tableStyle,
@@ -223,43 +234,44 @@ const Te = /* @__PURE__ */ $({
223
234
  }, [r("tbody", {
224
235
  class: e.tbodyClass,
225
236
  "data-vtg-preserve-last-border": l < e.dataSource.length - 1 ? "" : void 0
226
- }, [r(Q, {
227
- key: n,
228
- rowClass: ce(e.rowClass, N, A, ie(a, t, o, y)) ?? "",
229
- rowProps: j,
230
- onClick: L
231
- }, fe(u = F.map((g, z) => {
237
+ }, [r(ee, {
238
+ "data-vtg-virtual-row": "",
239
+ key: o,
240
+ rowClass: W(e.rowClass, E, L, ue(n, t, a, v)) ?? "",
241
+ rowProps: A,
242
+ onClick: z
243
+ }, we(u = T.map((g, G) => {
232
244
  if (g.spacer !== void 0)
233
245
  return r("td", {
234
- key: `__vtg_spacer_${z}`,
246
+ key: `__vtg_spacer_${G}`,
235
247
  style: {
236
248
  width: `${g.spacer}px`,
237
249
  padding: "0"
238
250
  },
239
251
  "aria-hidden": "true"
240
252
  }, null);
241
- const f = g.index, h = e.columns[f];
242
- return r(Z, {
243
- key: h.key ?? String(h.dataIndex ?? f),
253
+ const m = g.index, h = e.columns[m];
254
+ return r(te, {
255
+ key: h.key ?? String(h.dataIndex ?? m),
244
256
  record: t,
245
- rowIndex: o,
257
+ rowIndex: a,
246
258
  column: h,
247
- colIndex: f,
248
- widthOverride: X?.[f],
259
+ colIndex: m,
260
+ widthOverride: $?.[m],
249
261
  tdClass: e.tdClass,
250
262
  bodyCellEllipsisClass: e.bodyCellEllipsisClass
251
263
  }, null);
252
264
  })) ? u : {
253
265
  default: () => [u]
254
- }), I && i?.expandedRowRender ? r(te, {
255
- key: `${n}-expanded`,
266
+ }), D && i?.expandedRowRender ? r(oe, {
267
+ key: `${o}-expanded`,
256
268
  record: t,
257
- rowIndex: o,
258
- colspan: F.length,
259
- rowIndent: y,
269
+ rowIndex: a,
270
+ colspan: T.length,
271
+ rowIndent: v,
260
272
  rowClass: e.rowClass,
261
- rowClassName: N,
262
- expandedRowClassName: M,
273
+ rowClassName: E,
274
+ expandedRowClassName: X,
263
275
  tdClass: e.tdClass,
264
276
  expandedRowRender: i.expandedRowRender
265
277
  }, null) : null])]);
@@ -268,5 +280,5 @@ const Te = /* @__PURE__ */ $({
268
280
  }
269
281
  });
270
282
  export {
271
- Te as default
283
+ qe as default
272
284
  };
@@ -0,0 +1,28 @@
1
+ import { ColumnType, TableLayout } from '../types';
2
+ import { ColumnMetrics } from './useColumnMetrics';
3
+ type Column = ColumnType<Record<string, unknown>>;
4
+ export interface ColumnLayoutOptions {
5
+ columns: () => Column[];
6
+ columnWidths: Record<string, number>;
7
+ layout: () => TableLayout;
8
+ split: () => boolean;
9
+ root: () => HTMLElement | null;
10
+ viewport: () => HTMLElement | null;
11
+ scrollX: () => number | string | undefined;
12
+ onMeasure?: () => void;
13
+ }
14
+ /** Input constraints, allocation and committed browser metrics have separate lifetimes. */
15
+ export declare function useColumnLayout(options: ColumnLayoutOptions): {
16
+ enabled: import('vue').ComputedRef<boolean>;
17
+ minimums: import('vue').ComputedRef<number[]>;
18
+ minimumTotal: import('vue').ComputedRef<number>;
19
+ metrics: import('vue').ComputedRef<ColumnMetrics | null>;
20
+ synchronized: import('vue').ComputedRef<boolean>;
21
+ tableStyle: import('vue').ComputedRef<Record<string, string>>;
22
+ columnStyle: (index: number, span?: number) => Record<string, string>;
23
+ overflow: import('vue').ShallowRef<boolean, boolean>;
24
+ remeasure: () => void;
25
+ };
26
+ export type ColumnLayout = ReturnType<typeof useColumnLayout>;
27
+ export {};
28
+ //# sourceMappingURL=useColumnLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useColumnLayout.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useColumnLayout.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACvD,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAQ5E,KAAK,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAMjD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,MAAM,EAAE,CAAA;IACvB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,MAAM,EAAE,MAAM,WAAW,CAAA;IACzB,KAAK,EAAE,MAAM,OAAO,CAAA;IACpB,IAAI,EAAE,MAAM,WAAW,GAAG,IAAI,CAAA;IAC9B,QAAQ,EAAE,MAAM,WAAW,GAAG,IAAI,CAAA;IAClC,OAAO,EAAE,MAAM,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IAC1C,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAED,2FAA2F;AAC3F,wBAAgB,eAAe,CAAC,OAAO,EAAE,mBAAmB;;;;;;;yBAyD9B,MAAM,oBAAa,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;;;EAsYtE;AAED,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA"}