@ninebone/table 0.0.781 β 0.0.783
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/nine-table.js +309 -305
- package/dist/nine-table.js.map +1 -1
- package/dist/nine-table.umd.js +6 -6
- package/dist/nine-table.umd.js.map +1 -1
- package/package.json +1 -1
package/dist/nine-table.js
CHANGED
|
@@ -44,8 +44,8 @@ const es = class es extends HTMLElement {
|
|
|
44
44
|
if (!t(this, j) || !t(this, E) || t(this, G)) return;
|
|
45
45
|
const e = t(this, E).container, s = e.querySelector("table");
|
|
46
46
|
if (!s) return;
|
|
47
|
-
const r = t(this, E).track,
|
|
48
|
-
if (
|
|
47
|
+
const r = t(this, E).track, i = t(this, E).thumb, o = t(this, j).querySelector(".ng-container-bottom"), a = e.clientWidth, c = s.scrollWidth;
|
|
48
|
+
if (a !== 0 && c > a)
|
|
49
49
|
o && (o.style.display = "flex");
|
|
50
50
|
else {
|
|
51
51
|
o && (o.style.display = "none");
|
|
@@ -53,31 +53,31 @@ const es = class es extends HTMLElement {
|
|
|
53
53
|
}
|
|
54
54
|
const l = r.clientWidth;
|
|
55
55
|
if (l <= 0) return;
|
|
56
|
-
const g = Math.max(Math.min(l * (
|
|
57
|
-
|
|
58
|
-
const f = e.scrollLeft, b = c -
|
|
56
|
+
const g = Math.max(Math.min(l * (a / c), l), 20);
|
|
57
|
+
i.style.width = `${g}px`;
|
|
58
|
+
const f = e.scrollLeft, b = c - a;
|
|
59
59
|
let u = 0;
|
|
60
60
|
b > 0 && (u = parseInt(f / b * (l - g), 10)), u < 0 && (u = 0);
|
|
61
61
|
const p = l - g;
|
|
62
|
-
u > p && (u = p),
|
|
62
|
+
u > p && (u = p), i.style.left = `${u}px`, t(this, E).left.disabled = u === 0, t(this, E).right.disabled = u >= p - 1;
|
|
63
63
|
}, "refresh"));
|
|
64
64
|
d(this, nt, /* @__PURE__ */ h((e) => {
|
|
65
65
|
if (!t(this, E)) return !1;
|
|
66
66
|
const s = t(this, E).container, r = s.querySelector("table");
|
|
67
67
|
if (!r) return !1;
|
|
68
|
-
const
|
|
69
|
-
let
|
|
70
|
-
|
|
71
|
-
const c =
|
|
72
|
-
|
|
68
|
+
const i = t(this, E).track.getBoundingClientRect(), o = t(this, E).thumb.clientWidth;
|
|
69
|
+
let a = e;
|
|
70
|
+
a < 0 && (a = 0);
|
|
71
|
+
const c = i.width - o;
|
|
72
|
+
a > c && (a = c), a = parseInt(a, 10), t(this, E).thumb.style.left = `${a}px`, t(this, E).left.disabled = a === 0, t(this, E).right.disabled = a >= c - 1;
|
|
73
73
|
const l = s.clientWidth, f = r.scrollWidth - l;
|
|
74
|
-
return c > 0 && f > 0 && (s.scrollLeft =
|
|
74
|
+
return c > 0 && f > 0 && (s.scrollLeft = a / c * f), a > 0 && a < c - 1;
|
|
75
75
|
}, "#thumbMoveTo"));
|
|
76
76
|
d(this, Qt, /* @__PURE__ */ h(() => {
|
|
77
77
|
const e = /* @__PURE__ */ h((r) => {
|
|
78
78
|
clearInterval(t(this, tt)), clearInterval(t(this, et));
|
|
79
|
-
const
|
|
80
|
-
t(this, nt).call(this,
|
|
79
|
+
const i = parseInt(t(this, E).thumb.style.left || 0, 10);
|
|
80
|
+
t(this, nt).call(this, i + r), y(this, tt, setInterval(() => {
|
|
81
81
|
clearInterval(t(this, tt)), y(this, et, setInterval(() => {
|
|
82
82
|
const o = parseInt(t(this, E).thumb.style.left || 0, 10);
|
|
83
83
|
t(this, nt).call(this, o + r) || clearInterval(t(this, et));
|
|
@@ -95,19 +95,19 @@ const es = class es extends HTMLElement {
|
|
|
95
95
|
}), t(this, E).left.addEventListener("touchstart", () => e(-20)), t(this, E).right.addEventListener("touchstart", () => e(20)), t(this, E).track.addEventListener("mousedown", (r) => {
|
|
96
96
|
if (r.button !== 0) return;
|
|
97
97
|
r.preventDefault();
|
|
98
|
-
const
|
|
99
|
-
t(this, nt).call(this, r.clientX -
|
|
98
|
+
const i = t(this, E).track.getBoundingClientRect(), o = t(this, E).thumb.clientWidth;
|
|
99
|
+
t(this, nt).call(this, r.clientX - i.left - o / 2);
|
|
100
100
|
}), t(this, E).thumb.addEventListener("mousedown", (r) => {
|
|
101
101
|
if (r.button !== 0) return;
|
|
102
102
|
r.stopPropagation(), r.preventDefault(), y(this, G, !0), this.shiftX = r.clientX - t(this, E).thumb.getBoundingClientRect().left;
|
|
103
|
-
const
|
|
103
|
+
const i = /* @__PURE__ */ h((a) => {
|
|
104
104
|
if (!t(this, G)) return;
|
|
105
105
|
const c = t(this, E).track.getBoundingClientRect();
|
|
106
|
-
t(this, nt).call(this,
|
|
106
|
+
t(this, nt).call(this, a.clientX - c.left - this.shiftX);
|
|
107
107
|
}, "onMouseMove"), o = /* @__PURE__ */ h(() => {
|
|
108
|
-
y(this, G, !1), s(), document.removeEventListener("mousemove",
|
|
108
|
+
y(this, G, !1), s(), document.removeEventListener("mousemove", i), document.removeEventListener("mouseup", o), this.refresh();
|
|
109
109
|
}, "onMouseUp");
|
|
110
|
-
document.addEventListener("mousemove",
|
|
110
|
+
document.addEventListener("mousemove", i), document.addEventListener("mouseup", o);
|
|
111
111
|
});
|
|
112
112
|
}, "#init"));
|
|
113
113
|
}
|
|
@@ -213,17 +213,17 @@ const ss = class ss extends HTMLElement {
|
|
|
213
213
|
d(this, It, 0);
|
|
214
214
|
q(this, "refresh", /* @__PURE__ */ h(() => {
|
|
215
215
|
if (S.log("vscrollbar.refresh"), !t(this, rt) || !t(this, k)) return;
|
|
216
|
-
const e = t(this, k).container, s = t(this, k).track, r = t(this, k).thumb,
|
|
217
|
-
if (c <=
|
|
216
|
+
const e = t(this, k).container, s = t(this, k).track, r = t(this, k).thumb, i = e.clientHeight, o = t(this, rt).data.length, a = t(this, ot).getRowHeight(), c = o * a;
|
|
217
|
+
if (c <= i || o === 0) {
|
|
218
218
|
this.style.display = "none";
|
|
219
219
|
return;
|
|
220
220
|
} else
|
|
221
221
|
this.style.display = "flex";
|
|
222
222
|
const l = s.clientHeight;
|
|
223
223
|
if (l <= 0) return;
|
|
224
|
-
const g = Math.max(Math.min(l * (
|
|
224
|
+
const g = Math.max(Math.min(l * (i / c), l), 20);
|
|
225
225
|
r.style.height = `${g}px`;
|
|
226
|
-
const f = e.scrollTop, b = Math.max(c -
|
|
226
|
+
const f = e.scrollTop, b = Math.max(c - i, 1);
|
|
227
227
|
S.log(e, f, b);
|
|
228
228
|
let u = 0;
|
|
229
229
|
b > 0 && (u = f / b * (l - g));
|
|
@@ -233,15 +233,15 @@ const ss = class ss extends HTMLElement {
|
|
|
233
233
|
d(this, te, /* @__PURE__ */ h(() => {
|
|
234
234
|
S.log("nine-table-vscrollbar.#init");
|
|
235
235
|
const e = t(this, k).container, s = /* @__PURE__ */ h(() => {
|
|
236
|
-
const
|
|
237
|
-
return
|
|
236
|
+
const i = (t(this, rt).data.get() || []).length, o = t(this, ot).getRowHeight();
|
|
237
|
+
return i * o;
|
|
238
238
|
}, "getContentHeight");
|
|
239
239
|
t(this, k).thumb.addEventListener("mousedown", (r) => {
|
|
240
240
|
if (r.button !== 0) return;
|
|
241
241
|
r.stopPropagation(), r.preventDefault(), y(this, yt, !0), y(this, kt, r.clientY), y(this, It, e.scrollTop);
|
|
242
|
-
const
|
|
242
|
+
const i = /* @__PURE__ */ h((a) => {
|
|
243
243
|
if (!t(this, yt)) return;
|
|
244
|
-
const c = t(this, k).track.getBoundingClientRect(), l = t(this, k).thumb.clientHeight, f = c.height - l, b =
|
|
244
|
+
const c = t(this, k).track.getBoundingClientRect(), l = t(this, k).thumb.clientHeight, f = c.height - l, b = a.clientY - t(this, kt), u = e.clientHeight, p = s(), x = Math.max(p - u, 1);
|
|
245
245
|
if (f > 0 && x > 0) {
|
|
246
246
|
const w = b / f * x;
|
|
247
247
|
let m = t(this, It) + w;
|
|
@@ -250,14 +250,14 @@ const ss = class ss extends HTMLElement {
|
|
|
250
250
|
}
|
|
251
251
|
this.refresh();
|
|
252
252
|
}, "onMouseMove"), o = /* @__PURE__ */ h(() => {
|
|
253
|
-
y(this, yt, !1), document.removeEventListener("mousemove",
|
|
253
|
+
y(this, yt, !1), document.removeEventListener("mousemove", i), document.removeEventListener("mouseup", o), this.refresh();
|
|
254
254
|
}, "onMouseUp");
|
|
255
|
-
document.addEventListener("mousemove",
|
|
255
|
+
document.addEventListener("mousemove", i), document.addEventListener("mouseup", o);
|
|
256
256
|
}), t(this, k).track.addEventListener("mousedown", (r) => {
|
|
257
257
|
if (r.button !== 0 || r.target === t(this, k).thumb) return;
|
|
258
|
-
const
|
|
258
|
+
const i = t(this, k).track.getBoundingClientRect(), o = t(this, k).thumb.clientHeight, a = r.clientY - i.top - o / 2, l = i.height - o, g = e.clientHeight, f = s(), b = Math.max(f - g, 1);
|
|
259
259
|
if (l > 0 && b > 0) {
|
|
260
|
-
const u = Math.max(0, Math.min(1,
|
|
260
|
+
const u = Math.max(0, Math.min(1, a / l));
|
|
261
261
|
e.scrollTop = u * b;
|
|
262
262
|
}
|
|
263
263
|
this.refresh();
|
|
@@ -353,11 +353,11 @@ const ss = class ss extends HTMLElement {
|
|
|
353
353
|
rt = new WeakMap(), ot = new WeakMap(), yt = new WeakMap(), k = new WeakMap(), kt = new WeakMap(), It = new WeakMap(), te = new WeakMap(), h(ss, "NineTableVScrollBar");
|
|
354
354
|
let Te = ss;
|
|
355
355
|
customElements.get("nine-table-vscrollbar") || customElements.define("nine-table-vscrollbar", Te);
|
|
356
|
-
var U,
|
|
356
|
+
var U, A, it, Y, O, Z, at, Lt, Ye, Ve, ee, se, Mt, Ht, $t, ne, re, Nt, Ue, mt, _t, oe;
|
|
357
357
|
const ns = class ns {
|
|
358
358
|
constructor(n) {
|
|
359
359
|
d(this, U);
|
|
360
|
-
d(this,
|
|
360
|
+
d(this, A);
|
|
361
361
|
d(this, it);
|
|
362
362
|
d(this, Y, /* @__PURE__ */ new Map());
|
|
363
363
|
d(this, O, null);
|
|
@@ -371,37 +371,37 @@ const ns = class ns {
|
|
|
371
371
|
q(this, "refresh", /* @__PURE__ */ h(() => {
|
|
372
372
|
var e;
|
|
373
373
|
S.log("rowManager.refresh");
|
|
374
|
-
const n = t(this,
|
|
375
|
-
n && (t(this, Mt).call(this), t(this, Ht).call(this), t(this, mt).call(this, n.scrollTop), (e = t(this,
|
|
374
|
+
const n = t(this, A).querySelector(".ng-container-body .ng-part-body");
|
|
375
|
+
n && (t(this, Mt).call(this), t(this, Ht).call(this), t(this, mt).call(this, n.scrollTop), (e = t(this, A).querySelector("nine-table-vscrollbar")) == null || e.refresh());
|
|
376
376
|
}, "refresh"));
|
|
377
377
|
q(this, "initialize", /* @__PURE__ */ h(() => {
|
|
378
378
|
S.log("rowManager.initialize"), y(this, it, {
|
|
379
|
-
scrollTables: t(this,
|
|
380
|
-
firstTr: t(this,
|
|
381
|
-
}), y(this, O, null), t(this, Y).clear(), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((
|
|
382
|
-
const a = t(this,
|
|
379
|
+
scrollTables: t(this, A).querySelectorAll(".ng-part-body table"),
|
|
380
|
+
firstTr: t(this, A).querySelector(".ng-container-body .ng-part-body tbody.bindable-tbody tr:not(.nodata)")
|
|
381
|
+
}), y(this, O, null), t(this, Y).clear(), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((o) => {
|
|
382
|
+
const a = t(this, A).querySelector(o);
|
|
383
383
|
if (!a) return;
|
|
384
|
-
const
|
|
385
|
-
if (!
|
|
386
|
-
const
|
|
387
|
-
if (!
|
|
388
|
-
const
|
|
389
|
-
t(this, Y).set(
|
|
384
|
+
const c = a.querySelector(".ng-part-body table");
|
|
385
|
+
if (!c) return;
|
|
386
|
+
const l = c.querySelector("tbody.bindable-tbody");
|
|
387
|
+
if (!l) return;
|
|
388
|
+
const f = Array.from(l.querySelectorAll("tr")).map((b) => b.cloneNode(!0));
|
|
389
|
+
t(this, Y).set(o, f);
|
|
390
390
|
});
|
|
391
|
-
const n = t(this,
|
|
392
|
-
if (
|
|
391
|
+
const n = t(this, A).querySelector(".ng-container-body .ng-part-body"), e = t(this, A).querySelector(".ng-container-left .ng-part-body"), s = t(this, A).querySelector(".ng-container-right .ng-part-body"), r = t(this, A).querySelector(".ng-container-body .ng-part-header"), i = t(this, A).querySelector(".ng-container-body .ng-part-footer");
|
|
392
|
+
if (n) {
|
|
393
393
|
t(this, Mt).call(this), t(this, Nt).call(this), t(this, Ht).call(this), t(this, mt).call(this, n.scrollTop);
|
|
394
|
-
let
|
|
395
|
-
const a = /* @__PURE__ */ h((
|
|
394
|
+
let o = !1;
|
|
395
|
+
const a = /* @__PURE__ */ h((c) => {
|
|
396
396
|
var f;
|
|
397
|
-
if (
|
|
398
|
-
|
|
399
|
-
const
|
|
400
|
-
|
|
397
|
+
if (o) return;
|
|
398
|
+
o = !0;
|
|
399
|
+
const l = c.scrollTop, g = c.scrollLeft;
|
|
400
|
+
n && n.scrollTop !== l && (n.scrollTop = l), e && e.scrollTop !== l && (e.scrollTop = l), s && s.scrollTop !== l && (s.scrollTop = l), r && r.scrollLeft !== g && (r.scrollLeft = g), i && i.scrollLeft !== g && (i.scrollLeft = g), t(this, mt).call(this, l), (f = t(this, A).querySelector("nine-table-vscrollbar")) == null || f.refresh(), o = !1;
|
|
401
401
|
}, "handleContainerScroll");
|
|
402
|
-
[n, e, s].forEach((
|
|
403
|
-
|
|
404
|
-
S.log(
|
|
402
|
+
[n, e, s].forEach((c) => {
|
|
403
|
+
c == null || c.addEventListener("scroll", (l) => {
|
|
404
|
+
S.log(l), S.log("rowManager.scroll event"), a(c);
|
|
405
405
|
});
|
|
406
406
|
});
|
|
407
407
|
}
|
|
@@ -412,30 +412,30 @@ const ns = class ns {
|
|
|
412
412
|
if (!s || s.length === 0) return;
|
|
413
413
|
const r = n.querySelector(".ng-part-body tbody.bindable-tbody");
|
|
414
414
|
if (!r) return;
|
|
415
|
-
r.querySelectorAll("tr:not(.nodata)").forEach((
|
|
416
|
-
const
|
|
417
|
-
for (let
|
|
415
|
+
r.querySelectorAll("tr:not(.nodata)").forEach((a) => a.remove());
|
|
416
|
+
const i = r.querySelector("tr.nodata"), o = document.createDocumentFragment();
|
|
417
|
+
for (let a = 0; a < t(this, Lt); a++)
|
|
418
418
|
s.forEach((c) => {
|
|
419
419
|
o.appendChild(c.cloneNode(!0));
|
|
420
420
|
});
|
|
421
|
-
|
|
421
|
+
i ? i.before(o) : r.appendChild(o), e === ".ng-container-body" && (t(this, it).firstTr = r.querySelector("tr:not(.nodata)"));
|
|
422
422
|
}, "#renderRows"));
|
|
423
423
|
d(this, Mt, /* @__PURE__ */ h(() => {
|
|
424
424
|
if (t(this, O) !== null && t(this, O) > 0)
|
|
425
425
|
return t(this, O);
|
|
426
|
-
const n = t(this,
|
|
426
|
+
const n = t(this, A).querySelector(".ng-container-body .ng-part-body");
|
|
427
427
|
S.log("rowManager.#measureAndCacheHeight");
|
|
428
428
|
const e = t(this, Y).get(".ng-container-body");
|
|
429
429
|
if (!e || e.length === 0) throw new Error("invalid dom");
|
|
430
430
|
const s = n.querySelector("tbody.bindable-tbody");
|
|
431
431
|
if (S.log(s), !s) throw new Error("invalid dom");
|
|
432
432
|
s.querySelectorAll("tr:not(.nodata)").forEach((b) => b.remove());
|
|
433
|
-
const r = s.querySelector("tr.nodata"),
|
|
433
|
+
const r = s.querySelector("tr.nodata"), i = document.createDocumentFragment();
|
|
434
434
|
e.forEach((b) => {
|
|
435
|
-
|
|
436
|
-
}), r ? r.before(
|
|
437
|
-
const o = t(this,
|
|
438
|
-
(
|
|
435
|
+
i.appendChild(b.cloneNode(!0));
|
|
436
|
+
}), r ? r.before(i) : s.appendChild(i);
|
|
437
|
+
const o = t(this, A), a = o.style.display, c = o.style.visibility, l = o.style.position;
|
|
438
|
+
(a === "none" || window.getComputedStyle(o).display === "none") && (o.style.display = "block", o.style.visibility = "hidden", o.style.position = "absolute");
|
|
439
439
|
let g = 0;
|
|
440
440
|
const f = s.querySelectorAll("tr");
|
|
441
441
|
return f.forEach((b) => {
|
|
@@ -445,16 +445,16 @@ const ns = class ns {
|
|
|
445
445
|
u = parseFloat(p.height) || parseFloat(p.minHeight) || 0;
|
|
446
446
|
}
|
|
447
447
|
g += u;
|
|
448
|
-
}), f.forEach((b) => b.remove()), o.style.display =
|
|
448
|
+
}), f.forEach((b) => b.remove()), o.style.display = a, o.style.visibility = c, o.style.position = l, g <= 0 ? -1 : (y(this, O, g), t(this, $t).call(this), t(this, O));
|
|
449
449
|
}, "#measureAndCacheHeight"));
|
|
450
450
|
d(this, Ht, /* @__PURE__ */ h(() => {
|
|
451
451
|
S.log("rowManager.#updateVirtualScrollHeight");
|
|
452
452
|
const e = (t(this, U).data.get() || []).length, s = t(this, O), r = e * s;
|
|
453
|
-
S.log("π [VirtualHeight]", { totalCount: e, rowHeight: s, totalVirtualHeight: r }), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((
|
|
454
|
-
const o = t(this,
|
|
453
|
+
S.log("π [VirtualHeight]", { totalCount: e, rowHeight: s, totalVirtualHeight: r }), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((i) => {
|
|
454
|
+
const o = t(this, A).querySelector(i);
|
|
455
455
|
if (!o) return;
|
|
456
|
-
const
|
|
457
|
-
|
|
456
|
+
const a = o.querySelector(".ng-part-body .ng-virtual-spacer");
|
|
457
|
+
a && (a.style.height = `${r}px`);
|
|
458
458
|
});
|
|
459
459
|
}, "#updateVirtualScrollHeight"));
|
|
460
460
|
d(this, $t, /* @__PURE__ */ h(() => {
|
|
@@ -464,63 +464,63 @@ const ns = class ns {
|
|
|
464
464
|
}
|
|
465
465
|
}, "#updateRowCount"));
|
|
466
466
|
d(this, ne, /* @__PURE__ */ h(() => {
|
|
467
|
-
var
|
|
468
|
-
const n = t(this,
|
|
467
|
+
var a, c, l, g, f, b;
|
|
468
|
+
const n = t(this, A).querySelector(".ng-container-left .ng-part-body table"), e = t(this, A).querySelector(".ng-container-body .ng-part-body table"), s = t(this, A).querySelector(".ng-container-right .ng-part-body table");
|
|
469
469
|
if (e) {
|
|
470
470
|
const u = n ? Array.from(n.querySelectorAll("tbody tr")) : [], p = Array.from(e.querySelectorAll("tbody tr")), x = s ? Array.from(s.querySelectorAll("tbody tr")) : [], w = Math.max(u.length, p.length, x.length);
|
|
471
471
|
for (let m = 0; m < w; m++) {
|
|
472
472
|
const T = [
|
|
473
|
-
((
|
|
473
|
+
((a = u[m]) == null ? void 0 : a.getBoundingClientRect().height) || 0,
|
|
474
474
|
((c = p[m]) == null ? void 0 : c.getBoundingClientRect().height) || 0,
|
|
475
475
|
((l = x[m]) == null ? void 0 : l.getBoundingClientRect().height) || 0
|
|
476
|
-
],
|
|
477
|
-
|
|
476
|
+
], R = Math.max(...T);
|
|
477
|
+
R > 0 && (u[m] && (u[m].style.height = `${R}px`), p[m] && (p[m].style.height = `${R}px`), x[m] && (x[m].style.height = `${R}px`));
|
|
478
478
|
}
|
|
479
479
|
}
|
|
480
|
-
const r = t(this,
|
|
481
|
-
if (
|
|
482
|
-
const u = r ? Array.from(r.querySelectorAll("tfoot tr")) : [], p = Array.from(
|
|
480
|
+
const r = t(this, A).querySelector(".ng-container-left .ng-part-footer table"), i = t(this, A).querySelector(".ng-container-body .ng-part-footer table"), o = t(this, A).querySelector(".ng-container-right .ng-part-footer table");
|
|
481
|
+
if (i) {
|
|
482
|
+
const u = r ? Array.from(r.querySelectorAll("tfoot tr")) : [], p = Array.from(i.querySelectorAll("tfoot tr")), x = o ? Array.from(o.querySelectorAll("tfoot tr")) : [], w = Math.max(u.length, p.length, x.length);
|
|
483
483
|
for (let m = 0; m < w; m++) {
|
|
484
484
|
const T = [
|
|
485
485
|
((g = u[m]) == null ? void 0 : g.getBoundingClientRect().height) || 0,
|
|
486
486
|
((f = p[m]) == null ? void 0 : f.getBoundingClientRect().height) || 0,
|
|
487
487
|
((b = x[m]) == null ? void 0 : b.getBoundingClientRect().height) || 0
|
|
488
|
-
],
|
|
489
|
-
|
|
488
|
+
], R = Math.max(...T);
|
|
489
|
+
R > 0 && (u[m] && (u[m].style.height = `${R}px`), p[m] && (p[m].style.height = `${R}px`), x[m] && (x[m].style.height = `${R}px`));
|
|
490
490
|
}
|
|
491
491
|
}
|
|
492
492
|
}, "#syncRowHeights"));
|
|
493
493
|
d(this, re, /* @__PURE__ */ h(() => {
|
|
494
|
-
!t(this,
|
|
494
|
+
!t(this, A) || !(t(this, A) instanceof HTMLElement) || (y(this, Z, new ResizeObserver((n) => {
|
|
495
495
|
for (const e of n) {
|
|
496
496
|
const s = e.target;
|
|
497
497
|
if (!s.classList.contains("active")) continue;
|
|
498
498
|
const r = e.contentRect.height;
|
|
499
499
|
if (r > 0) {
|
|
500
|
-
let
|
|
501
|
-
const o = s.querySelector(".ng-part-header"),
|
|
502
|
-
o && (
|
|
503
|
-
const c = Math.max(r -
|
|
500
|
+
let i = 0;
|
|
501
|
+
const o = s.querySelector(".ng-part-header"), a = s.querySelector(".ng-part-footer");
|
|
502
|
+
o && (i += o.offsetHeight), a && (i += a.offsetHeight);
|
|
503
|
+
const c = Math.max(r - i, 100);
|
|
504
504
|
t(this, at) !== c && (y(this, at, c), t(this, $t).call(this), t(this, O) !== null && (t(this, Nt).call(this), this.refresh()));
|
|
505
505
|
}
|
|
506
506
|
}
|
|
507
|
-
})), t(this, Z).observe(t(this,
|
|
507
|
+
})), t(this, Z).observe(t(this, A)));
|
|
508
508
|
}, "#initResizeObserver"));
|
|
509
509
|
d(this, Nt, /* @__PURE__ */ h(() => {
|
|
510
510
|
S.log("rowManager.#renderAllContainers"), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((n) => {
|
|
511
|
-
const e = t(this,
|
|
511
|
+
const e = t(this, A).querySelector(n);
|
|
512
512
|
e && e.querySelector(".ng-part-body tbody.bindable-tbody") && t(this, se).call(this, e, n);
|
|
513
513
|
}), t(this, oe).call(this), t(this, ne).call(this);
|
|
514
514
|
}, "#renderAllContainers"));
|
|
515
515
|
d(this, Ue, /* @__PURE__ */ h((n) => {
|
|
516
516
|
[".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((e) => {
|
|
517
517
|
var l;
|
|
518
|
-
const s = t(this,
|
|
518
|
+
const s = t(this, A).querySelector(e);
|
|
519
519
|
if (!s) return;
|
|
520
520
|
const r = s.querySelector(".ng-part-body tbody.bindable-tbody");
|
|
521
521
|
if (!r) return;
|
|
522
|
-
const
|
|
523
|
-
|
|
522
|
+
const i = Array.from(r.querySelectorAll("tr:not(.nodata)")), o = ((l = t(this, Y).get(e)) == null ? void 0 : l.length) || 1, c = (t(this, U).data.get() || []).length;
|
|
523
|
+
i.forEach((g, f) => {
|
|
524
524
|
const b = n + Math.floor(f / o);
|
|
525
525
|
if (b >= c) {
|
|
526
526
|
g.style.visibility = "hidden";
|
|
@@ -537,27 +537,27 @@ const ns = class ns {
|
|
|
537
537
|
if (!e || e <= 0) return;
|
|
538
538
|
const s = t(this, U).data.length;
|
|
539
539
|
if (s === 0) return;
|
|
540
|
-
const r = ((f = t(this, Y).get(".ng-container-body")) == null ? void 0 : f.length) || 1,
|
|
541
|
-
S.log("bodyContainer.clientHeight",
|
|
542
|
-
const o = Math.max(0, s - Math.floor(
|
|
543
|
-
let c = Math.floor(
|
|
544
|
-
S.log(`π [Scroll Calc] maxStartIndex: ${o}, startIndex: ${
|
|
540
|
+
const r = ((f = t(this, Y).get(".ng-container-body")) == null ? void 0 : f.length) || 1, i = t(this, A).querySelector(".ng-container-body .ng-part-body");
|
|
541
|
+
S.log("bodyContainer.clientHeight", i.clientHeight);
|
|
542
|
+
const o = Math.max(0, s - Math.floor(i.clientHeight / e)), a = Math.min(o, Math.max(0, Math.floor(n / e)));
|
|
543
|
+
let c = Math.floor(a * e);
|
|
544
|
+
S.log(`π [Scroll Calc] maxStartIndex: ${o}, startIndex: ${a}, offsetY: ${c}`), a === o && S.log(`π [Scroll Inspect] scrollTop: ${n}, rowHeight: ${e}, maxStartIndex: ${o}, startIndex: ${a}, offsetY: ${c}`);
|
|
545
545
|
const l = t(this, it).firstTr, g = l && l.dataset.row !== void 0 ? parseInt(l.dataset.row, 10) : -1;
|
|
546
546
|
(b = t(this, it)) == null || b.scrollTables.forEach((u) => {
|
|
547
547
|
u.style.transform = `translate3d(0, ${c}px, 0)`;
|
|
548
|
-
}), g !==
|
|
549
|
-
const p = t(this,
|
|
548
|
+
}), g !== a && (S.log(`π [Row Bind Trigger] currentStartIndex(${g}) !== startIndex(${a})`), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((u) => {
|
|
549
|
+
const p = t(this, A).querySelector(u);
|
|
550
550
|
if (!p) return;
|
|
551
551
|
const x = p.querySelector(".ng-part-body tbody.bindable-tbody");
|
|
552
552
|
if (!x) return;
|
|
553
553
|
Array.from(x.querySelectorAll("tr:not(.nodata)")).forEach((m, T) => {
|
|
554
|
-
const
|
|
555
|
-
if (
|
|
554
|
+
const R = a + Math.floor(T / r);
|
|
555
|
+
if (R >= s) {
|
|
556
556
|
m.style.display = "none";
|
|
557
557
|
return;
|
|
558
558
|
}
|
|
559
|
-
const M = t(this, U).data.get(
|
|
560
|
-
m.style.display = "", t(this, _t).call(this, m, M,
|
|
559
|
+
const M = t(this, U).data.get(R);
|
|
560
|
+
m.style.display = "", t(this, _t).call(this, m, M, R);
|
|
561
561
|
});
|
|
562
562
|
}));
|
|
563
563
|
}, "#handleScroll"));
|
|
@@ -576,31 +576,31 @@ const ns = class ns {
|
|
|
576
576
|
});
|
|
577
577
|
}; */
|
|
578
578
|
d(this, _t, /* @__PURE__ */ h((n, e, s) => {
|
|
579
|
-
n.dataset.row = s, n.data = e, Array.from(n.cells).forEach((r,
|
|
579
|
+
n.dataset.row = s, n.data = e, Array.from(n.cells).forEach((r, i) => {
|
|
580
580
|
r.dataset.row = s;
|
|
581
|
-
const o = Array.from(r.children).find((
|
|
581
|
+
const o = Array.from(r.children).find((a) => a.tagName.toLowerCase().startsWith("cell-") || typeof a.refresh == "function");
|
|
582
582
|
o && typeof o.refresh == "function" && o.refresh();
|
|
583
583
|
});
|
|
584
584
|
}, "#bindRowData"));
|
|
585
585
|
d(this, oe, /* @__PURE__ */ h(() => {
|
|
586
586
|
var c, l, g;
|
|
587
587
|
S.log("rowManager.#syncHeaderHeights");
|
|
588
|
-
const n = t(this,
|
|
588
|
+
const n = t(this, A).querySelector(".ng-container-left .ng-part-header table"), e = t(this, A).querySelector(".ng-container-body .ng-part-header table"), s = t(this, A).querySelector(".ng-container-right .ng-part-header table");
|
|
589
589
|
if (!e) return;
|
|
590
|
-
const r = n ? Array.from(n.querySelectorAll("tr")) : [],
|
|
591
|
-
for (let f = 0; f <
|
|
590
|
+
const r = n ? Array.from(n.querySelectorAll("tr")) : [], i = Array.from(e.querySelectorAll("tr")), o = s ? Array.from(s.querySelectorAll("tr")) : [], a = Math.max(r.length, i.length, o.length);
|
|
591
|
+
for (let f = 0; f < a; f++) {
|
|
592
592
|
const b = [
|
|
593
593
|
((c = r[f]) == null ? void 0 : c.getBoundingClientRect().height) || 0,
|
|
594
|
-
((l =
|
|
594
|
+
((l = i[f]) == null ? void 0 : l.getBoundingClientRect().height) || 0,
|
|
595
595
|
((g = o[f]) == null ? void 0 : g.getBoundingClientRect().height) || 0
|
|
596
596
|
], u = Math.max(...b);
|
|
597
|
-
u > 0 && (r[f] && (r[f].style.height = `${u}px`),
|
|
597
|
+
u > 0 && (r[f] && (r[f].style.height = `${u}px`), i[f] && (i[f].style.height = `${u}px`), o[f] && (o[f].style.height = `${u}px`));
|
|
598
598
|
}
|
|
599
599
|
}, "#syncHeaderHeights"));
|
|
600
600
|
q(this, "destroy", /* @__PURE__ */ h(() => {
|
|
601
601
|
t(this, Z) && (t(this, Z).disconnect(), y(this, Z, null));
|
|
602
602
|
}, "destroy"));
|
|
603
|
-
y(this, U, n.getRootNode().host), y(this,
|
|
603
|
+
y(this, U, n.getRootNode().host), y(this, A, n), t(this, re).call(this);
|
|
604
604
|
}
|
|
605
605
|
getRowHeight() {
|
|
606
606
|
return t(this, O);
|
|
@@ -610,7 +610,7 @@ const ns = class ns {
|
|
|
610
610
|
return ((e = t(this, Y).get(n)) == null ? void 0 : e.length) || 1;
|
|
611
611
|
}
|
|
612
612
|
};
|
|
613
|
-
U = new WeakMap(),
|
|
613
|
+
U = new WeakMap(), A = new WeakMap(), it = new WeakMap(), Y = new WeakMap(), O = new WeakMap(), Z = new WeakMap(), at = new WeakMap(), Lt = new WeakMap(), Ye = new WeakMap(), Ve = new WeakMap(), ee = new WeakMap(), se = new WeakMap(), Mt = new WeakMap(), Ht = new WeakMap(), $t = new WeakMap(), ne = new WeakMap(), re = new WeakMap(), Nt = new WeakMap(), Ue = new WeakMap(), mt = new WeakMap(), _t = new WeakMap(), oe = new WeakMap(), h(ns, "RowManager");
|
|
614
614
|
let ke = ns;
|
|
615
615
|
const ie = class ie {
|
|
616
616
|
/**
|
|
@@ -624,33 +624,33 @@ const ie = class ie {
|
|
|
624
624
|
*/
|
|
625
625
|
static compile(n) {
|
|
626
626
|
if (!n) return null;
|
|
627
|
-
const e = /* @__PURE__ */ h((
|
|
628
|
-
|
|
627
|
+
const e = /* @__PURE__ */ h((a) => {
|
|
628
|
+
a.querySelectorAll("tbody td, tbody th, tfoot td, tfoot th").forEach((l) => {
|
|
629
629
|
const g = l.getAttribute("cell-type") || "renderer";
|
|
630
630
|
if (l.children.length > 0 && l.firstElementChild.tagName.includes("-")) return;
|
|
631
631
|
let f = `cell-${g}`;
|
|
632
632
|
const b = l.getAttribute("data-bind"), u = l.getAttribute("data-expr"), p = l.getAttribute("maxbyte"), x = l.getAttribute("type");
|
|
633
633
|
let w = [];
|
|
634
634
|
b && w.push(`data-bind="${b}"`), u && w.push(`data-expr="${u}"`), p && w.push(`maxbyte="${p}"`), x && w.push(`type="${x}"`), l.innerHTML = `<${f} ${w.join(" ")}></${f}>`;
|
|
635
|
-
}),
|
|
635
|
+
}), a.querySelectorAll("tbody td, tfoot td").forEach((l) => {
|
|
636
636
|
l.setAttribute("tabindex", "0");
|
|
637
637
|
});
|
|
638
|
-
}, "processCellTypes"), s = /* @__PURE__ */ h((
|
|
639
|
-
if (!
|
|
640
|
-
const c =
|
|
638
|
+
}, "processCellTypes"), s = /* @__PURE__ */ h((a) => {
|
|
639
|
+
if (!a.querySelector("colgroup")) {
|
|
640
|
+
const c = a.querySelector("tbody tr") || a.querySelector("tr"), l = c ? c.querySelectorAll("th, td").length : 1, g = document.createElement("colgroup"), f = Math.max(Math.floor(a.clientWidth / l), 100);
|
|
641
641
|
for (let b = 0; b < l; b++) {
|
|
642
642
|
const u = document.createElement("col");
|
|
643
643
|
u.setAttribute("width", f), g.appendChild(u);
|
|
644
644
|
}
|
|
645
|
-
|
|
645
|
+
a.prepend(g);
|
|
646
646
|
}
|
|
647
|
-
if (!
|
|
648
|
-
const c = document.createElement("thead"), l =
|
|
649
|
-
l ? l.after(c) :
|
|
647
|
+
if (!a.querySelector("thead")) {
|
|
648
|
+
const c = document.createElement("thead"), l = a.querySelector("colgroup");
|
|
649
|
+
l ? l.after(c) : a.prepend(c);
|
|
650
650
|
}
|
|
651
|
-
|
|
652
|
-
}, "ensureTableStructure"), r = /* @__PURE__ */ h((
|
|
653
|
-
const l = Array.from(
|
|
651
|
+
a.classList.add("nine-table-element");
|
|
652
|
+
}, "ensureTableStructure"), r = /* @__PURE__ */ h((a, c) => {
|
|
653
|
+
const l = Array.from(a.querySelectorAll(c + " tr")), g = Array.from(a.querySelectorAll(c + " th," + c + " td")), f = l.length;
|
|
654
654
|
if (f === 0 || g.length === 0) return;
|
|
655
655
|
let b = 0;
|
|
656
656
|
g.forEach((p) => {
|
|
@@ -666,9 +666,9 @@ const ie = class ie {
|
|
|
666
666
|
w = M;
|
|
667
667
|
break;
|
|
668
668
|
}
|
|
669
|
-
const T = m.rowSpan || 1,
|
|
669
|
+
const T = m.rowSpan || 1, R = m.colSpan || 1;
|
|
670
670
|
for (let M = 0; M < T; M++)
|
|
671
|
-
for (let B = 0; B <
|
|
671
|
+
for (let B = 0; B < R; B++)
|
|
672
672
|
x + M < f && w + B < b && (u[x + M][w + B] = M === 0 && B === 0 ? "1" : "0");
|
|
673
673
|
});
|
|
674
674
|
}), l.forEach((p) => {
|
|
@@ -681,13 +681,13 @@ const ie = class ie {
|
|
|
681
681
|
}
|
|
682
682
|
});
|
|
683
683
|
});
|
|
684
|
-
}, "resetColIndex"),
|
|
685
|
-
return s(
|
|
686
|
-
const l =
|
|
687
|
-
l &&
|
|
684
|
+
}, "resetColIndex"), i = n.cloneNode(!0);
|
|
685
|
+
return s(i), e(i), r(i, "thead"), r(i, "tbody"), r(i, "tfoot"), Array.from(i.querySelectorAll("colgroup col")).forEach((a, c) => {
|
|
686
|
+
const l = a.getAttribute("fixed");
|
|
687
|
+
l && i.querySelectorAll(`thead [data-col="${c}"], tbody [data-col="${c}"], tfoot [data-col="${c}"]`).forEach((g) => {
|
|
688
688
|
g.setAttribute("fixed", l);
|
|
689
689
|
});
|
|
690
|
-
}),
|
|
690
|
+
}), i;
|
|
691
691
|
}
|
|
692
692
|
// π― [μΆκ°] td/thμ μ μΈλ cell-type μμ±μ μ½μ΄ 컀μ€ν
νκ·Έλ‘ μλ κ°μΈκΈ°
|
|
693
693
|
};
|
|
@@ -702,11 +702,11 @@ const rs = class rs {
|
|
|
702
702
|
q(this, "render", /* @__PURE__ */ h(() => {
|
|
703
703
|
const { startRow: n, startCol: e, endRow: s, endCol: r } = t(this, X);
|
|
704
704
|
S.log("π¨ [CellSelection.render] Rendering range ->", t(this, X));
|
|
705
|
-
const
|
|
705
|
+
const i = t(this, N).querySelectorAll(
|
|
706
706
|
".ng-container-left .ng-part-body, .ng-container-body .ng-part-body, .ng-container-right .ng-part-body"
|
|
707
707
|
);
|
|
708
|
-
if (
|
|
709
|
-
|
|
708
|
+
if (i.forEach((a) => {
|
|
709
|
+
a.querySelectorAll(".selected, .selected-top, .selected-bottom, .selected-left, .selected-right").forEach((c) => {
|
|
710
710
|
c.classList.remove("selected", "selected-top", "selected-bottom", "selected-left", "selected-right");
|
|
711
711
|
});
|
|
712
712
|
}), n < 0 || e < 0) {
|
|
@@ -714,8 +714,8 @@ const rs = class rs {
|
|
|
714
714
|
return;
|
|
715
715
|
}
|
|
716
716
|
let o = 0;
|
|
717
|
-
|
|
718
|
-
|
|
717
|
+
i.forEach((a) => {
|
|
718
|
+
a.querySelectorAll("tbody tr").forEach((c) => {
|
|
719
719
|
const { matrixRow: l } = V(this, K, qt).call(this, c);
|
|
720
720
|
l < 0 || c.querySelectorAll("td, th").forEach((g) => {
|
|
721
721
|
const f = parseInt(g.dataset.col, 10);
|
|
@@ -736,7 +736,7 @@ const rs = class rs {
|
|
|
736
736
|
}
|
|
737
737
|
setRange(n, e, s, r) {
|
|
738
738
|
S.log(`π [CellSelection.setRange] Input -> startRow: ${n}, startCol: ${e}, endRow: ${s}, endCol: ${r}`);
|
|
739
|
-
let
|
|
739
|
+
let i = Math.min(n, s), o = Math.max(n, s), a = Math.min(e, r), c = Math.max(e, r);
|
|
740
740
|
const l = t(this, N).querySelectorAll(
|
|
741
741
|
".ng-container-left .ng-part-body, .ng-container-body .ng-part-body, .ng-container-right .ng-part-body"
|
|
742
742
|
);
|
|
@@ -749,22 +749,22 @@ const rs = class rs {
|
|
|
749
749
|
p < 0 || u.querySelectorAll("td, th").forEach((x) => {
|
|
750
750
|
const w = parseInt(x.dataset.col, 10);
|
|
751
751
|
if (isNaN(w)) return;
|
|
752
|
-
const m = parseInt(x.rowSpan || 1, 10), T = parseInt(x.colSpan || 1, 10),
|
|
753
|
-
if (
|
|
754
|
-
const
|
|
755
|
-
(
|
|
752
|
+
const m = parseInt(x.rowSpan || 1, 10), T = parseInt(x.colSpan || 1, 10), R = p + m - 1, M = w + T - 1;
|
|
753
|
+
if (R >= i && p <= o && M >= a && w <= c) {
|
|
754
|
+
const z = Math.min(i, p), Gt = Math.max(o, R), bs = Math.min(a, w), ps = Math.max(c, M);
|
|
755
|
+
(z !== i || Gt !== o || bs !== a || ps !== c) && (i = z, o = Gt, a = bs, c = ps, g = !0);
|
|
756
756
|
}
|
|
757
757
|
});
|
|
758
758
|
});
|
|
759
759
|
});
|
|
760
|
-
y(this, X, { startRow:
|
|
760
|
+
y(this, X, { startRow: i, startCol: a, endRow: o, endCol: c }), S.log("π¦ [CellSelection.setRange] Final Range ->", t(this, X)), this.render();
|
|
761
761
|
}
|
|
762
762
|
};
|
|
763
763
|
N = new WeakMap(), X = new WeakMap(), K = new WeakSet(), qt = /* @__PURE__ */ h(function(n) {
|
|
764
764
|
if (!n || n.classList.contains("nodata")) return { dataRow: -1, subRowIndex: -1, matrixRow: -1 };
|
|
765
765
|
const e = parseInt(n.dataset.row, 10);
|
|
766
766
|
if (isNaN(e)) return { dataRow: -1, subRowIndex: -1, matrixRow: -1 };
|
|
767
|
-
const s = n.closest("tbody"),
|
|
767
|
+
const s = n.closest("tbody"), i = Array.from(s.querySelectorAll("tr:not(.nodata)")).filter((l) => parseInt(l.dataset.row, 10) === e), o = i.indexOf(n), a = i.length > 0 ? i.length : 1, c = e * a + (o >= 0 ? o : n.sectionRowIndex % a);
|
|
768
768
|
return { dataRow: e, subRowIndex: o, matrixRow: c };
|
|
769
769
|
}, "#getMatrixRow"), ws = /* @__PURE__ */ h(function() {
|
|
770
770
|
const n = t(this, N).querySelector(".ng-container-top");
|
|
@@ -777,21 +777,21 @@ N = new WeakMap(), X = new WeakMap(), K = new WeakSet(), qt = /* @__PURE__ */ h(
|
|
|
777
777
|
const s = e.target.closest("td, th");
|
|
778
778
|
if (!s || s.dataset.row === void 0 || s.dataset.col === void 0 || s.closest("tr").classList.contains("nodata")) return;
|
|
779
779
|
t(this, N).style.userSelect = "none", t(this, N).style.webkitUserSelect = "none";
|
|
780
|
-
const r = s.closest("tr"), { matrixRow:
|
|
781
|
-
if (
|
|
780
|
+
const r = s.closest("tr"), { matrixRow: i } = V(this, K, qt).call(this, r), o = parseInt(s.dataset.col, 10);
|
|
781
|
+
if (i < 0) {
|
|
782
782
|
t(this, N).style.userSelect = "", t(this, N).style.webkitUserSelect = "";
|
|
783
783
|
return;
|
|
784
784
|
}
|
|
785
|
-
S.log(`π±οΈ [MouseDown Success] startRow: ${
|
|
786
|
-
let
|
|
785
|
+
S.log(`π±οΈ [MouseDown Success] startRow: ${i}, startCol: ${o}`), t(this, N).navigation.currentCell = s;
|
|
786
|
+
let a = i, c = o;
|
|
787
787
|
const l = /* @__PURE__ */ h((f) => {
|
|
788
788
|
const b = document.elementFromPoint(f.clientX, f.clientY);
|
|
789
789
|
let u = b == null ? void 0 : b.closest("td, th");
|
|
790
790
|
if (!u || !t(this, N).contains(u)) {
|
|
791
791
|
const m = t(this, N).querySelectorAll(".ng-part-body tbody tr:not(.nodata) td, .ng-part-body tbody tr:not(.nodata) th");
|
|
792
792
|
for (const T of m) {
|
|
793
|
-
const
|
|
794
|
-
if (f.clientX >=
|
|
793
|
+
const R = T.getBoundingClientRect();
|
|
794
|
+
if (f.clientX >= R.left && f.clientX <= R.right && f.clientY >= R.top && f.clientY <= R.bottom) {
|
|
795
795
|
u = T;
|
|
796
796
|
break;
|
|
797
797
|
}
|
|
@@ -799,7 +799,7 @@ N = new WeakMap(), X = new WeakMap(), K = new WeakSet(), qt = /* @__PURE__ */ h(
|
|
|
799
799
|
}
|
|
800
800
|
if (!u || u.dataset.row === void 0 || u.dataset.col === void 0 || u.closest("tr").classList.contains("nodata")) return;
|
|
801
801
|
const p = u.closest("tr"), { matrixRow: x } = V(this, K, qt).call(this, p), w = parseInt(u.dataset.col, 10);
|
|
802
|
-
x < 0 ||
|
|
802
|
+
x < 0 || a === x && c === w || (a = x, c = w, this.setRange(i, o, x, w));
|
|
803
803
|
}, "onMouseMove"), g = /* @__PURE__ */ h(() => {
|
|
804
804
|
S.log("π±οΈ [MouseUp] Drag ended."), t(this, N).style.userSelect = "", t(this, N).style.webkitUserSelect = "", document.removeEventListener("mousemove", l), document.removeEventListener("mouseup", g);
|
|
805
805
|
}, "onMouseUp");
|
|
@@ -807,7 +807,7 @@ N = new WeakMap(), X = new WeakMap(), K = new WeakSet(), qt = /* @__PURE__ */ h(
|
|
|
807
807
|
});
|
|
808
808
|
}, "#initEvents"), h(rs, "CellSelection");
|
|
809
809
|
let Le = rs;
|
|
810
|
-
var F, lt, ae, le, pt, He, Ot, Dt, Bt, ct,
|
|
810
|
+
var F, lt, ae, le, pt, He, Ot, Dt, Bt, ct, Wt, vs;
|
|
811
811
|
const os = class os {
|
|
812
812
|
constructor(n) {
|
|
813
813
|
d(this, pt);
|
|
@@ -823,12 +823,12 @@ const os = class os {
|
|
|
823
823
|
const s = t(this, ct).call(this, n);
|
|
824
824
|
if (s.length === 0) return e + 1;
|
|
825
825
|
let r = e + 1;
|
|
826
|
-
const
|
|
827
|
-
s.forEach((o) =>
|
|
828
|
-
for (const o of
|
|
829
|
-
const
|
|
830
|
-
if (e >=
|
|
831
|
-
r =
|
|
826
|
+
const i = [];
|
|
827
|
+
s.forEach((o) => i.push(...Array.from(o.querySelectorAll("td")))), i.sort((o, a) => parseInt(o.dataset.col, 10) - parseInt(a.dataset.col, 10));
|
|
828
|
+
for (const o of i) {
|
|
829
|
+
const a = parseInt(o.dataset.col, 10), c = parseInt(o.colSpan || 1, 10);
|
|
830
|
+
if (e >= a && e < a + c) {
|
|
831
|
+
r = a + c;
|
|
832
832
|
break;
|
|
833
833
|
}
|
|
834
834
|
}
|
|
@@ -838,12 +838,12 @@ const os = class os {
|
|
|
838
838
|
const s = t(this, ct).call(this, n);
|
|
839
839
|
if (s.length === 0) return Math.max(0, e - 1);
|
|
840
840
|
let r = -1;
|
|
841
|
-
const
|
|
842
|
-
s.forEach((o) =>
|
|
843
|
-
for (const o of
|
|
844
|
-
const
|
|
845
|
-
if (
|
|
846
|
-
r =
|
|
841
|
+
const i = [];
|
|
842
|
+
s.forEach((o) => i.push(...Array.from(o.querySelectorAll("td")))), i.sort((o, a) => parseInt(o.dataset.col, 10) - parseInt(a.dataset.col, 10));
|
|
843
|
+
for (const o of i) {
|
|
844
|
+
const a = parseInt(o.dataset.col, 10);
|
|
845
|
+
if (a < e)
|
|
846
|
+
r = a;
|
|
847
847
|
else
|
|
848
848
|
break;
|
|
849
849
|
}
|
|
@@ -855,9 +855,9 @@ const os = class os {
|
|
|
855
855
|
".ng-container-left .ng-part-body, .ng-container-body .ng-part-body, .ng-container-right .ng-part-body"
|
|
856
856
|
), s = [];
|
|
857
857
|
return e.forEach((r) => {
|
|
858
|
-
const
|
|
859
|
-
for (const o of
|
|
860
|
-
const
|
|
858
|
+
const i = Array.from(r.querySelectorAll("tbody tr:not(.nodata)"));
|
|
859
|
+
for (const o of i) {
|
|
860
|
+
const a = parseInt(o.dataset.row, 10), c = i.filter((p) => parseInt(p.dataset.row, 10) === a), l = c.length > 0 ? c.length : 1, g = c.indexOf(o), f = a * l + (g >= 0 ? g : 0);
|
|
861
861
|
if (f === n) {
|
|
862
862
|
s.push(o);
|
|
863
863
|
break;
|
|
@@ -876,17 +876,17 @@ const os = class os {
|
|
|
876
876
|
}), s;
|
|
877
877
|
}, "#findTargetTrsByMatrix"));
|
|
878
878
|
// π― rowSpan λ° colSpan κ²½κ³λ₯Ό λͺ¨λ μΆ©μ‘±νλ μ
μ 3λΆν μ 체 μμμμ νμ
|
|
879
|
-
d(this,
|
|
880
|
-
const
|
|
879
|
+
d(this, Wt, /* @__PURE__ */ h((n, e, s, r) => {
|
|
880
|
+
const i = t(this, F).querySelectorAll(
|
|
881
881
|
".ng-container-left .ng-part-body, .ng-container-body .ng-part-body, .ng-container-right .ng-part-body"
|
|
882
882
|
), o = r !== void 0 ? r : n * 1 + e;
|
|
883
|
-
for (const
|
|
884
|
-
const c = Array.from(
|
|
883
|
+
for (const a of i) {
|
|
884
|
+
const c = Array.from(a.querySelectorAll("tbody tr:not(.nodata)"));
|
|
885
885
|
for (const l of c) {
|
|
886
886
|
const g = parseInt(l.dataset.row, 10), f = c.filter((w) => parseInt(w.dataset.row, 10) === g), b = f.length > 0 ? f.length : 1, u = f.indexOf(l), p = g * b + (u >= 0 ? u : 0), x = Array.from(l.querySelectorAll("td"));
|
|
887
887
|
for (const w of x) {
|
|
888
|
-
const m = parseInt(w.dataset.col, 10), T = parseInt(w.colSpan || 1, 10),
|
|
889
|
-
if (!isNaN(m) && s >= m && s < m + T && o >= p && o < p +
|
|
888
|
+
const m = parseInt(w.dataset.col, 10), T = parseInt(w.colSpan || 1, 10), R = parseInt(w.rowSpan || 1, 10);
|
|
889
|
+
if (!isNaN(m) && s >= m && s < m + T && o >= p && o < p + R && window.getComputedStyle(w).display !== "none")
|
|
890
890
|
return w;
|
|
891
891
|
}
|
|
892
892
|
}
|
|
@@ -904,39 +904,39 @@ const os = class os {
|
|
|
904
904
|
const e = parseInt(n.dataset.row, 10), s = parseInt(n.dataset.col, 10);
|
|
905
905
|
if (!isNaN(e) && !isNaN(s)) {
|
|
906
906
|
y(this, ae, e), y(this, le, s);
|
|
907
|
-
const r = n.closest("tr"),
|
|
908
|
-
if (
|
|
909
|
-
const
|
|
907
|
+
const r = n.closest("tr"), i = r == null ? void 0 : r.closest("tbody");
|
|
908
|
+
if (i) {
|
|
909
|
+
const a = Array.from(i.querySelectorAll("tr:not(.nodata)")).filter((f) => parseInt(f.dataset.row, 10) === e), c = a.length > 0 ? a.length : 1, l = a.indexOf(r), g = e * c + (l >= 0 ? l : 0);
|
|
910
910
|
t(this, F).selection.setRange(g, s, g, s);
|
|
911
911
|
}
|
|
912
912
|
}
|
|
913
913
|
}
|
|
914
914
|
moveCell(n) {
|
|
915
|
-
var m, T,
|
|
915
|
+
var m, T, R, M;
|
|
916
916
|
if (!t(this, lt)) return;
|
|
917
|
-
const e = t(this, lt), s = e.closest("tr"), r = parseInt(e.dataset.row, 10),
|
|
917
|
+
const e = t(this, lt), s = e.closest("tr"), r = parseInt(e.dataset.row, 10), i = parseInt(e.dataset.col, 10), o = s == null ? void 0 : s.closest("tbody");
|
|
918
918
|
if (!o) return;
|
|
919
919
|
const c = Array.from(o.querySelectorAll("tr:not(.nodata)")).filter((B) => parseInt(B.dataset.row, 10) === r), l = c.length > 0 ? c.length : 1, g = c.indexOf(s), f = r * l + (g >= 0 ? g : 0);
|
|
920
|
-
let b = f, u =
|
|
920
|
+
let b = f, u = i;
|
|
921
921
|
switch (n.code) {
|
|
922
922
|
case "Tab":
|
|
923
923
|
if (n.preventDefault(), n.shiftKey) {
|
|
924
|
-
if (u = t(this, Bt).call(this, f,
|
|
924
|
+
if (u = t(this, Bt).call(this, f, i), u < 0 && f > 0) {
|
|
925
925
|
b = f - 1;
|
|
926
|
-
const B = t(this, ct).call(this, b),
|
|
927
|
-
u =
|
|
926
|
+
const B = t(this, ct).call(this, b), z = t(this, Ot).call(this, B);
|
|
927
|
+
u = z ? parseInt(z.dataset.col, 10) : 0;
|
|
928
928
|
}
|
|
929
929
|
} else {
|
|
930
|
-
u = t(this, Dt).call(this, f,
|
|
931
|
-
const B = t(this, ct).call(this, f),
|
|
930
|
+
u = t(this, Dt).call(this, f, i);
|
|
931
|
+
const B = t(this, ct).call(this, f), z = t(this, Ot).call(this, B), Gt = z ? parseInt(z.dataset.col, 10) + parseInt(z.colSpan || 1, 10) : 0;
|
|
932
932
|
u >= Gt && (b = f + 1, u = 0);
|
|
933
933
|
}
|
|
934
934
|
break;
|
|
935
935
|
case "ArrowRight":
|
|
936
|
-
u = t(this, Dt).call(this, f,
|
|
936
|
+
u = t(this, Dt).call(this, f, i);
|
|
937
937
|
break;
|
|
938
938
|
case "ArrowLeft":
|
|
939
|
-
u = t(this, Bt).call(this, f,
|
|
939
|
+
u = t(this, Bt).call(this, f, i);
|
|
940
940
|
break;
|
|
941
941
|
case "ArrowDown":
|
|
942
942
|
n.preventDefault(), b = f + (e.rowSpan || 1);
|
|
@@ -946,14 +946,14 @@ const os = class os {
|
|
|
946
946
|
break;
|
|
947
947
|
}
|
|
948
948
|
const p = Math.floor(b / l), x = b % l;
|
|
949
|
-
let w = t(this,
|
|
949
|
+
let w = t(this, Wt).call(this, p, x, u, b);
|
|
950
950
|
if (w)
|
|
951
951
|
this.currentCell = w, V(this, pt, He).call(this, w);
|
|
952
952
|
else if (p !== r && p >= 0) {
|
|
953
953
|
const B = ((T = (m = t(this, F)).getRowHeight) == null ? void 0 : T.call(m)) || 40;
|
|
954
|
-
(M = (
|
|
955
|
-
const
|
|
956
|
-
|
|
954
|
+
(M = (R = t(this, F)).scrollToY) == null || M.call(R, p * B), setTimeout(() => {
|
|
955
|
+
const z = t(this, Wt).call(this, p, x, u, b);
|
|
956
|
+
z && (this.currentCell = z, V(this, pt, He).call(this, z));
|
|
957
957
|
}, 0);
|
|
958
958
|
}
|
|
959
959
|
}
|
|
@@ -964,20 +964,20 @@ He = /* @__PURE__ */ h(function(n) {
|
|
|
964
964
|
if (!e) return;
|
|
965
965
|
const s = n.getBoundingClientRect(), r = e.getBoundingClientRect();
|
|
966
966
|
s.top < r.top ? e.scrollTop -= r.top - s.top : s.bottom > r.bottom && (e.scrollTop += s.bottom - r.bottom), s.left < r.left ? e.scrollLeft -= r.left - s.left : s.right > r.right && (e.scrollLeft += s.right - r.right);
|
|
967
|
-
}, "#ensureCellVisible"), Ot = new WeakMap(), Dt = new WeakMap(), Bt = new WeakMap(), ct = new WeakMap(),
|
|
967
|
+
}, "#ensureCellVisible"), Ot = new WeakMap(), Dt = new WeakMap(), Bt = new WeakMap(), ct = new WeakMap(), Wt = new WeakMap(), vs = /* @__PURE__ */ h(function() {
|
|
968
968
|
t(this, F).addEventListener("keydown", (n) => {
|
|
969
969
|
["Tab", "ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"].includes(n.code) && this.moveCell(n);
|
|
970
970
|
});
|
|
971
971
|
}, "#initEvents"), h(os, "CellNavigation");
|
|
972
972
|
let Me = os;
|
|
973
|
-
var ce, ht, dt,
|
|
973
|
+
var ce, ht, dt, zt, Pt, he, de, xt, fe, ue;
|
|
974
974
|
const Ct = class Ct extends HTMLElement {
|
|
975
975
|
constructor() {
|
|
976
976
|
super();
|
|
977
977
|
d(this, ce);
|
|
978
978
|
d(this, ht, null);
|
|
979
979
|
d(this, dt);
|
|
980
|
-
d(this,
|
|
980
|
+
d(this, zt);
|
|
981
981
|
d(this, Pt);
|
|
982
982
|
q(this, "invalidate", /* @__PURE__ */ h(() => {
|
|
983
983
|
S.log("sheet.invalidate()"), t(this, dt).refresh();
|
|
@@ -985,8 +985,8 @@ const Ct = class Ct extends HTMLElement {
|
|
|
985
985
|
q(this, "generate", /* @__PURE__ */ h((e) => {
|
|
986
986
|
if (S.log("sheet.generate()"), !e) return;
|
|
987
987
|
y(this, ht, Ie.compile(e)), t(this, he).call(this), t(this, de).call(this);
|
|
988
|
-
const s = this.querySelector(".ng-container-body .ng-part-header"), r = this.querySelector(".ng-container-body .ng-part-footer"),
|
|
989
|
-
s &&
|
|
988
|
+
const s = this.querySelector(".ng-container-body .ng-part-header"), r = this.querySelector(".ng-container-body .ng-part-footer"), i = this.querySelector(".ng-nodata-overlay");
|
|
989
|
+
s && i && (i.style.top = `${s.offsetHeight}px`), r && i && (i.style.bottom = `${r.offsetHeight}px`), t(this, dt).initialize(), setTimeout(() => {
|
|
990
990
|
var o;
|
|
991
991
|
(o = this.querySelector("nine-table-hscrollbar")) == null || o.refresh();
|
|
992
992
|
}, 0);
|
|
@@ -997,36 +997,40 @@ const Ct = class Ct extends HTMLElement {
|
|
|
997
997
|
{ selector: ".ng-container-left", type: "left" },
|
|
998
998
|
{ selector: ".ng-container-right", type: "right" }
|
|
999
999
|
].forEach(({ selector: s, type: r }) => {
|
|
1000
|
-
var
|
|
1001
|
-
(
|
|
1000
|
+
var i, o, a;
|
|
1001
|
+
(i = this.querySelector(`${s} .ng-part-header`)) == null || i.appendChild(t(this, xt).call(this, t(this, ht), r, "header")), (o = this.querySelector(`${s} .ng-virtual-spacer`)) == null || o.before(t(this, xt).call(this, t(this, ht), r, "body")), (a = this.querySelector(`${s} .ng-part-footer`)) == null || a.appendChild(t(this, xt).call(this, t(this, ht), r, "footer"));
|
|
1002
1002
|
});
|
|
1003
1003
|
}, "#renderSplitContainers"));
|
|
1004
1004
|
d(this, de, /* @__PURE__ */ h(() => {
|
|
1005
1005
|
["left", "right", "body"].forEach((e) => {
|
|
1006
1006
|
const s = this.querySelector(`.ng-container-${e}`), r = s == null ? void 0 : s.querySelectorAll("table");
|
|
1007
1007
|
if (!s || !r || r.length === 0) return;
|
|
1008
|
-
let
|
|
1008
|
+
let i = 0;
|
|
1009
1009
|
r[0].querySelectorAll("col").forEach((o) => {
|
|
1010
|
-
const
|
|
1011
|
-
isNaN(
|
|
1012
|
-
}), e === "body" ? s.style.flex = "1"
|
|
1010
|
+
const a = parseInt(o.getAttribute("width"), 10);
|
|
1011
|
+
isNaN(a) || (i += a);
|
|
1012
|
+
}), e === "body" ? (s.style.flex = "1", r.forEach((o) => {
|
|
1013
|
+
o.style.width = `${i}px`, o.style.minWidth = `${i}px`;
|
|
1014
|
+
})) : (s.style.flex = `0 0 ${i}px`, s.style.width = `${i}px`, r.forEach((o) => {
|
|
1015
|
+
o.style.width = `${i}px`, o.style.minWidth = `${i}px`;
|
|
1016
|
+
}));
|
|
1013
1017
|
});
|
|
1014
1018
|
}, "#updateContainerWidths"));
|
|
1015
1019
|
d(this, xt, /* @__PURE__ */ h((e, s, r) => {
|
|
1016
|
-
const
|
|
1020
|
+
const i = e.cloneNode(!0), o = i.querySelector("thead"), a = i.querySelector("tbody"), c = i.querySelector("tfoot");
|
|
1017
1021
|
if (r === "header") {
|
|
1018
|
-
if (
|
|
1022
|
+
if (a && a.remove(), c && c.remove(), e.querySelector("tbody")) {
|
|
1019
1023
|
const g = document.createElement("tbody");
|
|
1020
|
-
g.className = "fixed-tbody",
|
|
1024
|
+
g.className = "fixed-tbody", i.appendChild(g);
|
|
1021
1025
|
}
|
|
1022
|
-
} else r === "body" ? (o && o.remove(), c && c.remove(),
|
|
1023
|
-
return s === "left" ?
|
|
1026
|
+
} else r === "body" ? (o && o.remove(), c && c.remove(), a && (a.className = "bindable-tbody")) : r === "footer" && (o && o.remove(), a && a.remove());
|
|
1027
|
+
return s === "left" ? i.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
|
|
1024
1028
|
l.getAttribute("fixed") !== "left" && l.remove();
|
|
1025
|
-
}) : s === "right" ?
|
|
1029
|
+
}) : s === "right" ? i.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
|
|
1026
1030
|
l.getAttribute("fixed") !== "right" && l.remove();
|
|
1027
|
-
}) :
|
|
1031
|
+
}) : i.querySelectorAll("[fixed=left], [fixed=right]").forEach((l) => {
|
|
1028
1032
|
l.remove();
|
|
1029
|
-
}),
|
|
1033
|
+
}), i;
|
|
1030
1034
|
}, "#createSplitTable"));
|
|
1031
1035
|
q(this, "getRowHeight", /* @__PURE__ */ h(() => t(this, dt).getRowHeight(), "getRowHeight"));
|
|
1032
1036
|
q(this, "scrollToX", /* @__PURE__ */ h((e) => {
|
|
@@ -1038,9 +1042,9 @@ const Ct = class Ct extends HTMLElement {
|
|
|
1038
1042
|
s && (s.scrollTop = e);
|
|
1039
1043
|
}, "scrollToY"));
|
|
1040
1044
|
d(this, fe, /* @__PURE__ */ h(() => {
|
|
1041
|
-
t(this,
|
|
1045
|
+
t(this, ue).call(this), y(this, zt, new Le(this)), y(this, Pt, new Me(this));
|
|
1042
1046
|
}, "#init"));
|
|
1043
|
-
d(this,
|
|
1047
|
+
d(this, ue, /* @__PURE__ */ h(() => {
|
|
1044
1048
|
const e = Ct.SCROLLBAR_SIZE;
|
|
1045
1049
|
this.innerHTML = `
|
|
1046
1050
|
<style>
|
|
@@ -1248,7 +1252,7 @@ const Ct = class Ct extends HTMLElement {
|
|
|
1248
1252
|
t(this, fe).call(this);
|
|
1249
1253
|
}
|
|
1250
1254
|
get selection() {
|
|
1251
|
-
return t(this,
|
|
1255
|
+
return t(this, zt);
|
|
1252
1256
|
}
|
|
1253
1257
|
get navigation() {
|
|
1254
1258
|
return t(this, Pt);
|
|
@@ -1257,19 +1261,19 @@ const Ct = class Ct extends HTMLElement {
|
|
|
1257
1261
|
this.innerHTML = "", S.log("NineTableSheet destroyed.");
|
|
1258
1262
|
}
|
|
1259
1263
|
};
|
|
1260
|
-
ce = new WeakMap(), ht = new WeakMap(), dt = new WeakMap(),
|
|
1264
|
+
ce = new WeakMap(), ht = new WeakMap(), dt = new WeakMap(), zt = new WeakMap(), Pt = new WeakMap(), he = new WeakMap(), de = new WeakMap(), xt = new WeakMap(), fe = new WeakMap(), ue = new WeakMap(), h(Ct, "NineTableSheet"), q(Ct, "SCROLLBAR_SIZE", 16);
|
|
1261
1265
|
let Zt = Ct;
|
|
1262
1266
|
customElements.get("nine-table-sheet") || customElements.define("nine-table-sheet", Zt);
|
|
1263
|
-
var
|
|
1267
|
+
var ge, Ft;
|
|
1264
1268
|
const is = class is extends HTMLElement {
|
|
1265
1269
|
constructor() {
|
|
1266
1270
|
super();
|
|
1267
|
-
d(this,
|
|
1271
|
+
d(this, ge, /* @__PURE__ */ h(() => {
|
|
1268
1272
|
var e;
|
|
1269
1273
|
(e = this.querySelector(".nine-tab-bar")) == null || e.addEventListener("click", (s) => {
|
|
1270
1274
|
var o;
|
|
1271
|
-
const r = s.ctrlKey || s.metaKey || s.shiftKey,
|
|
1272
|
-
t(this, Ft).call(this,
|
|
1275
|
+
const r = s.ctrlKey || s.metaKey || s.shiftKey, i = parseInt((o = s.target.closest(".nine-tab-item")) == null ? void 0 : o.dataset.index, 10);
|
|
1276
|
+
t(this, Ft).call(this, i, r);
|
|
1273
1277
|
}), t(this, Ft).call(this, 0, !1);
|
|
1274
1278
|
}, "#init"));
|
|
1275
1279
|
d(this, Ft, /* @__PURE__ */ h((e, s = !1) => {
|
|
@@ -1281,17 +1285,17 @@ const is = class is extends HTMLElement {
|
|
|
1281
1285
|
const p = parseInt(u.getAttribute("data-index"), 10), x = this.querySelector(`nine-splitter[data-split-index="${p}"]`), w = g[p + 1];
|
|
1282
1286
|
x && w && w.classList.contains("active") && x.style.setProperty("display", "flex");
|
|
1283
1287
|
});
|
|
1284
|
-
}, "updateSplitters"),
|
|
1285
|
-
if (!
|
|
1288
|
+
}, "updateSplitters"), i = this.querySelector(".nine-tab-bar"), o = this.querySelector("nine-table-sheets-body"), a = i.querySelectorAll(".nine-tab-item"), c = o.querySelectorAll("nine-table-sheet");
|
|
1289
|
+
if (!a[e]) return;
|
|
1286
1290
|
if (!s)
|
|
1287
|
-
|
|
1291
|
+
a.forEach((g, f) => {
|
|
1288
1292
|
g.classList.toggle("active", f === e);
|
|
1289
1293
|
}), c.forEach((g, f) => {
|
|
1290
1294
|
const b = f === e;
|
|
1291
1295
|
g.classList.toggle("active", b), g.style.flex = b ? "1 1 100%" : "";
|
|
1292
1296
|
});
|
|
1293
1297
|
else {
|
|
1294
|
-
const g =
|
|
1298
|
+
const g = a[e], f = i.querySelectorAll(".nine-tab-item.active");
|
|
1295
1299
|
if (g.classList.contains("active") && f.length <= 1)
|
|
1296
1300
|
return;
|
|
1297
1301
|
g.classList.toggle("active");
|
|
@@ -1305,10 +1309,10 @@ const is = class is extends HTMLElement {
|
|
|
1305
1309
|
}, "#switchSheet"));
|
|
1306
1310
|
}
|
|
1307
1311
|
connectedCallback() {
|
|
1308
|
-
t(this,
|
|
1312
|
+
t(this, ge).call(this);
|
|
1309
1313
|
}
|
|
1310
1314
|
};
|
|
1311
|
-
|
|
1315
|
+
ge = new WeakMap(), Ft = new WeakMap(), h(is, "NineTableSheets");
|
|
1312
1316
|
let $e = is;
|
|
1313
1317
|
customElements.get("nine-table-sheets") || customElements.define("nine-table-sheets", $e);
|
|
1314
1318
|
var _, be, jt, pe;
|
|
@@ -1325,11 +1329,11 @@ const as = class as {
|
|
|
1325
1329
|
var c, l;
|
|
1326
1330
|
const n = Array.from(t(this, _).shadowRoot.querySelectorAll("nine-table-sheet.active"));
|
|
1327
1331
|
if (n.length === 0) return;
|
|
1328
|
-
const e = parseInt(t(this, _).getAttribute("max-display-row"), 10) || 10, s = Math.max(...n.map((g) => g.getRowHeight())), r = (c = t(this, _).shadowRoot.querySelector("nine-table-header")) == null ? void 0 : c.getBoundingClientRect().height,
|
|
1329
|
-
t(this, _).style.height = `${
|
|
1332
|
+
const e = parseInt(t(this, _).getAttribute("max-display-row"), 10) || 10, s = Math.max(...n.map((g) => g.getRowHeight())), r = (c = t(this, _).shadowRoot.querySelector("nine-table-header")) == null ? void 0 : c.getBoundingClientRect().height, i = (l = t(this, _).shadowRoot.querySelector("nine-table-sheets-footer")) == null ? void 0 : l.getBoundingClientRect().height, o = Zt.SCROLLBAR_SIZE, a = e * s + r + i + o;
|
|
1333
|
+
t(this, _).style.height = `${a}px`;
|
|
1330
1334
|
}, "#applyAutoHeight"));
|
|
1331
1335
|
d(this, pe, /* @__PURE__ */ h(() => {
|
|
1332
|
-
const e = Array.from(t(this, _).children).filter((c) => c.tagName === "TABLE"), s = t(this, _).getAttribute("auto-height") === "true", r = e.length,
|
|
1336
|
+
const e = Array.from(t(this, _).children).filter((c) => c.tagName === "TABLE"), s = t(this, _).getAttribute("auto-height") === "true", r = e.length, i = e.map((c, l) => {
|
|
1333
1337
|
const f = `<nine-table-sheet class="${l === 0 ? "active" : ""}" data-index="${l}"></nine-table-sheet>`, b = l < r - 1 ? `<nine-splitter class="h" data-split-index="${l}"></nine-splitter>` : "";
|
|
1334
1338
|
return f + b;
|
|
1335
1339
|
}).join(""), o = e.map((c, l) => `<div class="nine-tab-item ${l === 0 ? "active" : ""}" data-index="${l}">Sheet ${l + 1}</div>`).join("");
|
|
@@ -1444,7 +1448,7 @@ const as = class as {
|
|
|
1444
1448
|
<nine-table-body>
|
|
1445
1449
|
<nine-table-summary></nine-table-summary>
|
|
1446
1450
|
<nine-table-sheets>
|
|
1447
|
-
<nine-table-sheets-body>${
|
|
1451
|
+
<nine-table-sheets-body>${i}</nine-table-sheets-body>
|
|
1448
1452
|
<nine-table-sheets-footer>
|
|
1449
1453
|
<div class="nine-tab-bar">${o}</div>
|
|
1450
1454
|
<div class="sheets-counter">Total : <span id="row-count">0</span></div>
|
|
@@ -1454,8 +1458,8 @@ const as = class as {
|
|
|
1454
1458
|
</nine-table-body>
|
|
1455
1459
|
<nine-table-footer></nine-table-footer>
|
|
1456
1460
|
`, t(this, _).shadowRoot.querySelector("nine-table-sheets").classList.add("nodata");
|
|
1457
|
-
const
|
|
1458
|
-
|
|
1461
|
+
const a = t(this, _).shadowRoot.querySelectorAll("nine-table-sheet");
|
|
1462
|
+
a == null || a.forEach((c, l) => {
|
|
1459
1463
|
e[l] && setTimeout(() => {
|
|
1460
1464
|
c.generate(e[l]), s && t(this, jt).call(this);
|
|
1461
1465
|
});
|
|
@@ -1484,12 +1488,12 @@ const ls = class ls {
|
|
|
1484
1488
|
};
|
|
1485
1489
|
Yt = new WeakMap(), wt = new WeakMap(), h(ls, "ngRow");
|
|
1486
1490
|
let _e = ls;
|
|
1487
|
-
var D, I,
|
|
1491
|
+
var D, I, W, vt, ye, J, me, ft, Vt, xe, we, St;
|
|
1488
1492
|
const P = class P {
|
|
1489
1493
|
constructor(n, e) {
|
|
1490
1494
|
d(this, D);
|
|
1491
1495
|
d(this, I);
|
|
1492
|
-
d(this,
|
|
1496
|
+
d(this, W, []);
|
|
1493
1497
|
d(this, vt, []);
|
|
1494
1498
|
d(this, ye, 0);
|
|
1495
1499
|
d(this, J, []);
|
|
@@ -1510,12 +1514,12 @@ const P = class P {
|
|
|
1510
1514
|
});
|
|
1511
1515
|
}, "#invalidate"));
|
|
1512
1516
|
q(this, "get", /* @__PURE__ */ h((n, e) => {
|
|
1513
|
-
var
|
|
1517
|
+
var i;
|
|
1514
1518
|
const s = this.getValidData();
|
|
1515
1519
|
if (!s || s.length <= 0) return;
|
|
1516
1520
|
if (n == null) return t(this, St).call(this, s);
|
|
1517
1521
|
if (n < 0 || n >= s.length) return null;
|
|
1518
|
-
const r = typeof ((
|
|
1522
|
+
const r = typeof ((i = t(this, D).fields) == null ? void 0 : i.get) == "function" ? t(this, D).fields.get() : [];
|
|
1519
1523
|
if (e != null) {
|
|
1520
1524
|
const o = r.indexOf(e);
|
|
1521
1525
|
return o >= 0 ? s[n].v[o] : null;
|
|
@@ -1535,20 +1539,20 @@ const P = class P {
|
|
|
1535
1539
|
_: [0, 0, 0, 0, P.ROW_STATE.EMPTY, !1, !1, !0, !1, !0, !0, !1, t(this, J).slice(), -1, {}, {}]
|
|
1536
1540
|
}), "#getDefaultMeta"));
|
|
1537
1541
|
q(this, "reset", /* @__PURE__ */ h(() => {
|
|
1538
|
-
y(this,
|
|
1542
|
+
y(this, W, []), y(this, vt, []), t(this, ft).call(this);
|
|
1539
1543
|
}, "reset"));
|
|
1540
1544
|
q(this, "clear", /* @__PURE__ */ h(() => {
|
|
1541
1545
|
var n;
|
|
1542
|
-
t(this, I).rawRecords = [], y(this,
|
|
1546
|
+
t(this, I).rawRecords = [], y(this, W, []), y(this, vt, []), (n = t(this, I).viewRecords) != null && n.reset && t(this, I).viewRecords.reset();
|
|
1543
1547
|
}, "clear"));
|
|
1544
1548
|
d(this, xe, /* @__PURE__ */ h((n) => {
|
|
1545
1549
|
var r;
|
|
1546
1550
|
Array.isArray(n) || (n = [n]);
|
|
1547
1551
|
const e = typeof ((r = t(this, D).fields) == null ? void 0 : r.get) == "function" ? t(this, D).fields.get() : Object.keys(n[0] || {}), s = [];
|
|
1548
|
-
return n.forEach((
|
|
1552
|
+
return n.forEach((i) => {
|
|
1549
1553
|
const o = { v: [] };
|
|
1550
|
-
e.forEach((
|
|
1551
|
-
o.v.push(a
|
|
1554
|
+
e.forEach((a) => {
|
|
1555
|
+
o.v.push(i[a] !== void 0 && i[a] !== null ? i[a] : "");
|
|
1552
1556
|
}), s.push(o);
|
|
1553
1557
|
}), s;
|
|
1554
1558
|
}, "#json2Array"));
|
|
@@ -1560,18 +1564,18 @@ const P = class P {
|
|
|
1560
1564
|
const s = t(this, xe).call(this, n);
|
|
1561
1565
|
t(this, I).rawRecords = t(this, I).rawRecords.concat(t(this, we).call(this, s)), this.resetRecords();
|
|
1562
1566
|
const r = this.count() - 1;
|
|
1563
|
-
return e || s.forEach((
|
|
1564
|
-
const
|
|
1565
|
-
|
|
1567
|
+
return e || s.forEach((i, o) => {
|
|
1568
|
+
const a = t(this, I).rawRecords[r - o];
|
|
1569
|
+
a && (a.__ng.rowState = P.ROW_STATE.EMPTY);
|
|
1566
1570
|
}), t(this, ft).call(this), r;
|
|
1567
1571
|
}, "add"));
|
|
1568
1572
|
q(this, "delete", /* @__PURE__ */ h((n) => {
|
|
1569
1573
|
let e = [];
|
|
1570
1574
|
Array.isArray(n) ? e = n : typeof n > "u" ? e = [t(this, I).host.row.at] : e = [parseInt(n, 10)], e.sort((s, r) => r - s).forEach((s) => {
|
|
1571
|
-
if (t(this,
|
|
1572
|
-
const r = t(this,
|
|
1573
|
-
t(this,
|
|
1574
|
-
|
|
1575
|
+
if (t(this, W)[s]) {
|
|
1576
|
+
const r = t(this, W)[s].__ng.rowid;
|
|
1577
|
+
t(this, W)[s].__ng.rowState === P.ROW_STATE.INSERT ? t(this, I).rawRecords = t(this, I).rawRecords.filter((i) => i.__ng.rowid !== r) : t(this, I).rawRecords.forEach((i) => {
|
|
1578
|
+
i.__ng.rowid === r && (i.__ng.deleted = !0, i.__ng.rowState = P.ROW_STATE.DELETE);
|
|
1575
1579
|
});
|
|
1576
1580
|
}
|
|
1577
1581
|
}), this.resetRecords(), t(this, ft).call(this);
|
|
@@ -1579,31 +1583,31 @@ const P = class P {
|
|
|
1579
1583
|
q(this, "setValue", /* @__PURE__ */ h((n, e, s) => {
|
|
1580
1584
|
var c;
|
|
1581
1585
|
n = parseInt(n, 10);
|
|
1582
|
-
const
|
|
1583
|
-
if (
|
|
1586
|
+
const i = (typeof ((c = t(this, D).fields) == null ? void 0 : c.get) == "function" ? t(this, D).fields.get() : []).indexOf(e);
|
|
1587
|
+
if (i < 0) return;
|
|
1584
1588
|
const o = this.getValidData()[n];
|
|
1585
1589
|
if (!o) return;
|
|
1586
|
-
const
|
|
1587
|
-
|
|
1590
|
+
const a = o.v[i];
|
|
1591
|
+
a !== s && o.__ng.rowState !== P.ROW_STATE.INSERT && (o.__ng.o.hasOwnProperty(e) || (o.__ng.o[e] = a), o.__ng.rowState = P.ROW_STATE.UPDATE), o.v[i] = s;
|
|
1588
1592
|
}, "setValue"));
|
|
1589
1593
|
q(this, "resetRecords", /* @__PURE__ */ h(() => {
|
|
1590
|
-
y(this, vt, t(this, I).rawRecords.filter((n) => !n.__ng.deleted)), y(this,
|
|
1594
|
+
y(this, vt, t(this, I).rawRecords.filter((n) => !n.__ng.deleted)), y(this, W, t(this, I).rawRecords.filter((n) => !n.__ng.deleted && !n.__ng.filtered)), t(this, I).rawRecords.forEach((n, e) => {
|
|
1591
1595
|
n.__ng.rowidx = e;
|
|
1592
|
-
}), t(this,
|
|
1596
|
+
}), t(this, W).forEach((n, e) => {
|
|
1593
1597
|
n.__ng.i = e;
|
|
1594
1598
|
});
|
|
1595
1599
|
}, "resetRecords"));
|
|
1596
|
-
q(this, "getValidData", /* @__PURE__ */ h(() => (t(this,
|
|
1600
|
+
q(this, "getValidData", /* @__PURE__ */ h(() => (t(this, W).length === 0 && t(this, I).rawRecords.length > 0 && this.resetRecords(), t(this, W)), "getValidData"));
|
|
1597
1601
|
d(this, St, /* @__PURE__ */ h((n) => {
|
|
1598
1602
|
var o;
|
|
1599
1603
|
if (!n) return n;
|
|
1600
|
-
const e = !Array.isArray(n), s = e ? [n] : n, r = typeof ((o = t(this, D).fields) == null ? void 0 : o.get) == "function" ? t(this, D).fields.get() : [],
|
|
1604
|
+
const e = !Array.isArray(n), s = e ? [n] : n, r = typeof ((o = t(this, D).fields) == null ? void 0 : o.get) == "function" ? t(this, D).fields.get() : [], i = s.filter((a) => !a.__ng.deleted).map((a) => {
|
|
1601
1605
|
const c = {};
|
|
1602
1606
|
return r.forEach((l, g) => {
|
|
1603
|
-
c[l] =
|
|
1604
|
-
}), c.__ng =
|
|
1607
|
+
c[l] = a.v ? a.v[g] : a[l];
|
|
1608
|
+
}), c.__ng = a.__ng, c;
|
|
1605
1609
|
});
|
|
1606
|
-
return e ?
|
|
1610
|
+
return e ? i[0] : i;
|
|
1607
1611
|
}, "#conv"));
|
|
1608
1612
|
q(this, "count", /* @__PURE__ */ h(() => this.getValidData().length, "count"));
|
|
1609
1613
|
y(this, D, n), y(this, I, e), t(this, me).call(this);
|
|
@@ -1618,16 +1622,16 @@ const P = class P {
|
|
|
1618
1622
|
return ++xs(this, ye)._;
|
|
1619
1623
|
}
|
|
1620
1624
|
get count() {
|
|
1621
|
-
return t(this,
|
|
1625
|
+
return t(this, W).length;
|
|
1622
1626
|
}
|
|
1623
1627
|
get length() {
|
|
1624
|
-
return t(this,
|
|
1628
|
+
return t(this, W).length;
|
|
1625
1629
|
}
|
|
1626
1630
|
getRowCount() {
|
|
1627
1631
|
return this.length;
|
|
1628
1632
|
}
|
|
1629
1633
|
};
|
|
1630
|
-
D = new WeakMap(), I = new WeakMap(),
|
|
1634
|
+
D = new WeakMap(), I = new WeakMap(), W = new WeakMap(), vt = new WeakMap(), ye = new WeakMap(), J = new WeakMap(), me = new WeakMap(), ft = new WeakMap(), Vt = new WeakMap(), xe = new WeakMap(), we = new WeakMap(), St = new WeakMap(), h(P, "ngData"), // π― ν μν μ μ μμλ₯Ό ν΄λμ€ λ΄λΆλ‘ λ΄μ¬ν
|
|
1631
1635
|
q(P, "ROW_STATE", {
|
|
1632
1636
|
EMPTY: "EMPTY",
|
|
1633
1637
|
NORMAL: "NORMAL",
|
|
@@ -1636,20 +1640,20 @@ q(P, "ROW_STATE", {
|
|
|
1636
1640
|
DELETE: "DELETE"
|
|
1637
1641
|
});
|
|
1638
1642
|
let Oe = P;
|
|
1639
|
-
var
|
|
1643
|
+
var ut;
|
|
1640
1644
|
const cs = class cs {
|
|
1641
1645
|
constructor(n) {
|
|
1642
|
-
d(this,
|
|
1643
|
-
y(this,
|
|
1646
|
+
d(this, ut);
|
|
1647
|
+
y(this, ut, n), this.row = new _e(this), this.data = new Oe(t(this, ut), this), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.pageCnt = 25, this.viewRecords.reset = () => {
|
|
1644
1648
|
var e;
|
|
1645
|
-
(e = t(this,
|
|
1649
|
+
(e = t(this, ut).view) != null && e.redraw && t(this, ut).view.redraw();
|
|
1646
1650
|
}, this.setDataSource = (e) => {
|
|
1647
1651
|
this.data && this.data.reset(), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.data.set(e || []);
|
|
1648
1652
|
}, this.getRowState = (e) => {
|
|
1649
|
-
var r,
|
|
1653
|
+
var r, i;
|
|
1650
1654
|
const s = parseInt(e, 10);
|
|
1651
1655
|
if (!(s >= this.data.count()))
|
|
1652
|
-
return (
|
|
1656
|
+
return (i = (r = this.data.getValidData()[s]) == null ? void 0 : r.__ng) == null ? void 0 : i.rowState;
|
|
1653
1657
|
}, this.getRowPosition = () => this.row.at, this.setRowPosition = (e) => {
|
|
1654
1658
|
this.row.at = e;
|
|
1655
1659
|
}, this.scrollTo_V1 = (e) => (e < 0 && (e = 0), e >= this.rawRecords.length && (e = this.rawRecords.length - 1), this.viewRecords.rawIndex = e, this.viewRecords.reset && this.viewRecords.reset(), !(e <= 0 || e >= this.rawRecords.length - 1)), this.getColumn = (e, s) => this.data.get(e, s), this.setColumn = (e, s, r) => {
|
|
@@ -1657,7 +1661,7 @@ const cs = class cs {
|
|
|
1657
1661
|
}, this.setDataSource([]);
|
|
1658
1662
|
}
|
|
1659
1663
|
};
|
|
1660
|
-
|
|
1664
|
+
ut = new WeakMap(), h(cs, "ngDataManager");
|
|
1661
1665
|
let De = cs;
|
|
1662
1666
|
var Rt, H, Ut, ve;
|
|
1663
1667
|
const hs = class hs {
|
|
@@ -1682,25 +1686,25 @@ const hs = class hs {
|
|
|
1682
1686
|
if (!(!n || n.length === 0)) {
|
|
1683
1687
|
for (const e of n)
|
|
1684
1688
|
S.log(e), $("[data-bind]", e).each((s, r) => {
|
|
1685
|
-
const
|
|
1686
|
-
|
|
1689
|
+
const i = r.dataset.bind, o = r.getAttribute("data-type") || "string";
|
|
1690
|
+
i && t(this, H).push({ name: i, type: o });
|
|
1687
1691
|
}), ["data-expr", "background-color", "color", "tooltip", "visible", "readonly", "enable-button", "enable-check", "class-expr", "icon-color", "icon-src"].forEach((s) => {
|
|
1688
|
-
$(`[${s}]`, e).each((r,
|
|
1689
|
-
var o =
|
|
1692
|
+
$(`[${s}]`, e).each((r, i) => {
|
|
1693
|
+
var o = i.getAttribute(s);
|
|
1690
1694
|
if (o.indexOf("data.") < 0) {
|
|
1691
|
-
const
|
|
1692
|
-
if (
|
|
1695
|
+
const a = o.search(/[(]/g);
|
|
1696
|
+
if (a > 0)
|
|
1693
1697
|
try {
|
|
1694
|
-
o = String(window[o.substring(0,
|
|
1698
|
+
o = String(window[o.substring(0, a).trim()]);
|
|
1695
1699
|
} catch {
|
|
1696
1700
|
o = "";
|
|
1697
1701
|
}
|
|
1698
1702
|
}
|
|
1699
|
-
o.split("data.").forEach((
|
|
1700
|
-
if (
|
|
1701
|
-
const c =
|
|
1703
|
+
o.split("data.").forEach((a) => {
|
|
1704
|
+
if (a.trim() != "") {
|
|
1705
|
+
const c = a.search(/[^_A-Za-z0-9]/g);
|
|
1702
1706
|
let l = "";
|
|
1703
|
-
c >= 0 ? l =
|
|
1707
|
+
c >= 0 ? l = a.substring(0, c) : o.startsWith("data.") && (l = a.replace("data.", "")), l && t(this, H).push({ name: l, type: "string" });
|
|
1704
1708
|
}
|
|
1705
1709
|
});
|
|
1706
1710
|
});
|
|
@@ -1732,17 +1736,17 @@ const hs = class hs {
|
|
|
1732
1736
|
};
|
|
1733
1737
|
Rt = new WeakMap(), H = new WeakMap(), Ut = new WeakMap(), ve = new WeakMap(), h(hs, "ngFields");
|
|
1734
1738
|
let Be = hs;
|
|
1735
|
-
var
|
|
1739
|
+
var gt, Se, Re;
|
|
1736
1740
|
const ds = class ds extends HTMLElement {
|
|
1737
1741
|
constructor() {
|
|
1738
1742
|
super();
|
|
1739
1743
|
//#created = false;
|
|
1740
|
-
d(this,
|
|
1744
|
+
d(this, gt);
|
|
1741
1745
|
d(this, Se);
|
|
1742
1746
|
d(this, Re, /* @__PURE__ */ h(() => {
|
|
1743
1747
|
this.fields = new Be(this), y(this, Se, new Ne(this)), S.log("NineTable connected."), this.dispatchEvent(new CustomEvent("load", { bubbles: !0, detail: { target: this } }));
|
|
1744
1748
|
}, "#init"));
|
|
1745
|
-
this.attachShadow({ mode: "open" }), y(this,
|
|
1749
|
+
this.attachShadow({ mode: "open" }), y(this, gt, new De(this));
|
|
1746
1750
|
}
|
|
1747
1751
|
connectedCallback() {
|
|
1748
1752
|
t(this, Re).call(this);
|
|
@@ -1752,20 +1756,20 @@ const ds = class ds extends HTMLElement {
|
|
|
1752
1756
|
}
|
|
1753
1757
|
// π― μΈλΆμμ grid.data.set(...) ννλ‘ μ κ·Όν μ μλλ‘ λ°μ΄ν° λ§€λμ μ€ν
|
|
1754
1758
|
get data() {
|
|
1755
|
-
return t(this,
|
|
1759
|
+
return t(this, gt).data;
|
|
1756
1760
|
}
|
|
1757
1761
|
// π― ν(row) κ΄λ ¨ μ μ΄ μ κ·Όμ μ€ν
|
|
1758
1762
|
get row() {
|
|
1759
|
-
return t(this,
|
|
1763
|
+
return t(this, gt).row;
|
|
1760
1764
|
}
|
|
1761
1765
|
// π― μ 체 λ°μ΄ν° λ§€λμ μ κ·Ό νμν κ²½μ°
|
|
1762
1766
|
get dataManager() {
|
|
1763
|
-
return t(this,
|
|
1767
|
+
return t(this, gt);
|
|
1764
1768
|
}
|
|
1765
1769
|
};
|
|
1766
|
-
|
|
1767
|
-
let
|
|
1768
|
-
customElements.get("nine-table") || customElements.define("nine-table",
|
|
1770
|
+
gt = new WeakMap(), Se = new WeakMap(), Re = new WeakMap(), h(ds, "NineTable");
|
|
1771
|
+
let We = ds;
|
|
1772
|
+
customElements.get("nine-table") || customElements.define("nine-table", We);
|
|
1769
1773
|
const Tt = class Tt extends HTMLElement {
|
|
1770
1774
|
// π 컀μ€ν
μ€νμΌμ© μΊμ μΆκ°
|
|
1771
1775
|
constructor() {
|
|
@@ -1778,9 +1782,9 @@ const Tt = class Tt extends HTMLElement {
|
|
|
1778
1782
|
}
|
|
1779
1783
|
};
|
|
1780
1784
|
h(Tt, "BasicCellElement"), q(Tt, "_styleCache", /* @__PURE__ */ new Map()), q(Tt, "_customStyleCache", /* @__PURE__ */ new Map());
|
|
1781
|
-
let
|
|
1785
|
+
let ze = Tt;
|
|
1782
1786
|
var L, Xt, v, Xe, Ke, Ge, Ze, Je;
|
|
1783
|
-
const fs = class fs extends
|
|
1787
|
+
const fs = class fs extends ze {
|
|
1784
1788
|
constructor() {
|
|
1785
1789
|
super();
|
|
1786
1790
|
d(this, L);
|
|
@@ -1816,30 +1820,30 @@ const fs = class fs extends We {
|
|
|
1816
1820
|
if (e && (e = parseInt(e)), e && !isNaN(e)) {
|
|
1817
1821
|
var s = t(this, v).closest("tr"), r = [];
|
|
1818
1822
|
$("th,td", s).each((m, T) => {
|
|
1819
|
-
var
|
|
1820
|
-
|
|
1823
|
+
var R = ninegrid.j.querySelectorAll(T).attr("suppress");
|
|
1824
|
+
R && T.dataset.row && (R = parseInt(R), !isNaN(R) && R <= e && r.push(R));
|
|
1821
1825
|
}), r.sort();
|
|
1822
|
-
var
|
|
1826
|
+
var i = !1;
|
|
1823
1827
|
if (parseInt(s.sectionRowIndex / t(this, L).template.length) > 0)
|
|
1824
1828
|
for (var o of r) {
|
|
1825
1829
|
if (o > e) break;
|
|
1826
|
-
var
|
|
1830
|
+
var a = parseInt(t(this, v).dataset.row), c = a - 1, l = t(this, v).closest("tr").data, g = t(this, L).data.get(c);
|
|
1827
1831
|
t(this, v).dataset.matrixRow;
|
|
1828
|
-
var f = t(this, L).body.querySelector(`tbody.bindable [suppress="${o}"][data-matrix-row="${t(this, v).dataset.matrixRow}"]`), b = f.dataset.expr ? this.getExprValue(f.dataset.expr, l,
|
|
1832
|
+
var f = t(this, L).body.querySelector(`tbody.bindable [suppress="${o}"][data-matrix-row="${t(this, v).dataset.matrixRow}"]`), b = f.dataset.expr ? this.getExprValue(f.dataset.expr, l, a) : l[f.dataset.bind], u = f.dataset.expr ? this.getExprValue(f.dataset.expr, g, c) : g[f.dataset.bind];
|
|
1829
1833
|
if (b != u) {
|
|
1830
|
-
|
|
1834
|
+
i = !0;
|
|
1831
1835
|
break;
|
|
1832
1836
|
}
|
|
1833
1837
|
}
|
|
1834
1838
|
else
|
|
1835
|
-
|
|
1836
|
-
|
|
1839
|
+
i = !0;
|
|
1840
|
+
i ? ninegrid.j.querySelectorAll(t(this, v)).removeClass("suppress") : ninegrid.j.querySelectorAll(t(this, v)).addClass("suppress"), ninegrid.j.querySelectorAll(t(this, v)).hasClass("hidden") || (i ? ninegrid.j.querySelectorAll(t(this, v)).removeClass("hidden") : ninegrid.j.querySelectorAll(t(this, v)).addClass("hidden"));
|
|
1837
1841
|
var p = parseInt(t(this, v).dataset.matrixRow), x = p - 1, w = t(this, L).body.querySelector(`tbody.bindable [data-col="${t(this, v).dataset.col}"][data-matrix-row="${x}"]`);
|
|
1838
1842
|
$(w).hasClass("suppress") && !ninegrid.j.querySelectorAll(t(this, v)).hasClass("suppress") ? ninegrid.j.querySelectorAll(w).removeClass("last-none-suppress").addClass("last-suppress") : !$(w).hasClass("suppress") && ninegrid.j.querySelectorAll(t(this, v)).hasClass("suppress") ? ninegrid.j.querySelectorAll(w).removeClass("last-suppress").addClass("last-none-suppress") : ninegrid.j.querySelectorAll(w).removeClass("last-none-suppress").removeClass("last-suppress");
|
|
1839
1843
|
}
|
|
1840
1844
|
}
|
|
1841
1845
|
}, "#resetSuppress"));
|
|
1842
|
-
q(this, "getExprValue", /* @__PURE__ */ h((e, s, r,
|
|
1846
|
+
q(this, "getExprValue", /* @__PURE__ */ h((e, s, r, i) => {
|
|
1843
1847
|
if (typeof e < "u")
|
|
1844
1848
|
try {
|
|
1845
1849
|
r = parseInt(r);
|
|
@@ -1877,7 +1881,7 @@ const fs = class fs extends We {
|
|
|
1877
1881
|
};
|
|
1878
1882
|
L = new WeakMap(), Xt = new WeakMap(), v = new WeakMap(), Xe = new WeakMap(), Ke = new WeakMap(), Ge = new WeakMap(), Ze = new WeakMap(), Je = new WeakMap(), h(fs, "CellElement");
|
|
1879
1883
|
let Pe = fs;
|
|
1880
|
-
const
|
|
1884
|
+
const us = class us extends Pe {
|
|
1881
1885
|
constructor() {
|
|
1882
1886
|
super();
|
|
1883
1887
|
}
|
|
@@ -1888,10 +1892,10 @@ const gs = class gs extends Pe {
|
|
|
1888
1892
|
return super.refresh();
|
|
1889
1893
|
}
|
|
1890
1894
|
};
|
|
1891
|
-
h(
|
|
1892
|
-
let Fe =
|
|
1895
|
+
h(us, "EditableCellElement");
|
|
1896
|
+
let Fe = us;
|
|
1893
1897
|
var Kt, bt, At, Et, Ae, Q, Qe;
|
|
1894
|
-
const
|
|
1898
|
+
const gs = class gs extends Fe {
|
|
1895
1899
|
constructor() {
|
|
1896
1900
|
super();
|
|
1897
1901
|
d(this, Kt);
|
|
@@ -1937,8 +1941,8 @@ const us = class us extends Fe {
|
|
|
1937
1941
|
d(this, Qe, /* @__PURE__ */ h((e) => {
|
|
1938
1942
|
if (!["Escape", "Enter", "Tab", "Home", "End", "ArrowLeft", "ArrowRight", "PageUp", "PageDown", "Backspace", "Delete"].includes(e.code)) {
|
|
1939
1943
|
if (t(this, bt) == "number") {
|
|
1940
|
-
let
|
|
1941
|
-
if (t(this, Q) && Number(t(this, Q)) > 0 &&
|
|
1944
|
+
let i = [];
|
|
1945
|
+
if (t(this, Q) && Number(t(this, Q)) > 0 && i.push("."), t(this, Et) && Number(t(this, Et)) >= 0 && i.push("-"), !(e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && !i.includes(e.key) && e.preventDefault(), t(this, Q) && (e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && e.target.selectionStart == e.target.selectionEnd) {
|
|
1942
1946
|
var s = e.target.value, r = s.indexOf(".");
|
|
1943
1947
|
if (r >= 0) {
|
|
1944
1948
|
var s = s.substr(r + 1, s.length);
|
|
@@ -1962,8 +1966,8 @@ const us = class us extends Fe {
|
|
|
1962
1966
|
`, super.connectedCallback(), y(this, Kt, this.querySelector("input"));
|
|
1963
1967
|
}
|
|
1964
1968
|
};
|
|
1965
|
-
Kt = new WeakMap(), bt = new WeakMap(), At = new WeakMap(), Et = new WeakMap(), Ae = new WeakMap(), Q = new WeakMap(), Qe = new WeakMap(), h(
|
|
1966
|
-
let je =
|
|
1969
|
+
Kt = new WeakMap(), bt = new WeakMap(), At = new WeakMap(), Et = new WeakMap(), Ae = new WeakMap(), Q = new WeakMap(), Qe = new WeakMap(), h(gs, "CellInputText");
|
|
1970
|
+
let je = gs;
|
|
1967
1971
|
customElements.get("cell-input-text");
|
|
1968
1972
|
customElements.get("cell-input") || customElements.define("cell-input", je);
|
|
1969
1973
|
//# sourceMappingURL=nine-table.js.map
|