comins-table 0.1.10 → 0.1.11
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/CHANGELOG.md +38 -1
- package/DESIGN.md +15 -1
- package/README.md +40 -7
- package/THIRD_PARTY_NOTICES.md +0 -2
- package/dist/cell-fill.d.ts +25 -0
- package/dist/cell-fill.d.ts.map +1 -0
- package/dist/clipboard-text.d.ts +5 -0
- package/dist/clipboard-text.d.ts.map +1 -0
- package/dist/clipboard.d.ts +1 -1
- package/dist/clipboard.d.ts.map +1 -1
- package/dist/clipboard.js +2 -2
- package/dist/column-filter.d.ts +2 -1
- package/dist/column-filter.d.ts.map +1 -1
- package/dist/{core-D01wEe-7.js → core-C1tlvY8Q.js} +236 -170
- package/dist/core-C1tlvY8Q.js.map +1 -0
- package/dist/core.d.ts +12 -2
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +2 -2
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2307 -1967
- package/dist/index.js.map +1 -1
- package/dist/selection.js +2 -2
- package/dist/table-icons.d.ts.map +1 -1
- package/dist/tree-drag.d.ts +1 -0
- package/dist/tree-drag.d.ts.map +1 -1
- package/package.json +15 -1
- package/styles.css +167 -38
- package/dist/core-D01wEe-7.js.map +0 -1
|
@@ -1,8 +1,26 @@
|
|
|
1
|
-
//#region src/column-pinning.ts
|
|
2
1
|
function e(e) {
|
|
2
|
+
if (e.length > 1e6) throw Error("Clipboard text exceeds 1000000 characters.");
|
|
3
|
+
let t = [], n = [], r = "", i = !1, a = !1, o = 0, s = () => {
|
|
4
|
+
if (++o > 1e5) throw Error("Clipboard exceeds 100000 cells.");
|
|
5
|
+
n.push(r), r = "", a = !1;
|
|
6
|
+
};
|
|
7
|
+
for (let o = 0; o < e.length; o++) {
|
|
8
|
+
let c = e[o];
|
|
9
|
+
if (i) c === "\"" ? e[o + 1] === "\"" ? (r += "\"", o++) : (i = !1, a = !0) : r += c;
|
|
10
|
+
else if (c === " " || c === "\r" || c === "\n") {
|
|
11
|
+
if (s(), c !== " " && (t.push(n), n = [], c === "\r" && e[o + 1] === "\n" && o++, o === e.length - 1)) return t;
|
|
12
|
+
} else if (a) throw Error("Unexpected text after a quoted clipboard cell.");
|
|
13
|
+
else c === "\"" && r === "" ? i = !0 : r += c;
|
|
14
|
+
}
|
|
15
|
+
if (i) throw Error("Unclosed quoted clipboard cell.");
|
|
16
|
+
return s(), t.push(n), t;
|
|
17
|
+
}
|
|
18
|
+
//#endregion
|
|
19
|
+
//#region src/column-pinning.ts
|
|
20
|
+
function t(e) {
|
|
3
21
|
return e === "left" || e === "right" ? e : void 0;
|
|
4
22
|
}
|
|
5
|
-
function
|
|
23
|
+
function n(e, t) {
|
|
6
24
|
let n = e.filter((e) => e.pinned === "left"), r = e.filter((e) => e.pinned === void 0), i = e.filter((e) => e.pinned === "right"), a = [], o = [], s = [...n], c = [...i], l = Number.isFinite(t) ? Math.max(0, t) : 0, u = l < 48 ? 0 : l - 48, d = (e) => e.reduce((e, t) => e + t.columnWidths.reduce((e, t) => e + Math.max(0, t), 0), 0);
|
|
7
25
|
for (; d(s) + d(c) > u;) if (d(s) > d(c) && s.length > 0) a.unshift(s.pop());
|
|
8
26
|
else if (c.length > 0) o.push(c.shift());
|
|
@@ -53,13 +71,13 @@ function t(e, t) {
|
|
|
53
71
|
orderedColumnIds: f.flatMap((e) => [...e.columnIds])
|
|
54
72
|
};
|
|
55
73
|
}
|
|
56
|
-
function
|
|
74
|
+
function r(e, t, n, r, i = 48) {
|
|
57
75
|
let a = e.find((e) => e.id === n);
|
|
58
76
|
if (!a?.pinned || a.columnIds.length === 0 || a.columnIds.some((e) => t.columns.get(e)?.pinned !== a.pinned)) return;
|
|
59
77
|
let o = e.reduce((e, n) => n.id === a.id || !n.pinned || n.columnIds.some((e) => t.columns.get(e)?.pinned !== n.pinned) ? e : e + n.columnWidths.reduce((e, t) => e + (Number.isFinite(t) ? Math.max(0, t) : 0), 0), 0);
|
|
60
78
|
return Math.max(0, (Number.isFinite(r) ? Math.max(0, r) : 0) - (Number.isFinite(i) ? Math.max(0, i) : 48) - o);
|
|
61
79
|
}
|
|
62
|
-
function
|
|
80
|
+
function i(e, t, n) {
|
|
63
81
|
let r = Math.min(e.orderedColumnIds.length, Math.max(t, t + Math.max(1, Math.floor(n)))), i = [];
|
|
64
82
|
for (let n = Math.max(0, t); n < r; n += 1) {
|
|
65
83
|
let t = e.orderedColumnIds[n], r = t ? e.columns.get(t) ?? {} : {}, a = i.at(-1);
|
|
@@ -77,19 +95,19 @@ function r(e, t, n) {
|
|
|
77
95
|
}
|
|
78
96
|
return i;
|
|
79
97
|
}
|
|
80
|
-
function
|
|
98
|
+
function a(e, t) {
|
|
81
99
|
return t;
|
|
82
100
|
}
|
|
83
|
-
function
|
|
101
|
+
function o(e) {
|
|
84
102
|
return e;
|
|
85
103
|
}
|
|
86
|
-
function
|
|
104
|
+
function s(e) {
|
|
87
105
|
return e.map((e) => ({
|
|
88
106
|
...e,
|
|
89
107
|
id: e.id ?? e.field
|
|
90
108
|
}));
|
|
91
109
|
}
|
|
92
|
-
function
|
|
110
|
+
function c(e, t = []) {
|
|
93
111
|
let n = new Set(e.map((e) => e.id)), r = /* @__PURE__ */ new Set(), i = /* @__PURE__ */ new Set(), a = [];
|
|
94
112
|
for (let e of t) {
|
|
95
113
|
if (i.has(e.id)) continue;
|
|
@@ -101,33 +119,33 @@ function s(e, t = []) {
|
|
|
101
119
|
}
|
|
102
120
|
return a;
|
|
103
121
|
}
|
|
104
|
-
function
|
|
122
|
+
function l(e, n) {
|
|
105
123
|
let r = {};
|
|
106
|
-
for (let i of
|
|
124
|
+
for (let i of e) r[i.id] = {
|
|
107
125
|
hidden: n?.columns?.[i.id]?.hidden ?? i.hidden,
|
|
108
|
-
pinned:
|
|
126
|
+
pinned: t(n === void 0 ? i.pinned : n.columns?.[i.id]?.pinned),
|
|
109
127
|
width: n?.columns?.[i.id]?.width ?? i.width
|
|
110
128
|
};
|
|
111
129
|
return r;
|
|
112
130
|
}
|
|
113
|
-
function
|
|
131
|
+
function u(e, n) {
|
|
114
132
|
let r = {};
|
|
115
|
-
for (let i of
|
|
133
|
+
for (let i of e) r[i.id] = {
|
|
116
134
|
hidden: n?.groups?.[i.id]?.hidden ?? i.hidden,
|
|
117
|
-
pinned:
|
|
135
|
+
pinned: t(n === void 0 ? i.pinned : n.groups?.[i.id]?.pinned)
|
|
118
136
|
};
|
|
119
137
|
return r;
|
|
120
138
|
}
|
|
121
|
-
function
|
|
139
|
+
function d(e) {
|
|
122
140
|
let t = /* @__PURE__ */ new Map();
|
|
123
141
|
for (let n of e) for (let e of n.children) t.set(e, n.id);
|
|
124
142
|
return t;
|
|
125
143
|
}
|
|
126
|
-
function
|
|
144
|
+
function f(e, t) {
|
|
127
145
|
return e.find((e) => e.id === t);
|
|
128
146
|
}
|
|
129
|
-
function
|
|
130
|
-
let i = new Set(
|
|
147
|
+
function p(e, n, r = []) {
|
|
148
|
+
let i = new Set(e.map((e) => e.id)), a = (n?.order ?? []).filter((e) => i.has(e)), o = e.map((e) => e.id).filter((e) => !a.includes(e)), s = [...a, ...o], c = new Map(e.map((e) => [e.id, e])), l = d(r), u = new Map(r.map((e) => [e.id, e])), f = (e) => !l.has(e) && t(n === void 0 ? c.get(e)?.pinned : n.columns?.[e]?.pinned) !== void 0, p = (e) => t(n === void 0 ? u.get(e)?.pinned : n.groups?.[e]?.pinned) !== void 0, m = (e) => {
|
|
131
149
|
let t = /* @__PURE__ */ new Set(), n = [];
|
|
132
150
|
for (let r of e) {
|
|
133
151
|
let i = l.get(r);
|
|
@@ -140,7 +158,7 @@ function f(t, n, r = []) {
|
|
|
140
158
|
continue;
|
|
141
159
|
}
|
|
142
160
|
if (t.has(i)) continue;
|
|
143
|
-
let a =
|
|
161
|
+
let a = u.get(i);
|
|
144
162
|
if (!a) {
|
|
145
163
|
n.push({
|
|
146
164
|
columnIds: [r],
|
|
@@ -157,7 +175,7 @@ function f(t, n, r = []) {
|
|
|
157
175
|
}), t.add(i);
|
|
158
176
|
}
|
|
159
177
|
return n;
|
|
160
|
-
}, h = m(
|
|
178
|
+
}, h = m(e.map((e) => e.id)), g = m(s), _ = new Map(h.map((e) => [e.key, e])), v = /* @__PURE__ */ new Map(), y = 0;
|
|
161
179
|
for (let e of h) v.set(e.key, y), e.locked && (y += 1);
|
|
162
180
|
let b = Array.from({ length: y + 1 }, () => []), x = new Map(g.map((e) => [e.key, e]));
|
|
163
181
|
for (let e of g) {
|
|
@@ -180,7 +198,7 @@ function f(t, n, r = []) {
|
|
|
180
198
|
return o.push(...a[s] ?? []), o;
|
|
181
199
|
});
|
|
182
200
|
}
|
|
183
|
-
function
|
|
201
|
+
function m() {
|
|
184
202
|
return {
|
|
185
203
|
cell: null,
|
|
186
204
|
cells: [],
|
|
@@ -188,28 +206,28 @@ function p() {
|
|
|
188
206
|
rowIds: []
|
|
189
207
|
};
|
|
190
208
|
}
|
|
191
|
-
function
|
|
209
|
+
function h(e, t) {
|
|
192
210
|
return e.length === t.length && e.every((e, n) => e === t[n]);
|
|
193
211
|
}
|
|
194
|
-
function
|
|
195
|
-
let r = t.map(e.getRowId), i = n.resetSelection === !0 || !
|
|
212
|
+
function g(e, t, n = {}) {
|
|
213
|
+
let r = t.map(e.getRowId), i = n.resetSelection === !0 || !h(e.rowIds, r);
|
|
196
214
|
return {
|
|
197
215
|
...e,
|
|
198
216
|
rowIds: r,
|
|
199
217
|
rows: t,
|
|
200
|
-
selection: i ?
|
|
218
|
+
selection: i ? m() : e.selection
|
|
201
219
|
};
|
|
202
220
|
}
|
|
203
|
-
function
|
|
221
|
+
function _(e, t) {
|
|
204
222
|
return e.rowIds.findIndex((e) => e === t);
|
|
205
223
|
}
|
|
206
|
-
function
|
|
224
|
+
function v(e, t) {
|
|
207
225
|
return e.columns.find((e) => e.id === t);
|
|
208
226
|
}
|
|
209
|
-
function
|
|
227
|
+
function y(e, t) {
|
|
210
228
|
return e.length === t.length && e.every((e, n) => e.columnId === t[n]?.columnId && e.direction === t[n]?.direction);
|
|
211
229
|
}
|
|
212
|
-
function
|
|
230
|
+
function b(e, t) {
|
|
213
231
|
let n = new Set(e.filter((e) => !!e.sort).map((e) => e.id)), r = /* @__PURE__ */ new Set(), i = [];
|
|
214
232
|
for (let e of t) !n.has(e.columnId) || r.has(e.columnId) || e.direction !== "asc" && e.direction !== "desc" || (r.add(e.columnId), i.push({
|
|
215
233
|
columnId: e.columnId,
|
|
@@ -217,12 +235,12 @@ function y(e, t) {
|
|
|
217
235
|
}));
|
|
218
236
|
return i;
|
|
219
237
|
}
|
|
220
|
-
function
|
|
238
|
+
function x(e, t) {
|
|
221
239
|
return t.split(".").reduce((e, t) => {
|
|
222
240
|
if (!(typeof e != "object" || !e)) return e[t];
|
|
223
241
|
}, e);
|
|
224
242
|
}
|
|
225
|
-
function
|
|
243
|
+
function S(e, t, n) {
|
|
226
244
|
if (!e || typeof e != "object") return e;
|
|
227
245
|
let r = t.split("."), [i] = r;
|
|
228
246
|
if (!i) return e;
|
|
@@ -236,8 +254,7 @@ function x(e, t, n) {
|
|
|
236
254
|
o[e] = a, n && (o = a);
|
|
237
255
|
}), o[r.at(-1)] = n, a;
|
|
238
256
|
}
|
|
239
|
-
function
|
|
240
|
-
let i = e.rowIds.indexOf(n);
|
|
257
|
+
function C(e, t, n, r, i = e.rowIds.indexOf(n)) {
|
|
241
258
|
return {
|
|
242
259
|
column: {
|
|
243
260
|
definition: r,
|
|
@@ -255,18 +272,18 @@ function S(e, t, n, r) {
|
|
|
255
272
|
selected: e.selection.rowIds.includes(n)
|
|
256
273
|
},
|
|
257
274
|
selection: { selectedRowCount: e.selection.rowIds.length },
|
|
258
|
-
value:
|
|
275
|
+
value: J(e, t, r.id)
|
|
259
276
|
};
|
|
260
277
|
}
|
|
261
|
-
function
|
|
278
|
+
function w(e, t) {
|
|
262
279
|
return e === void 0 ? !0 : typeof e == "boolean" ? e : e(t);
|
|
263
280
|
}
|
|
264
|
-
function
|
|
265
|
-
let i =
|
|
281
|
+
function T(e, t, n, r) {
|
|
282
|
+
let i = C(e, t, n, r), a = r.cell?.props;
|
|
266
283
|
return typeof a == "function" ? a(i) : a;
|
|
267
284
|
}
|
|
268
|
-
function
|
|
269
|
-
let r =
|
|
285
|
+
function E(e, t, n = e.rowIds) {
|
|
286
|
+
let r = K(e), i = n.indexOf(t.anchor.rowId), a = n.indexOf(t.focus.rowId), o = r.findIndex((e) => e.id === t.anchor.columnId), s = r.findIndex((e) => e.id === t.focus.columnId);
|
|
270
287
|
return i < 0 || a < 0 || o < 0 || s < 0 ? null : {
|
|
271
288
|
columnEnd: Math.max(o, s),
|
|
272
289
|
columnStart: Math.min(o, s),
|
|
@@ -276,7 +293,7 @@ function T(e, t, n = e.rowIds) {
|
|
|
276
293
|
visibleColumns: r
|
|
277
294
|
};
|
|
278
295
|
}
|
|
279
|
-
function
|
|
296
|
+
function D(e, t) {
|
|
280
297
|
return e && typeof e == "object" && "id" in e ? {
|
|
281
298
|
...e,
|
|
282
299
|
id: t
|
|
@@ -287,48 +304,48 @@ function ee(e, t) {
|
|
|
287
304
|
for (; i.has(r);) n += 1, r = `${String(t)}-copy-${n}`;
|
|
288
305
|
return r;
|
|
289
306
|
}
|
|
290
|
-
function
|
|
307
|
+
function O(e, t, n, r, i, a = e.rowIds.indexOf(n)) {
|
|
291
308
|
if (t === void 0) return !1;
|
|
292
|
-
let
|
|
293
|
-
return
|
|
309
|
+
let o = C(e, t, n, r, a), s = r.cell?.props, c = typeof s == "function" ? s(o) : s;
|
|
310
|
+
return c?.disabled !== void 0 && w(c.disabled, o) === !0 ? !1 : w(i === "copy" ? c?.copyable : c?.pasteable, o);
|
|
294
311
|
}
|
|
295
|
-
function
|
|
312
|
+
function k(e, t) {
|
|
296
313
|
return typeof e == "number" && typeof t == "number" ? e - t : String(e ?? "").localeCompare(String(t ?? ""));
|
|
297
314
|
}
|
|
298
|
-
function
|
|
299
|
-
let v =
|
|
315
|
+
function te({ columnLayout: e, columnGroups: t, columns: n, getRowId: r = a, pagination: i, rows: d, showHeader: f = !0, sort: h = null, sortModel: g, theme: _ = {} }) {
|
|
316
|
+
let v = o(d), y = s(n), x = c(y, t), S = b(y, g ?? (h ? [h] : []));
|
|
300
317
|
return {
|
|
301
|
-
columnOrder:
|
|
318
|
+
columnOrder: p(y, e, x),
|
|
302
319
|
columnGroups: x,
|
|
303
|
-
columnGroupState:
|
|
304
|
-
columns:
|
|
305
|
-
columnState:
|
|
320
|
+
columnGroupState: u(x, e),
|
|
321
|
+
columns: y,
|
|
322
|
+
columnState: l(y, e),
|
|
306
323
|
getRowId: r,
|
|
307
324
|
pagination: {
|
|
308
|
-
pageIndex:
|
|
309
|
-
pageSize:
|
|
325
|
+
pageIndex: i?.pageIndex ?? 0,
|
|
326
|
+
pageSize: i?.pageSize ?? Math.max(v.length, 1)
|
|
310
327
|
},
|
|
311
328
|
rowIds: v.map(r),
|
|
312
329
|
rows: v,
|
|
313
|
-
selection:
|
|
314
|
-
showHeader:
|
|
330
|
+
selection: m(),
|
|
331
|
+
showHeader: f,
|
|
315
332
|
sort: S[0] ?? null,
|
|
316
333
|
sortModel: S,
|
|
317
334
|
theme: _
|
|
318
335
|
};
|
|
319
336
|
}
|
|
320
|
-
function
|
|
337
|
+
function A(e, t) {
|
|
321
338
|
return t ? e.rows.filter(t) : [...e.rows];
|
|
322
339
|
}
|
|
323
|
-
function
|
|
324
|
-
return
|
|
340
|
+
function ne(e, t) {
|
|
341
|
+
return g(e, o(t), { resetSelection: !0 });
|
|
325
342
|
}
|
|
326
|
-
function
|
|
327
|
-
return
|
|
343
|
+
function j(e, t) {
|
|
344
|
+
return g(e, [...e.rows, ...t]);
|
|
328
345
|
}
|
|
329
|
-
function
|
|
346
|
+
function M(e, t) {
|
|
330
347
|
let n = new Map(t.map((e) => [e.id, e.patch]));
|
|
331
|
-
return
|
|
348
|
+
return g(e, e.rows.map((t, r) => {
|
|
332
349
|
let i = e.rowIds[r], a = i === void 0 ? void 0 : n.get(i);
|
|
333
350
|
return a ? typeof a == "function" ? a(t) : {
|
|
334
351
|
...t,
|
|
@@ -336,14 +353,14 @@ function A(e, t) {
|
|
|
336
353
|
} : t;
|
|
337
354
|
}));
|
|
338
355
|
}
|
|
339
|
-
function
|
|
356
|
+
function re(e, t) {
|
|
340
357
|
let n = new Set(t);
|
|
341
|
-
return
|
|
358
|
+
return g(e, e.rows.filter((t, r) => {
|
|
342
359
|
let i = e.rowIds[r];
|
|
343
360
|
return i === void 0 || !n.has(i);
|
|
344
361
|
}));
|
|
345
362
|
}
|
|
346
|
-
function
|
|
363
|
+
function ie(e, t) {
|
|
347
364
|
return {
|
|
348
365
|
...e,
|
|
349
366
|
theme: {
|
|
@@ -352,13 +369,13 @@ function ae(e, t) {
|
|
|
352
369
|
}
|
|
353
370
|
};
|
|
354
371
|
}
|
|
355
|
-
function
|
|
372
|
+
function ae(e, t) {
|
|
356
373
|
return {
|
|
357
374
|
...e,
|
|
358
375
|
showHeader: t
|
|
359
376
|
};
|
|
360
377
|
}
|
|
361
|
-
function
|
|
378
|
+
function oe(e, t) {
|
|
362
379
|
return {
|
|
363
380
|
...e,
|
|
364
381
|
pagination: {
|
|
@@ -367,21 +384,21 @@ function se(e, t) {
|
|
|
367
384
|
}
|
|
368
385
|
};
|
|
369
386
|
}
|
|
370
|
-
function
|
|
371
|
-
return
|
|
387
|
+
function N(e, t) {
|
|
388
|
+
return P(e, t ? [t] : []);
|
|
372
389
|
}
|
|
373
|
-
function
|
|
374
|
-
let n =
|
|
375
|
-
return
|
|
390
|
+
function P(e, t) {
|
|
391
|
+
let n = b(e.columns, t), r = n[0] ?? null;
|
|
392
|
+
return y(e.sortModel, n) ? e : {
|
|
376
393
|
...e,
|
|
377
394
|
sort: r,
|
|
378
395
|
sortModel: n
|
|
379
396
|
};
|
|
380
397
|
}
|
|
381
|
-
function
|
|
382
|
-
return
|
|
398
|
+
function se(e) {
|
|
399
|
+
return P(e, []);
|
|
383
400
|
}
|
|
384
|
-
function
|
|
401
|
+
function ce(e, t, n) {
|
|
385
402
|
return {
|
|
386
403
|
...e,
|
|
387
404
|
columnState: {
|
|
@@ -393,7 +410,7 @@ function le(e, t, n) {
|
|
|
393
410
|
}
|
|
394
411
|
};
|
|
395
412
|
}
|
|
396
|
-
function
|
|
413
|
+
function le(e, t, n) {
|
|
397
414
|
return {
|
|
398
415
|
...e,
|
|
399
416
|
columnState: {
|
|
@@ -405,8 +422,8 @@ function ue(e, t, n) {
|
|
|
405
422
|
}
|
|
406
423
|
};
|
|
407
424
|
}
|
|
408
|
-
function
|
|
409
|
-
return
|
|
425
|
+
function ue(e, t, n) {
|
|
426
|
+
return f(e.columnGroups, t) ? {
|
|
410
427
|
...e,
|
|
411
428
|
columnGroupState: {
|
|
412
429
|
...e.columnGroupState,
|
|
@@ -417,38 +434,38 @@ function de(e, t, n) {
|
|
|
417
434
|
}
|
|
418
435
|
} : e;
|
|
419
436
|
}
|
|
420
|
-
function
|
|
437
|
+
function de(e, t) {
|
|
421
438
|
return e.columnState[t.id]?.width ?? t.width ?? 100;
|
|
422
439
|
}
|
|
423
|
-
function
|
|
440
|
+
function F(e) {
|
|
424
441
|
return Math.max(88, e.minWidth ?? 88);
|
|
425
442
|
}
|
|
426
|
-
function
|
|
443
|
+
function I(e) {
|
|
427
444
|
return e.maxWidth ?? Infinity;
|
|
428
445
|
}
|
|
429
|
-
function
|
|
446
|
+
function L(e, t, n) {
|
|
430
447
|
return Math.min(n, Math.max(t, e));
|
|
431
448
|
}
|
|
432
|
-
function
|
|
433
|
-
let r = t.map((t) =>
|
|
449
|
+
function R(e, t, n) {
|
|
450
|
+
let r = t.map((t) => L(de(e, t), F(t), I(t))), i = new Set(t.map((e, t) => t)), a = t.map(F), o = t.map(I), s = L(n, a.reduce((e, t) => e + t, 0), o.reduce((e, t) => e + t, 0));
|
|
434
451
|
for (; i.size > 0;) {
|
|
435
452
|
let e = s - r.reduce((e, t) => e + t, 0);
|
|
436
453
|
if (Math.abs(e) < .001) break;
|
|
437
454
|
let t = [...i], n = t.reduce((e, t) => e + Math.max(r[t] ?? 0, 0), 0), c = !1;
|
|
438
455
|
for (let s of t) {
|
|
439
|
-
let l = r[s] ?? 0, u = l + e * (n > 0 ? l / n : 1 / t.length), d =
|
|
456
|
+
let l = r[s] ?? 0, u = l + e * (n > 0 ? l / n : 1 / t.length), d = L(u, a[s] ?? 0, o[s] ?? Infinity);
|
|
440
457
|
r[s] = d, Math.abs(d - u) > .001 && (i.delete(s), c = !0);
|
|
441
458
|
}
|
|
442
459
|
if (!c) break;
|
|
443
460
|
}
|
|
444
461
|
return r;
|
|
445
462
|
}
|
|
446
|
-
function
|
|
447
|
-
let r =
|
|
463
|
+
function z(e, t, n) {
|
|
464
|
+
let r = f(e.columnGroups, t);
|
|
448
465
|
if (!r || e.columnGroupState[r.id]?.hidden === !0) return e;
|
|
449
|
-
let i = r.children.map((t) =>
|
|
466
|
+
let i = r.children.map((t) => v(e, t)).filter((e) => !!e).filter((t) => e.columnState[t.id]?.hidden !== !0);
|
|
450
467
|
if (i.length === 0) return e;
|
|
451
|
-
let a =
|
|
468
|
+
let a = R(e, i, n), o = { ...e.columnState };
|
|
452
469
|
return i.forEach((e, t) => {
|
|
453
470
|
o[e.id] = {
|
|
454
471
|
...o[e.id],
|
|
@@ -459,8 +476,8 @@ function L(e, t, n) {
|
|
|
459
476
|
columnState: o
|
|
460
477
|
};
|
|
461
478
|
}
|
|
462
|
-
function
|
|
463
|
-
let n = new Map(e.columnOrder.map((e, t) => [e, t])), r = new Map(t.map((e, t) => [e, t])), i =
|
|
479
|
+
function B(e, t) {
|
|
480
|
+
let n = new Map(e.columnOrder.map((e, t) => [e, t])), r = new Map(t.map((e, t) => [e, t])), i = d(e.columnGroups);
|
|
464
481
|
for (let t of e.columns) if ((t.lockPosition || !i.has(t.id) && e.columnState[t.id]?.pinned !== void 0) && n.get(t.id) !== r.get(t.id)) return !0;
|
|
465
482
|
for (let t of e.columnGroups) {
|
|
466
483
|
if (!t.lockPosition && e.columnGroupState[t.id]?.pinned === void 0) continue;
|
|
@@ -469,15 +486,15 @@ function R(e, t) {
|
|
|
469
486
|
}
|
|
470
487
|
return !1;
|
|
471
488
|
}
|
|
472
|
-
function
|
|
473
|
-
let r =
|
|
489
|
+
function V(e, t, n) {
|
|
490
|
+
let r = v(e, t), i = d(e.columnGroups).get(t);
|
|
474
491
|
if (!r || r.lockPosition || !i && e.columnState[t]?.pinned !== void 0) return e;
|
|
475
|
-
|
|
492
|
+
d(e.columnGroups);
|
|
476
493
|
let a = e.columnOrder.filter((e) => e !== t);
|
|
477
494
|
if (a.length === e.columnOrder.length) return e;
|
|
478
495
|
let o = Math.max(0, Math.min(n, a.length));
|
|
479
496
|
if (i) {
|
|
480
|
-
let t =
|
|
497
|
+
let t = f(e.columnGroups, i);
|
|
481
498
|
if (!t) return e;
|
|
482
499
|
let n = a.filter((e) => t.children.includes(e)), r = a.findIndex((e) => t.children.includes(e)), s = r + n.length;
|
|
483
500
|
if (o < r || o > s) return e;
|
|
@@ -487,13 +504,13 @@ function z(e, t, n) {
|
|
|
487
504
|
let r = a.findIndex((e) => t.children.includes(e)), i = r + n.length;
|
|
488
505
|
if (o > r && o < i) return e;
|
|
489
506
|
}
|
|
490
|
-
return a.splice(o, 0, t),
|
|
507
|
+
return a.splice(o, 0, t), B(e, a) || a.every((t, n) => t === e.columnOrder[n]) ? e : {
|
|
491
508
|
...e,
|
|
492
509
|
columnOrder: a
|
|
493
510
|
};
|
|
494
511
|
}
|
|
495
|
-
function
|
|
496
|
-
let r =
|
|
512
|
+
function H(e, t, n) {
|
|
513
|
+
let r = f(e.columnGroups, t);
|
|
497
514
|
if (!r || r.lockPosition || e.columnGroupState[t]?.pinned !== void 0) return e;
|
|
498
515
|
let i = e.columnOrder.filter((e) => r.children.includes(e));
|
|
499
516
|
if (i.length === 0) return e;
|
|
@@ -502,12 +519,12 @@ function B(e, t, n) {
|
|
|
502
519
|
...i,
|
|
503
520
|
...a.slice(o)
|
|
504
521
|
];
|
|
505
|
-
return
|
|
522
|
+
return B(e, s) || s.every((t, n) => t === e.columnOrder[n]) ? e : {
|
|
506
523
|
...e,
|
|
507
524
|
columnOrder: s
|
|
508
525
|
};
|
|
509
526
|
}
|
|
510
|
-
function
|
|
527
|
+
function fe(e) {
|
|
511
528
|
let t = e.columnGroups.length === 0 ? void 0 : Object.fromEntries(e.columnGroups.map((t) => [t.id, { ...e.columnGroupState[t.id] }]));
|
|
512
529
|
return {
|
|
513
530
|
columns: { ...e.columnState },
|
|
@@ -518,9 +535,9 @@ function V(e) {
|
|
|
518
535
|
function pe(e, t) {
|
|
519
536
|
return {
|
|
520
537
|
...e,
|
|
521
|
-
columnOrder:
|
|
522
|
-
columnGroupState:
|
|
523
|
-
columnState:
|
|
538
|
+
columnOrder: p(e.columns, t, e.columnGroups),
|
|
539
|
+
columnGroupState: u(e.columnGroups, t),
|
|
540
|
+
columnState: l(e.columns, t)
|
|
524
541
|
};
|
|
525
542
|
}
|
|
526
543
|
function me(e, t, n = {}) {
|
|
@@ -542,11 +559,11 @@ function he(e, t) {
|
|
|
542
559
|
}
|
|
543
560
|
};
|
|
544
561
|
}
|
|
545
|
-
function
|
|
562
|
+
function U(e, t) {
|
|
546
563
|
return e.rowId === t.rowId && e.columnId === t.columnId;
|
|
547
564
|
}
|
|
548
565
|
function ge(e, t, n = {}) {
|
|
549
|
-
let r = e.selection.cells ?? (e.selection.cell ? [e.selection.cell] : []), i = r.some((e) =>
|
|
566
|
+
let r = e.selection.cells ?? (e.selection.cell ? [e.selection.cell] : []), i = r.some((e) => U(e, t)), a = n.multi ? n.toggle && i ? r.filter((e) => !U(e, t)) : i ? r : [...r, t] : n.toggle && i ? [] : [t], o = a.some((e) => U(e, t)) ? t : a.at(-1) ?? null;
|
|
550
567
|
return {
|
|
551
568
|
...e,
|
|
552
569
|
selection: {
|
|
@@ -580,19 +597,19 @@ function ve(e) {
|
|
|
580
597
|
function ye(e) {
|
|
581
598
|
return {
|
|
582
599
|
...e,
|
|
583
|
-
selection:
|
|
600
|
+
selection: m()
|
|
584
601
|
};
|
|
585
602
|
}
|
|
586
603
|
function be(e, t) {
|
|
587
604
|
return e.selection.rowIds.includes(t);
|
|
588
605
|
}
|
|
589
|
-
function
|
|
606
|
+
function W(e, t) {
|
|
590
607
|
let n = e.selection.cells;
|
|
591
|
-
return n && n.length > 0 ? n.some((e) =>
|
|
608
|
+
return n && n.length > 0 ? n.some((e) => U(e, t)) : e.selection.cell !== null && U(e.selection.cell, t);
|
|
592
609
|
}
|
|
593
|
-
function
|
|
610
|
+
function G(e, t = e.selection.range, n = e.rowIds) {
|
|
594
611
|
if (!t) return [];
|
|
595
|
-
let r =
|
|
612
|
+
let r = K(e), i = E(e, t, n);
|
|
596
613
|
if (!i) return [];
|
|
597
614
|
let a = [];
|
|
598
615
|
for (let e = i.rowStart; e <= i.rowEnd; e += 1) {
|
|
@@ -608,12 +625,12 @@ function W(e, t = e.selection.range, n = e.rowIds) {
|
|
|
608
625
|
return a;
|
|
609
626
|
}
|
|
610
627
|
function xe(e, t, n = e.rowIds) {
|
|
611
|
-
return
|
|
628
|
+
return G(e, e.selection.range, n).some((e) => e.rowId === t.rowId && e.columnId === t.columnId);
|
|
612
629
|
}
|
|
613
|
-
function
|
|
614
|
-
let t =
|
|
630
|
+
function K(e) {
|
|
631
|
+
let t = d(e.columnGroups), n = new Map(e.columnGroups.map((e) => [e.id, e])), r = /* @__PURE__ */ new Set(), i = [];
|
|
615
632
|
for (let a of e.columnOrder) {
|
|
616
|
-
let o =
|
|
633
|
+
let o = v(e, a);
|
|
617
634
|
if (!o || e.columnState[o.id]?.hidden === !0) continue;
|
|
618
635
|
let s = t.get(o.id);
|
|
619
636
|
if (!s) {
|
|
@@ -626,7 +643,7 @@ function G(e) {
|
|
|
626
643
|
if (r.has(s) || e.columnGroupState[s]?.hidden === !0) continue;
|
|
627
644
|
let c = n.get(s);
|
|
628
645
|
if (!c) continue;
|
|
629
|
-
let l = e.columnOrder.filter((e) => c.children.includes(e)).map((t) =>
|
|
646
|
+
let l = e.columnOrder.filter((e) => c.children.includes(e)).map((t) => v(e, t)).filter((t) => !!t && e.columnState[t.id]?.hidden !== !0);
|
|
630
647
|
l.length > 0 && i.push({
|
|
631
648
|
columns: l,
|
|
632
649
|
pinned: e.columnGroupState[s]?.pinned
|
|
@@ -639,7 +656,7 @@ function G(e) {
|
|
|
639
656
|
].flatMap((e) => i.filter((t) => t.pinned === e).flatMap((e) => e.columns));
|
|
640
657
|
}
|
|
641
658
|
function Se(e) {
|
|
642
|
-
let t =
|
|
659
|
+
let t = K(e);
|
|
643
660
|
if (e.columnGroups.length === 0) return [t.map((e) => ({
|
|
644
661
|
colSpan: 1,
|
|
645
662
|
column: e,
|
|
@@ -648,7 +665,7 @@ function Se(e) {
|
|
|
648
665
|
rowSpan: 1
|
|
649
666
|
}))];
|
|
650
667
|
new Set(t.map((e) => e.id));
|
|
651
|
-
let n =
|
|
668
|
+
let n = d(e.columnGroups), r = new Map(e.columnGroups.map((e) => [e.id, e])), i = /* @__PURE__ */ new Set(), a = [], o = [];
|
|
652
669
|
for (let e of t) {
|
|
653
670
|
let s = e.id, c = n.get(s);
|
|
654
671
|
if (!c) {
|
|
@@ -686,29 +703,29 @@ function Se(e) {
|
|
|
686
703
|
}
|
|
687
704
|
return [a, o];
|
|
688
705
|
}
|
|
689
|
-
function
|
|
706
|
+
function q(e, t = e.rows.map((e, t) => t)) {
|
|
690
707
|
let n = [...t];
|
|
691
708
|
return e.sortModel.length === 0 ? n : [...n].sort((t, n) => {
|
|
692
709
|
let r = e.rows[t], i = e.rows[n];
|
|
693
710
|
for (let t of e.sortModel) {
|
|
694
|
-
let n =
|
|
711
|
+
let n = v(e, t.columnId);
|
|
695
712
|
if (!n?.sort) continue;
|
|
696
|
-
let a =
|
|
713
|
+
let a = J(e, r, n.id), o = J(e, i, n.id), s = typeof n.sort == "function" ? n.sort(a, o, r, i) : k(a, o);
|
|
697
714
|
if (s !== 0) return t.direction === "desc" ? s * -1 : s;
|
|
698
715
|
}
|
|
699
716
|
return t - n;
|
|
700
717
|
});
|
|
701
718
|
}
|
|
702
719
|
function Ce(e, t) {
|
|
703
|
-
let n =
|
|
704
|
-
return
|
|
720
|
+
let n = N(e, t);
|
|
721
|
+
return g(n, q(n).map((e) => n.rows[e]));
|
|
705
722
|
}
|
|
706
723
|
function we(e, t = {}) {
|
|
707
724
|
let n = t.pageIndex ?? e.pagination.pageIndex, r = t.pageSize ?? e.pagination.pageSize, i = Math.max(0, n) * Math.max(1, r);
|
|
708
|
-
return
|
|
725
|
+
return q(e).slice(i, i + Math.max(1, r)).map((t) => e.rows[t]);
|
|
709
726
|
}
|
|
710
727
|
function Te(e, { overscan: t = 2, rowHeight: n, scrollTop: r, viewportHeight: i }) {
|
|
711
|
-
let a = Math.max(1, n), o =
|
|
728
|
+
let a = Math.max(1, n), o = q(e), s = o.length, c = s * a, l = Math.max(0, Math.floor(Math.max(0, r) / a) - Math.max(0, t)), u = Math.min(s, Math.ceil((Math.max(0, r) + Math.max(0, i)) / a) + Math.max(0, t)), d = l * a;
|
|
712
729
|
return {
|
|
713
730
|
bottomSpacerHeight: Math.max(0, c - d - (u - l) * a),
|
|
714
731
|
endIndex: u,
|
|
@@ -719,13 +736,13 @@ function Te(e, { overscan: t = 2, rowHeight: n, scrollTop: r, viewportHeight: i
|
|
|
719
736
|
};
|
|
720
737
|
}
|
|
721
738
|
function Ee(e, t, n) {
|
|
722
|
-
let r =
|
|
739
|
+
let r = _(e, t);
|
|
723
740
|
if (r < 0) return e;
|
|
724
741
|
let i = [...e.rows], [a] = i.splice(r, 1);
|
|
725
|
-
return a === void 0 ? e : (i.splice(Math.max(0, Math.min(n, i.length)), 0, a),
|
|
742
|
+
return a === void 0 ? e : (i.splice(Math.max(0, Math.min(n, i.length)), 0, a), g(e, i));
|
|
726
743
|
}
|
|
727
744
|
function De(e, t) {
|
|
728
|
-
let n =
|
|
745
|
+
let n = _(e, t.sourceRowId), r = t.targetRowId === void 0 ? -1 : _(e, t.targetRowId);
|
|
729
746
|
if (n < 0 || t.targetRowId === t.sourceRowId || t.targetRowId !== void 0 && r < 0) return e;
|
|
730
747
|
let i = e.rows[n];
|
|
731
748
|
if (i === void 0) return e;
|
|
@@ -750,30 +767,30 @@ function De(e, t) {
|
|
|
750
767
|
t.getRowGroupId(n, r) === t.targetGroupId && (e = r);
|
|
751
768
|
}), l = e < 0 ? c.length : e + 1;
|
|
752
769
|
}
|
|
753
|
-
return c.splice(l, 0, s),
|
|
770
|
+
return c.splice(l, 0, s), g(e, c);
|
|
754
771
|
}
|
|
755
|
-
function
|
|
756
|
-
let r =
|
|
757
|
-
return r ?
|
|
772
|
+
function J(e, t, n) {
|
|
773
|
+
let r = v(e, n);
|
|
774
|
+
return r ? x(t, r.field) : void 0;
|
|
758
775
|
}
|
|
759
776
|
function Oe(e, t, n, r) {
|
|
760
|
-
let i =
|
|
761
|
-
return r.cell?.format ? r.cell.format(
|
|
777
|
+
let i = J(e, t, r.id);
|
|
778
|
+
return r.cell?.format ? r.cell.format(C(e, t, n, r)) : i == null ? "" : String(i);
|
|
762
779
|
}
|
|
763
780
|
function ke(e, t, n, r) {
|
|
764
|
-
let i =
|
|
765
|
-
return i?.disabled !== void 0 &&
|
|
781
|
+
let i = T(e, t, n, r);
|
|
782
|
+
return i?.disabled !== void 0 && w(i.disabled, C(e, t, n, r)) === !0;
|
|
766
783
|
}
|
|
767
784
|
function Ae(e, t, n, r) {
|
|
768
|
-
let i =
|
|
785
|
+
let i = C(e, t, n, r), a = T(e, t, n, r)?.className;
|
|
769
786
|
return typeof a == "function" ? a(i) : a;
|
|
770
787
|
}
|
|
771
788
|
function je(e, t, n, r) {
|
|
772
|
-
let i =
|
|
789
|
+
let i = C(e, t, n, r), a = T(e, t, n, r)?.style;
|
|
773
790
|
return typeof a == "function" ? a(i) : a;
|
|
774
791
|
}
|
|
775
792
|
function Me(e, t) {
|
|
776
|
-
let n = e.rows[
|
|
793
|
+
let n = e.rows[_(e, t)];
|
|
777
794
|
if (n === void 0) throw Error(`Cannot copy missing row: ${String(t)}`);
|
|
778
795
|
return {
|
|
779
796
|
kind: "row",
|
|
@@ -784,50 +801,50 @@ function Me(e, t) {
|
|
|
784
801
|
function Ne(e, t, n) {
|
|
785
802
|
if (n.mode === "append") {
|
|
786
803
|
let r = n.getNewRowId?.(t.row);
|
|
787
|
-
return
|
|
804
|
+
return j(e, [r === void 0 ? t.row : D(t.row, r)]);
|
|
788
805
|
}
|
|
789
806
|
if (n.mode === "insert-after") {
|
|
790
|
-
let r =
|
|
807
|
+
let r = _(e, n.targetRowId);
|
|
791
808
|
if (r < 0) return e;
|
|
792
|
-
let i = e.getRowId(t.row, r), a = n.getPastedRowId?.(t.row) ?? ee(e.rowIds, i), o =
|
|
793
|
-
return s.splice(r + 1, 0, o),
|
|
809
|
+
let i = e.getRowId(t.row, r), a = n.getPastedRowId?.(t.row) ?? ee(e.rowIds, i), o = D(t.row, a), s = [...e.rows];
|
|
810
|
+
return s.splice(r + 1, 0, o), g(e, s);
|
|
794
811
|
}
|
|
795
|
-
return
|
|
812
|
+
return M(e, [{
|
|
796
813
|
id: n.targetRowId,
|
|
797
|
-
patch:
|
|
814
|
+
patch: D(t.row, n.targetRowId)
|
|
798
815
|
}]);
|
|
799
816
|
}
|
|
800
|
-
function
|
|
801
|
-
let r = e.rows[
|
|
802
|
-
if (!i || !
|
|
803
|
-
let a =
|
|
817
|
+
function Pe(e, { columnId: t, rowId: n }) {
|
|
818
|
+
let r = e.rows[_(e, n)], i = v(e, t);
|
|
819
|
+
if (!i || !O(e, r, n, i, "copy")) return null;
|
|
820
|
+
let a = J(e, r, t);
|
|
804
821
|
return {
|
|
805
822
|
kind: "cell",
|
|
806
823
|
text: a == null ? "" : String(a),
|
|
807
824
|
value: a
|
|
808
825
|
};
|
|
809
826
|
}
|
|
810
|
-
function
|
|
811
|
-
let i =
|
|
812
|
-
return !r || !i || !
|
|
827
|
+
function Fe(e, { columnId: t, rowId: n }, r) {
|
|
828
|
+
let i = v(e, t), a = e.rows[_(e, n)];
|
|
829
|
+
return !r || !i || !O(e, a, n, i, "paste") ? e : M(e, [{
|
|
813
830
|
id: n,
|
|
814
|
-
patch: (e) =>
|
|
831
|
+
patch: (e) => S(e, i.field, r.value)
|
|
815
832
|
}]);
|
|
816
833
|
}
|
|
817
|
-
function
|
|
834
|
+
function Ie(e, t = e.selection.range, n = e.rowIds) {
|
|
818
835
|
if (!t) return null;
|
|
819
|
-
let r =
|
|
836
|
+
let r = E(e, t, n);
|
|
820
837
|
if (!r) return null;
|
|
821
838
|
let i = [];
|
|
822
839
|
for (let t = r.rowStart; t <= r.rowEnd; t += 1) {
|
|
823
|
-
let n = r.rowIds[t], a = n === void 0 ? -1 :
|
|
840
|
+
let n = r.rowIds[t], a = n === void 0 ? -1 : _(e, n), o = e.rows[a], s = [];
|
|
824
841
|
for (let t = r.columnStart; t <= r.columnEnd; t += 1) {
|
|
825
842
|
let i = r.visibleColumns[t];
|
|
826
|
-
if (o === void 0 || n === void 0 || !i || !
|
|
843
|
+
if (o === void 0 || n === void 0 || !i || !O(e, o, n, i, "copy")) {
|
|
827
844
|
s.push(null);
|
|
828
845
|
continue;
|
|
829
846
|
}
|
|
830
|
-
let a =
|
|
847
|
+
let a = J(e, o, i.id);
|
|
831
848
|
s.push({
|
|
832
849
|
columnId: i.id,
|
|
833
850
|
text: a == null ? "" : String(a),
|
|
@@ -842,33 +859,82 @@ function Pe(e, t = e.selection.range, n = e.rowIds) {
|
|
|
842
859
|
text: i.map((e) => e.map((e) => e?.text ?? "").join(" ")).join("\n")
|
|
843
860
|
};
|
|
844
861
|
}
|
|
845
|
-
function
|
|
862
|
+
function Le(e, t, n, r = e.rowIds) {
|
|
846
863
|
if (!n) return e;
|
|
847
|
-
let i =
|
|
864
|
+
let i = K(e), a = r.indexOf(t.rowId), o = i.findIndex((e) => e.id === t.columnId), s = [...e.rows];
|
|
848
865
|
if (a < 0 || o < 0) return e;
|
|
849
866
|
let c = !1;
|
|
850
867
|
return n.rows.forEach((t, n) => {
|
|
851
|
-
let l = r[a + n], u = l === void 0 ? -1 :
|
|
868
|
+
let l = r[a + n], u = l === void 0 ? -1 : _(e, l), d = s[u];
|
|
852
869
|
d !== void 0 && l !== void 0 && t.forEach((t, n) => {
|
|
853
870
|
let r = i[o + n];
|
|
854
|
-
!t || !r || !
|
|
871
|
+
!t || !r || !O(e, d, l, r, "paste") || (s[u] = S(s[u], r.field, t.value), c = !0);
|
|
855
872
|
});
|
|
856
|
-
}), c ?
|
|
873
|
+
}), c ? g(e, s) : e;
|
|
874
|
+
}
|
|
875
|
+
function Re(t, n, r, i = t.rowIds) {
|
|
876
|
+
let a = e(r), o = K(t), s = i.indexOf(n.rowId), c = o.findIndex((e) => e.id === n.columnId);
|
|
877
|
+
return s < 0 || c < 0 ? t : Y(t, i, s, c, a.length, a.reduce((e, t) => Math.max(e, t.length), 0), (e, n, r, i, o, s) => {
|
|
878
|
+
let c = a[e]?.[n];
|
|
879
|
+
if (c === void 0) return null;
|
|
880
|
+
let l = C(t, i, o, r, s);
|
|
881
|
+
return { value: r.cell?.parseClipboard ? r.cell.parseClipboard({
|
|
882
|
+
...l,
|
|
883
|
+
text: c
|
|
884
|
+
}) : c };
|
|
885
|
+
});
|
|
857
886
|
}
|
|
858
|
-
function
|
|
859
|
-
|
|
860
|
-
|
|
887
|
+
function Y(e, t, n, r, i, a, o) {
|
|
888
|
+
if (i * a > 1e5) throw Error("Clipboard exceeds 100000 cells.");
|
|
889
|
+
let s = K(e), c = new Map(e.rowIds.map((e, t) => [e, t])), l = [...e.rows], u = !1;
|
|
890
|
+
for (let d = 0; d < i && n + d < t.length; d++) {
|
|
891
|
+
let i = t[n + d], f = c.get(i), p = f === void 0 ? void 0 : e.rows[f];
|
|
892
|
+
if (f !== void 0 && p !== void 0) for (let t = 0; t < a && r + t < s.length; t++) {
|
|
893
|
+
let n = s[r + t];
|
|
894
|
+
if (!O(e, p, i, n, "paste", f)) continue;
|
|
895
|
+
let a = o(d, t, n, p, i, f);
|
|
896
|
+
!a || Object.is(x(l[f], n.field), a.value) || (l[f] = S(l[f], n.field, a.value), u = !0);
|
|
897
|
+
}
|
|
898
|
+
}
|
|
899
|
+
return u ? g(e, l) : e;
|
|
900
|
+
}
|
|
901
|
+
function ze(e, { source: t, target: n }, r = e.rowIds) {
|
|
902
|
+
let i = E(e, "anchor" in t ? t : {
|
|
903
|
+
anchor: t,
|
|
904
|
+
focus: t
|
|
905
|
+
}, r), a = E(e, n, r);
|
|
906
|
+
if (!i || !a) return e;
|
|
907
|
+
let o = i.rowEnd - i.rowStart + 1, s = i.columnEnd - i.columnStart + 1;
|
|
908
|
+
if (o * s > 1e5) throw Error("Clipboard exceeds 100000 cells.");
|
|
909
|
+
let c = new Map(e.rowIds.map((e, t) => [e, t])), l = Array.from({ length: o }, (t, n) => {
|
|
910
|
+
let a = r[i.rowStart + n], o = c.get(a), l = o === void 0 ? void 0 : e.rows[o];
|
|
911
|
+
return Array.from({ length: s }, (t, n) => {
|
|
912
|
+
let r = i.visibleColumns[i.columnStart + n];
|
|
913
|
+
return l === void 0 || !O(e, l, a, r, "copy", o) ? null : { value: x(l, r.field) };
|
|
914
|
+
});
|
|
915
|
+
}), u = (e, t) => (e % t + t) % t;
|
|
916
|
+
return Y(e, r, a.rowStart, a.columnStart, a.rowEnd - a.rowStart + 1, a.columnEnd - a.columnStart + 1, (t, n, r, c, d, f) => {
|
|
917
|
+
let p = l[u(a.rowStart + t - i.rowStart, o)][u(a.columnStart + n - i.columnStart, s)];
|
|
918
|
+
if (p && !Object.is(x(c, r.field), p.value) && r.cell?.validateFill) {
|
|
919
|
+
let t = C(e, c, d, r, f);
|
|
920
|
+
if (r.cell.validateFill({
|
|
921
|
+
...t,
|
|
922
|
+
value: p.value
|
|
923
|
+
}) === !1) throw Error(`Fill rejected for column "${r.id}".`);
|
|
924
|
+
}
|
|
925
|
+
return p;
|
|
926
|
+
});
|
|
861
927
|
}
|
|
862
928
|
function X({ columnOrder: e, columns: t }) {
|
|
863
929
|
if (!e?.length) return t;
|
|
864
930
|
let n = new Map(t.map((e) => [e.id, e]));
|
|
865
931
|
return e.map((e) => n.get(e)).filter((e) => !!e);
|
|
866
932
|
}
|
|
867
|
-
function
|
|
933
|
+
function Be(e) {
|
|
868
934
|
return e == null ? "" : typeof e == "string" ? e : typeof e == "number" || typeof e == "boolean" || typeof e == "bigint" ? String(e) : JSON.stringify(e);
|
|
869
935
|
}
|
|
870
936
|
function Z(e) {
|
|
871
|
-
let t =
|
|
937
|
+
let t = Be(e);
|
|
872
938
|
return /[",\r\n]/u.test(t) ? `"${t.replaceAll("\"", "\"\"")}"` : t;
|
|
873
939
|
}
|
|
874
940
|
function Q(e, t) {
|
|
@@ -877,14 +943,14 @@ function Q(e, t) {
|
|
|
877
943
|
function $(e, t, n, r) {
|
|
878
944
|
return r === "formatted" && e.format ? e.format(t, n) : e.value(t, n);
|
|
879
945
|
}
|
|
880
|
-
function
|
|
946
|
+
function Ve({ columnOrder: e, columns: t, headerOverrides: n, rows: r, valueSource: i = "raw" }) {
|
|
881
947
|
let a = X({
|
|
882
948
|
columnOrder: e,
|
|
883
949
|
columns: t
|
|
884
950
|
});
|
|
885
951
|
return [a.map((e) => Z(Q(e, n))).join(","), ...r.map((e, t) => a.map((n) => Z($(n, e, t, i))).join(","))].join("\n");
|
|
886
952
|
}
|
|
887
|
-
function
|
|
953
|
+
function He({ columnOrder: e, columns: t, headerOverrides: n, rows: r, valueSource: i = "raw" }) {
|
|
888
954
|
let a = X({
|
|
889
955
|
columnOrder: e,
|
|
890
956
|
columns: t
|
|
@@ -892,6 +958,6 @@ function ze({ columnOrder: e, columns: t, headerOverrides: n, rows: r, valueSour
|
|
|
892
958
|
return JSON.stringify(o, null, 2);
|
|
893
959
|
}
|
|
894
960
|
//#endregion
|
|
895
|
-
export {
|
|
961
|
+
export { M as $, Ee as A, me as B, K as C, be as D, W as E, Re as F, le as G, fe as H, A as I, oe as J, ce as K, ne as L, Fe as M, Le as N, V as O, Ne as P, Ce as Q, ge as R, Te as S, xe as T, ue as U, he as V, z as W, N as X, P as Y, ie as Z, J as _, se as a, G as b, Me as c, Ve as d, i as et, He as f, je as g, Ae as h, ye as i, De as j, H as k, te as l, Oe as m, pe as n, n as nt, Pe as o, ze as p, ae as q, ve as r, e as rt, Ie as s, j as t, r as tt, re as u, Se as v, ke as w, q as x, we as y, _e as z };
|
|
896
962
|
|
|
897
|
-
//# sourceMappingURL=core-
|
|
963
|
+
//# sourceMappingURL=core-C1tlvY8Q.js.map
|