@aplus-frontend/ui 6.28.4 → 6.29.0
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/ag-grid/hooks/use-search-form.mjs +7 -7
- package/es/src/ag-grid/index.vue.mjs +103 -92
- package/es/src/ag-grid/interface.d.ts +17 -1
- package/es/src/version.d.ts +1 -1
- package/es/src/version.mjs +1 -1
- package/lib/src/ag-grid/hooks/use-search-form.js +1 -1
- package/lib/src/ag-grid/index.vue.js +1 -1
- package/lib/src/ag-grid/interface.d.ts +17 -1
- package/lib/src/version.d.ts +1 -1
- package/lib/src/version.js +1 -1
- package/package.json +1 -1
- package/theme/ag-grid/index.css +0 -3
- package/theme/ag-grid/index.less +0 -4
- package/theme/index.css +0 -3
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import { noRenderAsFormItemValueList as s } from "../../ap-table/constants.mjs";
|
|
2
2
|
import { computed as p, unref as l } from "vue";
|
|
3
|
-
import { getColumnOrder as d, updateFormProps as
|
|
3
|
+
import { getColumnOrder as d, updateFormProps as u, getFieldProps as m, getSearchFormItemRenderNode as i } from "../../ap-table/utils.mjs";
|
|
4
4
|
import "../../config-provider/index.mjs";
|
|
5
5
|
import { useGlobalConfig as c } from "../../config-provider/hooks/use-global-config.mjs";
|
|
6
|
-
const
|
|
6
|
+
const P = (n) => {
|
|
7
7
|
let t = 0;
|
|
8
8
|
const a = c("valueTypeMap");
|
|
9
9
|
return p(() => (t++, n.columns?.filter(
|
|
10
|
-
(e) => !e.hideInSearch && e.dataIndex && (e.valueType || e.customRenderFormItem) && !s.includes(e.valueType)
|
|
10
|
+
(e) => !e.hideInSearch && (e.dataIndex || e.key) && (e.valueType || e.customRenderFormItem) && !s.includes(e.valueType)
|
|
11
11
|
)?.sort((e, o) => {
|
|
12
12
|
const r = d(e.order);
|
|
13
13
|
return d(o.order) - r;
|
|
14
14
|
})?.map((e) => {
|
|
15
|
-
const o =
|
|
15
|
+
const o = u(
|
|
16
16
|
e,
|
|
17
|
-
|
|
17
|
+
m(e.fieldProps, {})
|
|
18
18
|
), r = {
|
|
19
19
|
...e,
|
|
20
20
|
fieldProps: {
|
|
21
21
|
label: e.title,
|
|
22
|
-
name: e.dataIndex,
|
|
22
|
+
name: e.dataIndex || e.key,
|
|
23
23
|
// tips: 在表格中的查询表单项默认是带边框的
|
|
24
24
|
bordered: !0,
|
|
25
25
|
...o || {},
|
|
@@ -34,5 +34,5 @@ const h = (n) => {
|
|
|
34
34
|
}) || []));
|
|
35
35
|
};
|
|
36
36
|
export {
|
|
37
|
-
|
|
37
|
+
P as useSearchForm
|
|
38
38
|
};
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { AgGridVue as
|
|
3
|
-
import { ModuleRegistry as
|
|
4
|
-
import { mergeProps as
|
|
5
|
-
import { Spin as
|
|
1
|
+
import { defineComponent as Xe, useSlots as Ye, ref as F, toRef as k, unref as t, computed as l, nextTick as Ze, watch as P, createElementBlock as z, openBlock as v, normalizeStyle as E, normalizeClass as m, createCommentVNode as oe, createElementVNode as R, createVNode as V, mergeProps as A, createSlots as _e, withCtx as te, Fragment as eo, renderList as oo, createBlock as re, resolveDynamicComponent as to, renderSlot as ae, withDirectives as ro, vShow as ao } from "vue";
|
|
2
|
+
import { AgGridVue as no } from "ag-grid-vue3";
|
|
3
|
+
import { ModuleRegistry as lo, AllCommunityModule as so } from "ag-grid-community";
|
|
4
|
+
import { mergeProps as io } from "./utils.mjs";
|
|
5
|
+
import { Spin as co, Pagination as uo } from "@aplus-frontend/antdv";
|
|
6
6
|
import { isUndefined as b, isFunction as ne } from "lodash-unified";
|
|
7
7
|
import "../config-provider/index.mjs";
|
|
8
|
-
import { ApForm as
|
|
9
|
-
import { recursionApColumns as
|
|
10
|
-
import { useTablePaging as
|
|
11
|
-
import
|
|
12
|
-
import { useProvideSorter as
|
|
13
|
-
import { useProvideApTable as
|
|
14
|
-
import { sizeReverseMap as
|
|
15
|
-
import { useToken as
|
|
16
|
-
import { useTheme as
|
|
17
|
-
import { useColumns as
|
|
18
|
-
import { useColumnsDef as
|
|
19
|
-
import { isDef as
|
|
20
|
-
import { getValidVNodeList as
|
|
21
|
-
import { useSearchForm as
|
|
8
|
+
import { ApForm as mo } from "../ap-form/index.mjs";
|
|
9
|
+
import { recursionApColumns as po } from "../ap-table/utils.mjs";
|
|
10
|
+
import { useTablePaging as fo } from "../ap-table/hooks/use-table-paging-ng.mjs";
|
|
11
|
+
import wo from "./hooks/use-row-selection.mjs";
|
|
12
|
+
import { useProvideSorter as go } from "./context.mjs";
|
|
13
|
+
import { useProvideApTable as So } from "../ap-table/context.mjs";
|
|
14
|
+
import { sizeReverseMap as yo, sizeMap as ho } from "../ap-grid/constants.mjs";
|
|
15
|
+
import { useToken as Co } from "@aplus-frontend/antdv/es/theme/internal";
|
|
16
|
+
import { useTheme as vo } from "./theme.mjs";
|
|
17
|
+
import { useColumns as Ro } from "./hooks/use-columns.mjs";
|
|
18
|
+
import { useColumnsDef as bo } from "./hooks/use-columns-def.mjs";
|
|
19
|
+
import { isDef as Bo } from "../utils/index.mjs";
|
|
20
|
+
import { getValidVNodeList as Fo } from "../utils/slot.mjs";
|
|
21
|
+
import { useSearchForm as ko } from "./hooks/use-search-form.mjs";
|
|
22
22
|
import "./components/empty/index.vue.mjs";
|
|
23
|
-
import
|
|
24
|
-
import { usePinnedRow as
|
|
25
|
-
import
|
|
26
|
-
import { useNamespace as
|
|
27
|
-
import
|
|
28
|
-
const
|
|
23
|
+
import xo from "./hooks/use-virtual-config.mjs";
|
|
24
|
+
import { usePinnedRow as Io } from "./hooks/use-pinned-row.mjs";
|
|
25
|
+
import To from "./hooks/use-selection-col-def.mjs";
|
|
26
|
+
import { useNamespace as No } from "../config-provider/hooks/use-namespace.mjs";
|
|
27
|
+
import Do from "./components/empty/index.vue2.mjs";
|
|
28
|
+
const nt = /* @__PURE__ */ Xe({
|
|
29
29
|
name: "AgGrid",
|
|
30
30
|
__name: "index",
|
|
31
31
|
props: {
|
|
@@ -93,54 +93,55 @@ const rt = /* @__PURE__ */ Je({
|
|
|
93
93
|
virtual: { type: [Boolean, Object], default: void 0 },
|
|
94
94
|
onRowClicked: {},
|
|
95
95
|
onScrollEnd: {},
|
|
96
|
-
rowClassName: {}
|
|
96
|
+
rowClassName: {},
|
|
97
|
+
rowClassRules: {}
|
|
97
98
|
},
|
|
98
99
|
setup(le, { expose: se }) {
|
|
99
|
-
|
|
100
|
-
const o = le, M =
|
|
100
|
+
lo.registerModules([so]);
|
|
101
|
+
const o = le, M = Ye(), { e: B, b: d, be: ie } = No("ag-grid"), y = F(o.size), ce = vo(y, k(o, "rowHeight")), de = xo(k(o, "virtual")), { rowPinnedGridConfig: O, getRowPinnedCellClass: ue } = Io(
|
|
101
102
|
k(o, "summary")
|
|
102
|
-
),
|
|
103
|
+
), i = F(), [, me] = Co();
|
|
103
104
|
let p = !!o.dataSource;
|
|
104
|
-
const W =
|
|
105
|
+
const W = ko(o), { shownColumns: f, columns: j, columnKeys: pe } = Ro(o), { defaultColDef: fe, columnDefs: we } = bo(
|
|
105
106
|
j,
|
|
106
107
|
o,
|
|
107
108
|
ue
|
|
108
109
|
), x = F({});
|
|
109
|
-
|
|
110
|
+
go({
|
|
110
111
|
sorter: x,
|
|
111
112
|
setSorter(e) {
|
|
112
113
|
x.value = e;
|
|
113
114
|
}
|
|
114
115
|
});
|
|
115
|
-
const
|
|
116
|
+
const ge = {
|
|
116
117
|
asc: "ascend",
|
|
117
118
|
desc: "descend"
|
|
118
119
|
};
|
|
119
|
-
function
|
|
120
|
-
const e =
|
|
120
|
+
function Se() {
|
|
121
|
+
const e = i.value.getColumns()?.filter((s) => s.getSort() !== void 0), r = t(x) || {};
|
|
121
122
|
let a = e?.[0];
|
|
122
123
|
const u = Object.keys(r);
|
|
123
124
|
if (u.length && u.every((s) => r[s] === null)) {
|
|
124
125
|
const s = Object.keys(r)[0];
|
|
125
|
-
s && (a =
|
|
126
|
+
s && (a = i.value?.getColumn(s));
|
|
126
127
|
}
|
|
127
128
|
if (!a)
|
|
128
129
|
return;
|
|
129
|
-
const
|
|
130
|
+
const c = a.getColDef(), S = a.getSort();
|
|
130
131
|
G(void 0, void 0, {
|
|
131
|
-
column:
|
|
132
|
-
field:
|
|
133
|
-
order:
|
|
132
|
+
column: c,
|
|
133
|
+
field: c.field,
|
|
134
|
+
order: S ? ge[S] : null
|
|
134
135
|
});
|
|
135
136
|
}
|
|
136
|
-
const ye = l(() =>
|
|
137
|
+
const ye = l(() => po(t(f), (e) => {
|
|
137
138
|
if (e.sorter === !0)
|
|
138
139
|
return e.key || e.dataIndex;
|
|
139
|
-
}).filter(Boolean)), he = l(() =>
|
|
140
|
-
formRef:
|
|
140
|
+
}).filter(Boolean)), he = l(() => Bo(o.manual) ? o.manual : Fo(M.searchFormExtra?.() || []).some((r) => r.type?.name === "ApView")), {
|
|
141
|
+
formRef: w,
|
|
141
142
|
submit: I,
|
|
142
143
|
reset: T,
|
|
143
|
-
data:
|
|
144
|
+
data: g,
|
|
144
145
|
tableProps: L,
|
|
145
146
|
handleTableChangeOptional: G,
|
|
146
147
|
submitWith: H,
|
|
@@ -148,7 +149,7 @@ const rt = /* @__PURE__ */ Je({
|
|
|
148
149
|
getPaging: Ce,
|
|
149
150
|
setPaging: ve,
|
|
150
151
|
setDataSource: Re
|
|
151
|
-
} =
|
|
152
|
+
} = fo({
|
|
152
153
|
async request(e) {
|
|
153
154
|
if (p = !1, !Fe.value && b(o.dataSource) && K(), !b(o.dataSource)) {
|
|
154
155
|
const a = e.pageSize * (e.current - 1);
|
|
@@ -171,8 +172,8 @@ const rt = /* @__PURE__ */ Je({
|
|
|
171
172
|
formatParams: o.beforeSearchSubmit,
|
|
172
173
|
pagination: o.pagination,
|
|
173
174
|
sortFields: ye
|
|
174
|
-
}), be =
|
|
175
|
-
() => b(o.dataSource) ?
|
|
175
|
+
}), be = To(o, f), Be = l(
|
|
176
|
+
() => b(o.dataSource) ? g.records : o.dataSource
|
|
176
177
|
), Fe = l(() => {
|
|
177
178
|
const e = o.rowSelection === !0 ? {} : o.rowSelection;
|
|
178
179
|
return e ? e.preserveSelectedRowKeys !== !1 : !1;
|
|
@@ -183,7 +184,7 @@ const rt = /* @__PURE__ */ Je({
|
|
|
183
184
|
selectedRowKeys: Ie,
|
|
184
185
|
clearAll: Te,
|
|
185
186
|
selectMultiByKeys: Ne
|
|
186
|
-
} =
|
|
187
|
+
} = wo({
|
|
187
188
|
...o.rowSelection === !0 ? {} : o.rowSelection,
|
|
188
189
|
dataSource: Be,
|
|
189
190
|
rowKey: o.rowKey
|
|
@@ -203,7 +204,7 @@ const rt = /* @__PURE__ */ Je({
|
|
|
203
204
|
return ne(o.rowKey) ? o.rowKey(e) : e[o.rowKey];
|
|
204
205
|
}
|
|
205
206
|
const $ = ({
|
|
206
|
-
api: e =
|
|
207
|
+
api: e = i.value
|
|
207
208
|
}) => {
|
|
208
209
|
if (!o.rowSelection)
|
|
209
210
|
return;
|
|
@@ -217,8 +218,8 @@ const rt = /* @__PURE__ */ Je({
|
|
|
217
218
|
p = !1;
|
|
218
219
|
const a = [];
|
|
219
220
|
e.forEachNode((u) => {
|
|
220
|
-
const h = u.data,
|
|
221
|
-
r.find((
|
|
221
|
+
const h = u.data, c = D(h);
|
|
222
|
+
r.find((S) => D(S) === c) && a.push(u);
|
|
222
223
|
}), e.setNodesSelected({ nodes: a, newValue: !0 }), setTimeout(() => {
|
|
223
224
|
p = !0;
|
|
224
225
|
}, 0);
|
|
@@ -227,34 +228,34 @@ const rt = /* @__PURE__ */ Je({
|
|
|
227
228
|
}, ze = () => {
|
|
228
229
|
p = !0;
|
|
229
230
|
}, K = () => {
|
|
230
|
-
Te(),
|
|
231
|
+
Te(), i.value?.deselectAll();
|
|
231
232
|
};
|
|
232
233
|
function Ee(e) {
|
|
233
|
-
Ne(e),
|
|
234
|
+
Ne(e), Ze(() => {
|
|
234
235
|
$({});
|
|
235
236
|
});
|
|
236
237
|
}
|
|
237
238
|
function q(e = !1) {
|
|
238
239
|
const r = e ? "getFieldsValueTransformed" : "getFieldsValue";
|
|
239
|
-
return
|
|
240
|
+
return w.value?.apForm?.[r]?.(!0);
|
|
240
241
|
}
|
|
241
242
|
function J(e) {
|
|
242
|
-
|
|
243
|
+
w.value?.apForm?.setFieldsValue?.(e);
|
|
243
244
|
}
|
|
244
245
|
function Q() {
|
|
245
|
-
return
|
|
246
|
+
return w.value?.getSorterItems() || [];
|
|
246
247
|
}
|
|
247
248
|
function X(e) {
|
|
248
|
-
|
|
249
|
+
w.value?.setSorterItems(e);
|
|
249
250
|
}
|
|
250
251
|
function Y() {
|
|
251
|
-
|
|
252
|
+
w.value?.resetSorterItems();
|
|
252
253
|
}
|
|
253
254
|
function Z(e) {
|
|
254
255
|
return e && String(e);
|
|
255
256
|
}
|
|
256
257
|
function Ve(e) {
|
|
257
|
-
const r =
|
|
258
|
+
const r = i.value;
|
|
258
259
|
if (!r)
|
|
259
260
|
return;
|
|
260
261
|
const a = r.getColumnState() || [], u = e.map((n) => n.key ? String(n.key) : n.key).filter(Boolean), h = a.map((n) => {
|
|
@@ -264,37 +265,37 @@ const rt = /* @__PURE__ */ Je({
|
|
|
264
265
|
...n,
|
|
265
266
|
hide: C
|
|
266
267
|
}, ee = e.find(
|
|
267
|
-
(
|
|
268
|
+
(Qe) => Z(Qe.key) === n.colId
|
|
268
269
|
);
|
|
269
270
|
return ee && (_.pinned = ee.fixed || null), _;
|
|
270
|
-
}),
|
|
271
|
+
}), c = new Map(
|
|
271
272
|
e.map((n, C) => [Z(n.key), C])
|
|
272
|
-
),
|
|
273
|
-
(n, C) =>
|
|
273
|
+
), S = h.filter((n) => c.has(n.colId)).sort(
|
|
274
|
+
(n, C) => c.get(n.colId) - c.get(C.colId)
|
|
274
275
|
), s = [];
|
|
275
|
-
let
|
|
276
|
+
let Je = 0;
|
|
276
277
|
for (const n of h)
|
|
277
|
-
|
|
278
|
+
c.has(n.colId) ? s.push(S[Je++]) : s.push(n);
|
|
278
279
|
r.applyColumnState({
|
|
279
280
|
state: s,
|
|
280
281
|
applyOrder: !0
|
|
281
282
|
});
|
|
282
283
|
}
|
|
283
|
-
|
|
284
|
+
So({
|
|
284
285
|
columns: l(() => f.value),
|
|
285
286
|
columnsBackup: l(() => j.value),
|
|
286
|
-
size: l(() =>
|
|
287
|
+
size: l(() => ho[y.value]),
|
|
287
288
|
updateColumns(e) {
|
|
288
289
|
console.log("run reset", e), f.value = e, o.onShownColumnsChange?.(e), Ve(e);
|
|
289
290
|
},
|
|
290
291
|
updateSize(e) {
|
|
291
|
-
y.value =
|
|
292
|
+
y.value = yo[e];
|
|
292
293
|
},
|
|
293
294
|
renderConfig: l(() => ({
|
|
294
295
|
className: ie("table-header", "title"),
|
|
295
296
|
color: me.value.colorTextTertiary
|
|
296
297
|
})),
|
|
297
|
-
dataSource: l(() => t(
|
|
298
|
+
dataSource: l(() => t(g).records),
|
|
298
299
|
getSearchFormValues: q,
|
|
299
300
|
setSearchFormValues: J,
|
|
300
301
|
submit: I,
|
|
@@ -306,7 +307,7 @@ const rt = /* @__PURE__ */ Je({
|
|
|
306
307
|
resetSearchFormSorterItems: Y
|
|
307
308
|
});
|
|
308
309
|
const Ae = l(
|
|
309
|
-
() => b(o.loading) ?
|
|
310
|
+
() => b(o.loading) ? g.loading : o.loading
|
|
310
311
|
), Me = l(() => [
|
|
311
312
|
d(),
|
|
312
313
|
o.card ? null : d("wrapper"),
|
|
@@ -323,7 +324,7 @@ const rt = /* @__PURE__ */ Je({
|
|
|
323
324
|
return D(r);
|
|
324
325
|
}
|
|
325
326
|
function Le(e, r) {
|
|
326
|
-
|
|
327
|
+
i.value?.ensureIndexVisible(e, r);
|
|
327
328
|
}
|
|
328
329
|
function Ge(e) {
|
|
329
330
|
o.onRowClicked?.(e.data, e.event);
|
|
@@ -331,7 +332,13 @@ const rt = /* @__PURE__ */ Je({
|
|
|
331
332
|
function He(e) {
|
|
332
333
|
o.onScrollEnd?.(e.direction);
|
|
333
334
|
}
|
|
334
|
-
|
|
335
|
+
function Ue(e) {
|
|
336
|
+
return i.value?.refreshCells(e);
|
|
337
|
+
}
|
|
338
|
+
function $e(e) {
|
|
339
|
+
return i.value?.redrawRows(e);
|
|
340
|
+
}
|
|
341
|
+
const qe = (e) => {
|
|
335
342
|
const r = [
|
|
336
343
|
O.value.getRowClass?.(e)
|
|
337
344
|
];
|
|
@@ -353,7 +360,7 @@ const rt = /* @__PURE__ */ Je({
|
|
|
353
360
|
y.value = e;
|
|
354
361
|
}
|
|
355
362
|
), P(
|
|
356
|
-
() => t(
|
|
363
|
+
() => t(g).loading,
|
|
357
364
|
(e) => {
|
|
358
365
|
o.onLoadingChange?.(e);
|
|
359
366
|
}
|
|
@@ -371,12 +378,14 @@ const rt = /* @__PURE__ */ Je({
|
|
|
371
378
|
clearAll: K
|
|
372
379
|
},
|
|
373
380
|
scrollToRow: Le,
|
|
374
|
-
getDataSource: () => t(
|
|
381
|
+
getDataSource: () => t(g.records),
|
|
375
382
|
getPaging: Ce,
|
|
376
383
|
setPaging: ve,
|
|
377
384
|
getSearchFormSorterItems: Q,
|
|
378
385
|
setSearchFormSorterItems: X,
|
|
379
|
-
resetSearchFormSorterItems: Y
|
|
386
|
+
resetSearchFormSorterItems: Y,
|
|
387
|
+
refreshCells: Ue,
|
|
388
|
+
redrawRows: $e
|
|
380
389
|
}), (e, r) => (v(), z("div", {
|
|
381
390
|
class: m(Me.value),
|
|
382
391
|
style: E(e.wrapperStyle)
|
|
@@ -386,16 +395,16 @@ const rt = /* @__PURE__ */ Je({
|
|
|
386
395
|
class: m(e.card ? t(B)("search-wrapper") : null),
|
|
387
396
|
style: E(e.searchFormWrapperStyle)
|
|
388
397
|
}, [
|
|
389
|
-
V(t(
|
|
398
|
+
V(t(mo).SearchForm, A(e.searchForm || {}, {
|
|
390
399
|
ref_key: "formRef",
|
|
391
|
-
ref:
|
|
400
|
+
ref: w,
|
|
392
401
|
"custom-reset": "",
|
|
393
402
|
"submit-loading": t(L).loading,
|
|
394
403
|
onSubmit: t(I),
|
|
395
404
|
onReset: t(T)
|
|
396
|
-
}),
|
|
405
|
+
}), _e({
|
|
397
406
|
default: te(() => [
|
|
398
|
-
(v(!0), z(
|
|
407
|
+
(v(!0), z(eo, null, oo(t(W), (a) => (v(), re(to(a.renderNode), {
|
|
399
408
|
key: a.dataIndex
|
|
400
409
|
}))), 128))
|
|
401
410
|
]),
|
|
@@ -427,41 +436,43 @@ const rt = /* @__PURE__ */ Je({
|
|
|
427
436
|
R("div", {
|
|
428
437
|
class: m(t(d)("grid-wrapper"))
|
|
429
438
|
}, [
|
|
430
|
-
V(t(
|
|
431
|
-
"get-row-class":
|
|
439
|
+
V(t(no), A(t(io)(t(de), t(O)), {
|
|
440
|
+
"get-row-class": qe,
|
|
432
441
|
style: Oe.value,
|
|
433
|
-
"row-data": t(
|
|
434
|
-
"column-defs": t(
|
|
442
|
+
"row-data": t(g).records,
|
|
443
|
+
"column-defs": t(we),
|
|
435
444
|
"default-col-def": t(fe),
|
|
436
445
|
"suppress-loading-overlay": "",
|
|
437
446
|
"row-selection": Ke.value,
|
|
438
447
|
"selection-column-def": t(be),
|
|
439
448
|
"get-row-id": je,
|
|
440
|
-
theme: t(
|
|
449
|
+
theme: t(ce),
|
|
441
450
|
"tooltip-show-delay": 500,
|
|
442
451
|
"enable-browser-tooltips": e.browserTooltips,
|
|
443
452
|
"tooltip-interaction": "",
|
|
444
|
-
"
|
|
445
|
-
|
|
446
|
-
|
|
453
|
+
"row-class-rules": e.rowClassRules,
|
|
454
|
+
"no-rows-overlay-component": Do,
|
|
455
|
+
"suppress-cell-focus": "",
|
|
456
|
+
onSortChanged: Se,
|
|
457
|
+
onGridReady: r[0] || (r[0] = (a) => i.value = a.api),
|
|
447
458
|
onRowDataUpdated: $,
|
|
448
459
|
onRowSelected: Pe,
|
|
449
460
|
onFirstDataRendered: ze,
|
|
450
461
|
onRowClicked: Ge,
|
|
451
462
|
onBodyScrollEnd: He
|
|
452
|
-
}), null, 16, ["style", "row-data", "column-defs", "default-col-def", "row-selection", "selection-column-def", "theme", "enable-browser-tooltips"]),
|
|
453
|
-
|
|
463
|
+
}), null, 16, ["style", "row-data", "column-defs", "default-col-def", "row-selection", "selection-column-def", "theme", "enable-browser-tooltips", "row-class-rules"]),
|
|
464
|
+
ro(R("div", {
|
|
454
465
|
class: m(t(B)("table-loading-wrapper"))
|
|
455
466
|
}, [
|
|
456
|
-
V(t(
|
|
467
|
+
V(t(co), { delay: 300 })
|
|
457
468
|
], 2), [
|
|
458
|
-
[
|
|
469
|
+
[ao, Ae.value]
|
|
459
470
|
])
|
|
460
471
|
], 2),
|
|
461
472
|
R("div", {
|
|
462
473
|
class: m(t(d)("pagination-wrapper"))
|
|
463
474
|
}, [
|
|
464
|
-
e.pagination !== !1 ? (v(), re(t(
|
|
475
|
+
e.pagination !== !1 ? (v(), re(t(uo), A({
|
|
465
476
|
key: 0,
|
|
466
477
|
class: t(d)("pagination")
|
|
467
478
|
}, t(L).pagination, { onChange: We }), null, 16, ["class"])) : oe("", !0)
|
|
@@ -471,5 +482,5 @@ const rt = /* @__PURE__ */ Je({
|
|
|
471
482
|
}
|
|
472
483
|
});
|
|
473
484
|
export {
|
|
474
|
-
|
|
485
|
+
nt as default
|
|
475
486
|
};
|
|
@@ -4,7 +4,7 @@ import { TableProps } from '@aplus-frontend/antdv';
|
|
|
4
4
|
import { ApFormSearchFormPopoverSorterItem, ApFormSearchFormProps } from '../ap-form/interface';
|
|
5
5
|
import { Recordable } from '../type';
|
|
6
6
|
import { SortOrder, TableRowSelection } from '@aplus-frontend/antdv/es/table/interface';
|
|
7
|
-
import { ColDef, IRowNode, RowPinnedType, ScrollDirection } from 'ag-grid-community';
|
|
7
|
+
import { ColDef, IRowNode, RedrawRowsParams, RefreshCellsParams, RowClassRules, RowPinnedType, ScrollDirection } from 'ag-grid-community';
|
|
8
8
|
import { InternalPagingType } from '../ap-table/hooks/use-table-paging-ng';
|
|
9
9
|
export type AgGridColumnType<RecordType = any, ExtraValueType = 'text', ValueType extends ApTableValueTypes = ApTableValueTypes, MergedValueType extends ExtraValueType | ValueType = ExtraValueType | ValueType> = MergedValueType extends ExtraValueType | ValueType ? Omit<ExtraProColumnType<RecordType>, 'sorter' | 'rowSpan' | 'customCell' | 'customHeaderCell' | 'minWidth' | 'width' | 'maxWidth' | 'className' | 'class' | 'colSpan'> & {
|
|
10
10
|
children?: AgGridColumnType<RecordType, ExtraValueType, ValueType>[];
|
|
@@ -251,6 +251,10 @@ export type AgGridProps<RecordType = any, ParamsType = any> = Omit<TableProps<Re
|
|
|
251
251
|
* @description 固定行自定义样式类请使用`summary.rowClassName`
|
|
252
252
|
*/
|
|
253
253
|
rowClassName?: string | string[] | ((data: RecordType, rowIndex: number) => string | string[]);
|
|
254
|
+
/**
|
|
255
|
+
* 表格行自定义样式规则集
|
|
256
|
+
*/
|
|
257
|
+
rowClassRules?: RowClassRules<RecordType>;
|
|
254
258
|
};
|
|
255
259
|
export type AgGridExpose<SearchParamsType = Recordable, RecordType = any> = {
|
|
256
260
|
/**
|
|
@@ -344,4 +348,16 @@ export type AgGridExpose<SearchParamsType = Recordable, RecordType = any> = {
|
|
|
344
348
|
* @returns
|
|
345
349
|
*/
|
|
346
350
|
resetSearchFormSorterItems: () => void;
|
|
351
|
+
/**
|
|
352
|
+
* 刷新单元格
|
|
353
|
+
* @param params
|
|
354
|
+
* @returns
|
|
355
|
+
*/
|
|
356
|
+
refreshCells: (params?: RefreshCellsParams<RecordType>) => void;
|
|
357
|
+
/**
|
|
358
|
+
* 重新绘制行
|
|
359
|
+
* @param params
|
|
360
|
+
* @returns
|
|
361
|
+
*/
|
|
362
|
+
redrawRows: (params?: RedrawRowsParams<RecordType>) => void;
|
|
347
363
|
};
|
package/es/src/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: "6.
|
|
1
|
+
declare const _default: "6.29.0";
|
|
2
2
|
export default _default;
|
package/es/src/version.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../ap-table/constants.js"),n=require("vue"),o=require("../../ap-table/utils.js");require("../../config-provider/index.js");const l=require("../../config-provider/hooks/use-global-config.js"),c=s=>{let d=0;const u=l.useGlobalConfig("valueTypeMap");return n.computed(()=>(d++,s.columns?.filter(e=>!e.hideInSearch&&e.dataIndex&&(e.valueType||e.customRenderFormItem)&&!a.noRenderAsFormItemValueList.includes(e.valueType))?.sort((e,t)=>{const r=o.getColumnOrder(e.order);return o.getColumnOrder(t.order)-r})?.map(e=>{const t=o.updateFormProps(e,o.getFieldProps(e.fieldProps,{})),r={...e,fieldProps:{label:e.title,name:e.dataIndex,bordered:!0,...t||{},_signal:d},renderNode:void 0};return r.renderNode=o.getSearchFormItemRenderNode(r,n.unref(u)),r})||[]))};exports.useSearchForm=c;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../ap-table/constants.js"),n=require("vue"),o=require("../../ap-table/utils.js");require("../../config-provider/index.js");const l=require("../../config-provider/hooks/use-global-config.js"),c=s=>{let d=0;const u=l.useGlobalConfig("valueTypeMap");return n.computed(()=>(d++,s.columns?.filter(e=>!e.hideInSearch&&(e.dataIndex||e.key)&&(e.valueType||e.customRenderFormItem)&&!a.noRenderAsFormItemValueList.includes(e.valueType))?.sort((e,t)=>{const r=o.getColumnOrder(e.order);return o.getColumnOrder(t.order)-r})?.map(e=>{const t=o.updateFormProps(e,o.getFieldProps(e.fieldProps,{})),r={...e,fieldProps:{label:e.title,name:e.dataIndex||e.key,bordered:!0,...t||{},_signal:d},renderNode:void 0};return r.renderNode=o.getSearchFormItemRenderNode(r,n.unref(u)),r})||[]))};exports.useSearchForm=c;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),Ee=require("ag-grid-vue3"),$=require("ag-grid-community"),De=require("./utils.js"),G=require("@aplus-frontend/antdv"),d=require("lodash-unified");require("../config-provider/index.js");const Ke=require("../ap-form/index.js"),Ae=require("../ap-table/utils.js"),Me=require("../ap-table/hooks/use-table-paging-ng.js"),Oe=require("./hooks/use-row-selection.js"),Ue=require("./context.js"),je=require("../ap-table/context.js"),L=require("../ap-grid/constants.js"),We=require("@aplus-frontend/antdv/es/theme/internal"),$e=require("./theme.js"),Ge=require("./hooks/use-columns.js"),Le=require("./hooks/use-columns-def.js"),He=require("../utils/index.js"),_e=require("../utils/slot.js"),Je=require("./hooks/use-search-form.js");require("./components/empty/index.vue.js");const Qe=require("./hooks/use-virtual-config.js"),Xe=require("./hooks/use-pinned-row.js"),Ye=require("./hooks/use-selection-col-def.js"),Ze=require("../config-provider/hooks/use-namespace.js"),eo=require("./components/empty/index.vue2.js"),oo=e.defineComponent({name:"AgGrid",__name:"index",props:{dropdownPrefixCls:{},bordered:{type:Boolean},locale:{},onChange:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{},showSorterTooltip:{type:[Boolean,Object]},prefixCls:{},rowKey:{type:[String,Function],default:"key"},tableLayout:{},title:{},id:{},showHeader:{type:Boolean},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean]},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean},indentSize:{},expandIconColumnIndex:{},showExpandColumn:{type:Boolean},expandedRowClassName:{},childrenColumnName:{},rowExpandable:{},transformCellText:{},columns:{},rowSelection:{type:Boolean},card:{type:Boolean},params:{},request:{},defaultData:{},dataSource:{},onLoadingChange:{},onShownColumnsChange:{},searchForm:{type:[Boolean,Object],default:void 0},beforeSearchSubmit:{},pagination:{type:[Boolean,Object],default:void 0},searchFormWrapperStyle:{},tableWrapperStyle:{},wrapperStyle:{},tableStyle:{},manual:{type:Boolean,default:void 0},size:{default:"mini"},adaptive:{type:Boolean},columnResizable:{type:Boolean,default:!1},loading:{type:Boolean,default:void 0},summary:{},rowHeight:{},advanceRenderer:{type:Boolean},browserTooltips:{type:Boolean},virtual:{type:[Boolean,Object],default:void 0},onRowClicked:{},onScrollEnd:{},rowClassName:{}},setup(H,{expose:_}){$.ModuleRegistry.registerModules([$.AllCommunityModule]);const t=H,F=e.useSlots(),{e:C,b:u,be:J}=Ze.useNamespace("ag-grid"),w=e.ref(t.size),Q=$e.useTheme(w,e.toRef(t,"rowHeight")),X=Qe.default(e.toRef(t,"virtual")),{rowPinnedGridConfig:q,getRowPinnedCellClass:Y}=Xe.usePinnedRow(e.toRef(t,"summary")),i=e.ref(),[,Z]=We.useToken();let f=!!t.dataSource;const N=Je.useSearchForm(t),{shownColumns:m,columns:z,columnKeys:ee}=Ge.useColumns(t),{defaultColDef:oe,columnDefs:te}=Le.useColumnsDef(z,t,Y),v=e.ref({});Ue.useProvideSorter({sorter:v,setSorter(o){v.value=o}});const re={asc:"ascend",desc:"descend"};function ne(){const o=i.value.getColumns()?.filter(l=>l.getSort()!==void 0),r=e.unref(v)||{};let n=o?.[0];const c=Object.keys(r);if(c.length&&c.every(l=>r[l]===null)){const l=Object.keys(r)[0];l&&(n=i.value?.getColumn(l))}if(!n)return;const s=n.getColDef(),S=n.getSort();P(void 0,void 0,{column:s,field:s.field,order:S?re[S]:null})}const ae=e.computed(()=>Ae.recursionApColumns(e.unref(m),o=>{if(o.sorter===!0)return o.key||o.dataIndex}).filter(Boolean)),le=e.computed(()=>He.isDef(t.manual)?t.manual:_e.getValidVNodeList(F.searchFormExtra?.()||[]).some(r=>r.type?.name==="ApView")),{formRef:p,submit:R,reset:b,data:g,tableProps:I,handleTableChangeOptional:P,submitWith:T,refresh:V,getPaging:se,setPaging:ue,setDataSource:ie}=Me.useTablePaging({async request(o){if(f=!1,!fe.value&&d.isUndefined(t.dataSource)&&x(),!d.isUndefined(t.dataSource)){const n=o.pageSize*(o.current-1);return{data:(t.pagination===!1?t.dataSource:t.dataSource.slice(n,n+o.pageSize))||[],total:t.dataSource.length||0}}const r=await t.request?.(o);return{data:r?.data||[],total:r?.total||0}},namespace:"ap-grid",filterFields:e.ref([]),params:e.toRef(t,"params"),defaultData:t.defaultData,manual:e.unref(le),formatParams:t.beforeSearchSubmit,pagination:t.pagination,sortFields:ae}),ce=Ye.default(t,m),de=e.computed(()=>d.isUndefined(t.dataSource)?g.records:t.dataSource),fe=e.computed(()=>{const o=t.rowSelection===!0?{}:t.rowSelection;return o?o.preserveSelectedRowKeys!==!1:!1}),{select:me,unSelect:pe,selectedRows:B,selectedRowKeys:ge,clearAll:Se,selectMultiByKeys:we}=Oe.default({...t.rowSelection===!0?{}:t.rowSelection,dataSource:de,rowKey:t.rowKey}),ye={checkbox:"multiRow",radio:"singleRow"},he=e.computed(()=>{if(!t.rowSelection)return;const{type:o="checkbox",disabled:r}=t.rowSelection===!0?{}:t.rowSelection;return{mode:ye[o],isRowSelectable:n=>r?!r(n.data):!0}});function k(o){return d.isFunction(t.rowKey)?t.rowKey(o):o[t.rowKey]}const E=({api:o=i.value})=>{if(!t.rowSelection)return;const r=B.value;if(!r.length){setTimeout(()=>{f=!0},0);return}f=!1;const n=[];o.forEachNode(c=>{const y=c.data,s=k(y);r.find(S=>k(S)===s)&&n.push(c)}),o.setNodesSelected({nodes:n,newValue:!0}),setTimeout(()=>{f=!0},0)},Ce=o=>{f&&(o.node.isSelected()?me(o.data):pe(o.data))},ve=()=>{f=!0},x=()=>{Se(),i.value?.deselectAll()};function Re(o){we(o),e.nextTick(()=>{E({})})}function D(o=!1){const r=o?"getFieldsValueTransformed":"getFieldsValue";return p.value?.apForm?.[r]?.(!0)}function K(o){p.value?.apForm?.setFieldsValue?.(o)}function A(){return p.value?.getSorterItems()||[]}function M(o){p.value?.setSorterItems(o)}function O(){p.value?.resetSorterItems()}function U(o){return o&&String(o)}function be(o){const r=i.value;if(!r)return;const n=r.getColumnState()||[],c=o.map(a=>a.key?String(a.key):a.key).filter(Boolean),y=n.map(a=>{if(!ee.value.includes(a.colId))return a;const h=!c.includes(a.colId),j={...a,hide:h},W=o.find(Ve=>U(Ve.key)===a.colId);return W&&(j.pinned=W.fixed||null),j}),s=new Map(o.map((a,h)=>[U(a.key),h])),S=y.filter(a=>s.has(a.colId)).sort((a,h)=>s.get(a.colId)-s.get(h.colId)),l=[];let Te=0;for(const a of y)s.has(a.colId)?l.push(S[Te++]):l.push(a);r.applyColumnState({state:l,applyOrder:!0})}je.useProvideApTable({columns:e.computed(()=>m.value),columnsBackup:e.computed(()=>z.value),size:e.computed(()=>L.sizeMap[w.value]),updateColumns(o){console.log("run reset",o),m.value=o,t.onShownColumnsChange?.(o),be(o)},updateSize(o){w.value=L.sizeReverseMap[o]},renderConfig:e.computed(()=>({className:J("table-header","title"),color:Z.value.colorTextTertiary})),dataSource:e.computed(()=>e.unref(g).records),getSearchFormValues:D,setSearchFormValues:K,submit:R,submitWith:T,reset:b,refresh:V,getSearchFormSorterItems:A,setSearchFormSorterItems:M,resetSearchFormSorterItems:O});const Be=e.computed(()=>d.isUndefined(t.loading)?g.loading:t.loading),ke=e.computed(()=>[u(),t.card?null:u("wrapper"),u("adaptive"),u(`size-${w.value}`)].filter(Boolean)),xe=e.computed(()=>({height:"100%",...t.tableStyle||{}})),Fe=(o,r)=>{P({current:o,pageSize:r})};function qe(o){const r=o.data;return k(r)}function Ne(o,r){i.value?.ensureIndexVisible(o,r)}function ze(o){t.onRowClicked?.(o.data,o.event)}function Ie(o){t.onScrollEnd?.(o.direction)}const Pe=o=>{const r=[q.value.getRowClass?.(o)];if(!o.node.rowPinned){const n=d.isFunction(t.rowClassName)?t.rowClassName(o.data,o.rowIndex):t.rowClassName;r.push(n)}return r.flat().filter(Boolean)};return e.watch(()=>t.dataSource,o=>{ie(o)},{immediate:!0,deep:!0}),e.watch(()=>t.size,o=>{w.value=o}),e.watch(()=>e.unref(g).loading,o=>{t.onLoadingChange?.(o)}),_({submit:R,reset:b,refresh:V,submitWith:T,setSearchFormValues:K,getSearchFormValues:D,getShowColumns:()=>e.unref(m),rowSelection:{selectedRows:e.computed(()=>B.value),setSelectedRowKeys:Re,clearAll:x},scrollToRow:Ne,getDataSource:()=>e.unref(g.records),getPaging:se,setPaging:ue,getSearchFormSorterItems:A,setSearchFormSorterItems:M,resetSearchFormSorterItems:O}),(o,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(ke.value),style:e.normalizeStyle(o.wrapperStyle)},[e.unref(d.isUndefined)(o.dataSource)&&o.searchForm!==!1&&e.unref(N).length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.card?e.unref(C)("search-wrapper"):null),style:e.normalizeStyle(o.searchFormWrapperStyle)},[e.createVNode(e.unref(Ke.ApForm).SearchForm,e.mergeProps(o.searchForm||{},{ref_key:"formRef",ref:p,"custom-reset":"","submit-loading":e.unref(I).loading,onSubmit:e.unref(R),onReset:e.unref(b)}),e.createSlots({default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(N),n=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.renderNode),{key:n.dataIndex}))),128))]),_:2},[F.searchFormExtra?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"searchFormExtra")]),key:"0"}:void 0]),1040,["submit-loading","onSubmit","onReset"])],6)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass([e.unref(C)("table-wrapper"),o.card?e.unref(C)("table-wrapper-card"):null]),style:e.normalizeStyle(o.tableWrapperStyle)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(u)("header-wrapper"))},[e.renderSlot(o.$slots,"title",{selectedRows:e.unref(B),selectedRowKeys:e.unref(ge),shownColumns:e.unref(m),clearAll:x})],2),e.createElementVNode("div",{class:e.normalizeClass(e.unref(u)("grid-wrapper"))},[e.createVNode(e.unref(Ee.AgGridVue),e.mergeProps(e.unref(De.mergeProps)(e.unref(X),e.unref(q)),{"get-row-class":Pe,style:xe.value,"row-data":e.unref(g).records,"column-defs":e.unref(te),"default-col-def":e.unref(oe),"suppress-loading-overlay":"","row-selection":he.value,"selection-column-def":e.unref(ce),"get-row-id":qe,theme:e.unref(Q),"tooltip-show-delay":500,"enable-browser-tooltips":o.browserTooltips,"tooltip-interaction":"","no-rows-overlay-component":eo.default,onSortChanged:ne,onGridReady:r[0]||(r[0]=n=>i.value=n.api),onRowDataUpdated:E,onRowSelected:Ce,onFirstDataRendered:ve,onRowClicked:ze,onBodyScrollEnd:Ie}),null,16,["style","row-data","column-defs","default-col-def","row-selection","selection-column-def","theme","enable-browser-tooltips"]),e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(e.unref(C)("table-loading-wrapper"))},[e.createVNode(e.unref(G.Spin),{delay:300})],2),[[e.vShow,Be.value]])],2),e.createElementVNode("div",{class:e.normalizeClass(e.unref(u)("pagination-wrapper"))},[o.pagination!==!1?(e.openBlock(),e.createBlock(e.unref(G.Pagination),e.mergeProps({key:0,class:e.unref(u)("pagination")},e.unref(I).pagination,{onChange:Fe}),null,16,["class"])):e.createCommentVNode("",!0)],2)],6)],6))}});exports.default=oo;
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),Ke=require("ag-grid-vue3"),$=require("ag-grid-community"),Ae=require("./utils.js"),G=require("@aplus-frontend/antdv"),d=require("lodash-unified");require("../config-provider/index.js");const Me=require("../ap-form/index.js"),Oe=require("../ap-table/utils.js"),Ue=require("../ap-table/hooks/use-table-paging-ng.js"),je=require("./hooks/use-row-selection.js"),We=require("./context.js"),$e=require("../ap-table/context.js"),L=require("../ap-grid/constants.js"),Ge=require("@aplus-frontend/antdv/es/theme/internal"),Le=require("./theme.js"),He=require("./hooks/use-columns.js"),_e=require("./hooks/use-columns-def.js"),Je=require("../utils/index.js"),Qe=require("../utils/slot.js"),Xe=require("./hooks/use-search-form.js");require("./components/empty/index.vue.js");const Ye=require("./hooks/use-virtual-config.js"),Ze=require("./hooks/use-pinned-row.js"),eo=require("./hooks/use-selection-col-def.js"),oo=require("../config-provider/hooks/use-namespace.js"),to=require("./components/empty/index.vue2.js"),ro=e.defineComponent({name:"AgGrid",__name:"index",props:{dropdownPrefixCls:{},bordered:{type:Boolean},locale:{},onChange:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{},showSorterTooltip:{type:[Boolean,Object]},prefixCls:{},rowKey:{type:[String,Function],default:"key"},tableLayout:{},title:{},id:{},showHeader:{type:Boolean},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean]},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean},indentSize:{},expandIconColumnIndex:{},showExpandColumn:{type:Boolean},expandedRowClassName:{},childrenColumnName:{},rowExpandable:{},transformCellText:{},columns:{},rowSelection:{type:Boolean},card:{type:Boolean},params:{},request:{},defaultData:{},dataSource:{},onLoadingChange:{},onShownColumnsChange:{},searchForm:{type:[Boolean,Object],default:void 0},beforeSearchSubmit:{},pagination:{type:[Boolean,Object],default:void 0},searchFormWrapperStyle:{},tableWrapperStyle:{},wrapperStyle:{},tableStyle:{},manual:{type:Boolean,default:void 0},size:{default:"mini"},adaptive:{type:Boolean},columnResizable:{type:Boolean,default:!1},loading:{type:Boolean,default:void 0},summary:{},rowHeight:{},advanceRenderer:{type:Boolean},browserTooltips:{type:Boolean},virtual:{type:[Boolean,Object],default:void 0},onRowClicked:{},onScrollEnd:{},rowClassName:{},rowClassRules:{}},setup(H,{expose:_}){$.ModuleRegistry.registerModules([$.AllCommunityModule]);const t=H,F=e.useSlots(),{e:h,b:i,be:J}=oo.useNamespace("ag-grid"),S=e.ref(t.size),Q=Le.useTheme(S,e.toRef(t,"rowHeight")),X=Ye.default(e.toRef(t,"virtual")),{rowPinnedGridConfig:q,getRowPinnedCellClass:Y}=Ze.usePinnedRow(e.toRef(t,"summary")),s=e.ref(),[,Z]=Ge.useToken();let f=!!t.dataSource;const N=Xe.useSearchForm(t),{shownColumns:m,columns:z,columnKeys:ee}=He.useColumns(t),{defaultColDef:oe,columnDefs:te}=_e.useColumnsDef(z,t,Y),v=e.ref({});We.useProvideSorter({sorter:v,setSorter(o){v.value=o}});const re={asc:"ascend",desc:"descend"};function ne(){const o=s.value.getColumns()?.filter(l=>l.getSort()!==void 0),r=e.unref(v)||{};let n=o?.[0];const c=Object.keys(r);if(c.length&&c.every(l=>r[l]===null)){const l=Object.keys(r)[0];l&&(n=s.value?.getColumn(l))}if(!n)return;const u=n.getColDef(),w=n.getSort();P(void 0,void 0,{column:u,field:u.field,order:w?re[w]:null})}const ae=e.computed(()=>Oe.recursionApColumns(e.unref(m),o=>{if(o.sorter===!0)return o.key||o.dataIndex}).filter(Boolean)),le=e.computed(()=>Je.isDef(t.manual)?t.manual:Qe.getValidVNodeList(F.searchFormExtra?.()||[]).some(r=>r.type?.name==="ApView")),{formRef:p,submit:R,reset:b,data:g,tableProps:I,handleTableChangeOptional:P,submitWith:T,refresh:V,getPaging:se,setPaging:ue,setDataSource:ie}=Ue.useTablePaging({async request(o){if(f=!1,!fe.value&&d.isUndefined(t.dataSource)&&x(),!d.isUndefined(t.dataSource)){const n=o.pageSize*(o.current-1);return{data:(t.pagination===!1?t.dataSource:t.dataSource.slice(n,n+o.pageSize))||[],total:t.dataSource.length||0}}const r=await t.request?.(o);return{data:r?.data||[],total:r?.total||0}},namespace:"ap-grid",filterFields:e.ref([]),params:e.toRef(t,"params"),defaultData:t.defaultData,manual:e.unref(le),formatParams:t.beforeSearchSubmit,pagination:t.pagination,sortFields:ae}),ce=eo.default(t,m),de=e.computed(()=>d.isUndefined(t.dataSource)?g.records:t.dataSource),fe=e.computed(()=>{const o=t.rowSelection===!0?{}:t.rowSelection;return o?o.preserveSelectedRowKeys!==!1:!1}),{select:me,unSelect:pe,selectedRows:B,selectedRowKeys:ge,clearAll:we,selectMultiByKeys:Se}=je.default({...t.rowSelection===!0?{}:t.rowSelection,dataSource:de,rowKey:t.rowKey}),ye={checkbox:"multiRow",radio:"singleRow"},Ce=e.computed(()=>{if(!t.rowSelection)return;const{type:o="checkbox",disabled:r}=t.rowSelection===!0?{}:t.rowSelection;return{mode:ye[o],isRowSelectable:n=>r?!r(n.data):!0}});function k(o){return d.isFunction(t.rowKey)?t.rowKey(o):o[t.rowKey]}const E=({api:o=s.value})=>{if(!t.rowSelection)return;const r=B.value;if(!r.length){setTimeout(()=>{f=!0},0);return}f=!1;const n=[];o.forEachNode(c=>{const y=c.data,u=k(y);r.find(w=>k(w)===u)&&n.push(c)}),o.setNodesSelected({nodes:n,newValue:!0}),setTimeout(()=>{f=!0},0)},he=o=>{f&&(o.node.isSelected()?me(o.data):pe(o.data))},ve=()=>{f=!0},x=()=>{we(),s.value?.deselectAll()};function Re(o){Se(o),e.nextTick(()=>{E({})})}function D(o=!1){const r=o?"getFieldsValueTransformed":"getFieldsValue";return p.value?.apForm?.[r]?.(!0)}function K(o){p.value?.apForm?.setFieldsValue?.(o)}function A(){return p.value?.getSorterItems()||[]}function M(o){p.value?.setSorterItems(o)}function O(){p.value?.resetSorterItems()}function U(o){return o&&String(o)}function be(o){const r=s.value;if(!r)return;const n=r.getColumnState()||[],c=o.map(a=>a.key?String(a.key):a.key).filter(Boolean),y=n.map(a=>{if(!ee.value.includes(a.colId))return a;const C=!c.includes(a.colId),j={...a,hide:C},W=o.find(De=>U(De.key)===a.colId);return W&&(j.pinned=W.fixed||null),j}),u=new Map(o.map((a,C)=>[U(a.key),C])),w=y.filter(a=>u.has(a.colId)).sort((a,C)=>u.get(a.colId)-u.get(C.colId)),l=[];let Ee=0;for(const a of y)u.has(a.colId)?l.push(w[Ee++]):l.push(a);r.applyColumnState({state:l,applyOrder:!0})}$e.useProvideApTable({columns:e.computed(()=>m.value),columnsBackup:e.computed(()=>z.value),size:e.computed(()=>L.sizeMap[S.value]),updateColumns(o){console.log("run reset",o),m.value=o,t.onShownColumnsChange?.(o),be(o)},updateSize(o){S.value=L.sizeReverseMap[o]},renderConfig:e.computed(()=>({className:J("table-header","title"),color:Z.value.colorTextTertiary})),dataSource:e.computed(()=>e.unref(g).records),getSearchFormValues:D,setSearchFormValues:K,submit:R,submitWith:T,reset:b,refresh:V,getSearchFormSorterItems:A,setSearchFormSorterItems:M,resetSearchFormSorterItems:O});const Be=e.computed(()=>d.isUndefined(t.loading)?g.loading:t.loading),ke=e.computed(()=>[i(),t.card?null:i("wrapper"),i("adaptive"),i(`size-${S.value}`)].filter(Boolean)),xe=e.computed(()=>({height:"100%",...t.tableStyle||{}})),Fe=(o,r)=>{P({current:o,pageSize:r})};function qe(o){const r=o.data;return k(r)}function Ne(o,r){s.value?.ensureIndexVisible(o,r)}function ze(o){t.onRowClicked?.(o.data,o.event)}function Ie(o){t.onScrollEnd?.(o.direction)}function Pe(o){return s.value?.refreshCells(o)}function Te(o){return s.value?.redrawRows(o)}const Ve=o=>{const r=[q.value.getRowClass?.(o)];if(!o.node.rowPinned){const n=d.isFunction(t.rowClassName)?t.rowClassName(o.data,o.rowIndex):t.rowClassName;r.push(n)}return r.flat().filter(Boolean)};return e.watch(()=>t.dataSource,o=>{ie(o)},{immediate:!0,deep:!0}),e.watch(()=>t.size,o=>{S.value=o}),e.watch(()=>e.unref(g).loading,o=>{t.onLoadingChange?.(o)}),_({submit:R,reset:b,refresh:V,submitWith:T,setSearchFormValues:K,getSearchFormValues:D,getShowColumns:()=>e.unref(m),rowSelection:{selectedRows:e.computed(()=>B.value),setSelectedRowKeys:Re,clearAll:x},scrollToRow:Ne,getDataSource:()=>e.unref(g.records),getPaging:se,setPaging:ue,getSearchFormSorterItems:A,setSearchFormSorterItems:M,resetSearchFormSorterItems:O,refreshCells:Pe,redrawRows:Te}),(o,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(ke.value),style:e.normalizeStyle(o.wrapperStyle)},[e.unref(d.isUndefined)(o.dataSource)&&o.searchForm!==!1&&e.unref(N).length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.card?e.unref(h)("search-wrapper"):null),style:e.normalizeStyle(o.searchFormWrapperStyle)},[e.createVNode(e.unref(Me.ApForm).SearchForm,e.mergeProps(o.searchForm||{},{ref_key:"formRef",ref:p,"custom-reset":"","submit-loading":e.unref(I).loading,onSubmit:e.unref(R),onReset:e.unref(b)}),e.createSlots({default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(N),n=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.renderNode),{key:n.dataIndex}))),128))]),_:2},[F.searchFormExtra?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"searchFormExtra")]),key:"0"}:void 0]),1040,["submit-loading","onSubmit","onReset"])],6)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass([e.unref(h)("table-wrapper"),o.card?e.unref(h)("table-wrapper-card"):null]),style:e.normalizeStyle(o.tableWrapperStyle)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(i)("header-wrapper"))},[e.renderSlot(o.$slots,"title",{selectedRows:e.unref(B),selectedRowKeys:e.unref(ge),shownColumns:e.unref(m),clearAll:x})],2),e.createElementVNode("div",{class:e.normalizeClass(e.unref(i)("grid-wrapper"))},[e.createVNode(e.unref(Ke.AgGridVue),e.mergeProps(e.unref(Ae.mergeProps)(e.unref(X),e.unref(q)),{"get-row-class":Ve,style:xe.value,"row-data":e.unref(g).records,"column-defs":e.unref(te),"default-col-def":e.unref(oe),"suppress-loading-overlay":"","row-selection":Ce.value,"selection-column-def":e.unref(ce),"get-row-id":qe,theme:e.unref(Q),"tooltip-show-delay":500,"enable-browser-tooltips":o.browserTooltips,"tooltip-interaction":"","row-class-rules":o.rowClassRules,"no-rows-overlay-component":to.default,"suppress-cell-focus":"",onSortChanged:ne,onGridReady:r[0]||(r[0]=n=>s.value=n.api),onRowDataUpdated:E,onRowSelected:he,onFirstDataRendered:ve,onRowClicked:ze,onBodyScrollEnd:Ie}),null,16,["style","row-data","column-defs","default-col-def","row-selection","selection-column-def","theme","enable-browser-tooltips","row-class-rules"]),e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(e.unref(h)("table-loading-wrapper"))},[e.createVNode(e.unref(G.Spin),{delay:300})],2),[[e.vShow,Be.value]])],2),e.createElementVNode("div",{class:e.normalizeClass(e.unref(i)("pagination-wrapper"))},[o.pagination!==!1?(e.openBlock(),e.createBlock(e.unref(G.Pagination),e.mergeProps({key:0,class:e.unref(i)("pagination")},e.unref(I).pagination,{onChange:Fe}),null,16,["class"])):e.createCommentVNode("",!0)],2)],6)],6))}});exports.default=ro;
|
|
@@ -4,7 +4,7 @@ import { TableProps } from '@aplus-frontend/antdv';
|
|
|
4
4
|
import { ApFormSearchFormPopoverSorterItem, ApFormSearchFormProps } from '../ap-form/interface';
|
|
5
5
|
import { Recordable } from '../type';
|
|
6
6
|
import { SortOrder, TableRowSelection } from '@aplus-frontend/antdv/es/table/interface';
|
|
7
|
-
import { ColDef, IRowNode, RowPinnedType, ScrollDirection } from 'ag-grid-community';
|
|
7
|
+
import { ColDef, IRowNode, RedrawRowsParams, RefreshCellsParams, RowClassRules, RowPinnedType, ScrollDirection } from 'ag-grid-community';
|
|
8
8
|
import { InternalPagingType } from '../ap-table/hooks/use-table-paging-ng';
|
|
9
9
|
export type AgGridColumnType<RecordType = any, ExtraValueType = 'text', ValueType extends ApTableValueTypes = ApTableValueTypes, MergedValueType extends ExtraValueType | ValueType = ExtraValueType | ValueType> = MergedValueType extends ExtraValueType | ValueType ? Omit<ExtraProColumnType<RecordType>, 'sorter' | 'rowSpan' | 'customCell' | 'customHeaderCell' | 'minWidth' | 'width' | 'maxWidth' | 'className' | 'class' | 'colSpan'> & {
|
|
10
10
|
children?: AgGridColumnType<RecordType, ExtraValueType, ValueType>[];
|
|
@@ -251,6 +251,10 @@ export type AgGridProps<RecordType = any, ParamsType = any> = Omit<TableProps<Re
|
|
|
251
251
|
* @description 固定行自定义样式类请使用`summary.rowClassName`
|
|
252
252
|
*/
|
|
253
253
|
rowClassName?: string | string[] | ((data: RecordType, rowIndex: number) => string | string[]);
|
|
254
|
+
/**
|
|
255
|
+
* 表格行自定义样式规则集
|
|
256
|
+
*/
|
|
257
|
+
rowClassRules?: RowClassRules<RecordType>;
|
|
254
258
|
};
|
|
255
259
|
export type AgGridExpose<SearchParamsType = Recordable, RecordType = any> = {
|
|
256
260
|
/**
|
|
@@ -344,4 +348,16 @@ export type AgGridExpose<SearchParamsType = Recordable, RecordType = any> = {
|
|
|
344
348
|
* @returns
|
|
345
349
|
*/
|
|
346
350
|
resetSearchFormSorterItems: () => void;
|
|
351
|
+
/**
|
|
352
|
+
* 刷新单元格
|
|
353
|
+
* @param params
|
|
354
|
+
* @returns
|
|
355
|
+
*/
|
|
356
|
+
refreshCells: (params?: RefreshCellsParams<RecordType>) => void;
|
|
357
|
+
/**
|
|
358
|
+
* 重新绘制行
|
|
359
|
+
* @param params
|
|
360
|
+
* @returns
|
|
361
|
+
*/
|
|
362
|
+
redrawRows: (params?: RedrawRowsParams<RecordType>) => void;
|
|
347
363
|
};
|
package/lib/src/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: "6.
|
|
1
|
+
declare const _default: "6.29.0";
|
|
2
2
|
export default _default;
|
package/lib/src/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="6.
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="6.29.0";exports.default=e;
|
package/package.json
CHANGED
package/theme/ag-grid/index.css
CHANGED
package/theme/ag-grid/index.less
CHANGED
package/theme/index.css
CHANGED
|
@@ -4389,9 +4389,6 @@ div.aplus-ap-info-layout-admin__header-shadow.aplus-ap-info-layout-admin__sticky
|
|
|
4389
4389
|
user-select: text;
|
|
4390
4390
|
-webkit-user-select: text;
|
|
4391
4391
|
}
|
|
4392
|
-
.aplus-ag-grid .ag-cell-focus:not(.ag-cell-range-selected):focus-within {
|
|
4393
|
-
border-color: transparent;
|
|
4394
|
-
}
|
|
4395
4392
|
.aplus-ap-value-select-card {
|
|
4396
4393
|
position: relative;
|
|
4397
4394
|
margin-top: 8px;
|