@vtable-guild/vtable-guild 2.6.2 → 2.6.4
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.
- package/css/style.css +7 -4
- package/css/tailwind3-utilities.css +7 -4
- package/dist/core/src/components/VirtualList/VirtualList.d.ts.map +1 -1
- package/dist/core/src/components/VirtualList/VirtualList.mjs +97 -91
- package/dist/core/src/index.d.ts +1 -1
- package/dist/core/src/index.d.ts.map +1 -1
- package/dist/css/style.css +7 -4
- package/dist/css/tailwind3-utilities.css +7 -4
- package/dist/index.full.mjs +3073 -2937
- package/dist/index.mjs +79 -78
- package/dist/table/src/components/Table.d.ts +1 -1
- package/dist/table/src/components/Table.d.ts.map +1 -1
- package/dist/table/src/components/Table.mjs +396 -371
- package/dist/table/src/components/TableCell.d.ts.map +1 -1
- package/dist/table/src/components/TableCell.mjs +1 -1
- package/dist/table/src/components/TableHeaderCell.d.ts.map +1 -1
- package/dist/table/src/components/TableHeaderCell.mjs +1 -1
- package/dist/table/src/components/VTablePrebuiltCssMode.test.d.ts +2 -0
- package/dist/table/src/components/VTablePrebuiltCssMode.test.d.ts.map +1 -0
- package/dist/table/src/components/VTableSummaryCell.d.ts.map +1 -1
- package/dist/table/src/components/VTableSummaryCell.mjs +8 -8
- package/dist/table/src/components/VirtualTableBody.d.ts.map +1 -1
- package/dist/table/src/components/VirtualTableBody.mjs +2 -1
- package/dist/table/src/composables/useAutoHeight.d.ts +32 -0
- package/dist/table/src/composables/useAutoHeight.d.ts.map +1 -0
- package/dist/table/src/composables/useAutoHeight.mjs +66 -0
- package/dist/table/src/composables/useAutoHeight.test.d.ts +2 -0
- package/dist/table/src/composables/useAutoHeight.test.d.ts.map +1 -0
- package/dist/table/src/composables/useColumnMetrics.d.ts.map +1 -1
- package/dist/table/src/composables/useColumnMetrics.mjs +49 -49
- package/dist/table/src/composables/useColumnMetrics.test.d.ts +2 -0
- package/dist/table/src/composables/useColumnMetrics.test.d.ts.map +1 -0
- package/dist/table/src/composables/useColumnWindow.mjs +16 -16
- package/dist/table/src/composables/useResize.d.ts.map +1 -1
- package/dist/table/src/composables/useResize.mjs +37 -31
- package/dist/table/src/composables/useScroll.d.ts +8 -0
- package/dist/table/src/composables/useScroll.d.ts.map +1 -1
- package/dist/table/src/composables/useScroll.mjs +37 -37
- package/dist/table/src/composables/useVirtual.d.ts +35 -0
- package/dist/table/src/composables/useVirtual.d.ts.map +1 -1
- package/dist/table/src/composables/useVirtual.mjs +44 -16
- package/dist/table/src/index.d.ts.map +1 -1
- package/dist/table/src/types/table.d.ts +9 -1
- package/dist/table/src/types/table.d.ts.map +1 -1
- package/dist/theme/src/presets/antdv/table.d.ts +3 -1
- package/dist/theme/src/presets/antdv/table.d.ts.map +1 -1
- package/dist/theme/src/presets/antdv/table.mjs +10 -1
- package/dist/theme/src/presets/element-plus/table.d.ts +3 -1
- package/dist/theme/src/presets/element-plus/table.d.ts.map +1 -1
- package/dist/theme/src/presets/element-plus/table.mjs +4 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableCell.d.ts","sourceRoot":"","sources":["../../../../../table/src/components/TableCell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA0C,KAAK,QAAQ,EAAmB,MAAM,KAAK,CAAA;AAG5F,OAAO,KAAK,EAAuB,UAAU,EAAE,MAAM,UAAU,CAAA;AAK/D,OAAO,EAKL,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAA;;;cAQQ,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;;;;;;;;cAEjC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;;;;;;;;cAGrD,QAAQ,CAAC,gBAAgB,CAAC;;;;;;;;;;;IAK5C;;;;;;OAMG;;;;;;;cAhBuB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;;;;;;;;cAEjC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;;;;;;;;cAGrD,QAAQ,CAAC,gBAAgB,CAAC;;;;;;;;;;;IAK5C;;;;;;OAMG;;;;;;;;;AAnBP,
|
|
1
|
+
{"version":3,"file":"TableCell.d.ts","sourceRoot":"","sources":["../../../../../table/src/components/TableCell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA0C,KAAK,QAAQ,EAAmB,MAAM,KAAK,CAAA;AAG5F,OAAO,KAAK,EAAuB,UAAU,EAAE,MAAM,UAAU,CAAA;AAK/D,OAAO,EAKL,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAA;;;cAQQ,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;;;;;;;;cAEjC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;;;;;;;;cAGrD,QAAQ,CAAC,gBAAgB,CAAC;;;;;;;;;;;IAK5C;;;;;;OAMG;;;;;;;cAhBuB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;;;;;;;;cAEjC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;;;;;;;;cAGrD,QAAQ,CAAC,gBAAgB,CAAC;;;;;;;;;;;IAK5C;;;;;;OAMG;;;;;;;;;AAnBP,wBA6bE"}
|
|
@@ -98,7 +98,7 @@ const _e = /* @__PURE__ */ ee({
|
|
|
98
98
|
...P(o.value.renderCellProps),
|
|
99
99
|
...P(o.value.customCellProps)
|
|
100
100
|
})), F = r(() => {
|
|
101
|
-
const n = e.column.align ? ie[e.column.align] : "", t = l.subThemeSlots, a = h.value && l.hoverable?.value, C = l.isColumnSorted?.(e.column) && t ? t.tdSorted() : "", R = f.value && t ? m(t.tdSelected(), a ? t.tdRowSelectedHover() : "") : "", k = a && t && !f.value ? t.tdRowHover() : "";
|
|
101
|
+
const n = e.column.align ? l.vtgClass?.(ie[e.column.align]) ?? "" : "", t = l.subThemeSlots, a = h.value && l.hoverable?.value, C = l.isColumnSorted?.(e.column) && t ? t.tdSorted() : "", R = f.value && t ? m(t.tdSelected(), a ? t.tdRowSelectedHover() : "") : "", k = a && t && !f.value ? t.tdRowHover() : "";
|
|
102
102
|
return m(
|
|
103
103
|
e.tdClass,
|
|
104
104
|
n,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableHeaderCell.d.ts","sourceRoot":"","sources":["../../../../../table/src/components/TableHeaderCell.tsx"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,QAAQ,EACd,MAAM,KAAK,CAAA;AAOZ,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;;;cAuBzC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;cAAjD,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;AAJvE,
|
|
1
|
+
{"version":3,"file":"TableHeaderCell.d.ts","sourceRoot":"","sources":["../../../../../table/src/components/TableHeaderCell.tsx"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,QAAQ,EACd,MAAM,KAAK,CAAA;AAOZ,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;;;cAuBzC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;cAAjD,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;AAJvE,wBA0vBE"}
|
|
@@ -140,7 +140,7 @@ const Il = /* @__PURE__ */ Re({
|
|
|
140
140
|
}
|
|
141
141
|
return ne.value;
|
|
142
142
|
}), ye = a(() => {
|
|
143
|
-
const l = t.cell.column.align ? sl[t.cell.column.align] : "", r = F.value ? e.subThemeSlots?.thSortable() : "", u = y.value ? e.subThemeSlots?.thSorted() : "", g = o.value?.key === "__vtg_expand__";
|
|
143
|
+
const l = t.cell.column.align ? e.vtgClass?.(sl[t.cell.column.align]) ?? "" : "", r = F.value ? e.subThemeSlots?.thSortable() : "", u = y.value ? e.subThemeSlots?.thSorted() : "", g = o.value?.key === "__vtg_expand__";
|
|
144
144
|
return C(t.thClass, l, r, u, Se.value, t.cell.column.className, g ? e.vtgClass?.("before:hidden") : "", d.value?.class, d.value?.className, oe.value, be.value, g ? e.compatClass?.("row-expand-icon-cell") : "");
|
|
145
145
|
}), re = a(() => {
|
|
146
146
|
const l = {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VTablePrebuiltCssMode.test.d.ts","sourceRoot":"","sources":["../../../../../table/src/components/VTablePrebuiltCssMode.test.ts"],"names":[],"mappings":""}
|
|
@@ -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,
|
|
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"}
|
|
@@ -2,8 +2,8 @@ import { defineComponent as c, inject as f, computed as u, createVNode as S } fr
|
|
|
2
2
|
import "../../../core/src/utils/tv.mjs";
|
|
3
3
|
import { TABLE_CONTEXT_KEY as y } from "../context.mjs";
|
|
4
4
|
import { getColumnKey as p } from "../composables/useColumns.mjs";
|
|
5
|
-
import { useFixedColumnStyle as
|
|
6
|
-
import { TABLE_ALIGN_CLASSES as
|
|
5
|
+
import { useFixedColumnStyle as C } from "../composables/useFixedColumnStyle.mjs";
|
|
6
|
+
import { TABLE_ALIGN_CLASSES as x } from "../../../theme/src/presets/antdv/table.mjs";
|
|
7
7
|
import { cn as b } from "tailwind-variants";
|
|
8
8
|
const _ = /* @__PURE__ */ c({
|
|
9
9
|
name: "VTableSummaryCell",
|
|
@@ -37,12 +37,12 @@ const _ = /* @__PURE__ */ c({
|
|
|
37
37
|
return l.fixedOffsets?.value?.get(o) ?? null;
|
|
38
38
|
}), {
|
|
39
39
|
fixedStyle: a,
|
|
40
|
-
fixedClass:
|
|
41
|
-
} =
|
|
40
|
+
fixedClass: s
|
|
41
|
+
} = C({
|
|
42
42
|
fixedInfo: () => r.value
|
|
43
|
-
}),
|
|
44
|
-
const t = l.subThemeSlots, e = n.align ?
|
|
45
|
-
return b(t?.summaryCell() ?? "", e,
|
|
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
46
|
}), m = u(() => {
|
|
47
47
|
const t = l.displayColumns?.value;
|
|
48
48
|
if (!t) return a.value;
|
|
@@ -55,7 +55,7 @@ const _ = /* @__PURE__ */ c({
|
|
|
55
55
|
return () => {
|
|
56
56
|
const t = n.colSpan !== 1 ? n.colSpan : void 0, e = n.rowSpan !== 1 ? n.rowSpan : void 0;
|
|
57
57
|
return S("td", {
|
|
58
|
-
class:
|
|
58
|
+
class: d.value,
|
|
59
59
|
style: m.value,
|
|
60
60
|
colspan: t,
|
|
61
61
|
rowspan: e
|
|
@@ -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;AAMpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAG/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,
|
|
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;AAMpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAG/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,wBAoZE"}
|
|
@@ -218,7 +218,8 @@ const xe = /* @__PURE__ */ X({
|
|
|
218
218
|
tableLayout: "fixed"
|
|
219
219
|
}
|
|
220
220
|
}, [r("tbody", {
|
|
221
|
-
class: e.tbodyClass
|
|
221
|
+
class: e.tbodyClass,
|
|
222
|
+
"data-vtg-preserve-last-border": l < e.dataSource.length - 1 ? "" : void 0
|
|
222
223
|
}, [r(Y, {
|
|
223
224
|
key: o,
|
|
224
225
|
rowClass: x(e.rowClass, F, ne(a, t, n, v)) ?? "",
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ShallowRef } from 'vue';
|
|
2
|
+
export interface UseAutoHeightOptions {
|
|
3
|
+
/** 关闭时不测量、不注册 observer,bodyHeight 恒为 undefined。 */
|
|
4
|
+
enabled: () => boolean;
|
|
5
|
+
/** 内容区 wrapper:表头 / 表体 / 固定 summary 的共同父级。 */
|
|
6
|
+
wrapperEl: () => HTMLElement | null;
|
|
7
|
+
/** 表头块(useScroll 的 headerWrapRef)。缺失(showHeader: false)时不扣减。 */
|
|
8
|
+
headerEl: () => HTMLElement | null;
|
|
9
|
+
/** 固定 summary 块。缺失(无 summary 或不固定)时不扣减。 */
|
|
10
|
+
summaryEl?: () => HTMLElement | null;
|
|
11
|
+
/** 是否有数据。空数据时容器再矮也属正常,不提示配置问题。 */
|
|
12
|
+
hasData: () => boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface UseAutoHeightReturn {
|
|
15
|
+
/**
|
|
16
|
+
* 实测表体最大高度 = wrapper − 表头 − 固定 summary(向下取整,钳制 ≥1px)。
|
|
17
|
+
* undefined 表示尚未测得(未挂载 / ref 异常),调用方此时暂不约束高度。
|
|
18
|
+
*/
|
|
19
|
+
bodyHeight: ShallowRef<number | undefined>;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* `scroll.y: 'auto'` 的实测表体高度。
|
|
23
|
+
*
|
|
24
|
+
* 观察 wrapper + 表头 + 固定 summary 三个元素(表头高度会随分组表头、size
|
|
25
|
+
* 预设独立变化),任一尺寸变化都重算。**不会震荡**:wrapper 高度由父容器
|
|
26
|
+
* 的 flex 布局决定,表体 maxHeight 只封顶内容,不反过来改变 wrapper 高度。
|
|
27
|
+
*
|
|
28
|
+
* 挂载与 ref 换绑后**立即同步测量一次**再注册 observer:ResizeObserver 的
|
|
29
|
+
* 首次回调要等下一渲染帧,不主动测的话首帧会以未约束高度绘制。
|
|
30
|
+
*/
|
|
31
|
+
export declare function useAutoHeight(options: UseAutoHeightOptions): UseAutoHeightReturn;
|
|
32
|
+
//# sourceMappingURL=useAutoHeight.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAutoHeight.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useAutoHeight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,UAAU,EAAE,MAAM,KAAK,CAAA;AAGpF,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,OAAO,EAAE,MAAM,OAAO,CAAA;IACtB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,WAAW,GAAG,IAAI,CAAA;IACnC,gEAAgE;IAChE,QAAQ,EAAE,MAAM,WAAW,GAAG,IAAI,CAAA;IAClC,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,WAAW,GAAG,IAAI,CAAA;IACpC,kCAAkC;IAClC,OAAO,EAAE,MAAM,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,UAAU,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CAC3C;AAqBD;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,mBAAmB,CAoIhF"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { shallowRef as b, watch as g, onMounted as E, onBeforeUnmount as w } from "vue";
|
|
2
|
+
const y = 0.5, h = 1;
|
|
3
|
+
function R(e) {
|
|
4
|
+
const r = b(void 0);
|
|
5
|
+
let l = 0, a = null, u = [], i;
|
|
6
|
+
function s(n) {
|
|
7
|
+
const t = e.wrapperEl();
|
|
8
|
+
t && t.getClientRects().length > 0 && e.hasData() && n !== void 0 && n <= h;
|
|
9
|
+
}
|
|
10
|
+
function f() {
|
|
11
|
+
if (l = 0, !e.enabled()) {
|
|
12
|
+
r.value = void 0, i = void 0;
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
const n = e.wrapperEl();
|
|
16
|
+
if (!n) {
|
|
17
|
+
i = void 0, r.value !== void 0 && (r.value = void 0), s(void 0);
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
const t = e.headerEl()?.getBoundingClientRect().height ?? 0, c = e.summaryEl?.()?.getBoundingClientRect().height ?? 0, d = n.getBoundingClientRect().height - t - c;
|
|
21
|
+
if (i !== void 0 && Math.abs(d - i) <= y) {
|
|
22
|
+
s(r.value);
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
i = d;
|
|
26
|
+
const v = Math.max(h, Math.floor(d));
|
|
27
|
+
r.value !== v && (r.value = v), s(v);
|
|
28
|
+
}
|
|
29
|
+
function m() {
|
|
30
|
+
if (typeof requestAnimationFrame > "u") {
|
|
31
|
+
f();
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
l || (l = requestAnimationFrame(f));
|
|
35
|
+
}
|
|
36
|
+
function o() {
|
|
37
|
+
const n = e.enabled() ? [e.wrapperEl(), e.headerEl(), e.summaryEl?.() ?? null].filter(
|
|
38
|
+
(t) => !!t
|
|
39
|
+
) : [];
|
|
40
|
+
if (!(n.length === u.length && n.every((t, c) => t === u[c])) && (a?.disconnect(), u = n, n.length > 0)) {
|
|
41
|
+
!a && typeof ResizeObserver < "u" && (a = new ResizeObserver(m));
|
|
42
|
+
for (const t of n) a?.observe(t);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return g(
|
|
46
|
+
[
|
|
47
|
+
() => e.enabled(),
|
|
48
|
+
() => e.wrapperEl(),
|
|
49
|
+
() => e.headerEl(),
|
|
50
|
+
() => e.summaryEl?.() ?? null,
|
|
51
|
+
// 数据后到时重估「测不到高度」的告警条件(空数据不算配置问题)。
|
|
52
|
+
() => e.hasData()
|
|
53
|
+
],
|
|
54
|
+
() => {
|
|
55
|
+
o(), f();
|
|
56
|
+
},
|
|
57
|
+
{ flush: "post" }
|
|
58
|
+
), E(() => {
|
|
59
|
+
o(), f();
|
|
60
|
+
}), w(() => {
|
|
61
|
+
l && cancelAnimationFrame(l), a?.disconnect(), a = null, u = [];
|
|
62
|
+
}), { bodyHeight: r };
|
|
63
|
+
}
|
|
64
|
+
export {
|
|
65
|
+
R as useAutoHeight
|
|
66
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAutoHeight.test.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useAutoHeight.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useColumnMetrics.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useColumnMetrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,UAAU,EAAE,MAAM,KAAK,CAAA;AACpF,OAAO,KAAK,EAAE,UAAU,EAAO,MAAM,UAAU,CAAA;AAG/C,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,WAAW;IACX,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,uBAAuB;IACtC,6CAA6C;IAC7C,OAAO,EAAE,MAAM,OAAO,CAAA;IACtB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,WAAW,GAAG,IAAI,CAAA;IAClC,OAAO,EAAE,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAA;IACpD,qBAAqB;IACrB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,uCAAuC;IACvC,SAAS,EAAE,MAAM,OAAO,CAAA;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,iCAAiC;IACjC,OAAO,EAAE,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IACzC,uBAAuB;IACvB,SAAS,EAAE,MAAM,IAAI,CAAA;CACtB;AA0CD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,sBAAsB,
|
|
1
|
+
{"version":3,"file":"useColumnMetrics.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useColumnMetrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,UAAU,EAAE,MAAM,KAAK,CAAA;AACpF,OAAO,KAAK,EAAE,UAAU,EAAO,MAAM,UAAU,CAAA;AAG/C,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,WAAW;IACX,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,uBAAuB;IACtC,6CAA6C;IAC7C,OAAO,EAAE,MAAM,OAAO,CAAA;IACtB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,WAAW,GAAG,IAAI,CAAA;IAClC,OAAO,EAAE,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAA;IACpD,qBAAqB;IACrB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,uCAAuC;IACvC,SAAS,EAAE,MAAM,OAAO,CAAA;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,iCAAiC;IACjC,OAAO,EAAE,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IACzC,uBAAuB;IACvB,SAAS,EAAE,MAAM,IAAI,CAAA;CACtB;AA0CD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,sBAAsB,CAuHzF"}
|
|
@@ -1,71 +1,71 @@
|
|
|
1
|
-
import { shallowRef as
|
|
2
|
-
import { getColumnKey as
|
|
3
|
-
const
|
|
4
|
-
function
|
|
5
|
-
if (e === null ||
|
|
6
|
-
if (e.widths.length !==
|
|
7
|
-
for (let
|
|
8
|
-
if (Math.abs(e.widths[
|
|
1
|
+
import { shallowRef as g, watch as y, onMounted as N, onBeforeUnmount as A } from "vue";
|
|
2
|
+
import { getColumnKey as F } from "./useColumns.mjs";
|
|
3
|
+
const O = 0.5;
|
|
4
|
+
function q(e, t) {
|
|
5
|
+
if (e === null || t === null) return e === t;
|
|
6
|
+
if (e.widths.length !== t.widths.length) return !1;
|
|
7
|
+
for (let r = 0; r < e.widths.length; r += 1)
|
|
8
|
+
if (Math.abs(e.widths[r] - t.widths[r]) > O) return !1;
|
|
9
9
|
return !0;
|
|
10
10
|
}
|
|
11
|
-
function C(e,
|
|
12
|
-
return
|
|
11
|
+
function C(e, t) {
|
|
12
|
+
return F(e) ?? t;
|
|
13
13
|
}
|
|
14
|
-
function E(e,
|
|
15
|
-
const
|
|
16
|
-
let
|
|
14
|
+
function E(e, t) {
|
|
15
|
+
const r = [];
|
|
16
|
+
let n = 0;
|
|
17
17
|
for (let l = 0; l < e.length; l += 1) {
|
|
18
|
-
const
|
|
19
|
-
if (!Number.isFinite(
|
|
20
|
-
|
|
18
|
+
const s = t[String(C(e[l], l))] ?? e[l].width, f = typeof s == "number" ? s : Number.NaN;
|
|
19
|
+
if (!Number.isFinite(f) || f <= 0) return null;
|
|
20
|
+
r.push(f), n += f;
|
|
21
21
|
}
|
|
22
|
-
return
|
|
22
|
+
return n > 0 ? { widths: r, total: n } : null;
|
|
23
23
|
}
|
|
24
24
|
function M(e) {
|
|
25
|
-
const
|
|
26
|
-
let
|
|
25
|
+
const t = g(null);
|
|
26
|
+
let r = 0, n = null, l = null, s = null;
|
|
27
27
|
function f() {
|
|
28
|
-
const u = e.columns(),
|
|
29
|
-
if (
|
|
28
|
+
const u = e.columns(), i = u.length;
|
|
29
|
+
if (i === 0) return null;
|
|
30
30
|
if (!e.hasHeader())
|
|
31
31
|
return E(u, e.columnWidths);
|
|
32
32
|
const w = e.headerEl();
|
|
33
33
|
if (!w) return null;
|
|
34
|
-
const
|
|
35
|
-
if (
|
|
36
|
-
const d = new Array(
|
|
37
|
-
for (const
|
|
38
|
-
const o = Number(
|
|
39
|
-
if (!Number.isInteger(o) || o < 0 || o >=
|
|
40
|
-
d[o] =
|
|
34
|
+
const v = w.querySelectorAll("th[data-vtg-leaf-col]");
|
|
35
|
+
if (v.length !== i) return null;
|
|
36
|
+
const d = new Array(i).fill(-1);
|
|
37
|
+
for (const c of v) {
|
|
38
|
+
const o = Number(c.dataset.vtgLeafCol);
|
|
39
|
+
if (!Number.isInteger(o) || o < 0 || o >= i) return null;
|
|
40
|
+
d[o] = c.getBoundingClientRect().width;
|
|
41
41
|
}
|
|
42
42
|
let h = 0;
|
|
43
|
-
for (const
|
|
44
|
-
if (
|
|
45
|
-
h +=
|
|
43
|
+
for (const c of d) {
|
|
44
|
+
if (c < 0) return null;
|
|
45
|
+
h += c;
|
|
46
46
|
}
|
|
47
47
|
return h > 0 ? { widths: d, total: h } : null;
|
|
48
48
|
}
|
|
49
|
-
function
|
|
50
|
-
if (
|
|
51
|
-
|
|
49
|
+
function m() {
|
|
50
|
+
if (r = 0, !e.enabled()) {
|
|
51
|
+
t.value = null;
|
|
52
52
|
return;
|
|
53
53
|
}
|
|
54
54
|
const u = f();
|
|
55
|
-
|
|
55
|
+
q(t.value, u) || (t.value = u);
|
|
56
56
|
}
|
|
57
|
-
function
|
|
57
|
+
function a() {
|
|
58
58
|
if (typeof requestAnimationFrame > "u") {
|
|
59
|
-
|
|
59
|
+
m();
|
|
60
60
|
return;
|
|
61
61
|
}
|
|
62
|
-
|
|
62
|
+
r || (r = requestAnimationFrame(m));
|
|
63
63
|
}
|
|
64
|
-
function
|
|
65
|
-
const u = e.enabled() && e.hasHeader() ? e.headerEl() : null;
|
|
66
|
-
u
|
|
64
|
+
function b() {
|
|
65
|
+
const u = e.enabled() && e.hasHeader() ? e.headerEl() : null, i = u?.querySelector("table") ?? null;
|
|
66
|
+
u === l && i === s || (n && l && n.unobserve(l), n && s && n.unobserve(s), l = u, s = i, u && (!n && typeof ResizeObserver < "u" && (n = new ResizeObserver(a)), n?.observe(u), i && n?.observe(i)));
|
|
67
67
|
}
|
|
68
|
-
return
|
|
68
|
+
return y(
|
|
69
69
|
[
|
|
70
70
|
() => e.enabled(),
|
|
71
71
|
() => e.hasHeader(),
|
|
@@ -74,14 +74,14 @@ function M(e) {
|
|
|
74
74
|
() => ({ ...e.columnWidths })
|
|
75
75
|
],
|
|
76
76
|
() => {
|
|
77
|
-
|
|
77
|
+
b(), a();
|
|
78
78
|
},
|
|
79
|
-
{ deep: !1 }
|
|
80
|
-
),
|
|
81
|
-
|
|
82
|
-
}),
|
|
83
|
-
|
|
84
|
-
}), { metrics:
|
|
79
|
+
{ deep: !1, flush: "post" }
|
|
80
|
+
), N(() => {
|
|
81
|
+
b(), a();
|
|
82
|
+
}), A(() => {
|
|
83
|
+
r && cancelAnimationFrame(r), n?.disconnect(), n = null, l = null, s = null;
|
|
84
|
+
}), { metrics: t, remeasure: a };
|
|
85
85
|
}
|
|
86
86
|
export {
|
|
87
87
|
M as useColumnMetrics
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useColumnMetrics.test.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useColumnMetrics.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { computed as l } from "vue";
|
|
2
|
-
import { PrefixSums as
|
|
2
|
+
import { PrefixSums as p } from "../../../core/src/components/VirtualList/utils/PrefixSums.mjs";
|
|
3
3
|
const S = 2;
|
|
4
4
|
function w(r) {
|
|
5
5
|
const t = r.length;
|
|
@@ -17,34 +17,34 @@ function w(r) {
|
|
|
17
17
|
}
|
|
18
18
|
return { leftFixedCount: n, rightFixedStart: i, contiguous: e };
|
|
19
19
|
}
|
|
20
|
-
function
|
|
21
|
-
const { prefix: t, columnCount: n, leftFixedCount: i, rightFixedStart: e, offsetX: f, viewportWidth: s, overscan: d } = r,
|
|
22
|
-
if (
|
|
23
|
-
return { start:
|
|
20
|
+
function m(r) {
|
|
21
|
+
const { prefix: t, columnCount: n, leftFixedCount: i, rightFixedStart: e, offsetX: f, viewportWidth: s, overscan: d } = r, a = i, c = e - 1;
|
|
22
|
+
if (a > c)
|
|
23
|
+
return { start: a, end: a - 1, leftSpacer: 0, rightSpacer: 0 };
|
|
24
24
|
const h = t.offsetOf(i), x = t.total - t.offsetOf(e), g = f + h, v = f + s - x;
|
|
25
|
-
let
|
|
26
|
-
return o >= n && (o = n - 1), o += d,
|
|
27
|
-
start:
|
|
25
|
+
let u = t.findIndex(g) - d, o = t.findIndex(v);
|
|
26
|
+
return o >= n && (o = n - 1), o += d, u = Math.min(Math.max(u, a), c), o = Math.min(Math.max(o, a), c), o < u && (o = u), {
|
|
27
|
+
start: u,
|
|
28
28
|
end: o,
|
|
29
|
-
leftSpacer: t.offsetOf(
|
|
29
|
+
leftSpacer: t.offsetOf(u) - t.offsetOf(a),
|
|
30
30
|
rightSpacer: t.offsetOf(e) - t.offsetOf(o + 1)
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
33
|
function O(r) {
|
|
34
|
-
const t = new
|
|
34
|
+
const t = new p(), n = l(() => {
|
|
35
35
|
const e = r.widths();
|
|
36
|
-
return !e || e.length === 0 ? null : (t.markAllDirty(), t.sync(e.length, (f) => e[f], 0), e.length);
|
|
36
|
+
return !e || e.length === 0 ? null : (t.markAllDirty(), t.sync(e.length, (f) => e[f], 0), { count: e.length, prefix: t });
|
|
37
37
|
}), i = l(() => {
|
|
38
38
|
const e = n.value;
|
|
39
|
-
return e
|
|
40
|
-
prefix:
|
|
41
|
-
columnCount: e,
|
|
39
|
+
return e ? m({
|
|
40
|
+
prefix: e.prefix,
|
|
41
|
+
columnCount: e.count,
|
|
42
42
|
leftFixedCount: r.leftFixedCount(),
|
|
43
43
|
rightFixedStart: r.rightFixedStart(),
|
|
44
44
|
offsetX: r.offsetX(),
|
|
45
45
|
viewportWidth: r.viewportWidth(),
|
|
46
46
|
overscan: r.overscan?.() ?? S
|
|
47
|
-
});
|
|
47
|
+
}) : null;
|
|
48
48
|
});
|
|
49
49
|
return {
|
|
50
50
|
active: l(() => i.value !== null),
|
|
@@ -56,7 +56,7 @@ function O(r) {
|
|
|
56
56
|
}
|
|
57
57
|
export {
|
|
58
58
|
S as DEFAULT_COLUMN_OVERSCAN,
|
|
59
|
-
|
|
59
|
+
m as computeColumnWindow,
|
|
60
60
|
w as resolveFixedColumnRanges,
|
|
61
61
|
O as useColumnWindow
|
|
62
62
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useResize.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useResize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAG1C,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,WAAW,EAAE,CACX,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC3C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,YAAY,KAChB,IAAI,CAAA;IACT,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;CACzB;
|
|
1
|
+
{"version":3,"file":"useResize.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useResize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAG1C,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,WAAW,EAAE,CACX,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC3C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,YAAY,KAChB,IAAI,CAAA;IACT,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;CACzB;AAUD,wBAAgB,SAAS,CAAC,OAAO,EAAE;IACjC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACtF,GAAG,eAAe,CA0ElB"}
|
|
@@ -1,42 +1,48 @@
|
|
|
1
|
-
import { reactive as
|
|
1
|
+
import { reactive as y, ref as g, onBeforeUnmount as W } from "vue";
|
|
2
2
|
import { getColumnKey as b } from "./useColumns.mjs";
|
|
3
|
-
function
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
3
|
+
function w(c) {
|
|
4
|
+
const n = c.currentTarget;
|
|
5
|
+
if (!(n instanceof Element)) return;
|
|
6
|
+
const t = n.closest("th")?.getBoundingClientRect().width;
|
|
7
|
+
return t !== void 0 && Number.isFinite(t) && t > 0 ? t : void 0;
|
|
8
|
+
}
|
|
9
|
+
function E(c) {
|
|
10
|
+
const n = y({}), t = g(!1);
|
|
11
|
+
let o = null, u = "", m = 0, d = 0;
|
|
12
|
+
function f(i) {
|
|
13
|
+
if (!o) return;
|
|
14
|
+
const r = i.clientX - m;
|
|
15
|
+
let e = d + r;
|
|
16
|
+
const l = o.minWidth ?? 50, s = o.maxWidth;
|
|
17
|
+
e = Math.max(l, e), s !== void 0 && (e = Math.min(s, e)), n[u] = e;
|
|
12
18
|
}
|
|
13
|
-
function
|
|
14
|
-
if (!
|
|
15
|
-
const
|
|
16
|
-
|
|
19
|
+
function v(i) {
|
|
20
|
+
if (!o) return;
|
|
21
|
+
const r = o, e = n[u];
|
|
22
|
+
h(), c.onResizeColumn?.(r, e);
|
|
17
23
|
}
|
|
18
|
-
function
|
|
19
|
-
document.removeEventListener("pointermove",
|
|
24
|
+
function h() {
|
|
25
|
+
document.removeEventListener("pointermove", f), document.removeEventListener("pointerup", v), document.body.style.cursor = "", document.body.style.userSelect = "", t.value = !1, o = null;
|
|
20
26
|
}
|
|
21
|
-
function
|
|
22
|
-
e.preventDefault(), e.stopPropagation(),
|
|
23
|
-
const l = b(
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
if (
|
|
27
|
-
|
|
27
|
+
function p(i, r, e) {
|
|
28
|
+
e.preventDefault(), e.stopPropagation(), o = i;
|
|
29
|
+
const l = b(i) ?? String(r);
|
|
30
|
+
u = String(l), m = e.clientX;
|
|
31
|
+
const s = n[u];
|
|
32
|
+
if (s !== void 0)
|
|
33
|
+
d = s;
|
|
28
34
|
else {
|
|
29
|
-
const
|
|
30
|
-
|
|
35
|
+
const a = i.width;
|
|
36
|
+
d = typeof a == "number" && Number.isFinite(a) ? a : w(e) ?? 100;
|
|
31
37
|
}
|
|
32
|
-
|
|
38
|
+
t.value = !0, document.body.style.cursor = "col-resize", document.body.style.userSelect = "none", document.addEventListener("pointermove", f), document.addEventListener("pointerup", v);
|
|
33
39
|
}
|
|
34
|
-
return W(
|
|
35
|
-
columnWidths:
|
|
36
|
-
startResize:
|
|
37
|
-
isResizing:
|
|
40
|
+
return W(h), {
|
|
41
|
+
columnWidths: n,
|
|
42
|
+
startResize: p,
|
|
43
|
+
isResizing: t
|
|
38
44
|
};
|
|
39
45
|
}
|
|
40
46
|
export {
|
|
41
|
-
|
|
47
|
+
E as useResize
|
|
42
48
|
};
|
|
@@ -2,6 +2,13 @@ import { ComputedRef, Ref } from 'vue';
|
|
|
2
2
|
import { ColumnType, Key } from '../types';
|
|
3
3
|
export interface ScrollConfig {
|
|
4
4
|
x?: number | string;
|
|
5
|
+
/**
|
|
6
|
+
* 纵向滚动高度(启用固定表头)。
|
|
7
|
+
*
|
|
8
|
+
* 数字表示固定视口;`'auto'` 表示自动适应父容器高度(组件内部扣减表头 /
|
|
9
|
+
* 固定 summary,需父容器有确定高度)。虚拟模式下仅兼容正数 px 字符串,
|
|
10
|
+
* 其余字符串 dev 告警并回落 400px 视口;非虚拟模式下按 CSS max-height 原样生效。
|
|
11
|
+
*/
|
|
5
12
|
y?: number | string;
|
|
6
13
|
}
|
|
7
14
|
export interface FixedOffset {
|
|
@@ -28,5 +35,6 @@ export interface UseScrollReturn {
|
|
|
28
35
|
}
|
|
29
36
|
export declare function useScroll(options: {
|
|
30
37
|
displayColumns: () => ColumnType<Record<string, unknown>>[];
|
|
38
|
+
columnWidths?: Record<string, number>;
|
|
31
39
|
}): UseScrollReturn;
|
|
32
40
|
//# sourceMappingURL=useScroll.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useScroll.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useScroll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,WAAW,EAAE,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAO/C,MAAM,WAAW,YAAY;IAC3B,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC7B,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACtC,WAAW,EAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACpC,WAAW,EAAE,eAAe,CAAA;IAC5B,gBAAgB,EAAE,CAAC,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACxE,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAA;IAChD,iBAAiB,EAAE,MAAM,IAAI,CAAA;IAC7B,oBAAoB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAC3E;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE;IACjC,cAAc,EAAE,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"useScroll.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useScroll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,WAAW,EAAE,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAO/C,MAAM,WAAW,YAAY;IAC3B,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB;;;;;;OAMG;IACH,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC7B,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACtC,WAAW,EAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACpC,WAAW,EAAE,eAAe,CAAA;IAC5B,gBAAgB,EAAE,CAAC,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACxE,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAA;IAChD,iBAAiB,EAAE,MAAM,IAAI,CAAA;IAC7B,oBAAoB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAC3E;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE;IACjC,cAAc,EAAE,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAA;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACtC,GAAG,eAAe,CAgHlB"}
|