@guiexpert/react-table 18.0.12 → 18.0.13

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.
Files changed (3) hide show
  1. package/index.cjs +25 -9
  2. package/index.js +592 -459
  3. package/package.json +2 -2
package/index.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import { jsx as se } from "react/jsx-runtime";
2
2
  import { useRef as oe, useEffect as ie } from "react";
3
- import re from "react-dom";
4
- function le(g, e = 500) {
3
+ import ae from "react-dom";
4
+ function re(f, e = 500) {
5
5
  let t = null;
6
6
  return function(...s) {
7
7
  t && window.clearTimeout(t), t = window.setTimeout(() => {
8
- g.apply(this, s), t = null;
8
+ f.apply(this, s), t = null;
9
9
  }, e);
10
10
  };
11
11
  }
@@ -34,18 +34,18 @@ class k {
34
34
  }
35
35
  }
36
36
  }
37
- function H(g) {
38
- return g && g.type === "TreeRow";
37
+ function H(f) {
38
+ return f && f.type === "TreeRow";
39
39
  }
40
- function P(g) {
41
- return g && g.type === "AreaModelTree";
40
+ function W(f) {
41
+ return f && f.type === "AreaModelTree";
42
42
  }
43
- class z {
44
- constructor(e = -1, t = -1, s = -1, o = -1, i, r, a, l = 0, n = 0, d = 0, h = "") {
45
- this.rowIndex = e, this.rowTop = t, this.columnIndex = s, this.columnLeft = o, this.areaIdent = i, this.sideIdent = r, this.originalEvent = a, this.clickCount = l, this.draggingX = n, this.draggingY = d, this.action = h;
43
+ class N {
44
+ constructor(e = -1, t = -1, s = -1, o = -1, i, a, l, r = 0, n = 0, c = 0, h = "") {
45
+ this.rowIndex = e, this.rowTop = t, this.columnIndex = s, this.columnLeft = o, this.areaIdent = i, this.sideIdent = a, this.originalEvent = l, this.clickCount = r, this.draggingX = n, this.draggingY = c, this.action = h;
46
46
  }
47
47
  clone() {
48
- return new z(
48
+ return new N(
49
49
  this.rowIndex,
50
50
  this.rowTop,
51
51
  this.columnIndex,
@@ -86,12 +86,12 @@ class J {
86
86
  this.arrowExpanded = e, this.arrowCollapsed = t, this.arrowPlaceholder = s, this.arrowExpandCollapseAll = o;
87
87
  }
88
88
  }
89
- class Q {
89
+ class Z {
90
90
  constructor(e = new D("↑", "", ["ge-header-sorted-asc"]), t = new D("↓", "", ["ge-header-sorted-desc"]), s = new D("↑", "color:transparent;", [])) {
91
91
  this.iconAsc = e, this.iconDesc = t, this.iconPlaceholder = s;
92
92
  }
93
93
  }
94
- class ae {
94
+ class le {
95
95
  constructor(e) {
96
96
  this.domService = e;
97
97
  }
@@ -164,83 +164,83 @@ class ae {
164
164
  const s = this.domService.createElement("div");
165
165
  return this.addClass(e, s), this.domService.appendChild(t, s), s;
166
166
  }
167
- addRowDiv(e, t, s = -1, o, i, r = "") {
168
- const a = t.index ?? -1, l = this.getDivOrCreateDiv(a, e);
169
- if (this.domService.addClass(l, "ge-table-row-div"), this.domService.addClass(l, `ge-table-row-div-${t.index}`), o === "body" && i === "center") {
167
+ addRowDiv(e, t, s = -1, o, i, a = "") {
168
+ const l = t.index ?? -1, r = this.getDivOrCreateDiv(l, e);
169
+ if (this.domService.addClass(r, "ge-table-row-div"), this.domService.addClass(r, `ge-table-row-div-${t.index}`), o === "body" && i === "center") {
170
170
  const n = ((t == null ? void 0 : t.index) ?? 0) % 2 === 0 ? "even" : "odd";
171
- this.domService.addClass(l, `ge-table-row-${n}`);
171
+ this.domService.addClass(r, `ge-table-row-${n}`);
172
172
  }
173
- 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) {
174
- const n = this.domService.createText(r);
175
- this.domService.appendChild(l, n);
173
+ if (this.domService.setStyle(r, "display", "clip"), this.domService.setStyle(r, "position", "absolute"), this.domService.setStyle(r, "left", `${t.left}px`), this.domService.setStyle(r, "top", `${t.top}px`), this.domService.setStyle(r, "width", `${t.width}px`), this.domService.setStyle(r, "height", `${t.height}px`), this.domService.setAttribute(r, "data-row-index", `${s}`), this.domService.setAttribute(r, "data-area", `${o}`), a) {
174
+ const n = this.domService.createText(a);
175
+ this.domService.appendChild(r, n);
176
176
  }
177
- return this.domService.appendChild(e.child, l), l;
177
+ return this.domService.appendChild(e.child, r), r;
178
178
  }
179
179
  addColumnDiv(e) {
180
- const { parent: t, geo: s, rowIndex: o = -1, columnIndex: i = -1, areaIdent: r, sideIdent: a, text: l = "", treeArrow: n, tableOptions: d, checkedType: h = void 0, sortState: c } = e, f = d == null ? void 0 : d.treeOptions, u = d == null ? void 0 : d.showCheckboxWihoutExtraColumn, S = this.domService.createElement("div");
181
- this.domService.addClass(S, "ge-table-col-div"), u && this.domService.addClass(S, "ge-with-checkbox"), this.domService.addClass(S, `ge-table-col-div-${s.index}`), this.domService.setAttribute(S, "data-col-index", `${s.index}`), this.domService.setAttribute(S, "data-row-index", `${o}`), this.domService.setAttribute(S, "data-area", `${r}`);
182
- const b = ((s == null ? void 0 : s.index) ?? 0) % 2 === 0 ? "even" : "odd";
183
- if (r === "body" && a === "center" && this.domService.addClass(S, `ge-table-column-${b}`), this.domService.setStyle(S, "display", "clip"), this.domService.setStyle(S, "position", "absolute"), this.domService.setStyle(S, "left", `${s.left}px`), this.domService.setStyle(S, "top", `${s.top}px`), this.domService.setStyle(S, "width", `${s.width}px`), this.domService.setStyle(S, "height", `${s.height}px`), n && n !== "none" && (this.domService.addClass(S, "ge-table-col-tree"), this.addArrowDiv(S, n, f, o, i, r)), u && i === 0 && h && this.addCheckboxToDiv(S, h, r, o), l) {
184
- const p = n !== "none" && i === 0;
185
- this.addLabelDiv(S, l, p, o, i, r);
180
+ const { parent: t, geo: s, rowIndex: o = -1, columnIndex: i = -1, areaIdent: a, sideIdent: l, text: r = "", treeArrow: n, tableOptions: c, checkedType: h = void 0, sortState: d } = e, m = c == null ? void 0 : c.treeOptions, p = c == null ? void 0 : c.showCheckboxWihoutExtraColumn, b = this.domService.createElement("div");
181
+ this.domService.addClass(b, "ge-table-col-div"), p && this.domService.addClass(b, "ge-with-checkbox"), this.domService.addClass(b, `ge-table-col-div-${s.index}`), this.domService.setAttribute(b, "data-col-index", `${s.index}`), this.domService.setAttribute(b, "data-row-index", `${o}`), this.domService.setAttribute(b, "data-area", `${a}`);
182
+ const g = ((s == null ? void 0 : s.index) ?? 0) % 2 === 0 ? "even" : "odd";
183
+ if (a === "body" && l === "center" && this.domService.addClass(b, `ge-table-column-${g}`), this.domService.setStyle(b, "display", "clip"), this.domService.setStyle(b, "position", "absolute"), this.domService.setStyle(b, "left", `${s.left}px`), this.domService.setStyle(b, "top", `${s.top}px`), this.domService.setStyle(b, "width", `${s.width}px`), this.domService.setStyle(b, "height", `${s.height}px`), n && n !== "none" && (this.domService.addClass(b, "ge-table-col-tree"), this.addArrowDiv(b, n, m, o, i, a)), p && i === 0 && h && this.addCheckboxToDiv(b, h, a, o), r) {
184
+ const u = n !== "none" && i === 0;
185
+ this.addLabelDiv(b, r, u, o, i, a);
186
186
  }
187
- return c && this.addSortedIcon(S, c, d == null ? void 0 : d.sortedOptions, i), this.domService.appendChild(t, S), S;
187
+ return d && this.addSortedIcon(b, d, c == null ? void 0 : c.sortedOptions, i), this.domService.appendChild(t, b), b;
188
188
  }
189
189
  addCheckboxToDiv(e, t, s, o) {
190
- const i = this.domService.createElement("div"), r = t === "full" ? "checked" : "";
190
+ const i = this.domService.createElement("div"), a = t === "full" ? "checked" : "";
191
191
  return i.innerHTML = `
192
192
  <input
193
193
  type="checkbox"
194
194
  data-area="${s}"
195
195
  data-row-index="${o}"
196
196
  data-input-type="checkbox"
197
- ${r}
197
+ ${a}
198
198
  class="ge-table-row-checkbox"> `, this.domService.setStyle(i, "display", "inline"), this.domService.setStyle(i, "width", "inherit"), this.domService.setAttribute(i, "data-row-index", `${o}`), this.domService.appendChild(e, i), i;
199
199
  }
200
- addLabelDiv(e, t = "", s = !1, o = -1, i = -1, r = "body") {
201
- const a = this.domService.createElement("div");
202
- if (this.domService.addClass(a, "ge-table-label-div"), this.domService.setStyle(a, "position", "relative"), this.domService.setStyle(a, "background", "transparent"), this.domService.setStyle(a, "width", "100%"), this.domService.setStyle(a, "height", "100%"), this.domService.setAttribute(a, "data-row-index", `${o}`), this.domService.setAttribute(a, "data-col-index", `${i}`), this.domService.setAttribute(a, "data-area", `${r}`), t)
200
+ addLabelDiv(e, t = "", s = !1, o = -1, i = -1, a = "body") {
201
+ const l = this.domService.createElement("div");
202
+ if (this.domService.addClass(l, "ge-table-label-div"), this.domService.setStyle(l, "position", "relative"), this.domService.setStyle(l, "background", "transparent"), this.domService.setStyle(l, "width", "100%"), this.domService.setStyle(l, "height", "100%"), this.domService.setAttribute(l, "data-row-index", `${o}`), this.domService.setAttribute(l, "data-col-index", `${i}`), this.domService.setAttribute(l, "data-area", `${a}`), t)
203
203
  if (s) {
204
- const l = this.domService.createText(t);
205
- this.domService.appendChild(a, l);
204
+ const r = this.domService.createText(t);
205
+ this.domService.appendChild(l, r);
206
206
  } else {
207
- const l = this.domService.createElement("div");
208
- this.domService.appendChild(a, l);
207
+ const r = this.domService.createElement("div");
208
+ this.domService.appendChild(l, r);
209
209
  const n = this.domService.createText(t);
210
- this.domService.addClass(l, "ge-table-label"), this.domService.appendChild(l, n), this.domService.setAttribute(l, "data-row-index", `${o}`), this.domService.setAttribute(l, "data-col-index", `${i}`), this.domService.setAttribute(l, "data-area", `${r}`);
210
+ this.domService.addClass(r, "ge-table-label"), this.domService.appendChild(r, n), this.domService.setAttribute(r, "data-row-index", `${o}`), this.domService.setAttribute(r, "data-col-index", `${i}`), this.domService.setAttribute(r, "data-area", `${a}`);
211
211
  }
212
- return this.domService.appendChild(e, a), a;
212
+ return this.domService.appendChild(e, l), l;
213
213
  }
214
- addSortedIcon(e, t = "", s = new Q(), o = -1) {
214
+ addSortedIcon(e, t = "", s = new Z(), o = -1) {
215
215
  const i = this.domService.createElement("div");
216
216
  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");
217
- let r;
218
- t === "asc" ? r = s.iconAsc : t === "desc" ? r = s.iconDesc : r = s.iconPlaceholder;
219
- const a = r.content, l = this.domService.createText(a);
220
- this.domService.appendChild(i, l), r.style && this.applyStyleString(i, r.style);
221
- for (const n of r.classes)
217
+ let a;
218
+ t === "asc" ? a = s.iconAsc : t === "desc" ? a = s.iconDesc : a = s.iconPlaceholder;
219
+ const l = a.content, r = this.domService.createText(l);
220
+ this.domService.appendChild(i, r), a.style && this.applyStyleString(i, a.style);
221
+ for (const n of a.classes)
222
222
  this.domService.addClass(i, n);
223
223
  return this.domService.appendChild(e, i), i;
224
224
  }
225
- addArrowDiv(e, t = "none", s = new J(), o = -1, i = -1, r = "body") {
226
- const a = this.domService.createElement("div");
227
- this.domService.addClass(a, "ge-table-tree-arrow-div"), this.domService.setStyle(a, "display", "inline-block"), this.domService.setStyle(a, "position", ""), this.domService.setStyle(a, "width", "20px"), this.domService.setStyle(a, "background", "transparent"), this.domService.setStyle(a, "cursor", "pointer"), this.domService.setAttribute(a, "data-row-index", `${o}`), this.domService.setAttribute(a, "data-col-index", `${i}`), this.domService.setAttribute(a, "data-area", `${r}`);
228
- let l;
229
- t === "expanded" ? l = s.arrowExpanded : t === "collapsed" ? l = s.arrowCollapsed : l = s.arrowPlaceholder;
230
- const n = l.content, d = this.domService.createText(n);
231
- this.domService.appendChild(a, d), l.style && this.applyStyleString(a, l.style);
232
- for (const h of l.classes)
233
- this.domService.addClass(a, h);
234
- return this.domService.appendChild(e, a), a;
225
+ addArrowDiv(e, t = "none", s = new J(), o = -1, i = -1, a = "body") {
226
+ const l = this.domService.createElement("div");
227
+ this.domService.addClass(l, "ge-table-tree-arrow-div"), this.domService.setStyle(l, "display", "inline-block"), this.domService.setStyle(l, "position", ""), this.domService.setStyle(l, "width", "20px"), this.domService.setStyle(l, "background", "transparent"), this.domService.setStyle(l, "cursor", "pointer"), this.domService.setAttribute(l, "data-row-index", `${o}`), this.domService.setAttribute(l, "data-col-index", `${i}`), this.domService.setAttribute(l, "data-area", `${a}`);
228
+ let r;
229
+ t === "expanded" ? r = s.arrowExpanded : t === "collapsed" ? r = s.arrowCollapsed : r = s.arrowPlaceholder;
230
+ const n = r.content, c = this.domService.createText(n);
231
+ this.domService.appendChild(l, c), r.style && this.applyStyleString(l, r.style);
232
+ for (const h of r.classes)
233
+ this.domService.addClass(l, h);
234
+ return this.domService.appendChild(e, l), l;
235
235
  }
236
236
  addColumnBorderDivs(e, t, s, o, i) {
237
237
  if (e.verticalBorderVisible) {
238
- const r = `ge-table-${o}-${i}-vertical-border`;
239
- this.addVerticalBorder(s, t, r);
238
+ const a = `ge-table-${o}-${i}-vertical-border`;
239
+ this.addVerticalBorder(s, t, a);
240
240
  }
241
241
  if (e.horizontalBorderVisible) {
242
- const r = `ge-table-${o}-${i}-horizontal-border`;
243
- this.addHorizontalBorder(s, t, r);
242
+ const a = `ge-table-${o}-${i}-horizontal-border`;
243
+ this.addHorizontalBorder(s, t, a);
244
244
  }
245
245
  return t;
246
246
  }
@@ -264,8 +264,8 @@ class ae {
264
264
  applyStyleString(e, t) {
265
265
  const s = t.split(";").map((o) => o.trim()).filter((o) => o);
266
266
  for (const o of s) {
267
- const [i, r] = o.split(":");
268
- this.domService.setStyle(e, i.trim(), r.trim());
267
+ const [i, a] = o.split(":");
268
+ this.domService.setStyle(e, i.trim(), a.trim());
269
269
  }
270
270
  }
271
271
  getDivOrCreateDiv(e, t) {
@@ -273,20 +273,20 @@ class ae {
273
273
  return s ? (s.innerText = "", s) : (s = this.domService.createElement("div"), t.cache[e] = s, s);
274
274
  }
275
275
  }
276
- const _ = (g) => g === "header" ? "header" : g === "footer" ? "footer" : "body";
276
+ const G = (f) => f === "header" ? "header" : f === "footer" ? "footer" : "body";
277
277
  class ne {
278
278
  constructor(e, t) {
279
279
  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)) {
280
280
  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"));
281
281
  const s = e.getAttribute("data-area");
282
- if (s && (this.areaIdent = _(s), this.areaModel = t.tableModel.getAreaModel(this.areaIdent), this.row = this.areaModel.getRowByIndex(this.rowIdx)), e instanceof HTMLInputElement) {
282
+ if (s && (this.areaIdent = G(s), this.areaModel = t.tableModel.getAreaModel(this.areaIdent), this.row = this.areaModel.getRowByIndex(this.rowIdx)), e instanceof HTMLInputElement) {
283
283
  const o = e;
284
284
  this.value = o.value;
285
285
  }
286
286
  }
287
287
  }
288
288
  }
289
- class de {
289
+ class ce {
290
290
  constructor(e) {
291
291
  this.tableScope = e, this.doubleClickDelay = 500, this.expandedAll = !0, this.mouseDown = !1, this.dragging = !1, this.lastClicked = 0, this.tableScope.hostElement.addEventListener("click", this.onHostElementClicked.bind(this)), this.tableScope.hostElement.addEventListener("dblclick", this.onHostElementDblClicked.bind(this)), this.tableScope.hostElement.addEventListener("mousedown", this.onMouseDown.bind(this)), this.tableScope.hostElement.addEventListener("mousemove", this.onMouseMove.bind(this)), this.tableScope.hostElement.addEventListener("mouseup", this.onMouseUp.bind(this)), this.tableScope.hostElement.addEventListener("contextmenu", this.onContextmenu.bind(this)), this.tableScope.hostElement._MouseHandler = "true", this.tableScope.scrollViewport.addEventListener("scroll", this.tableScope.adjustAfterScrolling.bind(this.tableScope)), [window, this.tableScope.hostElement].forEach(
292
292
  (t) => t.addEventListener("resize", this.tableScope.adjustContainersAndRows.bind(this.tableScope))
@@ -327,8 +327,8 @@ class de {
327
327
  const o = s.colIdx === this.getArrowColumnIndex() && e.altKey, i = s.className.includes("ge-table-tree-arrow-div");
328
328
  if (o || i) {
329
329
  e.preventDefault(), e.stopPropagation();
330
- const r = s.row;
331
- r.expanded = !r.expanded, "recalcVisibleTreeRows" in s.areaModel && s.areaModel.recalcVisibleTreeRows(), this.tableScope.tableModel.recalcSize(this.tableScope.hostElement.clientWidth), this.tableScope.adjustContainersAndRows(), this.updateCollapsedExpandedState(r);
330
+ const a = s.row;
331
+ a.expanded = !a.expanded, "recalcVisibleTreeRows" in s.areaModel && s.areaModel.recalcVisibleTreeRows(), this.tableScope.tableModel.recalcSize(this.tableScope.hostElement.clientWidth), this.tableScope.adjustContainersAndRows(), this.updateCollapsedExpandedState(a);
332
332
  }
333
333
  }
334
334
  if (s.areaIdent === "body" && this.tableScope.tableOptions.getFocusModel) {
@@ -345,15 +345,15 @@ class de {
345
345
  */
346
346
  onHostElementDblClicked(e) {
347
347
  if (this.lastClicked = Date.now(), e.target instanceof HTMLElement) {
348
- const t = e.target, s = t.getAttribute("data-area"), o = _(s), i = Number(t.getAttribute("data-row-index")), r = Number(t.getAttribute("data-col-index")), a = this.tableScope.tableModel.getAreaModel(o);
348
+ const t = e.target, s = t.getAttribute("data-area"), o = G(s), i = Number(t.getAttribute("data-row-index")), a = Number(t.getAttribute("data-col-index")), l = this.tableScope.tableModel.getAreaModel(o);
349
349
  if (s && o === "header")
350
- this.tableScope.tableModel.isSortable(r) && (this.tableScope.clearSelection(), this.tableScope.onHeaderDblClicked(e, i, r));
350
+ this.tableScope.tableModel.isSortable(a) && (this.tableScope.clearSelection(), this.tableScope.onHeaderDblClicked(e, i, a));
351
351
  else if (t.getAttribute("data-row-index")) {
352
- const l = a.getRowByIndex(i);
353
- if (s && o === "body" && a.isEditable(i, r) && (this.tableScope.clearSelection(), this.tableScope.initRenderEditor(i, r)), H(l) && r === this.getArrowColumnIndex()) {
352
+ const r = l.getRowByIndex(i);
353
+ if (s && o === "body" && l.isEditable(i, a) && (this.tableScope.clearSelection(), this.tableScope.initRenderEditor(i, a)), H(r) && a === this.getArrowColumnIndex()) {
354
354
  e.preventDefault(), e.stopPropagation();
355
- const n = l;
356
- n.expanded = !n.expanded, "recalcVisibleTreeRows" in a && a.recalcVisibleTreeRows(), this.tableScope.tableModel.recalcSize(this.tableScope.hostElement.clientWidth), this.tableScope.adjustContainersAndRows(), this.updateCollapsedExpandedState(n);
355
+ const n = r;
356
+ n.expanded = !n.expanded, "recalcVisibleTreeRows" in l && l.recalcVisibleTreeRows(), this.tableScope.tableModel.recalcSize(this.tableScope.hostElement.clientWidth), this.tableScope.adjustContainersAndRows(), this.updateCollapsedExpandedState(n);
357
357
  }
358
358
  }
359
359
  }
@@ -378,11 +378,11 @@ class de {
378
378
  * @returns {void}
379
379
  */
380
380
  updateCollapsedExpandedState(e) {
381
- var s, o, i, r, a;
381
+ var s, o, i, a, l;
382
382
  const t = (o = (s = this.tableScope.tableOptions) == null ? void 0 : s.autoRestoreOptions) == null ? void 0 : o.getRowId;
383
383
  if (t) {
384
- const l = (i = this.tableScope.storeStateCollapsedExpandService) == null ? void 0 : i.collapsedExpandedStateGet().mode, n = l === "collapsed" && !e.expanded || l === "expanded" && e.expanded, d = l === "collapsed" && e.expanded || l === "expanded" && !e.expanded, h = t(e.data);
385
- n ? (r = this.tableScope.storeStateCollapsedExpandService) == null || r.collapsedStateIdsPush(h) : d && ((a = this.tableScope.storeStateCollapsedExpandService) == null || a.collapsedStateIdsRemove(h));
384
+ const r = (i = this.tableScope.storeStateCollapsedExpandService) == null ? void 0 : i.collapsedExpandedStateGet().mode, n = r === "collapsed" && !e.expanded || r === "expanded" && e.expanded, c = r === "collapsed" && e.expanded || r === "expanded" && !e.expanded, h = t(e.data);
385
+ n ? (a = this.tableScope.storeStateCollapsedExpandService) == null || a.collapsedStateIdsPush(h) : c && ((l = this.tableScope.storeStateCollapsedExpandService) == null || l.collapsedStateIdsRemove(h));
386
386
  }
387
387
  }
388
388
  getArrowColumnIndex() {
@@ -418,7 +418,7 @@ class de {
418
418
  }
419
419
  }
420
420
  }
421
- class he {
421
+ class de {
422
422
  constructor(e) {
423
423
  this.tableScope = e;
424
424
  }
@@ -535,6 +535,13 @@ class he {
535
535
  repaintHard() {
536
536
  this.tableScope.repaintHard();
537
537
  }
538
+ /**
539
+ * Recalculates the column widths of the table.
540
+ *
541
+ * @param {number} clientWidth - The width of the client area.
542
+ *
543
+ * @return {void}
544
+ */
538
545
  recalcColumnWidths(e) {
539
546
  this.tableScope.recalcColumnWidths(e);
540
547
  }
@@ -588,6 +595,25 @@ class he {
588
595
  this.tableScope.focusModel()
589
596
  );
590
597
  }
598
+ /**
599
+ * Downloads an Excel file containing data from the table's header, body, and footer areas.
600
+ * Extracts the table data into a 2D matrix and uses the Excel service to generate and download the file.
601
+ *
602
+ * @return {void} No return value, downloads the Excel file directly.
603
+ */
604
+ downloadExcel() {
605
+ const e = [], t = this.tableScope.tableModel.getColumnCount(), s = ["header", "body", "footer"];
606
+ for (const o of s) {
607
+ const i = this.tableScope.tableModel.getAreaModel(o), a = (i == null ? void 0 : i.getRowCount()) ?? 0;
608
+ for (let l = 0; l < a; l++) {
609
+ const r = [];
610
+ e.push(r);
611
+ for (let n = 0; n < t; n++)
612
+ r.push(i.getValueAt(l, n));
613
+ }
614
+ }
615
+ return this.tableScope.excelService.downloadExcel(e, "table.xlsx");
616
+ }
591
617
  /**
592
618
  * Retrieves the current scope of the table.
593
619
  *
@@ -606,7 +632,7 @@ class he {
606
632
  return this.tableScope.selectionModel();
607
633
  }
608
634
  }
609
- class V {
635
+ class z {
610
636
  constructor(e) {
611
637
  this.getStorageKeyFn = e;
612
638
  }
@@ -617,9 +643,9 @@ class V {
617
643
  for (const o of [...s]) {
618
644
  const [
619
645
  i,
620
- r
646
+ a
621
647
  ] = o;
622
- t[i] = r;
648
+ t[i] = a;
623
649
  }
624
650
  }
625
651
  return t;
@@ -631,8 +657,8 @@ class V {
631
657
  if (o) {
632
658
  const i = o + e;
633
659
  if ((t + "").includes("Map")) {
634
- const r = this.autoConvertMapToObject(t);
635
- this.persistItem(i, r);
660
+ const a = this.autoConvertMapToObject(t);
661
+ this.persistItem(i, a);
636
662
  } else
637
663
  this.persistItem(i, t);
638
664
  }
@@ -681,7 +707,7 @@ class V {
681
707
  // }
682
708
  // }
683
709
  }
684
- class ce extends V {
710
+ class he extends z {
685
711
  constructor(e) {
686
712
  super(e), this.SCROLL_STATE = "scrollState", this.scrollOffset = [0, 0], this.load();
687
713
  }
@@ -703,14 +729,14 @@ class ce extends V {
703
729
  }
704
730
  }
705
731
  }
706
- class ge {
732
+ class pe {
707
733
  constructor(e = "collapsed", t = [], s = !1, o = !1) {
708
734
  this.mode = e, this.rowIds = t, this.allCollapsed = s, this.allExpanded = o;
709
735
  }
710
736
  }
711
- class pe extends V {
737
+ class ge extends z {
712
738
  constructor(e) {
713
- super(e), this.COLLAPSED_EXPANDED_STATE = "collapsedExpandedState", this.collapsedExpandedState = new ge(), this.load();
739
+ super(e), this.COLLAPSED_EXPANDED_STATE = "collapsedExpandedState", this.collapsedExpandedState = new pe(), this.load();
714
740
  }
715
741
  collapsedExpandedStateGet() {
716
742
  return this.collapsedExpandedState;
@@ -742,7 +768,7 @@ class pe extends V {
742
768
  this.checkAndPersistItem(this.COLLAPSED_EXPANDED_STATE, this.collapsedExpandedState);
743
769
  }
744
770
  }
745
- class be extends V {
771
+ class fe extends z {
746
772
  constructor(e) {
747
773
  super(e), this.SORTING_STATE = "sortingState", this.sortItems = [], this.load();
748
774
  }
@@ -763,14 +789,14 @@ class be extends V {
763
789
  }
764
790
  }
765
791
  }
766
- class T {
792
+ class R {
767
793
  constructor(e = 0, t = 0, s = 0, o = 0, i) {
768
794
  this.left = e, this.width = t, this.height = s, this.top = o, this.index = i;
769
795
  }
770
796
  }
771
- class ue {
797
+ class me {
772
798
  constructor(e, t, s, o) {
773
- this.hostElement = e, this.tableModel = t, this.dom = s, this.tableOptions = o, this.scrollTop = 0, this.areaBodyWestGeo = new T(), this.areaBodyCenterGeo = new T(), this.areaBodyEastGeo = new T();
799
+ this.hostElement = e, this.tableModel = t, this.dom = s, this.tableOptions = o, this.scrollTop = 0, this.areaBodyWestGeo = new R(), this.areaBodyCenterGeo = new R(), this.areaBodyEastGeo = new R();
774
800
  const i = this.hostElement;
775
801
  i.innerText = "", this.dom.setAttribute(i, "tabindex", "0"), this.dom.setStyle(
776
802
  this.dom.addClass("ge-table", i),
@@ -974,7 +1000,7 @@ class E {
974
1000
  return e >= this.r1 && e <= this.r2 && t >= this.c1 && t <= this.c2;
975
1001
  }
976
1002
  }
977
- class Se {
1003
+ class ue {
978
1004
  constructor(e, t) {
979
1005
  this.tableModel = e, this.areaModel = t, this.colAndRowspanRanges = void 0;
980
1006
  }
@@ -985,12 +1011,12 @@ class Se {
985
1011
  const e = this.areaModel.getRowCount(), t = this.tableModel.getColumnCount();
986
1012
  for (let s = 0; s < e; s++)
987
1013
  for (let o = 0; o < t; o++) {
988
- let i = this.areaModel.getColspanAt(s, o), r = this.areaModel.getRowspanAt(s, o);
989
- if (i > 1 || r > 1) {
990
- i === 0 && (i = 1), r === 0 && (r = 1);
991
- const a = "gammaCells" in this.areaModel;
1014
+ let i = this.areaModel.getColspanAt(s, o), a = this.areaModel.getRowspanAt(s, o);
1015
+ if (i > 1 || a > 1) {
1016
+ i === 0 && (i = 1), a === 0 && (a = 1);
1017
+ const l = "gammaCells" in this.areaModel;
992
1018
  this.colAndRowspanRanges.push(
993
- new E(s, o, s + r - 1, o + i - 1, a)
1019
+ new E(s, o, s + a - 1, o + i - 1, l)
994
1020
  );
995
1021
  }
996
1022
  }
@@ -1007,22 +1033,22 @@ class Se {
1007
1033
  return !1;
1008
1034
  }
1009
1035
  }
1010
- class fe {
1036
+ class be {
1011
1037
  constructor(e, t, s) {
1012
1038
  this.header = e, this.body = t, this.footer = s;
1013
1039
  }
1014
1040
  }
1015
- class me extends ue {
1041
+ class Se extends me {
1016
1042
  constructor(e, t, s, o) {
1017
- var r, a;
1043
+ var a, l;
1018
1044
  super(e, t, s, o), this.dragging = !1, this.editing = !1, this.storedColumnWidths = [], this.scrollLeft = 0, this.scrollViewportLeft = 0, this.scrollFactorY = 0, this.scrollFactorX = 0, this.cleanupFunctions = {
1019
1045
  header: [],
1020
1046
  body: [],
1021
1047
  footer: []
1022
- }, this.tree = !1, this.colAndRowspanModels = new fe(), this.firstVisibleRowIndex = -1, this.draggingTargetColumnIndex = -1, this.removables = [], this.tableModel.getSelectionModel ? this.getSelectionModel = this.tableModel.getSelectionModel : (r = this.tableOptions) != null && r.getSelectionModel && (this.getSelectionModel = this.tableOptions.getSelectionModel), (a = this.tableOptions) != null && a.getFocusModel && (this.getFocusModel = this.tableOptions.getFocusModel), P(t.getAreaModel("body")) && (this.tree = !0), ["header", "body", "footer"].forEach(
1023
- (l) => {
1048
+ }, this.tree = !1, this.colAndRowspanModels = new be(), this.firstVisibleRowIndex = -1, this.draggingTargetColumnIndex = -1, this.removables = [], this.tableModel.getSelectionModel ? this.getSelectionModel = this.tableModel.getSelectionModel : (a = this.tableOptions) != null && a.getSelectionModel && (this.getSelectionModel = this.tableOptions.getSelectionModel), (l = this.tableOptions) != null && l.getFocusModel && (this.getFocusModel = this.tableOptions.getFocusModel), W(t.getAreaModel("body")) && (this.tree = !0), ["header", "body", "footer"].forEach(
1049
+ (r) => {
1024
1050
  var n;
1025
- this.colAndRowspanModels[l] = new Se(t, t.getAreaModel(l)), (n = this.colAndRowspanModels[l]) == null || n.init();
1051
+ this.colAndRowspanModels[r] = new ue(t, t.getAreaModel(r)), (n = this.colAndRowspanModels[r]) == null || n.init();
1026
1052
  }
1027
1053
  );
1028
1054
  }
@@ -1108,19 +1134,19 @@ class me extends ue {
1108
1134
  for (const t of this.removables)
1109
1135
  t.remove();
1110
1136
  this.hideHoverRow(), this.hideHoverColumn(), this.scrollTop = this.scrollViewport.scrollTop, this.scrollLeft = this.scrollViewport.scrollLeft, this.debounce(this.checkForScrollPosSaving.bind(this)), 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), isNaN(this.scrollFactorX) && (this.scrollFactorX = 0), this.adjustBody(), this.adjustArea("footer"), this.adjustArea("header"), this.tableOptions.tableTopBorderVisible && this.removables.push(this.dom.addHorizontalBorder(
1111
- new T(0, this.hostElement.clientWidth, 1, 0),
1137
+ new R(0, this.hostElement.clientWidth, 1, 0),
1112
1138
  this.hostElement,
1113
1139
  "ge-table-border"
1114
1140
  )), this.tableOptions.tableBottomBorderVisible && this.removables.push(this.dom.addHorizontalBorder(
1115
- new T(0, this.hostElement.clientWidth, 1, this.hostElement.clientHeight - 1),
1141
+ new R(0, this.hostElement.clientWidth, 1, this.hostElement.clientHeight - 1),
1116
1142
  this.hostElement,
1117
1143
  "ge-table-border"
1118
1144
  )), this.tableModel.getFixedLeftColumnCount() > 0 && this.removables.push(this.dom.addVerticalBorder(
1119
- new T(this.areaBodyWest.child.clientWidth, 1, this.hostElement.clientHeight, 0),
1145
+ new R(this.areaBodyWest.child.clientWidth, 1, this.hostElement.clientHeight, 0),
1120
1146
  this.hostElement,
1121
1147
  "ge-table-body-west-vertical-border"
1122
1148
  )), ((e = this.tableModel.getAreaModel("header")) == null ? void 0 : e.getRowCount()) > 0 && this.removables.push(this.dom.addHorizontalBorder(
1123
- new T(0, this.hostElement.clientWidth, 1, this.areaHeaderCenter.child.clientHeight),
1149
+ new R(0, this.hostElement.clientWidth, 1, this.areaHeaderCenter.child.clientHeight),
1124
1150
  this.hostElement,
1125
1151
  "ge-table-body-west-vertical-border"
1126
1152
  ));
@@ -1159,22 +1185,23 @@ class me extends ue {
1159
1185
  * @param {string[]} cssClasses - An array of CSS classes to be applied to the cell.
1160
1186
  */
1161
1187
  rerenderCellContent({ area: e, rowIndex: t, columnIndex: s, value: o, cssClasses: i }) {
1162
- const r = this.tableModel.getAreaModel(e), a = 'div[data-col-index="' + s + '"][data-row-index="' + t + '"][data-area="' + e + '"]', l = document.querySelector(a);
1163
- if (l) {
1188
+ const a = this.tableModel.getAreaModel(e), l = 'div[data-col-index="' + s + '"][data-row-index="' + t + '"][data-area="' + e + '"]', r = document.querySelector(l);
1189
+ if (r) {
1164
1190
  let n;
1165
- const h = this.editorRenderer && this.editorRendererRow === t && this.editorRendererColumn === s ? this.editorRenderer : r.getCellRenderer(t, s);
1166
- if (l.innerText = "", this.applyCssClasses(l, i), h)
1167
- n = h.render(l, t, s, e, r, o, this.dom.domService), n && this.cleanupFunctions[e].push(n);
1191
+ const c = this.editorRenderer && this.editorRendererRow === t && this.editorRendererColumn === s;
1192
+ let h;
1193
+ if (c ? h = this.editorRenderer : h = a.getCellRenderer(t, s), r.innerText = "", this.applyCssClasses(r, i), h)
1194
+ n = h.render(r, t, s, e, a, o, this.dom.domService), n && this.cleanupFunctions[e].push(n);
1168
1195
  else {
1169
- const u = `${o}`;
1170
- this.dom.addLabelDiv(l, u, !1, t, s, e);
1196
+ const p = `${o}`;
1197
+ this.dom.addLabelDiv(r, p, !1, t, s, e);
1171
1198
  }
1172
- const c = r.getCustomClassesAt(t, s);
1173
- c.length && this.dom.addClasses(c, l);
1174
- const f = r.getCustomStyleAt(t, s);
1175
- if (f)
1176
- for (const u in f)
1177
- this.dom.setStyle(l, u, f[u]);
1199
+ const d = a.getCustomClassesAt(t, s);
1200
+ d.length && this.dom.addClasses(d, r);
1201
+ const m = a.getCustomStyleAt(t, s);
1202
+ if (m)
1203
+ for (const p in m)
1204
+ this.dom.setStyle(r, p, m[p]);
1178
1205
  }
1179
1206
  }
1180
1207
  /**
@@ -1283,87 +1310,87 @@ class me extends ue {
1283
1310
  * @protected
1284
1311
  */
1285
1312
  adjustArea(e, t = 0) {
1286
- var b;
1287
- const s = this.getArea(e, "west"), o = this.getArea(e, "center"), i = this.getArea(e, "east"), r = o.child.clientHeight;
1313
+ var g;
1314
+ const s = this.getArea(e, "west"), o = this.getArea(e, "center"), i = this.getArea(e, "east"), a = o.child.clientHeight;
1288
1315
  s.child.innerText = "", o.child.innerText = "", i.child.innerText = "";
1289
- const a = 0, l = this.areaBodyCenterGeo.width, n = this.tableModel.getPadding(), d = this.tableModel.getAreaModel(e), h = d.getRowCount();
1316
+ const l = 0, r = this.areaBodyCenterGeo.width, n = this.tableModel.getPadding(), c = this.tableModel.getAreaModel(e), h = c.getRowCount();
1290
1317
  for (; this.cleanupFunctions[e].length; ) {
1291
- const p = this.cleanupFunctions[e].shift();
1292
- p && p();
1318
+ const u = this.cleanupFunctions[e].shift();
1319
+ u && u();
1293
1320
  }
1294
- let c = t;
1295
- const f = this.tableModel.getColumnCount(), u = this.tableModel.getFixedRightColumnCount(), S = this.tableModel.getFixedLeftColumnCount();
1296
- for (let p = 0; p < h; p++) {
1297
- const v = c, m = p === h - 1, x = this.tableModel.getRowHeight(e, p);
1298
- if (v + x > 0) {
1299
- this.firstVisibleRowIndex = p;
1300
- let w = { left: a, width: l, height: x, top: v, index: p }, y = this.dom.addRowDiv(o, w, p, e, "center");
1301
- const R = S;
1321
+ let d = t;
1322
+ const m = this.tableModel.getColumnCount(), p = this.tableModel.getFixedRightColumnCount(), b = this.tableModel.getFixedLeftColumnCount();
1323
+ for (let u = 0; u < h; u++) {
1324
+ const x = d, S = u === h - 1, w = this.tableModel.getRowHeight(e, u);
1325
+ if (x + w > 0) {
1326
+ this.firstVisibleRowIndex = u;
1327
+ let v = { left: l, width: r, height: w, top: x, index: u }, y = this.dom.addRowDiv(o, v, u, e, "center");
1328
+ const T = b;
1302
1329
  if (this.adjustColumnsToRowParent({
1303
1330
  areaIdent: e,
1304
1331
  sideIdent: "center",
1305
- areaModel: d,
1306
- geo: w,
1332
+ areaModel: c,
1333
+ geo: v,
1307
1334
  parent: y,
1308
- rowIndex: p,
1309
- columnIndexStart: R,
1310
- columnIndexEnd: f - u - 1,
1335
+ rowIndex: u,
1336
+ columnIndexStart: T,
1337
+ columnIndexEnd: m - p - 1,
1311
1338
  verticalFixed: !1,
1312
- lastRowOfModel: m
1313
- }), n.left > 0 && (w = { left: a, width: this.areaBodyWestGeo.width, height: x, top: v, index: p }, y = this.dom.addRowDiv(s, w, p, e, "west"), this.adjustColumnsToRowParent({
1339
+ lastRowOfModel: S
1340
+ }), n.left > 0 && (v = { left: l, width: this.areaBodyWestGeo.width, height: w, top: x, index: u }, y = this.dom.addRowDiv(s, v, u, e, "west"), this.adjustColumnsToRowParent({
1314
1341
  areaIdent: e,
1315
1342
  sideIdent: "west",
1316
- areaModel: d,
1317
- geo: w,
1343
+ areaModel: c,
1344
+ geo: v,
1318
1345
  parent: y,
1319
- rowIndex: p,
1346
+ rowIndex: u,
1320
1347
  columnIndexStart: 0,
1321
- columnIndexEnd: R - 1,
1348
+ columnIndexEnd: T - 1,
1322
1349
  verticalFixed: !0,
1323
- lastRowOfModel: m
1324
- })), n.right > 0 && (w = { left: a, width: this.areaBodyEastGeo.width, height: x, top: v, index: p }, y = this.dom.addRowDiv(i, w, p, e, "east"), this.adjustColumnsToRowParent({
1350
+ lastRowOfModel: S
1351
+ })), n.right > 0 && (v = { left: l, width: this.areaBodyEastGeo.width, height: w, top: x, index: u }, y = this.dom.addRowDiv(i, v, u, e, "east"), this.adjustColumnsToRowParent({
1325
1352
  areaIdent: e,
1326
1353
  sideIdent: "east",
1327
- areaModel: d,
1328
- geo: w,
1354
+ areaModel: c,
1355
+ geo: v,
1329
1356
  parent: y,
1330
- rowIndex: p,
1331
- columnIndexStart: f - u,
1332
- columnIndexEnd: f - 1,
1357
+ rowIndex: u,
1358
+ columnIndexStart: m - p,
1359
+ columnIndexEnd: m - 1,
1333
1360
  verticalFixed: !0,
1334
- lastRowOfModel: m
1335
- })), e === "header" && this.tree && p === h - 1) {
1361
+ lastRowOfModel: S
1362
+ })), e === "header" && this.tree && u === h - 1) {
1336
1363
  const A = this.dom.applyStyle(
1337
1364
  this.dom.setAttribute(
1338
- this.dom.addDiv(y, new T(16, 20, 20, 8)),
1365
+ this.dom.addDiv(y, new R(16, 20, 20, 8)),
1339
1366
  "data-ge-action",
1340
1367
  "toggleExpandCollapseAll"
1341
1368
  ),
1342
1369
  { cursor: "pointer" }
1343
1370
  ), M = this.tableOptions.treeOptions.arrowExpandCollapseAll;
1344
1371
  if (M) {
1345
- const O = this.dom.domService.createText(M.content);
1346
- this.dom.domService.appendChild(A, O), M.style && this.dom.applyStyleString(A, M.style);
1372
+ const I = this.dom.domService.createText(M.content);
1373
+ this.dom.domService.appendChild(A, I), M.style && this.dom.applyStyleString(A, M.style);
1347
1374
  }
1348
1375
  }
1349
1376
  }
1350
- if (c = c + x, c > r)
1377
+ if (d = d + w, d > a)
1351
1378
  break;
1352
1379
  }
1353
1380
  if (this.colAndRowspanModels && this.colAndRowspanModels[e]) {
1354
- const p = ((b = this.colAndRowspanModels[e]) == null ? void 0 : b.getRanges()) ?? [];
1355
- if (p.length)
1356
- for (const v of p) {
1357
- let m = 0, x = o.child, w = "center";
1358
- if (v.c1 < S)
1359
- x = s.child, w = "west";
1360
- else if (u > 0 && v.c1 >= f - u)
1361
- x = i.child, w = "east";
1381
+ const u = ((g = this.colAndRowspanModels[e]) == null ? void 0 : g.getRanges()) ?? [];
1382
+ if (u.length)
1383
+ for (const x of u) {
1384
+ let S = 0, w = o.child, v = "center";
1385
+ if (x.c1 < b)
1386
+ w = s.child, v = "west";
1387
+ else if (p > 0 && x.c1 >= m - p)
1388
+ w = i.child, v = "east";
1362
1389
  else {
1363
1390
  const y = this.areaBodyCenterGeo.width - this.tableModel.getContentWidthInPixel();
1364
- m = this.scrollFactorX * y - this.areaBodyWestGeo.width, w = "center";
1391
+ S = this.scrollFactorX * y - this.areaBodyWestGeo.width, v = "center";
1365
1392
  }
1366
- this.drawBigCell(v, m, t, d, x, w);
1393
+ this.drawBigCell(x, S, t, c, w, v);
1367
1394
  }
1368
1395
  }
1369
1396
  }
@@ -1377,48 +1404,48 @@ class me extends ue {
1377
1404
  * @param sideIdent SideIdent (west,center,east)
1378
1405
  * @protected
1379
1406
  */
1380
- drawBigCell(e, t, s, o, i, r) {
1381
- const a = s + this.getRowHeights(0, e.r1 - 1, o).reduce((b, p) => b + p, 0), l = this.tableModel.getColumnCount(), n = this.tableModel.getFixedRightColumnCount();
1382
- let d = 0;
1383
- n > 0 && e.c1 >= l - n && (d = l - n);
1384
- const h = t + this.getColumnWidths(d, e.c1 - 1).reduce((b, p) => b + p, 0), c = this.getRowHeights(e.r1, e.r2, o).reduce((b, p) => b + p, 0), f = this.getColumnWidths(e.c1, e.c2).reduce((b, p) => b + p, 0);
1385
- let u = !1;
1386
- const S = this.getSelectionModel ? this.getSelectionModel() : void 0;
1387
- S && (u = S.getSelectionCount(e.r1, e.c1) > 0), e.gammaRange ? this.renderCell({
1407
+ drawBigCell(e, t, s, o, i, a) {
1408
+ const l = s + this.getRowHeights(0, e.r1 - 1, o).reduce((g, u) => g + u, 0), r = this.tableModel.getColumnCount(), n = this.tableModel.getFixedRightColumnCount();
1409
+ let c = 0;
1410
+ n > 0 && e.c1 >= r - n && (c = r - n);
1411
+ const h = t + this.getColumnWidths(c, e.c1 - 1).reduce((g, u) => g + u, 0), d = this.getRowHeights(e.r1, e.r2, o).reduce((g, u) => g + u, 0), m = this.getColumnWidths(e.c1, e.c2).reduce((g, u) => g + u, 0);
1412
+ let p = !1;
1413
+ const b = this.getSelectionModel ? this.getSelectionModel() : void 0;
1414
+ b && (p = b.getSelectionCount(e.r1, e.c1) > 0), e.gammaRange ? this.renderCell({
1388
1415
  areaModel: o,
1389
1416
  areaIdent: o.areaIdent,
1390
- sideIdent: r,
1417
+ sideIdent: a,
1391
1418
  rowIndex: e.r1,
1392
1419
  columnIndex: e.c1,
1393
1420
  left: h,
1394
- top: a,
1395
- width: f,
1396
- height: c,
1421
+ top: l,
1422
+ width: m,
1423
+ height: d,
1397
1424
  parent: i,
1398
- cellSelected: u,
1425
+ cellSelected: p,
1399
1426
  lastRowOfModel: !0,
1400
1427
  gammaRange: e.gammaRange
1401
1428
  }) : this.renderCell({
1402
1429
  areaModel: o,
1403
1430
  areaIdent: o.areaIdent,
1404
- sideIdent: r,
1431
+ sideIdent: a,
1405
1432
  rowIndex: e.r1,
1406
1433
  columnIndex: e.c1,
1407
1434
  left: h,
1408
- top: a,
1409
- width: f,
1410
- height: c,
1435
+ top: l,
1436
+ width: m,
1437
+ height: d,
1411
1438
  parent: i,
1412
- cellSelected: u,
1439
+ cellSelected: p,
1413
1440
  lastRowOfModel: !0,
1414
1441
  gammaRange: e.gammaRange
1415
1442
  }), o.areaIdent === "header" && this.tableOptions.columnsResizable && this.renderHeaderCellResizeHandle({
1416
1443
  rowIndex: e.r1,
1417
1444
  columnIndex: e.c1,
1418
1445
  cellLeft: h,
1419
- cellTop: a,
1420
- cellWidth: f,
1421
- cellHeight: c,
1446
+ cellTop: l,
1447
+ cellWidth: m,
1448
+ cellHeight: d,
1422
1449
  parent: i
1423
1450
  });
1424
1451
  }
@@ -1434,8 +1461,8 @@ class me extends ue {
1434
1461
  findRowOfImportantRowspanCell(e, t, s) {
1435
1462
  const o = e.getMaxRowspan();
1436
1463
  for (let i = t - 1; i > -1; i--) {
1437
- const r = e.getRowspanAt(i, s);
1438
- if (r > 1 && i + r + 1 >= t)
1464
+ const a = e.getRowspanAt(i, s);
1465
+ if (a > 1 && i + a + 1 >= t)
1439
1466
  return i;
1440
1467
  if (t - i > o)
1441
1468
  return -1;
@@ -1455,65 +1482,65 @@ class me extends ue {
1455
1482
  areaModel: s,
1456
1483
  geo: o,
1457
1484
  parent: i,
1458
- rowIndex: r,
1459
- columnIndexStart: a,
1460
- columnIndexEnd: l,
1485
+ rowIndex: a,
1486
+ columnIndexStart: l,
1487
+ columnIndexEnd: r,
1461
1488
  verticalFixed: n = !1,
1462
- lastRowOfModel: d = !1
1489
+ lastRowOfModel: c = !1
1463
1490
  }) {
1464
- var S;
1491
+ var b;
1465
1492
  this.scrollViewportLeft = this.scrollViewport.scrollLeft;
1466
1493
  let h = 0;
1467
1494
  if (!n) {
1468
- const b = this.areaBodyCenterGeo.width - this.tableModel.getContentWidthInPixel();
1469
- h = this.scrollFactorX * b;
1495
+ const g = this.areaBodyCenterGeo.width - this.tableModel.getContentWidthInPixel();
1496
+ h = this.scrollFactorX * g;
1470
1497
  }
1471
- const c = 0, f = !!(e === "body" && t);
1472
- let u = h;
1473
- for (let b = a; b <= l; b++) {
1474
- const p = u, v = this.tableModel.getColumnWidth(b);
1475
- if (v > 0 && p + v > 0) {
1476
- let m = o.height;
1477
- const x = s.getRowspanAt(r, b), w = s.getColspanAt(r, b);
1478
- x > 1 && (m = this.getRowHeights(r, r + x - 1, s).reduce((A, M) => A + M, 0));
1479
- let y = v;
1480
- w > 1 && (y = this.getColumnWidths(b, b + w - 1).reduce((A, M) => A + M, 0));
1481
- let R = !1;
1482
- if (this.colAndRowspanModels && this.colAndRowspanModels[e] && (S = this.colAndRowspanModels[e]) != null && S.isInRange(r, b) && (R = !0), this.draggingTargetColumnIndex === b && e !== "header") {
1483
- this.renderDragTargetDiv(i, p, c, y, m);
1484
- const A = { left: p, top: c, width: y, height: m };
1498
+ const d = 0, m = !!(e === "body" && t);
1499
+ let p = h;
1500
+ for (let g = l; g <= r; g++) {
1501
+ const u = p, x = this.tableModel.getColumnWidth(g);
1502
+ if (x > 0 && u + x > 0) {
1503
+ let S = o.height;
1504
+ const w = s.getRowspanAt(a, g), v = s.getColspanAt(a, g);
1505
+ w > 1 && (S = this.getRowHeights(a, a + w - 1, s).reduce((A, M) => A + M, 0));
1506
+ let y = x;
1507
+ v > 1 && (y = this.getColumnWidths(g, g + v - 1).reduce((A, M) => A + M, 0));
1508
+ let T = !1;
1509
+ if (this.colAndRowspanModels && this.colAndRowspanModels[e] && (b = this.colAndRowspanModels[e]) != null && b.isInRange(a, g) && (T = !0), this.draggingTargetColumnIndex === g && e !== "header") {
1510
+ this.renderDragTargetDiv(i, u, d, y, S);
1511
+ const A = { left: u, top: d, width: y, height: S };
1485
1512
  this.dom.addColumnBorderDivs(this.tableOptions, i, A, e, t);
1486
1513
  } else {
1487
- const A = this.renderSelectedBackgroundDiv(R, f, t, s, r, b, i, p, c, y, m);
1488
- "gammaCells" in s && s.getValueAt(r, b) && (R = !1), R || this.renderCell({
1514
+ const A = this.renderSelectedBackgroundDiv(T, m, t, s, a, g, i, u, d, y, S);
1515
+ "gammaCells" in s && s.getValueAt(a, g) && (T = !1), T || this.renderCell({
1489
1516
  areaModel: s,
1490
1517
  areaIdent: e,
1491
1518
  sideIdent: t,
1492
- rowIndex: r,
1493
- columnIndex: b,
1494
- left: p,
1495
- top: c,
1519
+ rowIndex: a,
1520
+ columnIndex: g,
1521
+ left: u,
1522
+ top: d,
1496
1523
  width: y,
1497
- height: m,
1524
+ height: S,
1498
1525
  parent: i,
1499
1526
  cellSelected: A,
1500
- lastRowOfModel: d,
1527
+ lastRowOfModel: c,
1501
1528
  gammaRange: !0
1502
1529
  }), e === "header" && this.tableOptions.columnsResizable && this.renderHeaderCellResizeHandle({
1503
- rowIndex: r,
1504
- columnIndex: b,
1505
- cellLeft: p,
1506
- cellTop: c,
1530
+ rowIndex: a,
1531
+ columnIndex: g,
1532
+ cellLeft: u,
1533
+ cellTop: d,
1507
1534
  cellWidth: y,
1508
- cellHeight: m,
1535
+ cellHeight: S,
1509
1536
  parent: i
1510
1537
  });
1511
1538
  }
1512
1539
  }
1513
- if (u = u + v, u > this.areaBodyCenterGeo.width)
1540
+ if (p = p + x, p > this.areaBodyCenterGeo.width)
1514
1541
  break;
1515
1542
  }
1516
- this.tableOptions.verticalBorderVisible && this.dom.addVerticalBorder(new T(u - 1, 1, o.height, 0), i);
1543
+ this.tableOptions.verticalBorderVisible && this.dom.addVerticalBorder(new R(p - 1, 1, o.height, 0), i);
1517
1544
  }
1518
1545
  /**
1519
1546
  * Retrieves the column index of the tree arrow column in the table.
@@ -1533,55 +1560,55 @@ class me extends ue {
1533
1560
  sideIdent: s,
1534
1561
  rowIndex: o,
1535
1562
  index: i,
1536
- left: r,
1537
- width: a,
1538
- height: l,
1563
+ left: a,
1564
+ width: l,
1565
+ height: r,
1539
1566
  top: n,
1540
- parent: d,
1567
+ parent: c,
1541
1568
  lastRowOfModel: h
1542
1569
  }) {
1543
1570
  var X;
1544
- const f = this.editorRenderer && this.editorRendererRow === o && this.editorRendererColumn === i ? this.editorRenderer : e.getCellRenderer(o, i), u = { left: r, width: a, height: l, top: n, index: i }, S = e.getRowByIndex(o);
1545
- let b = "none";
1546
- if (i === this.getTreeArrowColumnIndex() && H(S)) {
1547
- const C = S;
1548
- (X = C.children) != null && X.length ? C.expanded ? b = "expanded" : b = "collapsed" : b = "hidden";
1571
+ const m = this.editorRenderer && this.editorRendererRow === o && this.editorRendererColumn === i ? this.editorRenderer : e.getCellRenderer(o, i), p = { left: a, width: l, height: r, top: n, index: i }, b = e.getRowByIndex(o);
1572
+ let g = "none";
1573
+ if (i === this.getTreeArrowColumnIndex() && H(b)) {
1574
+ const C = b;
1575
+ (X = C.children) != null && X.length ? C.expanded ? g = "expanded" : g = "collapsed" : g = "hidden";
1549
1576
  }
1550
- let v;
1577
+ let x;
1551
1578
  if (t === "header") {
1552
1579
  const C = this.tableModel.getColumnDef(i);
1553
- (!(C != null && C.sortIconVisible) || C != null && C.sortIconVisible()) && (v = C == null ? void 0 : C.sortState);
1580
+ (!(C != null && C.sortIconVisible) || C != null && C.sortIconVisible()) && (x = C == null ? void 0 : C.sortState);
1554
1581
  }
1555
- const m = e.getValueAt(o, i), x = f ? "" : `${m}`, w = e.isRowChecked(o), y = this.dom.addColumnDiv(
1582
+ const S = e.getValueAt(o, i), w = m ? "" : `${S}`, v = e.isRowChecked(o), y = this.dom.addColumnDiv(
1556
1583
  {
1557
- parent: d,
1558
- geo: u,
1584
+ parent: c,
1585
+ geo: p,
1559
1586
  rowIndex: o,
1560
1587
  columnIndex: i,
1561
1588
  areaIdent: t,
1562
1589
  sideIdent: s,
1563
- text: x,
1564
- treeArrow: b,
1590
+ text: w,
1591
+ treeArrow: g,
1565
1592
  tableOptions: this.tableOptions,
1566
- checkedType: w,
1567
- sortState: v
1593
+ checkedType: v,
1594
+ sortState: x
1568
1595
  }
1569
- ), R = e.getTooltipAt(o, i);
1570
- R && this.dom.setAttribute(y, "title", R);
1596
+ ), T = e.getTooltipAt(o, i);
1597
+ T && this.dom.setAttribute(y, "title", T);
1571
1598
  const A = this.tableModel.getColumnDef(i);
1572
1599
  A && A.classes[t] && this.dom.addClasses(A.classes[t], y);
1573
1600
  let M;
1574
- f && (M = f.render(y, o, i, t, e, m, this.dom.domService));
1575
- const O = e.getCustomClassesAt(o, i);
1576
- if (O.length && this.dom.addClasses(O, y), this.dom.addColumnBorderDivs(this.tableOptions, d, u, t, s), h && this.dom.addHorizontalBorder({ left: r, width: a, height: l, top: n + l }, d), this.getFocusModel && t === "body") {
1601
+ m && (M = m.render(y, o, i, t, e, S, this.dom.domService));
1602
+ const I = e.getCustomClassesAt(o, i);
1603
+ if (I.length && this.dom.addClasses(I, y), this.dom.addColumnBorderDivs(this.tableOptions, c, p, t, s), h && this.dom.addHorizontalBorder({ left: a, width: l, height: r, top: n + r }, c), this.getFocusModel && t === "body") {
1577
1604
  const C = this.getFocusModel();
1578
- C != null && C.hasFocus(o, i) && this.dom.addFocusBorderDivs(d, u, {});
1605
+ C != null && C.hasFocus(o, i) && this.dom.addFocusBorderDivs(c, p, {});
1579
1606
  }
1580
1607
  t === "header" && this.dom.setAttribute(y, "data-ge-action", "drag-column");
1581
- const W = e.getCustomStyleAt(o, i);
1582
- if (W)
1583
- for (const C in W)
1584
- this.dom.setStyle(y, C, W[C]);
1608
+ const $ = e.getCustomStyleAt(o, i);
1609
+ if ($)
1610
+ for (const C in $)
1611
+ this.dom.setStyle(y, C, $[C]);
1585
1612
  return [y, M];
1586
1613
  }
1587
1614
  /**
@@ -1712,14 +1739,14 @@ class me extends ue {
1712
1739
  adjustDraggingColumn(e, t, s) {
1713
1740
  var o, i;
1714
1741
  if (this.dragging) {
1715
- const r = this.hostElement.clientHeight, a = this.storedColumnWidths[t];
1742
+ const a = this.hostElement.clientHeight, l = this.storedColumnWidths[t];
1716
1743
  if ((o = e.originalEvent) != null && o.clientX) {
1717
- const d = { left: ((i = e.originalEvent) == null ? void 0 : i.clientX) - a / 2, width: a, height: r, top: 0, index: t };
1744
+ const c = { left: ((i = e.originalEvent) == null ? void 0 : i.clientX) - l / 2, width: l, height: a, top: 0, index: t };
1718
1745
  this.dom.applyStyle(this.draggingColumn, {
1719
1746
  background: "rgba(128,128,128,0.2)",
1720
1747
  display: "block",
1721
1748
  overfllow: "clip"
1722
- }), this.dom.applyStyleInPx(this.draggingColumn, d), s && this.renderContentOfDraggingColumn(d);
1749
+ }), this.dom.applyStyleInPx(this.draggingColumn, c), s && this.renderContentOfDraggingColumn(c);
1723
1750
  }
1724
1751
  } else
1725
1752
  this.hideDraggingColumn();
@@ -1744,29 +1771,29 @@ class me extends ue {
1744
1771
  * @return {number} The final y-position after rendering all the content.
1745
1772
  */
1746
1773
  renderContentOfDraggingColumnForArea(e, t, s = 0) {
1747
- const o = "center", i = this.tableModel.getAreaModel(t), r = i == null ? void 0 : i.getRowCount();
1748
- if (r) {
1749
- const a = e.index ?? 0, l = this.draggingColumn;
1750
- for (let n = 0; n < r; n++) {
1751
- const d = s, h = i.getRowHeight(n), c = { left: 0, width: e.width, height: h, top: d, index: n }, f = i.getValueAt(n, a), u = i.getCellRenderer(n, a), S = u ? "" : `${f}`, b = {
1752
- parent: l,
1753
- geo: c,
1774
+ const o = "center", i = this.tableModel.getAreaModel(t), a = i == null ? void 0 : i.getRowCount();
1775
+ if (a) {
1776
+ const l = e.index ?? 0, r = this.draggingColumn;
1777
+ for (let n = 0; n < a; n++) {
1778
+ const c = s, h = i.getRowHeight(n), d = { left: 0, width: e.width, height: h, top: c, index: n }, m = i.getValueAt(n, l), p = i.getCellRenderer(n, l), b = p ? "" : `${m}`, g = {
1779
+ parent: r,
1780
+ geo: d,
1754
1781
  rowIndex: n,
1755
- columnIndex: a,
1782
+ columnIndex: l,
1756
1783
  areaIdent: t,
1757
1784
  sideIdent: o,
1758
- text: S
1759
- }, p = this.dom.addColumnDiv(b);
1760
- let v;
1761
- u && (v = u.render(p, n, a, t, i, f, this.dom.domService), v && this.cleanupFunctions[t].push(v));
1762
- const m = i.getCustomClassesAt(n, a);
1763
- m.length && this.dom.addClasses(m, p);
1764
- const x = this.tableModel.getColumnDef(a);
1765
- x && x.classes[t] && this.dom.addClasses(x.classes[t], p), this.dom.addColumnBorderDivs(this.tableOptions, l, c, t, o);
1766
- const w = i.getCustomStyleAt(n, a);
1767
- if (w)
1768
- for (const y in w)
1769
- this.dom.setStyle(p, y, w[y]);
1785
+ text: b
1786
+ }, u = this.dom.addColumnDiv(g);
1787
+ let x;
1788
+ p && (x = p.render(u, n, l, t, i, m, this.dom.domService), x && this.cleanupFunctions[t].push(x));
1789
+ const S = i.getCustomClassesAt(n, l);
1790
+ S.length && this.dom.addClasses(S, u);
1791
+ const w = this.tableModel.getColumnDef(l);
1792
+ w && w.classes[t] && this.dom.addClasses(w.classes[t], u), this.dom.addColumnBorderDivs(this.tableOptions, r, d, t, o);
1793
+ const v = i.getCustomStyleAt(n, l);
1794
+ if (v)
1795
+ for (const y in v)
1796
+ this.dom.setStyle(u, y, v[y]);
1770
1797
  s = s + h;
1771
1798
  }
1772
1799
  }
@@ -1794,10 +1821,10 @@ class me extends ue {
1794
1821
  * @return {HTMLDivElement} - The rendered draggable target div element.
1795
1822
  */
1796
1823
  renderDragTargetDiv(e, t, s, o, i) {
1797
- const r = this.dom.applyStylePosistionAbsolute(
1824
+ const a = this.dom.applyStylePosistionAbsolute(
1798
1825
  this.dom.createDivWithClass("ge-table-drop-zone", e)
1799
1826
  );
1800
- return this.dom.setStyle(r, "left", `${t}px`), this.dom.setStyle(r, "top", `${s}px`), this.dom.setStyle(r, "width", `${o}px`), this.dom.setStyle(r, "height", `${i}px`), r;
1827
+ return this.dom.setStyle(a, "left", `${t}px`), this.dom.setStyle(a, "top", `${s}px`), this.dom.setStyle(a, "width", `${o}px`), this.dom.setStyle(a, "height", `${i}px`), a;
1801
1828
  }
1802
1829
  /**
1803
1830
  * Render selected background div.
@@ -1816,23 +1843,23 @@ class me extends ue {
1816
1843
  * @param {number} height - The height of the div.
1817
1844
  * @returns {boolean} - Whether the cell is selected.
1818
1845
  */
1819
- renderSelectedBackgroundDiv(e, t, s, o, i, r, a, l, n, d, h) {
1820
- let c = !1;
1821
- if (!e && t && o.isSelectable(i, r) && this.getSelectionModel) {
1822
- const f = this.getSelectionModel();
1823
- if (f) {
1824
- const u = f.getSelectionCount(i, r);
1825
- c = u > 0;
1826
- for (let S = 0; S < u; S++) {
1827
- const b = this.dom.applyStylePosistionAbsolute(
1846
+ renderSelectedBackgroundDiv(e, t, s, o, i, a, l, r, n, c, h) {
1847
+ let d = !1;
1848
+ if (!e && t && o.isSelectable(i, a) && this.getSelectionModel) {
1849
+ const m = this.getSelectionModel();
1850
+ if (m) {
1851
+ const p = m.getSelectionCount(i, a);
1852
+ d = p > 0;
1853
+ for (let b = 0; b < p; b++) {
1854
+ const g = this.dom.applyStylePosistionAbsolute(
1828
1855
  // ge-table-body-west-selected-range
1829
- this.dom.createDivWithClass(`ge-table-${o.areaIdent}-${s}-selected-range`, a)
1856
+ this.dom.createDivWithClass(`ge-table-${o.areaIdent}-${s}-selected-range`, l)
1830
1857
  );
1831
- this.dom.setStyle(b, "left", `${l}px`), this.dom.setStyle(b, "top", `${n}px`), this.dom.setStyle(b, "width", `${d}px`), this.dom.setStyle(b, "height", `${h}px`);
1858
+ this.dom.setStyle(g, "left", `${r}px`), this.dom.setStyle(g, "top", `${n}px`), this.dom.setStyle(g, "width", `${c}px`), this.dom.setStyle(g, "height", `${h}px`);
1832
1859
  }
1833
1860
  }
1834
1861
  }
1835
- return c;
1862
+ return d;
1836
1863
  }
1837
1864
  /**
1838
1865
  * Renders a cell in the grid.
@@ -1859,28 +1886,28 @@ class me extends ue {
1859
1886
  sideIdent: s,
1860
1887
  rowIndex: o,
1861
1888
  columnIndex: i,
1862
- left: r,
1863
- top: a,
1864
- width: l,
1889
+ left: a,
1890
+ top: l,
1891
+ width: r,
1865
1892
  height: n,
1866
- parent: d,
1893
+ parent: c,
1867
1894
  cellSelected: h,
1868
- lastRowOfModel: c
1895
+ lastRowOfModel: d
1869
1896
  }) {
1870
- const [f, u] = this.addAndRenderCellDiv({
1897
+ const [m, p] = this.addAndRenderCellDiv({
1871
1898
  areaModel: e,
1872
1899
  areaIdent: t,
1873
1900
  sideIdent: s,
1874
1901
  rowIndex: o,
1875
1902
  index: i,
1876
- left: r,
1877
- width: l,
1903
+ left: a,
1904
+ width: r,
1878
1905
  height: n,
1879
- top: a,
1880
- parent: d,
1881
- lastRowOfModel: c
1906
+ top: l,
1907
+ parent: c,
1908
+ lastRowOfModel: d
1882
1909
  });
1883
- h && this.dom.addClass(`ge-table-${t}-${s}-selected-range`, f), u && this.cleanupFunctions[t].push(u);
1910
+ h && this.dom.addClass(`ge-table-${t}-${s}-selected-range`, m), p && this.cleanupFunctions[t].push(p);
1884
1911
  }
1885
1912
  /**
1886
1913
  * Render the header cell resize handle.
@@ -1896,9 +1923,9 @@ class me extends ue {
1896
1923
  *
1897
1924
  * @return {void}
1898
1925
  */
1899
- renderHeaderCellResizeHandle({ rowIndex: e, columnIndex: t, cellLeft: s, cellTop: o, cellWidth: i, cellHeight: r, parent: a }) {
1900
- const l = this.dom.domService, n = this.tableOptions.columnResizeHandleWidthInPx ?? 2, d = l.createElement("div");
1901
- l.setAttribute(d, "data-col-index", `${t}`), l.setAttribute(d, "data-row-index", `${e}`), l.setAttribute(d, "data-area", "header"), l.setAttribute(d, "data-ge-action", "resize-column"), l.addClass(d, "ge-table-column-resize-handle"), l.setStyle(d, "display", "clip"), l.setStyle(d, "position", "absolute"), l.setStyle(d, "cursor", "col-resize"), l.setStyle(d, "left", `${s + i - n}px`), l.setStyle(d, "top", `${o}px`), l.setStyle(d, "width", `${n}px`), l.setStyle(d, "height", `${r}px`), l.appendChild(a, d);
1926
+ renderHeaderCellResizeHandle({ rowIndex: e, columnIndex: t, cellLeft: s, cellTop: o, cellWidth: i, cellHeight: a, parent: l }) {
1927
+ const r = this.dom.domService, n = this.tableOptions.columnResizeHandleWidthInPx ?? 2, c = r.createElement("div");
1928
+ r.setAttribute(c, "data-col-index", `${t}`), r.setAttribute(c, "data-row-index", `${e}`), r.setAttribute(c, "data-area", "header"), r.setAttribute(c, "data-ge-action", "resize-column"), r.addClass(c, "ge-table-column-resize-handle"), r.setStyle(c, "display", "clip"), r.setStyle(c, "position", "absolute"), r.setStyle(c, "cursor", "col-resize"), r.setStyle(c, "left", `${s + i - n}px`), r.setStyle(c, "top", `${o}px`), r.setStyle(c, "width", `${n}px`), r.setStyle(c, "height", `${a}px`), r.appendChild(l, c);
1902
1929
  }
1903
1930
  }
1904
1931
  class ye {
@@ -1906,7 +1933,7 @@ class ye {
1906
1933
  this.columnIndex = e, this.sortState = t;
1907
1934
  }
1908
1935
  }
1909
- class ve {
1936
+ class xe {
1910
1937
  constructor(e) {
1911
1938
  this.tableScope = e, this.tableScope.hostElement.addEventListener("change", this.onHostElementChanged.bind(this));
1912
1939
  }
@@ -1922,23 +1949,23 @@ class ve {
1922
1949
  if (e.target instanceof HTMLInputElement || e.target instanceof HTMLSelectElement || e.target instanceof HTMLTextAreaElement) {
1923
1950
  const t = e.target, s = t.getAttribute("data-area"), o = t.getAttribute("data-row-index"), i = t.getAttribute("data-col-index");
1924
1951
  if (s && o && i) {
1925
- const r = _(s), a = Number(o), l = Number(i);
1926
- this.tableScope.updateModelValueAfterEdit(r, a, l, t.value);
1952
+ const a = G(s), l = Number(o), r = Number(i);
1953
+ this.tableScope.updateModelValueAfterEdit(a, l, r, t.value);
1927
1954
  }
1928
1955
  }
1929
1956
  }
1930
1957
  }
1931
- class we {
1958
+ class ve {
1932
1959
  constructor(e = -1, t = -1) {
1933
1960
  this.rowIndex = e, this.columnIndex = t;
1934
1961
  }
1935
1962
  }
1936
- class N {
1963
+ class _ {
1937
1964
  constructor(e) {
1938
1965
  this.cells = e;
1939
1966
  }
1940
1967
  static createSingle(e, t) {
1941
- return new N([new we(e, t)]);
1968
+ return new _([new ve(e, t)]);
1942
1969
  }
1943
1970
  }
1944
1971
  class Ce {
@@ -1947,11 +1974,11 @@ class Ce {
1947
1974
  this.tableScope = e, (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);
1948
1975
  }
1949
1976
  onMouseClicked(e, t) {
1950
- var i, r, a, l, n, d, h;
1977
+ var i, a, l, r, n, c, h;
1951
1978
  let s = !1, o = !1;
1952
1979
  if (this.getSelectionModel && this.getFocusModel) {
1953
- const c = this.getSelectionModel(), f = this.getFocusModel();
1954
- c && f && (f.hasFocus(e.rowIndex, e.columnIndex) || (f.setFocus(e.rowIndex, e.columnIndex), this.tableScope.onFocusChanged(f), s = !0), (i = e.originalEvent) != null && i.shiftKey || c.hasSelection() && (c.clear(), s = !0), (r = e.originalEvent) != null && r.shiftKey && this.previousEvt ? (c.addSelection(this.createRangeByEvents(e, this.previousEvt)), o = !0, s = !0) : (a = e.originalEvent) != null && a.altKey && ((l = e.originalEvent) != null && l.ctrlKey || (n = e.originalEvent) != null && n.metaKey) ? (c.removeSelection(E.singleCell(e.rowIndex, e.columnIndex)), o = !0, s = !0) : (d = e.originalEvent) != null && d.ctrlKey || (h = e.originalEvent) != null && h.metaKey ? (c.addSelection(E.singleCell(e.rowIndex, e.columnIndex)), o = !0, s = !0) : (c.firstClick(e.rowIndex, e.columnIndex), s = !0), this.tableScope.onSelectionChanged(c));
1980
+ const d = this.getSelectionModel(), m = this.getFocusModel();
1981
+ d && m && (m.hasFocus(e.rowIndex, e.columnIndex) || (m.setFocus(e.rowIndex, e.columnIndex), this.tableScope.onFocusChanged(m), s = !0), (i = e.originalEvent) != null && i.shiftKey || d.hasSelection() && (d.clear(), s = !0), (a = e.originalEvent) != null && a.shiftKey && this.previousEvt ? (d.addSelection(this.createRangeByEvents(e, this.previousEvt)), o = !0, s = !0) : (l = e.originalEvent) != null && l.altKey && ((r = e.originalEvent) != null && r.ctrlKey || (n = e.originalEvent) != null && n.metaKey) ? (d.removeSelection(E.singleCell(e.rowIndex, e.columnIndex)), o = !0, s = !0) : (c = e.originalEvent) != null && c.ctrlKey || (h = e.originalEvent) != null && h.metaKey ? (d.addSelection(E.singleCell(e.rowIndex, e.columnIndex)), o = !0, s = !0) : (d.firstClick(e.rowIndex, e.columnIndex), s = !0), this.tableScope.onSelectionChanged(d));
1955
1982
  }
1956
1983
  return o ? this.previousEvt = void 0 : this.previousEvt = e == null ? void 0 : e.clone(), s;
1957
1984
  }
@@ -1973,16 +2000,16 @@ class Ce {
1973
2000
  }
1974
2001
  createRangeByEvents(e, t) {
1975
2002
  t || (t = e);
1976
- const s = Math.min(e.rowIndex, t == null ? void 0 : t.rowIndex), o = Math.max(e.rowIndex, t == null ? void 0 : t.rowIndex), i = Math.min(e.columnIndex, t == null ? void 0 : t.columnIndex), r = Math.max(e.columnIndex, t == null ? void 0 : t.columnIndex);
2003
+ const s = Math.min(e.rowIndex, t == null ? void 0 : t.rowIndex), o = Math.max(e.rowIndex, t == null ? void 0 : t.rowIndex), i = Math.min(e.columnIndex, t == null ? void 0 : t.columnIndex), a = Math.max(e.columnIndex, t == null ? void 0 : t.columnIndex);
1977
2004
  return E.create({
1978
2005
  rowIndex1: s,
1979
2006
  columnIndex1: i,
1980
2007
  rowIndex2: o,
1981
- columnIndex2: r
2008
+ columnIndex2: a
1982
2009
  });
1983
2010
  }
1984
2011
  }
1985
- class xe {
2012
+ class we {
1986
2013
  get() {
1987
2014
  return {
1988
2015
  f2: "START_EDITING",
@@ -2045,7 +2072,7 @@ class Ae {
2045
2072
  this.assignPredefinedSystemShortcutMappings(), Object.assign(this.shortcutActionIdMapping, this.tableScope.tableOptions.shortcutActionIdMapping), this.isDebug() && console.debug("ShortcutService", this.shortcutActionIdMapping), this.tableScope.hostElement.addEventListener("keydown", this.onKeyDown.bind(this));
2046
2073
  }
2047
2074
  assignPredefinedSystemShortcutMappings() {
2048
- this.isMacintosh() ? Object.assign(this.shortcutActionIdMapping, new Ee().get()) : Object.assign(this.shortcutActionIdMapping, new xe().get());
2075
+ this.isMacintosh() ? Object.assign(this.shortcutActionIdMapping, new Ee().get()) : Object.assign(this.shortcutActionIdMapping, new we().get());
2049
2076
  }
2050
2077
  isMacintosh() {
2051
2078
  return navigator.platform.indexOf("Mac") > -1;
@@ -2097,7 +2124,7 @@ class Ae {
2097
2124
  return this.shortcutActionIdMapping;
2098
2125
  }
2099
2126
  }
2100
- class K {
2127
+ class j {
2101
2128
  onCheckboxChanged(e) {
2102
2129
  }
2103
2130
  onContextmenu(e) {
@@ -2117,7 +2144,7 @@ class K {
2117
2144
  onFocusChanged(e) {
2118
2145
  }
2119
2146
  }
2120
- class Z {
2147
+ class Q {
2121
2148
  setStyle(e, t, s) {
2122
2149
  return e.style[t] = s, e;
2123
2150
  }
@@ -2145,14 +2172,14 @@ class Z {
2145
2172
  }
2146
2173
  }
2147
2174
  class Me {
2148
- render(e, t, s, o, i, r, a) {
2175
+ render(e, t, s, o, i, a, l) {
2149
2176
  if (i.isEditable(t, s)) {
2150
- a.addClass(e, "ge-table-row-input-div");
2151
- const l = i.getValueAt(t, s);
2177
+ l.addClass(e, "ge-table-row-input-div");
2178
+ const r = i.getValueAt(t, s);
2152
2179
  e.innerHTML = `
2153
2180
  <input
2154
2181
  type="text"
2155
- value="${l}"
2182
+ value="${r}"
2156
2183
  autofocus
2157
2184
  onfocus="this.setSelectionRange(0, this.value.length)"
2158
2185
  data-listen="change"
@@ -2165,7 +2192,7 @@ class Me {
2165
2192
  }
2166
2193
  }
2167
2194
  }
2168
- class Re {
2195
+ class Te {
2169
2196
  constructor(e = "none", t = "single") {
2170
2197
  this.selectionType = e, this.selectionMode = t, this.ranges = [], this.negativeRanges = [], this.allSelected = !1, this.silent = !1, this.listenerArr = [];
2171
2198
  }
@@ -2247,7 +2274,7 @@ class Re {
2247
2274
  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());
2248
2275
  }
2249
2276
  }
2250
- class Te {
2277
+ class Re {
2251
2278
  constructor(e = "none") {
2252
2279
  this.selectionType = e, this.rowIndex = -1, this.columnIndex = -1, this.changed = !1, this.listenerArr = [];
2253
2280
  }
@@ -2298,17 +2325,17 @@ class ee {
2298
2325
  }
2299
2326
  // `⊖ `, `⊕ `;
2300
2327
  }
2301
- const De = new Re(), ke = new Te("cell");
2328
+ const De = new Te(), ke = new Re("cell");
2302
2329
  class te {
2303
2330
  constructor() {
2304
2331
  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 = {
2305
2332
  header: 34,
2306
2333
  body: 34,
2307
2334
  footer: 34
2308
- }, this.footerVerticalSeparator = !1, this.headerToggleExpandCollapseIcons = !1, this.headerVerticalSeparator = !1, this.treeOptions = new J(), this.headerGroupOptions = new ee(), this.showCheckboxWihoutExtraColumn = !1, this.externalFilterFunction = void 0, this.sortedOptions = new Q(), this.sortOrder = ["asc", "desc"], this.getEditRenderer = (e, t) => new Me(), this.getSelectionModel = () => De, this.getFocusModel = () => ke;
2335
+ }, this.footerVerticalSeparator = !1, this.headerToggleExpandCollapseIcons = !1, this.headerVerticalSeparator = !1, this.treeOptions = new J(), this.headerGroupOptions = new ee(), this.showCheckboxWihoutExtraColumn = !1, this.externalFilterFunction = void 0, this.sortedOptions = new Z(), this.sortOrder = ["asc", "desc"], this.resizeEventDebounceDelay = 500, this.getEditRenderer = (e, t) => new Me(), this.getSelectionModel = () => De, this.getFocusModel = () => ke;
2309
2336
  }
2310
2337
  }
2311
- const I = class I {
2338
+ const F = class F {
2312
2339
  /**
2313
2340
  * Returns the content to be copied based on the provided table model, selection model, and focus model.
2314
2341
  *
@@ -2321,24 +2348,24 @@ const I = class I {
2321
2348
  createContent(e, t, s) {
2322
2349
  return new Promise((o, i) => {
2323
2350
  if (t != null && t.hasSelection()) {
2324
- const r = this.mergeRanges(t.getRanges());
2325
- if (r) {
2326
- r.c2 = Math.min(r.c2, e.getColumnCount() - 1), r.r2 = Math.min(r.r2, e.getBodyModel().getRowCount() - 1);
2327
- const a = [];
2328
- for (let l = r.r1; l <= r.r2; l++) {
2351
+ const a = this.mergeRanges(t.getRanges());
2352
+ if (a) {
2353
+ a.c2 = Math.min(a.c2, e.getColumnCount() - 1), a.r2 = Math.min(a.r2, e.getBodyModel().getRowCount() - 1);
2354
+ const l = [];
2355
+ for (let r = a.r1; r <= a.r2; r++) {
2329
2356
  const n = [];
2330
- for (let d = r.c1; d <= r.c2; d++) {
2331
- const h = t.isSelected(l, d) ? e.getBodyModel().getTextValueAt(l, d) : "";
2357
+ for (let c = a.c1; c <= a.c2; c++) {
2358
+ const h = t.isSelected(r, c) ? e.getBodyModel().getTextValueAt(r, c) : "";
2332
2359
  n.push(h);
2333
2360
  }
2334
- a.push(n.join(I.columnSeparatorChar));
2361
+ l.push(n.join(F.columnSeparatorChar));
2335
2362
  }
2336
- return o(a.join(I.rowSeparatorChar));
2363
+ return o(l.join(F.rowSeparatorChar));
2337
2364
  }
2338
2365
  }
2339
2366
  if (s) {
2340
- const [r, a] = s.getFocus(), l = e.getBodyModel().getTextValueAt(r, a);
2341
- return o(l);
2367
+ const [a, l] = s.getFocus(), r = e.getBodyModel().getTextValueAt(a, l);
2368
+ return o(r);
2342
2369
  }
2343
2370
  i("Cannot copy, neither selection nor focus defined.");
2344
2371
  });
@@ -2366,13 +2393,13 @@ const I = class I {
2366
2393
  e,
2367
2394
  t,
2368
2395
  s
2369
- ).then((r) => {
2370
- r && this.copyContent(r).then((a) => {
2371
- o(r);
2372
- }).catch((a) => {
2396
+ ).then((a) => {
2397
+ a && this.copyContent(a).then((l) => {
2398
+ o(a);
2399
+ }).catch((l) => {
2373
2400
  i();
2374
2401
  });
2375
- }).catch((r) => {
2402
+ }).catch((a) => {
2376
2403
  i();
2377
2404
  });
2378
2405
  });
@@ -2390,30 +2417,136 @@ const I = class I {
2390
2417
  return t;
2391
2418
  }
2392
2419
  };
2393
- I.columnSeparatorChar = " ", I.rowSeparatorChar = `
2420
+ F.columnSeparatorChar = " ", F.rowSeparatorChar = `
2394
2421
  `;
2395
- let L = I;
2396
- class Ie {
2397
- constructor(e) {
2398
- this.tableScope = e, new ResizeObserver(le(this.handleResize.bind(this), 500)).observe(this.tableScope.hostElement);
2422
+ let O = F;
2423
+ class Fe {
2424
+ constructor(e, t = 500) {
2425
+ this.tableScope = e, this.debounceDelay = t, new ResizeObserver(re(this.handleResize.bind(this), t)).observe(this.tableScope.hostElement);
2399
2426
  }
2400
2427
  handleResize(e) {
2401
2428
  const t = e[0], { width: s } = t.contentRect;
2402
2429
  this.tableScope.recalcColumnWidths(s);
2403
2430
  }
2404
2431
  }
2405
- class j extends me {
2406
- constructor(e, t, s, o, i, r = new L()) {
2407
- var n;
2408
- if (super(e, t, new ae(s), o), this.eventListener = i, this.copyService = r, this.licenseManager = k.getInstance(), this.selectionService = new Ce(this), this.api = new he(this), this.mouseStartAction = "", this.mouseStartWidth = -1, this.mouseStartColumnIndex = -1, this.dragFrom = -1, this.dragTo = -1, this.lastDragFrom = -1, this.lastDragTo = -1, this.firstDraggingRendering = !0, i || (this.eventListener = new K()), (n = this.tableOptions) != null && n.autoRestoreOptions) {
2409
- const d = this.tableOptions.autoRestoreOptions, h = d.getStorageKeyFn;
2410
- h && (d.autoRestoreScrollPosition && (this.storeScrollPosStateService = new ce(h)), d.autoRestoreCollapsedExpandedState && (this.storeStateCollapsedExpandService = new pe(h)), d.autoRestoreSortingState && (this.storeSortingService = new be(h)));
2432
+ class Ie {
2433
+ /**
2434
+ * Downloads a matrix data as an Excel file.
2435
+ *
2436
+ * @param {Array<Array<any>>} matrix - A 2D array representing the data to be included in the Excel file. Each inner array corresponds to a row in the sheet.
2437
+ * @param {string} [filename='file.xlsx'] - The name of the Excel file to be downloaded. Defaults to 'file.xlsx'.
2438
+ * @param {string} [author=''] - The author's name to include as metadata in the Excel file. Optional parameter.
2439
+ * @return {void} Does not return a value.
2440
+ * @throws {Error} Throws an error if the input matrix is not a valid 2D array or if the filename is an empty string.
2441
+ */
2442
+ downloadExcel(e, t = "file.xlsx", s = "") {
2443
+ if (!Array.isArray(e) || e.some((o) => !Array.isArray(o)))
2444
+ throw new Error("Invalid matrix format. Expected a 2D array.");
2445
+ if ((t == null ? void 0 : t.trim()) === "")
2446
+ throw new Error("Invalid filename. Filename must be a non-empty string.");
2447
+ try {
2448
+ const o = this.generateBuffer(e, s), i = new Blob([o], {
2449
+ type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
2450
+ }), a = document.createElement("a");
2451
+ a.href = URL.createObjectURL(i), a.download = t, document.body.appendChild(a), a.click(), document.body.removeChild(a);
2452
+ } catch (o) {
2453
+ throw console.error("Error generating Excel file:", o), new Error("Failed to download Excel file.");
2411
2454
  }
2412
- this.mouseHandler = new de(this), this.inputHandler = new ve(this), this.resizeHandler = new Ie(this), this.shortcutService = new Ae(this), this.shortcutService.addListener(this.selectionService);
2413
- const a = this.getSelectionModel ? this.getSelectionModel() : void 0;
2414
- a && a.addEventSelectionChangedListener(this);
2415
- const l = this.getFocusModel ? this.getFocusModel() : void 0;
2416
- l && l.addEventFocusChangedListener(this);
2455
+ }
2456
+ generateMap(e, t = "") {
2457
+ const s = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2458
+ <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/></Relationships>`, o = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2459
+ <Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"><Application>Microsoft Macintosh Excel</Application><DocSecurity>0</DocSecurity><ScaleCrop>false</ScaleCrop><HeadingPairs><vt:vector size="2" baseType="variant"><vt:variant><vt:lpstr>Worksheets</vt:lpstr></vt:variant><vt:variant><vt:i4>1</vt:i4></vt:variant></vt:vector></HeadingPairs><TitlesOfParts><vt:vector size="1" baseType="lpstr"><vt:lpstr>Sheet1</vt:lpstr></vt:vector></TitlesOfParts><Company></Company><LinksUpToDate>false</LinksUpToDate><SharedDoc>false</SharedDoc><HyperlinksChanged>false</HyperlinksChanged><AppVersion>16.0300</AppVersion></Properties>`, i = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2460
+ <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>`, a = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2461
+ <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>`, l = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2462
+ <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>`, r = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2463
+ <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>`, n = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2464
+ <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>`, c = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2465
+ <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>`, h = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2466
+ <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>`, d = /* @__PURE__ */ new Map();
2467
+ return d.set("_rels/.rels", s), d.set("docProps/app.xml", o), d.set("docProps/core.xml", i), d.set("xl/_rels/workbook.xml.rels", a), d.set("xl/theme/theme1.xml", l), d.set("xl/worksheets/sheet1.xml", this.getX1WorksheetsSheet1Xml(e)), d.set("xl/sharedStrings.xml", r), d.set("xl/styles.xml", n), d.set("xl/workbook.xml", c), d.set("[Content_Types].xml", h), d;
2468
+ }
2469
+ getX1WorksheetsSheet1Xml(e) {
2470
+ const t = [];
2471
+ t.push(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2472
+ <worksheet 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="x14ac xr xr2 xr3" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2" xmlns:xr3="http://schemas.microsoft.com/office/spreadsheetml/2016/revision3" xr:uid="{E15F8FC4-4D40-434C-921A-3D9CFAAA2865}">
2473
+ <dimension ref="A1:B3"/>
2474
+ <sheetViews>
2475
+ <sheetView tabSelected="1" workbookViewId="0"/></sheetViews>
2476
+ <sheetFormatPr baseColWidth="10" defaultRowHeight="16" x14ac:dyDescent="0.2"/>
2477
+ <sheetData>`);
2478
+ for (let s = 0; s < e.length; s++) {
2479
+ const o = e[s];
2480
+ t.push('<row r="${r + 1}" spans="1:2" x14ac:dyDescent="0.2">');
2481
+ for (let i = 0; i < o.length; i++) {
2482
+ const a = o[i], l = this.getCellAddress(s, i);
2483
+ if (typeof a == "number")
2484
+ t.push(`<c r="${l}"><v>${a}</v></c>`);
2485
+ else if (a instanceof Date) {
2486
+ const r = a;
2487
+ t.push(`<c r="${l}" t="inlineStr"><is><t>${r.toISOString()}</t></is></c>`);
2488
+ } else {
2489
+ const r = a != null ? this.escapeXml(String(a)) : "";
2490
+ t.push(`<c r="${l}" t="inlineStr"><is><t>${r}</t></is></c>`);
2491
+ }
2492
+ }
2493
+ t.push("</row>");
2494
+ }
2495
+ return t.push(""), t.push(""), t.push('</sheetData><pageMargins left="0.7" right="0.7" top="0.75" bottom="0.75" header="0.3" footer="0.3"/>'), t.push("</worksheet>"), t.join(`
2496
+ `);
2497
+ }
2498
+ escapeXml(e) {
2499
+ return e == null ? "" : String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&apos;");
2500
+ }
2501
+ getCellAddress(e, t) {
2502
+ const s = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
2503
+ let o = "";
2504
+ for (; t >= 0; )
2505
+ o = s[t % 26] + o, t = Math.floor(t / 26) - 1;
2506
+ return `${o}${e + 1}`;
2507
+ }
2508
+ createZip(e) {
2509
+ const t = [];
2510
+ let s = 0;
2511
+ const o = [];
2512
+ e.forEach((h, d) => {
2513
+ const m = new TextEncoder().encode(d), p = new TextEncoder().encode(h), b = new Uint8Array(30 + m.length), g = new DataView(b.buffer);
2514
+ b.set([80, 75, 3, 4], 0), g.setUint16(4, 20, !0), g.setUint16(6, 0, !0), g.setUint16(8, 0, !0), g.setUint16(10, 0, !0), g.setUint16(12, 0, !0), g.setUint32(14, 0, !0), g.setUint32(18, p.length, !0), g.setUint32(22, p.length, !0), g.setUint16(26, m.length, !0), g.setUint16(28, 0, !0), b.set(m, 30), t.push(b, p), o.push({
2515
+ path: d,
2516
+ offset: s,
2517
+ contentSize: p.length
2518
+ }), s += b.length + p.length;
2519
+ });
2520
+ const i = s;
2521
+ o.forEach((h) => {
2522
+ const d = new TextEncoder().encode(h.path), m = new Uint8Array(46 + d.length), p = new DataView(m.buffer);
2523
+ m.set([80, 75, 1, 2], 0), p.setUint16(4, 20, !0), p.setUint16(6, 20, !0), p.setUint16(8, 0, !0), p.setUint16(10, 0, !0), p.setUint16(12, 0, !0), p.setUint16(14, 0, !0), p.setUint32(16, 0, !0), p.setUint32(20, h.contentSize, !0), p.setUint32(24, h.contentSize, !0), p.setUint16(28, d.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, h.offset, !0), m.set(d, 46), t.push(m), s += m.length;
2524
+ });
2525
+ const a = new Uint8Array(22), l = new DataView(a.buffer);
2526
+ a.set([80, 75, 5, 6], 0), l.setUint16(4, 0, !0), l.setUint16(6, 0, !0), l.setUint16(8, o.length, !0), l.setUint16(10, o.length, !0), l.setUint32(12, s - i, !0), l.setUint32(16, i, !0), l.setUint16(20, 0, !0), t.push(a);
2527
+ const r = t.reduce((h, d) => h + d.length, 0), n = new Uint8Array(r);
2528
+ let c = 0;
2529
+ for (const h of t)
2530
+ n.set(h, c), c += h.length;
2531
+ return n;
2532
+ }
2533
+ generateBuffer(e, t = "") {
2534
+ const s = this.generateMap(e, t);
2535
+ return this.createZip(s);
2536
+ }
2537
+ }
2538
+ class U extends Se {
2539
+ constructor(e, t, s, o, i, a = new O(), l = new Ie()) {
2540
+ var c;
2541
+ if (super(e, t, new le(s), o), this.eventListener = i, this.copyService = a, this.excelService = l, this.licenseManager = k.getInstance(), this.selectionService = new Ce(this), this.api = new de(this), this.mouseStartAction = "", this.mouseStartWidth = -1, this.mouseStartColumnIndex = -1, this.dragFrom = -1, this.dragTo = -1, this.lastDragFrom = -1, this.lastDragTo = -1, this.firstDraggingRendering = !0, i || (this.eventListener = new j()), (c = this.tableOptions) != null && c.autoRestoreOptions) {
2542
+ const h = this.tableOptions.autoRestoreOptions, d = h.getStorageKeyFn;
2543
+ d && (h.autoRestoreScrollPosition && (this.storeScrollPosStateService = new he(d)), h.autoRestoreCollapsedExpandedState && (this.storeStateCollapsedExpandService = new ge(d)), h.autoRestoreSortingState && (this.storeSortingService = new fe(d)));
2544
+ }
2545
+ this.mouseHandler = new ce(this), this.inputHandler = new xe(this), this.resizeHandler = new Fe(this, o.resizeEventDebounceDelay), this.shortcutService = new Ae(this), this.shortcutService.addListener(this.selectionService);
2546
+ const r = this.getSelectionModel ? this.getSelectionModel() : void 0;
2547
+ r && r.addEventSelectionChangedListener(this);
2548
+ const n = this.getFocusModel ? this.getFocusModel() : void 0;
2549
+ n && n.addEventFocusChangedListener(this);
2417
2550
  }
2418
2551
  /**
2419
2552
  * Creates a TableScope instance.
@@ -2427,8 +2560,8 @@ class j extends me {
2427
2560
  *
2428
2561
  * @return {TableScope} - The newly created TableScope instance.
2429
2562
  */
2430
- static create(e, t, s = new te(), o = new K(), i = new Z(), r = new L()) {
2431
- return new j(e, t, i, s, o, r);
2563
+ static create(e, t, s = new te(), o = new j(), i = new Q(), a = new O()) {
2564
+ return new U(e, t, i, s, o, a);
2432
2565
  }
2433
2566
  /**
2434
2567
  * Triggers an action based on the provided actionId.
@@ -2456,7 +2589,7 @@ class j extends me {
2456
2589
  return !1;
2457
2590
  }
2458
2591
  updateModelValueAfterEdit(e, t, s, o) {
2459
- e === "body" && this.tableModel.getAreaModel(e).setValue(t, s, o) && (this.resetEditorRenderer(), this.repaint(), this.eventListener.onModelChanged(N.createSingle(t, s)), this.hostElement.focus());
2592
+ e === "body" && this.tableModel.getAreaModel(e).setValue(t, s, o) && (this.resetEditorRenderer(), this.repaint(), this.eventListener.onModelChanged(_.createSingle(t, s)), this.hostElement.focus());
2460
2593
  }
2461
2594
  /**
2462
2595
  * Retrieves the TableApi object.
@@ -2485,7 +2618,7 @@ class j extends me {
2485
2618
  * @return {GeMouseEvent} - The created GeMouseEvent object.
2486
2619
  */
2487
2620
  createGeMouseEvent(e) {
2488
- const t = new z();
2621
+ const t = new N();
2489
2622
  if (t.originalEvent = e, e) {
2490
2623
  const s = e.target;
2491
2624
  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) {
@@ -2555,7 +2688,7 @@ class j extends me {
2555
2688
  toggleExpandCollapseAll(e = !0) {
2556
2689
  var s;
2557
2690
  const t = this.tableModel.getBodyModel();
2558
- P(t) && (t.toggleExpandCollapseAll(e), this.repaint(), (s = this.storeStateCollapsedExpandService) == null || s.collapsedStateAll(e));
2691
+ W(t) && (t.toggleExpandCollapseAll(e), this.repaint(), (s = this.storeStateCollapsedExpandService) == null || s.collapsedStateAll(e));
2559
2692
  }
2560
2693
  /**
2561
2694
  * Toggles the checkbox state of a specific row in a table.
@@ -2567,11 +2700,11 @@ class j extends me {
2567
2700
  * @return {void} - This method does not return anything.
2568
2701
  */
2569
2702
  toggleRowCheckbox(e, t, s) {
2570
- var l;
2571
- const o = this.tableModel.getAreaModel(s), i = o.isRowChecked(e), r = i === void 0 || i === "semi" || i === "none";
2572
- o.setRowChecked(e, r), this.repaint();
2573
- const a = (l = o.rowSelectionModel) == null ? void 0 : l.getCheckedRows();
2574
- this.eventListener.onCheckboxChanged(a || []);
2703
+ var r;
2704
+ const o = this.tableModel.getAreaModel(s), i = o.isRowChecked(e), a = i === void 0 || i === "semi" || i === "none";
2705
+ o.setRowChecked(e, a), this.repaint();
2706
+ const l = (r = o.rowSelectionModel) == null ? void 0 : r.getCheckedRows();
2707
+ this.eventListener.onCheckboxChanged(l || []);
2575
2708
  }
2576
2709
  /**
2577
2710
  * Handle mouse click events.
@@ -2621,12 +2754,12 @@ class j extends me {
2621
2754
  * @return {void}
2622
2755
  */
2623
2756
  onHeaderDblClicked(e, t, s) {
2624
- var i, r;
2757
+ var i, a;
2625
2758
  const o = this.tableModel.getColumnDef(s);
2626
2759
  if (o != null && o.sortable && o.sortable()) {
2627
2760
  e.preventDefault(), e.stopPropagation();
2628
- const a = o.sortStatesOrder ? o.sortStatesOrder : this.tableOptions.sortOrder, l = o.sortState ?? "", n = a[(a.indexOf(l) + 1) % a.length], d = new ye(s, n);
2629
- this.tableModel.doSort([d]) && ((i = this.tableModel.getColumnDefs()) == null || i.forEach((c) => c.sortState = ""), o.sortState = n), this.repaint(), (r = this.storeSortingService) == null || r.setSortItems([d]);
2761
+ const l = o.sortStatesOrder ? o.sortStatesOrder : this.tableOptions.sortOrder, r = o.sortState ?? "", n = l[(l.indexOf(r) + 1) % l.length], c = new ye(s, n);
2762
+ this.tableModel.doSort([c]) && ((i = this.tableModel.getColumnDefs()) == null || i.forEach((d) => d.sortState = ""), o.sortState = n), this.repaint(), (a = this.storeSortingService) == null || a.setSortItems([c]);
2630
2763
  }
2631
2764
  }
2632
2765
  /**
@@ -2770,30 +2903,30 @@ class j extends me {
2770
2903
  if ((t = (e = this.tableOptions) == null ? void 0 : e.autoRestoreOptions) != null && t.getRowId && this.storeStateCollapsedExpandService) {
2771
2904
  const s = this.tableOptions.autoRestoreOptions, o = s.getRowId;
2772
2905
  if (s.autoRestoreCollapsedExpandedState && o) {
2773
- const i = this.storeStateCollapsedExpandService.collapsedExpandedStateGet(), r = this.tableModel.getAreaModel("body");
2774
- if (P(r)) {
2775
- const a = r, l = r.getRowCount();
2776
- for (let n = 0; n < l; n++) {
2777
- const d = r.getRowByIndex(n);
2778
- if (d)
2906
+ const i = this.storeStateCollapsedExpandService.collapsedExpandedStateGet(), a = this.tableModel.getAreaModel("body");
2907
+ if (W(a)) {
2908
+ const l = a, r = a.getRowCount();
2909
+ for (let n = 0; n < r; n++) {
2910
+ const c = a.getRowByIndex(n);
2911
+ if (c)
2779
2912
  if (i.allExpanded)
2780
- d.expanded = !0;
2913
+ c.expanded = !0;
2781
2914
  else if (i.allCollapsed)
2782
- d.expanded = !1;
2915
+ c.expanded = !1;
2783
2916
  else {
2784
- const h = o(d.data);
2785
- i.mode === "expanded" ? d.expanded = this.storeStateCollapsedExpandService.collapsedExpandedStateIncludes(h) : i.mode === "collapsed" && (d.expanded = !this.storeStateCollapsedExpandService.collapsedExpandedStateIncludes(h));
2917
+ const h = o(c.data);
2918
+ i.mode === "expanded" ? c.expanded = this.storeStateCollapsedExpandService.collapsedExpandedStateIncludes(h) : i.mode === "collapsed" && (c.expanded = !this.storeStateCollapsedExpandService.collapsedExpandedStateIncludes(h));
2786
2919
  }
2787
2920
  }
2788
- a.recalcVisibleTreeRows();
2921
+ l.recalcVisibleTreeRows();
2789
2922
  }
2790
2923
  }
2791
2924
  }
2792
2925
  }
2793
2926
  }
2794
- const $ = class $ {
2927
+ const B = class B {
2795
2928
  };
2796
- $.themes = ["light", "combat", "paper", "blackboard"], $.vars = {
2929
+ B.themes = ["light", "combat", "paper", "blackboard"], B.vars = {
2797
2930
  light: `html[data-theme="light"] {
2798
2931
  --ge-table-bg: rgba(255,255,255, 0.5);
2799
2932
  --ge-table-header-west-bg: rgba(233, 233, 233, 0.5);
@@ -3027,110 +3160,110 @@ $.themes = ["light", "combat", "paper", "blackboard"], $.vars = {
3027
3160
  --ge-table-drop-zone-bg: #758129;
3028
3161
  }`
3029
3162
  };
3030
- let Y = $;
3031
- const B = class B {
3163
+ let K = B;
3164
+ const P = class P {
3032
3165
  constructor(e = new ee()) {
3033
3166
  this.headerGroupOptions = e;
3034
3167
  }
3035
- render(e, t, s, o, i, r, a) {
3036
- const l = r != null && r.data ? r.data : "";
3037
- if (r) {
3038
- const { toggle: n, visibility: d, closed: h } = r, c = n ? B.toggleHeaderGroup : "";
3039
- this.addText(e, o, t, s, l, c), n && d !== "always" && this.addArrowDiv(a, e, !h, t, s, o, c);
3168
+ render(e, t, s, o, i, a, l) {
3169
+ const r = a != null && a.data ? a.data : "";
3170
+ if (a) {
3171
+ const { toggle: n, visibility: c, closed: h } = a, d = n ? P.toggleHeaderGroup : "";
3172
+ this.addText(e, o, t, s, r, d), n && c !== "always" && this.addArrowDiv(l, e, !h, t, s, o, d);
3040
3173
  } else
3041
- this.addText(e, o, t, s, l, "");
3174
+ this.addText(e, o, t, s, r, "");
3042
3175
  }
3043
- addText(e, t, s, o, i, r) {
3176
+ addText(e, t, s, o, i, a) {
3044
3177
  e.innerHTML = `<span
3045
- data-ge-action="${r}"
3178
+ data-ge-action="${a}"
3046
3179
  data-area="${t}"
3047
3180
  data-row-index="${s}"
3048
3181
  data-col-index="${o}"
3049
3182
  >${i}</span>`;
3050
3183
  }
3051
- addArrowDiv(e, t, s = !0, o = -1, i = -1, r = "header", a) {
3052
- const l = e.createElement("div");
3053
- 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", `${a}`);
3184
+ addArrowDiv(e, t, s = !0, o = -1, i = -1, a = "header", l) {
3185
+ const r = e.createElement("div");
3186
+ e.addClass(r, "ge-table-toggle-icon-div"), e.setStyle(r, "display", "inline-block"), e.setStyle(r, "position", ""), e.setStyle(r, "width", "20px"), e.setStyle(r, "background", "transparent"), e.setStyle(r, "cursor", "pointer"), e.setAttribute(r, "data-row-index", `${o}`), e.setAttribute(r, "data-col-index", `${i}`), e.setAttribute(r, "data-area", `${a}`), e.setAttribute(r, "data-ge-action", `${l}`);
3054
3187
  let n;
3055
3188
  s ? n = this.headerGroupOptions.iconExpanded : n = this.headerGroupOptions.iconCollapsed;
3056
- const d = n.content, h = e.createText(d);
3057
- e.appendChild(l, h), n.style && this.applyStyleString(e, l, n.style);
3058
- for (const c of n.classes)
3059
- e.addClass(l, c);
3060
- return e.appendChild(t, l), l;
3189
+ const c = n.content, h = e.createText(c);
3190
+ e.appendChild(r, h), n.style && this.applyStyleString(e, r, n.style);
3191
+ for (const d of n.classes)
3192
+ e.addClass(r, d);
3193
+ return e.appendChild(t, r), r;
3061
3194
  }
3062
3195
  applyStyleString(e, t, s) {
3063
3196
  const o = s.split(";").map((i) => i.trim()).filter((i) => i);
3064
3197
  for (const i of o) {
3065
- const [r, a] = i.split(":");
3066
- e.setStyle(t, r.trim(), a.trim());
3198
+ const [a, l] = i.split(":");
3199
+ e.setStyle(t, a.trim(), l.trim());
3067
3200
  }
3068
3201
  }
3069
3202
  };
3070
- B.toggleHeaderGroup = "toggleHeaderGroup";
3071
- let q = B;
3072
- function $e({
3073
- tableModel: g,
3203
+ P.toggleHeaderGroup = "toggleHeaderGroup";
3204
+ let Y = P;
3205
+ function Pe({
3206
+ tableModel: f,
3074
3207
  tableOptions: e = new te(),
3075
3208
  mouseMoved: t,
3076
3209
  checkboxChanged: s,
3077
3210
  contextmenu: o,
3078
3211
  modelChanged: i,
3079
- mouseClicked: r,
3080
- mouseDragging: a,
3081
- mouseDraggingEnd: l,
3212
+ mouseClicked: a,
3213
+ mouseDragging: l,
3214
+ mouseDraggingEnd: r,
3082
3215
  selectionChanged: n,
3083
- focusChanged: d,
3216
+ focusChanged: c,
3084
3217
  tableReady: h,
3085
- licenseKey: c
3218
+ licenseKey: d
3086
3219
  }) {
3087
- const f = oe(null);
3088
- let u = !1;
3220
+ const m = oe(null);
3221
+ let p = !1;
3089
3222
  ie(() => {
3090
- f.current && !u && (S(f.current), u = !0);
3223
+ m.current && !p && (b(m.current), p = !0);
3091
3224
  });
3092
- const S = (b) => {
3093
- const p = {
3094
- onSelectionChanged(m) {
3095
- n && n(m);
3225
+ const b = (g) => {
3226
+ const u = {
3227
+ onSelectionChanged(S) {
3228
+ n && n(S);
3096
3229
  },
3097
- onFocusChanged(m) {
3098
- d && d(m);
3230
+ onFocusChanged(S) {
3231
+ c && c(S);
3099
3232
  },
3100
- onCheckboxChanged: (m) => {
3101
- s && s(m);
3233
+ onCheckboxChanged: (S) => {
3234
+ s && s(S);
3102
3235
  },
3103
- onContextmenu: (m) => {
3104
- o && o(m);
3236
+ onContextmenu: (S) => {
3237
+ o && o(S);
3105
3238
  },
3106
- onModelChanged: (m) => {
3107
- i && i(m);
3239
+ onModelChanged: (S) => {
3240
+ i && i(S);
3108
3241
  },
3109
- onMouseClicked: (m) => {
3110
- r && r(m);
3242
+ onMouseClicked: (S) => {
3243
+ a && a(S);
3111
3244
  },
3112
- onMouseDragging: (m) => {
3113
- a && a(m);
3245
+ onMouseDragging: (S) => {
3246
+ l && l(S);
3114
3247
  },
3115
- onMouseDraggingEnd: (m) => {
3116
- l && l(m);
3248
+ onMouseDraggingEnd: (S) => {
3249
+ r && r(S);
3117
3250
  },
3118
- onMouseMoved: (m) => {
3119
- t && t(m);
3251
+ onMouseMoved: (S) => {
3252
+ t && t(S);
3120
3253
  }
3121
- }, v = new j(
3122
- b,
3254
+ }, x = new U(
3123
3255
  g,
3124
- new Z(),
3256
+ f,
3257
+ new Q(),
3125
3258
  e,
3126
- p
3259
+ u
3127
3260
  );
3128
- v.firstInit(), h && h(v.getApi()), c && k.getInstance().setLicenseKey(c);
3261
+ x.firstInit(), h && h(x.getApi()), d && k.getInstance().setLicenseKey(d);
3129
3262
  };
3130
3263
  return /* @__PURE__ */ se(
3131
3264
  "div",
3132
3265
  {
3133
- ref: f,
3266
+ ref: m,
3134
3267
  className: "container-div",
3135
3268
  style: {
3136
3269
  width: "100%",
@@ -3142,39 +3275,39 @@ function $e({
3142
3275
  }
3143
3276
  );
3144
3277
  }
3145
- var G, F = re;
3278
+ var V, L = ae;
3146
3279
  if (process.env.NODE_ENV === "production")
3147
- G = F.createRoot, F.hydrateRoot;
3280
+ V = L.createRoot, L.hydrateRoot;
3148
3281
  else {
3149
- var U = F.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
3150
- G = function(g, e) {
3151
- U.usingClientEntryPoint = !0;
3282
+ var q = L.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
3283
+ V = function(f, e) {
3284
+ q.usingClientEntryPoint = !0;
3152
3285
  try {
3153
- return F.createRoot(g, e);
3286
+ return L.createRoot(f, e);
3154
3287
  } finally {
3155
- U.usingClientEntryPoint = !1;
3288
+ q.usingClientEntryPoint = !1;
3156
3289
  }
3157
3290
  };
3158
3291
  }
3159
- class Be {
3292
+ class $e {
3160
3293
  constructor(e) {
3161
3294
  this.Component = e, console.info(e);
3162
3295
  }
3163
- render(e, t, s, o, i, r, a) {
3164
- const l = {
3296
+ render(e, t, s, o, i, a, l) {
3297
+ const r = {
3165
3298
  cellDiv: e,
3166
3299
  rowIndex: t,
3167
3300
  columnIndex: s,
3168
3301
  areaIdent: o,
3169
3302
  areaModel: i,
3170
- cellValue: r
3171
- }, n = G(e, {});
3172
- return n.render(this.Component(l)), () => {
3303
+ cellValue: a
3304
+ }, n = V(e, {});
3305
+ return n.render(this.Component(r)), () => {
3173
3306
  n.unmount();
3174
3307
  };
3175
3308
  }
3176
3309
  }
3177
3310
  export {
3178
- Be as ComponentRendererWrapper,
3179
- $e as GuiexpertTable
3311
+ $e as ComponentRendererWrapper,
3312
+ Pe as GuiexpertTable
3180
3313
  };