@guiexpert/table 1.1.88 → 1.1.90
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/index.cjs +39 -39
- package/index.js +1167 -1047
- package/lib/table/data/options/table-options.d.ts +7 -0
- package/lib/table/factory/tree-factory.d.ts +38 -3
- package/lib/table/mouse-handler.d.ts +1 -0
- package/lib/table/render-scope.d.ts +1 -0
- package/lib/table/service/excel-service.d.ts +19 -2
- package/lib/table/service/excel-service.if.d.ts +1 -1
- package/lib/table/service/store-state-collapsed-expand.service.d.ts +8 -0
- package/lib/table/table-api.d.ts +15 -2
- package/lib/table/table-scope.d.ts +11 -0
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -1,54 +1,49 @@
|
|
|
1
|
-
function
|
|
1
|
+
function jt(h, e = 500) {
|
|
2
2
|
let t = null, s = 0;
|
|
3
3
|
return function(...o) {
|
|
4
4
|
const i = Date.now(), r = e - (i - s);
|
|
5
|
-
r <= 0 ? (
|
|
6
|
-
|
|
5
|
+
r <= 0 ? (h.apply(this, o), s = i) : t || (t = window.setTimeout(() => {
|
|
6
|
+
h.apply(this, o), s = Date.now(), t = null;
|
|
7
7
|
}, r));
|
|
8
8
|
};
|
|
9
9
|
}
|
|
10
|
-
function
|
|
10
|
+
function Ke(h, e = 500) {
|
|
11
11
|
let t = null;
|
|
12
12
|
return function(...s) {
|
|
13
13
|
t && window.clearTimeout(t), t = window.setTimeout(() => {
|
|
14
|
-
|
|
14
|
+
h.apply(this, s), t = null;
|
|
15
15
|
}, e);
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
|
-
function
|
|
18
|
+
function Ut(h = 500) {
|
|
19
19
|
return function(e, t, s) {
|
|
20
20
|
let o = 0;
|
|
21
21
|
const i = s.value;
|
|
22
22
|
return s.value = function(...r) {
|
|
23
|
-
if (!(Date.now() - o <
|
|
23
|
+
if (!(Date.now() - o < h))
|
|
24
24
|
return o = Date.now(), i.apply(this, r);
|
|
25
25
|
}, s;
|
|
26
26
|
};
|
|
27
27
|
}
|
|
28
|
-
const
|
|
29
|
-
class
|
|
28
|
+
const Ve = "any", X = "undefined", Oe = "null", $e = "string", me = "number", be = "boolean", He = "Array", J = "object", ee = [Oe, X, Ve];
|
|
29
|
+
class Be {
|
|
30
30
|
constructor(e) {
|
|
31
|
-
this.propertyName = e, this.type =
|
|
31
|
+
this.propertyName = e, this.type = Ve;
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
-
class
|
|
34
|
+
class ae {
|
|
35
35
|
constructor(e) {
|
|
36
36
|
this.propertyName = e, this.type = X;
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
class Xe {
|
|
40
|
-
constructor(e) {
|
|
41
|
-
this.propertyName = e, this.type = Ve;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
class Ke {
|
|
45
40
|
constructor(e) {
|
|
46
41
|
this.propertyName = e, this.type = Oe;
|
|
47
42
|
}
|
|
48
43
|
}
|
|
49
44
|
class Je {
|
|
50
45
|
constructor(e) {
|
|
51
|
-
this.propertyName = e, this.type =
|
|
46
|
+
this.propertyName = e, this.type = $e;
|
|
52
47
|
}
|
|
53
48
|
}
|
|
54
49
|
class qe {
|
|
@@ -56,12 +51,17 @@ class qe {
|
|
|
56
51
|
this.propertyName = e, this.type = me;
|
|
57
52
|
}
|
|
58
53
|
}
|
|
54
|
+
class Ze {
|
|
55
|
+
constructor(e) {
|
|
56
|
+
this.propertyName = e, this.type = be;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
59
|
class B {
|
|
60
60
|
constructor(e, t = []) {
|
|
61
|
-
this.propertyName = e, this.items = t, this.type =
|
|
61
|
+
this.propertyName = e, this.items = t, this.type = He;
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
|
-
class
|
|
64
|
+
class We {
|
|
65
65
|
constructor(e, t = []) {
|
|
66
66
|
this.propertyName = e, this.types = t;
|
|
67
67
|
}
|
|
@@ -71,10 +71,10 @@ class Be {
|
|
|
71
71
|
}
|
|
72
72
|
class L {
|
|
73
73
|
constructor(e, t, s = []) {
|
|
74
|
-
this.propertyName = e, this.className = t, this.properties = s, this.type =
|
|
74
|
+
this.propertyName = e, this.className = t, this.properties = s, this.type = J;
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
-
class
|
|
77
|
+
class Yt {
|
|
78
78
|
constructor() {
|
|
79
79
|
this.rootPropertyType = null, this.allowCustomRenderer = !0, this.bufCustomRenderer = [], this.LABEL_MAPPINGS = {
|
|
80
80
|
Id: "ID",
|
|
@@ -101,7 +101,7 @@ class Xt {
|
|
|
101
101
|
if (!this.rootPropertyType)
|
|
102
102
|
return s;
|
|
103
103
|
if (e instanceof B) {
|
|
104
|
-
const o = e.items.find((i) => i.type ===
|
|
104
|
+
const o = e.items.find((i) => i.type === J);
|
|
105
105
|
if (o && o instanceof L) {
|
|
106
106
|
const i = o.properties;
|
|
107
107
|
s.push(" const columnDefs: ColumnDefIf[] = ["), this.iteratePropertyItems(s, i, ""), s.push(" ];");
|
|
@@ -111,34 +111,34 @@ class Xt {
|
|
|
111
111
|
}
|
|
112
112
|
iteratePropertyItems(e, t, s = "") {
|
|
113
113
|
for (let o = 0; o < t.length; o++) {
|
|
114
|
-
let r = t[o].types.filter((n) => !
|
|
114
|
+
let r = t[o].types.filter((n) => !ee.includes(n.type));
|
|
115
115
|
if (r.length === 1) {
|
|
116
116
|
let n = r[0];
|
|
117
117
|
const l = s ? [s, n.propertyName].join(".") : n.propertyName;
|
|
118
118
|
if (n instanceof L)
|
|
119
119
|
this.iteratePropertyItems(e, n.properties, l);
|
|
120
120
|
else {
|
|
121
|
-
let
|
|
121
|
+
let c = "";
|
|
122
122
|
if (n instanceof B) {
|
|
123
|
-
const
|
|
124
|
-
|
|
123
|
+
const f = n.items.find((m) => m.type === J);
|
|
124
|
+
f && f instanceof L && (c = f.className);
|
|
125
125
|
}
|
|
126
|
-
const
|
|
127
|
-
let
|
|
128
|
-
if (n.type ===
|
|
129
|
-
if (this.allowCustomRenderer &&
|
|
130
|
-
const
|
|
131
|
-
u = ` bodyRenderer: new ${
|
|
126
|
+
const a = this.getReadableColumnLabel(l);
|
|
127
|
+
let d = 100, u = "", p = "ge-table-text-align-left";
|
|
128
|
+
if (n.type === He) {
|
|
129
|
+
if (this.allowCustomRenderer && c) {
|
|
130
|
+
const f = `${c}ArrayCellRenderer`;
|
|
131
|
+
u = ` bodyRenderer: new ${f}(),`, p = "", this.renderCumstomCellRenderer(c, f);
|
|
132
132
|
} else
|
|
133
133
|
u = " bodyRenderer: new SimpleArrayCellRenderer(),";
|
|
134
|
-
|
|
135
|
-
} else n.type ===
|
|
134
|
+
d = 250;
|
|
135
|
+
} else n.type === me ? (u = " bodyRenderer: new NumberCellRenderer(),", p = "ge-table-text-align-right") : n.type === be && (u = " bodyRenderer: new TrueFalseCellRenderer(),", p = "ge-table-text-align-center", d = 80);
|
|
136
136
|
e.push(` ColumnDef.create({
|
|
137
137
|
property: "${l}",
|
|
138
|
-
headerLabel: "${
|
|
139
|
-
width: new Size(${
|
|
140
|
-
bodyClasses: ["${
|
|
141
|
-
headerClasses: ["${
|
|
138
|
+
headerLabel: "${a}",
|
|
139
|
+
width: new Size(${d}, "px"),
|
|
140
|
+
bodyClasses: ["${p}"],
|
|
141
|
+
headerClasses: ["${p}"],`), u && e.push(u), e.push(" }),");
|
|
142
142
|
}
|
|
143
143
|
}
|
|
144
144
|
}
|
|
@@ -194,7 +194,7 @@ export class ${t} implements CellRendererIf {
|
|
|
194
194
|
`);
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
|
-
class
|
|
197
|
+
class Ae {
|
|
198
198
|
/**
|
|
199
199
|
*
|
|
200
200
|
* Fixes an invalid json like this:
|
|
@@ -260,30 +260,30 @@ class Re {
|
|
|
260
260
|
return s;
|
|
261
261
|
}
|
|
262
262
|
}
|
|
263
|
-
class
|
|
263
|
+
class Qe {
|
|
264
264
|
constructor() {
|
|
265
|
-
this.property = "", this.value = "", this.path = "", this.propertyItem = new
|
|
265
|
+
this.property = "", this.value = "", this.path = "", this.propertyItem = new We("", [new Be("")]);
|
|
266
266
|
}
|
|
267
267
|
toString() {
|
|
268
268
|
var e;
|
|
269
269
|
return `${this.path} -> : ${((e = this.propertyItem) == null ? void 0 : e.toString()) ?? ""}`;
|
|
270
270
|
}
|
|
271
271
|
}
|
|
272
|
-
const
|
|
273
|
-
function
|
|
274
|
-
let e =
|
|
275
|
-
return e.includes(
|
|
272
|
+
const Me = "Entity";
|
|
273
|
+
function et(h) {
|
|
274
|
+
let e = tt(st(h));
|
|
275
|
+
return e.includes(Me) || (e = e + Me), e;
|
|
276
276
|
}
|
|
277
|
-
function
|
|
278
|
-
if (!
|
|
277
|
+
function tt(h) {
|
|
278
|
+
if (!h || h.length === 0) return h;
|
|
279
279
|
const e = ["Array", "Arr", "List", "s"];
|
|
280
280
|
for (const t of e)
|
|
281
|
-
if (
|
|
282
|
-
return
|
|
283
|
-
return
|
|
281
|
+
if (h.endsWith(t))
|
|
282
|
+
return h.slice(0, -t.length);
|
|
283
|
+
return h;
|
|
284
284
|
}
|
|
285
|
-
function
|
|
286
|
-
return !
|
|
285
|
+
function st(h) {
|
|
286
|
+
return !h || h.length === 0 ? "" : h[0].toUpperCase() + h.slice(1);
|
|
287
287
|
}
|
|
288
288
|
class Kt {
|
|
289
289
|
constructor() {
|
|
@@ -372,7 +372,7 @@ class Kt {
|
|
|
372
372
|
json2PropertyType(e, t = "") {
|
|
373
373
|
let s;
|
|
374
374
|
if (typeof e == "string") {
|
|
375
|
-
const o = new
|
|
375
|
+
const o = new Ae().fixJSON(e);
|
|
376
376
|
s = this.json2Object(o);
|
|
377
377
|
} else
|
|
378
378
|
s = e;
|
|
@@ -488,7 +488,7 @@ class Kt {
|
|
|
488
488
|
json2ValueInfos(e, t = "") {
|
|
489
489
|
let s;
|
|
490
490
|
if (typeof e == "string") {
|
|
491
|
-
const o = new
|
|
491
|
+
const o = new Ae().fixJSON(e);
|
|
492
492
|
s = this.json2Object(o);
|
|
493
493
|
} else
|
|
494
494
|
s = e;
|
|
@@ -512,22 +512,22 @@ class Kt {
|
|
|
512
512
|
const r = s.get(i);
|
|
513
513
|
if (r) {
|
|
514
514
|
let n = !1;
|
|
515
|
-
const l = r.propertyItem.types.filter((
|
|
515
|
+
const l = r.propertyItem.types.filter((c) => !ee.includes(c.type));
|
|
516
516
|
if (l.length === 1) {
|
|
517
|
-
const
|
|
518
|
-
if (
|
|
517
|
+
const c = l[0];
|
|
518
|
+
if (c instanceof B) {
|
|
519
519
|
n = !0;
|
|
520
|
-
for (const
|
|
521
|
-
|
|
522
|
-
} else
|
|
520
|
+
for (const a of o.propertyItem.types)
|
|
521
|
+
c.items.push(a);
|
|
522
|
+
} else c instanceof L && (n = !0, c.properties.push(o.propertyItem));
|
|
523
523
|
}
|
|
524
524
|
if (!n)
|
|
525
|
-
for (const
|
|
526
|
-
r.propertyItem.types.push(
|
|
525
|
+
for (const c of o.propertyItem.types)
|
|
526
|
+
r.propertyItem.types.push(c);
|
|
527
527
|
}
|
|
528
528
|
}
|
|
529
529
|
}
|
|
530
|
-
return t || new
|
|
530
|
+
return t || new Be("");
|
|
531
531
|
}
|
|
532
532
|
logValueInfos(e) {
|
|
533
533
|
for (let t = 0; t < e.length; t++) {
|
|
@@ -556,8 +556,8 @@ class Kt {
|
|
|
556
556
|
if (n) {
|
|
557
557
|
const l = this.getFirstValueInfoByPath(e, n);
|
|
558
558
|
if (Array.isArray(l == null ? void 0 : l.value)) {
|
|
559
|
-
const
|
|
560
|
-
|
|
559
|
+
const c = (l == null ? void 0 : l.value.length) ?? 0, a = this.countPath(e, i.path);
|
|
560
|
+
c > a && (i.propertyItem.types.some((d) => d.type === X) || i.propertyItem.types.push(new ae(i.property)));
|
|
561
561
|
}
|
|
562
562
|
}
|
|
563
563
|
}
|
|
@@ -578,31 +578,31 @@ class Kt {
|
|
|
578
578
|
}
|
|
579
579
|
extractValueInfos(e, t) {
|
|
580
580
|
const s = [], o = (i, r, n) => {
|
|
581
|
-
const l = new
|
|
582
|
-
let
|
|
583
|
-
if (
|
|
584
|
-
for (const
|
|
585
|
-
if (i.hasOwnProperty(
|
|
586
|
-
const
|
|
587
|
-
o(i[
|
|
581
|
+
const l = new Qe();
|
|
582
|
+
let c = r.split("/").pop() || "";
|
|
583
|
+
if (c === "[]" ? c = n : c === "root" && (c = t), l.property = c, l.value = i, l.path = r, l.propertyItem = this.createPropertyItem(i, l.property), s.push(l), i && typeof i === J && !Array.isArray(i)) {
|
|
584
|
+
for (const a in i)
|
|
585
|
+
if (i.hasOwnProperty(a)) {
|
|
586
|
+
const d = r ? `${r}/${a}` : a;
|
|
587
|
+
o(i[a], d, c);
|
|
588
588
|
}
|
|
589
|
-
} else Array.isArray(i) && i.forEach((
|
|
589
|
+
} else Array.isArray(i) && i.forEach((a, d) => {
|
|
590
590
|
const u = `${r}/[]`;
|
|
591
|
-
o(
|
|
591
|
+
o(a, u, c);
|
|
592
592
|
});
|
|
593
593
|
};
|
|
594
594
|
return o(e, "root", t), s.sort((i, r) => i.path.localeCompare(r.path));
|
|
595
595
|
}
|
|
596
596
|
createPropertyItem(e, t) {
|
|
597
|
-
return new
|
|
597
|
+
return new We(t, [
|
|
598
598
|
this.createPropertyType(e, t)
|
|
599
599
|
]);
|
|
600
600
|
}
|
|
601
601
|
createPropertyType(e, t) {
|
|
602
|
-
return e === null ? new Xe(t) : e === void 0 ? new
|
|
602
|
+
return e === null ? new Xe(t) : e === void 0 ? new ae(t) : typeof e === $e ? new Je(t) : typeof e === me && !isNaN(e) ? new qe(t) : typeof e === be ? new Ze(t) : Array.isArray(e) ? new B(t) : typeof e === J ? new L(t, et(t)) : new ae(t);
|
|
603
603
|
}
|
|
604
604
|
}
|
|
605
|
-
class
|
|
605
|
+
class Xt {
|
|
606
606
|
constructor() {
|
|
607
607
|
this.orOperator = "|", this.rootPropertyType = null, this.rootName = "Root", this.renderTypeScriptInterfacesFifo = [], this.renderTypeScriptInterfacesDone = [];
|
|
608
608
|
}
|
|
@@ -635,12 +635,12 @@ class Jt {
|
|
|
635
635
|
n === "[]" ? n = "any[]" : n.startsWith("(") && n.endsWith(")") && (n = n.substring(1, n.length - 1));
|
|
636
636
|
const l = this.containsUndefinedPropertyType(r) ? "?" : "";
|
|
637
637
|
t.push(" " + r.propertyName + l + ": " + n + ";");
|
|
638
|
-
for (const
|
|
639
|
-
if (
|
|
640
|
-
|
|
641
|
-
else if (
|
|
642
|
-
for (const
|
|
643
|
-
|
|
638
|
+
for (const c of r.types)
|
|
639
|
+
if (c instanceof L)
|
|
640
|
+
c !== this.rootPropertyType && this.renderTypeScriptInterfacesFifo.push(c);
|
|
641
|
+
else if (c instanceof B)
|
|
642
|
+
for (const a of c.items)
|
|
643
|
+
a instanceof L && this.renderTypeScriptInterfacesFifo.push(a);
|
|
644
644
|
}
|
|
645
645
|
t.push("}"), t.push("");
|
|
646
646
|
}
|
|
@@ -651,7 +651,7 @@ class Jt {
|
|
|
651
651
|
var s, o;
|
|
652
652
|
if (((s = e.types) == null ? void 0 : s.length) === 0) return "any";
|
|
653
653
|
if (((o = e.types) == null ? void 0 : o.length) === 1) return this.renderType(e.types[0], e);
|
|
654
|
-
const t = e.types.map((i) => this.renderType(i, e)).filter((i) => i !== X).sort((i, r) =>
|
|
654
|
+
const t = e.types.map((i) => this.renderType(i, e)).filter((i) => i !== X).sort((i, r) => ee.includes(i) ? 100 : ee.includes(r) ? -100 : i.localeCompare(r)).join(this.orOperator);
|
|
655
655
|
return t.includes(this.orOperator) ? "(" + t + ")" : t;
|
|
656
656
|
}
|
|
657
657
|
renderType(e, t) {
|
|
@@ -692,21 +692,21 @@ class G {
|
|
|
692
692
|
}
|
|
693
693
|
}
|
|
694
694
|
}
|
|
695
|
-
function j(
|
|
696
|
-
return
|
|
695
|
+
function j(h) {
|
|
696
|
+
return h && h.type === "TreeRow";
|
|
697
697
|
}
|
|
698
|
-
function
|
|
699
|
-
return
|
|
698
|
+
function ue(h) {
|
|
699
|
+
return h && h.type === "AreaModelTree";
|
|
700
700
|
}
|
|
701
|
-
function
|
|
702
|
-
return
|
|
701
|
+
function ot(h) {
|
|
702
|
+
return h && h.type === "CheckboxColumnDef";
|
|
703
703
|
}
|
|
704
|
-
class
|
|
705
|
-
constructor(e = -1, t = -1, s = -1, o = -1, i, r, n, l = 0,
|
|
706
|
-
this.rowIndex = e, this.rowTop = t, this.columnIndex = s, this.columnLeft = o, this.areaIdent = i, this.sideIdent = r, this.originalEvent = n, this.clickCount = l, this.draggingX =
|
|
704
|
+
class ye {
|
|
705
|
+
constructor(e = -1, t = -1, s = -1, o = -1, i, r, n, l = 0, c = 0, a = 0, d = "") {
|
|
706
|
+
this.rowIndex = e, this.rowTop = t, this.columnIndex = s, this.columnLeft = o, this.areaIdent = i, this.sideIdent = r, this.originalEvent = n, this.clickCount = l, this.draggingX = c, this.draggingY = a, this.action = d;
|
|
707
707
|
}
|
|
708
708
|
clone() {
|
|
709
|
-
return new
|
|
709
|
+
return new ye(
|
|
710
710
|
this.rowIndex,
|
|
711
711
|
this.rowTop,
|
|
712
712
|
this.columnIndex,
|
|
@@ -726,7 +726,7 @@ class O {
|
|
|
726
726
|
this.content = e, this.style = t, this.classes = s;
|
|
727
727
|
}
|
|
728
728
|
}
|
|
729
|
-
class
|
|
729
|
+
class Ne {
|
|
730
730
|
constructor(e = new O(
|
|
731
731
|
">",
|
|
732
732
|
"transform: rotate(90deg) translate(66%, -66%); transform-origin: 0 0;",
|
|
@@ -747,12 +747,12 @@ class We {
|
|
|
747
747
|
this.arrowExpanded = e, this.arrowCollapsed = t, this.arrowPlaceholder = s, this.arrowExpandCollapseAll = o;
|
|
748
748
|
}
|
|
749
749
|
}
|
|
750
|
-
class
|
|
750
|
+
class Ge {
|
|
751
751
|
constructor(e = new O("↑", "", ["ge-header-sorted-asc"]), t = new O("↓", "", ["ge-header-sorted-desc"]), s = new O("↑", "color:transparent;", [])) {
|
|
752
752
|
this.iconAsc = e, this.iconDesc = t, this.iconPlaceholder = s;
|
|
753
753
|
}
|
|
754
754
|
}
|
|
755
|
-
class
|
|
755
|
+
class it {
|
|
756
756
|
constructor(e) {
|
|
757
757
|
this.domService = e;
|
|
758
758
|
}
|
|
@@ -828,24 +828,24 @@ class ot {
|
|
|
828
828
|
addRowDiv(e, t, s = -1, o, i, r = "") {
|
|
829
829
|
const n = t.index ?? -1, l = this.getDivOrCreateDiv(n, e);
|
|
830
830
|
if (this.domService.addClass(l, "ge-table-row-div"), this.domService.addClass(l, `ge-table-row-div-${t.index}`), o === "body" && i === "center") {
|
|
831
|
-
const
|
|
832
|
-
this.domService.addClass(l, `ge-table-row-${
|
|
831
|
+
const c = ((t == null ? void 0 : t.index) ?? 0) % 2 === 0 ? "even" : "odd";
|
|
832
|
+
this.domService.addClass(l, `ge-table-row-${c}`);
|
|
833
833
|
}
|
|
834
834
|
if (this.domService.setStyle(l, "display", "clip"), this.domService.setStyle(l, "position", "absolute"), this.domService.setStyle(l, "left", `${t.left}px`), this.domService.setStyle(l, "top", `${t.top}px`), this.domService.setStyle(l, "width", `${t.width}px`), this.domService.setStyle(l, "height", `${t.height}px`), this.domService.setAttribute(l, "data-row-index", `${s}`), this.domService.setAttribute(l, "data-area", `${o}`), r) {
|
|
835
|
-
const
|
|
836
|
-
this.domService.appendChild(l,
|
|
835
|
+
const c = this.domService.createText(r);
|
|
836
|
+
this.domService.appendChild(l, c);
|
|
837
837
|
}
|
|
838
838
|
return this.domService.appendChild(e.child, l), l;
|
|
839
839
|
}
|
|
840
840
|
addColumnDiv(e) {
|
|
841
|
-
const { parent: t, geo: s, rowIndex: o = -1, columnIndex: i = -1, areaIdent: r, sideIdent: n, text: l = "", treeArrow:
|
|
842
|
-
this.domService.addClass(m, "ge-table-col-div"),
|
|
843
|
-
const
|
|
844
|
-
if (r === "body" && n === "center" && this.domService.addClass(m, `ge-table-column-${
|
|
845
|
-
const
|
|
846
|
-
this.addLabelDiv(m, l,
|
|
841
|
+
const { parent: t, geo: s, rowIndex: o = -1, columnIndex: i = -1, areaIdent: r, sideIdent: n, text: l = "", treeArrow: c, tableOptions: a, checkedType: d = void 0, sortState: u } = e, p = a == null ? void 0 : a.treeOptions, f = a == null ? void 0 : a.showCheckboxWihoutExtraColumn, m = this.domService.createElement("div");
|
|
842
|
+
this.domService.addClass(m, "ge-table-col-div"), f && this.domService.addClass(m, "ge-with-checkbox"), this.domService.addClass(m, `ge-table-col-div-${s.index}`), this.domService.setAttribute(m, "data-col-index", `${s.index}`), this.domService.setAttribute(m, "data-row-index", `${o}`), this.domService.setAttribute(m, "data-area", `${r}`);
|
|
843
|
+
const g = ((s == null ? void 0 : s.index) ?? 0) % 2 === 0 ? "even" : "odd";
|
|
844
|
+
if (r === "body" && n === "center" && this.domService.addClass(m, `ge-table-column-${g}`), this.domService.setStyle(m, "display", "clip"), this.domService.setStyle(m, "position", "absolute"), this.domService.setStyle(m, "left", `${s.left}px`), this.domService.setStyle(m, "top", `${s.top}px`), this.domService.setStyle(m, "width", `${s.width}px`), this.domService.setStyle(m, "height", `${s.height}px`), c && c !== "none" && (this.domService.addClass(m, "ge-table-col-tree"), this.addArrowDiv(m, c, p, o, i, r)), f && i === 0 && d && this.addCheckboxToDiv(m, d, r, o), l) {
|
|
845
|
+
const y = c !== "none" && i === 0;
|
|
846
|
+
this.addLabelDiv(m, l, y, o, i, r);
|
|
847
847
|
}
|
|
848
|
-
return u && this.addSortedIcon(m, u,
|
|
848
|
+
return u && this.addSortedIcon(m, u, a == null ? void 0 : a.sortedOptions, i), this.domService.appendChild(t, m), m;
|
|
849
849
|
}
|
|
850
850
|
addCheckboxToDiv(e, t, s, o) {
|
|
851
851
|
const i = this.domService.createElement("div"), r = t === "full" ? "checked" : "";
|
|
@@ -867,31 +867,31 @@ class ot {
|
|
|
867
867
|
} else {
|
|
868
868
|
const l = this.domService.createElement("div");
|
|
869
869
|
this.domService.appendChild(n, l);
|
|
870
|
-
const
|
|
871
|
-
this.domService.addClass(l, "ge-table-label"), this.domService.appendChild(l,
|
|
870
|
+
const c = this.domService.createText(t);
|
|
871
|
+
this.domService.addClass(l, "ge-table-label"), this.domService.appendChild(l, c), this.domService.setAttribute(l, "data-row-index", `${o}`), this.domService.setAttribute(l, "data-col-index", `${i}`), this.domService.setAttribute(l, "data-area", `${r}`);
|
|
872
872
|
}
|
|
873
873
|
return this.domService.appendChild(e, n), n;
|
|
874
874
|
}
|
|
875
|
-
addSortedIcon(e, t = "", s = new
|
|
875
|
+
addSortedIcon(e, t = "", s = new Ge(), o = -1) {
|
|
876
876
|
const i = this.domService.createElement("div");
|
|
877
877
|
this.domService.addClass(i, "ge-table-sorted-icon-div"), this.domService.setStyle(i, "position", "absolute"), this.domService.setStyle(i, "top", "0"), this.domService.setStyle(i, "right", "0"), this.domService.setStyle(i, "width", "20px"), this.domService.setStyle(i, "background", "transparent"), this.domService.setStyle(i, "cursor", "pointer"), this.domService.setAttribute(i, "data-col-index", `${o}`), this.domService.setAttribute(i, "data-area", "header");
|
|
878
878
|
let r;
|
|
879
879
|
t === "asc" ? r = s.iconAsc : t === "desc" ? r = s.iconDesc : r = s.iconPlaceholder;
|
|
880
880
|
const n = r.content, l = this.domService.createText(n);
|
|
881
881
|
this.domService.appendChild(i, l), r.style && this.applyStyleString(i, r.style);
|
|
882
|
-
for (const
|
|
883
|
-
this.domService.addClass(i,
|
|
882
|
+
for (const c of r.classes)
|
|
883
|
+
this.domService.addClass(i, c);
|
|
884
884
|
return this.domService.appendChild(e, i), i;
|
|
885
885
|
}
|
|
886
|
-
addArrowDiv(e, t = "none", s = new
|
|
886
|
+
addArrowDiv(e, t = "none", s = new Ne(), o = -1, i = -1, r = "body") {
|
|
887
887
|
const n = this.domService.createElement("div");
|
|
888
888
|
this.domService.addClass(n, "ge-table-tree-arrow-div"), this.domService.setStyle(n, "display", "inline-block"), this.domService.setStyle(n, "position", ""), this.domService.setStyle(n, "width", "20px"), this.domService.setStyle(n, "background", "transparent"), this.domService.setStyle(n, "cursor", "pointer"), this.domService.setAttribute(n, "data-row-index", `${o}`), this.domService.setAttribute(n, "data-col-index", `${i}`), this.domService.setAttribute(n, "data-area", `${r}`);
|
|
889
889
|
let l;
|
|
890
890
|
t === "expanded" ? l = s.arrowExpanded : t === "collapsed" ? l = s.arrowCollapsed : l = s.arrowPlaceholder;
|
|
891
|
-
const
|
|
892
|
-
this.domService.appendChild(n,
|
|
893
|
-
for (const
|
|
894
|
-
this.domService.addClass(n,
|
|
891
|
+
const c = l.content, a = this.domService.createText(c);
|
|
892
|
+
this.domService.appendChild(n, a), l.style && this.applyStyleString(n, l.style);
|
|
893
|
+
for (const d of l.classes)
|
|
894
|
+
this.domService.addClass(n, d);
|
|
895
895
|
return this.domService.appendChild(e, n), n;
|
|
896
896
|
}
|
|
897
897
|
addColumnBorderDivs(e, t, s, o, i) {
|
|
@@ -934,22 +934,22 @@ class ot {
|
|
|
934
934
|
return s ? (s.innerText = "", s) : (s = this.domService.createElement("div"), t.cache[e] = s, s);
|
|
935
935
|
}
|
|
936
936
|
}
|
|
937
|
-
const
|
|
938
|
-
class
|
|
937
|
+
const le = (h) => h === "header" ? "header" : h === "footer" ? "footer" : "body";
|
|
938
|
+
class rt {
|
|
939
939
|
constructor(e, t) {
|
|
940
940
|
if (this.rowIdx = -1, this.colIdx = -1, this.action = null, this.inputType = null, this.className = "", e !== null && (e instanceof HTMLDivElement || e instanceof HTMLSpanElement || e instanceof HTMLInputElement)) {
|
|
941
941
|
this.className = e.className, this.action = e.getAttribute("data-ge-action"), this.inputType = e.getAttribute("data-input-type"), this.rowIdx = Number(e.getAttribute("data-row-index")), this.colIdx = Number(e.getAttribute("data-col-index"));
|
|
942
942
|
const s = e.getAttribute("data-area");
|
|
943
|
-
if (s && (this.areaIdent =
|
|
943
|
+
if (s && (this.areaIdent = le(s), this.areaModel = t.tableModel.getAreaModel(this.areaIdent), this.row = this.areaModel.getRowByIndex(this.rowIdx)), e instanceof HTMLInputElement) {
|
|
944
944
|
const o = e;
|
|
945
945
|
this.value = o.value;
|
|
946
946
|
}
|
|
947
947
|
}
|
|
948
948
|
}
|
|
949
949
|
}
|
|
950
|
-
class
|
|
950
|
+
class nt {
|
|
951
951
|
constructor(e) {
|
|
952
|
-
this.tableScope = e, this.doubleClickDelay = 500, this.expandedAll = !0, this.mouseDown = !1, this.dragging = !1, this.lastClicked = 0;
|
|
952
|
+
this.tableScope = e, this.doubleClickDelay = 500, this.expandedAll = !0, this.lastClickedCellKey = "", this.mouseDown = !1, this.dragging = !1, this.lastClicked = 0;
|
|
953
953
|
const t = this.tableScope.listenerAbortController.signal;
|
|
954
954
|
this.tableScope.hostElement.addEventListener("click", this.onHostElementClicked.bind(this), { signal: t }), this.tableScope.hostElement.addEventListener("dblclick", this.onHostElementDblClicked.bind(this), { signal: t }), this.tableScope.hostElement.addEventListener("mousedown", this.onMouseDown.bind(this), { signal: t }), this.tableScope.hostElement.addEventListener("mousemove", this.onMouseMove.bind(this), { signal: t }), this.tableScope.hostElement.addEventListener("mouseup", this.onMouseUp.bind(this), { signal: t }), this.tableScope.hostElement.addEventListener("contextmenu", this.onContextmenu.bind(this), { signal: t }), this.tableScope.hostElement._MouseHandler = "true", this.tableScope.scrollViewport.addEventListener("scroll", this.tableScope.adjustAfterScrolling.bind(this.tableScope), { signal: t }), this.tableScope.scrollViewport.addEventListener("wheel", this.tableScope.onWheel.bind(this.tableScope), { passive: !1, signal: t }), [window, this.tableScope.hostElement].forEach(
|
|
955
955
|
(s) => s.addEventListener("resize", this.tableScope.adjustContainersAndRows.bind(this.tableScope), { signal: t })
|
|
@@ -975,30 +975,34 @@ class rt {
|
|
|
975
975
|
* @return {void}
|
|
976
976
|
*/
|
|
977
977
|
onHostElementClicked(e) {
|
|
978
|
-
|
|
979
|
-
|
|
978
|
+
var r;
|
|
979
|
+
const t = Date.now(), s = e.target, o = (r = s == null ? void 0 : s.closest) != null && r.call(s, "[data-col-index]") ? ["data-area", "data-row-index", "data-col-index"].map((n) => {
|
|
980
|
+
var l;
|
|
981
|
+
return ((l = s.closest("[" + n + "]")) == null ? void 0 : l.getAttribute(n)) ?? "";
|
|
982
|
+
}).join(":") : "";
|
|
983
|
+
if (t - this.lastClicked < this.doubleClickDelay && o === this.lastClickedCellKey) {
|
|
980
984
|
this.lastClicked = t, this.publishGeMouseEvent(e, 2);
|
|
981
985
|
return;
|
|
982
986
|
}
|
|
983
|
-
this.lastClicked = t;
|
|
984
|
-
const
|
|
985
|
-
if (
|
|
987
|
+
this.lastClicked = t, this.lastClickedCellKey = o;
|
|
988
|
+
const i = new rt(e.target, this.tableScope);
|
|
989
|
+
if (i.action === "toggleExpandCollapseAll")
|
|
986
990
|
this.expandedAll = !this.expandedAll, this.tableScope.toggleExpandCollapseAll(this.expandedAll), e.preventDefault(), e.stopPropagation();
|
|
987
|
-
else if (
|
|
988
|
-
this.tableScope.toggleHeaderGroup(
|
|
989
|
-
else if (
|
|
990
|
-
this.tableScope.toggleRowCheckbox(
|
|
991
|
-
else if (j(
|
|
992
|
-
const
|
|
993
|
-
if (
|
|
991
|
+
else if (i.action === "toggleHeaderGroup")
|
|
992
|
+
this.tableScope.toggleHeaderGroup(i), e.preventDefault(), e.stopPropagation();
|
|
993
|
+
else if (i.inputType === "checkbox" && i.areaIdent)
|
|
994
|
+
this.tableScope.toggleRowCheckbox(i.rowIdx, i.colIdx, i.areaIdent), e.preventDefault(), e.stopPropagation();
|
|
995
|
+
else if (j(i.row) && i.areaModel) {
|
|
996
|
+
const n = i.colIdx === this.getArrowColumnIndex() && e.altKey, l = i.className.includes("ge-table-tree-arrow-div");
|
|
997
|
+
if (n || l) {
|
|
994
998
|
e.preventDefault(), e.stopPropagation();
|
|
995
|
-
const
|
|
996
|
-
|
|
999
|
+
const c = i.row;
|
|
1000
|
+
c.expanded = !c.expanded, "recalcVisibleTreeRows" in i.areaModel && i.areaModel.recalcVisibleTreeRows(), this.tableScope.tableModel.recalcSize(this.tableScope.hostElement.clientWidth), this.tableScope.adjustContainersAndRows(), this.updateCollapsedExpandedState(c);
|
|
997
1001
|
}
|
|
998
1002
|
}
|
|
999
|
-
if (
|
|
1000
|
-
const
|
|
1001
|
-
|
|
1003
|
+
if (i.areaIdent === "body") {
|
|
1004
|
+
const n = this.tableScope.focusModel();
|
|
1005
|
+
n == null || n.clear(), n == null || n.setFocus(i.rowIdx, i.colIdx);
|
|
1002
1006
|
}
|
|
1003
1007
|
this.publishGeMouseEvent(e, 1);
|
|
1004
1008
|
}
|
|
@@ -1009,16 +1013,17 @@ class rt {
|
|
|
1009
1013
|
* @param {MouseEvent} event - The double click event.
|
|
1010
1014
|
*/
|
|
1011
1015
|
onHostElementDblClicked(e) {
|
|
1016
|
+
var t, s;
|
|
1012
1017
|
if (this.lastClicked = Date.now(), e.target instanceof HTMLElement) {
|
|
1013
|
-
const
|
|
1014
|
-
if (
|
|
1015
|
-
this.tableScope.tableModel.isSortable(
|
|
1016
|
-
else if (
|
|
1017
|
-
const
|
|
1018
|
-
if (
|
|
1018
|
+
const o = e.target.closest("[data-col-index]") ?? e.target, i = ((t = o.closest("[data-area]")) == null ? void 0 : t.getAttribute("data-area")) ?? null, r = le(i), n = Number((s = o.closest("[data-row-index]")) == null ? void 0 : s.getAttribute("data-row-index")), l = Number(o.getAttribute("data-col-index")), c = this.tableScope.tableModel.getAreaModel(r);
|
|
1019
|
+
if (i && r === "header")
|
|
1020
|
+
this.tableScope.tableModel.isSortable(l) && (this.tableScope.clearSelection(), this.tableScope.onHeaderDblClicked(e, n, l));
|
|
1021
|
+
else if (o.getAttribute("data-row-index")) {
|
|
1022
|
+
const a = c.getRowByIndex(n);
|
|
1023
|
+
if (i && r === "body" && c.isEditable(n, l) && (this.tableScope.clearSelection(), this.tableScope.initRenderEditor(n, l)), j(a) && l === this.getArrowColumnIndex()) {
|
|
1019
1024
|
e.preventDefault(), e.stopPropagation();
|
|
1020
|
-
const
|
|
1021
|
-
|
|
1025
|
+
const d = a;
|
|
1026
|
+
d.expanded = !d.expanded, "recalcVisibleTreeRows" in c && c.recalcVisibleTreeRows(), this.tableScope.tableModel.recalcSize(this.tableScope.hostElement.clientWidth), this.tableScope.adjustContainersAndRows(), this.updateCollapsedExpandedState(d);
|
|
1022
1027
|
}
|
|
1023
1028
|
}
|
|
1024
1029
|
}
|
|
@@ -1043,11 +1048,12 @@ class rt {
|
|
|
1043
1048
|
* @returns {void}
|
|
1044
1049
|
*/
|
|
1045
1050
|
updateCollapsedExpandedState(e) {
|
|
1046
|
-
var s, o, i, r, n;
|
|
1051
|
+
var s, o, i, r, n, l;
|
|
1047
1052
|
const t = (o = (s = this.tableScope.tableOptions) == null ? void 0 : s.autoRestoreOptions) == null ? void 0 : o.getRowId;
|
|
1048
1053
|
if (t) {
|
|
1049
|
-
|
|
1050
|
-
|
|
1054
|
+
(i = this.tableScope.storeStateCollapsedExpandService) == null || i.initModeIfEmpty(e.expanded ? "expanded" : "collapsed");
|
|
1055
|
+
const c = (r = this.tableScope.storeStateCollapsedExpandService) == null ? void 0 : r.collapsedExpandedStateGet().mode, a = c === "collapsed" && !e.expanded || c === "expanded" && e.expanded, d = c === "collapsed" && e.expanded || c === "expanded" && !e.expanded, u = t(e.data);
|
|
1056
|
+
a ? (n = this.tableScope.storeStateCollapsedExpandService) == null || n.collapsedStateIdsPush(u) : d && ((l = this.tableScope.storeStateCollapsedExpandService) == null || l.collapsedStateIdsRemove(u));
|
|
1051
1057
|
}
|
|
1052
1058
|
}
|
|
1053
1059
|
getArrowColumnIndex() {
|
|
@@ -1083,7 +1089,7 @@ class rt {
|
|
|
1083
1089
|
}
|
|
1084
1090
|
}
|
|
1085
1091
|
}
|
|
1086
|
-
class
|
|
1092
|
+
class we {
|
|
1087
1093
|
constructor(e, t = [], s = -1) {
|
|
1088
1094
|
this.areaIdent = e, this.columnDefs = t, this.defaultRowHeight = s, this.rowSelectionModel = void 0, this.yPositions = [], this.cellRenderers = t.map((o) => o.rendererMap[e]);
|
|
1089
1095
|
}
|
|
@@ -1181,7 +1187,7 @@ class ye {
|
|
|
1181
1187
|
this.yPositions[t + 1] = this.getRowHeight(t) + this.yPositions[t];
|
|
1182
1188
|
}
|
|
1183
1189
|
}
|
|
1184
|
-
class
|
|
1190
|
+
class xe {
|
|
1185
1191
|
genericSortComparator(e, t, s) {
|
|
1186
1192
|
if (typeof e == "number" && typeof t == "number")
|
|
1187
1193
|
return s * (e - t);
|
|
@@ -1199,7 +1205,7 @@ class we {
|
|
|
1199
1205
|
return s * ("" + e).localeCompare("" + t);
|
|
1200
1206
|
}
|
|
1201
1207
|
}
|
|
1202
|
-
class _ extends
|
|
1208
|
+
class _ extends we {
|
|
1203
1209
|
/**
|
|
1204
1210
|
* Creates an instance of AreaModelObjectArray.
|
|
1205
1211
|
*
|
|
@@ -1230,7 +1236,7 @@ class _ extends ye {
|
|
|
1230
1236
|
* );
|
|
1231
1237
|
*/
|
|
1232
1238
|
constructor(e, t, s, o = [], i = "ge-selected-row", r = "ge-focused-row") {
|
|
1233
|
-
super(e, o, s), this.areaIdent = e, this.rows = t, this.defaultRowHeight = s, this.columnDefs = o, this.selectedRowClass = i, this.focusedRowClass = r, this.sorterService = new
|
|
1239
|
+
super(e, o, s), this.areaIdent = e, this.rows = t, this.defaultRowHeight = s, this.columnDefs = o, this.selectedRowClass = i, this.focusedRowClass = r, this.sorterService = new xe(), this._focusedRowIndex = 0, this.filteredRows = [...t], this.properties = o.map((n) => n.property);
|
|
1234
1240
|
}
|
|
1235
1241
|
/**
|
|
1236
1242
|
* Gets the index of the currently focused row.
|
|
@@ -1642,7 +1648,7 @@ class _ extends ye {
|
|
|
1642
1648
|
return o && t.length ? this.getPropertyValue(o, t) : o;
|
|
1643
1649
|
}
|
|
1644
1650
|
}
|
|
1645
|
-
class
|
|
1651
|
+
class lt {
|
|
1646
1652
|
constructor(e) {
|
|
1647
1653
|
this.tableScope = e;
|
|
1648
1654
|
}
|
|
@@ -2259,7 +2265,7 @@ class nt {
|
|
|
2259
2265
|
* @param {string} fileName - The name of the Excel file to be downloaded (default: 'table.xlsx')
|
|
2260
2266
|
* @param {string} author - Optional metadata for the Excel file to specify the author (default: '')
|
|
2261
2267
|
*
|
|
2262
|
-
* @returns {void}
|
|
2268
|
+
* @returns {Promise<void>} resolves when the (compressed) file has been handed to the browser
|
|
2263
2269
|
*
|
|
2264
2270
|
* @example
|
|
2265
2271
|
* // Download table data with default filename
|
|
@@ -2276,13 +2282,13 @@ class nt {
|
|
|
2276
2282
|
downloadExcel(e = "table.xlsx", t = "") {
|
|
2277
2283
|
var n, l;
|
|
2278
2284
|
const s = [], o = this.tableScope.tableModel, i = [];
|
|
2279
|
-
for (let
|
|
2280
|
-
((l = (n = o.getColumnDef(
|
|
2285
|
+
for (let c = 0; c < o.getColumnCount(); c++)
|
|
2286
|
+
((l = (n = o.getColumnDef(c)) == null ? void 0 : n.isVisible) == null ? void 0 : l.call(n)) !== !1 && i.push(c);
|
|
2281
2287
|
const r = ["header", "body", "footer"];
|
|
2282
|
-
for (const
|
|
2283
|
-
const
|
|
2284
|
-
for (let u = 0; u <
|
|
2285
|
-
s.push(i.map((
|
|
2288
|
+
for (const c of r) {
|
|
2289
|
+
const a = o.getAreaModel(c), d = (a == null ? void 0 : a.getRowCount()) ?? 0;
|
|
2290
|
+
for (let u = 0; u < d; u++)
|
|
2291
|
+
s.push(i.map((p) => a.getValueAt(u, p)));
|
|
2286
2292
|
}
|
|
2287
2293
|
return this.tableScope.excelService.downloadExcel(s, e, t);
|
|
2288
2294
|
}
|
|
@@ -2668,6 +2674,20 @@ class nt {
|
|
|
2668
2674
|
} else
|
|
2669
2675
|
console.warn("updateRows<T>(rows: T[], predicate: (a: T, b: T) => boolean) only works with AreaModelObjectArray<T>, but this body area model is ", typeof s, s);
|
|
2670
2676
|
}
|
|
2677
|
+
/**
|
|
2678
|
+
* Sorts by one column from code – e.g. from your own button – exactly like a double click on the
|
|
2679
|
+
* column header: rows, header icon, filter (sort order survives filtering) and auto-restore.
|
|
2680
|
+
*
|
|
2681
|
+
* @param {number | string} column - column index or property, e.g. `"total"`
|
|
2682
|
+
* @param {SortState} [sortState] - `"asc"` or `"desc"`; omitted: toggles like the header (asc → desc → …)
|
|
2683
|
+
* @returns {boolean} false if the column does not exist
|
|
2684
|
+
*
|
|
2685
|
+
* @example
|
|
2686
|
+
* document.querySelector("#by-total")!.addEventListener("click", () => tableApi.sortByColumn("total", "desc"));
|
|
2687
|
+
*/
|
|
2688
|
+
sortByColumn(e, t) {
|
|
2689
|
+
return this.tableScope.sortByColumn(e, t);
|
|
2690
|
+
}
|
|
2671
2691
|
/**
|
|
2672
2692
|
* Re-applies the current sorting configuration to the table data.
|
|
2673
2693
|
*
|
|
@@ -3006,14 +3026,14 @@ class nt {
|
|
|
3006
3026
|
return this.tableScope.loggingActive;
|
|
3007
3027
|
}
|
|
3008
3028
|
}
|
|
3009
|
-
class
|
|
3029
|
+
class Se {
|
|
3010
3030
|
constructor(e) {
|
|
3011
3031
|
this.getStorageKeyFn = e;
|
|
3012
3032
|
}
|
|
3013
3033
|
autoConvertMapToObject(e) {
|
|
3014
3034
|
const t = {};
|
|
3015
3035
|
return e instanceof Map && e.forEach((o, i) => {
|
|
3016
|
-
t[
|
|
3036
|
+
t[i] = o;
|
|
3017
3037
|
}), t;
|
|
3018
3038
|
}
|
|
3019
3039
|
checkAndPersistItem(e, t) {
|
|
@@ -3031,11 +3051,19 @@ class xe {
|
|
|
3031
3051
|
}
|
|
3032
3052
|
}
|
|
3033
3053
|
persistItem(e, t) {
|
|
3034
|
-
|
|
3054
|
+
try {
|
|
3055
|
+
t ? localStorage.setItem(e, JSON.stringify(t)) : localStorage.removeItem(e);
|
|
3056
|
+
} catch {
|
|
3057
|
+
}
|
|
3035
3058
|
}
|
|
3036
3059
|
loadFromLocalStorage(e) {
|
|
3037
|
-
|
|
3038
|
-
|
|
3060
|
+
try {
|
|
3061
|
+
const t = localStorage.getItem(e);
|
|
3062
|
+
if (t)
|
|
3063
|
+
return JSON.parse(t);
|
|
3064
|
+
} catch {
|
|
3065
|
+
}
|
|
3066
|
+
return null;
|
|
3039
3067
|
}
|
|
3040
3068
|
// private loadItems() {
|
|
3041
3069
|
// const fn = this.getStorageKeyFn;
|
|
@@ -3073,7 +3101,7 @@ class xe {
|
|
|
3073
3101
|
// }
|
|
3074
3102
|
// }
|
|
3075
3103
|
}
|
|
3076
|
-
class
|
|
3104
|
+
class at extends Se {
|
|
3077
3105
|
constructor(e) {
|
|
3078
3106
|
super(e), this.SCROLL_STATE = "scrollState", this.scrollOffset = [0, 0], this.load();
|
|
3079
3107
|
}
|
|
@@ -3095,14 +3123,24 @@ class lt extends xe {
|
|
|
3095
3123
|
}
|
|
3096
3124
|
}
|
|
3097
3125
|
}
|
|
3098
|
-
class
|
|
3126
|
+
class ct {
|
|
3099
3127
|
constructor(e = "collapsed", t = [], s = !1, o = !1) {
|
|
3100
3128
|
this.mode = e, this.rowIds = t, this.allCollapsed = s, this.allExpanded = o;
|
|
3101
3129
|
}
|
|
3102
3130
|
}
|
|
3103
|
-
class
|
|
3131
|
+
class dt extends Se {
|
|
3104
3132
|
constructor(e) {
|
|
3105
|
-
super(e), this.COLLAPSED_EXPANDED_STATE = "collapsedExpandedState", this.collapsedExpandedState = new
|
|
3133
|
+
super(e), this.COLLAPSED_EXPANDED_STATE = "collapsedExpandedState", this.collapsedExpandedState = new ct(), this.stored = !1, this.load();
|
|
3134
|
+
}
|
|
3135
|
+
hasStoredState() {
|
|
3136
|
+
return this.stored;
|
|
3137
|
+
}
|
|
3138
|
+
/**
|
|
3139
|
+
* The first toggle defines what the stored ids mean: a table that starts collapsed stores the expanded rows,
|
|
3140
|
+
* a table that starts expanded stores the collapsed ones.
|
|
3141
|
+
*/
|
|
3142
|
+
initModeIfEmpty(e) {
|
|
3143
|
+
!this.stored && !this.collapsedExpandedState.rowIds.length && (this.collapsedExpandedState.mode = e);
|
|
3106
3144
|
}
|
|
3107
3145
|
collapsedExpandedStateGet() {
|
|
3108
3146
|
return this.collapsedExpandedState;
|
|
@@ -3126,15 +3164,15 @@ class ct extends xe {
|
|
|
3126
3164
|
const t = e();
|
|
3127
3165
|
if (t) {
|
|
3128
3166
|
const s = t + this.COLLAPSED_EXPANDED_STATE, o = this.loadFromLocalStorage(s);
|
|
3129
|
-
o && (this.collapsedExpandedState = o);
|
|
3167
|
+
o && (this.collapsedExpandedState = o, this.stored = !0);
|
|
3130
3168
|
}
|
|
3131
3169
|
}
|
|
3132
3170
|
}
|
|
3133
3171
|
persist() {
|
|
3134
|
-
this.checkAndPersistItem(this.COLLAPSED_EXPANDED_STATE, this.collapsedExpandedState);
|
|
3172
|
+
this.stored = !0, this.checkAndPersistItem(this.COLLAPSED_EXPANDED_STATE, this.collapsedExpandedState);
|
|
3135
3173
|
}
|
|
3136
3174
|
}
|
|
3137
|
-
class
|
|
3175
|
+
class ht extends Se {
|
|
3138
3176
|
constructor(e) {
|
|
3139
3177
|
super(e), this.SORTING_STATE = "sortingState", this.sortItems = [], this.load();
|
|
3140
3178
|
}
|
|
@@ -3160,7 +3198,7 @@ class V {
|
|
|
3160
3198
|
this.left = e, this.width = t, this.height = s, this.top = o, this.index = i;
|
|
3161
3199
|
}
|
|
3162
3200
|
}
|
|
3163
|
-
const
|
|
3201
|
+
const ie = class ie {
|
|
3164
3202
|
constructor(e, t, s, o) {
|
|
3165
3203
|
this.hostElement = e, this.tableModel = t, this.dom = s, this.tableOptions = o, this.scrollTop = 0, this.areaBodyWestGeo = new V(), this.areaBodyCenterGeo = new V(), this.areaBodyEastGeo = new V();
|
|
3166
3204
|
const i = this.hostElement;
|
|
@@ -3327,12 +3365,12 @@ const oe = class oe {
|
|
|
3327
3365
|
* @returns {void} Returns nothing.
|
|
3328
3366
|
*/
|
|
3329
3367
|
resetSizeOfWrapperDiv() {
|
|
3330
|
-
const e = `${this.tableModel.getContentWidthInPixel()}px`, t = this.tableModel.getContentHeightInPixel() + 1, s = `${Math.min(t,
|
|
3368
|
+
const e = `${this.tableModel.getContentWidthInPixel()}px`, t = this.tableModel.getContentHeightInPixel() + 1, s = `${Math.min(t, ie.maxScrollHeightInPx)}px`;
|
|
3331
3369
|
this.dom.setStyle(this.contentWrapperDiv, "width", e), this.dom.setStyle(this.contentWrapperDiv, "height", s);
|
|
3332
3370
|
}
|
|
3333
3371
|
};
|
|
3334
|
-
|
|
3335
|
-
let
|
|
3372
|
+
ie.maxScrollHeightInPx = 8e6;
|
|
3373
|
+
let te = ie;
|
|
3336
3374
|
class M {
|
|
3337
3375
|
/**
|
|
3338
3376
|
* Represents a constructor for a class.
|
|
@@ -3368,7 +3406,126 @@ class M {
|
|
|
3368
3406
|
return e >= this.r1 && e <= this.r2 && t >= this.c1 && t <= this.c2;
|
|
3369
3407
|
}
|
|
3370
3408
|
}
|
|
3371
|
-
class
|
|
3409
|
+
class Ce {
|
|
3410
|
+
constructor(e = "none", t = "single") {
|
|
3411
|
+
this.selectionType = e, this.selectionMode = t, this.ranges = [], this.negativeRanges = [], this.allSelected = !1, this.silent = !1, this.listenerArr = [];
|
|
3412
|
+
}
|
|
3413
|
+
getEventSelectionChangedListeners() {
|
|
3414
|
+
return this.listenerArr;
|
|
3415
|
+
}
|
|
3416
|
+
addEventSelectionChangedListener(e) {
|
|
3417
|
+
this.listenerArr.includes(e) || this.listenerArr.push(e);
|
|
3418
|
+
}
|
|
3419
|
+
removeEventSelectionChangedListener(e) {
|
|
3420
|
+
const t = this.listenerArr.indexOf(e, 0);
|
|
3421
|
+
t > -1 && this.listenerArr.splice(t, 1);
|
|
3422
|
+
}
|
|
3423
|
+
//@AvoidDoubleExecution(100)
|
|
3424
|
+
fireChangeEvent() {
|
|
3425
|
+
this.silent || this.listenerArr.forEach((e) => e.onSelectionChanged(this));
|
|
3426
|
+
}
|
|
3427
|
+
firstClick(e, t) {
|
|
3428
|
+
this.selectionType === "row" ? this.addRange(M.singleRow(e)) : this.selectionType === "column" && this.addRange(M.singleColumn(t));
|
|
3429
|
+
}
|
|
3430
|
+
getSelectionCount(e, t) {
|
|
3431
|
+
let s = 0;
|
|
3432
|
+
for (const o of this.ranges)
|
|
3433
|
+
o.isInRange(e, t) && s++;
|
|
3434
|
+
return this.allSelected && s++, this.isInNegativeRange(e, t) && (s = 0), s;
|
|
3435
|
+
}
|
|
3436
|
+
isInNegativeRange(e, t) {
|
|
3437
|
+
for (const s of this.negativeRanges)
|
|
3438
|
+
if (s.isInRange(e, t))
|
|
3439
|
+
return !0;
|
|
3440
|
+
return !1;
|
|
3441
|
+
}
|
|
3442
|
+
getRanges() {
|
|
3443
|
+
return this.ranges;
|
|
3444
|
+
}
|
|
3445
|
+
clear() {
|
|
3446
|
+
this.ranges = [], this.negativeRanges = [], this.allSelected = !1, this.fireChangeEvent();
|
|
3447
|
+
}
|
|
3448
|
+
hasSelection() {
|
|
3449
|
+
return this.allSelected || !!this.ranges.length;
|
|
3450
|
+
}
|
|
3451
|
+
hasNoSelection() {
|
|
3452
|
+
return !this.hasSelection();
|
|
3453
|
+
}
|
|
3454
|
+
/**
|
|
3455
|
+
* Retrieves the merged row indices from the given range selection.
|
|
3456
|
+
*
|
|
3457
|
+
* @returns {number[]} Array of merged row indices
|
|
3458
|
+
*/
|
|
3459
|
+
getMergedRowIndices() {
|
|
3460
|
+
const e = /* @__PURE__ */ new Set();
|
|
3461
|
+
for (const t of this.ranges)
|
|
3462
|
+
for (let s = t.r1; s <= t.r2; s++)
|
|
3463
|
+
!e.has(s) && !this.isInNegativeRange(s, 0) && e.add(s);
|
|
3464
|
+
return Array.from(e);
|
|
3465
|
+
}
|
|
3466
|
+
selectAll() {
|
|
3467
|
+
this.allSelected = !0, this.fireChangeEvent();
|
|
3468
|
+
}
|
|
3469
|
+
isAllSelected() {
|
|
3470
|
+
return this.allSelected;
|
|
3471
|
+
}
|
|
3472
|
+
addSelection(e) {
|
|
3473
|
+
this.addRange(e), this.fireChangeEvent();
|
|
3474
|
+
}
|
|
3475
|
+
removeSelection(e) {
|
|
3476
|
+
if (this.selectionType === "none")
|
|
3477
|
+
return;
|
|
3478
|
+
let t = e;
|
|
3479
|
+
this.selectionType === "row" ? t = M.singleRow(e.r1) : this.selectionType === "column" && (t = M.singleColumn(e.c1)), this.negativeRanges.push(t), this.fireChangeEvent();
|
|
3480
|
+
}
|
|
3481
|
+
togglePoint(e, t) {
|
|
3482
|
+
this.getSelectionCount(e, t) > 0 ? this.removeSelection(M.singleCell(e, t)) : this.addSelection(M.singleCell(e, t));
|
|
3483
|
+
}
|
|
3484
|
+
isSelected(e, t) {
|
|
3485
|
+
return this.getSelectionCount(e, t) > 0;
|
|
3486
|
+
}
|
|
3487
|
+
addRange(e) {
|
|
3488
|
+
this.selectionType !== "none" && (this.allSelected = !1, this.selectionMode === "single" && (this.ranges = []), this.selectionType === "row" ? (e.c1 = 0, e.c2 = Number.MAX_SAFE_INTEGER) : this.selectionType === "column" ? (e.r1 = 0, e.r2 = Number.MAX_SAFE_INTEGER) : this.selectionType === "cell" ? (e.r2 = e.r1, e.c2 = e.c1) : this.selectionType, this.ranges.push(e), this.fireChangeEvent());
|
|
3489
|
+
}
|
|
3490
|
+
}
|
|
3491
|
+
class ut {
|
|
3492
|
+
constructor(e = "none") {
|
|
3493
|
+
this.selectionType = e, this.rowIndex = -1, this.columnIndex = -1, this.changed = !1, this.listenerArr = [];
|
|
3494
|
+
}
|
|
3495
|
+
getEventFocusChangedListeners() {
|
|
3496
|
+
return this.listenerArr;
|
|
3497
|
+
}
|
|
3498
|
+
addEventFocusChangedListener(e) {
|
|
3499
|
+
this.listenerArr.includes(e) || this.listenerArr.push(e);
|
|
3500
|
+
}
|
|
3501
|
+
removeEventFocusChangedListener(e) {
|
|
3502
|
+
const t = this.listenerArr.indexOf(e, 0);
|
|
3503
|
+
t > -1 && this.listenerArr.splice(t, 1);
|
|
3504
|
+
}
|
|
3505
|
+
//@AvoidDoubleExecution(100)
|
|
3506
|
+
fireChangeEvent() {
|
|
3507
|
+
this.listenerArr.forEach((e) => e.onFocusChanged(this));
|
|
3508
|
+
}
|
|
3509
|
+
clearChanged() {
|
|
3510
|
+
this.changed = !1;
|
|
3511
|
+
}
|
|
3512
|
+
hasChanged() {
|
|
3513
|
+
return this.changed;
|
|
3514
|
+
}
|
|
3515
|
+
clear() {
|
|
3516
|
+
this.rowIndex = -1, this.columnIndex = -1, this.fireChangeEvent();
|
|
3517
|
+
}
|
|
3518
|
+
setFocus(e, t) {
|
|
3519
|
+
(this.rowIndex !== e || this.columnIndex !== t) && (this.rowIndex = e, this.columnIndex = t, this.changed = !0, this.fireChangeEvent());
|
|
3520
|
+
}
|
|
3521
|
+
hasFocus(e, t) {
|
|
3522
|
+
return this.rowIndex === e && this.columnIndex === t;
|
|
3523
|
+
}
|
|
3524
|
+
getFocus() {
|
|
3525
|
+
return [this.rowIndex, this.columnIndex];
|
|
3526
|
+
}
|
|
3527
|
+
}
|
|
3528
|
+
class pt {
|
|
3372
3529
|
constructor(e, t) {
|
|
3373
3530
|
this.tableModel = e, this.areaModel = t, this.colAndRowspanRanges = void 0;
|
|
3374
3531
|
}
|
|
@@ -3406,17 +3563,31 @@ class k {
|
|
|
3406
3563
|
this.header = e, this.body = t, this.footer = s;
|
|
3407
3564
|
}
|
|
3408
3565
|
}
|
|
3409
|
-
class
|
|
3566
|
+
class gt extends te {
|
|
3410
3567
|
constructor(e, t, s, o) {
|
|
3411
|
-
var r, n;
|
|
3412
|
-
super(e, t, s, o), this.firstVisibleRowIndex = -1, this.lastVisibleRowIndex = -1, this.firstFullVisibleRowIndex = -1, this.lastFullVisibleRowIndex = -1, this.displayedRowCount = 0, this.pixelLimitForFullVisible = 5, this.loggingActive = !1, this.dragging = !1, this.editing = !1, this.storedColumnWidths = [], this.scrollLeft = 0, this.scrollViewportLeft = 0, this.scrollFactorY = 0, this.scrollFactorX = 0, this.cleanupFunctions = {
|
|
3568
|
+
var r, n, l, c;
|
|
3569
|
+
if (super(e, t, s, o), this.firstVisibleRowIndex = -1, this.lastVisibleRowIndex = -1, this.firstFullVisibleRowIndex = -1, this.lastFullVisibleRowIndex = -1, this.displayedRowCount = 0, this.pixelLimitForFullVisible = 5, this.loggingActive = !1, this.dragging = !1, this.editing = !1, this.storedColumnWidths = [], this.scrollLeft = 0, this.scrollViewportLeft = 0, this.scrollFactorY = 0, this.scrollFactorX = 0, this.cleanupFunctions = {
|
|
3413
3570
|
header: [],
|
|
3414
3571
|
body: [],
|
|
3415
3572
|
footer: []
|
|
3416
|
-
}, this.tree = !1, this.colAndRowspanModels = new k(), this.draggingTargetColumnIndex = -1, this.contentScrollTop = 0, this.removables = [],
|
|
3417
|
-
(
|
|
3418
|
-
|
|
3419
|
-
|
|
3573
|
+
}, this.tree = !1, this.colAndRowspanModels = new k(), this.draggingTargetColumnIndex = -1, this.contentScrollTop = 0, this.removables = [], (n = (r = this.tableModel).getSelectionModel) != null && n.call(r))
|
|
3574
|
+
this.getSelectionModel = () => this.tableModel.getSelectionModel();
|
|
3575
|
+
else if ((l = this.tableOptions) != null && l.getSelectionModel)
|
|
3576
|
+
this.getSelectionModel = this.tableOptions.getSelectionModel;
|
|
3577
|
+
else {
|
|
3578
|
+
const a = new Ce();
|
|
3579
|
+
this.getSelectionModel = () => a;
|
|
3580
|
+
}
|
|
3581
|
+
if ((c = this.tableOptions) != null && c.getFocusModel)
|
|
3582
|
+
this.getFocusModel = this.tableOptions.getFocusModel;
|
|
3583
|
+
else {
|
|
3584
|
+
const a = new ut("cell");
|
|
3585
|
+
this.getFocusModel = () => a;
|
|
3586
|
+
}
|
|
3587
|
+
ue(t.getAreaModel("body")) && (this.tree = !0), ["header", "body", "footer"].forEach(
|
|
3588
|
+
(a) => {
|
|
3589
|
+
var d;
|
|
3590
|
+
this.colAndRowspanModels[a] = new pt(t, t.getAreaModel(a)), (d = this.colAndRowspanModels[a]) == null || d.init();
|
|
3420
3591
|
}
|
|
3421
3592
|
);
|
|
3422
3593
|
}
|
|
@@ -3459,7 +3630,7 @@ class ut extends ee {
|
|
|
3459
3630
|
if (s || (s = this.tableOptions.getEditRenderer), s)
|
|
3460
3631
|
if (this.editorRenderer = s(e, t), this.editorRenderer) {
|
|
3461
3632
|
this.editorRendererRow = e, this.editorRendererColumn = t, this.editing = !0, this.repaint();
|
|
3462
|
-
const i =
|
|
3633
|
+
const i = this.hostElement.querySelector("input.ge-table-cell-editor-input");
|
|
3463
3634
|
i && i.focus();
|
|
3464
3635
|
} else
|
|
3465
3636
|
this.resetEditorRenderer();
|
|
@@ -3501,7 +3672,7 @@ class ut extends ee {
|
|
|
3501
3672
|
var i;
|
|
3502
3673
|
for (const r of this.removables)
|
|
3503
3674
|
r.remove();
|
|
3504
|
-
if (this.hideHoverRow(), this.hideHoverColumn(), this.scrollTop = this.scrollViewport.scrollTop, this.scrollLeft = this.scrollViewport.scrollLeft, this.scrollViewportLeft = this.scrollLeft, this.
|
|
3675
|
+
if (this.hideHoverRow(), this.hideHoverColumn(), this.scrollTop = this.scrollViewport.scrollTop, this.scrollLeft = this.scrollViewport.scrollLeft, this.scrollViewportLeft = this.scrollLeft, this.scrollPosSaveTimeout && clearTimeout(this.scrollPosSaveTimeout), this.scrollPosSaveTimeout = setTimeout(() => this.checkForScrollPosSaving(), 500), this.scrollFactorY = this.scrollTop / (this.scrollViewport.scrollHeight - this.scrollViewport.clientHeight), this.scrollFactorX = this.scrollLeft / (this.scrollViewport.scrollWidth - this.scrollViewport.clientWidth), isNaN(this.scrollFactorY) && (this.scrollFactorY = 0), this.pendingContentScroll) {
|
|
3505
3676
|
const r = this.getContentScrollRangeY();
|
|
3506
3677
|
Math.abs(this.scrollTop - this.pendingContentScroll.scrollTop) <= 1 && r > 0 ? this.scrollFactorY = Math.min(1, Math.max(0, this.pendingContentScroll.contentTop / r)) : this.pendingContentScroll = void 0;
|
|
3507
3678
|
}
|
|
@@ -3569,23 +3740,23 @@ class ut extends ee {
|
|
|
3569
3740
|
* @param {string[]} cssClasses - An array of CSS classes to be applied to the cell.
|
|
3570
3741
|
*/
|
|
3571
3742
|
rerenderCellContent({ area: e, rowIndex: t, columnIndex: s, value: o, cssClasses: i }) {
|
|
3572
|
-
const r = this.tableModel.getAreaModel(e), n = 'div[data-col-index="' + s + '"][data-row-index="' + t + '"][data-area="' + e + '"]', l =
|
|
3743
|
+
const r = this.tableModel.getAreaModel(e), n = 'div[data-col-index="' + s + '"][data-row-index="' + t + '"][data-area="' + e + '"]', l = this.hostElement.querySelector(n);
|
|
3573
3744
|
if (l) {
|
|
3574
|
-
let
|
|
3575
|
-
const
|
|
3576
|
-
let
|
|
3577
|
-
if (
|
|
3578
|
-
|
|
3745
|
+
let c;
|
|
3746
|
+
const a = e === "body" && this.editorRenderer && this.editorRendererRow === t && this.editorRendererColumn === s;
|
|
3747
|
+
let d;
|
|
3748
|
+
if (a ? d = this.editorRenderer : d = r.getCellRenderer(t, s), l.innerText = "", this.applyCssClasses(l, i), d)
|
|
3749
|
+
c = d.render(l, t, s, e, r, o, this.dom.domService), c && this.cleanupFunctions[e].push(c);
|
|
3579
3750
|
else {
|
|
3580
|
-
const
|
|
3581
|
-
this.dom.addLabelDiv(l,
|
|
3751
|
+
const f = `${o}`;
|
|
3752
|
+
this.dom.addLabelDiv(l, f, !1, t, s, e);
|
|
3582
3753
|
}
|
|
3583
3754
|
const u = r.getCustomClassesAt(t, s);
|
|
3584
3755
|
u.length && this.dom.addClasses(u, l);
|
|
3585
|
-
const
|
|
3586
|
-
if (
|
|
3587
|
-
for (const
|
|
3588
|
-
this.dom.setStyle(l,
|
|
3756
|
+
const p = r.getCustomStyleAt(t, s);
|
|
3757
|
+
if (p)
|
|
3758
|
+
for (const f in p)
|
|
3759
|
+
this.dom.setStyle(l, f, p[f]);
|
|
3589
3760
|
}
|
|
3590
3761
|
}
|
|
3591
3762
|
getFirstVisibleRowIndex() {
|
|
@@ -3670,7 +3841,7 @@ class ut extends ee {
|
|
|
3670
3841
|
* scaled and scrollTop is no longer a content pixel position.
|
|
3671
3842
|
*/
|
|
3672
3843
|
isScrollHeightCapped() {
|
|
3673
|
-
return this.tableModel.getContentHeightInPixel() + 1 >
|
|
3844
|
+
return this.tableModel.getContentHeightInPixel() + 1 > te.maxScrollHeightInPx;
|
|
3674
3845
|
}
|
|
3675
3846
|
/** Scrollable range of the content in content pixels (content height minus visible body height). */
|
|
3676
3847
|
getContentScrollRangeY() {
|
|
@@ -3745,23 +3916,23 @@ class ut extends ee {
|
|
|
3745
3916
|
var w, v, I;
|
|
3746
3917
|
const s = this.getArea(e, "west"), o = this.getArea(e, "center"), i = this.getArea(e, "east"), r = ((w = this.areaHeightsOfRenderPass) == null ? void 0 : w[e]) ?? o.child.clientHeight;
|
|
3747
3918
|
s.child.innerText = "", o.child.innerText = "", i.child.innerText = "";
|
|
3748
|
-
const n = 0, l = this.areaBodyCenterGeo.width,
|
|
3919
|
+
const n = 0, l = this.areaBodyCenterGeo.width, c = this.tableModel.getPadding(), a = this.tableModel.getAreaModel(e), d = a.getRowCount();
|
|
3749
3920
|
for (; this.cleanupFunctions[e].length; ) {
|
|
3750
3921
|
const x = this.cleanupFunctions[e].shift();
|
|
3751
3922
|
x && x();
|
|
3752
3923
|
}
|
|
3753
3924
|
let u = t;
|
|
3754
|
-
const
|
|
3925
|
+
const p = this.tableModel.getColumnCount(), f = this.tableModel.getFixedRightColumnCount(), m = this.tableModel.getFixedLeftColumnCount();
|
|
3755
3926
|
e === "body" && (this.firstVisibleRowIndex = -1, this.firstFullVisibleRowIndex = -1, this.lastVisibleRowIndex = -1, this.lastFullVisibleRowIndex = -1);
|
|
3756
|
-
let
|
|
3757
|
-
const
|
|
3758
|
-
if (
|
|
3759
|
-
for (
|
|
3760
|
-
|
|
3761
|
-
u = u +
|
|
3927
|
+
let g = 0;
|
|
3928
|
+
const y = (v = a.getConstantRowHeight) == null ? void 0 : v.call(a);
|
|
3929
|
+
if (y !== void 0 && y > 0 && u < 0) {
|
|
3930
|
+
for (g = Math.min(d, Math.floor(-u / y)); g > 0 && u + g * y > 0; )
|
|
3931
|
+
g--;
|
|
3932
|
+
u = u + g * y;
|
|
3762
3933
|
}
|
|
3763
|
-
for (let x =
|
|
3764
|
-
const S = u,
|
|
3934
|
+
for (let x = g; x < d; x++) {
|
|
3935
|
+
const S = u, E = x === d - 1, R = this.tableModel.getRowHeight(e, x);
|
|
3765
3936
|
if (S + R > 0) {
|
|
3766
3937
|
e === "body" && this.firstVisibleRowIndex === -1 && (this.firstVisibleRowIndex = x, this.firstFullVisibleRowIndex = S < -this.pixelLimitForFullVisible ? this.firstVisibleRowIndex + 1 : this.firstVisibleRowIndex);
|
|
3767
3938
|
let A = { left: n, width: l, height: R, top: S, index: x }, D = this.dom.addRowDiv(o, A, x, e, "center");
|
|
@@ -3769,37 +3940,37 @@ class ut extends ee {
|
|
|
3769
3940
|
if (this.adjustColumnsToRowParent({
|
|
3770
3941
|
areaIdent: e,
|
|
3771
3942
|
sideIdent: "center",
|
|
3772
|
-
areaModel:
|
|
3943
|
+
areaModel: a,
|
|
3773
3944
|
geo: A,
|
|
3774
3945
|
parent: D,
|
|
3775
3946
|
rowIndex: x,
|
|
3776
3947
|
columnIndexStart: N,
|
|
3777
|
-
columnIndexEnd:
|
|
3948
|
+
columnIndexEnd: p - f - 1,
|
|
3778
3949
|
verticalFixed: !1,
|
|
3779
|
-
lastRowOfModel:
|
|
3780
|
-
}),
|
|
3950
|
+
lastRowOfModel: E
|
|
3951
|
+
}), c.left > 0 && (A = { left: n, width: this.areaBodyWestGeo.width, height: R, top: S, index: x }, D = this.dom.addRowDiv(s, A, x, e, "west"), this.adjustColumnsToRowParent({
|
|
3781
3952
|
areaIdent: e,
|
|
3782
3953
|
sideIdent: "west",
|
|
3783
|
-
areaModel:
|
|
3954
|
+
areaModel: a,
|
|
3784
3955
|
geo: A,
|
|
3785
3956
|
parent: D,
|
|
3786
3957
|
rowIndex: x,
|
|
3787
3958
|
columnIndexStart: 0,
|
|
3788
3959
|
columnIndexEnd: N - 1,
|
|
3789
3960
|
verticalFixed: !0,
|
|
3790
|
-
lastRowOfModel:
|
|
3791
|
-
})),
|
|
3961
|
+
lastRowOfModel: E
|
|
3962
|
+
})), c.right > 0 && (A = { left: n, width: this.areaBodyEastGeo.width, height: R, top: S, index: x }, D = this.dom.addRowDiv(i, A, x, e, "east"), this.adjustColumnsToRowParent({
|
|
3792
3963
|
areaIdent: e,
|
|
3793
3964
|
sideIdent: "east",
|
|
3794
|
-
areaModel:
|
|
3965
|
+
areaModel: a,
|
|
3795
3966
|
geo: A,
|
|
3796
3967
|
parent: D,
|
|
3797
3968
|
rowIndex: x,
|
|
3798
|
-
columnIndexStart:
|
|
3799
|
-
columnIndexEnd:
|
|
3969
|
+
columnIndexStart: p - f,
|
|
3970
|
+
columnIndexEnd: p - 1,
|
|
3800
3971
|
verticalFixed: !0,
|
|
3801
|
-
lastRowOfModel:
|
|
3802
|
-
})), e === "header" && this.tree && x ===
|
|
3972
|
+
lastRowOfModel: E
|
|
3973
|
+
})), e === "header" && this.tree && x === d - 1) {
|
|
3803
3974
|
const U = this.dom.applyStyle(
|
|
3804
3975
|
this.dom.setAttribute(
|
|
3805
3976
|
this.dom.addDiv(D, new V(16, 20, 20, 8)),
|
|
@@ -3809,8 +3980,8 @@ class ut extends ee {
|
|
|
3809
3980
|
{ cursor: "pointer" }
|
|
3810
3981
|
), C = this.tableOptions.treeOptions.arrowExpandCollapseAll;
|
|
3811
3982
|
if (C) {
|
|
3812
|
-
const
|
|
3813
|
-
this.dom.domService.appendChild(U,
|
|
3983
|
+
const Ye = this.dom.domService.createText(C.content);
|
|
3984
|
+
this.dom.domService.appendChild(U, Ye), C.style && this.dom.applyStyleString(U, C.style);
|
|
3814
3985
|
}
|
|
3815
3986
|
}
|
|
3816
3987
|
}
|
|
@@ -3819,23 +3990,23 @@ class ut extends ee {
|
|
|
3819
3990
|
break;
|
|
3820
3991
|
}
|
|
3821
3992
|
}
|
|
3822
|
-
if (e === "body" && this.firstVisibleRowIndex > -1 && this.lastVisibleRowIndex === -1 && (this.lastVisibleRowIndex =
|
|
3993
|
+
if (e === "body" && this.firstVisibleRowIndex > -1 && this.lastVisibleRowIndex === -1 && (this.lastVisibleRowIndex = d - 1, this.lastFullVisibleRowIndex = d - 1, this.displayedRowCount = this.lastFullVisibleRowIndex - this.firstFullVisibleRowIndex + 1), this.loggingActive && e === "body" && console.log("render scope: this.firstVisibleRowIndex <- " + this.firstVisibleRowIndex + `
|
|
3823
3994
|
render scope: this.firstFullVisibleRowIndex <- ` + this.firstFullVisibleRowIndex + `
|
|
3824
3995
|
render scope: this.lastVisibleRowIndex <- ` + this.lastVisibleRowIndex + `
|
|
3825
3996
|
render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex), this.colAndRowspanModels && this.colAndRowspanModels[e]) {
|
|
3826
3997
|
const x = ((I = this.colAndRowspanModels[e]) == null ? void 0 : I.getRanges()) ?? [];
|
|
3827
3998
|
if (x.length)
|
|
3828
3999
|
for (const S of x) {
|
|
3829
|
-
let
|
|
4000
|
+
let E = 0, R = o.child, A = "center";
|
|
3830
4001
|
if (S.c1 < m)
|
|
3831
4002
|
R = s.child, A = "west";
|
|
3832
|
-
else if (
|
|
4003
|
+
else if (f > 0 && S.c1 >= p - f)
|
|
3833
4004
|
R = i.child, A = "east";
|
|
3834
4005
|
else {
|
|
3835
4006
|
const D = this.areaBodyCenterGeo.width - this.tableModel.getContentWidthInPixel();
|
|
3836
|
-
|
|
4007
|
+
E = this.snapToDevicePixel(this.scrollFactorX * D) - this.areaBodyWestGeo.width, A = "center";
|
|
3837
4008
|
}
|
|
3838
|
-
this.drawBigCell(S,
|
|
4009
|
+
this.drawBigCell(S, E, t, a, R, A);
|
|
3839
4010
|
}
|
|
3840
4011
|
}
|
|
3841
4012
|
}
|
|
@@ -3850,24 +4021,24 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
3850
4021
|
* @protected
|
|
3851
4022
|
*/
|
|
3852
4023
|
drawBigCell(e, t, s, o, i, r) {
|
|
3853
|
-
const n = s + this.getRowHeights(0, e.r1 - 1, o).reduce((
|
|
3854
|
-
let
|
|
3855
|
-
|
|
3856
|
-
const
|
|
3857
|
-
let
|
|
4024
|
+
const n = s + this.getRowHeights(0, e.r1 - 1, o).reduce((g, y) => g + y, 0), l = this.tableModel.getColumnCount(), c = this.tableModel.getFixedRightColumnCount();
|
|
4025
|
+
let a = 0;
|
|
4026
|
+
c > 0 && e.c1 >= l - c && (a = l - c);
|
|
4027
|
+
const d = t + this.getColumnWidths(a, e.c1 - 1).reduce((g, y) => g + y, 0), u = this.getRowHeights(e.r1, e.r2, o).reduce((g, y) => g + y, 0), p = this.getColumnWidths(e.c1, e.c2).reduce((g, y) => g + y, 0);
|
|
4028
|
+
let f = !1;
|
|
3858
4029
|
const m = this.getSelectionModel ? this.getSelectionModel() : void 0;
|
|
3859
|
-
m && (
|
|
4030
|
+
m && (f = m.getSelectionCount(e.r1, e.c1) > 0), e.gammaRange ? this.renderCell({
|
|
3860
4031
|
areaModel: o,
|
|
3861
4032
|
areaIdent: o.areaIdent,
|
|
3862
4033
|
sideIdent: r,
|
|
3863
4034
|
rowIndex: e.r1,
|
|
3864
4035
|
columnIndex: e.c1,
|
|
3865
|
-
left:
|
|
4036
|
+
left: d,
|
|
3866
4037
|
top: n,
|
|
3867
|
-
width:
|
|
4038
|
+
width: p,
|
|
3868
4039
|
height: u,
|
|
3869
4040
|
parent: i,
|
|
3870
|
-
cellSelected:
|
|
4041
|
+
cellSelected: f,
|
|
3871
4042
|
lastRowOfModel: !0,
|
|
3872
4043
|
gammaRange: e.gammaRange
|
|
3873
4044
|
}) : this.renderCell({
|
|
@@ -3876,20 +4047,20 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
3876
4047
|
sideIdent: r,
|
|
3877
4048
|
rowIndex: e.r1,
|
|
3878
4049
|
columnIndex: e.c1,
|
|
3879
|
-
left:
|
|
4050
|
+
left: d,
|
|
3880
4051
|
top: n,
|
|
3881
|
-
width:
|
|
4052
|
+
width: p,
|
|
3882
4053
|
height: u,
|
|
3883
4054
|
parent: i,
|
|
3884
|
-
cellSelected:
|
|
4055
|
+
cellSelected: f,
|
|
3885
4056
|
lastRowOfModel: !0,
|
|
3886
4057
|
gammaRange: e.gammaRange
|
|
3887
4058
|
}), o.areaIdent === "header" && this.tableOptions.columnsResizable && this.renderHeaderCellResizeHandle({
|
|
3888
4059
|
rowIndex: e.r1,
|
|
3889
4060
|
columnIndex: e.c1,
|
|
3890
|
-
cellLeft:
|
|
4061
|
+
cellLeft: d,
|
|
3891
4062
|
cellTop: n,
|
|
3892
|
-
cellWidth:
|
|
4063
|
+
cellWidth: p,
|
|
3893
4064
|
cellHeight: u,
|
|
3894
4065
|
parent: i
|
|
3895
4066
|
});
|
|
@@ -3930,50 +4101,50 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
3930
4101
|
rowIndex: r,
|
|
3931
4102
|
columnIndexStart: n,
|
|
3932
4103
|
columnIndexEnd: l,
|
|
3933
|
-
verticalFixed:
|
|
3934
|
-
lastRowOfModel:
|
|
4104
|
+
verticalFixed: c = !1,
|
|
4105
|
+
lastRowOfModel: a = !1
|
|
3935
4106
|
}) {
|
|
3936
4107
|
var m;
|
|
3937
|
-
let
|
|
3938
|
-
if (!
|
|
3939
|
-
const
|
|
3940
|
-
|
|
4108
|
+
let d = 0;
|
|
4109
|
+
if (!c) {
|
|
4110
|
+
const g = this.areaBodyCenterGeo.width - this.tableModel.getContentWidthInPixel();
|
|
4111
|
+
d = this.snapToDevicePixel(this.scrollFactorX * g);
|
|
3941
4112
|
}
|
|
3942
|
-
const u = 0,
|
|
3943
|
-
let
|
|
3944
|
-
for (let
|
|
3945
|
-
const
|
|
3946
|
-
if (w > 0 &&
|
|
4113
|
+
const u = 0, p = !!(e === "body" && t);
|
|
4114
|
+
let f = d;
|
|
4115
|
+
for (let g = n; g <= l; g++) {
|
|
4116
|
+
const y = f, w = this.tableModel.getColumnWidth(g);
|
|
4117
|
+
if (w > 0 && y + w > 0) {
|
|
3947
4118
|
let v = o.height;
|
|
3948
|
-
const I = s.getRowspanAt(r,
|
|
4119
|
+
const I = s.getRowspanAt(r, g), x = s.getColspanAt(r, g);
|
|
3949
4120
|
I > 1 && (v = this.getRowHeights(r, r + I - 1, s).reduce((R, A) => R + A, 0));
|
|
3950
4121
|
let S = w;
|
|
3951
|
-
x > 1 && (S = this.getColumnWidths(
|
|
3952
|
-
let
|
|
3953
|
-
if (this.colAndRowspanModels && this.colAndRowspanModels[e] && (m = this.colAndRowspanModels[e]) != null && m.isInRange(r,
|
|
3954
|
-
this.renderDragTargetDiv(i,
|
|
3955
|
-
const R = { left:
|
|
4122
|
+
x > 1 && (S = this.getColumnWidths(g, g + x - 1).reduce((R, A) => R + A, 0));
|
|
4123
|
+
let E = !1;
|
|
4124
|
+
if (this.colAndRowspanModels && this.colAndRowspanModels[e] && (m = this.colAndRowspanModels[e]) != null && m.isInRange(r, g) && (E = !0), this.draggingTargetColumnIndex === g && e !== "header") {
|
|
4125
|
+
this.renderDragTargetDiv(i, y, u, S, v);
|
|
4126
|
+
const R = { left: y, top: u, width: S, height: v };
|
|
3956
4127
|
this.dom.addColumnBorderDivs(this.tableOptions, i, R, e, t);
|
|
3957
4128
|
} else {
|
|
3958
|
-
const R = this.renderSelectedBackgroundDiv(
|
|
3959
|
-
"gammaCells" in s && s.getValueAt(r,
|
|
4129
|
+
const R = this.renderSelectedBackgroundDiv(E, p, t, s, r, g, i, y, u, S, v);
|
|
4130
|
+
"gammaCells" in s && s.getValueAt(r, g) && (E = !1), E || this.renderCell({
|
|
3960
4131
|
areaModel: s,
|
|
3961
4132
|
areaIdent: e,
|
|
3962
4133
|
sideIdent: t,
|
|
3963
4134
|
rowIndex: r,
|
|
3964
|
-
columnIndex:
|
|
3965
|
-
left:
|
|
4135
|
+
columnIndex: g,
|
|
4136
|
+
left: y,
|
|
3966
4137
|
top: u,
|
|
3967
4138
|
width: S,
|
|
3968
4139
|
height: v,
|
|
3969
4140
|
parent: i,
|
|
3970
4141
|
cellSelected: R,
|
|
3971
|
-
lastRowOfModel:
|
|
4142
|
+
lastRowOfModel: a,
|
|
3972
4143
|
gammaRange: !0
|
|
3973
4144
|
}), e === "header" && this.tableOptions.columnsResizable && this.renderHeaderCellResizeHandle({
|
|
3974
4145
|
rowIndex: r,
|
|
3975
|
-
columnIndex:
|
|
3976
|
-
cellLeft:
|
|
4146
|
+
columnIndex: g,
|
|
4147
|
+
cellLeft: y,
|
|
3977
4148
|
cellTop: u,
|
|
3978
4149
|
cellWidth: S,
|
|
3979
4150
|
cellHeight: v,
|
|
@@ -3981,10 +4152,10 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
3981
4152
|
});
|
|
3982
4153
|
}
|
|
3983
4154
|
}
|
|
3984
|
-
if (
|
|
4155
|
+
if (f = f + w, f > this.areaBodyCenterGeo.width)
|
|
3985
4156
|
break;
|
|
3986
4157
|
}
|
|
3987
|
-
this.tableOptions.verticalBorderVisible && this.dom.addVerticalBorder(new V(
|
|
4158
|
+
this.tableOptions.verticalBorderVisible && this.dom.addVerticalBorder(new V(f - 1, 1, o.height, 0), i);
|
|
3988
4159
|
}
|
|
3989
4160
|
/**
|
|
3990
4161
|
* Retrieves the column index of the tree arrow column in the table.
|
|
@@ -4007,46 +4178,49 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
4007
4178
|
left: r,
|
|
4008
4179
|
width: n,
|
|
4009
4180
|
height: l,
|
|
4010
|
-
top:
|
|
4011
|
-
parent:
|
|
4012
|
-
lastRowOfModel:
|
|
4181
|
+
top: c,
|
|
4182
|
+
parent: a,
|
|
4183
|
+
lastRowOfModel: d
|
|
4013
4184
|
}) {
|
|
4014
4185
|
var U;
|
|
4015
|
-
const
|
|
4016
|
-
let
|
|
4186
|
+
const u = t === "body" && this.editorRenderer && this.editorRendererRow === o && this.editorRendererColumn === i, p = u ? this.editorRenderer : e.getCellRenderer(o, i), f = { left: r, width: n, height: l, top: c, index: i }, m = e.getRowByIndex(o);
|
|
4187
|
+
let g = "none";
|
|
4017
4188
|
if (i === this.getTreeArrowColumnIndex() && j(m)) {
|
|
4018
4189
|
const C = m;
|
|
4019
|
-
(U = C.children) != null && U.length ? C.expanded ?
|
|
4190
|
+
(U = C.children) != null && U.length ? C.expanded ? g = "expanded" : g = "collapsed" : g = "hidden";
|
|
4020
4191
|
}
|
|
4021
4192
|
let w;
|
|
4022
4193
|
if (t === "header") {
|
|
4023
4194
|
const C = this.tableModel.getColumnDef(i);
|
|
4024
4195
|
(!(C != null && C.sortIconVisible) || C != null && C.sortIconVisible()) && (w = C == null ? void 0 : C.sortState);
|
|
4025
4196
|
}
|
|
4026
|
-
const v = e.getValueAt(o, i), I =
|
|
4197
|
+
const v = e.getValueAt(o, i), I = p ? "" : `${v ?? ""}`, x = e.isRowChecked(o), S = this.dom.addColumnDiv(
|
|
4027
4198
|
{
|
|
4028
|
-
parent:
|
|
4029
|
-
geo:
|
|
4199
|
+
parent: a,
|
|
4200
|
+
geo: f,
|
|
4030
4201
|
rowIndex: o,
|
|
4031
4202
|
columnIndex: i,
|
|
4032
4203
|
areaIdent: t,
|
|
4033
4204
|
sideIdent: s,
|
|
4034
4205
|
text: I,
|
|
4035
|
-
treeArrow:
|
|
4206
|
+
treeArrow: g,
|
|
4036
4207
|
tableOptions: this.tableOptions,
|
|
4037
4208
|
checkedType: x,
|
|
4038
4209
|
sortState: w
|
|
4039
4210
|
}
|
|
4040
|
-
),
|
|
4041
|
-
|
|
4211
|
+
), E = e.getTooltipAt(o, i);
|
|
4212
|
+
E && this.dom.setAttribute(S, "title", E);
|
|
4042
4213
|
const R = this.tableModel.getColumnDef(i);
|
|
4043
4214
|
R && R.classes[t] && this.dom.addClasses(R.classes[t], S);
|
|
4044
4215
|
let A;
|
|
4045
|
-
|
|
4216
|
+
if (p && (A = p.render(S, o, i, t, e, v, this.dom.domService), u)) {
|
|
4217
|
+
const C = S.querySelector("input, select");
|
|
4218
|
+
C && !C.contains(document.activeElement) && C.focus();
|
|
4219
|
+
}
|
|
4046
4220
|
const D = e.getCustomClassesAt(o, i);
|
|
4047
|
-
if (D.length && this.dom.addClasses(D, S), this.dom.addColumnBorderDivs(this.tableOptions,
|
|
4221
|
+
if (D.length && this.dom.addClasses(D, S), this.dom.addColumnBorderDivs(this.tableOptions, a, f, t, s), d && this.dom.addHorizontalBorder({ left: r, width: n, height: l, top: c + l }, a), this.getFocusModel && t === "body") {
|
|
4048
4222
|
const C = this.getFocusModel();
|
|
4049
|
-
C != null && C.hasFocus(o, i) && this.dom.addFocusBorderDivs(
|
|
4223
|
+
C != null && C.hasFocus(o, i) && this.dom.addFocusBorderDivs(a, f, {});
|
|
4050
4224
|
}
|
|
4051
4225
|
t === "header" && this.dom.setAttribute(S, "data-ge-action", "drag-column");
|
|
4052
4226
|
const N = e.getCustomStyleAt(o, i);
|
|
@@ -4197,12 +4371,12 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
4197
4371
|
if (this.dragging) {
|
|
4198
4372
|
const r = this.hostElement.clientHeight, n = this.storedColumnWidths[t];
|
|
4199
4373
|
if ((o = e.originalEvent) != null && o.clientX) {
|
|
4200
|
-
const
|
|
4374
|
+
const a = { left: ((i = e.originalEvent) == null ? void 0 : i.clientX) - n / 2, width: n, height: r, top: 0, index: t };
|
|
4201
4375
|
this.dom.applyStyle(this.draggingColumn, {
|
|
4202
4376
|
background: "rgba(128,128,128,0.2)",
|
|
4203
4377
|
display: "block",
|
|
4204
4378
|
overfllow: "clip"
|
|
4205
|
-
}), this.dom.applyStyleInPx(this.draggingColumn,
|
|
4379
|
+
}), this.dom.applyStyleInPx(this.draggingColumn, a), s && this.renderContentOfDraggingColumn(a);
|
|
4206
4380
|
}
|
|
4207
4381
|
} else
|
|
4208
4382
|
this.hideDraggingColumn();
|
|
@@ -4230,27 +4404,27 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
4230
4404
|
const o = "center", i = this.tableModel.getAreaModel(t), r = i == null ? void 0 : i.getRowCount();
|
|
4231
4405
|
if (r) {
|
|
4232
4406
|
const n = e.index ?? 0, l = this.draggingColumn;
|
|
4233
|
-
for (let
|
|
4234
|
-
const
|
|
4407
|
+
for (let c = 0; c < r; c++) {
|
|
4408
|
+
const a = s, d = i.getRowHeight(c), u = { left: 0, width: e.width, height: d, top: a, index: c }, p = i.getValueAt(c, n), f = i.getCellRenderer(c, n), m = f ? "" : `${p ?? ""}`, g = {
|
|
4235
4409
|
parent: l,
|
|
4236
4410
|
geo: u,
|
|
4237
|
-
rowIndex:
|
|
4411
|
+
rowIndex: c,
|
|
4238
4412
|
columnIndex: n,
|
|
4239
4413
|
areaIdent: t,
|
|
4240
4414
|
sideIdent: o,
|
|
4241
4415
|
text: m
|
|
4242
|
-
},
|
|
4416
|
+
}, y = this.dom.addColumnDiv(g);
|
|
4243
4417
|
let w;
|
|
4244
|
-
|
|
4245
|
-
const v = i.getCustomClassesAt(
|
|
4246
|
-
v.length && this.dom.addClasses(v,
|
|
4418
|
+
f && (w = f.render(y, c, n, t, i, p, this.dom.domService), w && this.cleanupFunctions[t].push(w));
|
|
4419
|
+
const v = i.getCustomClassesAt(c, n);
|
|
4420
|
+
v.length && this.dom.addClasses(v, y);
|
|
4247
4421
|
const I = this.tableModel.getColumnDef(n);
|
|
4248
|
-
I && I.classes[t] && this.dom.addClasses(I.classes[t],
|
|
4249
|
-
const x = i.getCustomStyleAt(
|
|
4422
|
+
I && I.classes[t] && this.dom.addClasses(I.classes[t], y), this.dom.addColumnBorderDivs(this.tableOptions, l, u, t, o);
|
|
4423
|
+
const x = i.getCustomStyleAt(c, n);
|
|
4250
4424
|
if (x)
|
|
4251
4425
|
for (const S in x)
|
|
4252
|
-
this.dom.setStyle(
|
|
4253
|
-
s = s +
|
|
4426
|
+
this.dom.setStyle(y, S, x[S]);
|
|
4427
|
+
s = s + d;
|
|
4254
4428
|
}
|
|
4255
4429
|
}
|
|
4256
4430
|
return s;
|
|
@@ -4299,19 +4473,19 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
4299
4473
|
* @param {number} height - The height of the div.
|
|
4300
4474
|
* @returns {boolean} - Whether the cell is selected.
|
|
4301
4475
|
*/
|
|
4302
|
-
renderSelectedBackgroundDiv(e, t, s, o, i, r, n, l,
|
|
4476
|
+
renderSelectedBackgroundDiv(e, t, s, o, i, r, n, l, c, a, d) {
|
|
4303
4477
|
let u = !1;
|
|
4304
4478
|
if (!e && t && o.isSelectable(i, r) && this.getSelectionModel) {
|
|
4305
|
-
const
|
|
4306
|
-
if (
|
|
4307
|
-
const
|
|
4308
|
-
u =
|
|
4309
|
-
for (let m = 0; m <
|
|
4310
|
-
const
|
|
4479
|
+
const p = this.getSelectionModel();
|
|
4480
|
+
if (p) {
|
|
4481
|
+
const f = p.getSelectionCount(i, r);
|
|
4482
|
+
u = f > 0;
|
|
4483
|
+
for (let m = 0; m < f; m++) {
|
|
4484
|
+
const g = this.dom.applyStylePosistionAbsolute(
|
|
4311
4485
|
// ge-table-body-west-selected-range
|
|
4312
4486
|
this.dom.createDivWithClass(`ge-table-${o.areaIdent}-${s}-selected-range`, n)
|
|
4313
4487
|
);
|
|
4314
|
-
this.dom.setStyle(
|
|
4488
|
+
this.dom.setStyle(g, "left", `${l}px`), this.dom.setStyle(g, "top", `${c}px`), this.dom.setStyle(g, "width", `${a}px`), this.dom.setStyle(g, "height", `${d}px`);
|
|
4315
4489
|
}
|
|
4316
4490
|
}
|
|
4317
4491
|
}
|
|
@@ -4345,12 +4519,12 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
4345
4519
|
left: r,
|
|
4346
4520
|
top: n,
|
|
4347
4521
|
width: l,
|
|
4348
|
-
height:
|
|
4349
|
-
parent:
|
|
4350
|
-
cellSelected:
|
|
4522
|
+
height: c,
|
|
4523
|
+
parent: a,
|
|
4524
|
+
cellSelected: d,
|
|
4351
4525
|
lastRowOfModel: u
|
|
4352
4526
|
}) {
|
|
4353
|
-
const [
|
|
4527
|
+
const [p, f] = this.addAndRenderCellDiv({
|
|
4354
4528
|
areaModel: e,
|
|
4355
4529
|
areaIdent: t,
|
|
4356
4530
|
sideIdent: s,
|
|
@@ -4358,12 +4532,12 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
4358
4532
|
index: i,
|
|
4359
4533
|
left: r,
|
|
4360
4534
|
width: l,
|
|
4361
|
-
height:
|
|
4535
|
+
height: c,
|
|
4362
4536
|
top: n,
|
|
4363
|
-
parent:
|
|
4537
|
+
parent: a,
|
|
4364
4538
|
lastRowOfModel: u
|
|
4365
4539
|
});
|
|
4366
|
-
|
|
4540
|
+
d && this.dom.addClass(`ge-table-${t}-${s}-selected-range`, p), f && this.cleanupFunctions[t].push(f);
|
|
4367
4541
|
}
|
|
4368
4542
|
/**
|
|
4369
4543
|
* Render the header cell resize handle.
|
|
@@ -4380,16 +4554,16 @@ render scope: this.lastFullVisibleRowIndex <- ` + this.lastFullVisibleRowIndex),
|
|
|
4380
4554
|
* @return {void}
|
|
4381
4555
|
*/
|
|
4382
4556
|
renderHeaderCellResizeHandle({ rowIndex: e, columnIndex: t, cellLeft: s, cellTop: o, cellWidth: i, cellHeight: r, parent: n }) {
|
|
4383
|
-
const l = this.dom.domService,
|
|
4384
|
-
l.setAttribute(
|
|
4557
|
+
const l = this.dom.domService, c = this.tableOptions.columnResizeHandleWidthInPx ?? 2, a = l.createElement("div");
|
|
4558
|
+
l.setAttribute(a, "data-col-index", `${t}`), l.setAttribute(a, "data-row-index", `${e}`), l.setAttribute(a, "data-area", "header"), l.setAttribute(a, "data-ge-action", "resize-column"), l.addClass(a, "ge-table-column-resize-handle"), l.setStyle(a, "display", "clip"), l.setStyle(a, "position", "absolute"), l.setStyle(a, "cursor", "col-resize"), l.setStyle(a, "left", `${s + i - c}px`), l.setStyle(a, "top", `${o}px`), l.setStyle(a, "width", `${c}px`), l.setStyle(a, "height", `${r}px`), l.appendChild(n, a);
|
|
4385
4559
|
}
|
|
4386
4560
|
}
|
|
4387
|
-
class
|
|
4561
|
+
class Ie {
|
|
4388
4562
|
constructor(e, t) {
|
|
4389
4563
|
this.columnIndex = e, this.sortState = t;
|
|
4390
4564
|
}
|
|
4391
4565
|
}
|
|
4392
|
-
class
|
|
4566
|
+
class ft {
|
|
4393
4567
|
constructor(e) {
|
|
4394
4568
|
this.tableScope = e, this.tableScope.hostElement.addEventListener(
|
|
4395
4569
|
"change",
|
|
@@ -4409,34 +4583,33 @@ class pt {
|
|
|
4409
4583
|
if (e.target instanceof HTMLInputElement || e.target instanceof HTMLSelectElement || e.target instanceof HTMLTextAreaElement) {
|
|
4410
4584
|
const t = e.target, s = t.getAttribute("data-area"), o = t.getAttribute("data-row-index"), i = t.getAttribute("data-col-index");
|
|
4411
4585
|
if (s && o && i) {
|
|
4412
|
-
const r =
|
|
4586
|
+
const r = le(s), n = Number(o), l = Number(i);
|
|
4413
4587
|
this.tableScope.updateModelValueAfterEdit(r, n, l, t.value);
|
|
4414
4588
|
}
|
|
4415
4589
|
}
|
|
4416
4590
|
}
|
|
4417
4591
|
}
|
|
4418
|
-
class
|
|
4592
|
+
class mt {
|
|
4419
4593
|
constructor(e = -1, t = -1) {
|
|
4420
4594
|
this.rowIndex = e, this.columnIndex = t;
|
|
4421
4595
|
}
|
|
4422
4596
|
}
|
|
4423
|
-
class
|
|
4597
|
+
class ve {
|
|
4424
4598
|
constructor(e) {
|
|
4425
4599
|
this.cells = e;
|
|
4426
4600
|
}
|
|
4427
4601
|
static createSingle(e, t) {
|
|
4428
|
-
return new
|
|
4602
|
+
return new ve([new mt(e, t)]);
|
|
4429
4603
|
}
|
|
4430
4604
|
}
|
|
4431
|
-
class
|
|
4605
|
+
class bt {
|
|
4432
4606
|
constructor(e, t, s, o, i, r, n, l) {
|
|
4433
4607
|
this.scrollTop = e, this.scrollLeft = t, this.scrollHeight = s, this.scrollWidth = o, this.clientHeight = i, this.clientWidth = r, this.scrollFactorY = n, this.scrollFactorX = l;
|
|
4434
4608
|
}
|
|
4435
4609
|
}
|
|
4436
|
-
class
|
|
4610
|
+
class yt {
|
|
4437
4611
|
constructor(e) {
|
|
4438
|
-
|
|
4439
|
-
this.tableScope = e, this.ignoreNextClick = !1, (t = this.tableScope.tableOptions) != null && t.getSelectionModel && (this.getSelectionModel = this.tableScope.tableOptions.getSelectionModel), (s = this.tableScope.tableOptions) != null && s.getFocusModel && (this.getFocusModel = this.tableScope.tableOptions.getFocusModel);
|
|
4612
|
+
this.tableScope = e, this.ignoreNextClick = !1, this.getSelectionModel = () => this.tableScope.selectionModel(), this.getFocusModel = () => this.tableScope.focusModel();
|
|
4440
4613
|
}
|
|
4441
4614
|
/**
|
|
4442
4615
|
* Called on mouse down: a new gesture starts.
|
|
@@ -4462,13 +4635,13 @@ class mt {
|
|
|
4462
4635
|
return o && !o.hasFocus(t.rowIndex, t.columnIndex) && (o.setFocus(t.rowIndex, t.columnIndex), this.tableScope.onFocusChanged(o)), this.previousEvt = t.clone(), this.ignoreNextClick = e.rowIndex !== t.rowIndex || e.columnIndex !== t.columnIndex, this.tableScope.onSelectionChanged(s), !0;
|
|
4463
4636
|
}
|
|
4464
4637
|
onMouseClicked(e, t) {
|
|
4465
|
-
var i, r, n, l,
|
|
4638
|
+
var i, r, n, l, c, a, d;
|
|
4466
4639
|
if (this.ignoreNextClick)
|
|
4467
4640
|
return this.ignoreNextClick = !1, !1;
|
|
4468
4641
|
let s = !1, o = !1;
|
|
4469
4642
|
if (this.getSelectionModel && this.getFocusModel) {
|
|
4470
|
-
const u = this.getSelectionModel(),
|
|
4471
|
-
u &&
|
|
4643
|
+
const u = this.getSelectionModel(), p = this.getFocusModel();
|
|
4644
|
+
u && p && (p.hasFocus(e.rowIndex, e.columnIndex) || (p.setFocus(e.rowIndex, e.columnIndex), this.tableScope.onFocusChanged(p), s = !0), (i = e.originalEvent) != null && i.shiftKey || u.hasSelection() && (u.clear(), s = !0), (r = e.originalEvent) != null && r.shiftKey && this.previousEvt ? (u.addSelection(this.createRangeByEvents(e, this.previousEvt)), o = !0, s = !0) : (n = e.originalEvent) != null && n.altKey && ((l = e.originalEvent) != null && l.ctrlKey || (c = e.originalEvent) != null && c.metaKey) ? (u.removeSelection(M.singleCell(e.rowIndex, e.columnIndex)), o = !0, s = !0) : (a = e.originalEvent) != null && a.ctrlKey || (d = e.originalEvent) != null && d.metaKey ? (u.addSelection(M.singleCell(e.rowIndex, e.columnIndex)), o = !0, s = !0) : (u.firstClick(e.rowIndex, e.columnIndex), s = !0), this.tableScope.onSelectionChanged(u));
|
|
4472
4645
|
}
|
|
4473
4646
|
return o ? this.previousEvt = void 0 : this.previousEvt = e == null ? void 0 : e.clone(), s;
|
|
4474
4647
|
}
|
|
@@ -4499,7 +4672,7 @@ class mt {
|
|
|
4499
4672
|
});
|
|
4500
4673
|
}
|
|
4501
4674
|
}
|
|
4502
|
-
class
|
|
4675
|
+
class wt {
|
|
4503
4676
|
get() {
|
|
4504
4677
|
return {
|
|
4505
4678
|
f2: "START_EDITING",
|
|
@@ -4519,7 +4692,7 @@ class bt {
|
|
|
4519
4692
|
};
|
|
4520
4693
|
}
|
|
4521
4694
|
}
|
|
4522
|
-
class
|
|
4695
|
+
class xt {
|
|
4523
4696
|
get() {
|
|
4524
4697
|
return {
|
|
4525
4698
|
f2: "START_EDITING",
|
|
@@ -4541,23 +4714,23 @@ class yt {
|
|
|
4541
4714
|
};
|
|
4542
4715
|
}
|
|
4543
4716
|
}
|
|
4544
|
-
function
|
|
4545
|
-
return
|
|
4717
|
+
function St(h) {
|
|
4718
|
+
return h.trim().replace(/\+/g, " ").replace(/ +/g, " ").replace(/⌫/g, "backspace").replace(/↩/g, "enter").replace(/⇧/g, "shift").replace(/⌥/g, "alt").replace(/option/g, "alt").replace(/opt/g, "alt").replace(/⌃/g, "ctrl").replace(/control/g, "ctrl").replace(/command/g, "cmd").replace(/meta/g, "cmd").replace(/escape/g, "esc").replace(/⌘/g, "cmd").replace(/\*/g, "multiply").split(" ").filter((e) => e).filter((e, t, s) => s.indexOf(e) === t).sort((e, t) => {
|
|
4546
4719
|
const s = { cmd: 1, ctrl: 2, alt: 3, shift: 4 }, o = s[e] || 5, i = s[t] || 5;
|
|
4547
4720
|
return o !== i ? o - i : e.localeCompare(t);
|
|
4548
4721
|
}).join(" ");
|
|
4549
4722
|
}
|
|
4550
|
-
function
|
|
4551
|
-
let e =
|
|
4552
|
-
if (e === " " && (e = "space"), e === "arrowleft" && (e = "left"), e === "arrowright" && (e = "right"), e === "arrowup" && (e = "up"), e === "arrowdown" && (e = "down"), e === "delete" &&
|
|
4553
|
-
const s =
|
|
4723
|
+
function Ee(h) {
|
|
4724
|
+
let e = h.key.toLowerCase();
|
|
4725
|
+
if (e === " " && (e = "space"), e === "arrowleft" && (e = "left"), e === "arrowright" && (e = "right"), e === "arrowup" && (e = "up"), e === "arrowdown" && (e = "down"), e === "delete" && h.code === "Delete" && (e = "delete"), e === "backspace" && (e = "backspace"), e === "escape" && (e = "esc"), e === "return" && (e = "enter"), h.code.startsWith("Numpad")) {
|
|
4726
|
+
const s = h.code.replace("Numpad", "").toLowerCase();
|
|
4554
4727
|
s === "add" ? e = "num_add" : s === "subtract" ? e = "num_subtract" : s === "multiply" ? e = "num_multiply" : s === "divide" ? e = "num_divide" : s === "decimal" ? e = "num_decimal" : s === "enter" ? e = "num_enter" : e = "num_" + s;
|
|
4555
4728
|
}
|
|
4556
|
-
|
|
4729
|
+
h.code.match(/^F\d+$/) && (e = h.code.toLowerCase()), h.code.match(/^Digit\d+$/) && (e = h.code.replace(/Digit/g, ""));
|
|
4557
4730
|
let t = "";
|
|
4558
|
-
return
|
|
4731
|
+
return h.ctrlKey && (t += " ctrl"), h.altKey && (t += t + " alt"), h.shiftKey && (t += t + " shift"), h.metaKey && (t += t + " cmd"), St(t + " " + e);
|
|
4559
4732
|
}
|
|
4560
|
-
class
|
|
4733
|
+
class Ct {
|
|
4561
4734
|
constructor(e) {
|
|
4562
4735
|
this.tableScope = e, this.shortcutActionIdMapping = {}, this.listener = [], this.listener.push(e), this.init();
|
|
4563
4736
|
}
|
|
@@ -4583,7 +4756,7 @@ class xt {
|
|
|
4583
4756
|
));
|
|
4584
4757
|
}
|
|
4585
4758
|
assignPredefinedSystemShortcutMappings() {
|
|
4586
|
-
this.isMacintosh() ? Object.assign(this.shortcutActionIdMapping, new
|
|
4759
|
+
this.isMacintosh() ? Object.assign(this.shortcutActionIdMapping, new xt().get()) : Object.assign(this.shortcutActionIdMapping, new wt().get());
|
|
4587
4760
|
}
|
|
4588
4761
|
isMacintosh() {
|
|
4589
4762
|
return navigator.platform.indexOf("Mac") > -1;
|
|
@@ -4595,8 +4768,11 @@ class xt {
|
|
|
4595
4768
|
return location.hostname === "localhost" || location.hostname === "127.0.0.1";
|
|
4596
4769
|
}
|
|
4597
4770
|
onKeyDown(e) {
|
|
4598
|
-
const t =
|
|
4599
|
-
t &&
|
|
4771
|
+
const t = e.target;
|
|
4772
|
+
if (t && (t.isContentEditable || ["INPUT", "SELECT", "TEXTAREA"].includes(t.tagName)))
|
|
4773
|
+
return;
|
|
4774
|
+
const s = this.findEntity(e);
|
|
4775
|
+
s && this.emit(s) && (e.preventDefault(), e.stopPropagation());
|
|
4600
4776
|
}
|
|
4601
4777
|
emit(e) {
|
|
4602
4778
|
this.isDebug() && console.debug("ShortcutService emit :", e);
|
|
@@ -4606,10 +4782,10 @@ class xt {
|
|
|
4606
4782
|
return t;
|
|
4607
4783
|
}
|
|
4608
4784
|
findEntity(e) {
|
|
4609
|
-
const t =
|
|
4785
|
+
const t = Ee(e);
|
|
4610
4786
|
this.isDebug() && console.debug("ShortcutService shortcut :", t);
|
|
4611
4787
|
for (const s in this.shortcutActionIdMapping)
|
|
4612
|
-
if (
|
|
4788
|
+
if (Ee(e) === t)
|
|
4613
4789
|
return this.isDebug() && console.debug("ShortcutService action :", this.shortcutActionIdMapping[s]), this.shortcutActionIdMapping[s];
|
|
4614
4790
|
}
|
|
4615
4791
|
// private areTokensEquals(tokens1: string[], tokens2: string[]): boolean {
|
|
@@ -4656,7 +4832,7 @@ class xt {
|
|
|
4656
4832
|
return this.shortcutActionIdMapping;
|
|
4657
4833
|
}
|
|
4658
4834
|
}
|
|
4659
|
-
class
|
|
4835
|
+
class pe {
|
|
4660
4836
|
onCheckboxChanged(e) {
|
|
4661
4837
|
}
|
|
4662
4838
|
onContextmenu(e) {
|
|
@@ -4678,7 +4854,7 @@ class he {
|
|
|
4678
4854
|
onFocusChanged(e) {
|
|
4679
4855
|
}
|
|
4680
4856
|
}
|
|
4681
|
-
class
|
|
4857
|
+
class vt {
|
|
4682
4858
|
setStyle(e, t, s) {
|
|
4683
4859
|
return e.style[t] = s, e;
|
|
4684
4860
|
}
|
|
@@ -4705,7 +4881,7 @@ class St {
|
|
|
4705
4881
|
e.setAttribute(t, s);
|
|
4706
4882
|
}
|
|
4707
4883
|
}
|
|
4708
|
-
class
|
|
4884
|
+
class Rt {
|
|
4709
4885
|
render(e, t, s, o, i, r, n) {
|
|
4710
4886
|
if (i.isEditable(t, s)) {
|
|
4711
4887
|
n.addClass(e, "ge-table-row-input-div");
|
|
@@ -4726,126 +4902,7 @@ class Ct {
|
|
|
4726
4902
|
}
|
|
4727
4903
|
}
|
|
4728
4904
|
}
|
|
4729
|
-
class
|
|
4730
|
-
constructor(e = "none", t = "single") {
|
|
4731
|
-
this.selectionType = e, this.selectionMode = t, this.ranges = [], this.negativeRanges = [], this.allSelected = !1, this.silent = !1, this.listenerArr = [];
|
|
4732
|
-
}
|
|
4733
|
-
getEventSelectionChangedListeners() {
|
|
4734
|
-
return this.listenerArr;
|
|
4735
|
-
}
|
|
4736
|
-
addEventSelectionChangedListener(e) {
|
|
4737
|
-
this.listenerArr.includes(e) || this.listenerArr.push(e);
|
|
4738
|
-
}
|
|
4739
|
-
removeEventSelectionChangedListener(e) {
|
|
4740
|
-
const t = this.listenerArr.indexOf(e, 0);
|
|
4741
|
-
t > -1 && this.listenerArr.splice(t, 1);
|
|
4742
|
-
}
|
|
4743
|
-
//@AvoidDoubleExecution(100)
|
|
4744
|
-
fireChangeEvent() {
|
|
4745
|
-
this.silent || this.listenerArr.forEach((e) => e.onSelectionChanged(this));
|
|
4746
|
-
}
|
|
4747
|
-
firstClick(e, t) {
|
|
4748
|
-
this.selectionType === "row" ? this.addRange(M.singleRow(e)) : this.selectionType === "column" && this.addRange(M.singleColumn(t));
|
|
4749
|
-
}
|
|
4750
|
-
getSelectionCount(e, t) {
|
|
4751
|
-
let s = 0;
|
|
4752
|
-
for (const o of this.ranges)
|
|
4753
|
-
o.isInRange(e, t) && s++;
|
|
4754
|
-
return this.allSelected && s++, this.isInNegativeRange(e, t) && (s = 0), s;
|
|
4755
|
-
}
|
|
4756
|
-
isInNegativeRange(e, t) {
|
|
4757
|
-
for (const s of this.negativeRanges)
|
|
4758
|
-
if (s.isInRange(e, t))
|
|
4759
|
-
return !0;
|
|
4760
|
-
return !1;
|
|
4761
|
-
}
|
|
4762
|
-
getRanges() {
|
|
4763
|
-
return this.ranges;
|
|
4764
|
-
}
|
|
4765
|
-
clear() {
|
|
4766
|
-
this.ranges = [], this.negativeRanges = [], this.allSelected = !1, this.fireChangeEvent();
|
|
4767
|
-
}
|
|
4768
|
-
hasSelection() {
|
|
4769
|
-
return this.allSelected || !!this.ranges.length;
|
|
4770
|
-
}
|
|
4771
|
-
hasNoSelection() {
|
|
4772
|
-
return !this.hasSelection();
|
|
4773
|
-
}
|
|
4774
|
-
/**
|
|
4775
|
-
* Retrieves the merged row indices from the given range selection.
|
|
4776
|
-
*
|
|
4777
|
-
* @returns {number[]} Array of merged row indices
|
|
4778
|
-
*/
|
|
4779
|
-
getMergedRowIndices() {
|
|
4780
|
-
const e = /* @__PURE__ */ new Set();
|
|
4781
|
-
for (const t of this.ranges)
|
|
4782
|
-
for (let s = t.r1; s <= t.r2; s++)
|
|
4783
|
-
!e.has(s) && !this.isInNegativeRange(s, 0) && e.add(s);
|
|
4784
|
-
return Array.from(e);
|
|
4785
|
-
}
|
|
4786
|
-
selectAll() {
|
|
4787
|
-
this.allSelected = !0, this.fireChangeEvent();
|
|
4788
|
-
}
|
|
4789
|
-
isAllSelected() {
|
|
4790
|
-
return this.allSelected;
|
|
4791
|
-
}
|
|
4792
|
-
addSelection(e) {
|
|
4793
|
-
this.addRange(e), this.fireChangeEvent();
|
|
4794
|
-
}
|
|
4795
|
-
removeSelection(e) {
|
|
4796
|
-
if (this.selectionType === "none")
|
|
4797
|
-
return;
|
|
4798
|
-
let t = e;
|
|
4799
|
-
this.selectionType === "row" ? t = M.singleRow(e.r1) : this.selectionType === "column" && (t = M.singleColumn(e.c1)), this.negativeRanges.push(t), this.fireChangeEvent();
|
|
4800
|
-
}
|
|
4801
|
-
togglePoint(e, t) {
|
|
4802
|
-
this.getSelectionCount(e, t) > 0 ? this.removeSelection(M.singleCell(e, t)) : this.addSelection(M.singleCell(e, t));
|
|
4803
|
-
}
|
|
4804
|
-
isSelected(e, t) {
|
|
4805
|
-
return this.getSelectionCount(e, t) > 0;
|
|
4806
|
-
}
|
|
4807
|
-
addRange(e) {
|
|
4808
|
-
this.selectionType !== "none" && (this.allSelected = !1, this.selectionMode === "single" && (this.ranges = []), this.selectionType === "row" ? (e.c1 = 0, e.c2 = Number.MAX_SAFE_INTEGER) : this.selectionType === "column" ? (e.r1 = 0, e.r2 = Number.MAX_SAFE_INTEGER) : this.selectionType === "cell" ? (e.r2 = e.r1, e.c2 = e.c1) : this.selectionType, this.ranges.push(e), this.fireChangeEvent());
|
|
4809
|
-
}
|
|
4810
|
-
}
|
|
4811
|
-
class vt {
|
|
4812
|
-
constructor(e = "none") {
|
|
4813
|
-
this.selectionType = e, this.rowIndex = -1, this.columnIndex = -1, this.changed = !1, this.listenerArr = [];
|
|
4814
|
-
}
|
|
4815
|
-
getEventFocusChangedListeners() {
|
|
4816
|
-
return this.listenerArr;
|
|
4817
|
-
}
|
|
4818
|
-
addEventFocusChangedListener(e) {
|
|
4819
|
-
this.listenerArr.includes(e) || this.listenerArr.push(e);
|
|
4820
|
-
}
|
|
4821
|
-
removeEventFocusChangedListener(e) {
|
|
4822
|
-
const t = this.listenerArr.indexOf(e, 0);
|
|
4823
|
-
t > -1 && this.listenerArr.splice(t, 1);
|
|
4824
|
-
}
|
|
4825
|
-
//@AvoidDoubleExecution(100)
|
|
4826
|
-
fireChangeEvent() {
|
|
4827
|
-
this.listenerArr.forEach((e) => e.onFocusChanged(this));
|
|
4828
|
-
}
|
|
4829
|
-
clearChanged() {
|
|
4830
|
-
this.changed = !1;
|
|
4831
|
-
}
|
|
4832
|
-
hasChanged() {
|
|
4833
|
-
return this.changed;
|
|
4834
|
-
}
|
|
4835
|
-
clear() {
|
|
4836
|
-
this.rowIndex = -1, this.columnIndex = -1, this.fireChangeEvent();
|
|
4837
|
-
}
|
|
4838
|
-
setFocus(e, t) {
|
|
4839
|
-
(this.rowIndex !== e || this.columnIndex !== t) && (this.rowIndex = e, this.columnIndex = t, this.changed = !0, this.fireChangeEvent());
|
|
4840
|
-
}
|
|
4841
|
-
hasFocus(e, t) {
|
|
4842
|
-
return this.rowIndex === e && this.columnIndex === t;
|
|
4843
|
-
}
|
|
4844
|
-
getFocus() {
|
|
4845
|
-
return [this.rowIndex, this.columnIndex];
|
|
4846
|
-
}
|
|
4847
|
-
}
|
|
4848
|
-
class ve {
|
|
4905
|
+
class Re {
|
|
4849
4906
|
constructor(e = new O(
|
|
4850
4907
|
"❯",
|
|
4851
4908
|
"",
|
|
@@ -4859,14 +4916,13 @@ class ve {
|
|
|
4859
4916
|
}
|
|
4860
4917
|
// `⊖ `, `⊕ `;
|
|
4861
4918
|
}
|
|
4862
|
-
|
|
4863
|
-
class J {
|
|
4919
|
+
class q {
|
|
4864
4920
|
constructor() {
|
|
4865
4921
|
this.overflowX = "auto", this.overflowY = "auto", this.horizontalBorderVisible = !0, this.verticalBorderVisible = !0, this.footerSeparatorBorderVisible = !0, this.headerSeparatorBorderVisible = !0, this.fixedEastSeparatorBorderVisible = !0, this.fixedWestSeparatorBorderVisible = !0, this.tableTopBorderVisible = !0, this.tableBottomBorderVisible = !0, this.hoverRowVisible = !0, this.hoverColumnVisible = !0, this.columnsResizable = !0, this.columnsDraggable = !0, this.columnResizeHandleWidthInPx = 4, this.defaultRowHeights = {
|
|
4866
4922
|
header: 34,
|
|
4867
4923
|
body: 34,
|
|
4868
4924
|
footer: 34
|
|
4869
|
-
}, this.footerVerticalSeparator = !1, this.headerToggleExpandCollapseIcons = !1, this.headerVerticalSeparator = !1, this.treeOptions = new
|
|
4925
|
+
}, this.footerVerticalSeparator = !1, this.headerToggleExpandCollapseIcons = !1, this.headerVerticalSeparator = !1, this.treeOptions = new Ne(), this.headerGroupOptions = new Re(), this.showCheckboxWihoutExtraColumn = !1, this.externalFilterFunction = void 0, this.sortedOptions = new Ge(), this.sortOrder = ["asc", "desc"], this.shortcutActionsDisabled = !1, this.resizeEventDebounceDelay = 500, this.getEditRenderer = (e, t) => new Rt(), this.getSelectionModel = void 0, this.getFocusModel = void 0;
|
|
4870
4926
|
}
|
|
4871
4927
|
}
|
|
4872
4928
|
const z = class z {
|
|
@@ -4886,22 +4942,22 @@ const z = class z {
|
|
|
4886
4942
|
const l = this.mergeRanges(t.getRanges());
|
|
4887
4943
|
if (l) {
|
|
4888
4944
|
l.c2 = Math.min(l.c2, e.getColumnCount() - 1), l.r2 = Math.min(l.r2, e.getBodyModel().getRowCount() - 1);
|
|
4889
|
-
const
|
|
4890
|
-
for (let
|
|
4891
|
-
const
|
|
4945
|
+
const c = [];
|
|
4946
|
+
for (let a = l.r1; a <= l.r2; a++) {
|
|
4947
|
+
const d = [];
|
|
4892
4948
|
for (let u = l.c1; u <= l.c2; u++) {
|
|
4893
4949
|
if (((n = (r = e.getColumnDef(u)) == null ? void 0 : r.isVisible) == null ? void 0 : n.call(r)) === !1) continue;
|
|
4894
|
-
const
|
|
4895
|
-
|
|
4950
|
+
const p = t.isSelected(a, u) ? e.getBodyModel().getTextValueAt(a, u) : "";
|
|
4951
|
+
d.push(p);
|
|
4896
4952
|
}
|
|
4897
|
-
|
|
4953
|
+
c.push(d.join(z.columnSeparatorChar));
|
|
4898
4954
|
}
|
|
4899
|
-
return o(
|
|
4955
|
+
return o(c.join(z.rowSeparatorChar));
|
|
4900
4956
|
}
|
|
4901
4957
|
}
|
|
4902
4958
|
if (s) {
|
|
4903
|
-
const [l,
|
|
4904
|
-
return o(
|
|
4959
|
+
const [l, c] = s.getFocus(), a = e.getBodyModel().getTextValueAt(l, c);
|
|
4960
|
+
return o(a);
|
|
4905
4961
|
}
|
|
4906
4962
|
i("Cannot copy, neither selection nor focus defined.");
|
|
4907
4963
|
});
|
|
@@ -4955,10 +5011,10 @@ const z = class z {
|
|
|
4955
5011
|
};
|
|
4956
5012
|
z.columnSeparatorChar = " ", z.rowSeparatorChar = `
|
|
4957
5013
|
`;
|
|
4958
|
-
let
|
|
4959
|
-
class
|
|
5014
|
+
let se = z;
|
|
5015
|
+
class At {
|
|
4960
5016
|
constructor(e, t = 500) {
|
|
4961
|
-
this.tableScope = e, this.debounceDelay = t, this.disconnected = !1, this.resizeObserver = new ResizeObserver(
|
|
5017
|
+
this.tableScope = e, this.debounceDelay = t, this.disconnected = !1, this.resizeObserver = new ResizeObserver(Ke(this.handleResize.bind(this), t)), this.resizeObserver.observe(this.tableScope.hostElement);
|
|
4962
5018
|
}
|
|
4963
5019
|
/**
|
|
4964
5020
|
* Stops observing the host element. Called by {@link TableScope.destroy}.
|
|
@@ -4973,23 +5029,33 @@ class Mt {
|
|
|
4973
5029
|
this.tableScope.recalcColumnWidths(s);
|
|
4974
5030
|
}
|
|
4975
5031
|
}
|
|
4976
|
-
let
|
|
4977
|
-
function
|
|
4978
|
-
if (!
|
|
4979
|
-
|
|
5032
|
+
let Z;
|
|
5033
|
+
function Te(h) {
|
|
5034
|
+
if (!Z) {
|
|
5035
|
+
Z = new Uint32Array(256);
|
|
4980
5036
|
for (let t = 0; t < 256; t++) {
|
|
4981
5037
|
let s = t;
|
|
4982
5038
|
for (let o = 0; o < 8; o++)
|
|
4983
5039
|
s = s & 1 ? 3988292384 ^ s >>> 1 : s >>> 1;
|
|
4984
|
-
|
|
5040
|
+
Z[t] = s >>> 0;
|
|
4985
5041
|
}
|
|
4986
5042
|
}
|
|
4987
5043
|
let e = 4294967295;
|
|
4988
|
-
for (let t = 0; t <
|
|
4989
|
-
e =
|
|
5044
|
+
for (let t = 0; t < h.length; t++)
|
|
5045
|
+
e = Z[(e ^ h[t]) & 255] ^ e >>> 8;
|
|
4990
5046
|
return (e ^ 4294967295) >>> 0;
|
|
4991
5047
|
}
|
|
4992
|
-
|
|
5048
|
+
async function Mt(h) {
|
|
5049
|
+
const e = globalThis.CompressionStream;
|
|
5050
|
+
if (!(!e || typeof Response > "u" || typeof Blob > "u"))
|
|
5051
|
+
try {
|
|
5052
|
+
const t = new Blob([h]).stream().pipeThrough(new e("deflate-raw"));
|
|
5053
|
+
return new Uint8Array(await new Response(t).arrayBuffer());
|
|
5054
|
+
} catch {
|
|
5055
|
+
return;
|
|
5056
|
+
}
|
|
5057
|
+
}
|
|
5058
|
+
class It {
|
|
4993
5059
|
/**
|
|
4994
5060
|
* Downloads a matrix data as an Excel file.
|
|
4995
5061
|
*
|
|
@@ -5004,14 +5070,25 @@ class Tt {
|
|
|
5004
5070
|
throw new Error("Invalid matrix format. Expected a 2D array.");
|
|
5005
5071
|
if ((t == null ? void 0 : t.trim()) === "")
|
|
5006
5072
|
throw new Error("Invalid filename. Filename must be a non-empty string.");
|
|
5007
|
-
|
|
5008
|
-
const
|
|
5009
|
-
|
|
5010
|
-
|
|
5011
|
-
r.href = URL.createObjectURL(i), r.download = t, document.body.appendChild(r), r.click(), document.body.removeChild(r);
|
|
5012
|
-
} catch (o) {
|
|
5073
|
+
return this.createExcelBlob(e, s).then((o) => {
|
|
5074
|
+
const i = URL.createObjectURL(o), r = document.createElement("a");
|
|
5075
|
+
r.href = i, r.download = t, document.body.appendChild(r), r.click(), document.body.removeChild(r), setTimeout(() => URL.revokeObjectURL(i), 1e3);
|
|
5076
|
+
}).catch((o) => {
|
|
5013
5077
|
throw console.error("Error generating Excel file:", o), new Error("Failed to download Excel file.");
|
|
5014
|
-
}
|
|
5078
|
+
});
|
|
5079
|
+
}
|
|
5080
|
+
/**
|
|
5081
|
+
* Creates the .xlsx file as a Blob (compressed), e.g. to upload it instead of downloading it.
|
|
5082
|
+
*
|
|
5083
|
+
* @example
|
|
5084
|
+
* const blob = await new ExcelService().createExcelBlob([["Name", "City"], ["Ann", "Berlin"]]);
|
|
5085
|
+
* await fetch("/api/upload", { method: "POST", body: blob });
|
|
5086
|
+
*/
|
|
5087
|
+
async createExcelBlob(e, t = "") {
|
|
5088
|
+
const s = await this.createZipCompressed(this.generateMap(e, t));
|
|
5089
|
+
return new Blob([s], {
|
|
5090
|
+
type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
|
|
5091
|
+
});
|
|
5015
5092
|
}
|
|
5016
5093
|
generateMap(e, t = "") {
|
|
5017
5094
|
const s = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
@@ -5020,11 +5097,11 @@ class Tt {
|
|
|
5020
5097
|
<cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dcmitype="http://purl.org/dc/dcmitype/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><dc:creator>${t}</dc:creator><cp:lastModifiedBy>${t}</cp:lastModifiedBy><dcterms:created xsi:type="dcterms:W3CDTF">2024-12-13T19:45:08Z</dcterms:created><dcterms:modified xsi:type="dcterms:W3CDTF">2024-12-13T19:45:35Z</dcterms:modified></cp:coreProperties>`, r = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
5021
5098
|
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="theme/theme1.xml"/><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet1.xml"/><Relationship Id="rId4" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings" Target="sharedStrings.xml"/></Relationships>`, n = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
5022
5099
|
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"><a:themeElements><a:clrScheme name="Office"><a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1><a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1><a:dk2><a:srgbClr val="0E2841"/></a:dk2><a:lt2><a:srgbClr val="E8E8E8"/></a:lt2><a:accent1><a:srgbClr val="156082"/></a:accent1><a:accent2><a:srgbClr val="E97132"/></a:accent2><a:accent3><a:srgbClr val="196B24"/></a:accent3><a:accent4><a:srgbClr val="0F9ED5"/></a:accent4><a:accent5><a:srgbClr val="A02B93"/></a:accent5><a:accent6><a:srgbClr val="4EA72E"/></a:accent6><a:hlink><a:srgbClr val="467886"/></a:hlink><a:folHlink><a:srgbClr val="96607D"/></a:folHlink></a:clrScheme><a:fontScheme name="Office"><a:majorFont><a:latin typeface="Aptos Display" panose="02110004020202020204"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="游ゴシック Light"/><a:font script="Hang" typeface="맑은 고딕"/><a:font script="Hans" typeface="等线 Light"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Times New Roman"/><a:font script="Hebr" typeface="Times New Roman"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="MoolBoran"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Times New Roman"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/><a:font script="Armn" typeface="Arial"/><a:font script="Bugi" typeface="Leelawadee UI"/><a:font script="Bopo" typeface="Microsoft JhengHei"/><a:font script="Java" typeface="Javanese Text"/><a:font script="Lisu" typeface="Segoe UI"/><a:font script="Mymr" typeface="Myanmar Text"/><a:font script="Nkoo" typeface="Ebrima"/><a:font script="Olck" typeface="Nirmala UI"/><a:font script="Osma" typeface="Ebrima"/><a:font script="Phag" typeface="Phagspa"/><a:font script="Syrn" typeface="Estrangelo Edessa"/><a:font script="Syrj" typeface="Estrangelo Edessa"/><a:font script="Syre" typeface="Estrangelo Edessa"/><a:font script="Sora" typeface="Nirmala UI"/><a:font script="Tale" typeface="Microsoft Tai Le"/><a:font script="Talu" typeface="Microsoft New Tai Lue"/><a:font script="Tfng" typeface="Ebrima"/></a:majorFont><a:minorFont><a:latin typeface="Aptos Narrow" panose="02110004020202020204"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="游ゴシック"/><a:font script="Hang" typeface="맑은 고딕"/><a:font script="Hans" typeface="等线"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Arial"/><a:font script="Hebr" typeface="Arial"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="DaunPenh"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Arial"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/><a:font script="Armn" typeface="Arial"/><a:font script="Bugi" typeface="Leelawadee UI"/><a:font script="Bopo" typeface="Microsoft JhengHei"/><a:font script="Java" typeface="Javanese Text"/><a:font script="Lisu" typeface="Segoe UI"/><a:font script="Mymr" typeface="Myanmar Text"/><a:font script="Nkoo" typeface="Ebrima"/><a:font script="Olck" typeface="Nirmala UI"/><a:font script="Osma" typeface="Ebrima"/><a:font script="Phag" typeface="Phagspa"/><a:font script="Syrn" typeface="Estrangelo Edessa"/><a:font script="Syrj" typeface="Estrangelo Edessa"/><a:font script="Syre" typeface="Estrangelo Edessa"/><a:font script="Sora" typeface="Nirmala UI"/><a:font script="Tale" typeface="Microsoft Tai Le"/><a:font script="Talu" typeface="Microsoft New Tai Lue"/><a:font script="Tfng" typeface="Ebrima"/></a:minorFont></a:fontScheme><a:fmtScheme name="Office"><a:fillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:lumMod val="110000"/><a:satMod val="105000"/><a:tint val="67000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:lumMod val="105000"/><a:satMod val="103000"/><a:tint val="73000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:lumMod val="105000"/><a:satMod val="109000"/><a:tint val="81000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:satMod val="103000"/><a:lumMod val="102000"/><a:tint val="94000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:satMod val="110000"/><a:lumMod val="100000"/><a:shade val="100000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:lumMod val="99000"/><a:satMod val="120000"/><a:shade val="78000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w="12700" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln><a:ln w="19050" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln><a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="57150" dist="19050" dir="5400000" algn="ctr" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="63000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:solidFill><a:schemeClr val="phClr"><a:tint val="95000"/><a:satMod val="170000"/></a:schemeClr></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="93000"/><a:satMod val="150000"/><a:shade val="98000"/><a:lumMod val="102000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:tint val="98000"/><a:satMod val="130000"/><a:shade val="90000"/><a:lumMod val="103000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="63000"/><a:satMod val="120000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults><a:lnDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style></a:lnDef></a:objectDefaults><a:extraClrSchemeLst/><a:extLst><a:ext uri="{05A4C25C-085E-4340-85A3-A5531E510DB2}"><thm15:themeFamily xmlns:thm15="http://schemas.microsoft.com/office/thememl/2012/main" name="Office Theme" id="{2E142A2C-CD16-42D6-873A-C26D2A0506FA}" vid="{1BDDFF52-6CD6-40A5-AB3C-68EB2F1E4D0A}"/></a:ext></a:extLst></a:theme>`, l = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
5023
|
-
<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="3" uniqueCount="3"><si><t>a</t></si><si><t>b</t></si><si><t>c</t></si></sst>`,
|
|
5024
|
-
<styleSheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac x16r2 xr" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac" xmlns:x16r2="http://schemas.microsoft.com/office/spreadsheetml/2015/02/main" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision"><fonts count="1" x14ac:knownFonts="1"><font><sz val="12"/><color theme="1"/><name val="Aptos Narrow"/><family val="2"/><scheme val="minor"/></font></fonts><fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills><borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders><cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs><cellXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0" xfId="0"/></cellXfs><cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles><dxfs count="0"/><tableStyles count="0" defaultTableStyle="TableStyleMedium2" defaultPivotStyle="PivotStyleLight16"/><extLst><ext uri="{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}" xmlns:x14="http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"><x14:slicerStyles defaultSlicerStyle="SlicerStyleLight1"/></ext><ext uri="{9260A510-F301-46a8-8635-F512D64BE5F5}" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"><x15:timelineStyles defaultTimelineStyle="TimeSlicerStyleLight1"/></ext></extLst></styleSheet>`,
|
|
5025
|
-
<workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x15 xr xr6 xr10 xr2" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr6="http://schemas.microsoft.com/office/spreadsheetml/2016/revision6" xmlns:xr10="http://schemas.microsoft.com/office/spreadsheetml/2016/revision10" xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2"><fileVersion appName="xl" lastEdited="7" lowestEdited="7" rupBuild="11207"/><workbookPr defaultThemeVersion="202300"/><mc:AlternateContent xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"><mc:Choice Requires="x15"><x15ac:absPath url="/" xmlns:x15ac="http://schemas.microsoft.com/office/spreadsheetml/2010/11/ac"/></mc:Choice></mc:AlternateContent><xr:revisionPtr revIDLastSave="0" documentId="8_{292BF245-1F37-B045-B1A5-26C42FB62779}" xr6:coauthVersionLast="47" xr6:coauthVersionMax="47" xr10:uidLastSave="{00000000-0000-0000-0000-000000000000}"/><bookViews><workbookView xWindow="11340" yWindow="5060" windowWidth="28040" windowHeight="17440" xr2:uid="{858B8D3F-6246-774D-8903-6D38687B7BC6}"/></bookViews><sheets><sheet name="Sheet1" sheetId="1" r:id="rId1"/></sheets><calcPr calcId="181029"/><extLst><ext uri="{140A7094-0E35-4892-8432-C4D2E57EDEB5}" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"><x15:workbookPr chartTrackingRefBase="1"/></ext><ext uri="{B58B0392-4F1F-4190-BB64-5DF3571DCE5F}" xmlns:xcalcf="http://schemas.microsoft.com/office/spreadsheetml/2018/calcfeatures"><xcalcf:calcFeatures><xcalcf:feature name="microsoft.com:RD"/><xcalcf:feature name="microsoft.com:Single"/><xcalcf:feature name="microsoft.com:FV"/><xcalcf:feature name="microsoft.com:CNMTM"/><xcalcf:feature name="microsoft.com:LET_WF"/><xcalcf:feature name="microsoft.com:LAMBDA_WF"/><xcalcf:feature name="microsoft.com:ARRAYTEXT_WF"/></xcalcf:calcFeatures></ext></extLst></workbook>`,
|
|
5100
|
+
<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="3" uniqueCount="3"><si><t>a</t></si><si><t>b</t></si><si><t>c</t></si></sst>`, c = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
5101
|
+
<styleSheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac x16r2 xr" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac" xmlns:x16r2="http://schemas.microsoft.com/office/spreadsheetml/2015/02/main" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision"><fonts count="1" x14ac:knownFonts="1"><font><sz val="12"/><color theme="1"/><name val="Aptos Narrow"/><family val="2"/><scheme val="minor"/></font></fonts><fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills><borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders><cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs><cellXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0" xfId="0"/></cellXfs><cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles><dxfs count="0"/><tableStyles count="0" defaultTableStyle="TableStyleMedium2" defaultPivotStyle="PivotStyleLight16"/><extLst><ext uri="{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}" xmlns:x14="http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"><x14:slicerStyles defaultSlicerStyle="SlicerStyleLight1"/></ext><ext uri="{9260A510-F301-46a8-8635-F512D64BE5F5}" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"><x15:timelineStyles defaultTimelineStyle="TimeSlicerStyleLight1"/></ext></extLst></styleSheet>`, a = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
5102
|
+
<workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x15 xr xr6 xr10 xr2" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr6="http://schemas.microsoft.com/office/spreadsheetml/2016/revision6" xmlns:xr10="http://schemas.microsoft.com/office/spreadsheetml/2016/revision10" xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2"><fileVersion appName="xl" lastEdited="7" lowestEdited="7" rupBuild="11207"/><workbookPr defaultThemeVersion="202300"/><mc:AlternateContent xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"><mc:Choice Requires="x15"><x15ac:absPath url="/" xmlns:x15ac="http://schemas.microsoft.com/office/spreadsheetml/2010/11/ac"/></mc:Choice></mc:AlternateContent><xr:revisionPtr revIDLastSave="0" documentId="8_{292BF245-1F37-B045-B1A5-26C42FB62779}" xr6:coauthVersionLast="47" xr6:coauthVersionMax="47" xr10:uidLastSave="{00000000-0000-0000-0000-000000000000}"/><bookViews><workbookView xWindow="11340" yWindow="5060" windowWidth="28040" windowHeight="17440" xr2:uid="{858B8D3F-6246-774D-8903-6D38687B7BC6}"/></bookViews><sheets><sheet name="Sheet1" sheetId="1" r:id="rId1"/></sheets><calcPr calcId="181029"/><extLst><ext uri="{140A7094-0E35-4892-8432-C4D2E57EDEB5}" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"><x15:workbookPr chartTrackingRefBase="1"/></ext><ext uri="{B58B0392-4F1F-4190-BB64-5DF3571DCE5F}" xmlns:xcalcf="http://schemas.microsoft.com/office/spreadsheetml/2018/calcfeatures"><xcalcf:calcFeatures><xcalcf:feature name="microsoft.com:RD"/><xcalcf:feature name="microsoft.com:Single"/><xcalcf:feature name="microsoft.com:FV"/><xcalcf:feature name="microsoft.com:CNMTM"/><xcalcf:feature name="microsoft.com:LET_WF"/><xcalcf:feature name="microsoft.com:LAMBDA_WF"/><xcalcf:feature name="microsoft.com:ARRAYTEXT_WF"/></xcalcf:calcFeatures></ext></extLst></workbook>`, d = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
5026
5103
|
<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/><Override PartName="/xl/worksheets/sheet1.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/><Override PartName="/xl/theme/theme1.xml" ContentType="application/vnd.openxmlformats-officedocument.theme+xml"/><Override PartName="/xl/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"/><Override PartName="/xl/sharedStrings.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml"/><Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/><Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/></Types>`, u = /* @__PURE__ */ new Map();
|
|
5027
|
-
return u.set("_rels/.rels", s), u.set("docProps/app.xml", o), u.set("docProps/core.xml", i), u.set("xl/_rels/workbook.xml.rels", r), u.set("xl/theme/theme1.xml", n), u.set("xl/worksheets/sheet1.xml", this.getX1WorksheetsSheet1Xml(e)), u.set("xl/sharedStrings.xml", l), u.set("xl/styles.xml",
|
|
5104
|
+
return u.set("_rels/.rels", s), u.set("docProps/app.xml", o), u.set("docProps/core.xml", i), u.set("xl/_rels/workbook.xml.rels", r), u.set("xl/theme/theme1.xml", n), u.set("xl/worksheets/sheet1.xml", this.getX1WorksheetsSheet1Xml(e)), u.set("xl/sharedStrings.xml", l), u.set("xl/styles.xml", c), u.set("xl/workbook.xml", a), u.set("[Content_Types].xml", d), u;
|
|
5028
5105
|
}
|
|
5029
5106
|
getX1WorksheetsSheet1Xml(e) {
|
|
5030
5107
|
const t = e.reduce((i, r) => Math.max(i, r.length), 1), s = e.length ? `A1:${this.getCellAddress(e.length - 1, t - 1)}` : "A1", o = [];
|
|
@@ -5039,15 +5116,15 @@ class Tt {
|
|
|
5039
5116
|
const r = e[i];
|
|
5040
5117
|
o.push(`<row r="${i + 1}" spans="1:${t}" x14ac:dyDescent="0.2">`);
|
|
5041
5118
|
for (let n = 0; n < r.length; n++) {
|
|
5042
|
-
const l = r[n],
|
|
5119
|
+
const l = r[n], c = this.getCellAddress(i, n);
|
|
5043
5120
|
if (typeof l == "number")
|
|
5044
|
-
o.push(`<c r="${
|
|
5121
|
+
o.push(`<c r="${c}"><v>${l}</v></c>`);
|
|
5045
5122
|
else if (l instanceof Date) {
|
|
5046
|
-
const
|
|
5047
|
-
o.push(`<c r="${
|
|
5123
|
+
const a = l;
|
|
5124
|
+
o.push(`<c r="${c}" t="inlineStr"><is><t>${a.toISOString()}</t></is></c>`);
|
|
5048
5125
|
} else {
|
|
5049
|
-
const
|
|
5050
|
-
o.push(`<c r="${
|
|
5126
|
+
const a = l != null ? this.escapeXml(String(l)) : "";
|
|
5127
|
+
o.push(`<c r="${c}" t="inlineStr"><is><t>${a}</t></is></c>`);
|
|
5051
5128
|
}
|
|
5052
5129
|
}
|
|
5053
5130
|
o.push("</row>");
|
|
@@ -5065,49 +5142,69 @@ class Tt {
|
|
|
5065
5142
|
o = s[t % 26] + o, t = Math.floor(t / 26) - 1;
|
|
5066
5143
|
return `${o}${e + 1}`;
|
|
5067
5144
|
}
|
|
5145
|
+
/**
|
|
5146
|
+
* ZIP without compression (method 0, synchronous). Kept for compatibility –
|
|
5147
|
+
* downloads use {@link createZipCompressed}.
|
|
5148
|
+
*/
|
|
5068
5149
|
createZip(e) {
|
|
5069
5150
|
const t = [];
|
|
5070
|
-
|
|
5071
|
-
|
|
5072
|
-
|
|
5073
|
-
|
|
5074
|
-
|
|
5075
|
-
|
|
5076
|
-
|
|
5077
|
-
|
|
5078
|
-
|
|
5079
|
-
|
|
5080
|
-
|
|
5081
|
-
const
|
|
5082
|
-
|
|
5083
|
-
|
|
5084
|
-
|
|
5151
|
+
return e.forEach((s, o) => {
|
|
5152
|
+
const i = new TextEncoder().encode(s);
|
|
5153
|
+
t.push({ path: new TextEncoder().encode(o), data: i, size: i.length, crc: Te(i), method: 0 });
|
|
5154
|
+
}), this.assembleZip(t);
|
|
5155
|
+
}
|
|
5156
|
+
/**
|
|
5157
|
+
* ZIP with DEFLATE (method 8) via the browser's CompressionStream; falls back to stored entries
|
|
5158
|
+
* where that is not available. 100,000 rows × 7 columns: ~40 MB stored → a few MB compressed.
|
|
5159
|
+
*/
|
|
5160
|
+
async createZipCompressed(e) {
|
|
5161
|
+
const t = [];
|
|
5162
|
+
for (const [s, o] of Array.from(e.entries())) {
|
|
5163
|
+
const i = new TextEncoder().encode(o), r = await Mt(i), n = !!r && r.length < i.length;
|
|
5164
|
+
t.push({
|
|
5165
|
+
path: new TextEncoder().encode(s),
|
|
5166
|
+
data: n ? r : i,
|
|
5167
|
+
size: i.length,
|
|
5168
|
+
crc: Te(i),
|
|
5169
|
+
// CRC of the UNcompressed data
|
|
5170
|
+
method: n ? 8 : 0
|
|
5171
|
+
});
|
|
5172
|
+
}
|
|
5173
|
+
return this.assembleZip(t);
|
|
5174
|
+
}
|
|
5175
|
+
assembleZip(e) {
|
|
5176
|
+
const t = [], s = [];
|
|
5177
|
+
let o = 0;
|
|
5178
|
+
for (const a of e) {
|
|
5179
|
+
const d = new Uint8Array(30 + a.path.length), u = new DataView(d.buffer);
|
|
5180
|
+
d.set([80, 75, 3, 4], 0), u.setUint16(4, 20, !0), u.setUint16(6, 0, !0), u.setUint16(8, a.method, !0), u.setUint16(10, 0, !0), u.setUint16(12, 33, !0), u.setUint32(14, a.crc, !0), u.setUint32(18, a.data.length, !0), u.setUint32(22, a.size, !0), u.setUint16(26, a.path.length, !0), u.setUint16(28, 0, !0), d.set(a.path, 30), t.push(d, a.data), s.push(o), o += d.length + a.data.length;
|
|
5181
|
+
}
|
|
5182
|
+
const i = o;
|
|
5183
|
+
e.forEach((a, d) => {
|
|
5184
|
+
const u = new Uint8Array(46 + a.path.length), p = new DataView(u.buffer);
|
|
5185
|
+
u.set([80, 75, 1, 2], 0), p.setUint16(4, 20, !0), p.setUint16(6, 20, !0), p.setUint16(8, 0, !0), p.setUint16(10, a.method, !0), p.setUint16(12, 0, !0), p.setUint16(14, 33, !0), p.setUint32(16, a.crc, !0), p.setUint32(20, a.data.length, !0), p.setUint32(24, a.size, !0), p.setUint16(28, a.path.length, !0), p.setUint16(30, 0, !0), p.setUint16(32, 0, !0), p.setUint16(34, 0, !0), p.setUint16(36, 0, !0), p.setUint32(38, 0, !0), p.setUint32(42, s[d], !0), u.set(a.path, 46), t.push(u), o += u.length;
|
|
5085
5186
|
});
|
|
5086
5187
|
const r = new Uint8Array(22), n = new DataView(r.buffer);
|
|
5087
|
-
r.set([80, 75, 5, 6], 0), n.setUint16(
|
|
5088
|
-
const l = t.reduce((
|
|
5188
|
+
r.set([80, 75, 5, 6], 0), n.setUint16(8, e.length, !0), n.setUint16(10, e.length, !0), n.setUint32(12, o - i, !0), n.setUint32(16, i, !0), t.push(r);
|
|
5189
|
+
const l = new Uint8Array(t.reduce((a, d) => a + d.length, 0));
|
|
5089
5190
|
let c = 0;
|
|
5090
|
-
for (const
|
|
5091
|
-
|
|
5092
|
-
return
|
|
5093
|
-
}
|
|
5094
|
-
generateBuffer(e, t = "") {
|
|
5095
|
-
const s = this.generateMap(e, t);
|
|
5096
|
-
return this.createZip(s);
|
|
5191
|
+
for (const a of t)
|
|
5192
|
+
l.set(a, c), c += a.length;
|
|
5193
|
+
return l;
|
|
5097
5194
|
}
|
|
5098
5195
|
}
|
|
5099
|
-
class
|
|
5100
|
-
constructor(e, t, s, o, i, r = new
|
|
5101
|
-
var
|
|
5102
|
-
if (super(e, t, new
|
|
5103
|
-
const
|
|
5104
|
-
u && (
|
|
5196
|
+
class ze extends gt {
|
|
5197
|
+
constructor(e, t, s, o, i, r = new se(), n = new It()) {
|
|
5198
|
+
var a;
|
|
5199
|
+
if (super(e, t, new it(s), o), this.eventListener = i, this.copyService = r, this.excelService = n, this.licenseManager = G.getInstance(), this.listenerAbortController = new AbortController(), this.destroyed = !1, this.selectionService = new yt(this), this.api = new lt(this), this.mouseStartAction = "", this.mouseStartWidth = -1, this.mouseStartColumnIndex = -1, this.dragFrom = -1, this.dragTo = -1, this.lastDragFrom = -1, this.lastDragTo = -1, this.firstDraggingRendering = !0, this.lastContextmenu = Date.now(), t.setTableScope(this), i || (this.eventListener = new pe()), (a = this.tableOptions) != null && a.autoRestoreOptions) {
|
|
5200
|
+
const d = this.tableOptions.autoRestoreOptions, u = d.getStorageKeyFn;
|
|
5201
|
+
u && (d.autoRestoreScrollPosition && (this.storeScrollPosStateService = new at(u)), d.autoRestoreCollapsedExpandedState && (this.storeStateCollapsedExpandService = new dt(u)), d.autoRestoreSortingState && (this.storeSortingService = new ht(u)));
|
|
5105
5202
|
}
|
|
5106
|
-
this.mouseHandler = new
|
|
5203
|
+
this.mouseHandler = new nt(this), this.inputHandler = new ft(this), this.resizeHandler = new At(this, o.resizeEventDebounceDelay), this.shortcutService = new Ct(this), this.shortcutService.addListener(this.selectionService);
|
|
5107
5204
|
const l = this.getSelectionModel ? this.getSelectionModel() : void 0;
|
|
5108
5205
|
l && l.addEventSelectionChangedListener(this);
|
|
5109
|
-
const
|
|
5110
|
-
|
|
5206
|
+
const c = this.getFocusModel ? this.getFocusModel() : void 0;
|
|
5207
|
+
c && c.addEventFocusChangedListener(this);
|
|
5111
5208
|
}
|
|
5112
5209
|
/**
|
|
5113
5210
|
* Creates a TableScope instance.
|
|
@@ -5121,8 +5218,8 @@ class Ge extends ut {
|
|
|
5121
5218
|
*
|
|
5122
5219
|
* @return {TableScope} - The newly created TableScope instance.
|
|
5123
5220
|
*/
|
|
5124
|
-
static create(e, t, s = new
|
|
5125
|
-
return new
|
|
5221
|
+
static create(e, t, s = new q(), o = new pe(), i = new vt(), r = new se()) {
|
|
5222
|
+
return new ze(e, t, i, s, o, r);
|
|
5126
5223
|
}
|
|
5127
5224
|
/**
|
|
5128
5225
|
* Triggers an action based on the provided actionId.
|
|
@@ -5151,7 +5248,7 @@ class Ge extends ut {
|
|
|
5151
5248
|
}
|
|
5152
5249
|
updateModelValueAfterEdit(e, t, s, o) {
|
|
5153
5250
|
var i, r;
|
|
5154
|
-
e === "body" && this.tableModel.getAreaModel(e).setValue(t, s, o) && (this.resetEditorRenderer(), this.repaint(), (r = (i = this.eventListener).onModelChanged) == null || r.call(i,
|
|
5251
|
+
e === "body" && this.tableModel.getAreaModel(e).setValue(t, s, o) && (this.resetEditorRenderer(), this.repaint(), (r = (i = this.eventListener).onModelChanged) == null || r.call(i, ve.createSingle(t, s)), this.hostElement.focus());
|
|
5155
5252
|
}
|
|
5156
5253
|
/**
|
|
5157
5254
|
* Retrieves the TableApi object.
|
|
@@ -5211,7 +5308,7 @@ class Ge extends ut {
|
|
|
5211
5308
|
* @return {GeMouseEvent} - The created GeMouseEvent object.
|
|
5212
5309
|
*/
|
|
5213
5310
|
createGeMouseEvent(e) {
|
|
5214
|
-
const t = new
|
|
5311
|
+
const t = new ye();
|
|
5215
5312
|
if (t.originalEvent = e, e) {
|
|
5216
5313
|
const s = e.target;
|
|
5217
5314
|
if ([t.areaIdent, t.sideIdent] = this.getAreaAndSideIdentByAttr(s), t.rowIndex = this.getNumberByAttr(s, "data-row-index"), t.columnIndex = this.getNumberByAttr(s, "data-col-index"), t.action = this.getStringByAttr(s, "data-ge-action"), t.areaIdent) {
|
|
@@ -5290,7 +5387,7 @@ class Ge extends ut {
|
|
|
5290
5387
|
toggleExpandCollapseAll(e = !0) {
|
|
5291
5388
|
var s;
|
|
5292
5389
|
const t = this.tableModel.getBodyModel();
|
|
5293
|
-
|
|
5390
|
+
ue(t) && (t.toggleExpandCollapseAll(e), this.repaint(), (s = this.storeStateCollapsedExpandService) == null || s.collapsedStateAll(e));
|
|
5294
5391
|
}
|
|
5295
5392
|
/**
|
|
5296
5393
|
* Toggles the checkbox state of a specific row in a table.
|
|
@@ -5302,11 +5399,11 @@ class Ge extends ut {
|
|
|
5302
5399
|
* @return {void} - This method does not return anything.
|
|
5303
5400
|
*/
|
|
5304
5401
|
toggleRowCheckbox(e, t, s) {
|
|
5305
|
-
var l,
|
|
5402
|
+
var l, c, a;
|
|
5306
5403
|
const o = this.tableModel.getAreaModel(s), i = o.isRowChecked(e), r = i === void 0 || i === "semi" || i === "none";
|
|
5307
5404
|
o.setRowChecked(e, r), this.repaint();
|
|
5308
5405
|
const n = (l = o.rowSelectionModel) == null ? void 0 : l.getCheckedRows();
|
|
5309
|
-
(
|
|
5406
|
+
(a = (c = this.eventListener).onCheckboxChanged) == null || a.call(c, n || []);
|
|
5310
5407
|
}
|
|
5311
5408
|
/**
|
|
5312
5409
|
* Handle mouse click events.
|
|
@@ -5359,13 +5456,25 @@ class Ge extends ut {
|
|
|
5359
5456
|
* @return {void}
|
|
5360
5457
|
*/
|
|
5361
5458
|
onHeaderDblClicked(e, t, s) {
|
|
5362
|
-
var i, r;
|
|
5363
5459
|
const o = this.tableModel.getColumnDef(s);
|
|
5364
|
-
|
|
5365
|
-
|
|
5366
|
-
|
|
5367
|
-
|
|
5368
|
-
|
|
5460
|
+
o != null && o.sortable && o.sortable() && (e.preventDefault(), e.stopPropagation(), this.sortByColumn(s));
|
|
5461
|
+
}
|
|
5462
|
+
/**
|
|
5463
|
+
* Sorts the body by one column – the same as a double click on its header (header icon, filter and
|
|
5464
|
+
* auto-restore included). Without `sortState` the next state of the column's sort order is used
|
|
5465
|
+
* (asc → desc → asc …).
|
|
5466
|
+
*
|
|
5467
|
+
* @param {number | string} column - column index or property, e.g. 10 or "total"
|
|
5468
|
+
* @param {SortState} [sortState] - "asc", "desc" or "" (unsorted icon, rows keep their current order)
|
|
5469
|
+
* @returns {boolean} false if the column does not exist
|
|
5470
|
+
*/
|
|
5471
|
+
sortByColumn(e, t) {
|
|
5472
|
+
var a, d;
|
|
5473
|
+
const s = typeof e == "number" ? e : (this.tableModel.getColumnDefs() ?? []).findIndex((u) => u.property === e), o = this.tableModel.getColumnDef(s);
|
|
5474
|
+
if (!o)
|
|
5475
|
+
return !1;
|
|
5476
|
+
const i = o.sortStatesOrder ? o.sortStatesOrder : this.tableOptions.sortOrder, r = o.sortState ?? "", n = t ?? i[(i.indexOf(r) + 1) % i.length], l = new Ie(s, n);
|
|
5477
|
+
return this.tableModel.doSort([l]) && (this.lastSortCompareFn = void 0, (a = this.tableModel.getColumnDefs()) == null || a.forEach((u) => u.sortState = ""), o.sortState = n), this.repaint(), (d = this.storeSortingService) == null || d.setSortItems([l]), !0;
|
|
5369
5478
|
}
|
|
5370
5479
|
/**
|
|
5371
5480
|
* Scrolls the viewport to the specified pixel coordinates.
|
|
@@ -5401,7 +5510,7 @@ class Ge extends ut {
|
|
|
5401
5510
|
var t, s;
|
|
5402
5511
|
super.adjustAfterScrolling();
|
|
5403
5512
|
const e = this.scrollViewport;
|
|
5404
|
-
(s = (t = this.eventListener).onScroll) == null || s.call(t, new
|
|
5513
|
+
(s = (t = this.eventListener).onScroll) == null || s.call(t, new bt(
|
|
5405
5514
|
this.scrollTop,
|
|
5406
5515
|
this.scrollLeft,
|
|
5407
5516
|
e.scrollHeight,
|
|
@@ -5517,7 +5626,14 @@ class Ge extends ut {
|
|
|
5517
5626
|
var e, t;
|
|
5518
5627
|
if ((t = (e = this.tableOptions) == null ? void 0 : e.autoRestoreOptions) != null && t.autoRestoreSortingState && this.storeSortingService) {
|
|
5519
5628
|
const s = this.storeSortingService.getSortItems();
|
|
5520
|
-
s != null && s.length
|
|
5629
|
+
if (s != null && s.length) {
|
|
5630
|
+
this.tableModel.getBodyModel().doSort(s);
|
|
5631
|
+
const i = this.tableModel.getColumnDefs();
|
|
5632
|
+
i && (i.forEach((r) => r.sortState = ""), s.forEach((r) => {
|
|
5633
|
+
const n = i[r.columnIndex];
|
|
5634
|
+
n && (n.sortState = r.sortState);
|
|
5635
|
+
}));
|
|
5636
|
+
}
|
|
5521
5637
|
}
|
|
5522
5638
|
}
|
|
5523
5639
|
/**
|
|
@@ -5527,28 +5643,23 @@ class Ge extends ut {
|
|
|
5527
5643
|
* @private
|
|
5528
5644
|
*/
|
|
5529
5645
|
autoRestoreCollapsedExpandedState() {
|
|
5530
|
-
var
|
|
5531
|
-
|
|
5532
|
-
|
|
5533
|
-
|
|
5534
|
-
|
|
5535
|
-
|
|
5536
|
-
|
|
5537
|
-
|
|
5538
|
-
|
|
5539
|
-
|
|
5540
|
-
|
|
5541
|
-
|
|
5542
|
-
|
|
5543
|
-
c.expanded = !1;
|
|
5544
|
-
else {
|
|
5545
|
-
const h = o(c.data);
|
|
5546
|
-
i.mode === "expanded" ? c.expanded = this.storeStateCollapsedExpandService.collapsedExpandedStateIncludes(h) : i.mode === "collapsed" && (c.expanded = !this.storeStateCollapsedExpandService.collapsedExpandedStateIncludes(h));
|
|
5547
|
-
}
|
|
5548
|
-
}
|
|
5549
|
-
n.recalcVisibleTreeRows();
|
|
5646
|
+
var i;
|
|
5647
|
+
const e = this.storeStateCollapsedExpandService, t = (i = this.tableOptions) == null ? void 0 : i.autoRestoreOptions, s = t == null ? void 0 : t.getRowId;
|
|
5648
|
+
if (!e || !s || !(t != null && t.autoRestoreCollapsedExpandedState) || !e.hasStoredState()) return;
|
|
5649
|
+
const o = this.tableModel.getAreaModel("body");
|
|
5650
|
+
if (ue(o)) {
|
|
5651
|
+
const r = o, n = e.collapsedExpandedStateGet(), l = (c) => c == null ? void 0 : c.forEach((a) => {
|
|
5652
|
+
if (n.allExpanded)
|
|
5653
|
+
a.expanded = !0;
|
|
5654
|
+
else if (n.allCollapsed)
|
|
5655
|
+
a.expanded = !1;
|
|
5656
|
+
else {
|
|
5657
|
+
const d = e.collapsedExpandedStateIncludes(s(a.data));
|
|
5658
|
+
a.expanded = n.mode === "expanded" ? d : !d;
|
|
5550
5659
|
}
|
|
5551
|
-
|
|
5660
|
+
l(a.children);
|
|
5661
|
+
});
|
|
5662
|
+
l(r.rows), r.recalcVisibleTreeRows();
|
|
5552
5663
|
}
|
|
5553
5664
|
}
|
|
5554
5665
|
/**
|
|
@@ -5566,32 +5677,31 @@ class Ge extends ut {
|
|
|
5566
5677
|
if (!e)
|
|
5567
5678
|
return console.warn("Body model is not available."), [];
|
|
5568
5679
|
const s = 30, o = Array.from({ length: t }, () => /* @__PURE__ */ new Set()), i = new Array(t).fill(0), r = (u) => {
|
|
5569
|
-
var m,
|
|
5570
|
-
const
|
|
5571
|
-
for (let
|
|
5680
|
+
var m, g;
|
|
5681
|
+
const p = this.tableModel.getAreaModel(u), f = (p == null ? void 0 : p.getRowCount()) ?? 0;
|
|
5682
|
+
for (let y = 0; y < f; y++)
|
|
5572
5683
|
for (let w = 0; w < t; w++) {
|
|
5573
|
-
const v = ((m =
|
|
5574
|
-
|
|
5575
|
-
|
|
5576
|
-
|
|
5577
|
-
}
|
|
5578
|
-
I >= i[w] - 2 && o[w].size < s && o[w].add(v);
|
|
5684
|
+
const v = ((m = p.getTextValueAt) == null ? void 0 : m.call(p, y, w)) || (((g = p.getValueAt(y, w)) == null ? void 0 : g.toString()) ?? ""), I = v.length;
|
|
5685
|
+
I > i[w] && (i[w] = I, o[w].forEach((x) => {
|
|
5686
|
+
x.length < I - 2 && o[w].delete(x);
|
|
5687
|
+
})), I >= i[w] - 2 && o[w].size < s && o[w].add(v);
|
|
5579
5688
|
}
|
|
5580
5689
|
};
|
|
5581
5690
|
r("header"), r("body"), r("footer");
|
|
5582
|
-
const n = this.hostElement.querySelector(".ge-table-label"), l = getComputedStyle(n ?? this.hostElement),
|
|
5583
|
-
let
|
|
5691
|
+
const n = this.hostElement.querySelector(".ge-table-label"), l = getComputedStyle(n ?? this.hostElement), c = n ? (parseFloat(l.paddingLeft) || 0) + (parseFloat(l.paddingRight) || 0) : 20;
|
|
5692
|
+
let a = null;
|
|
5584
5693
|
try {
|
|
5585
|
-
|
|
5694
|
+
a = document.createElement("canvas").getContext("2d");
|
|
5586
5695
|
} catch {
|
|
5587
|
-
|
|
5696
|
+
a = null;
|
|
5588
5697
|
}
|
|
5589
|
-
|
|
5590
|
-
const
|
|
5698
|
+
a && (a.font = l.font || `${l.fontSize} ${l.fontFamily}`);
|
|
5699
|
+
const d = (u) => a ? a.measureText(u).width : u.length * 8;
|
|
5591
5700
|
return o.map((u) => {
|
|
5592
|
-
let
|
|
5593
|
-
|
|
5594
|
-
|
|
5701
|
+
let p = 0;
|
|
5702
|
+
return u.forEach((f) => {
|
|
5703
|
+
p = Math.max(p, d(f));
|
|
5704
|
+
}), Math.max(Math.ceil(p + c + 2), 50);
|
|
5595
5705
|
});
|
|
5596
5706
|
}
|
|
5597
5707
|
setColumnWidth(e, t) {
|
|
@@ -5629,7 +5739,7 @@ class Ge extends ut {
|
|
|
5629
5739
|
}
|
|
5630
5740
|
const e = [];
|
|
5631
5741
|
(t = this.tableModel.getColumnDefs()) == null || t.forEach((s, o) => {
|
|
5632
|
-
s.sortState && e.push(new
|
|
5742
|
+
s.sortState && e.push(new Ie(o, s.sortState));
|
|
5633
5743
|
}), e.length && this.tableModel.doSort(e);
|
|
5634
5744
|
}
|
|
5635
5745
|
/**
|
|
@@ -5688,16 +5798,16 @@ class Ge extends ut {
|
|
|
5688
5798
|
return e < t ? (this.scrollToIndex(0, e), !0) : e > s ? (this.scrollToIndex(0, e - o + 1), !0) : !1;
|
|
5689
5799
|
}
|
|
5690
5800
|
}
|
|
5691
|
-
class
|
|
5801
|
+
class Jt extends pe {
|
|
5692
5802
|
constructor(e) {
|
|
5693
5803
|
super(), this.onCheckboxChangedCallback = e, super.onCheckboxChanged = (t) => {
|
|
5694
5804
|
this.onCheckboxChangedCallback(t);
|
|
5695
5805
|
};
|
|
5696
5806
|
}
|
|
5697
5807
|
}
|
|
5698
|
-
const
|
|
5808
|
+
const re = class re {
|
|
5699
5809
|
};
|
|
5700
|
-
|
|
5810
|
+
re.themes = ["light", "combat", "paper", "blackboard"], re.vars = {
|
|
5701
5811
|
light: `html[data-theme="light"] {
|
|
5702
5812
|
--ge-table-bg: rgba(255,255,255, 0.5);
|
|
5703
5813
|
--ge-table-header-west-bg: rgba(233, 233, 233, 0.5);
|
|
@@ -5931,52 +6041,62 @@ ie.themes = ["light", "combat", "paper", "blackboard"], ie.vars = {
|
|
|
5931
6041
|
--ge-table-drop-zone-bg: #758129;
|
|
5932
6042
|
}`
|
|
5933
6043
|
};
|
|
5934
|
-
let
|
|
5935
|
-
class
|
|
6044
|
+
let ke = re;
|
|
6045
|
+
class ce {
|
|
5936
6046
|
constructor(e, t = !0, s, o, i = 0, r = !1, n = !1) {
|
|
5937
6047
|
this.data = e, this.expanded = t, this.children = s, this.parent = o, this.deep = i, this.checked = r, this.keep = n, this.type = "TreeRow";
|
|
5938
6048
|
}
|
|
5939
6049
|
}
|
|
5940
|
-
class
|
|
5941
|
-
|
|
5942
|
-
|
|
5943
|
-
|
|
5944
|
-
|
|
5945
|
-
|
|
6050
|
+
class Y {
|
|
6051
|
+
/**
|
|
6052
|
+
* Builds tree rows (input for `TableFactory.createTableModel({ rows })`) from nested objects.
|
|
6053
|
+
*
|
|
6054
|
+
* @param data - the top-level objects
|
|
6055
|
+
* @param childrenPropertyOrOptions - name of the children property (default "children") or {@link TreeFactoryOptions}
|
|
6056
|
+
* @param deepMaxLimit - maximum depth (default 12; ignored when options are passed)
|
|
6057
|
+
* @param expanded - expanded state of the rows (default true; ignored when options are passed)
|
|
6058
|
+
*
|
|
6059
|
+
* @example
|
|
6060
|
+
* const rows = TreeFactory.buildTreeRows<OrderNode>(data, { childrenProperty: "children", expanded: false });
|
|
6061
|
+
*/
|
|
6062
|
+
static buildTreeRows(e, t = "children", s = 12, o = !0) {
|
|
6063
|
+
const i = typeof t == "string" ? { childrenProperty: t, deepMaxLimit: s, expanded: o } : t, r = i.childrenProperty ?? "children", n = i.deepMaxLimit ?? 12, l = Y.toExpandedFn(i.expanded ?? !0), c = [];
|
|
6064
|
+
for (const a of e) {
|
|
6065
|
+
const d = new ce(a, l(a, 0), [], void 0, 0);
|
|
6066
|
+
c.push(Y.buildTreeRow(a, r, d, 0, n, l));
|
|
6067
|
+
}
|
|
6068
|
+
return c;
|
|
5946
6069
|
}
|
|
5947
|
-
static buildTreeRow(e, t = "children", s = new
|
|
5948
|
-
var
|
|
6070
|
+
static buildTreeRow(e, t = "children", s = new ce(e, !0, [], void 0, 0), o = 0, i = 12, r = !0) {
|
|
6071
|
+
var c;
|
|
5949
6072
|
if (o > i)
|
|
5950
6073
|
return console.warn("Max deep limit reached: ", o), s;
|
|
5951
|
-
const r = e[t];
|
|
5952
|
-
if (
|
|
5953
|
-
for (const
|
|
5954
|
-
const
|
|
5955
|
-
|
|
5956
|
-
l,
|
|
5957
|
-
t,
|
|
5958
|
-
a,
|
|
5959
|
-
o + 1
|
|
5960
|
-
), o > i)
|
|
5961
|
-
return console.warn("Max deep limit reached: ", o), s;
|
|
6074
|
+
const n = Y.toExpandedFn(r), l = e[t];
|
|
6075
|
+
if (l)
|
|
6076
|
+
for (const a of l) {
|
|
6077
|
+
const d = new ce(a, n(a, o + 1), [], s, o + 1);
|
|
6078
|
+
(c = s.children) == null || c.push(d), Y.buildTreeRow(a, t, d, o + 1, i, n);
|
|
5962
6079
|
}
|
|
5963
6080
|
return s;
|
|
5964
6081
|
}
|
|
6082
|
+
static toExpandedFn(e) {
|
|
6083
|
+
return typeof e == "function" ? e : () => e;
|
|
6084
|
+
}
|
|
5965
6085
|
}
|
|
5966
|
-
class
|
|
6086
|
+
class K {
|
|
5967
6087
|
constructor(e = 34, t = 34, s = 34) {
|
|
5968
6088
|
this.header = e, this.body = t, this.footer = s;
|
|
5969
6089
|
}
|
|
5970
6090
|
}
|
|
5971
|
-
class
|
|
6091
|
+
class b {
|
|
5972
6092
|
constructor(e = 100, t = "px") {
|
|
5973
6093
|
this.value = e, this.unit = t;
|
|
5974
6094
|
}
|
|
5975
6095
|
}
|
|
5976
|
-
const Et = () => !0,
|
|
6096
|
+
const Et = () => !0, Tt = () => !1;
|
|
5977
6097
|
class W {
|
|
5978
|
-
constructor(e, t, s = new
|
|
5979
|
-
this.property = e, this.headerLabel = t, this.width = s, this.classes = o, this.rendererMap = i, this.minWidth = r, this.maxWidth = n, this.sortable = l, this.sortComparator =
|
|
6098
|
+
constructor(e, t, s = new b(100, "px"), o = new k(), i = new k(), r = new b(100, "px"), n = new b(100, "px"), l, c, a, d, u, p, f, m, g = () => this.visible) {
|
|
6099
|
+
this.property = e, this.headerLabel = t, this.width = s, this.classes = o, this.rendererMap = i, this.minWidth = r, this.maxWidth = n, this.sortable = l, this.sortComparator = c, this.sortState = a, this.sortStatesOrder = d, this.sortIconVisible = u, this.editable = p, this.getEditRenderer = f, this.editInputPipe = m, this.isVisible = g, this.visible = !0, s.unit !== "px" && (this.minWidth = new b(0, "px"), this.maxWidth = new b(1e5, "px"));
|
|
5980
6100
|
}
|
|
5981
6101
|
static bodyRenderer(e) {
|
|
5982
6102
|
return new k(
|
|
@@ -5994,15 +6114,15 @@ class W {
|
|
|
5994
6114
|
e.headerClasses,
|
|
5995
6115
|
e.bodyClasses,
|
|
5996
6116
|
e.footerClasses
|
|
5997
|
-
), o = e.sortIconVisible ?? e.sortable, i = e.editable ?? e.editable ??
|
|
6117
|
+
), o = e.sortIconVisible ?? e.sortable, i = e.editable ?? e.editable ?? Tt, r = e.isVisible ?? e.isVisible ?? Et;
|
|
5998
6118
|
return new W(
|
|
5999
6119
|
e.property ?? "",
|
|
6000
6120
|
e.headerLabel ?? "",
|
|
6001
|
-
e.width ?? new
|
|
6121
|
+
e.width ?? new b(100, "px"),
|
|
6002
6122
|
s,
|
|
6003
6123
|
t,
|
|
6004
|
-
e.minWidth ?? new
|
|
6005
|
-
e.maxWidth ?? new
|
|
6124
|
+
e.minWidth ?? new b(100, "px"),
|
|
6125
|
+
e.maxWidth ?? new b(100, "px"),
|
|
6006
6126
|
e.sortable,
|
|
6007
6127
|
e.sortComparator,
|
|
6008
6128
|
e.sortState,
|
|
@@ -6015,8 +6135,8 @@ class W {
|
|
|
6015
6135
|
);
|
|
6016
6136
|
}
|
|
6017
6137
|
}
|
|
6018
|
-
const
|
|
6019
|
-
class F extends
|
|
6138
|
+
const qt = new b(500, "px"), Zt = new b(400, "px"), kt = new b(300, "px"), Qt = new b(290, "px"), es = new b(280, "px"), ts = new b(270, "px"), ss = new b(260, "px"), os = new b(250, "px"), is = new b(240, "px"), rs = new b(230, "px"), ns = new b(220, "px"), ls = new b(210, "px"), De = new b(200, "px"), as = new b(190, "px"), cs = new b(180, "px"), ds = new b(170, "px"), hs = new b(160, "px"), us = new b(150, "px"), ps = new b(140, "px"), gs = new b(130, "px"), fs = new b(120, "px"), ms = new b(110, "px"), bs = new b(100, "px"), ys = new b(90, "px"), ws = new b(80, "px"), xs = new b(70, "px"), Ss = new b(60, "px"), Cs = new b(50, "px"), vs = new b(40, "px"), Rs = new b(30, "px"), As = new b(20, "px"), Ms = new b(10, "px"), Is = new b(0, "px");
|
|
6139
|
+
class F extends we {
|
|
6020
6140
|
constructor(e, t, s, o = []) {
|
|
6021
6141
|
super(e, o, s), this.areaIdent = e, this.arr = t, this.defaultRowHeight = s, this.columnDefs = o, this.filteredArr = [...t];
|
|
6022
6142
|
}
|
|
@@ -6127,7 +6247,7 @@ class P {
|
|
|
6127
6247
|
changeColumnOrder(e, t) {
|
|
6128
6248
|
}
|
|
6129
6249
|
}
|
|
6130
|
-
class
|
|
6250
|
+
class Dt {
|
|
6131
6251
|
flattenTree(e, t = []) {
|
|
6132
6252
|
var s;
|
|
6133
6253
|
for (const o of e)
|
|
@@ -6138,9 +6258,9 @@ class Ft {
|
|
|
6138
6258
|
return e.parent ? e.parent.expanded ? this.isVisible(e.parent) : !1 : !0;
|
|
6139
6259
|
}
|
|
6140
6260
|
}
|
|
6141
|
-
class
|
|
6261
|
+
class oe extends we {
|
|
6142
6262
|
constructor(e, t, s, o = []) {
|
|
6143
|
-
super(e, o, s), this.areaIdent = e, this.rows = t, this.defaultRowHeight = s, this.columnDefs = o, this.type = "AreaModelTree", this.sorterService = new
|
|
6263
|
+
super(e, o, s), this.areaIdent = e, this.rows = t, this.defaultRowHeight = s, this.columnDefs = o, this.type = "AreaModelTree", this.sorterService = new xe(), this.service = new Dt(), this.properties = o.map((i) => i.property), this.flattenRows = this.service.flattenTree(t), this.filteredFlattenRows = [...this.flattenRows];
|
|
6144
6264
|
}
|
|
6145
6265
|
changeColumnOrder(e, t) {
|
|
6146
6266
|
this.arrayMove(this.properties, e, t), super.changeColumnOrder(e, t);
|
|
@@ -6176,7 +6296,7 @@ class se extends ye {
|
|
|
6176
6296
|
* @returns {number | undefined} The constant row height or `undefined`.
|
|
6177
6297
|
*/
|
|
6178
6298
|
getConstantRowHeight() {
|
|
6179
|
-
return this.getRowHeight ===
|
|
6299
|
+
return this.getRowHeight === oe.prototype.getRowHeight && this.defaultRowHeight > 0 ? this.defaultRowHeight : void 0;
|
|
6180
6300
|
}
|
|
6181
6301
|
getCustomClassesAt(e, t) {
|
|
6182
6302
|
return ["ge-table-tree-cell", "ge-table-tree-deep-" + this.filteredFlattenRows[e].deep];
|
|
@@ -6253,7 +6373,7 @@ class se extends ye {
|
|
|
6253
6373
|
o.children && this.treeSort(o.children, t, s);
|
|
6254
6374
|
}
|
|
6255
6375
|
}
|
|
6256
|
-
class
|
|
6376
|
+
class Fe {
|
|
6257
6377
|
constructor(e = []) {
|
|
6258
6378
|
this.allRootNodes = e;
|
|
6259
6379
|
}
|
|
@@ -6313,12 +6433,12 @@ class De {
|
|
|
6313
6433
|
s.checked && t.push(s), s.children && this.addSelectedRecursive(s.children, t);
|
|
6314
6434
|
}
|
|
6315
6435
|
}
|
|
6316
|
-
class
|
|
6436
|
+
class ge {
|
|
6317
6437
|
constructor(e = 0, t = 0, s = 0, o = 0) {
|
|
6318
6438
|
this.top = e, this.right = t, this.bottom = s, this.left = o;
|
|
6319
6439
|
}
|
|
6320
6440
|
}
|
|
6321
|
-
class
|
|
6441
|
+
class Ft {
|
|
6322
6442
|
constructor() {
|
|
6323
6443
|
this.checkedRows = [];
|
|
6324
6444
|
}
|
|
@@ -6349,11 +6469,11 @@ class Pt {
|
|
|
6349
6469
|
}
|
|
6350
6470
|
}
|
|
6351
6471
|
}
|
|
6352
|
-
class
|
|
6353
|
-
constructor(e, t, s, o = 0, i = 0, r = !1, n = new
|
|
6472
|
+
class de {
|
|
6473
|
+
constructor(e, t, s, o = 0, i = 0, r = !1, n = new K(), l = [], c = [], a = -1, d = 0, u = 400, p = () => {
|
|
6354
6474
|
}) {
|
|
6355
|
-
var
|
|
6356
|
-
this.headerAreaModel = e, this.bodyAreaModel = t, this.footerAreaModel = s, this.fixedLeftColumnCount = o, this.fixedRightColumnCount = i, this.rowCheckboxVisible = r, this.defaultRowHeights = n, this.columnDefs = l, this.columnSizes =
|
|
6475
|
+
var f, m, g, y;
|
|
6476
|
+
this.headerAreaModel = e, this.bodyAreaModel = t, this.footerAreaModel = s, this.fixedLeftColumnCount = o, this.fixedRightColumnCount = i, this.rowCheckboxVisible = r, this.defaultRowHeights = n, this.columnDefs = l, this.columnSizes = c, this.overridingColumnWidth = a, this.columnCount = d, this.parentSize = u, this.getSelectionModel = p, this.rowCount = 0, this.contentHeightInPx = 0, this.contentWidthInPx = 0, this.padding = new ge(0, 0, 0, 0), this.xPositions = [], e.areaIdent = "header", t.areaIdent = "body", s.areaIdent = "footer", this.columnCount || ((f = this.columnDefs) != null && f.length ? this.columnCount = this.columnDefs.length : (m = this.columnSizes) != null && m.length && (this.columnCount = (g = this.columnSizes) == null ? void 0 : g.length)), (y = this.columnDefs) != null && y.length && ot(this.columnDefs[0]) && !t.rowSelectionModel && (t.rowSelectionModel = new Ft());
|
|
6357
6477
|
}
|
|
6358
6478
|
init() {
|
|
6359
6479
|
this.recalcSize(this.parentSize), this.overridingColumnWidth === -1 && this.calcXPositions(), this.headerAreaModel && this.headerAreaModel.init(), this.bodyAreaModel && this.bodyAreaModel.init(), this.footerAreaModel && this.footerAreaModel.init();
|
|
@@ -6437,7 +6557,7 @@ class ae {
|
|
|
6437
6557
|
*/
|
|
6438
6558
|
recalcPadding() {
|
|
6439
6559
|
const e = this.getSideAreaWidth("west"), t = this.getSideAreaWidth("east"), s = this.getAreaHeight("header"), o = this.getAreaHeight("footer");
|
|
6440
|
-
this.padding = new
|
|
6560
|
+
this.padding = new ge(
|
|
6441
6561
|
s,
|
|
6442
6562
|
t,
|
|
6443
6563
|
o,
|
|
@@ -6682,31 +6802,31 @@ class ae {
|
|
|
6682
6802
|
var t, s, o;
|
|
6683
6803
|
if (!((t = this.columnDefs) != null && t.length) && !((s = this.columnSizes) != null && s.length) && (this.columnSizes = new Array(this.getColumnCount()).fill(this.overridingColumnWidth)), (o = this.columnDefs) != null && o.length) {
|
|
6684
6804
|
const i = this.columnDefs.filter((l) => {
|
|
6685
|
-
var
|
|
6686
|
-
return ((
|
|
6805
|
+
var c;
|
|
6806
|
+
return ((c = l.width) == null ? void 0 : c.unit) === "weight";
|
|
6687
6807
|
});
|
|
6688
6808
|
this.columnSizes = this.columnDefs.map((l) => {
|
|
6689
6809
|
if (l.width.unit === "%" && e) {
|
|
6690
|
-
let
|
|
6810
|
+
let c = Math.floor(l.width.value * e / 100);
|
|
6691
6811
|
if (l.minWidth) {
|
|
6692
|
-
const
|
|
6693
|
-
|
|
6812
|
+
const a = this.sizeToPixel(l.minWidth, e);
|
|
6813
|
+
c = Math.max(a, c);
|
|
6694
6814
|
}
|
|
6695
6815
|
if (l.maxWidth) {
|
|
6696
|
-
const
|
|
6697
|
-
|
|
6816
|
+
const a = this.sizeToPixel(l.maxWidth, e);
|
|
6817
|
+
c = Math.min(a, c);
|
|
6698
6818
|
}
|
|
6699
|
-
return
|
|
6819
|
+
return c;
|
|
6700
6820
|
} else if (l.width.unit === "px" && e)
|
|
6701
6821
|
return l.width.value;
|
|
6702
6822
|
return 0;
|
|
6703
6823
|
});
|
|
6704
|
-
const r = this.columnSizes.reduce((l,
|
|
6824
|
+
const r = this.columnSizes.reduce((l, c) => l + c), n = e - r;
|
|
6705
6825
|
if (n > 0 && i.length) {
|
|
6706
|
-
const l = i.map((
|
|
6707
|
-
for (let
|
|
6708
|
-
const
|
|
6709
|
-
|
|
6826
|
+
const l = i.map((c) => c.width.value).reduce((c, a) => c + a);
|
|
6827
|
+
for (let c = 0; c < this.columnDefs.length; c++) {
|
|
6828
|
+
const a = this.columnDefs[c];
|
|
6829
|
+
a.width.unit === "weight" && (this.columnSizes[c] = a.width.value * n / l);
|
|
6710
6830
|
}
|
|
6711
6831
|
}
|
|
6712
6832
|
}
|
|
@@ -6742,7 +6862,7 @@ class ae {
|
|
|
6742
6862
|
return this.tableScope;
|
|
6743
6863
|
}
|
|
6744
6864
|
}
|
|
6745
|
-
class
|
|
6865
|
+
class Pe extends _ {
|
|
6746
6866
|
/**
|
|
6747
6867
|
* Creates an instance of AreaModelObjectArrayWithColumndefs.
|
|
6748
6868
|
*
|
|
@@ -6821,35 +6941,35 @@ class H {
|
|
|
6821
6941
|
* Please consult each method's documentation for detailed explanation of their functionality.
|
|
6822
6942
|
*/
|
|
6823
6943
|
static createTableModel(e) {
|
|
6824
|
-
var t, s, o, i, r, n, l,
|
|
6944
|
+
var t, s, o, i, r, n, l, c, a, d, u, p, f, m;
|
|
6825
6945
|
if (e.defaultRowHeights === void 0)
|
|
6826
6946
|
if ((t = e.tableOptions) != null && t.defaultRowHeights)
|
|
6827
6947
|
e.defaultRowHeights = e.tableOptions.defaultRowHeights;
|
|
6828
6948
|
else {
|
|
6829
|
-
if (e.defaultRowHeights = new
|
|
6830
|
-
const
|
|
6831
|
-
|
|
6949
|
+
if (e.defaultRowHeights = new K(), e.headerAreaModel && "defaultRowHeight" in e.headerAreaModel) {
|
|
6950
|
+
const g = e.headerAreaModel.defaultRowHeight;
|
|
6951
|
+
g > -1 && (e.defaultRowHeights.header = g);
|
|
6832
6952
|
}
|
|
6833
6953
|
if (e.bodyAreaModel && "defaultRowHeight" in e.bodyAreaModel) {
|
|
6834
|
-
const
|
|
6835
|
-
|
|
6954
|
+
const g = e.bodyAreaModel.defaultRowHeight;
|
|
6955
|
+
g > -1 && (e.defaultRowHeights.body = g);
|
|
6836
6956
|
}
|
|
6837
6957
|
if (e.footerAreaModel && "defaultRowHeight" in e.footerAreaModel) {
|
|
6838
|
-
const
|
|
6839
|
-
|
|
6958
|
+
const g = e.footerAreaModel.defaultRowHeight;
|
|
6959
|
+
g > -1 && (e.defaultRowHeights.footer = g);
|
|
6840
6960
|
}
|
|
6841
6961
|
}
|
|
6842
|
-
if (e.columnDefs === void 0 && ((s = e.properties) != null && s.length ? e.columnDefs = e.properties.map((
|
|
6962
|
+
if (e.columnDefs === void 0 && ((s = e.properties) != null && s.length ? e.columnDefs = e.properties.map((g) => new W(g, g.toUpperCase(), De)) : (o = e.rows) != null && o.length ? e.columnDefs = Object.keys(e.rows[0]).map((g) => new W(g, g.toUpperCase(), De)) : e.columnDefs = []), e.columnCount === void 0 && ((i = e.columnDefs) != null && i.length ? e.columnCount = e.columnDefs.length : (r = e.headerData) != null && r.length ? e.columnCount = e.headerData[0].length : (n = e.columnSizes) != null && n.length ? e.columnCount = (l = e.columnSizes) == null ? void 0 : l.length : console.warn('Property "columnCount" is missing and cannot be derived from other properties.')), e.headerAreaModel || ((c = e.headerData) != null && c.length ? e.headerAreaModel = new F(
|
|
6843
6963
|
"header",
|
|
6844
6964
|
e.headerData,
|
|
6845
6965
|
e.defaultRowHeights.header,
|
|
6846
6966
|
e.columnDefs
|
|
6847
|
-
) : (
|
|
6967
|
+
) : (a = e.columnDefs) != null && a.length ? e.headerAreaModel = new F(
|
|
6848
6968
|
"header",
|
|
6849
|
-
[e.columnDefs.map((
|
|
6969
|
+
[e.columnDefs.map((g) => g.headerLabel)],
|
|
6850
6970
|
e.defaultRowHeights.header,
|
|
6851
6971
|
e.columnDefs
|
|
6852
|
-
) : e.headerAreaModel = new P("header")), e.footerAreaModel || ((
|
|
6972
|
+
) : e.headerAreaModel = new P("header")), e.footerAreaModel || ((d = e.footerData) != null && d.length ? e.footerAreaModel = new F(
|
|
6853
6973
|
"footer",
|
|
6854
6974
|
e.footerData,
|
|
6855
6975
|
e.defaultRowHeights.footer,
|
|
@@ -6857,15 +6977,15 @@ class H {
|
|
|
6857
6977
|
) : e.footerAreaModel = new P("footer")), !e.bodyAreaModel)
|
|
6858
6978
|
if (e.rows)
|
|
6859
6979
|
if ((u = e.rows) != null && u.length && j(e.rows[0])) {
|
|
6860
|
-
const
|
|
6861
|
-
e.bodyAreaModel = new
|
|
6980
|
+
const g = e.rows;
|
|
6981
|
+
e.bodyAreaModel = new oe(
|
|
6862
6982
|
"body",
|
|
6863
|
-
|
|
6983
|
+
g,
|
|
6864
6984
|
e.defaultRowHeights.body,
|
|
6865
6985
|
e.columnDefs
|
|
6866
|
-
), (e.columnDefs[0].property === "CheckboxColumn" || (
|
|
6986
|
+
), (e.columnDefs[0].property === "CheckboxColumn" || (p = e.tableOptions) != null && p.showCheckboxWihoutExtraColumn) && (e.bodyAreaModel.rowSelectionModel = new Fe(g));
|
|
6867
6987
|
} else
|
|
6868
|
-
e.bodyAreaModel = new
|
|
6988
|
+
e.bodyAreaModel = new Pe(
|
|
6869
6989
|
"body",
|
|
6870
6990
|
e.rows,
|
|
6871
6991
|
e.columnDefs,
|
|
@@ -6876,7 +6996,7 @@ class H {
|
|
|
6876
6996
|
e.bodyData,
|
|
6877
6997
|
e.defaultRowHeights.body
|
|
6878
6998
|
) : e.bodyAreaModel = new P("body");
|
|
6879
|
-
return e.fixedLeftColumnCount === void 0 && (e.fixedLeftColumnCount = 0), e.fixedRightColumnCount === void 0 && (e.fixedRightColumnCount = 0), e.rowCheckboxVisible === void 0 && (e.rowCheckboxVisible = !1), e.overridingColumnWidth === void 0 && (e.overridingColumnWidth = -1), !e.getSelectionModel && ((
|
|
6999
|
+
return e.fixedLeftColumnCount === void 0 && (e.fixedLeftColumnCount = 0), e.fixedRightColumnCount === void 0 && (e.fixedRightColumnCount = 0), e.rowCheckboxVisible === void 0 && (e.rowCheckboxVisible = !1), e.overridingColumnWidth === void 0 && (e.overridingColumnWidth = -1), !e.getSelectionModel && ((f = e.tableOptions) != null && f.getSelectionModel) && (e.getSelectionModel = (m = e.tableOptions) == null ? void 0 : m.getSelectionModel), new de(
|
|
6880
7000
|
e.headerAreaModel,
|
|
6881
7001
|
e.bodyAreaModel,
|
|
6882
7002
|
e.footerAreaModel,
|
|
@@ -6913,7 +7033,7 @@ class H {
|
|
|
6913
7033
|
return H.buildByTypedRows(
|
|
6914
7034
|
e.rows ?? [],
|
|
6915
7035
|
e.columnDefs,
|
|
6916
|
-
e.tableOptions ?? new
|
|
7036
|
+
e.tableOptions ?? new q(),
|
|
6917
7037
|
e.fixedLeftColumnCount ?? 0,
|
|
6918
7038
|
e.fixedRightColumnCount ?? 0
|
|
6919
7039
|
);
|
|
@@ -6954,18 +7074,18 @@ class H {
|
|
|
6954
7074
|
* columnDef is "CheckboxColumn". If the first column is not a checkbox column, ensure that the first columnDef does not have "CheckboxColumn"
|
|
6955
7075
|
* as its property.
|
|
6956
7076
|
*/
|
|
6957
|
-
static buildByTypedRows(e, t, s = new
|
|
7077
|
+
static buildByTypedRows(e, t, s = new q(), o = 0, i = 0) {
|
|
6958
7078
|
const r = s.defaultRowHeights, n = t[0].property === "CheckboxColumn";
|
|
6959
7079
|
if (e != null && e.length && j(e[0])) {
|
|
6960
|
-
const
|
|
7080
|
+
const c = e, a = new oe(
|
|
6961
7081
|
"body",
|
|
6962
|
-
|
|
7082
|
+
c,
|
|
6963
7083
|
r.body,
|
|
6964
7084
|
t
|
|
6965
7085
|
);
|
|
6966
|
-
return (n || s.showCheckboxWihoutExtraColumn) && (
|
|
6967
|
-
headerAreaModel: new F("header", [t.map((
|
|
6968
|
-
bodyAreaModel:
|
|
7086
|
+
return (n || s.showCheckboxWihoutExtraColumn) && (a.rowSelectionModel = new Fe(c)), H.createByAreaModelsParam({
|
|
7087
|
+
headerAreaModel: new F("header", [t.map((d) => d.headerLabel)], r.header),
|
|
7088
|
+
bodyAreaModel: a,
|
|
6969
7089
|
footerAreaModel: new F("footer", [], r.footer),
|
|
6970
7090
|
columnDefs: t,
|
|
6971
7091
|
fixedLeftColumnCount: o,
|
|
@@ -7038,7 +7158,7 @@ class H {
|
|
|
7038
7158
|
e.fixedLeftColumnCount ?? 0,
|
|
7039
7159
|
e.fixedRightColumnCount ?? 0,
|
|
7040
7160
|
t,
|
|
7041
|
-
e.defaultRowHeights ?? new
|
|
7161
|
+
e.defaultRowHeights ?? new K(),
|
|
7042
7162
|
e.columnDefs ?? [],
|
|
7043
7163
|
e.columnSizes ?? []
|
|
7044
7164
|
);
|
|
@@ -7084,8 +7204,8 @@ class H {
|
|
|
7084
7204
|
* @return A new instance of `TableModel` is created using the provided parameters.
|
|
7085
7205
|
* If a parameter isn't provided, the default value is used.
|
|
7086
7206
|
*/
|
|
7087
|
-
static createByAreaModels(e = new P(), t, s = new P(), o = 0, i = 0, r = !1, n = new
|
|
7088
|
-
return new
|
|
7207
|
+
static createByAreaModels(e = new P(), t, s = new P(), o = 0, i = 0, r = !1, n = new K(), l, c = [], a = -1, d) {
|
|
7208
|
+
return new de(
|
|
7089
7209
|
e,
|
|
7090
7210
|
t,
|
|
7091
7211
|
s,
|
|
@@ -7094,9 +7214,9 @@ class H {
|
|
|
7094
7214
|
r,
|
|
7095
7215
|
n,
|
|
7096
7216
|
l,
|
|
7097
|
-
a,
|
|
7098
7217
|
c,
|
|
7099
|
-
|
|
7218
|
+
a,
|
|
7219
|
+
d
|
|
7100
7220
|
);
|
|
7101
7221
|
}
|
|
7102
7222
|
/**
|
|
@@ -7198,26 +7318,26 @@ class H {
|
|
|
7198
7318
|
*
|
|
7199
7319
|
* Reference: For more details regarding the `DefaultRowHeightsIf`, `ColumnDefIf`, `AreaModelIf`, and `AreaModelArrayOfArrays` classes/interfaces, please refer to the respective API documents.
|
|
7200
7320
|
*/
|
|
7201
|
-
static createByObjectArray(e, t = [], s = [], o = 0, i = 0, r = !1, n = new
|
|
7202
|
-
let
|
|
7203
|
-
t != null && t.length ?
|
|
7204
|
-
const
|
|
7205
|
-
return new
|
|
7206
|
-
|
|
7321
|
+
static createByObjectArray(e, t = [], s = [], o = 0, i = 0, r = !1, n = new K(), l, c = []) {
|
|
7322
|
+
let a;
|
|
7323
|
+
t != null && t.length ? a = new F("header", t, n.header, l) : l != null && l.length ? a = new F("header", [l.map((p) => p.headerLabel)], n.header, l) : a = new P();
|
|
7324
|
+
const d = s ? new F("footer", s, n.footer, l) : new P(), u = new Pe("body", e, l, n.body);
|
|
7325
|
+
return new de(
|
|
7326
|
+
a,
|
|
7207
7327
|
u,
|
|
7208
|
-
|
|
7328
|
+
d,
|
|
7209
7329
|
o,
|
|
7210
7330
|
i,
|
|
7211
7331
|
r,
|
|
7212
7332
|
n,
|
|
7213
7333
|
l,
|
|
7214
|
-
|
|
7334
|
+
c
|
|
7215
7335
|
);
|
|
7216
7336
|
}
|
|
7217
7337
|
}
|
|
7218
|
-
class
|
|
7338
|
+
class Pt {
|
|
7219
7339
|
constructor(e, t, s = 200, o = 300, i = 0, r = 0) {
|
|
7220
|
-
this.items = e, this.cellRenderer = t, this.coverWidth = s, this.coverHeight = o, this.width = i, this.firstRowPaddingTop = r, this.rowSelectionModel = void 0, this.areaIdent = "body", this.filteredItems = [], this.sorterService = new
|
|
7340
|
+
this.items = e, this.cellRenderer = t, this.coverWidth = s, this.coverHeight = o, this.width = i, this.firstRowPaddingTop = r, this.rowSelectionModel = void 0, this.areaIdent = "body", this.filteredItems = [], this.sorterService = new xe(), this.filteredItems = e;
|
|
7221
7341
|
}
|
|
7222
7342
|
setParentWidth(e) {
|
|
7223
7343
|
this.width = e;
|
|
@@ -7311,7 +7431,7 @@ class _t {
|
|
|
7311
7431
|
arrayMove(e, t, s) {
|
|
7312
7432
|
}
|
|
7313
7433
|
}
|
|
7314
|
-
class
|
|
7434
|
+
class _t {
|
|
7315
7435
|
constructor(e, t = 0) {
|
|
7316
7436
|
this.bodyModel = e, this.paddingTop = t, this.headerAreaModel = new P(), this.footerAreaModel = new P();
|
|
7317
7437
|
}
|
|
@@ -7378,7 +7498,7 @@ class Lt {
|
|
|
7378
7498
|
recalcHeightAndPadding() {
|
|
7379
7499
|
}
|
|
7380
7500
|
getPadding() {
|
|
7381
|
-
return new
|
|
7501
|
+
return new ge(0, 0, 0, 0);
|
|
7382
7502
|
}
|
|
7383
7503
|
getContentHeightInPixel() {
|
|
7384
7504
|
return this.paddingTop + this.bodyModel.getRowCount() * this.bodyModel.coverHeight;
|
|
@@ -7404,7 +7524,7 @@ class Lt {
|
|
|
7404
7524
|
return this.tableScope;
|
|
7405
7525
|
}
|
|
7406
7526
|
}
|
|
7407
|
-
class
|
|
7527
|
+
class Lt {
|
|
7408
7528
|
constructor() {
|
|
7409
7529
|
this.autoRestoreSortingState = !1, this.autoRestoreCollapsedExpandedState = !1, this.autoRestoreScrollPosition = !1, this.autoRestoreCheckedState = !1, this.autoRestoreSelectedState = !1, this.getStorageKeyFn = void 0, this.isSame = (e, t, s) => {
|
|
7410
7530
|
if (e && t && s.getRowId) {
|
|
@@ -7431,12 +7551,12 @@ class Vt {
|
|
|
7431
7551
|
}
|
|
7432
7552
|
class Es {
|
|
7433
7553
|
static createCoverGridModel(e, t, s = 200, o = 300, i = 0, r = 0) {
|
|
7434
|
-
const n = new
|
|
7435
|
-
return new
|
|
7554
|
+
const n = new Pt(e, t, s, o, i, r);
|
|
7555
|
+
return new _t(n, r);
|
|
7436
7556
|
}
|
|
7437
7557
|
static createCoverGrisDefaultOptions(e, t = () => "CoverGrid") {
|
|
7438
7558
|
return {
|
|
7439
|
-
...new
|
|
7559
|
+
...new q(),
|
|
7440
7560
|
horizontalBorderVisible: !1,
|
|
7441
7561
|
verticalBorderVisible: !1,
|
|
7442
7562
|
footerSeparatorBorderVisible: !1,
|
|
@@ -7454,7 +7574,7 @@ class Es {
|
|
|
7454
7574
|
},
|
|
7455
7575
|
// externalFilterFunction: this.filterFn.bind(this),
|
|
7456
7576
|
autoRestoreOptions: {
|
|
7457
|
-
...new
|
|
7577
|
+
...new Lt(),
|
|
7458
7578
|
getStorageKeyFn: t,
|
|
7459
7579
|
autoRestoreCollapsedExpandedState: !1,
|
|
7460
7580
|
autoRestoreScrollPosition: !0,
|
|
@@ -7464,7 +7584,7 @@ class Es {
|
|
|
7464
7584
|
};
|
|
7465
7585
|
}
|
|
7466
7586
|
}
|
|
7467
|
-
const
|
|
7587
|
+
const Ts = [
|
|
7468
7588
|
"COPY_2_CLIPBOARD",
|
|
7469
7589
|
"START_EDITING",
|
|
7470
7590
|
"TOGGLE_SELECTION",
|
|
@@ -7482,17 +7602,17 @@ const ks = [
|
|
|
7482
7602
|
// "PAGEUP_PRESSED",
|
|
7483
7603
|
// "PAGEDOWN_PRESSED"
|
|
7484
7604
|
];
|
|
7485
|
-
class
|
|
7605
|
+
class Vt {
|
|
7486
7606
|
constructor(e, t) {
|
|
7487
7607
|
this.tableModel = e, this.tableOptions = t;
|
|
7488
7608
|
}
|
|
7489
7609
|
}
|
|
7490
|
-
class
|
|
7610
|
+
class Ot {
|
|
7491
7611
|
constructor(e, t, s, o, i, r, n) {
|
|
7492
7612
|
this.emmitDataKey = e, this.emmitCancelKey = t, this.queryId = s, this.filter = o, this.sorting = i, this.startIndex = r, this.endIndex = n;
|
|
7493
7613
|
}
|
|
7494
7614
|
}
|
|
7495
|
-
class
|
|
7615
|
+
class ks extends Ot {
|
|
7496
7616
|
constructor(e, t, s, o, i, r, n, l) {
|
|
7497
7617
|
super(
|
|
7498
7618
|
e,
|
|
@@ -7505,34 +7625,34 @@ class Ds extends $t {
|
|
|
7505
7625
|
), this.rows = l;
|
|
7506
7626
|
}
|
|
7507
7627
|
}
|
|
7508
|
-
class
|
|
7628
|
+
class $t {
|
|
7509
7629
|
constructor(e, t) {
|
|
7510
7630
|
this.value = e, this.label = t;
|
|
7511
7631
|
}
|
|
7512
7632
|
}
|
|
7513
|
-
class
|
|
7633
|
+
class Ds {
|
|
7514
7634
|
constructor(e, t) {
|
|
7515
7635
|
this.index = e, this.px = t;
|
|
7516
7636
|
}
|
|
7517
7637
|
}
|
|
7518
|
-
const
|
|
7638
|
+
const Fs = { body: ["ge-table-text-align-left"] }, Ps = { body: ["ge-table-text-align-center"] }, _s = { body: ["ge-table-text-align-right"] }, Ls = {
|
|
7519
7639
|
header: ["ge-table-text-align-left"],
|
|
7520
7640
|
body: ["ge-table-text-align-left"],
|
|
7521
7641
|
footer: ["ge-table-text-align-left"]
|
|
7522
|
-
},
|
|
7642
|
+
}, Vs = {
|
|
7523
7643
|
header: ["ge-table-text-align-center"],
|
|
7524
7644
|
body: ["ge-table-text-align-center"],
|
|
7525
7645
|
footer: ["ge-table-text-align-center"]
|
|
7526
|
-
},
|
|
7646
|
+
}, Os = {
|
|
7527
7647
|
header: ["ge-table-text-align-right"],
|
|
7528
7648
|
body: ["ge-table-text-align-right"],
|
|
7529
7649
|
footer: ["ge-table-text-align-right"]
|
|
7530
7650
|
};
|
|
7531
|
-
class
|
|
7651
|
+
class _e {
|
|
7532
7652
|
render(e, t, s, o, i, r, n) {
|
|
7533
7653
|
if (i.isRowCheckable(t)) {
|
|
7534
7654
|
n.addClass(e, "ge-table-row-checkbox-div");
|
|
7535
|
-
const l = i.isRowChecked(t),
|
|
7655
|
+
const l = i.isRowChecked(t), c = l === "full" ? "checked" : "", a = l === "semi" ? '<span style="opacity: 0.4;">✓<span>' : "";
|
|
7536
7656
|
e.innerHTML = `
|
|
7537
7657
|
<input
|
|
7538
7658
|
type="checkbox"
|
|
@@ -7540,22 +7660,22 @@ class Pe {
|
|
|
7540
7660
|
data-row-index="${t}"
|
|
7541
7661
|
data-col-index="${s}"
|
|
7542
7662
|
data-input-type="checkbox"
|
|
7543
|
-
${
|
|
7663
|
+
${c}
|
|
7544
7664
|
class="ge-table-row-checkbox">
|
|
7545
|
-
${
|
|
7665
|
+
${a} `;
|
|
7546
7666
|
}
|
|
7547
7667
|
}
|
|
7548
7668
|
}
|
|
7549
|
-
class
|
|
7669
|
+
class $s {
|
|
7550
7670
|
constructor() {
|
|
7551
|
-
this.type = "CheckboxColumnDef", this.property = "CheckboxColumn", this.headerLabel = "", this.width = new
|
|
7671
|
+
this.type = "CheckboxColumnDef", this.property = "CheckboxColumn", this.headerLabel = "", this.width = new b(50, "px"), this.minWidth = new b(50, "px"), this.maxWidth = new b(100, "px"), this.rendererMap = new k(new _e(), new _e(), void 0), this.classes = new k(
|
|
7552
7672
|
[],
|
|
7553
7673
|
["ge-table-text-align-left"],
|
|
7554
7674
|
[]
|
|
7555
7675
|
);
|
|
7556
7676
|
}
|
|
7557
7677
|
}
|
|
7558
|
-
class
|
|
7678
|
+
class Hs {
|
|
7559
7679
|
/**
|
|
7560
7680
|
* A factory that creates a new AreaObjectMap with the given body renderer.
|
|
7561
7681
|
*
|
|
@@ -7570,22 +7690,22 @@ class Bs {
|
|
|
7570
7690
|
);
|
|
7571
7691
|
}
|
|
7572
7692
|
}
|
|
7573
|
-
class
|
|
7693
|
+
class Bs {
|
|
7574
7694
|
constructor(e = "down", t) {
|
|
7575
7695
|
this.status = e, this.originalEvent = t;
|
|
7576
7696
|
}
|
|
7577
7697
|
}
|
|
7578
|
-
class
|
|
7698
|
+
class Ws {
|
|
7579
7699
|
constructor(e, t, s, o, i = {}) {
|
|
7580
7700
|
this.area = e, this.rowIndex = t, this.columnIndex = s, this.value = o, this.cssClasses = i;
|
|
7581
7701
|
}
|
|
7582
7702
|
}
|
|
7583
|
-
class
|
|
7703
|
+
class Ht {
|
|
7584
7704
|
constructor(e, t, s, o = !1, i = "normal", r = void 0) {
|
|
7585
7705
|
this.data = e, this.property = t, this.toggle = s, this.closed = o, this.visibility = i, this.children = r, this.impl = "CellGroup";
|
|
7586
7706
|
}
|
|
7587
7707
|
}
|
|
7588
|
-
class
|
|
7708
|
+
class Bt extends Ht {
|
|
7589
7709
|
constructor(e, t = 0, s = 0, o) {
|
|
7590
7710
|
super(
|
|
7591
7711
|
e.data,
|
|
@@ -7677,7 +7797,7 @@ class Wt extends Bt {
|
|
|
7677
7797
|
return n;
|
|
7678
7798
|
}
|
|
7679
7799
|
}
|
|
7680
|
-
class
|
|
7800
|
+
class T {
|
|
7681
7801
|
static buildColumnDefs(e, t = []) {
|
|
7682
7802
|
for (const s of e)
|
|
7683
7803
|
s.property && t.push(
|
|
@@ -7686,7 +7806,7 @@ class E {
|
|
|
7686
7806
|
headerLabel: s.data ? s.data : s.property,
|
|
7687
7807
|
isVisible: () => typeof s.isVisible == "function" ? s.isVisible() : !0
|
|
7688
7808
|
})
|
|
7689
|
-
), s.children &&
|
|
7809
|
+
), s.children && T.buildColumnDefs(s.children, t);
|
|
7690
7810
|
return t;
|
|
7691
7811
|
}
|
|
7692
7812
|
/*
|
|
@@ -7710,14 +7830,14 @@ class E {
|
|
|
7710
7830
|
static buildGroupExts(e, t = [], s = 0, o) {
|
|
7711
7831
|
let i;
|
|
7712
7832
|
for (let r = 0; r < e.length; r++) {
|
|
7713
|
-
const n = e[r], l = new
|
|
7714
|
-
i && (l.leftNeighbour = i, i.rightNeighbour = l), t.push(l), n.children && (l.children =
|
|
7833
|
+
const n = e[r], l = new Bt(n, s, r, o);
|
|
7834
|
+
i && (l.leftNeighbour = i, i.rightNeighbour = l), t.push(l), n.children && (l.children = T.buildGroupExts(n.children, [], s + 1, l)), i = l;
|
|
7715
7835
|
}
|
|
7716
7836
|
return t;
|
|
7717
7837
|
}
|
|
7718
7838
|
static flattenGroupExts(e, t = []) {
|
|
7719
7839
|
for (const s of e)
|
|
7720
|
-
t.push(s), s.children &&
|
|
7840
|
+
t.push(s), s.children && T.flattenGroupExts(s.children, t);
|
|
7721
7841
|
return t;
|
|
7722
7842
|
}
|
|
7723
7843
|
/*
|
|
@@ -7749,10 +7869,10 @@ class E {
|
|
|
7749
7869
|
static iterateThrowColumns(e = [], t) {
|
|
7750
7870
|
var s;
|
|
7751
7871
|
for (const o of t)
|
|
7752
|
-
e.push(o.data + " rowIndex:" + o.rowIndex), (s = o.children) != null && s.length &&
|
|
7872
|
+
e.push(o.data + " rowIndex:" + o.rowIndex), (s = o.children) != null && s.length && T.iterateThrowColumns(e, o.children);
|
|
7753
7873
|
}
|
|
7754
7874
|
}
|
|
7755
|
-
class
|
|
7875
|
+
class Ns {
|
|
7756
7876
|
constructor() {
|
|
7757
7877
|
this.areaIdent = "body", this.rowSelectionModel = void 0;
|
|
7758
7878
|
}
|
|
@@ -8390,15 +8510,15 @@ class Gs {
|
|
|
8390
8510
|
return !1;
|
|
8391
8511
|
}
|
|
8392
8512
|
}
|
|
8393
|
-
const
|
|
8394
|
-
constructor(e = new
|
|
8513
|
+
const ne = class ne {
|
|
8514
|
+
constructor(e = new Re()) {
|
|
8395
8515
|
this.headerGroupOptions = e;
|
|
8396
8516
|
}
|
|
8397
8517
|
render(e, t, s, o, i, r, n) {
|
|
8398
8518
|
const l = r != null && r.data ? r.data : "";
|
|
8399
8519
|
if (r) {
|
|
8400
|
-
const { toggle:
|
|
8401
|
-
this.addText(e, o, t, s, l, u),
|
|
8520
|
+
const { toggle: c, visibility: a, closed: d } = r, u = c ? ne.toggleHeaderGroup : "";
|
|
8521
|
+
this.addText(e, o, t, s, l, u), c && a !== "always" && this.addArrowDiv(n, e, !d, t, s, o, u);
|
|
8402
8522
|
} else
|
|
8403
8523
|
this.addText(e, o, t, s, l, "");
|
|
8404
8524
|
}
|
|
@@ -8413,11 +8533,11 @@ const re = class re {
|
|
|
8413
8533
|
addArrowDiv(e, t, s = !0, o = -1, i = -1, r = "header", n) {
|
|
8414
8534
|
const l = e.createElement("div");
|
|
8415
8535
|
e.addClass(l, "ge-table-toggle-icon-div"), e.setStyle(l, "display", "inline-block"), e.setStyle(l, "position", ""), e.setStyle(l, "width", "20px"), e.setStyle(l, "background", "transparent"), e.setStyle(l, "cursor", "pointer"), e.setAttribute(l, "data-row-index", `${o}`), e.setAttribute(l, "data-col-index", `${i}`), e.setAttribute(l, "data-area", `${r}`), e.setAttribute(l, "data-ge-action", `${n}`);
|
|
8416
|
-
let
|
|
8417
|
-
s ?
|
|
8418
|
-
const
|
|
8419
|
-
e.appendChild(l,
|
|
8420
|
-
for (const u of
|
|
8536
|
+
let c;
|
|
8537
|
+
s ? c = this.headerGroupOptions.iconExpanded : c = this.headerGroupOptions.iconCollapsed;
|
|
8538
|
+
const a = c.content, d = e.createText(a);
|
|
8539
|
+
e.appendChild(l, d), c.style && this.applyStyleString(e, l, c.style);
|
|
8540
|
+
for (const u of c.classes)
|
|
8421
8541
|
e.addClass(l, u);
|
|
8422
8542
|
return e.appendChild(t, l), l;
|
|
8423
8543
|
}
|
|
@@ -8429,11 +8549,11 @@ const re = class re {
|
|
|
8429
8549
|
}
|
|
8430
8550
|
}
|
|
8431
8551
|
};
|
|
8432
|
-
|
|
8433
|
-
let
|
|
8434
|
-
class
|
|
8435
|
-
constructor(e = "header", t, s = [], o, i = new
|
|
8436
|
-
this.areaIdent = e, this.groups = t, this.columnDefs = s, this.defaultRowHeight = o, this.headerGroupOptions = i, this.gammaCells = !0, this.arr = [], this.groupExts = [], this.cellGroupExtCellRenderer = new
|
|
8552
|
+
ne.toggleHeaderGroup = "toggleHeaderGroup";
|
|
8553
|
+
let fe = ne;
|
|
8554
|
+
class Gs {
|
|
8555
|
+
constructor(e = "header", t, s = [], o, i = new Re()) {
|
|
8556
|
+
this.areaIdent = e, this.groups = t, this.columnDefs = s, this.defaultRowHeight = o, this.headerGroupOptions = i, this.gammaCells = !0, this.arr = [], this.groupExts = [], this.cellGroupExtCellRenderer = new fe(this.headerGroupOptions), this.groupExts = T.buildGroupExts(t), this.init();
|
|
8437
8557
|
}
|
|
8438
8558
|
sort(e) {
|
|
8439
8559
|
}
|
|
@@ -8441,19 +8561,19 @@ class zs {
|
|
|
8441
8561
|
var e;
|
|
8442
8562
|
for (const t of this.groupExts)
|
|
8443
8563
|
t.log(this.getMaxRowCount());
|
|
8444
|
-
this.arr = this.buildArray(), !((e = this.columnDefs) != null && e.length) && this.areaIdent === "header" && (this.columnDefs =
|
|
8564
|
+
this.arr = this.buildArray(), !((e = this.columnDefs) != null && e.length) && this.areaIdent === "header" && (this.columnDefs = T.buildColumnDefs(this.groups));
|
|
8445
8565
|
}
|
|
8446
8566
|
getAllLeafs() {
|
|
8447
|
-
return
|
|
8567
|
+
return T.flattenGroupExts(this.groupExts).filter((t) => !t.children);
|
|
8448
8568
|
}
|
|
8449
8569
|
getMaxRowCount() {
|
|
8450
8570
|
const e = this.getAllLeafs();
|
|
8451
8571
|
return e != null && e.length ? 1 + Math.max(...e.map((t) => t.getParentCount(t))) : 0;
|
|
8452
8572
|
}
|
|
8453
8573
|
buildArray() {
|
|
8454
|
-
const e =
|
|
8455
|
-
|
|
8456
|
-
const o = Array.from(Array(t).keys()).map((r) => []), i =
|
|
8574
|
+
const e = T.flattenGroupExts(this.groupExts), t = 1 + Math.max(...e.map((r) => r.rowIndex)), s = [];
|
|
8575
|
+
T.iterateThrowColumns(s, this.groupExts);
|
|
8576
|
+
const o = Array.from(Array(t).keys()).map((r) => []), i = T.buildArrayOfArrays(e, o);
|
|
8457
8577
|
return console.table(i), i;
|
|
8458
8578
|
}
|
|
8459
8579
|
changeColumnOrder(e, t) {
|
|
@@ -8531,31 +8651,31 @@ class zs {
|
|
|
8531
8651
|
toggleHeaderGroup(e) {
|
|
8532
8652
|
const t = this.arr[e.rowIdx][e.colIdx];
|
|
8533
8653
|
t != null && t.toggle && t.visibility !== "always" && (t.closed = !t.closed, this.init());
|
|
8534
|
-
const s =
|
|
8654
|
+
const s = T.buildColumnDefs(this.groupExts), o = new Map(this.columnDefs.map((r) => [r.property, r])), i = s.map((r) => {
|
|
8535
8655
|
const n = o.get(r.property);
|
|
8536
8656
|
return n ? (n.isVisible = r.isVisible, n) : r;
|
|
8537
8657
|
});
|
|
8538
8658
|
return this.columnDefs = i, i;
|
|
8539
8659
|
}
|
|
8540
8660
|
}
|
|
8541
|
-
class
|
|
8661
|
+
class zs {
|
|
8542
8662
|
filterPredict(e, t, s = this.objectToString.bind(this)) {
|
|
8543
8663
|
if (!e)
|
|
8544
8664
|
return !1;
|
|
8545
8665
|
if (!t)
|
|
8546
8666
|
return !0;
|
|
8547
8667
|
t = t.toLowerCase();
|
|
8548
|
-
const o = "+", i = "-", r = t.toLowerCase().split(" ").filter((
|
|
8549
|
-
let
|
|
8550
|
-
for (let
|
|
8551
|
-
(
|
|
8552
|
-
if (!
|
|
8668
|
+
const o = "+", i = "-", r = t.toLowerCase().split(" ").filter((d) => d !== o && d !== i && d !== ""), n = r.filter((d) => !d.startsWith(o) && !d.startsWith(i)), l = r.filter((d) => d.startsWith(o)).map((d) => d.replace(/\+/g, "")), c = r.filter((d) => d.startsWith(i)).map((d) => d.replace(/-/g, ""));
|
|
8669
|
+
let a = !n.length;
|
|
8670
|
+
for (let d = 0; d < n.length; d++)
|
|
8671
|
+
(a || s(e).includes(n[d])) && (a = !0);
|
|
8672
|
+
if (!a)
|
|
8553
8673
|
return !1;
|
|
8554
|
-
for (let
|
|
8555
|
-
if (!s(e).includes(l[
|
|
8674
|
+
for (let d = 0; d < l.length; d++)
|
|
8675
|
+
if (!s(e).includes(l[d]))
|
|
8556
8676
|
return !1;
|
|
8557
|
-
for (let
|
|
8558
|
-
if (s(e).includes(
|
|
8677
|
+
for (let d = 0; d < c.length; d++)
|
|
8678
|
+
if (s(e).includes(c[d]))
|
|
8559
8679
|
return !1;
|
|
8560
8680
|
return !0;
|
|
8561
8681
|
}
|
|
@@ -8565,18 +8685,18 @@ class js {
|
|
|
8565
8685
|
if (!t)
|
|
8566
8686
|
return [...e];
|
|
8567
8687
|
t = t.toLowerCase();
|
|
8568
|
-
const o = "+", i = "-", r = t.toLowerCase().split(" ").filter((
|
|
8569
|
-
return e == null ? void 0 : e.filter((
|
|
8570
|
-
let
|
|
8688
|
+
const o = "+", i = "-", r = t.toLowerCase().split(" ").filter((a) => a !== o && a !== i && a !== ""), n = r.filter((a) => !a.startsWith(o) && !a.startsWith(i)), l = r.filter((a) => a.startsWith(o)).map((a) => a.replace(/\+/g, "")), c = r.filter((a) => a.startsWith(i)).map((a) => a.replace(/-/g, ""));
|
|
8689
|
+
return e == null ? void 0 : e.filter((a) => {
|
|
8690
|
+
let d = !n.length;
|
|
8571
8691
|
for (let u = 0; u < n.length; u++)
|
|
8572
|
-
(
|
|
8573
|
-
if (!
|
|
8692
|
+
(d || s(a).includes(n[u])) && (d = !0);
|
|
8693
|
+
if (!d)
|
|
8574
8694
|
return !1;
|
|
8575
8695
|
for (let u = 0; u < l.length; u++)
|
|
8576
|
-
if (!s(
|
|
8696
|
+
if (!s(a).includes(l[u]))
|
|
8577
8697
|
return !1;
|
|
8578
|
-
for (let u = 0; u <
|
|
8579
|
-
if (s(
|
|
8698
|
+
for (let u = 0; u < c.length; u++)
|
|
8699
|
+
if (s(a).includes(c[u]))
|
|
8580
8700
|
return !1;
|
|
8581
8701
|
return !0;
|
|
8582
8702
|
});
|
|
@@ -8592,19 +8712,19 @@ class js {
|
|
|
8592
8712
|
return t.join(" ").toLowerCase();
|
|
8593
8713
|
}
|
|
8594
8714
|
}
|
|
8595
|
-
class
|
|
8715
|
+
class js {
|
|
8596
8716
|
static bodyRenderer(e) {
|
|
8597
8717
|
return new k(void 0, e, void 0);
|
|
8598
8718
|
}
|
|
8599
8719
|
}
|
|
8600
|
-
class
|
|
8720
|
+
class Us {
|
|
8601
8721
|
constructor(e, t = !0, s = !1) {
|
|
8602
8722
|
this.property = e, this.skipCheckableCheck = t, this.readonly = s;
|
|
8603
8723
|
}
|
|
8604
8724
|
render(e, t, s, o, i, r, n) {
|
|
8605
8725
|
if (this.readonly || this.skipCheckableCheck || i.isRowCheckable(t)) {
|
|
8606
8726
|
n.addClass(e, "ge-table-row-checkbox-div");
|
|
8607
|
-
const l = i.getRowByIndex(t),
|
|
8727
|
+
const l = i.getRowByIndex(t), a = i.getValueByT(l, this.property) === !0 ? "checked" : "", d = this.readonly ? " readonly " : "";
|
|
8608
8728
|
if (n.addClass(e, "ge-padding-property-checkbox"), e.innerHTML = `
|
|
8609
8729
|
<input
|
|
8610
8730
|
type="checkbox"
|
|
@@ -8613,16 +8733,16 @@ class Ys {
|
|
|
8613
8733
|
data-col-index="${s}"
|
|
8614
8734
|
data-property-index="${this.property}"
|
|
8615
8735
|
data-input-type="checkbox"
|
|
8616
|
-
${
|
|
8617
|
-
${
|
|
8736
|
+
${a}
|
|
8737
|
+
${d}
|
|
8618
8738
|
class="ge-input-checkbox">`, !this.readonly) {
|
|
8619
8739
|
const u = e.querySelector(".ge-input-checkbox");
|
|
8620
|
-
u && u.addEventListener("click", (
|
|
8740
|
+
u && u.addEventListener("click", (p, f) => (l[this.property] = !l[this.property], !0));
|
|
8621
8741
|
}
|
|
8622
8742
|
}
|
|
8623
8743
|
}
|
|
8624
8744
|
}
|
|
8625
|
-
class
|
|
8745
|
+
class Ys {
|
|
8626
8746
|
render(e, t, s, o, i, r, n) {
|
|
8627
8747
|
r && (e.innerText = new Date(r).toISOString());
|
|
8628
8748
|
}
|
|
@@ -8650,29 +8770,29 @@ class Ks {
|
|
|
8650
8770
|
}
|
|
8651
8771
|
}
|
|
8652
8772
|
}
|
|
8653
|
-
class
|
|
8773
|
+
class Xs {
|
|
8654
8774
|
render(e, t, s, o, i, r, n) {
|
|
8655
8775
|
r && (e.innerText = new Date(r).toLocaleDateString());
|
|
8656
8776
|
}
|
|
8657
8777
|
}
|
|
8658
|
-
class
|
|
8778
|
+
class Js {
|
|
8659
8779
|
render(e, t, s, o, i, r, n) {
|
|
8660
8780
|
r === "male" || r === "m" ? e.innerText = "♂" : (r === "female" || r === "f") && (e.innerText = "♀");
|
|
8661
8781
|
}
|
|
8662
8782
|
}
|
|
8663
|
-
class
|
|
8783
|
+
class qs {
|
|
8664
8784
|
constructor(e = 100, t = !1) {
|
|
8665
8785
|
this.maxValue = e, this.labelVisible = t;
|
|
8666
8786
|
}
|
|
8667
8787
|
render(e, t, s, o, i, r, n) {
|
|
8668
8788
|
if (n.addClass(e, "ge-progressbar-div"), !isNaN(r)) {
|
|
8669
|
-
const
|
|
8789
|
+
const c = Number(r) * 100 / this.maxValue, a = this.labelVisible ? Math.round(c) + "%" : "";
|
|
8670
8790
|
e.innerHTML = `
|
|
8671
8791
|
<div class="ge-table-label-div"
|
|
8672
8792
|
data-row-index="${t}"
|
|
8673
8793
|
data-col-index="${s}"
|
|
8674
8794
|
data-area="${o}"
|
|
8675
|
-
title="${
|
|
8795
|
+
title="${a}"
|
|
8676
8796
|
style="position: relative; background: transparent; width: 100%; height: 100%;">
|
|
8677
8797
|
<div class="ge-table-progress-container"
|
|
8678
8798
|
style="width:100%;height:50%;padding:0;margin-top:6px;"
|
|
@@ -8680,7 +8800,7 @@ class Zs {
|
|
|
8680
8800
|
data-col-index="${s}"
|
|
8681
8801
|
data-area="${o}">
|
|
8682
8802
|
<div class="ge-table-progress-bar"
|
|
8683
|
-
style="width:${
|
|
8803
|
+
style="width:${c}%;height:100%;padding:0;margin:0;"
|
|
8684
8804
|
data-row-index="${t}"
|
|
8685
8805
|
data-col-index="${s}"
|
|
8686
8806
|
data-area="${o}">
|
|
@@ -8690,17 +8810,17 @@ class Zs {
|
|
|
8690
8810
|
}
|
|
8691
8811
|
}
|
|
8692
8812
|
}
|
|
8693
|
-
class
|
|
8813
|
+
class Zs {
|
|
8694
8814
|
render(e, t, s, o, i, r, n) {
|
|
8695
8815
|
r === "true" || r === !0 ? e.innerHTML = '<span class="ge-true-text-color">✅</span>' : r === "false" || r === !1 ? e.innerHTML = '<span class="ge-false-text-color">❌</span>' : e.innerText = "";
|
|
8696
8816
|
}
|
|
8697
8817
|
}
|
|
8698
|
-
class
|
|
8818
|
+
class Qs {
|
|
8699
8819
|
render(e, t, s, o, i, r, n) {
|
|
8700
8820
|
r && (e.innerText = new Date(r).toISOString().replace(/T/g, " ").replace(/\..*/g, ""));
|
|
8701
8821
|
}
|
|
8702
8822
|
}
|
|
8703
|
-
class
|
|
8823
|
+
class eo {
|
|
8704
8824
|
constructor(e = Number.MIN_SAFE_INTEGER, t = Number.MAX_SAFE_INTEGER) {
|
|
8705
8825
|
this.min = e, this.max = t;
|
|
8706
8826
|
}
|
|
@@ -8711,53 +8831,53 @@ class to {
|
|
|
8711
8831
|
</div>`, (typeof r == "string" || isNaN(r) || r < this.min || r > this.max) && n.addClass(e, "ge-cell-error"));
|
|
8712
8832
|
}
|
|
8713
8833
|
}
|
|
8714
|
-
class
|
|
8834
|
+
class to {
|
|
8715
8835
|
constructor(e) {
|
|
8716
8836
|
this.property = e;
|
|
8717
8837
|
}
|
|
8718
8838
|
render(e, t, s, o, i, r, n) {
|
|
8719
8839
|
n.addClass(e, "ge-star-rating-div");
|
|
8720
|
-
const l = i.getRowByIndex(t),
|
|
8721
|
-
if (!isNaN(
|
|
8722
|
-
const
|
|
8723
|
-
for (let u = 0; u <
|
|
8724
|
-
|
|
8725
|
-
const
|
|
8840
|
+
const l = i.getRowByIndex(t), c = +("" + i.getValueByT(l, this.property));
|
|
8841
|
+
if (!isNaN(c)) {
|
|
8842
|
+
const a = [];
|
|
8843
|
+
for (let u = 0; u < c; u++)
|
|
8844
|
+
a.push("★");
|
|
8845
|
+
const d = a.join(" ");
|
|
8726
8846
|
e.innerHTML = `
|
|
8727
8847
|
<div class="ge-table-label-div" data-row-index="${t}" data-col-index="${s}" data-area="${o}" style="position: relative; background: transparent; width: 100%; height: 100%;">
|
|
8728
|
-
<div class="ge-table-label" data-row-index="${t}" data-col-index="${s}" data-area="${o}">${
|
|
8848
|
+
<div class="ge-table-label" data-row-index="${t}" data-col-index="${s}" data-area="${o}">${d}</div>
|
|
8729
8849
|
</div>`;
|
|
8730
8850
|
}
|
|
8731
8851
|
}
|
|
8732
8852
|
}
|
|
8733
|
-
class
|
|
8853
|
+
class so {
|
|
8734
8854
|
render(e, t, s, o, i, r, n) {
|
|
8735
8855
|
if (r != null && r.length) {
|
|
8736
8856
|
const l = n.createElement("div");
|
|
8737
8857
|
n.addClass(l, "ge-table-label-div"), n.appendChild(e, l);
|
|
8738
|
-
const
|
|
8739
|
-
n.addClass(
|
|
8740
|
-
const
|
|
8741
|
-
n.appendChild(
|
|
8858
|
+
const c = n.createElement("div");
|
|
8859
|
+
n.addClass(c, "ge-table-label"), n.appendChild(l, c);
|
|
8860
|
+
const a = n.createText(r.join(", "));
|
|
8861
|
+
n.appendChild(c, a);
|
|
8742
8862
|
} else
|
|
8743
8863
|
e.innerText = "";
|
|
8744
8864
|
}
|
|
8745
8865
|
}
|
|
8746
|
-
class
|
|
8866
|
+
class oo {
|
|
8747
8867
|
constructor(e, t = 100, s = !1) {
|
|
8748
8868
|
this.property = e, this.maxValue = t, this.labelVisible = s;
|
|
8749
8869
|
}
|
|
8750
8870
|
render(e, t, s, o, i, r, n) {
|
|
8751
8871
|
n.addClass(e, "ge-star-rating-div");
|
|
8752
|
-
const l = i.getRowByIndex(t),
|
|
8753
|
-
if (!isNaN(
|
|
8754
|
-
const
|
|
8872
|
+
const l = i.getRowByIndex(t), c = +("" + i.getValueByT(l, this.property));
|
|
8873
|
+
if (!isNaN(c)) {
|
|
8874
|
+
const a = c * 100 / this.maxValue, d = this.labelVisible ? Math.round(a) + "%" : "";
|
|
8755
8875
|
e.innerHTML = `
|
|
8756
8876
|
<div class="ge-table-label-div"
|
|
8757
8877
|
data-row-index="${t}"
|
|
8758
8878
|
data-col-index="${s}"
|
|
8759
8879
|
data-area="${o}"
|
|
8760
|
-
title="${
|
|
8880
|
+
title="${d}"
|
|
8761
8881
|
style="position: relative; background: transparent; width: 100%; height: 100%;">
|
|
8762
8882
|
<div class="ge-table-progress-container"
|
|
8763
8883
|
style="width:100%;height:50%;padding:0;margin-top:6px;"
|
|
@@ -8765,7 +8885,7 @@ class io {
|
|
|
8765
8885
|
data-col-index="${s}"
|
|
8766
8886
|
data-area="${o}">
|
|
8767
8887
|
<div class="ge-table-progress-bar"
|
|
8768
|
-
style="width:${
|
|
8888
|
+
style="width:${a}%;height:100%;padding:0;margin:0;"
|
|
8769
8889
|
data-row-index="${t}"
|
|
8770
8890
|
data-col-index="${s}"
|
|
8771
8891
|
data-area="${o}">
|
|
@@ -8775,7 +8895,7 @@ class io {
|
|
|
8775
8895
|
}
|
|
8776
8896
|
}
|
|
8777
8897
|
}
|
|
8778
|
-
class
|
|
8898
|
+
class io {
|
|
8779
8899
|
render(e, t, s, o, i, r, n) {
|
|
8780
8900
|
if (r) {
|
|
8781
8901
|
e.innerHTML = `
|
|
@@ -8795,7 +8915,7 @@ class ro {
|
|
|
8795
8915
|
}
|
|
8796
8916
|
}
|
|
8797
8917
|
}
|
|
8798
|
-
class
|
|
8918
|
+
class je {
|
|
8799
8919
|
constructor(e, t, s, o, i, r) {
|
|
8800
8920
|
this.action = e, this.area = t, this.areaModel = s, this.rowIndex = o, this.columnIndex = i, this.id = r;
|
|
8801
8921
|
}
|
|
@@ -8805,16 +8925,16 @@ class $ {
|
|
|
8805
8925
|
this.action = e, this.label = t, this.icon = s, this.elementClass = o, this.elementType = i, this.enabled = r;
|
|
8806
8926
|
}
|
|
8807
8927
|
}
|
|
8808
|
-
class
|
|
8928
|
+
class Wt {
|
|
8809
8929
|
constructor(e, t) {
|
|
8810
8930
|
this.actionEventListener = e, this.crudActions = t;
|
|
8811
8931
|
}
|
|
8812
8932
|
render(e, t, s, o, i, r, n) {
|
|
8813
8933
|
n.addClass(e, "ge-table-row-action-div");
|
|
8814
|
-
const l = r,
|
|
8815
|
-
(
|
|
8934
|
+
const l = r, a = this.getCrudActions(r).map(
|
|
8935
|
+
(d) => d.elementType === "button" ? this.buildButtonHtml(d, o, t, s, l) : this.buildLinkHtml(d, o, t, s, l)
|
|
8816
8936
|
);
|
|
8817
|
-
e.innerHTML =
|
|
8937
|
+
e.innerHTML = a.join(""), this.addClickEventListeners(e, o, i);
|
|
8818
8938
|
}
|
|
8819
8939
|
buildButtonHtml(e, t, s, o, i) {
|
|
8820
8940
|
const r = e.enabled ? 'data-listen="click"' : "disabled";
|
|
@@ -8861,8 +8981,8 @@ class Nt {
|
|
|
8861
8981
|
createActionEvent(e, t) {
|
|
8862
8982
|
const s = e.getAttribute("data-area"), o = e.getAttribute("data-row-index"), i = e.getAttribute("data-col-index"), r = e.getAttribute("data-action") ?? "unknown", n = e.getAttribute("data-id") ?? "unknown";
|
|
8863
8983
|
if (s && o && i) {
|
|
8864
|
-
const l =
|
|
8865
|
-
return new
|
|
8984
|
+
const l = le(s), c = Number(o), a = Number(i);
|
|
8985
|
+
return new je(r, l, t, c, a, n);
|
|
8866
8986
|
}
|
|
8867
8987
|
return null;
|
|
8868
8988
|
}
|
|
@@ -8870,28 +8990,28 @@ class Nt {
|
|
|
8870
8990
|
return Array.isArray(e) && e.every((t) => t instanceof $) ? e : this.crudActions;
|
|
8871
8991
|
}
|
|
8872
8992
|
}
|
|
8873
|
-
const
|
|
8874
|
-
return
|
|
8993
|
+
const ro = function(h, e, t) {
|
|
8994
|
+
return h ? Number(h) : "";
|
|
8875
8995
|
};
|
|
8876
|
-
class
|
|
8996
|
+
class Ue {
|
|
8877
8997
|
constructor(e) {
|
|
8878
8998
|
this.options = e;
|
|
8879
8999
|
}
|
|
8880
9000
|
static create(e) {
|
|
8881
|
-
return new
|
|
8882
|
-
e.map((t) => new
|
|
9001
|
+
return new Ue(
|
|
9002
|
+
e.map((t) => new $t(t, t))
|
|
8883
9003
|
);
|
|
8884
9004
|
}
|
|
8885
9005
|
render(e, t, s, o, i, r, n) {
|
|
8886
9006
|
if (i.isEditable(t, s)) {
|
|
8887
9007
|
n.addClass(e, "ge-table-row-select-div");
|
|
8888
9008
|
const l = i.getValueAt(t, s);
|
|
8889
|
-
let
|
|
8890
|
-
for (let
|
|
8891
|
-
const u =
|
|
8892
|
-
|
|
9009
|
+
let c = [];
|
|
9010
|
+
for (let d of this.options) {
|
|
9011
|
+
const u = d.value === l ? " selected " : "";
|
|
9012
|
+
c.push(`<option value="${d.value}" ${u}>${d.label}</option>`);
|
|
8893
9013
|
}
|
|
8894
|
-
const
|
|
9014
|
+
const a = c.join("");
|
|
8895
9015
|
e.innerHTML = `
|
|
8896
9016
|
<select
|
|
8897
9017
|
autofocus
|
|
@@ -8901,11 +9021,11 @@ class je {
|
|
|
8901
9021
|
data-col-index="${s}"
|
|
8902
9022
|
data-input-type="text"
|
|
8903
9023
|
style="width:100%;height:100%;border:0;padding:0 0 0 8px;"
|
|
8904
|
-
class="ge-table-cell-editor-select">${
|
|
9024
|
+
class="ge-table-cell-editor-select">${a}</select>`;
|
|
8905
9025
|
}
|
|
8906
9026
|
}
|
|
8907
9027
|
}
|
|
8908
|
-
class
|
|
9028
|
+
class no extends Ce {
|
|
8909
9029
|
constructor(e) {
|
|
8910
9030
|
super("row", "multi"), this.model = e;
|
|
8911
9031
|
}
|
|
@@ -8988,39 +9108,39 @@ class lo extends Ce {
|
|
|
8988
9108
|
this.isSelected(e, 0) ? this.unselectRow(e) : this.selectRow(e);
|
|
8989
9109
|
}
|
|
8990
9110
|
}
|
|
8991
|
-
class
|
|
9111
|
+
class lo {
|
|
8992
9112
|
constructor(e, t, s) {
|
|
8993
9113
|
this.r = e, this.g = t, this.b = s;
|
|
8994
9114
|
}
|
|
8995
9115
|
}
|
|
8996
|
-
class
|
|
9116
|
+
class Le {
|
|
8997
9117
|
constructor(e, t, s, o) {
|
|
8998
9118
|
this.minValue = e, this.minColor = t, this.maxValue = s, this.maxColor = o;
|
|
8999
9119
|
}
|
|
9000
9120
|
}
|
|
9001
|
-
class
|
|
9121
|
+
class Q {
|
|
9002
9122
|
static normalize(e, t, s, o = 0, i = 1) {
|
|
9003
9123
|
return (e - t) / (s - t) * (i - o) + o;
|
|
9004
9124
|
}
|
|
9005
9125
|
static getTwoColorGradientRGB(e, t) {
|
|
9006
|
-
const s =
|
|
9007
|
-
return `rgb(${Math.round(n)}, ${Math.round(l)}, ${Math.round(
|
|
9126
|
+
const s = Q.normalize(e, t.minValue, t.maxValue, 0, 1), o = t.maxColor.r - t.minColor.r, i = t.maxColor.g - t.minColor.g, r = t.maxColor.b - t.minColor.b, n = o * s + t.minColor.r, l = i * s + t.minColor.g, c = r * s + t.minColor.b;
|
|
9127
|
+
return `rgb(${Math.round(n)}, ${Math.round(l)}, ${Math.round(c)})`;
|
|
9008
9128
|
}
|
|
9009
9129
|
static getThreeColorGradientRGB(e, t) {
|
|
9010
|
-
return e < t.middleValue ?
|
|
9130
|
+
return e < t.middleValue ? Q.getTwoColorGradientRGB(e, new Le(t.minValue, t.minColor, t.middleValue, t.middleColor)) : e > t.middleValue ? Q.getTwoColorGradientRGB(e, new Le(t.middleValue, t.middleColor, t.maxValue, t.maxColor)) : `rgb(${t.middleColor.r}, ${t.middleColor.g}, ${t.middleColor.b})`;
|
|
9011
9131
|
}
|
|
9012
9132
|
}
|
|
9013
|
-
class
|
|
9133
|
+
class ao {
|
|
9014
9134
|
constructor(e, t, s, o, i, r) {
|
|
9015
9135
|
this.minValue = e, this.minColor = t, this.middleValue = s, this.middleColor = o, this.maxValue = i, this.maxColor = r;
|
|
9016
9136
|
}
|
|
9017
9137
|
}
|
|
9018
|
-
class
|
|
9138
|
+
class Nt {
|
|
9019
9139
|
constructor(e = !0, t = !0, s = (r, n) => r * 10 + 10, o = 50, i = 450) {
|
|
9020
9140
|
this.autoCalc = e, this.takeHeaderLabelsIntoAccount = t, this.charCountToWidth = s, this.minWidth = o, this.maxWidth = i;
|
|
9021
9141
|
}
|
|
9022
9142
|
}
|
|
9023
|
-
class
|
|
9143
|
+
class Gt {
|
|
9024
9144
|
constructor(e) {
|
|
9025
9145
|
this.object = e;
|
|
9026
9146
|
}
|
|
@@ -9071,7 +9191,7 @@ class zt {
|
|
|
9071
9191
|
return s.join("");
|
|
9072
9192
|
}
|
|
9073
9193
|
}
|
|
9074
|
-
class
|
|
9194
|
+
class he {
|
|
9075
9195
|
constructor(e, t, s = "Edit Item") {
|
|
9076
9196
|
this.idKey = e, this.dialogTitle = s, this.object = { ...t };
|
|
9077
9197
|
}
|
|
@@ -9152,7 +9272,7 @@ class ce {
|
|
|
9152
9272
|
return e.replace(/\./g, " ");
|
|
9153
9273
|
}
|
|
9154
9274
|
}
|
|
9155
|
-
class
|
|
9275
|
+
class zt {
|
|
9156
9276
|
constructor() {
|
|
9157
9277
|
this.urls = {
|
|
9158
9278
|
list: {
|
|
@@ -9168,7 +9288,7 @@ class jt {
|
|
|
9168
9288
|
], this.tableActions = [
|
|
9169
9289
|
new $("CREATE", "Create", "", "", "button"),
|
|
9170
9290
|
new $("DELETE_SELECTED", "Delete Selected", "", "", "button")
|
|
9171
|
-
], this.autoAddActionColumn = !0, this.columnWidths = new
|
|
9291
|
+
], this.autoAddActionColumn = !0, this.columnWidths = new Nt(), this.calcFixedRightColumnCount = (e) => e > 6 ? 1 : 0, this.getHeadersInit = () => ({}), this.getIdKey = () => "id", this.getIdByObject = (e) => (this.getIdKey() ?? "id") in e ? e.id : e, this.fetchList = (e) => {
|
|
9172
9292
|
const t = e.getHeadersInit ? e.getHeadersInit() : {};
|
|
9173
9293
|
let s = e.urls.list.url, o = e.urls.list.method ?? "GET";
|
|
9174
9294
|
return fetch(s, {
|
|
@@ -9195,7 +9315,7 @@ class jt {
|
|
|
9195
9315
|
headers: o,
|
|
9196
9316
|
method: r,
|
|
9197
9317
|
body: JSON.stringify(s)
|
|
9198
|
-
}).then((
|
|
9318
|
+
}).then((c) => c.json());
|
|
9199
9319
|
}, this.createItem = (e, t) => {
|
|
9200
9320
|
var r, n;
|
|
9201
9321
|
const s = e.getHeadersInit ? e.getHeadersInit() : {};
|
|
@@ -9219,59 +9339,59 @@ class jt {
|
|
|
9219
9339
|
};
|
|
9220
9340
|
}
|
|
9221
9341
|
}
|
|
9222
|
-
class
|
|
9342
|
+
class co {
|
|
9223
9343
|
constructor() {
|
|
9224
|
-
this.crudOptions = new
|
|
9344
|
+
this.crudOptions = new zt(), this.listenActionEvent = (e) => {
|
|
9225
9345
|
};
|
|
9226
9346
|
}
|
|
9227
9347
|
createTableModel(e, t, s = (i) => {
|
|
9228
9348
|
}, o = (i) => {
|
|
9229
9349
|
}) {
|
|
9230
9350
|
this.crudOptions = e, this.listenActionEvent = o, e.fetchList(e).then((i) => {
|
|
9231
|
-
var r, n, l,
|
|
9351
|
+
var r, n, l, c;
|
|
9232
9352
|
if (t.rows = i, i != null && i.length) {
|
|
9233
|
-
const
|
|
9353
|
+
const a = (r = t.columnDefs) != null && r.length ? t.columnDefs.map((w) => w.property) : this.extractProperties(i[0]), d = new Ce("row", "multi"), u = () => d;
|
|
9234
9354
|
this.tableOptions = {
|
|
9235
|
-
...new
|
|
9355
|
+
...new q(),
|
|
9236
9356
|
...t.tableOptions,
|
|
9237
9357
|
hoverColumnVisible: !1,
|
|
9238
9358
|
getSelectionModel: u
|
|
9239
9359
|
};
|
|
9240
|
-
const
|
|
9360
|
+
const p = this.calcAutoColumnWidths(i, a), f = (n = t.columnDefs) != null && n.length ? t.columnDefs : a.map(((w, v) => new W(w, w.toUpperCase(), new b(p[v], "px"))));
|
|
9241
9361
|
if ((l = e == null ? void 0 : e.columnWidths) != null && l.autoCalc)
|
|
9242
|
-
for (let w = 0; w <
|
|
9243
|
-
const v =
|
|
9244
|
-
v.width = new
|
|
9362
|
+
for (let w = 0; w < f.length; w++) {
|
|
9363
|
+
const v = f[w];
|
|
9364
|
+
v.width = new b(p[w], "px");
|
|
9245
9365
|
}
|
|
9246
9366
|
if (e.autoAddActionColumn) {
|
|
9247
9367
|
let w = new W(
|
|
9248
9368
|
"id",
|
|
9249
9369
|
"Actions",
|
|
9250
|
-
|
|
9370
|
+
kt,
|
|
9251
9371
|
new k(["ge-table-text-align-left"], ["ge-table-text-align-left ge-table-actions-cell"], void 0)
|
|
9252
9372
|
);
|
|
9253
9373
|
w.rendererMap = new k(
|
|
9254
9374
|
void 0,
|
|
9255
|
-
new
|
|
9375
|
+
new Wt(this, e.singleRowActions),
|
|
9256
9376
|
void 0
|
|
9257
|
-
),
|
|
9377
|
+
), f.push(w);
|
|
9258
9378
|
}
|
|
9259
|
-
const m = 0,
|
|
9379
|
+
const m = 0, g = e.calcFixedRightColumnCount(f.length);
|
|
9260
9380
|
this.tableModel = H.buildByTypedRowsParam({
|
|
9261
9381
|
rows: i,
|
|
9262
|
-
columnDefs:
|
|
9382
|
+
columnDefs: f,
|
|
9263
9383
|
tableOptions: this.tableOptions,
|
|
9264
9384
|
fixedLeftColumnCount: m,
|
|
9265
|
-
fixedRightColumnCount:
|
|
9266
|
-
}), this.tableModel.getSelectionModel = u, this.bodyModel = (
|
|
9267
|
-
const
|
|
9268
|
-
s(
|
|
9385
|
+
fixedRightColumnCount: g
|
|
9386
|
+
}), this.tableModel.getSelectionModel = u, this.bodyModel = (c = this.tableModel) == null ? void 0 : c.getBodyModel();
|
|
9387
|
+
const y = new Vt(this.tableModel, this.tableOptions);
|
|
9388
|
+
s(y);
|
|
9269
9389
|
}
|
|
9270
9390
|
});
|
|
9271
9391
|
}
|
|
9272
9392
|
openDialogForCreate() {
|
|
9273
9393
|
if (this.bodyModel) {
|
|
9274
|
-
const e = new
|
|
9394
|
+
const e = new je("CREATE", "body", this.bodyModel, -1, -1, null);
|
|
9275
9395
|
this.onActionEvent(e);
|
|
9276
9396
|
}
|
|
9277
9397
|
}
|
|
@@ -9279,32 +9399,32 @@ class ho {
|
|
|
9279
9399
|
var t, s, o, i;
|
|
9280
9400
|
if (this.listenActionEvent && this.listenActionEvent(e), e.action === "VIEW") {
|
|
9281
9401
|
let r = e.id;
|
|
9282
|
-
(t = this.crudOptions) == null || t.fetchItem(this.crudOptions, r).then((n) => (console.info(n), new
|
|
9402
|
+
(t = this.crudOptions) == null || t.fetchItem(this.crudOptions, r).then((n) => (console.info(n), new Gt(n).openDialog(), n));
|
|
9283
9403
|
} else if (e.action === "EDIT") {
|
|
9284
9404
|
let r = e.id;
|
|
9285
9405
|
const n = this.crudOptions.getIdKey() ?? "id";
|
|
9286
|
-
(s = this.crudOptions) == null || s.fetchItem(this.crudOptions, r).then((l) => (console.info(l), new
|
|
9406
|
+
(s = this.crudOptions) == null || s.fetchItem(this.crudOptions, r).then((l) => (console.info(l), new he(
|
|
9287
9407
|
n,
|
|
9288
9408
|
l
|
|
9289
|
-
).openDialog((
|
|
9290
|
-
console.info(
|
|
9409
|
+
).openDialog((c) => {
|
|
9410
|
+
console.info(c), this.crudOptions.updateItem(this.crudOptions, r, c);
|
|
9291
9411
|
}), l));
|
|
9292
9412
|
} else if (e.action === "CLONE") {
|
|
9293
9413
|
let r = e.id;
|
|
9294
9414
|
const n = this.crudOptions.getIdKey() ?? "id";
|
|
9295
9415
|
(o = this.crudOptions) == null || o.fetchItem(this.crudOptions, r).then((l) => {
|
|
9296
|
-
const
|
|
9297
|
-
return new
|
|
9416
|
+
const c = JSON.parse(JSON.stringify(l));
|
|
9417
|
+
return new he(
|
|
9298
9418
|
n,
|
|
9299
|
-
|
|
9419
|
+
c,
|
|
9300
9420
|
"Clone Item"
|
|
9301
|
-
).openDialog((
|
|
9302
|
-
console.info(
|
|
9303
|
-
}),
|
|
9421
|
+
).openDialog((a) => {
|
|
9422
|
+
console.info(a), this.crudOptions.createItem(this.crudOptions, a);
|
|
9423
|
+
}), c;
|
|
9304
9424
|
});
|
|
9305
9425
|
} else if (e.action === "CREATE") {
|
|
9306
9426
|
const r = this.crudOptions.getIdKey() ?? "id", n = JSON.parse(JSON.stringify(this.crudOptions.getEmptyItem()));
|
|
9307
|
-
return new
|
|
9427
|
+
return new he(
|
|
9308
9428
|
r,
|
|
9309
9429
|
n,
|
|
9310
9430
|
"Create Item"
|
|
@@ -9314,32 +9434,32 @@ class ho {
|
|
|
9314
9434
|
} else if (e.action === "DELETE") {
|
|
9315
9435
|
let r = e.id;
|
|
9316
9436
|
(i = this.crudOptions) == null || i.deleteItem(this.crudOptions, r).then((n) => {
|
|
9317
|
-
var l,
|
|
9318
|
-
return (l = this.bodyModel) == null || l.filterRowsByPredict((
|
|
9437
|
+
var l, c, a, d, u;
|
|
9438
|
+
return (l = this.bodyModel) == null || l.filterRowsByPredict((p) => p.id != r), (a = (c = this.tableModel) == null ? void 0 : c.getTableScope()) == null || a.clearSelection(!0), (u = (d = this.tableModel) == null ? void 0 : d.getTableScope()) == null || u.repaintHard(), n;
|
|
9319
9439
|
});
|
|
9320
9440
|
}
|
|
9321
9441
|
}
|
|
9322
9442
|
calcAutoColumnWidths(e, t, s = t) {
|
|
9323
|
-
var
|
|
9443
|
+
var c;
|
|
9324
9444
|
const o = t.length;
|
|
9325
|
-
if (!((
|
|
9445
|
+
if (!((c = this.crudOptions.columnWidths) != null && c.autoCalc))
|
|
9326
9446
|
return new Array(o).fill(200);
|
|
9327
9447
|
const i = e.length ?? 0, r = new Array(o).fill(0);
|
|
9328
|
-
for (let
|
|
9329
|
-
for (let
|
|
9330
|
-
const u = t[
|
|
9331
|
-
|
|
9448
|
+
for (let a = 0; a < i; a++)
|
|
9449
|
+
for (let d = 0; d < o; d++) {
|
|
9450
|
+
const u = t[d], p = this.getValueByT(e[a], u), f = (p == null ? void 0 : p.toString().length) || 0;
|
|
9451
|
+
f > r[d] && (r[d] = f);
|
|
9332
9452
|
}
|
|
9333
9453
|
if (this.crudOptions.columnWidths.takeHeaderLabelsIntoAccount)
|
|
9334
|
-
for (let
|
|
9335
|
-
const
|
|
9336
|
-
|
|
9454
|
+
for (let a = 0; a < o; a++) {
|
|
9455
|
+
const d = s[a].length || 0;
|
|
9456
|
+
d > r[a] && (r[a] = d);
|
|
9337
9457
|
}
|
|
9338
9458
|
const n = this.crudOptions.columnWidths.minWidth, l = this.crudOptions.columnWidths.maxWidth;
|
|
9339
|
-
return r.map((
|
|
9459
|
+
return r.map((a, d) => Math.min(
|
|
9340
9460
|
l,
|
|
9341
9461
|
Math.max(
|
|
9342
|
-
this.crudOptions.columnWidths.charCountToWidth(
|
|
9462
|
+
this.crudOptions.columnWidths.charCountToWidth(a, d),
|
|
9343
9463
|
n
|
|
9344
9464
|
)
|
|
9345
9465
|
));
|
|
@@ -9360,197 +9480,197 @@ class ho {
|
|
|
9360
9480
|
return s;
|
|
9361
9481
|
}
|
|
9362
9482
|
}
|
|
9363
|
-
class
|
|
9483
|
+
class ho {
|
|
9364
9484
|
constructor(e, t) {
|
|
9365
9485
|
this.method = e, this.url = t;
|
|
9366
9486
|
}
|
|
9367
9487
|
}
|
|
9368
9488
|
export {
|
|
9369
|
-
|
|
9370
|
-
|
|
9371
|
-
|
|
9372
|
-
|
|
9373
|
-
|
|
9374
|
-
|
|
9489
|
+
we as AbstractAreaModel,
|
|
9490
|
+
je as ActionEvent,
|
|
9491
|
+
Wt as ActionsCellRenderer,
|
|
9492
|
+
Be as AnyPropertyType,
|
|
9493
|
+
Hs as AreaMapFactory,
|
|
9494
|
+
Ns as AreaModel,
|
|
9375
9495
|
F as AreaModelArrayOfArrays,
|
|
9376
|
-
|
|
9496
|
+
Gs as AreaModelCellGroups,
|
|
9377
9497
|
P as AreaModelHidden,
|
|
9378
9498
|
_ as AreaModelObjectArray,
|
|
9379
|
-
|
|
9380
|
-
|
|
9499
|
+
Pe as AreaModelObjectArrayWithColumndefs,
|
|
9500
|
+
oe as AreaModelTree,
|
|
9381
9501
|
k as AreaObjectMap,
|
|
9382
9502
|
B as ArrayPropertyType,
|
|
9383
|
-
|
|
9384
|
-
|
|
9385
|
-
|
|
9386
|
-
|
|
9387
|
-
|
|
9388
|
-
|
|
9503
|
+
Lt as AutoRestoreOptions,
|
|
9504
|
+
Ut as AvoidDoubleExecution,
|
|
9505
|
+
Ze as BooleanPropertyType,
|
|
9506
|
+
Ht as CellGroup,
|
|
9507
|
+
Bt as CellGroupExt,
|
|
9508
|
+
fe as CellGroupExtCellRenderer,
|
|
9389
9509
|
M as CellRange,
|
|
9390
|
-
|
|
9391
|
-
|
|
9392
|
-
|
|
9393
|
-
|
|
9394
|
-
|
|
9395
|
-
|
|
9396
|
-
|
|
9397
|
-
|
|
9398
|
-
|
|
9510
|
+
T as CellgroupFactory,
|
|
9511
|
+
Us as CheckboxBooleanPropertyCellRenderer,
|
|
9512
|
+
_e as CheckboxCellRenderer,
|
|
9513
|
+
$s as CheckboxColumnDef,
|
|
9514
|
+
Ft as CheckboxModel,
|
|
9515
|
+
ks as ChunkData,
|
|
9516
|
+
pt as ColAndRowspanModel,
|
|
9517
|
+
ct as CollapsedExpandedData,
|
|
9518
|
+
lo as ColorRgb,
|
|
9399
9519
|
W as ColumnDef,
|
|
9400
|
-
|
|
9401
|
-
|
|
9402
|
-
|
|
9403
|
-
|
|
9404
|
-
|
|
9520
|
+
Yt as ColumnDefGenerator,
|
|
9521
|
+
Nt as ColumnWidths,
|
|
9522
|
+
it as ConvenienceDomService,
|
|
9523
|
+
se as CopyService,
|
|
9524
|
+
Pt as CoverGridBodyModel,
|
|
9405
9525
|
Es as CoverGridFactory,
|
|
9406
|
-
|
|
9526
|
+
_t as CoverGridTableModel,
|
|
9407
9527
|
$ as CrudAction,
|
|
9408
|
-
|
|
9409
|
-
|
|
9410
|
-
|
|
9411
|
-
|
|
9412
|
-
|
|
9528
|
+
he as CrudObjectEdit,
|
|
9529
|
+
Gt as CrudObjectView,
|
|
9530
|
+
zt as CrudOptions,
|
|
9531
|
+
co as CrudTableModelFactory,
|
|
9532
|
+
ke as CssVars,
|
|
9413
9533
|
Ks as DateToIntlDDMMYYYYCellRenderer,
|
|
9414
|
-
|
|
9415
|
-
|
|
9416
|
-
|
|
9417
|
-
|
|
9418
|
-
|
|
9419
|
-
|
|
9420
|
-
|
|
9421
|
-
|
|
9422
|
-
|
|
9423
|
-
|
|
9424
|
-
|
|
9425
|
-
|
|
9426
|
-
|
|
9427
|
-
|
|
9428
|
-
|
|
9429
|
-
|
|
9430
|
-
|
|
9534
|
+
Ys as DateToIsoCellRenderer,
|
|
9535
|
+
Xs as DateToLocaleDateCellRenderer,
|
|
9536
|
+
Qs as DateToTecCellRenderer,
|
|
9537
|
+
K as DefaultRowHeights,
|
|
9538
|
+
te as EleScope,
|
|
9539
|
+
pe as EventAdapter,
|
|
9540
|
+
Jt as EventCheckboxChangedHandler,
|
|
9541
|
+
It as ExcelService,
|
|
9542
|
+
Tt as FalseFn,
|
|
9543
|
+
ut as FocusModel,
|
|
9544
|
+
mt as GeCellIndices,
|
|
9545
|
+
Q as GeCssColorUtil,
|
|
9546
|
+
zs as GeFilterService,
|
|
9547
|
+
Bs as GeKeyEvent,
|
|
9548
|
+
ve as GeModelChangeEvent,
|
|
9549
|
+
ye as GeMouseEvent,
|
|
9550
|
+
bt as GeScrollEvent,
|
|
9431
9551
|
V as GeoData,
|
|
9432
|
-
|
|
9552
|
+
Re as HeaderGroupOptions,
|
|
9433
9553
|
O as Icon,
|
|
9434
|
-
|
|
9435
|
-
|
|
9436
|
-
|
|
9437
|
-
|
|
9554
|
+
Ds as IndexAndPx,
|
|
9555
|
+
Rt as InputCellRenderer,
|
|
9556
|
+
ft as InputHandler,
|
|
9557
|
+
Ae as JsonService,
|
|
9438
9558
|
G as LicenseManager,
|
|
9439
|
-
|
|
9440
|
-
|
|
9441
|
-
|
|
9442
|
-
|
|
9559
|
+
Js as MaleFemaleToIconCellRenderer,
|
|
9560
|
+
nt as MouseHandler,
|
|
9561
|
+
rt as MouseTargetData,
|
|
9562
|
+
no as MultiRowsSelectionModel,
|
|
9443
9563
|
Xe as NullPropertyType,
|
|
9444
|
-
|
|
9445
|
-
|
|
9446
|
-
|
|
9564
|
+
qs as NumberCellProgressBarCellRenderer,
|
|
9565
|
+
eo as NumberCellRenderer,
|
|
9566
|
+
qe as NumberPropertyType,
|
|
9447
9567
|
L as ObjectPropertyType,
|
|
9448
|
-
|
|
9449
|
-
|
|
9450
|
-
|
|
9451
|
-
|
|
9452
|
-
|
|
9453
|
-
|
|
9454
|
-
|
|
9455
|
-
|
|
9568
|
+
xt as OsxShortcutActionIdMapping,
|
|
9569
|
+
Ve as PROPERTY_TYPE_KEY_ANY,
|
|
9570
|
+
He as PROPERTY_TYPE_KEY_ARRAY,
|
|
9571
|
+
be as PROPERTY_TYPE_KEY_BOOLEAN,
|
|
9572
|
+
Oe as PROPERTY_TYPE_KEY_NULL,
|
|
9573
|
+
me as PROPERTY_TYPE_KEY_NUMBER,
|
|
9574
|
+
J as PROPERTY_TYPE_KEY_OBJECT,
|
|
9575
|
+
$e as PROPERTY_TYPE_KEY_STRING,
|
|
9456
9576
|
X as PROPERTY_TYPE_KEY_UNDEFINED,
|
|
9457
|
-
|
|
9458
|
-
|
|
9459
|
-
|
|
9460
|
-
|
|
9577
|
+
ge as Padding,
|
|
9578
|
+
io as PositiveAndNegativeNumberRenderer,
|
|
9579
|
+
oo as ProgressBarCellRenderer,
|
|
9580
|
+
We as PropertyItem,
|
|
9461
9581
|
Kt as PropertyTypeService,
|
|
9462
|
-
|
|
9463
|
-
|
|
9464
|
-
|
|
9465
|
-
|
|
9466
|
-
|
|
9467
|
-
|
|
9582
|
+
gt as RenderScope,
|
|
9583
|
+
js as Renderer,
|
|
9584
|
+
Ot as RequestChunk,
|
|
9585
|
+
At as ResizeHandler,
|
|
9586
|
+
Xt as SchemeGenerator,
|
|
9587
|
+
Ue as SelectCellRenderer,
|
|
9468
9588
|
Ce as SelectionModel,
|
|
9469
|
-
|
|
9470
|
-
|
|
9471
|
-
|
|
9472
|
-
|
|
9473
|
-
|
|
9474
|
-
|
|
9475
|
-
|
|
9476
|
-
|
|
9477
|
-
|
|
9478
|
-
|
|
9479
|
-
|
|
9480
|
-
|
|
9481
|
-
|
|
9482
|
-
|
|
9589
|
+
yt as SelectionService,
|
|
9590
|
+
Ct as ShortcutService,
|
|
9591
|
+
so as SimpleArrayCellRenderer,
|
|
9592
|
+
vt as SimpleDomService,
|
|
9593
|
+
b as Size,
|
|
9594
|
+
Ie as SortItem,
|
|
9595
|
+
Ge as SortedOptions,
|
|
9596
|
+
to as StarRatingCellRenderer,
|
|
9597
|
+
dt as StoreStateCollapsedExpandService,
|
|
9598
|
+
at as StoreStateScrollPosService,
|
|
9599
|
+
ht as StoreStateSortingService,
|
|
9600
|
+
Je as StringPropertyType,
|
|
9601
|
+
lt as TableApi,
|
|
9602
|
+
Ws as TableCellUpdateEvent,
|
|
9483
9603
|
H as TableFactory,
|
|
9484
|
-
|
|
9485
|
-
|
|
9486
|
-
|
|
9487
|
-
|
|
9488
|
-
|
|
9489
|
-
|
|
9490
|
-
|
|
9491
|
-
|
|
9492
|
-
|
|
9493
|
-
|
|
9494
|
-
|
|
9604
|
+
de as TableModel,
|
|
9605
|
+
Vt as TableModelAndOptions,
|
|
9606
|
+
q as TableOptions,
|
|
9607
|
+
ze as TableScope,
|
|
9608
|
+
ao as ThreeColorGradientArg,
|
|
9609
|
+
Fe as TreeCheckboxModel,
|
|
9610
|
+
Y as TreeFactory,
|
|
9611
|
+
Ne as TreeOptions,
|
|
9612
|
+
ce as TreeRow,
|
|
9613
|
+
Dt as TreeRowService,
|
|
9614
|
+
Zs as TrueFalseCellRenderer,
|
|
9495
9615
|
Et as TrueFn,
|
|
9496
|
-
|
|
9497
|
-
|
|
9498
|
-
|
|
9499
|
-
|
|
9500
|
-
|
|
9501
|
-
|
|
9502
|
-
|
|
9503
|
-
|
|
9504
|
-
|
|
9505
|
-
|
|
9506
|
-
|
|
9507
|
-
|
|
9508
|
-
|
|
9509
|
-
|
|
9510
|
-
|
|
9511
|
-
|
|
9512
|
-
|
|
9513
|
-
|
|
9514
|
-
|
|
9515
|
-
|
|
9516
|
-
|
|
9517
|
-
|
|
9518
|
-
|
|
9519
|
-
|
|
9616
|
+
Le as TwoColorGradientArg,
|
|
9617
|
+
ee as UNIMPORTANT_TYPES,
|
|
9618
|
+
ae as UndefinedPropertyType,
|
|
9619
|
+
ho as UrlInfo,
|
|
9620
|
+
Qe as ValueInfo,
|
|
9621
|
+
$t as ValueLabel,
|
|
9622
|
+
wt as WindowsShortcutActionIdMapping,
|
|
9623
|
+
Ts as actionIds,
|
|
9624
|
+
Vs as allCenter,
|
|
9625
|
+
Ls as allLeft,
|
|
9626
|
+
Os as allRight,
|
|
9627
|
+
Ps as bodyCenter,
|
|
9628
|
+
Fs as bodyLeft,
|
|
9629
|
+
_s as bodyRight,
|
|
9630
|
+
Ee as createHarmonizedShortcutByKeyboardEvent,
|
|
9631
|
+
Ke as debounce,
|
|
9632
|
+
ro as editInputPipeForNumber,
|
|
9633
|
+
Me as entitySuffix,
|
|
9634
|
+
st as firstLetterUppercase,
|
|
9635
|
+
le as getAreaIdentByString,
|
|
9636
|
+
et as getEntityName,
|
|
9637
|
+
St as harmonizeShortcut,
|
|
9638
|
+
ue as isAreaModelTree,
|
|
9639
|
+
ot as isCheckboxColumnDef,
|
|
9520
9640
|
j as isTreeRow,
|
|
9521
|
-
|
|
9522
|
-
|
|
9523
|
-
|
|
9524
|
-
|
|
9525
|
-
|
|
9526
|
-
|
|
9527
|
-
|
|
9528
|
-
|
|
9529
|
-
|
|
9530
|
-
|
|
9531
|
-
|
|
9532
|
-
|
|
9533
|
-
|
|
9534
|
-
|
|
9535
|
-
|
|
9536
|
-
|
|
9537
|
-
|
|
9538
|
-
|
|
9539
|
-
|
|
9540
|
-
|
|
9541
|
-
|
|
9542
|
-
|
|
9543
|
-
|
|
9544
|
-
|
|
9545
|
-
|
|
9546
|
-
|
|
9547
|
-
|
|
9548
|
-
|
|
9549
|
-
|
|
9550
|
-
|
|
9551
|
-
|
|
9552
|
-
|
|
9553
|
-
|
|
9554
|
-
|
|
9555
|
-
|
|
9641
|
+
Is as px0,
|
|
9642
|
+
Ms as px10,
|
|
9643
|
+
bs as px100,
|
|
9644
|
+
ms as px110,
|
|
9645
|
+
fs as px120,
|
|
9646
|
+
gs as px130,
|
|
9647
|
+
ps as px140,
|
|
9648
|
+
us as px150,
|
|
9649
|
+
hs as px160,
|
|
9650
|
+
ds as px170,
|
|
9651
|
+
cs as px180,
|
|
9652
|
+
as as px190,
|
|
9653
|
+
As as px20,
|
|
9654
|
+
De as px200,
|
|
9655
|
+
ls as px210,
|
|
9656
|
+
ns as px220,
|
|
9657
|
+
rs as px230,
|
|
9658
|
+
is as px240,
|
|
9659
|
+
os as px250,
|
|
9660
|
+
ss as px260,
|
|
9661
|
+
ts as px270,
|
|
9662
|
+
es as px280,
|
|
9663
|
+
Qt as px290,
|
|
9664
|
+
Rs as px30,
|
|
9665
|
+
kt as px300,
|
|
9666
|
+
vs as px40,
|
|
9667
|
+
Zt as px400,
|
|
9668
|
+
Cs as px50,
|
|
9669
|
+
qt as px500,
|
|
9670
|
+
Ss as px60,
|
|
9671
|
+
xs as px70,
|
|
9672
|
+
ws as px80,
|
|
9673
|
+
ys as px90,
|
|
9674
|
+
jt as throttle,
|
|
9675
|
+
tt as trimArraySuffixes
|
|
9556
9676
|
};
|