@aplus-frontend/ui 0.4.15 → 0.4.16
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/es/src/ap-table/ap-table.vue2.mjs +168 -169
- package/es/src/ap-table/hooks/use-sticky-scroll.d.ts +6 -0
- package/es/src/ap-table/hooks/use-sticky-scroll.mjs +16 -0
- package/es/src/ap-table/hooks/use-table-paging-ng.mjs +1 -1
- package/es/src/config-provider/css-var.d.ts +1 -0
- package/es/src/config-provider/css-var.mjs +1 -0
- package/es/src/scroll-bar/index.vue.d.ts +1 -0
- package/es/src/scroll-bar/index.vue.mjs +25 -21
- package/es/src/scroll-bar/interface.d.ts +2 -1
- package/es/src/utils/index.mjs +1 -1
- package/lib/src/ap-table/ap-table.vue2.js +1 -1
- package/lib/src/ap-table/hooks/use-sticky-scroll.d.ts +6 -0
- package/lib/src/ap-table/hooks/use-sticky-scroll.js +1 -0
- package/lib/src/ap-table/hooks/use-table-paging-ng.js +1 -1
- package/lib/src/config-provider/css-var.d.ts +1 -0
- package/lib/src/config-provider/css-var.js +1 -1
- package/lib/src/scroll-bar/index.vue.d.ts +1 -0
- package/lib/src/scroll-bar/index.vue.js +1 -1
- package/lib/src/scroll-bar/interface.d.ts +2 -1
- package/lib/src/utils/index.js +1 -1
- package/package.json +3 -3
- package/theme/ap-table/ap-table.css +7 -5
- package/theme/ap-table/ap-table.less +17 -7
- package/theme/ap-table-modal/index.css +7 -5
- package/theme/index.css +7 -5
|
@@ -1,25 +1,27 @@
|
|
|
1
|
-
import { defineComponent as ze, useSlots as Pe, ref as
|
|
1
|
+
import { defineComponent as ze, useSlots as Pe, ref as S, computed as s, unref as t, createVNode as f, Fragment as G, watchEffect as Ne, watch as J, openBlock as p, createElementBlock as B, normalizeClass as m, normalizeStyle as Q, mergeProps as h, createSlots as X, withCtx as w, renderList as Y, createBlock as Z, resolveDynamicComponent as Ie, renderSlot as R, createCommentVNode as ee, createElementVNode as N, normalizeProps as Ee, guardReactiveProps as Ke } from "vue";
|
|
2
2
|
import { Divider as Oe, Table as Le } from "@aplus-frontend/antdv";
|
|
3
3
|
import { useToken as Ve } from "@aplus-frontend/antdv/es/theme/internal";
|
|
4
4
|
import { ApForm as Ae } from "../ap-form/index.mjs";
|
|
5
5
|
import { noRenderAsFormItemValueList as oe } from "./constants.mjs";
|
|
6
6
|
import "../config-provider/index.mjs";
|
|
7
7
|
import { useTablePaging as De } from "./hooks/use-table-paging-ng.mjs";
|
|
8
|
-
import { isUndefined as
|
|
9
|
-
import { getColumnOrder as re, updateFormProps as
|
|
8
|
+
import { isUndefined as y, omit as ae, isBoolean as $e } from "lodash-unified";
|
|
9
|
+
import { getColumnOrder as re, updateFormProps as We, getFieldProps as je, getSearchFormItemRenderNode as _e, recursionApColumns as te, apColumnToColumn as He, getTableTitle as Ue, getTableRenderType as qe, getTableRenderProps as Me, getTableCellRenderNode as Ge, falseToUndefined as Je } from "./utils.mjs";
|
|
10
10
|
import Qe from "./hooks/use-table-content-height.mjs";
|
|
11
11
|
import Xe from "./hooks/use-table-row-selection.mjs";
|
|
12
|
-
import {
|
|
12
|
+
import { isDef as Ye } from "../utils/index.mjs";
|
|
13
13
|
import "./components/setting/modal/index.vue.mjs";
|
|
14
14
|
import "./components/paragraph-ellipsis/index.vue.mjs";
|
|
15
|
-
import { useProvideApTable as
|
|
15
|
+
import { useProvideApTable as Ze } from "./context.mjs";
|
|
16
16
|
import "../scroll-bar/index.mjs";
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import
|
|
20
|
-
import
|
|
21
|
-
import
|
|
22
|
-
|
|
17
|
+
import { useStickyScroll as eo } from "./hooks/use-sticky-scroll.mjs";
|
|
18
|
+
import { scrollbarSize as oo } from "../config-provider/css-var.mjs";
|
|
19
|
+
import { useNamespace as ao } from "../config-provider/hooks/use-namespace.mjs";
|
|
20
|
+
import { useGlobalConfig as ro } from "../config-provider/hooks/use-global-config.mjs";
|
|
21
|
+
import to from "./components/paragraph-ellipsis/index.vue2.mjs";
|
|
22
|
+
import lo from "./components/setting/modal/index.vue2.mjs";
|
|
23
|
+
import no from "../scroll-bar/index.vue.mjs";
|
|
24
|
+
const No = /* @__PURE__ */ ze({
|
|
23
25
|
name: "ApTable",
|
|
24
26
|
__name: "ap-table",
|
|
25
27
|
props: {
|
|
@@ -147,19 +149,22 @@ const ko = /* @__PURE__ */ ze({
|
|
|
147
149
|
expose: ne
|
|
148
150
|
}) {
|
|
149
151
|
const o = le;
|
|
150
|
-
let
|
|
151
|
-
const
|
|
152
|
-
e:
|
|
152
|
+
let I = 0;
|
|
153
|
+
const C = Pe(), [, se] = Ve(), {
|
|
154
|
+
e: x,
|
|
153
155
|
b: i,
|
|
154
|
-
be:
|
|
155
|
-
|
|
156
|
-
} =
|
|
157
|
-
height:
|
|
158
|
-
contentRef:
|
|
159
|
-
} = Qe(),
|
|
160
|
-
|
|
156
|
+
be: E,
|
|
157
|
+
m: de
|
|
158
|
+
} = ao("ap-table"), K = ro("valueTypeMap"), {
|
|
159
|
+
height: ue,
|
|
160
|
+
contentRef: ie
|
|
161
|
+
} = Qe(), O = S(), L = S(), {
|
|
162
|
+
isStickyMode: V,
|
|
163
|
+
scrollBarRef: ce
|
|
164
|
+
} = eo(O), k = S(o.size), u = S([]), A = S([]);
|
|
165
|
+
Ze({
|
|
161
166
|
columns: s(() => u.value),
|
|
162
|
-
columnsBackup: s(() =>
|
|
167
|
+
columnsBackup: s(() => A.value),
|
|
163
168
|
size: s(() => k.value),
|
|
164
169
|
updateColumns(e) {
|
|
165
170
|
u.value = e;
|
|
@@ -167,34 +172,34 @@ const ko = /* @__PURE__ */ ze({
|
|
|
167
172
|
updateSize(e) {
|
|
168
173
|
k.value = e;
|
|
169
174
|
},
|
|
170
|
-
dataSource: s(() =>
|
|
175
|
+
dataSource: s(() => t(g).records)
|
|
171
176
|
});
|
|
172
|
-
const
|
|
173
|
-
var e,
|
|
174
|
-
return
|
|
175
|
-
let n = re(
|
|
177
|
+
const D = s(() => {
|
|
178
|
+
var e, l, a;
|
|
179
|
+
return I++, ((a = (l = (e = o.columns) == null ? void 0 : e.filter((r) => !r.hideInSearch && r.dataIndex && (r.valueType || r.customRenderFormItem) && !oe.includes(r.valueType))) == null ? void 0 : l.sort((r, d) => {
|
|
180
|
+
let n = re(r.order);
|
|
176
181
|
return re(d.order) - n;
|
|
177
|
-
})) == null ? void 0 : a.map((
|
|
178
|
-
const d =
|
|
179
|
-
...
|
|
182
|
+
})) == null ? void 0 : a.map((r) => {
|
|
183
|
+
const d = We(r, je(r.fieldProps, {})), n = {
|
|
184
|
+
...r,
|
|
180
185
|
fieldProps: {
|
|
181
|
-
label:
|
|
182
|
-
name:
|
|
186
|
+
label: r.title,
|
|
187
|
+
name: r.dataIndex,
|
|
183
188
|
...d || {},
|
|
184
|
-
_signal:
|
|
189
|
+
_signal: I
|
|
185
190
|
},
|
|
186
191
|
renderNode: void 0
|
|
187
192
|
};
|
|
188
|
-
return n.renderNode =
|
|
193
|
+
return n.renderNode = _e(n, t(K)), n;
|
|
189
194
|
})) || [];
|
|
190
|
-
}),
|
|
195
|
+
}), fe = s(() => te(t(u), (e) => {
|
|
191
196
|
if (e.sorter === !0)
|
|
192
197
|
return e.key || e.dataIndex;
|
|
193
|
-
}).filter(Boolean)),
|
|
198
|
+
}).filter(Boolean)), pe = s(() => te(t(u), (e) => {
|
|
194
199
|
if (e.filters && !e.onFilter)
|
|
195
200
|
return e.key || e.dataIndex;
|
|
196
|
-
}).filter(Boolean)), me = s(() =>
|
|
197
|
-
rowSelection:
|
|
201
|
+
}).filter(Boolean)), me = s(() => y(o.dataSource) ? g.records : o.dataSource), {
|
|
202
|
+
rowSelection: v,
|
|
198
203
|
selectedRows: T,
|
|
199
204
|
...F
|
|
200
205
|
} = Xe({
|
|
@@ -204,85 +209,85 @@ const ko = /* @__PURE__ */ ze({
|
|
|
204
209
|
dataSource: me
|
|
205
210
|
}), {
|
|
206
211
|
formRef: z,
|
|
207
|
-
submit:
|
|
208
|
-
reset:
|
|
209
|
-
tableProps:
|
|
212
|
+
submit: $,
|
|
213
|
+
reset: W,
|
|
214
|
+
tableProps: j,
|
|
210
215
|
refresh: ye,
|
|
211
|
-
data:
|
|
216
|
+
data: g,
|
|
212
217
|
setDataSource: ge,
|
|
213
218
|
getColumnSFConfig: be
|
|
214
219
|
} = De({
|
|
215
220
|
async request(e) {
|
|
216
|
-
var a,
|
|
217
|
-
if (!
|
|
221
|
+
var a, r;
|
|
222
|
+
if (!v.value.preserveSelectedRowKeys && y(o.dataSource) && F.clearAll(), !y(o.dataSource))
|
|
218
223
|
return {
|
|
219
224
|
data: o.dataSource || [],
|
|
220
225
|
total: o.dataSource.length || 0
|
|
221
226
|
};
|
|
222
|
-
const
|
|
223
|
-
return (
|
|
224
|
-
data: (
|
|
225
|
-
total: (
|
|
227
|
+
const l = await ((a = o.request) == null ? void 0 : a.call(o, e));
|
|
228
|
+
return (r = o.onLoad) == null || r.call(o, (l == null ? void 0 : l.data) || []), {
|
|
229
|
+
data: (l == null ? void 0 : l.data) || [],
|
|
230
|
+
total: (l == null ? void 0 : l.total) || 0
|
|
226
231
|
};
|
|
227
232
|
},
|
|
228
|
-
filterFields:
|
|
229
|
-
sortFields:
|
|
233
|
+
filterFields: pe,
|
|
234
|
+
sortFields: fe,
|
|
230
235
|
defaultParams: o.params,
|
|
231
236
|
defaultData: o.defaultData,
|
|
232
237
|
manual: o.manual,
|
|
233
238
|
formatParams: o.beforeSearchSubmit,
|
|
234
239
|
pagination: o.pagination
|
|
235
|
-
}),
|
|
240
|
+
}), Se = () => {
|
|
236
241
|
var a;
|
|
237
|
-
let e = ((a = o.columns) == null ? void 0 : a.filter((
|
|
238
|
-
function
|
|
239
|
-
return
|
|
240
|
-
resizable:
|
|
241
|
-
...ae(
|
|
242
|
+
let e = ((a = o.columns) == null ? void 0 : a.filter((r) => !r.hideInTable)) || [];
|
|
243
|
+
function l(r, d) {
|
|
244
|
+
return r.map((n) => ({
|
|
245
|
+
resizable: Ye(n.resizable) ? n.resizable : o.columnResizable,
|
|
246
|
+
...ae(He(n), ["ellipsis"]),
|
|
242
247
|
...be(n),
|
|
243
248
|
fixed: d ? d.fixed : n.fixed,
|
|
244
|
-
title:
|
|
249
|
+
title: Ue(n, E("table-header", "title"), C.headerCell, t(se).colorPrimary),
|
|
245
250
|
customRender({
|
|
246
|
-
value:
|
|
247
|
-
...
|
|
251
|
+
value: c,
|
|
252
|
+
...b
|
|
248
253
|
}) {
|
|
249
|
-
var
|
|
250
|
-
const
|
|
254
|
+
var q, M;
|
|
255
|
+
const H = qe(n), Be = Me({
|
|
251
256
|
...n,
|
|
252
|
-
valueType:
|
|
257
|
+
valueType: H
|
|
253
258
|
}, {
|
|
254
|
-
value:
|
|
255
|
-
...
|
|
256
|
-
}),
|
|
257
|
-
value:
|
|
258
|
-
...
|
|
259
|
-
})) ||
|
|
260
|
-
value:
|
|
261
|
-
...
|
|
262
|
-
})]) :
|
|
263
|
-
let
|
|
264
|
-
return n.customRender && (
|
|
265
|
-
value:
|
|
266
|
-
...
|
|
259
|
+
value: c,
|
|
260
|
+
...b
|
|
261
|
+
}), xe = Ge(H, Be, b.record, t(K)), U = ((q = n.renderText) == null ? void 0 : q.call(n, {
|
|
262
|
+
value: c,
|
|
263
|
+
...b
|
|
264
|
+
})) || c, ke = n.renderText ? f(G, null, [(M = n.renderText) == null ? void 0 : M.call(n, {
|
|
265
|
+
value: c,
|
|
266
|
+
...b
|
|
267
|
+
})]) : xe;
|
|
268
|
+
let P = Ce(n, U, ke);
|
|
269
|
+
return n.customRender && (P = n.customRender({
|
|
270
|
+
value: c,
|
|
271
|
+
...b,
|
|
267
272
|
column: n,
|
|
268
|
-
originalNode:
|
|
273
|
+
originalNode: P,
|
|
269
274
|
originalText: U
|
|
270
|
-
})),
|
|
275
|
+
})), P;
|
|
271
276
|
},
|
|
272
|
-
children:
|
|
277
|
+
children: l(n.children || [], d || n)
|
|
273
278
|
}));
|
|
274
279
|
}
|
|
275
|
-
return
|
|
280
|
+
return l(e);
|
|
276
281
|
};
|
|
277
282
|
Ne(() => {
|
|
278
|
-
const e =
|
|
279
|
-
u.value = e,
|
|
283
|
+
const e = Se();
|
|
284
|
+
u.value = e, A.value = e;
|
|
280
285
|
});
|
|
281
|
-
const
|
|
282
|
-
var
|
|
283
|
-
if (o.adaptive && (
|
|
286
|
+
const he = s(() => {
|
|
287
|
+
var l, a;
|
|
288
|
+
if (o.adaptive && (g.total > 0 || ((l = o.dataSource) == null ? void 0 : l.length)))
|
|
284
289
|
return {
|
|
285
|
-
y:
|
|
290
|
+
y: t(ue),
|
|
286
291
|
x: ((a = o.scroll) == null ? void 0 : a.x) || "100%"
|
|
287
292
|
};
|
|
288
293
|
if (o.scroll)
|
|
@@ -291,29 +296,26 @@ const ko = /* @__PURE__ */ ze({
|
|
|
291
296
|
var e;
|
|
292
297
|
if (o.tableLayout)
|
|
293
298
|
return o.tableLayout;
|
|
294
|
-
if ((e = o.columns) != null && e.some((
|
|
299
|
+
if ((e = o.columns) != null && e.some((l) => l.ellipsis))
|
|
295
300
|
return "fixed";
|
|
296
|
-
}),
|
|
301
|
+
}), _ = s(() => {
|
|
297
302
|
var a;
|
|
298
|
-
const e =
|
|
303
|
+
const e = t(j), l = t(v);
|
|
299
304
|
return {
|
|
300
305
|
...o,
|
|
301
306
|
...e,
|
|
302
307
|
rowSelection: o.rowSelection === !0 || ((a = o.rowSelection) == null ? void 0 : a.mode) === "internal" ? {
|
|
303
|
-
...
|
|
308
|
+
...l,
|
|
304
309
|
// tips 如果是前端分页,则默认会走缓存
|
|
305
|
-
preserveSelectedRowKeys:
|
|
310
|
+
preserveSelectedRowKeys: y(o.dataSource) ? l.preserveSelectedRowKeys : !0
|
|
306
311
|
} : Je(o.rowSelection),
|
|
307
|
-
loading:
|
|
312
|
+
loading: y(o.loading) ? e.loading : o.loading,
|
|
308
313
|
pagination: o.pagination === !1 ? !1 : e.pagination,
|
|
309
|
-
scroll:
|
|
314
|
+
scroll: t(he)
|
|
310
315
|
};
|
|
311
|
-
}), Re = s(() => {
|
|
312
|
-
|
|
313
|
-
return
|
|
314
|
-
});
|
|
315
|
-
function ve(e, t, a) {
|
|
316
|
-
return oe.includes(e.valueType) ? a : e.copyable || e.ellipsis ? m(ro, {
|
|
316
|
+
}), Re = s(() => [i(), o.card ? null : i("wrapper"), o.adaptive ? i("adaptive") : null, V ? de(`sticky-${oo === 0 ? "absolute" : "relative"}`) : null].filter(Boolean));
|
|
317
|
+
function Ce(e, l, a) {
|
|
318
|
+
return oe.includes(e.valueType) ? a : e.copyable || e.ellipsis ? f(to, {
|
|
317
319
|
copyable: e.copyable,
|
|
318
320
|
ellipsis: e.ellipsis ? $e(e.ellipsis) ? {
|
|
319
321
|
tooltip: a,
|
|
@@ -325,62 +327,55 @@ const ko = /* @__PURE__ */ ze({
|
|
|
325
327
|
content: a
|
|
326
328
|
}, null) : a;
|
|
327
329
|
}
|
|
328
|
-
|
|
329
|
-
var
|
|
330
|
-
(
|
|
331
|
-
}),
|
|
332
|
-
var e;
|
|
333
|
-
$.value = (e = A.value) == null ? void 0 : e.querySelector(".ant-table-container > div:last-child");
|
|
334
|
-
}, {
|
|
335
|
-
flush: "post",
|
|
336
|
-
immediate: !0,
|
|
337
|
-
deep: !0
|
|
338
|
-
}), I(() => o.dataSource, (e) => {
|
|
330
|
+
J(() => t(g).loading, (e) => {
|
|
331
|
+
var l;
|
|
332
|
+
(l = o.onLoadingChange) == null || l.call(o, e);
|
|
333
|
+
}), J(() => o.dataSource, (e) => {
|
|
339
334
|
ge(e);
|
|
340
335
|
}, {
|
|
341
336
|
immediate: !0
|
|
342
337
|
});
|
|
343
|
-
function
|
|
344
|
-
var
|
|
345
|
-
(
|
|
338
|
+
function ve(e) {
|
|
339
|
+
var l, a, r;
|
|
340
|
+
(r = (a = (l = z.value) == null ? void 0 : l.apForm) == null ? void 0 : a.setFieldsValue) == null || r.call(a, e);
|
|
346
341
|
}
|
|
347
342
|
function Te(e = !1) {
|
|
348
|
-
var a,
|
|
349
|
-
const
|
|
350
|
-
return (d = (
|
|
343
|
+
var a, r, d;
|
|
344
|
+
const l = e ? "getFieldsValueTransformed" : "getFieldsValue";
|
|
345
|
+
return (d = (r = (a = z.value) == null ? void 0 : a.apForm) == null ? void 0 : r[l]) == null ? void 0 : d.call(r, !0);
|
|
351
346
|
}
|
|
352
347
|
function Fe() {
|
|
353
|
-
return
|
|
348
|
+
return t(u);
|
|
354
349
|
}
|
|
355
350
|
return ne({
|
|
356
|
-
submit: () =>
|
|
357
|
-
reset: () =>
|
|
351
|
+
submit: () => $(),
|
|
352
|
+
reset: () => W(),
|
|
358
353
|
refresh: () => ye(),
|
|
359
|
-
setSearchFormValues:
|
|
354
|
+
setSearchFormValues: ve,
|
|
360
355
|
getSearchFormValues: Te,
|
|
361
356
|
getShownColumns: Fe,
|
|
362
|
-
dataSource: s(() =>
|
|
357
|
+
dataSource: s(() => t(g).records),
|
|
363
358
|
rowSelection: {
|
|
364
|
-
selectedRows: s(() =>
|
|
359
|
+
selectedRows: s(() => t(T)),
|
|
365
360
|
...F
|
|
366
361
|
}
|
|
367
|
-
}), (e,
|
|
368
|
-
ref_key: "
|
|
369
|
-
ref:
|
|
370
|
-
class:
|
|
371
|
-
}, [
|
|
362
|
+
}), (e, l) => (p(), B("div", {
|
|
363
|
+
ref_key: "tableWrapperRef",
|
|
364
|
+
ref: O,
|
|
365
|
+
class: m(Re.value)
|
|
366
|
+
}, [t(y)(e.dataSource) && e.searchForm !== !1 && D.value.length > 0 ? (p(), B("div", {
|
|
372
367
|
key: 0,
|
|
373
|
-
class:
|
|
368
|
+
class: m(e.card ? t(x)("search-wrapper") : null),
|
|
374
369
|
style: Q(e.searchFormWrapperStyle)
|
|
375
|
-
}, [
|
|
370
|
+
}, [f(t(Ae).SearchForm, h(e.searchForm || {}, {
|
|
376
371
|
ref_key: "formRef",
|
|
377
372
|
ref: z,
|
|
378
373
|
"custom-reset": "",
|
|
379
|
-
"submit-loading":
|
|
380
|
-
onSubmit:
|
|
381
|
-
onReset:
|
|
374
|
+
"submit-loading": t(j).loading,
|
|
375
|
+
onSubmit: t($),
|
|
376
|
+
onReset: t(W)
|
|
382
377
|
}), X({
|
|
383
|
-
default: w(() => [(
|
|
378
|
+
default: w(() => [(p(!0), B(G, null, Y(D.value, (a) => (p(), Z(Ie(a.renderNode.Comp), h({
|
|
384
379
|
key: a.dataIndex,
|
|
385
380
|
item: a,
|
|
386
381
|
ref_for: !0
|
|
@@ -389,66 +384,70 @@ const ko = /* @__PURE__ */ ze({
|
|
|
389
384
|
"custom-render": a.renderNode.render
|
|
390
385
|
}), null, 16, ["item", "span", "custom-render"]))), 128))]),
|
|
391
386
|
_: 2
|
|
392
|
-
}, [
|
|
387
|
+
}, [C.searchFormExtra ? {
|
|
393
388
|
name: "extra",
|
|
394
389
|
fn: w(() => [R(e.$slots, "searchFormExtra")]),
|
|
395
390
|
key: "0"
|
|
396
|
-
} : void 0]), 1040, ["submit-loading", "onSubmit", "onReset"])], 6)) : ee("", !0),
|
|
391
|
+
} : void 0]), 1040, ["submit-loading", "onSubmit", "onReset"])], 6)) : ee("", !0), N("div", {
|
|
397
392
|
ref_key: "contentRef",
|
|
398
|
-
ref:
|
|
399
|
-
class:
|
|
393
|
+
ref: ie,
|
|
394
|
+
class: m([t(x)("table-wrapper"), e.card ? t(x)("table-wrapper-card") : null]),
|
|
400
395
|
style: Q(e.tableWrapperStyle)
|
|
401
|
-
}, [
|
|
402
|
-
class:
|
|
403
|
-
}, [e.settings ? (
|
|
396
|
+
}, [N("div", {
|
|
397
|
+
class: m(t(i)("header-wrapper"))
|
|
398
|
+
}, [e.settings ? (p(), B("div", {
|
|
404
399
|
key: 0,
|
|
405
|
-
class:
|
|
406
|
-
}, [
|
|
407
|
-
class:
|
|
408
|
-
}, [R(e.$slots, "title",
|
|
409
|
-
selectedRows:
|
|
410
|
-
selectedRowKeys:
|
|
400
|
+
class: m(t(i)("header"))
|
|
401
|
+
}, [N("div", {
|
|
402
|
+
class: m(t(E)("header", "title"))
|
|
403
|
+
}, [R(e.$slots, "title", h({
|
|
404
|
+
selectedRows: t(T),
|
|
405
|
+
selectedRowKeys: t(v).selectedRowKeys,
|
|
411
406
|
shownColumns: u.value
|
|
412
|
-
}, F))], 2),
|
|
407
|
+
}, F))], 2), C.title ? (p(), Z(t(Oe), {
|
|
413
408
|
key: 0,
|
|
414
409
|
type: "vertical"
|
|
415
|
-
})) : ee("", !0),
|
|
410
|
+
})) : ee("", !0), f(lo, {
|
|
416
411
|
config: e.settings === !0 ? {} : e.settings
|
|
417
|
-
}, null, 8, ["config"])], 2)) : R(e.$slots, "title",
|
|
412
|
+
}, null, 8, ["config"])], 2)) : R(e.$slots, "title", h({
|
|
418
413
|
key: 1,
|
|
419
|
-
selectedRows:
|
|
420
|
-
selectedRowKeys:
|
|
414
|
+
selectedRows: t(T),
|
|
415
|
+
selectedRowKeys: t(v).selectedRowKeys,
|
|
421
416
|
shownColumns: u.value
|
|
422
|
-
}, F))], 2),
|
|
423
|
-
|
|
424
|
-
|
|
417
|
+
}, F))], 2), f(t(Le), h({
|
|
418
|
+
ref_key: "antdTableRef",
|
|
419
|
+
ref: L,
|
|
420
|
+
class: t(i)("table")
|
|
421
|
+
}, _.value, {
|
|
425
422
|
size: k.value,
|
|
426
423
|
"table-layout": we.value,
|
|
427
424
|
columns: u.value,
|
|
428
|
-
onResizeColumn:
|
|
425
|
+
onResizeColumn: l[0] || (l[0] = (a, r) => r.width = a)
|
|
429
426
|
}), X({
|
|
430
427
|
summary: w(() => [R(e.$slots, "summary", {
|
|
431
428
|
columns: u.value,
|
|
432
|
-
records:
|
|
433
|
-
selectedRows:
|
|
429
|
+
records: _.value.dataSource,
|
|
430
|
+
selectedRows: t(T)
|
|
434
431
|
})]),
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
432
|
+
_: 2
|
|
433
|
+
}, [t(V) ? {
|
|
434
|
+
name: "bottomPaginationTop",
|
|
435
|
+
fn: w(() => {
|
|
436
|
+
var a, r;
|
|
437
|
+
return [f(t(no), {
|
|
438
438
|
ref_key: "scrollBarRef",
|
|
439
|
-
ref:
|
|
440
|
-
"scroll-container":
|
|
441
|
-
direction: "horizontal"
|
|
442
|
-
|
|
443
|
-
}, null, 8, ["scroll-container", "extra-size"])];
|
|
439
|
+
ref: ce,
|
|
440
|
+
"scroll-container": (r = (a = L.value) == null ? void 0 : a.table) == null ? void 0 : r.scrollBodyRef,
|
|
441
|
+
direction: "horizontal"
|
|
442
|
+
}, null, 8, ["scroll-container"])];
|
|
444
443
|
}),
|
|
445
|
-
|
|
446
|
-
},
|
|
447
|
-
name:
|
|
448
|
-
fn: w((d) => [R(e.$slots,
|
|
444
|
+
key: "0"
|
|
445
|
+
} : void 0, Y(t(ae)(C, ["title", "searchFormExtra", "headerCell", "summary"]), (a, r) => ({
|
|
446
|
+
name: r,
|
|
447
|
+
fn: w((d) => [R(e.$slots, r, Ee(Ke(d || {})))])
|
|
449
448
|
}))]), 1040, ["class", "size", "table-layout", "columns"])], 6)], 2));
|
|
450
449
|
}
|
|
451
450
|
});
|
|
452
451
|
export {
|
|
453
|
-
|
|
452
|
+
No as default
|
|
454
453
|
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ScrollBarExpose } from '../../scroll-bar';
|
|
2
|
+
import { Ref, ComputedRef } from 'vue';
|
|
3
|
+
export declare const useStickyScroll: (tableWrapper: Ref<HTMLElement | undefined>) => {
|
|
4
|
+
isStickyMode: ComputedRef<boolean>;
|
|
5
|
+
scrollBarRef: Ref<ScrollBarExpose | undefined, ScrollBarExpose | undefined>;
|
|
6
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ref as o, computed as e } from "vue";
|
|
2
|
+
const i = "ap-table--sticky", r = (t) => {
|
|
3
|
+
const c = o();
|
|
4
|
+
return {
|
|
5
|
+
isStickyMode: e(
|
|
6
|
+
() => {
|
|
7
|
+
var s;
|
|
8
|
+
return ((s = t.value) == null ? void 0 : s.classList.contains(i)) || !1;
|
|
9
|
+
}
|
|
10
|
+
),
|
|
11
|
+
scrollBarRef: c
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export {
|
|
15
|
+
r as useStickyScroll
|
|
16
|
+
};
|
|
@@ -5,7 +5,7 @@ import { parseFieldValue as ae, dataIndexToStr as se, isEqualCustom as ce } from
|
|
|
5
5
|
import { isArray as N, isEqualWith as ie } from "lodash-unified";
|
|
6
6
|
import { useLocale as le } from "../../config-provider/hooks/use-locale.mjs";
|
|
7
7
|
import { useNamespace as ue } from "../../config-provider/hooks/use-namespace.mjs";
|
|
8
|
-
const S = 1, L =
|
|
8
|
+
const S = 1, L = 10;
|
|
9
9
|
function fe(g) {
|
|
10
10
|
const l = {};
|
|
11
11
|
return g && (g === !0 ? (l.current = S, l.pageSize = L) : (l.current = g.defaultCurrent || S, l.pageSize = g.defaultPageSize || L)), l;
|
|
@@ -4,6 +4,7 @@ declare const _default: DefineComponent<ScrollBarProps, {
|
|
|
4
4
|
currentScroll: ComputedRef<number | undefined>;
|
|
5
5
|
scroll: ((percent: number) => void) | undefined;
|
|
6
6
|
visible: ComputedRef<boolean>;
|
|
7
|
+
rootElement: ComputedRef<HTMLElement | undefined>;
|
|
7
8
|
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ScrollBarProps> & Readonly<{}>, {
|
|
8
9
|
disabled: boolean;
|
|
9
10
|
direction: ScrollBarDirection;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { defineComponent as g, toRef as x, ref as
|
|
1
|
+
import { defineComponent as g, toRef as x, ref as p, watchEffect as _, unref as a, watch as k, computed as s, openBlock as C, createBlock as B, mergeProps as L, createCommentVNode as R } from "vue";
|
|
2
2
|
import "./internal.vue2.mjs";
|
|
3
3
|
import { omit as w } from "lodash-unified";
|
|
4
|
-
import { getScrollable as
|
|
4
|
+
import { getScrollable as u, ensureRangeValue as y } from "./utils/index.mjs";
|
|
5
5
|
import { useResizeObserver as E } from "@vueuse/core";
|
|
6
6
|
import N from "./internal.vue.mjs";
|
|
7
7
|
const j = /* @__PURE__ */ g({
|
|
@@ -25,18 +25,18 @@ const j = /* @__PURE__ */ g({
|
|
|
25
25
|
onScrollEnd: {}
|
|
26
26
|
},
|
|
27
27
|
setup(S, { expose: m }) {
|
|
28
|
-
var
|
|
29
|
-
const r = S, o = x(r, "scrollContainer"), l =
|
|
28
|
+
var d;
|
|
29
|
+
const r = S, o = x(r, "scrollContainer"), l = p(), n = p(r.barLength);
|
|
30
30
|
function v() {
|
|
31
31
|
if (!o.value || !l.value) return;
|
|
32
|
-
const { totalSize: e, visibleSize: t, distance:
|
|
32
|
+
const { totalSize: e, visibleSize: t, distance: c } = u(
|
|
33
33
|
o.value,
|
|
34
34
|
r.direction
|
|
35
|
-
),
|
|
36
|
-
l.value.scroll(
|
|
35
|
+
), i = c / (e + r.extraSize - t || 1) * 100;
|
|
36
|
+
l.value.scroll(i);
|
|
37
37
|
}
|
|
38
|
-
function
|
|
39
|
-
const { visibleSize: e, totalSize: t } =
|
|
38
|
+
function f() {
|
|
39
|
+
const { visibleSize: e, totalSize: t } = u(
|
|
40
40
|
o.value,
|
|
41
41
|
r.direction
|
|
42
42
|
);
|
|
@@ -45,11 +45,11 @@ const j = /* @__PURE__ */ g({
|
|
|
45
45
|
);
|
|
46
46
|
}
|
|
47
47
|
E(o, () => {
|
|
48
|
-
|
|
48
|
+
f();
|
|
49
49
|
}), _(
|
|
50
50
|
() => {
|
|
51
|
-
const e =
|
|
52
|
-
e && (
|
|
51
|
+
const e = a(o.value);
|
|
52
|
+
e && (f(), e.addEventListener("scroll", v));
|
|
53
53
|
},
|
|
54
54
|
{ flush: "post" }
|
|
55
55
|
), k(
|
|
@@ -59,28 +59,32 @@ const j = /* @__PURE__ */ g({
|
|
|
59
59
|
}
|
|
60
60
|
);
|
|
61
61
|
function b(e) {
|
|
62
|
-
const t =
|
|
62
|
+
const t = a(o);
|
|
63
63
|
if (!t) return;
|
|
64
|
-
const { totalSize:
|
|
64
|
+
const { totalSize: c, visibleSize: i, topOrLeft: h } = u(
|
|
65
65
|
t,
|
|
66
66
|
r.direction
|
|
67
67
|
);
|
|
68
|
-
if (
|
|
68
|
+
if (c <= i) return;
|
|
69
69
|
const z = `scroll${h}`;
|
|
70
|
-
t[z] = e * (
|
|
70
|
+
t[z] = e * (c + r.extraSize - i) / 100;
|
|
71
71
|
}
|
|
72
72
|
return m({
|
|
73
|
-
currentScroll:
|
|
73
|
+
currentScroll: s(() => {
|
|
74
74
|
var e;
|
|
75
|
-
return
|
|
75
|
+
return a((e = l.value) == null ? void 0 : e.currentScroll);
|
|
76
76
|
}),
|
|
77
|
-
scroll: (
|
|
78
|
-
visible:
|
|
77
|
+
scroll: (d = l.value) == null ? void 0 : d.scroll,
|
|
78
|
+
visible: s(() => n.value < 100),
|
|
79
|
+
rootElement: s(() => {
|
|
80
|
+
var e;
|
|
81
|
+
return a((e = l.value) == null ? void 0 : e.container);
|
|
82
|
+
})
|
|
79
83
|
}), (e, t) => n.value !== 100 ? (C(), B(N, L({
|
|
80
84
|
key: 0,
|
|
81
85
|
ref_key: "barRef",
|
|
82
86
|
ref: l
|
|
83
|
-
},
|
|
87
|
+
}, a(w)(r, ["onScroll", "extraSize", "scrollContainer"]), {
|
|
84
88
|
"bar-length": n.value,
|
|
85
89
|
onScroll: b
|
|
86
90
|
}), null, 16, ["bar-length"])) : R("", !0);
|
|
@@ -64,5 +64,6 @@ export interface InternalScrollBarExpose {
|
|
|
64
64
|
scroll: (percent: number) => void;
|
|
65
65
|
}
|
|
66
66
|
export type ScrollBarExpose = Pick<InternalScrollBarExpose, 'scroll' | 'currentScroll'> & {
|
|
67
|
-
visible
|
|
67
|
+
visible: Ref<boolean>;
|
|
68
|
+
rootElement: Ref<HTMLElement>;
|
|
68
69
|
};
|
package/es/src/utils/index.mjs
CHANGED
|
@@ -50,7 +50,7 @@ function C() {
|
|
|
50
50
|
}
|
|
51
51
|
function R() {
|
|
52
52
|
if (!a)
|
|
53
|
-
return
|
|
53
|
+
return 15;
|
|
54
54
|
const t = document.createElement("div");
|
|
55
55
|
t.style.width = "100px", t.style.height = "100px", t.style.overflow = "scroll", t.style.position = "absolute", t.style.top = "-9999px", document.body.appendChild(t);
|
|
56
56
|
const e = t.offsetHeight - t.clientHeight;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),L=require("@aplus-frontend/antdv"),fe=require("@aplus-frontend/antdv/es/theme/internal"),pe=require("../ap-form/index.js"),A=require("./constants.js");require("../config-provider/index.js");const me=require("./hooks/use-table-paging-ng.js"),c=require("lodash-unified"),s=require("./utils.js"),ge=require("./hooks/use-table-content-height.js"),ye=require("./hooks/use-table-row-selection.js"),U=require("../utils/index.js");require("./components/setting/modal/index.vue.js");require("./components/paragraph-ellipsis/index.vue.js");const be=require("./context.js");require("../scroll-bar/index.js");const he=require("../config-provider/hooks/use-namespace.js"),Se=require("../config-provider/hooks/use-global-config.js"),we=require("./components/paragraph-ellipsis/index.vue2.js"),ve=require("./components/setting/modal/index.vue2.js"),Ce=require("../scroll-bar/index.vue.js"),Re=e.defineComponent({name:"ApTable",__name:"ap-table",props:{dropdownPrefixCls:{},loading:{type:[Boolean,Object],default:void 0},bordered:{type:Boolean,default:!1},locale:{},onChange:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{default:()=>["ascend","descend"]},showSorterTooltip:{type:[Boolean,Object],default:!1},prefixCls:{},rowKey:{default:"key"},tableLayout:{},rowClassName:{},title:{},footer:{},id:{},showHeader:{type:Boolean,default:!0},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean],default:!1},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean,default:!1},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean,default:!1},indentSize:{default:15},expandIconColumnIndex:{},showExpandColumn:{type:Boolean,default:!0},expandedRowClassName:{},childrenColumnName:{default:"children"},rowExpandable:{},sticky:{type:[Boolean,Object]},transformCellText:{},columns:{},rowSelection:{type:[Boolean,Object]},card:{type:Boolean,default:!1},params:{},searchFormRender:{},request:{},onLoad:{},defaultData:{},dataSource:{},onLoadingChange:{},searchForm:{type:[Boolean,Object],default:void 0},beforeSearchSubmit:{},pagination:{type:[Boolean,Object],default:void 0},searchFormWrapperStyle:{},tableWrapperStyle:{},manual:{type:Boolean,default:!1},size:{default:"middle"},adaptive:{type:Boolean,default:!1},columnResizable:{type:Boolean,default:!1},settings:{type:[Boolean,Object],default:void 0}},setup(D,{expose:j}){const t=D;let x=0;const $=U.getScrollbarSize(),g=e.useSlots(),[,W]=fe.useToken(),{e:S,b:i,be:B,bm:H}=he.useNamespace("ap-table"),T=Se.useGlobalConfig("valueTypeMap"),{height:M,contentRef:G}=ge.default(),w=e.ref(t.size),d=e.ref([]),F=e.ref([]),k=e.ref(),z=e.ref(),N=e.ref();be.useProvideApTable({columns:e.computed(()=>d.value),columnsBackup:e.computed(()=>F.value),size:e.computed(()=>w.value),updateColumns(r){d.value=r},updateSize(r){w.value=r},dataSource:e.computed(()=>e.unref(f).records)});const q=e.computed(()=>{var r,a,o;return x++,((o=(a=(r=t.columns)==null?void 0:r.filter(n=>!n.hideInSearch&&n.dataIndex&&(n.valueType||n.customRenderFormItem)&&!A.noRenderAsFormItemValueList.includes(n.valueType)))==null?void 0:a.sort((n,u)=>{let l=s.getColumnOrder(n.order);return s.getColumnOrder(u.order)-l}))==null?void 0:o.map(n=>{const u=s.updateFormProps(n,s.getFieldProps(n.fieldProps,{})),l={...n,fieldProps:{label:n.title,name:n.dataIndex,...u||{},_signal:x},renderNode:void 0};return l.renderNode=s.getSearchFormItemRenderNode(l,e.unref(T)),l}))||[]}),J=e.computed(()=>s.recursionApColumns(e.unref(d),r=>{if(r.sorter===!0)return r.key||r.dataIndex}).filter(Boolean)),Q=e.computed(()=>s.recursionApColumns(e.unref(d),r=>{if(r.filters&&!r.onFilter)return r.key||r.dataIndex}).filter(Boolean)),X=e.computed(()=>c.isUndefined(t.dataSource)?f.records:t.dataSource),{rowSelection:y,selectedRows:b,...h}=ye.default({fixed:!0,...t.rowSelection===!0?{}:t.rowSelection,rowKey:t.rowKey,dataSource:X}),{formRef:v,submit:P,reset:_,tableProps:V,refresh:Y,data:f,setDataSource:Z,getColumnSFConfig:ee}=me.useTablePaging({async request(r){var o,n;if(!y.value.preserveSelectedRowKeys&&c.isUndefined(t.dataSource)&&h.clearAll(),!c.isUndefined(t.dataSource))return{data:t.dataSource||[],total:t.dataSource.length||0};const a=await((o=t.request)==null?void 0:o.call(t,r));return(n=t.onLoad)==null||n.call(t,(a==null?void 0:a.data)||[]),{data:(a==null?void 0:a.data)||[],total:(a==null?void 0:a.total)||0}},filterFields:Q,sortFields:J,defaultParams:t.params,defaultData:t.defaultData,manual:t.manual,formatParams:t.beforeSearchSubmit,pagination:t.pagination}),re=()=>{var o;let r=((o=t.columns)==null?void 0:o.filter(n=>!n.hideInTable))||[];function a(n,u){return n.map(l=>({resizable:U.isDef(l.resizable)?l.resizable:t.columnResizable,...c.omit(s.apColumnToColumn(l),["ellipsis"]),...ee(l),fixed:u?u.fixed:l.fixed,title:s.getTableTitle(l,B("table-header","title"),g.headerCell,e.unref(W).colorPrimary),customRender({value:p,...m}){var O,K;const E=s.getTableRenderType(l),de=s.getTableRenderProps({...l,valueType:E},{value:p,...m}),ce=s.getTableCellRenderNode(E,de,m.record,e.unref(T)),I=((O=l.renderText)==null?void 0:O.call(l,{value:p,...m}))||p,ie=l.renderText?e.createVNode(e.Fragment,null,[(K=l.renderText)==null?void 0:K.call(l,{value:p,...m})]):ce;let R=ne(l,I,ie);return l.customRender&&(R=l.customRender({value:p,...m,column:l,originalNode:R,originalText:I})),R},children:a(l.children||[],u||l)}))}return a(r)};e.watchEffect(()=>{const r=re();d.value=r,F.value=r});const te=e.computed(()=>{var a,o;if(t.adaptive&&(f.total>0||((a=t.dataSource)==null?void 0:a.length)))return{y:e.unref(M),x:((o=t.scroll)==null?void 0:o.x)||"100%"};if(t.scroll)return t.scroll}),oe=e.computed(()=>{var r;if(t.tableLayout)return t.tableLayout;if((r=t.columns)!=null&&r.some(a=>a.ellipsis))return"fixed"}),C=e.computed(()=>{var o;const r=e.unref(V),a=e.unref(y);return{...t,...r,rowSelection:t.rowSelection===!0||((o=t.rowSelection)==null?void 0:o.mode)==="internal"?{...a,preserveSelectedRowKeys:c.isUndefined(t.dataSource)?a.preserveSelectedRowKeys:!0}:s.falseToUndefined(t.rowSelection),loading:c.isUndefined(t.loading)?r.loading:t.loading,pagination:t.pagination===!1?!1:r.pagination,scroll:e.unref(te)}}),ae=e.computed(()=>{var r;return[i(),t.card?null:i("wrapper"),t.adaptive?i("adaptive"):null,(r=z.value)!=null&&r.visible?H("horizontal","scrollable"):null].filter(Boolean)});function ne(r,a,o){return A.noRenderAsFormItemValueList.includes(r.valueType)?o:r.copyable||r.ellipsis?e.createVNode(we.default,{copyable:r.copyable,ellipsis:r.ellipsis?c.isBoolean(r.ellipsis)?{tooltip:o,rows:1}:{...r.ellipsis,tooltip:o}:!1,content:o},null):o}e.watch(()=>e.unref(f).loading,r=>{var a;(a=t.onLoadingChange)==null||a.call(t,r)}),e.watch(()=>e.unref(f).records,()=>{var r;N.value=(r=k.value)==null?void 0:r.querySelector(".ant-table-container > div:last-child")},{flush:"post",immediate:!0,deep:!0}),e.watch(()=>t.dataSource,r=>{Z(r)},{immediate:!0});function le(r){var a,o,n;(n=(o=(a=v.value)==null?void 0:a.apForm)==null?void 0:o.setFieldsValue)==null||n.call(o,r)}function se(r=!1){var o,n,u;const a=r?"getFieldsValueTransformed":"getFieldsValue";return(u=(n=(o=v.value)==null?void 0:o.apForm)==null?void 0:n[a])==null?void 0:u.call(n,!0)}function ue(){return e.unref(d)}return j({submit:()=>P(),reset:()=>_(),refresh:()=>Y(),setSearchFormValues:le,getSearchFormValues:se,getShownColumns:ue,dataSource:e.computed(()=>e.unref(f).records),rowSelection:{selectedRows:e.computed(()=>e.unref(b)),...h}}),(r,a)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"apTableRef",ref:k,class:e.normalizeClass(ae.value)},[e.unref(c.isUndefined)(r.dataSource)&&r.searchForm!==!1&&q.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(r.card?e.unref(S)("search-wrapper"):null),style:e.normalizeStyle(r.searchFormWrapperStyle)},[e.createVNode(e.unref(pe.ApForm).SearchForm,e.mergeProps(r.searchForm||{},{ref_key:"formRef",ref:v,"custom-reset":"","submit-loading":e.unref(V).loading,onSubmit:e.unref(P),onReset:e.unref(_)}),e.createSlots({default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(q.value,o=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.renderNode.Comp),e.mergeProps({key:o.dataIndex,item:o,ref_for:!0},o.fieldProps||{},{span:o.span,"custom-render":o.renderNode.render}),null,16,["item","span","custom-render"]))),128))]),_:2},[g.searchFormExtra?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(r.$slots,"searchFormExtra")]),key:"0"}:void 0]),1040,["submit-loading","onSubmit","onReset"])],6)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"contentRef",ref:G,class:e.normalizeClass([e.unref(S)("table-wrapper"),r.card?e.unref(S)("table-wrapper-card"):null]),style:e.normalizeStyle(r.tableWrapperStyle)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(i)("header-wrapper"))},[r.settings?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(i)("header"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(B)("header","title"))},[e.renderSlot(r.$slots,"title",e.mergeProps({selectedRows:e.unref(b),selectedRowKeys:e.unref(y).selectedRowKeys,shownColumns:d.value},h))],2),g.title?(e.openBlock(),e.createBlock(e.unref(L.Divider),{key:0,type:"vertical"})):e.createCommentVNode("",!0),e.createVNode(ve.default,{config:r.settings===!0?{}:r.settings},null,8,["config"])],2)):e.renderSlot(r.$slots,"title",e.mergeProps({key:1,selectedRows:e.unref(b),selectedRowKeys:e.unref(y).selectedRowKeys,shownColumns:d.value},h))],2),e.createVNode(e.unref(L.Table),e.mergeProps({class:e.unref(i)("table")},C.value,{size:w.value,"table-layout":oe.value,columns:d.value,onResizeColumn:a[0]||(a[0]=(o,n)=>n.width=o)}),e.createSlots({summary:e.withCtx(()=>[e.renderSlot(r.$slots,"summary",{columns:d.value,records:C.value.dataSource,selectedRows:e.unref(b)})]),bottomPaginationTop:e.withCtx(()=>{var o;return[e.createVNode(e.unref(Ce.default),{ref_key:"scrollBarRef",ref:z,"scroll-container":N.value,direction:"horizontal","extra-size":(o=C.value.scroll)!=null&&o.y?e.unref($):0},null,8,["scroll-container","extra-size"])]}),_:2},[e.renderList(e.unref(c.omit)(g,["title","searchFormExtra","headerCell","summary"]),(o,n)=>({name:n,fn:e.withCtx(u=>[e.renderSlot(r.$slots,n,e.normalizeProps(e.guardReactiveProps(u||{})))])}))]),1040,["class","size","table-layout","columns"])],6)],2))}});exports.default=Re;
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),L=require("@aplus-frontend/antdv"),ie=require("@aplus-frontend/antdv/es/theme/internal"),fe=require("../ap-form/index.js"),A=require("./constants.js");require("../config-provider/index.js");const pe=require("./hooks/use-table-paging-ng.js"),c=require("lodash-unified"),s=require("./utils.js"),me=require("./hooks/use-table-content-height.js"),ye=require("./hooks/use-table-row-selection.js"),ge=require("../utils/index.js");require("./components/setting/modal/index.vue.js");require("./components/paragraph-ellipsis/index.vue.js");const Se=require("./context.js");require("../scroll-bar/index.js");const be=require("./hooks/use-sticky-scroll.js"),he=require("../config-provider/css-var.js"),we=require("../config-provider/hooks/use-namespace.js"),Ce=require("../config-provider/hooks/use-global-config.js"),ve=require("./components/paragraph-ellipsis/index.vue2.js"),Re=require("./components/setting/modal/index.vue2.js"),Be=require("../scroll-bar/index.vue.js"),ke=e.defineComponent({name:"ApTable",__name:"ap-table",props:{dropdownPrefixCls:{},loading:{type:[Boolean,Object],default:void 0},bordered:{type:Boolean,default:!1},locale:{},onChange:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{default:()=>["ascend","descend"]},showSorterTooltip:{type:[Boolean,Object],default:!1},prefixCls:{},rowKey:{default:"key"},tableLayout:{},rowClassName:{},title:{},footer:{},id:{},showHeader:{type:Boolean,default:!0},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean],default:!1},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean,default:!1},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean,default:!1},indentSize:{default:15},expandIconColumnIndex:{},showExpandColumn:{type:Boolean,default:!0},expandedRowClassName:{},childrenColumnName:{default:"children"},rowExpandable:{},sticky:{type:[Boolean,Object]},transformCellText:{},columns:{},rowSelection:{type:[Boolean,Object]},card:{type:Boolean,default:!1},params:{},searchFormRender:{},request:{},onLoad:{},defaultData:{},dataSource:{},onLoadingChange:{},searchForm:{type:[Boolean,Object],default:void 0},beforeSearchSubmit:{},pagination:{type:[Boolean,Object],default:void 0},searchFormWrapperStyle:{},tableWrapperStyle:{},manual:{type:Boolean,default:!1},size:{default:"middle"},adaptive:{type:Boolean,default:!1},columnResizable:{type:Boolean,default:!1},settings:{type:[Boolean,Object],default:void 0}},setup(U,{expose:D}){const t=U;let R=0;const y=e.useSlots(),[,$]=ie.useToken(),{e:h,b:i,be:B,m:j}=we.useNamespace("ap-table"),k=Ce.useGlobalConfig("valueTypeMap"),{height:W,contentRef:H}=me.default(),x=e.ref(),T=e.ref(),{isStickyMode:F,scrollBarRef:M}=be.useStickyScroll(x),w=e.ref(t.size),d=e.ref([]),q=e.ref([]);Se.useProvideApTable({columns:e.computed(()=>d.value),columnsBackup:e.computed(()=>q.value),size:e.computed(()=>w.value),updateColumns(r){d.value=r},updateSize(r){w.value=r},dataSource:e.computed(()=>e.unref(p).records)});const z=e.computed(()=>{var r,a,o;return R++,((o=(a=(r=t.columns)==null?void 0:r.filter(n=>!n.hideInSearch&&n.dataIndex&&(n.valueType||n.customRenderFormItem)&&!A.noRenderAsFormItemValueList.includes(n.valueType)))==null?void 0:a.sort((n,u)=>{let l=s.getColumnOrder(n.order);return s.getColumnOrder(u.order)-l}))==null?void 0:o.map(n=>{const u=s.updateFormProps(n,s.getFieldProps(n.fieldProps,{})),l={...n,fieldProps:{label:n.title,name:n.dataIndex,...u||{},_signal:R},renderNode:void 0};return l.renderNode=s.getSearchFormItemRenderNode(l,e.unref(k)),l}))||[]}),G=e.computed(()=>s.recursionApColumns(e.unref(d),r=>{if(r.sorter===!0)return r.key||r.dataIndex}).filter(Boolean)),J=e.computed(()=>s.recursionApColumns(e.unref(d),r=>{if(r.filters&&!r.onFilter)return r.key||r.dataIndex}).filter(Boolean)),Q=e.computed(()=>c.isUndefined(t.dataSource)?p.records:t.dataSource),{rowSelection:g,selectedRows:S,...b}=ye.default({fixed:!0,...t.rowSelection===!0?{}:t.rowSelection,rowKey:t.rowKey,dataSource:Q}),{formRef:C,submit:N,reset:P,tableProps:_,refresh:X,data:p,setDataSource:Y,getColumnSFConfig:Z}=pe.useTablePaging({async request(r){var o,n;if(!g.value.preserveSelectedRowKeys&&c.isUndefined(t.dataSource)&&b.clearAll(),!c.isUndefined(t.dataSource))return{data:t.dataSource||[],total:t.dataSource.length||0};const a=await((o=t.request)==null?void 0:o.call(t,r));return(n=t.onLoad)==null||n.call(t,(a==null?void 0:a.data)||[]),{data:(a==null?void 0:a.data)||[],total:(a==null?void 0:a.total)||0}},filterFields:J,sortFields:G,defaultParams:t.params,defaultData:t.defaultData,manual:t.manual,formatParams:t.beforeSearchSubmit,pagination:t.pagination}),ee=()=>{var o;let r=((o=t.columns)==null?void 0:o.filter(n=>!n.hideInTable))||[];function a(n,u){return n.map(l=>({resizable:ge.isDef(l.resizable)?l.resizable:t.columnResizable,...c.omit(s.apColumnToColumn(l),["ellipsis"]),...Z(l),fixed:u?u.fixed:l.fixed,title:s.getTableTitle(l,B("table-header","title"),y.headerCell,e.unref($).colorPrimary),customRender({value:f,...m}){var O,K;const E=s.getTableRenderType(l),ue=s.getTableRenderProps({...l,valueType:E},{value:f,...m}),de=s.getTableCellRenderNode(E,ue,m.record,e.unref(k)),I=((O=l.renderText)==null?void 0:O.call(l,{value:f,...m}))||f,ce=l.renderText?e.createVNode(e.Fragment,null,[(K=l.renderText)==null?void 0:K.call(l,{value:f,...m})]):de;let v=ne(l,I,ce);return l.customRender&&(v=l.customRender({value:f,...m,column:l,originalNode:v,originalText:I})),v},children:a(l.children||[],u||l)}))}return a(r)};e.watchEffect(()=>{const r=ee();d.value=r,q.value=r});const re=e.computed(()=>{var a,o;if(t.adaptive&&(p.total>0||((a=t.dataSource)==null?void 0:a.length)))return{y:e.unref(W),x:((o=t.scroll)==null?void 0:o.x)||"100%"};if(t.scroll)return t.scroll}),te=e.computed(()=>{var r;if(t.tableLayout)return t.tableLayout;if((r=t.columns)!=null&&r.some(a=>a.ellipsis))return"fixed"}),V=e.computed(()=>{var o;const r=e.unref(_),a=e.unref(g);return{...t,...r,rowSelection:t.rowSelection===!0||((o=t.rowSelection)==null?void 0:o.mode)==="internal"?{...a,preserveSelectedRowKeys:c.isUndefined(t.dataSource)?a.preserveSelectedRowKeys:!0}:s.falseToUndefined(t.rowSelection),loading:c.isUndefined(t.loading)?r.loading:t.loading,pagination:t.pagination===!1?!1:r.pagination,scroll:e.unref(re)}}),oe=e.computed(()=>[i(),t.card?null:i("wrapper"),t.adaptive?i("adaptive"):null,F?j(`sticky-${he.scrollbarSize===0?"absolute":"relative"}`):null].filter(Boolean));function ne(r,a,o){return A.noRenderAsFormItemValueList.includes(r.valueType)?o:r.copyable||r.ellipsis?e.createVNode(ve.default,{copyable:r.copyable,ellipsis:r.ellipsis?c.isBoolean(r.ellipsis)?{tooltip:o,rows:1}:{...r.ellipsis,tooltip:o}:!1,content:o},null):o}e.watch(()=>e.unref(p).loading,r=>{var a;(a=t.onLoadingChange)==null||a.call(t,r)}),e.watch(()=>t.dataSource,r=>{Y(r)},{immediate:!0});function ae(r){var a,o,n;(n=(o=(a=C.value)==null?void 0:a.apForm)==null?void 0:o.setFieldsValue)==null||n.call(o,r)}function le(r=!1){var o,n,u;const a=r?"getFieldsValueTransformed":"getFieldsValue";return(u=(n=(o=C.value)==null?void 0:o.apForm)==null?void 0:n[a])==null?void 0:u.call(n,!0)}function se(){return e.unref(d)}return D({submit:()=>N(),reset:()=>P(),refresh:()=>X(),setSearchFormValues:ae,getSearchFormValues:le,getShownColumns:se,dataSource:e.computed(()=>e.unref(p).records),rowSelection:{selectedRows:e.computed(()=>e.unref(S)),...b}}),(r,a)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"tableWrapperRef",ref:x,class:e.normalizeClass(oe.value)},[e.unref(c.isUndefined)(r.dataSource)&&r.searchForm!==!1&&z.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(r.card?e.unref(h)("search-wrapper"):null),style:e.normalizeStyle(r.searchFormWrapperStyle)},[e.createVNode(e.unref(fe.ApForm).SearchForm,e.mergeProps(r.searchForm||{},{ref_key:"formRef",ref:C,"custom-reset":"","submit-loading":e.unref(_).loading,onSubmit:e.unref(N),onReset:e.unref(P)}),e.createSlots({default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,o=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.renderNode.Comp),e.mergeProps({key:o.dataIndex,item:o,ref_for:!0},o.fieldProps||{},{span:o.span,"custom-render":o.renderNode.render}),null,16,["item","span","custom-render"]))),128))]),_:2},[y.searchFormExtra?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(r.$slots,"searchFormExtra")]),key:"0"}:void 0]),1040,["submit-loading","onSubmit","onReset"])],6)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"contentRef",ref:H,class:e.normalizeClass([e.unref(h)("table-wrapper"),r.card?e.unref(h)("table-wrapper-card"):null]),style:e.normalizeStyle(r.tableWrapperStyle)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(i)("header-wrapper"))},[r.settings?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(i)("header"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(B)("header","title"))},[e.renderSlot(r.$slots,"title",e.mergeProps({selectedRows:e.unref(S),selectedRowKeys:e.unref(g).selectedRowKeys,shownColumns:d.value},b))],2),y.title?(e.openBlock(),e.createBlock(e.unref(L.Divider),{key:0,type:"vertical"})):e.createCommentVNode("",!0),e.createVNode(Re.default,{config:r.settings===!0?{}:r.settings},null,8,["config"])],2)):e.renderSlot(r.$slots,"title",e.mergeProps({key:1,selectedRows:e.unref(S),selectedRowKeys:e.unref(g).selectedRowKeys,shownColumns:d.value},b))],2),e.createVNode(e.unref(L.Table),e.mergeProps({ref_key:"antdTableRef",ref:T,class:e.unref(i)("table")},V.value,{size:w.value,"table-layout":te.value,columns:d.value,onResizeColumn:a[0]||(a[0]=(o,n)=>n.width=o)}),e.createSlots({summary:e.withCtx(()=>[e.renderSlot(r.$slots,"summary",{columns:d.value,records:V.value.dataSource,selectedRows:e.unref(S)})]),_:2},[e.unref(F)?{name:"bottomPaginationTop",fn:e.withCtx(()=>{var o,n;return[e.createVNode(e.unref(Be.default),{ref_key:"scrollBarRef",ref:M,"scroll-container":(n=(o=T.value)==null?void 0:o.table)==null?void 0:n.scrollBodyRef,direction:"horizontal"},null,8,["scroll-container"])]}),key:"0"}:void 0,e.renderList(e.unref(c.omit)(y,["title","searchFormExtra","headerCell","summary"]),(o,n)=>({name:n,fn:e.withCtx(u=>[e.renderSlot(r.$slots,n,e.normalizeProps(e.guardReactiveProps(u||{})))])}))]),1040,["class","size","table-layout","columns"])],6)],2))}});exports.default=ke;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ScrollBarExpose } from '../../scroll-bar';
|
|
2
|
+
import { Ref, ComputedRef } from 'vue';
|
|
3
|
+
export declare const useStickyScroll: (tableWrapper: Ref<HTMLElement | undefined>) => {
|
|
4
|
+
isStickyMode: ComputedRef<boolean>;
|
|
5
|
+
scrollBarRef: Ref<ScrollBarExpose | undefined, ScrollBarExpose | undefined>;
|
|
6
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),o="ap-table--sticky",i=s=>{const c=t.ref();return{isStickyMode:t.computed(()=>{var e;return((e=s.value)==null?void 0:e.classList.contains(o))||!1}),scrollBarRef:c}};exports.useStickyScroll=i;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),Y=require("./use-sorted-filtered.js");require("../../config-provider/index.js");const x=require("../utils.js"),v=require("lodash-unified"),k=require("../../config-provider/hooks/use-locale.js"),ee=require("../../config-provider/hooks/use-namespace.js"),m=1,y=
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),Y=require("./use-sorted-filtered.js");require("../../config-provider/index.js");const x=require("../utils.js"),v=require("lodash-unified"),k=require("../../config-provider/hooks/use-locale.js"),ee=require("../../config-provider/hooks/use-namespace.js"),m=1,y=10;function te(g){const l={};return g&&(g===!0?(l.current=m,l.pageSize=y):(l.current=g.defaultCurrent||m,l.pageSize=g.defaultPageSize||y)),l}const re=({manual:g=!1,request:l,defaultParams:E={},defaultData:A=[],formatParams:L,paramsValueTypeMap:V,resetFieldsIgnores:N,filterFields:U,sortFields:_,pagination:p={defaultCurrent:m,defaultPageSize:y,showLessItems:!1,showTotal:!0}})=>{let C=0,c={};const I=p??{},M=e=>L?L(e):e,T=n.ref(),i=n.reactive(te(p)),{getColumnSFConfig:B,setSF:K,clearAll:$}=Y.useTableSortedAndFiltered(),{t:z}=k.useLocale(),{b:P}=ee.useNamespace("ap-table"),a=n.reactive({total:A.length,records:A,loading:!1}),F=()=>{var e,t;return((t=(e=T.value)==null?void 0:e.apForm)==null?void 0:t.getFieldsValueTransformed(!0))||{}},D=async e=>{var o;const t=M(e),r=Date.now();C=r,a.loading=!0;try{const s=await l({...n.unref(E),...t});C===r&&(a.total=s.total||((o=s.data)==null?void 0:o.length)||0,a.records=[...s.data||[]])}catch{C===r&&(a.records=[],a.total=0)}finally{a.loading=!1}},R=e=>{const t={};return Object.entries(e).forEach(([r,o])=>{if(t[r]=o,V&&o){const s=V[r];s&&(t[r]=x.parseFieldValue(s,o))}}),t},G=async e=>{var o,s,f,d,S;const t=F(),r={};Object.entries(t).forEach(([h,w])=>{N&&N.indexOf(h)>-1&&(r[h]=w)}),await((s=(o=T.value)==null?void 0:o.apForm)==null?void 0:s.resetFields()),(S=(d=(f=T.value)==null?void 0:f.apForm)==null?void 0:d.setFieldsValue)==null||S.call(d,r),n.nextTick(()=>{e==null||e()})},b=e=>{c=e;const t=R(e);D(t)},J=e=>{b({...c,...e})},q=()=>{const e=F();p&&(i.current=m),b({...e,filter:c.filter,sort:c.sort,current:p?m:void 0,pageSize:p?c.pageSize||i.pageSize:void 0})},Q=()=>{$(),c.sort={},c.filter={},G(q)},O=()=>{b(c)},W=e=>{if(!p)O();else{const{current:t,pageSize:r}=i,o=a.total-e,s=Math.ceil(o/r),f=t>s?s:t;J({current:f>0?f:1})}},j=(e,t,r)=>{var h,w;const o=F();i.current=e.current,i.pageSize=e.pageSize,K(t,r);const s=v.isArray(r)?[...r]:[r],f={};for(const u of s)(h=n.unref(_))!=null&&h.includes(u.columnKey||u.field)&&u.order&&(f[x.dataIndexToStr(u.columnKey||u.field)]=u.order);const d={};for(const u of Object.keys(t))(w=n.unref(U))!=null&&w.includes(u)&&t[u]&&(d[u]=t[u]);const S={...o,filter:d,sort:f,current:e.current,pageSize:e.pageSize};v.isEqualWith(c,S,x.isEqualCustom)||b(S)};n.onMounted(()=>{const e=F(),{current:t,pageSize:r}=i;if(c={current:t,pageSize:r,filter:{},sort:{},...e},!g){const o=R(c);D(o)}}),n.watch(()=>n.unref(E),()=>{q()},{deep:!0});const Z=n.computed(()=>{if(a.total===0)return"-";const{current:e,pageSize:t}=i;return`${e}/${Math.ceil(a.total/t)}`});function H(e){v.isArray(e)&&(a.records=e,a.total=e.length)}const X=n.computed(()=>{const{showLessItems:e,showTotal:t}=I;return{loading:a.loading,pagination:{current:i.current,pageSize:i.pageSize,total:a.total,showSizeChanger:!e,showQuickJumper:!e,showLessItems:e,size:"default",showTotal:t?r=>n.createVNode("span",{class:P("pagination-total-wrapper")},[z("ap.apTable.pagination.totalLeftPrefix")," ",n.createVNode("span",{class:P("pagination-count-text")},[r])," ",z("ap.apTable.pagination.totalLeftSuffix"),n.createVNode("span",{class:P("pagination--total-right")},[z("ap.apTable.pagination.totalRightPrefix")," ",n.createVNode("span",{class:P("pagination-count-text")},[n.unref(Z)])," ",z("ap.apTable.pagination.totalRightSuffix")])]):void 0},onChange:j,dataSource:a.records}});return{formRef:T,submit:q,reset:Q,refresh:O,refreshByDelete:W,data:a,current:i.current,pageSize:i.pageSize,handleTableChange:j,tableProps:X,dataSource:n.computed(()=>a.records),setDataSource:H,getColumnSFConfig:B}};exports.useTablePaging=re;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("../utils/index.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("../utils/index.js"),t=d.getScrollbarSize(),F={"ap-form":{bordered:{"border-color":{base:"#DEE4ED",hover:"#66A9FF",active:"#66A9FF"},"shadow-color":"rgba(5, 155, 255, 0.1)"}},"ap-action":{color:{primary:{base:"#0070FF",hover:"#66A9FF"},success:"#2ED1A3",error:"#FF4D4F",warn:"#FFA940"}},"check-card":{outline:{color:"#E9EDF3"},hover:{outline:{color:"#0070FF"}},checked:{outline:{color:"#0070FF"},bg:"#0070FF"}},"ap-table":{header:{bg:"#F2F6F9"},pagination:{total:{color:"#526A90",count:{color:"#182948"}}},setting:{button:{color:"#8896B0"}}},"ap-batch-action":{color:{font:"#8896B0",active:"#0070FF",border:"#E9EDF3"}},basic:{color:{primary:"#0070ff"},scrollbar:{size:`${t}px`}},"ap-descriptions":{item:{"padding-bottom":"24px","label-width":"auto"},"last-row-item":{"padding-bottom":"0px"}},"ap-appendix":{area:{color:{border:"#DEE4ED",font:"#182948","font-hover":"#0070FF","font-disabled":"#ABB7CC",icon:"#ABB7CC"}}},"ap-upload-single":{color:{main:"#182948",sub:"#ABB7CC",border:"#DEE4ED",primary:"#0070FF"}},"batch-input-group":{trigger:{color:"#526a90","color-disabled":"rgba(24, 41, 72, 0.25)"}}},p={"ap-form":{bordered:{"border-color":{base:"#D9D9D9",hover:"#85D4B0",active:"#85D4B0"},"shadow-color":"rgba(11, 166, 66, 0.09)"}},"ap-action":{color:{primary:{base:"#1890FF",hover:"#5EB1FF"},success:"#52C41A",error:"#FF4D4F",warn:"#FAAD14"}},"check-card":{outline:{color:"#D9D9D9"},hover:{outline:{color:"#34B77C"}},checked:{outline:{color:"#34B77C"},bg:"#34B77C"}},"ap-table":{header:{bg:"#FAFAFA"},pagination:{total:{color:"#666666",count:{color:"#333333"}}},setting:{button:{color:"#999999"}}},"ap-batch-action":{color:{font:"#999999",active:"#34B77C",border:"#E9E9E9"}},basic:{color:{primary:"#34b77c"},scrollbar:{size:`${t}px`}},"ap-descriptions":{item:{"padding-bottom":"24px","label-width":"auto"},"last-row-item":{"padding-bottom":"0px"}},"ap-appendix":{area:{color:{border:"#D9D9D9",font:"#333333","font-hover":"#1890FF","font-disabled":"#BFBFBF",icon:"#BFBFBF"}}},"ap-upload-single":{color:{main:"#333333",sub:"#BFBFBF",border:"#D9D9D9",primary:"#34b77c"}},"batch-input-group":{trigger:{color:"#999999","color-disabled":"rgba(0, 0, 0, 0.25)"}}};function c(a){const o={};function r(i,n){const b=Object.keys(i);for(const l of b){const e=i[l],s=[...n,l];e!==null&&typeof e=="object"?r(e,s):o[`--${s.join("-")}`]=e}}return r(a,[]),o}const u=c(F),g=c(p);function m(a){Object.entries(a).forEach(([o,r])=>{document.documentElement.style.setProperty(o,r)})}exports.adminCssVar=g;exports.aplusCssVar=u;exports.generateCssVar=c;exports.scrollbarSize=t;exports.setCSSVariables=m;
|
|
@@ -4,6 +4,7 @@ declare const _default: DefineComponent<ScrollBarProps, {
|
|
|
4
4
|
currentScroll: ComputedRef<number | undefined>;
|
|
5
5
|
scroll: ((percent: number) => void) | undefined;
|
|
6
6
|
visible: ComputedRef<boolean>;
|
|
7
|
+
rootElement: ComputedRef<HTMLElement | undefined>;
|
|
7
8
|
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ScrollBarProps> & Readonly<{}>, {
|
|
8
9
|
disabled: boolean;
|
|
9
10
|
direction: ScrollBarDirection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("./internal.vue2.js");const _=require("lodash-unified"),u=require("./utils/index.js"),g=require("@vueuse/core"),m=require("./internal.vue.js"),z=e.defineComponent({name:"ScrollBar",__name:"index",props:{scrollContainer:{},extraSize:{default:0},direction:{default:"vertical"},scroll:{},barLength:{default:30},width:{},barColor:{},trackColor:{},trackWidth:{},disabled:{type:Boolean,default:!1},showTrack:{type:Boolean,default:!0},trackSpeed:{default:2},onScrollStart:{},onScroll:{},onScrollEnd:{}},setup(d,{expose:S}){var f;const t=d,o=e.toRef(t,"scrollContainer"),n=e.ref(),a=e.ref(t.barLength);function v(){if(!o.value||!n.value)return;const{totalSize:r,visibleSize:l,distance:c}=u.getScrollable(o.value,t.direction),i=c/(r+t.extraSize-l||1)*100;n.value.scroll(i)}function s(){const{visibleSize:r,totalSize:l}=u.getScrollable(o.value,t.direction);a.value=u.ensureRangeValue(r/(l+t.extraSize||1)*100)}g.useResizeObserver(o,()=>{s()}),e.watchEffect(()=>{const r=e.unref(o.value);r&&(s(),r.addEventListener("scroll",v))},{flush:"post"}),e.watch(()=>t.barLength,r=>{a.value=r});function p(r){const l=e.unref(o);if(!l)return;const{totalSize:c,visibleSize:i,topOrLeft:b}=u.getScrollable(l,t.direction);if(c<=i)return;const h=`scroll${b}`;l[h]=r*(c+t.extraSize-i)/100}return S({currentScroll:e.computed(()=>{var r;return e.unref((r=n.value)==null?void 0:r.currentScroll)}),scroll:(f=n.value)==null?void 0:f.scroll,visible:e.computed(()=>a.value<100)}),(r,l)=>a.value!==100?(e.openBlock(),e.createBlock(m.default,e.mergeProps({key:0,ref_key:"barRef",ref:n},e.unref(_.omit)(t,["onScroll","extraSize","scrollContainer"]),{"bar-length":a.value,onScroll:p}),null,16,["bar-length"])):e.createCommentVNode("",!0)}});exports.default=z;
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("./internal.vue2.js");const _=require("lodash-unified"),u=require("./utils/index.js"),g=require("@vueuse/core"),m=require("./internal.vue.js"),z=e.defineComponent({name:"ScrollBar",__name:"index",props:{scrollContainer:{},extraSize:{default:0},direction:{default:"vertical"},scroll:{},barLength:{default:30},width:{},barColor:{},trackColor:{},trackWidth:{},disabled:{type:Boolean,default:!1},showTrack:{type:Boolean,default:!0},trackSpeed:{default:2},onScrollStart:{},onScroll:{},onScrollEnd:{}},setup(d,{expose:S}){var f;const t=d,o=e.toRef(t,"scrollContainer"),n=e.ref(),a=e.ref(t.barLength);function v(){if(!o.value||!n.value)return;const{totalSize:r,visibleSize:l,distance:c}=u.getScrollable(o.value,t.direction),i=c/(r+t.extraSize-l||1)*100;n.value.scroll(i)}function s(){const{visibleSize:r,totalSize:l}=u.getScrollable(o.value,t.direction);a.value=u.ensureRangeValue(r/(l+t.extraSize||1)*100)}g.useResizeObserver(o,()=>{s()}),e.watchEffect(()=>{const r=e.unref(o.value);r&&(s(),r.addEventListener("scroll",v))},{flush:"post"}),e.watch(()=>t.barLength,r=>{a.value=r});function p(r){const l=e.unref(o);if(!l)return;const{totalSize:c,visibleSize:i,topOrLeft:b}=u.getScrollable(l,t.direction);if(c<=i)return;const h=`scroll${b}`;l[h]=r*(c+t.extraSize-i)/100}return S({currentScroll:e.computed(()=>{var r;return e.unref((r=n.value)==null?void 0:r.currentScroll)}),scroll:(f=n.value)==null?void 0:f.scroll,visible:e.computed(()=>a.value<100),rootElement:e.computed(()=>{var r;return e.unref((r=n.value)==null?void 0:r.container)})}),(r,l)=>a.value!==100?(e.openBlock(),e.createBlock(m.default,e.mergeProps({key:0,ref_key:"barRef",ref:n},e.unref(_.omit)(t,["onScroll","extraSize","scrollContainer"]),{"bar-length":a.value,onScroll:p}),null,16,["bar-length"])):e.createCommentVNode("",!0)}});exports.default=z;
|
|
@@ -64,5 +64,6 @@ export interface InternalScrollBarExpose {
|
|
|
64
64
|
scroll: (percent: number) => void;
|
|
65
65
|
}
|
|
66
66
|
export type ScrollBarExpose = Pick<InternalScrollBarExpose, 'scroll' | 'currentScroll'> & {
|
|
67
|
-
visible
|
|
67
|
+
visible: Ref<boolean>;
|
|
68
|
+
rootElement: Ref<HTMLElement>;
|
|
68
69
|
};
|
package/lib/src/utils/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("vue"),f=require("lodash-unified"),l=require("@vueuse/core");function a(e){return(e==null?void 0:e.parentNode)??document.body}function d(e){return typeof e<"u"}function y(e){const t={};return Object.keys(e).map(n=>{t[n]=s.unref(e[n])}),t}function p(e,t=[],n){const o=Object.assign({},e),u=Object.keys(o);for(let r=0;r<u.length;r+=1){const i=u[r];(t.includes(i)||n!=null&&n(i,o[i]))&&delete o[i]}return o}function g(e){return/^[A-Z][A-Za-z]*$/.test(e)}function c(e){if(Array.isArray(e))return e.map(t=>c(t));if(typeof e=="object"&&e!==null){const t={};for(const n in e)t[n]=c(e[n]);return s.markRaw(t)}return e}function m(e){const t={...e};for(const n of Object.keys(t))f.isUndefined(t[n])&&delete t[n];return t}function h(e,...t){return typeof e=="function"?e(...t):e}function v(){const e="history";return typeof window>"u"?e:window.location.href.includes("#/")?"hash":e}function b(){if(!l.isClient)return
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("vue"),f=require("lodash-unified"),l=require("@vueuse/core");function a(e){return(e==null?void 0:e.parentNode)??document.body}function d(e){return typeof e<"u"}function y(e){const t={};return Object.keys(e).map(n=>{t[n]=s.unref(e[n])}),t}function p(e,t=[],n){const o=Object.assign({},e),u=Object.keys(o);for(let r=0;r<u.length;r+=1){const i=u[r];(t.includes(i)||n!=null&&n(i,o[i]))&&delete o[i]}return o}function g(e){return/^[A-Z][A-Za-z]*$/.test(e)}function c(e){if(Array.isArray(e))return e.map(t=>c(t));if(typeof e=="object"&&e!==null){const t={};for(const n in e)t[n]=c(e[n]);return s.markRaw(t)}return e}function m(e){const t={...e};for(const n of Object.keys(t))f.isUndefined(t[n])&&delete t[n];return t}function h(e,...t){return typeof e=="function"?e(...t):e}function v(){const e="history";return typeof window>"u"?e:window.location.href.includes("#/")?"hash":e}function b(){if(!l.isClient)return 15;const e=document.createElement("div");e.style.width="100px",e.style.height="100px",e.style.overflow="scroll",e.style.position="absolute",e.style.top="-9999px",document.body.appendChild(e);const t=e.offsetHeight-e.clientHeight;return document.body.removeChild(e),t}exports.convertReactiveToRaw=c;exports.getDynamicProps=y;exports.getPopupContainer=a;exports.getRouteType=v;exports.getScrollbarSize=b;exports.isDef=d;exports.isPascalCase=g;exports.omitUndefined=m;exports.omitWhen=p;exports.runFunction=h;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aplus-frontend/ui",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.16",
|
|
4
4
|
"main": "./lib/index.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -69,13 +69,13 @@
|
|
|
69
69
|
"@aplus-frontend/utils": "1.0.49"
|
|
70
70
|
},
|
|
71
71
|
"peerDependencies": {
|
|
72
|
-
"@aplus-frontend/antdv": "^1.0.
|
|
72
|
+
"@aplus-frontend/antdv": "^1.0.12",
|
|
73
73
|
"@aplus-frontend/icon": "^1.2.1",
|
|
74
74
|
"@aplus-frontend/oss": "^1.1.2",
|
|
75
75
|
"vue": "^3.5.13"
|
|
76
76
|
},
|
|
77
77
|
"devDependencies": {
|
|
78
|
-
"@aplus-frontend/antdv": "^1.0.
|
|
78
|
+
"@aplus-frontend/antdv": "^1.0.12",
|
|
79
79
|
"@aplus-frontend/icon": "^1.2.1",
|
|
80
80
|
"@aplus-frontend/oss": "^1.1.2",
|
|
81
81
|
"@types/sortablejs": "^1.15.8",
|
|
@@ -566,10 +566,12 @@
|
|
|
566
566
|
.aplus-ap-table-setting-trigger-button:hover {
|
|
567
567
|
color: unset;
|
|
568
568
|
}
|
|
569
|
-
.aplus-ap-table .ant-table-container {
|
|
570
|
-
overflow: hidden;
|
|
571
|
-
}
|
|
572
|
-
.aplus-ap-table-horizontal--scrollable .ant-table-container > div:last-child {
|
|
569
|
+
.aplus-ap-table--sticky-relative .ant-table-container > div:last-child {
|
|
573
570
|
margin-bottom: calc(var(--basic-scrollbar-size) * -1);
|
|
574
|
-
clip-path: inset(
|
|
571
|
+
clip-path: inset(0 0 var(--basic-scrollbar-size) 0);
|
|
572
|
+
}
|
|
573
|
+
.aplus-ap-table--sticky-absolute .ant-table-container > div:last-child {
|
|
574
|
+
padding-bottom: 15px;
|
|
575
|
+
margin-bottom: -15px;
|
|
576
|
+
clip-path: inset(0 0 15px 0);
|
|
575
577
|
}
|
|
@@ -157,14 +157,24 @@
|
|
|
157
157
|
color: unset;
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
|
-
|
|
161
|
-
|
|
160
|
+
// 粘贴布局并且滚动条占据空间
|
|
161
|
+
&--sticky-relative {
|
|
162
|
+
.ant-table-container{
|
|
163
|
+
& > div:last-child {
|
|
164
|
+
margin-bottom: calc(var(--basic-scrollbar-size) * -1);
|
|
165
|
+
clip-path: inset(0 0 var(--basic-scrollbar-size) 0);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
162
168
|
}
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
.ant-table-container
|
|
166
|
-
|
|
167
|
-
|
|
169
|
+
// 粘贴布局滚动条不占据空间
|
|
170
|
+
&--sticky-absolute {
|
|
171
|
+
.ant-table-container{
|
|
172
|
+
& > div:last-child {
|
|
173
|
+
padding-bottom: 15px;
|
|
174
|
+
margin-bottom: -15px;
|
|
175
|
+
clip-path: inset(0 0 15px 0);
|
|
176
|
+
}
|
|
168
177
|
}
|
|
169
178
|
}
|
|
179
|
+
|
|
170
180
|
});
|
|
@@ -566,12 +566,14 @@
|
|
|
566
566
|
.aplus-ap-table-setting-trigger-button:hover {
|
|
567
567
|
color: unset;
|
|
568
568
|
}
|
|
569
|
-
.aplus-ap-table .ant-table-container {
|
|
570
|
-
overflow: hidden;
|
|
571
|
-
}
|
|
572
|
-
.aplus-ap-table-horizontal--scrollable .ant-table-container > div:last-child {
|
|
569
|
+
.aplus-ap-table--sticky-relative .ant-table-container > div:last-child {
|
|
573
570
|
margin-bottom: calc(var(--basic-scrollbar-size) * -1);
|
|
574
|
-
clip-path: inset(
|
|
571
|
+
clip-path: inset(0 0 var(--basic-scrollbar-size) 0);
|
|
572
|
+
}
|
|
573
|
+
.aplus-ap-table--sticky-absolute .ant-table-container > div:last-child {
|
|
574
|
+
padding-bottom: 15px;
|
|
575
|
+
margin-bottom: -15px;
|
|
576
|
+
clip-path: inset(0 0 15px 0);
|
|
575
577
|
}
|
|
576
578
|
.aplus-ap-table-modal--table-layout {
|
|
577
579
|
display: flex;
|
package/theme/index.css
CHANGED
|
@@ -1157,12 +1157,14 @@ div.aplus-ap-info-layout-admin__header-shadow.aplus-ap-info-layout-admin__sticky
|
|
|
1157
1157
|
.aplus-ap-table-setting-trigger-button:hover {
|
|
1158
1158
|
color: unset;
|
|
1159
1159
|
}
|
|
1160
|
-
.aplus-ap-table .ant-table-container {
|
|
1161
|
-
overflow: hidden;
|
|
1162
|
-
}
|
|
1163
|
-
.aplus-ap-table-horizontal--scrollable .ant-table-container > div:last-child {
|
|
1160
|
+
.aplus-ap-table--sticky-relative .ant-table-container > div:last-child {
|
|
1164
1161
|
margin-bottom: calc(var(--basic-scrollbar-size) * -1);
|
|
1165
|
-
clip-path: inset(
|
|
1162
|
+
clip-path: inset(0 0 var(--basic-scrollbar-size) 0);
|
|
1163
|
+
}
|
|
1164
|
+
.aplus-ap-table--sticky-absolute .ant-table-container > div:last-child {
|
|
1165
|
+
padding-bottom: 15px;
|
|
1166
|
+
margin-bottom: -15px;
|
|
1167
|
+
clip-path: inset(0 0 15px 0);
|
|
1166
1168
|
}
|
|
1167
1169
|
.aplus-tag-wrapper {
|
|
1168
1170
|
text-wrap: nowrap;
|