@ninebone/table 0.0.639 β 0.0.641
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 +310 -308
- package/dist/nine-table.js.map +1 -1
- package/dist/nine-table.umd.js +7 -7
- package/dist/nine-table.umd.js.map +1 -1
- package/package.json +1 -1
package/dist/nine-table.js
CHANGED
|
@@ -2,9 +2,9 @@ var Fe = Object.defineProperty;
|
|
|
2
2
|
var Ve = (q) => {
|
|
3
3
|
throw TypeError(q);
|
|
4
4
|
};
|
|
5
|
-
var
|
|
5
|
+
var Ke = (q, i, e) => i in q ? Fe(q, i, { enumerable: !0, configurable: !0, writable: !0, value: e }) : q[i] = e;
|
|
6
6
|
var c = (q, i) => Fe(q, "name", { value: i, configurable: !0 });
|
|
7
|
-
var
|
|
7
|
+
var E = (q, i, e) => Ke(q, typeof i != "symbol" ? i + "" : i, e), Ye = (q, i, e) => i.has(q) || Ve("Cannot " + e);
|
|
8
8
|
var t = (q, i, e) => (Ye(q, i, "read from private field"), e ? e.call(q) : i.get(q)), d = (q, i, e) => i.has(q) ? Ve("Cannot add the same private member more than once") : i instanceof WeakSet ? i.add(q) : i.set(q, e), y = (q, i, e, s) => (Ye(q, i, "write to private field"), s ? s.call(q, e) : i.set(q, e), e);
|
|
9
9
|
var Ue = (q, i, e, s) => ({
|
|
10
10
|
set _(r) {
|
|
@@ -14,8 +14,8 @@ var Ue = (q, i, e, s) => ({
|
|
|
14
14
|
return t(q, i, s);
|
|
15
15
|
}
|
|
16
16
|
});
|
|
17
|
-
import { trace as
|
|
18
|
-
const He = class He extends
|
|
17
|
+
import { trace as Ze } from "@ninebone/util";
|
|
18
|
+
const He = class He extends Ze.constructor {
|
|
19
19
|
constructor() {
|
|
20
20
|
super(), this.init("nine-table", "green");
|
|
21
21
|
}
|
|
@@ -23,25 +23,25 @@ const He = class He extends Ke.constructor {
|
|
|
23
23
|
c(He, "Trace");
|
|
24
24
|
let oe = He;
|
|
25
25
|
const H = new oe();
|
|
26
|
-
var B,
|
|
26
|
+
var B, F, w, K, Z, G, It, J, _t;
|
|
27
27
|
const Me = class Me extends HTMLElement {
|
|
28
28
|
constructor() {
|
|
29
29
|
super();
|
|
30
30
|
d(this, B);
|
|
31
|
-
d(this,
|
|
31
|
+
d(this, F, !1);
|
|
32
32
|
d(this, w);
|
|
33
|
-
d(this, X);
|
|
34
33
|
d(this, K);
|
|
35
34
|
d(this, Z);
|
|
35
|
+
d(this, G);
|
|
36
36
|
d(this, It, /* @__PURE__ */ c(() => {
|
|
37
37
|
if (!t(this, B)) return;
|
|
38
38
|
const e = t(this, B).querySelector(".ng-container-body .ng-part-body");
|
|
39
|
-
e && (y(this,
|
|
39
|
+
e && (y(this, G, new ResizeObserver(() => {
|
|
40
40
|
this.refresh();
|
|
41
|
-
})), t(this,
|
|
41
|
+
})), t(this, G).observe(e));
|
|
42
42
|
}, "#observeResize"));
|
|
43
|
-
|
|
44
|
-
if (!t(this, B) || !t(this, w) || t(this,
|
|
43
|
+
E(this, "refresh", /* @__PURE__ */ c(() => {
|
|
44
|
+
if (!t(this, B) || !t(this, w) || t(this, F)) return;
|
|
45
45
|
const e = t(this, w).container, s = e.querySelector("table");
|
|
46
46
|
if (!s) return;
|
|
47
47
|
const r = t(this, w).track, n = t(this, w).thumb, o = t(this, B).querySelector(".ng-container-bottom"), a = e.clientWidth, h = s.scrollWidth;
|
|
@@ -55,13 +55,13 @@ const Me = class Me extends HTMLElement {
|
|
|
55
55
|
if (l <= 0) return;
|
|
56
56
|
const f = Math.max(Math.min(l * (a / h), l), 20);
|
|
57
57
|
n.style.width = `${f}px`;
|
|
58
|
-
const
|
|
59
|
-
let
|
|
60
|
-
b > 0 && (
|
|
61
|
-
const
|
|
62
|
-
|
|
58
|
+
const g = e.scrollLeft, b = h - a;
|
|
59
|
+
let u = 0;
|
|
60
|
+
b > 0 && (u = parseInt(g / b * (l - f), 10)), u < 0 && (u = 0);
|
|
61
|
+
const v = l - f;
|
|
62
|
+
u > v && (u = v), n.style.left = `${u}px`, t(this, w).left.disabled = u === 0, t(this, w).right.disabled = u >= v - 1;
|
|
63
63
|
}, "refresh"));
|
|
64
|
-
d(this,
|
|
64
|
+
d(this, J, /* @__PURE__ */ c((e) => {
|
|
65
65
|
if (!t(this, w)) return !1;
|
|
66
66
|
const s = t(this, w).container, r = s.querySelector("table");
|
|
67
67
|
if (!r) return !1;
|
|
@@ -70,21 +70,21 @@ const Me = class Me extends HTMLElement {
|
|
|
70
70
|
a < 0 && (a = 0);
|
|
71
71
|
const h = n.width - o;
|
|
72
72
|
a > h && (a = h), a = parseInt(a, 10), t(this, w).thumb.style.left = `${a}px`, t(this, w).left.disabled = a === 0, t(this, w).right.disabled = a >= h - 1;
|
|
73
|
-
const l = s.clientWidth,
|
|
74
|
-
return h > 0 &&
|
|
73
|
+
const l = s.clientWidth, g = r.scrollWidth - l;
|
|
74
|
+
return h > 0 && g > 0 && (s.scrollLeft = a / h * g), a > 0 && a < h - 1;
|
|
75
75
|
}, "#thumbMoveTo"));
|
|
76
76
|
d(this, _t, /* @__PURE__ */ c(() => {
|
|
77
77
|
const e = /* @__PURE__ */ c((r) => {
|
|
78
|
-
clearInterval(t(this,
|
|
78
|
+
clearInterval(t(this, K)), clearInterval(t(this, Z));
|
|
79
79
|
const n = parseInt(t(this, w).thumb.style.left || 0, 10);
|
|
80
|
-
t(this,
|
|
81
|
-
clearInterval(t(this,
|
|
80
|
+
t(this, J).call(this, n + r), y(this, K, setInterval(() => {
|
|
81
|
+
clearInterval(t(this, K)), y(this, Z, setInterval(() => {
|
|
82
82
|
const o = parseInt(t(this, w).thumb.style.left || 0, 10);
|
|
83
|
-
t(this,
|
|
83
|
+
t(this, J).call(this, o + r) || clearInterval(t(this, Z));
|
|
84
84
|
}, 50));
|
|
85
85
|
}, 500));
|
|
86
86
|
}, "delayScroll"), s = /* @__PURE__ */ c(() => {
|
|
87
|
-
clearInterval(t(this,
|
|
87
|
+
clearInterval(t(this, K)), clearInterval(t(this, Z));
|
|
88
88
|
}, "clearTimer");
|
|
89
89
|
["mouseup", "mouseleave", "touchend"].forEach((r) => {
|
|
90
90
|
t(this, w).left.addEventListener(r, s), t(this, w).right.addEventListener(r, s), t(this, w).track.addEventListener(r, s);
|
|
@@ -96,16 +96,16 @@ const Me = class Me extends HTMLElement {
|
|
|
96
96
|
if (r.button !== 0) return;
|
|
97
97
|
r.preventDefault();
|
|
98
98
|
const n = t(this, w).track.getBoundingClientRect(), o = t(this, w).thumb.clientWidth;
|
|
99
|
-
t(this,
|
|
99
|
+
t(this, J).call(this, r.clientX - n.left - o / 2);
|
|
100
100
|
}), t(this, w).thumb.addEventListener("mousedown", (r) => {
|
|
101
101
|
if (r.button !== 0) return;
|
|
102
|
-
r.stopPropagation(), r.preventDefault(), y(this,
|
|
102
|
+
r.stopPropagation(), r.preventDefault(), y(this, F, !0), this.shiftX = r.clientX - t(this, w).thumb.getBoundingClientRect().left;
|
|
103
103
|
const n = /* @__PURE__ */ c((a) => {
|
|
104
|
-
if (!t(this,
|
|
104
|
+
if (!t(this, F)) return;
|
|
105
105
|
const h = t(this, w).track.getBoundingClientRect();
|
|
106
|
-
t(this,
|
|
106
|
+
t(this, J).call(this, a.clientX - h.left - this.shiftX);
|
|
107
107
|
}, "onMouseMove"), o = /* @__PURE__ */ c(() => {
|
|
108
|
-
y(this,
|
|
108
|
+
y(this, F, !1), s(), document.removeEventListener("mousemove", n), document.removeEventListener("mouseup", o), this.refresh();
|
|
109
109
|
}, "onMouseUp");
|
|
110
110
|
document.addEventListener("mousemove", n), document.addEventListener("mouseup", o);
|
|
111
111
|
});
|
|
@@ -189,77 +189,77 @@ const Me = class Me extends HTMLElement {
|
|
|
189
189
|
left: this.querySelector(".ng-scroll-left"),
|
|
190
190
|
right: this.querySelector(".ng-scroll-right")
|
|
191
191
|
}), s.addEventListener("scroll", () => {
|
|
192
|
-
t(this,
|
|
192
|
+
t(this, F) || this.refresh();
|
|
193
193
|
}), t(this, _t).call(this), t(this, It).call(this), this.refresh();
|
|
194
194
|
}, "initWhenReady");
|
|
195
195
|
e();
|
|
196
196
|
}
|
|
197
197
|
disconnectedCallback() {
|
|
198
|
-
t(this,
|
|
198
|
+
t(this, G) && t(this, G).disconnect();
|
|
199
199
|
}
|
|
200
200
|
};
|
|
201
|
-
B = new WeakMap(),
|
|
201
|
+
B = new WeakMap(), F = new WeakMap(), w = new WeakMap(), K = new WeakMap(), Z = new WeakMap(), G = new WeakMap(), It = new WeakMap(), J = new WeakMap(), _t = new WeakMap(), c(Me, "NineTableHScrollBar");
|
|
202
202
|
let ae = Me;
|
|
203
203
|
customElements.get("nine-table-hscrollbar") || customElements.define("nine-table-hscrollbar", ae);
|
|
204
|
-
var
|
|
204
|
+
var V, lt, Q, T, vt, xt, Nt;
|
|
205
205
|
const $e = class $e extends HTMLElement {
|
|
206
206
|
constructor() {
|
|
207
207
|
super();
|
|
208
|
-
d(this,
|
|
209
|
-
d(this,
|
|
210
|
-
d(this,
|
|
208
|
+
d(this, V);
|
|
209
|
+
d(this, lt);
|
|
210
|
+
d(this, Q, !1);
|
|
211
211
|
d(this, T);
|
|
212
212
|
d(this, vt, 0);
|
|
213
213
|
d(this, xt, 0);
|
|
214
|
-
|
|
215
|
-
if (!t(this,
|
|
216
|
-
const e = t(this, T).container, s = t(this, T).track, r = t(this, T).thumb, n = e.clientHeight,
|
|
217
|
-
if (
|
|
214
|
+
E(this, "refresh", /* @__PURE__ */ c(() => {
|
|
215
|
+
if (!t(this, V) || !t(this, T)) return;
|
|
216
|
+
const e = t(this, T).container, s = t(this, T).track, r = t(this, T).thumb, n = e.clientHeight, o = t(this, V).data.length, a = t(this, lt).getRowHeight(), h = o * a;
|
|
217
|
+
if (h <= n || o === 0) {
|
|
218
218
|
this.style.display = "none";
|
|
219
219
|
return;
|
|
220
220
|
} else
|
|
221
221
|
this.style.display = "flex";
|
|
222
|
-
const
|
|
223
|
-
if (
|
|
224
|
-
const
|
|
225
|
-
r.style.height = `${
|
|
226
|
-
const
|
|
227
|
-
let
|
|
228
|
-
|
|
229
|
-
const
|
|
230
|
-
|
|
222
|
+
const l = s.clientHeight;
|
|
223
|
+
if (l <= 0) return;
|
|
224
|
+
const f = Math.max(Math.min(l * (n / h), l), 20);
|
|
225
|
+
r.style.height = `${f}px`;
|
|
226
|
+
const g = e.scrollTop, b = Math.max(h - n, 1);
|
|
227
|
+
let u = 0;
|
|
228
|
+
b > 0 && (u = g / b * (l - f));
|
|
229
|
+
const v = l - f;
|
|
230
|
+
u < 0 && (u = 0), u > v && (u = v), r.style.top = `${u}px`, t(this, T).top.disabled = g <= 0, t(this, T).bottom.disabled = g >= b - 1;
|
|
231
231
|
}, "refresh"));
|
|
232
232
|
d(this, Nt, /* @__PURE__ */ c(() => {
|
|
233
233
|
H.log("nine-table-vscrollbar.#init");
|
|
234
234
|
const e = t(this, T).container, s = /* @__PURE__ */ c(() => {
|
|
235
|
-
const n = (t(this,
|
|
235
|
+
const n = (t(this, V).data.get() || []).length, o = t(this, lt).getRowHeight();
|
|
236
236
|
return n * o;
|
|
237
237
|
}, "getContentHeight");
|
|
238
238
|
e.addEventListener("scroll", () => {
|
|
239
|
-
t(this,
|
|
239
|
+
t(this, Q) || this.refresh();
|
|
240
240
|
}), t(this, T).thumb.addEventListener("mousedown", (r) => {
|
|
241
241
|
if (r.button !== 0) return;
|
|
242
|
-
r.stopPropagation(), r.preventDefault(), y(this,
|
|
242
|
+
r.stopPropagation(), r.preventDefault(), y(this, Q, !0), y(this, vt, r.clientY), y(this, xt, e.scrollTop);
|
|
243
243
|
const n = /* @__PURE__ */ c((a) => {
|
|
244
|
-
if (!t(this,
|
|
245
|
-
const h = t(this, T).track.getBoundingClientRect(), l = t(this, T).thumb.clientHeight,
|
|
246
|
-
if (
|
|
247
|
-
const
|
|
248
|
-
let
|
|
249
|
-
const
|
|
250
|
-
|
|
244
|
+
if (!t(this, Q)) return;
|
|
245
|
+
const h = t(this, T).track.getBoundingClientRect(), l = t(this, T).thumb.clientHeight, g = h.height - l, b = a.clientY - t(this, vt), u = e.clientHeight, v = s(), x = Math.max(v - u, 1);
|
|
246
|
+
if (g > 0 && x > 0) {
|
|
247
|
+
const A = b / g * x;
|
|
248
|
+
let m = t(this, xt) + A;
|
|
249
|
+
const W = Math.max(0, v - u);
|
|
250
|
+
m < 0 && (m = 0), m > W && (m = W), e.scrollTop = m;
|
|
251
251
|
}
|
|
252
252
|
this.refresh();
|
|
253
253
|
}, "onMouseMove"), o = /* @__PURE__ */ c(() => {
|
|
254
|
-
y(this,
|
|
254
|
+
y(this, Q, !1), document.removeEventListener("mousemove", n), document.removeEventListener("mouseup", o), this.refresh();
|
|
255
255
|
}, "onMouseUp");
|
|
256
256
|
document.addEventListener("mousemove", n), document.addEventListener("mouseup", o);
|
|
257
257
|
}), t(this, T).track.addEventListener("mousedown", (r) => {
|
|
258
258
|
if (r.button !== 0 || r.target === t(this, T).thumb) return;
|
|
259
|
-
const n = t(this, T).track.getBoundingClientRect(), o = t(this, T).thumb.clientHeight, a = r.clientY - n.top - o / 2, l = n.height - o, f = e.clientHeight,
|
|
259
|
+
const n = t(this, T).track.getBoundingClientRect(), o = t(this, T).thumb.clientHeight, a = r.clientY - n.top - o / 2, l = n.height - o, f = e.clientHeight, g = s(), b = Math.max(g - f, 1);
|
|
260
260
|
if (l > 0 && b > 0) {
|
|
261
|
-
const
|
|
262
|
-
e.scrollTop =
|
|
261
|
+
const u = Math.max(0, Math.min(1, a / l));
|
|
262
|
+
e.scrollTop = u * b;
|
|
263
263
|
}
|
|
264
264
|
this.refresh();
|
|
265
265
|
}), t(this, T).top.addEventListener("click", () => {
|
|
@@ -270,7 +270,7 @@ const $e = class $e extends HTMLElement {
|
|
|
270
270
|
}, "#init"));
|
|
271
271
|
}
|
|
272
272
|
connectedCallback() {
|
|
273
|
-
y(this,
|
|
273
|
+
y(this, V, this.getRootNode().host), y(this, lt, this.closest("nine-table-sheet")), this.innerHTML = `
|
|
274
274
|
<style>
|
|
275
275
|
nine-table-vscrollbar {
|
|
276
276
|
display: flex;
|
|
@@ -335,7 +335,7 @@ const $e = class $e extends HTMLElement {
|
|
|
335
335
|
<button class='ng-scroll-bottom' disabled><div class='ng-scroll-icon'></div></button>
|
|
336
336
|
`;
|
|
337
337
|
const e = /* @__PURE__ */ c(() => {
|
|
338
|
-
const s = t(this,
|
|
338
|
+
const s = t(this, V).shadowRoot.querySelector(".ng-container-body .ng-part-body");
|
|
339
339
|
if (!s) {
|
|
340
340
|
setTimeout(e, 10);
|
|
341
341
|
return;
|
|
@@ -351,53 +351,53 @@ const $e = class $e extends HTMLElement {
|
|
|
351
351
|
e();
|
|
352
352
|
}
|
|
353
353
|
};
|
|
354
|
-
|
|
354
|
+
V = new WeakMap(), lt = new WeakMap(), Q = new WeakMap(), T = new WeakMap(), vt = new WeakMap(), xt = new WeakMap(), Nt = new WeakMap(), c($e, "NineTableVScrollBar");
|
|
355
355
|
let le = $e;
|
|
356
356
|
customElements.get("nine-table-vscrollbar") || customElements.define("nine-table-vscrollbar", le);
|
|
357
|
-
var
|
|
357
|
+
var j, S, tt, D, I, Y, et, wt, Se, Ee, Wt, Ot, zt, St, Et, Bt, Dt, At, Ae, ct, qt, Pt;
|
|
358
358
|
const Ie = class Ie {
|
|
359
359
|
constructor(i) {
|
|
360
|
-
d(this,
|
|
360
|
+
d(this, j);
|
|
361
361
|
d(this, S);
|
|
362
|
-
d(this,
|
|
362
|
+
d(this, tt);
|
|
363
363
|
d(this, D, /* @__PURE__ */ new Map());
|
|
364
|
-
d(this,
|
|
365
|
-
d(this,
|
|
366
|
-
d(this,
|
|
364
|
+
d(this, I, null);
|
|
365
|
+
d(this, Y, null);
|
|
366
|
+
d(this, et, 0);
|
|
367
367
|
d(this, wt, 40);
|
|
368
368
|
d(this, Se, !1);
|
|
369
369
|
d(this, Ee, !1);
|
|
370
370
|
//#ticking = false; // π― κ³ μ μ€ν¬λ‘€ μ€λ‘νλ§μ© νλκ·Έ
|
|
371
371
|
d(this, Wt, 3);
|
|
372
|
-
|
|
372
|
+
E(this, "refresh", /* @__PURE__ */ c(() => {
|
|
373
373
|
var e;
|
|
374
374
|
H.log("rowManager.refresh");
|
|
375
375
|
const i = t(this, S).querySelector(".ng-container-body .ng-part-body");
|
|
376
|
-
i && (t(this, St).call(this), t(this,
|
|
376
|
+
i && (t(this, St).call(this), t(this, ct).call(this, i.scrollTop), (e = t(this, S).querySelector("nine-table-vscrollbar")) == null || e.refresh());
|
|
377
377
|
}, "refresh"));
|
|
378
|
-
|
|
379
|
-
H.log("rowManager.initialize"), y(this,
|
|
378
|
+
E(this, "initialize", /* @__PURE__ */ c(() => {
|
|
379
|
+
H.log("rowManager.initialize"), y(this, tt, {
|
|
380
380
|
scrollTables: t(this, S).querySelectorAll(".ng-part-body table"),
|
|
381
381
|
firstTr: t(this, S).querySelector(".ng-container-body .ng-part-body tbody.bindable-tbody tr:not(.nodata)")
|
|
382
|
-
}), y(this,
|
|
382
|
+
}), y(this, I, null), t(this, D).clear(), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((o) => {
|
|
383
383
|
const a = t(this, S).querySelector(o);
|
|
384
384
|
if (!a) return;
|
|
385
385
|
const h = a.querySelector(".ng-part-body table");
|
|
386
386
|
if (!h) return;
|
|
387
387
|
const l = h.querySelector("tbody.bindable-tbody");
|
|
388
388
|
if (!l) return;
|
|
389
|
-
const
|
|
390
|
-
t(this, D).set(o,
|
|
389
|
+
const g = Array.from(l.querySelectorAll("tr")).map((b) => b.cloneNode(!0));
|
|
390
|
+
t(this, D).set(o, g);
|
|
391
391
|
});
|
|
392
392
|
const i = t(this, S).querySelector(".ng-container-body .ng-part-body"), e = t(this, S).querySelector(".ng-container-left .ng-part-body"), s = t(this, S).querySelector(".ng-container-right .ng-part-body"), r = t(this, S).querySelector(".ng-container-body .ng-part-header"), n = t(this, S).querySelector(".ng-container-body .ng-part-footer");
|
|
393
393
|
if (i) {
|
|
394
|
-
t(this, zt).call(this, i), t(this, At).call(this), t(this, St).call(this), t(this,
|
|
394
|
+
t(this, zt).call(this, i), t(this, At).call(this), t(this, St).call(this), t(this, ct).call(this, i.scrollTop);
|
|
395
395
|
let o = !1;
|
|
396
396
|
const a = /* @__PURE__ */ c((h) => {
|
|
397
397
|
if (o) return;
|
|
398
398
|
o = !0;
|
|
399
399
|
const l = h.scrollTop, f = h.scrollLeft;
|
|
400
|
-
i && i.scrollTop !== l && (i.scrollTop = l), e && e.scrollTop !== l && (e.scrollTop = l), s && s.scrollTop !== l && (s.scrollTop = l), r && r.scrollLeft !== f && (r.scrollLeft = f), n && n.scrollLeft !== f && (n.scrollLeft = f), t(this,
|
|
400
|
+
i && i.scrollTop !== l && (i.scrollTop = l), e && e.scrollTop !== l && (e.scrollTop = l), s && s.scrollTop !== l && (s.scrollTop = l), r && r.scrollLeft !== f && (r.scrollLeft = f), n && n.scrollLeft !== f && (n.scrollLeft = f), t(this, ct).call(this, l), o = !1;
|
|
401
401
|
}, "handleContainerScroll");
|
|
402
402
|
[i, e, s].forEach((h) => {
|
|
403
403
|
h && h.addEventListener("scroll", () => {
|
|
@@ -418,11 +418,11 @@ const Ie = class Ie {
|
|
|
418
418
|
s.forEach((h) => {
|
|
419
419
|
o.appendChild(h.cloneNode(!0));
|
|
420
420
|
});
|
|
421
|
-
n ? n.before(o) : r.appendChild(o), e === ".ng-container-body" && (t(this,
|
|
421
|
+
n ? n.before(o) : r.appendChild(o), e === ".ng-container-body" && (t(this, tt).firstTr = r.querySelector("tr:not(.nodata)"));
|
|
422
422
|
}, "#renderRows"));
|
|
423
423
|
d(this, zt, /* @__PURE__ */ c((i) => {
|
|
424
|
-
if (H.log("rowManager.#measureAndCacheHeight"), t(this,
|
|
425
|
-
return t(this,
|
|
424
|
+
if (H.log("rowManager.#measureAndCacheHeight"), t(this, I) !== null && t(this, I) > 0)
|
|
425
|
+
return t(this, I);
|
|
426
426
|
H.log("#measureAndCacheHeight");
|
|
427
427
|
const e = t(this, D).get(".ng-container-body");
|
|
428
428
|
if (!e || e.length === 0) throw new Error("invalid dom");
|
|
@@ -436,20 +436,20 @@ const Ie = class Ie {
|
|
|
436
436
|
const o = t(this, S), a = o.style.display, h = o.style.visibility, l = o.style.position;
|
|
437
437
|
(a === "none" || window.getComputedStyle(o).display === "none") && (o.style.display = "block", o.style.visibility = "hidden", o.style.position = "absolute");
|
|
438
438
|
let f = 0;
|
|
439
|
-
const
|
|
440
|
-
if (
|
|
441
|
-
let
|
|
442
|
-
if (
|
|
443
|
-
const
|
|
444
|
-
|
|
439
|
+
const g = s.querySelectorAll("tr");
|
|
440
|
+
if (g.forEach((b) => {
|
|
441
|
+
let u = b.offsetHeight || b.getBoundingClientRect().height;
|
|
442
|
+
if (u === 0) {
|
|
443
|
+
const v = window.getComputedStyle(b);
|
|
444
|
+
u = parseFloat(v.height) || parseFloat(v.minHeight) || 0;
|
|
445
445
|
}
|
|
446
|
-
f +=
|
|
447
|
-
}),
|
|
448
|
-
return y(this,
|
|
446
|
+
f += u;
|
|
447
|
+
}), g.forEach((b) => b.remove()), o.style.display = a, o.style.visibility = h, o.style.position = l, f <= 0) throw new Error("invalid dom");
|
|
448
|
+
return y(this, I, f), t(this, Et).call(this), t(this, I);
|
|
449
449
|
}, "#measureAndCacheHeight"));
|
|
450
450
|
d(this, St, /* @__PURE__ */ c(() => {
|
|
451
451
|
H.log("rowManager.#updateVirtualScrollHeight");
|
|
452
|
-
const e = (t(this,
|
|
452
|
+
const e = (t(this, j).data.get() || []).length, s = t(this, I), r = e * s;
|
|
453
453
|
H.log("π [VirtualHeight]", { totalCount: e, rowHeight: s, totalVirtualHeight: r }), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((n) => {
|
|
454
454
|
const o = t(this, S).querySelector(n);
|
|
455
455
|
if (!o) return;
|
|
@@ -458,40 +458,40 @@ const Ie = class Ie {
|
|
|
458
458
|
});
|
|
459
459
|
}, "#updateVirtualScrollHeight"));
|
|
460
460
|
d(this, Et, /* @__PURE__ */ c(() => {
|
|
461
|
-
if (t(this,
|
|
462
|
-
const i = Math.ceil(t(this,
|
|
461
|
+
if (t(this, et) > 0 && t(this, I) > 0) {
|
|
462
|
+
const i = Math.ceil(t(this, et) / t(this, I));
|
|
463
463
|
y(this, wt, i + t(this, Wt));
|
|
464
464
|
}
|
|
465
465
|
}, "#updateRowCount"));
|
|
466
466
|
d(this, Bt, /* @__PURE__ */ c(() => {
|
|
467
|
-
var a, h, l, f,
|
|
467
|
+
var a, h, l, f, g, b;
|
|
468
468
|
const i = t(this, S).querySelector(".ng-container-left .ng-part-body table"), e = t(this, S).querySelector(".ng-container-body .ng-part-body table"), s = t(this, S).querySelector(".ng-container-right .ng-part-body table");
|
|
469
469
|
if (e) {
|
|
470
|
-
const
|
|
471
|
-
for (let
|
|
472
|
-
const
|
|
473
|
-
((a =
|
|
474
|
-
((h = m
|
|
475
|
-
((l = x[
|
|
476
|
-
], R = Math.max(...
|
|
477
|
-
R > 0 && (
|
|
470
|
+
const u = i ? Array.from(i.querySelectorAll("tbody tr")) : [], v = Array.from(e.querySelectorAll("tbody tr")), x = s ? Array.from(s.querySelectorAll("tbody tr")) : [], A = Math.max(u.length, v.length, x.length);
|
|
471
|
+
for (let m = 0; m < A; m++) {
|
|
472
|
+
const W = [
|
|
473
|
+
((a = u[m]) == null ? void 0 : a.getBoundingClientRect().height) || 0,
|
|
474
|
+
((h = v[m]) == null ? void 0 : h.getBoundingClientRect().height) || 0,
|
|
475
|
+
((l = x[m]) == null ? void 0 : l.getBoundingClientRect().height) || 0
|
|
476
|
+
], R = Math.max(...W);
|
|
477
|
+
R > 0 && (u[m] && (u[m].style.height = `${R}px`), v[m] && (v[m].style.height = `${R}px`), x[m] && (x[m].style.height = `${R}px`));
|
|
478
478
|
}
|
|
479
479
|
}
|
|
480
480
|
const r = t(this, S).querySelector(".ng-container-left .ng-part-footer table"), n = t(this, S).querySelector(".ng-container-body .ng-part-footer table"), o = t(this, S).querySelector(".ng-container-right .ng-part-footer table");
|
|
481
481
|
if (n) {
|
|
482
|
-
const
|
|
483
|
-
for (let
|
|
484
|
-
const
|
|
485
|
-
((f =
|
|
486
|
-
((
|
|
487
|
-
((b = x[
|
|
488
|
-
], R = Math.max(...
|
|
489
|
-
R > 0 && (
|
|
482
|
+
const u = r ? Array.from(r.querySelectorAll("tfoot tr")) : [], v = Array.from(n.querySelectorAll("tfoot tr")), x = o ? Array.from(o.querySelectorAll("tfoot tr")) : [], A = Math.max(u.length, v.length, x.length);
|
|
483
|
+
for (let m = 0; m < A; m++) {
|
|
484
|
+
const W = [
|
|
485
|
+
((f = u[m]) == null ? void 0 : f.getBoundingClientRect().height) || 0,
|
|
486
|
+
((g = v[m]) == null ? void 0 : g.getBoundingClientRect().height) || 0,
|
|
487
|
+
((b = x[m]) == null ? void 0 : b.getBoundingClientRect().height) || 0
|
|
488
|
+
], R = Math.max(...W);
|
|
489
|
+
R > 0 && (u[m] && (u[m].style.height = `${R}px`), v[m] && (v[m].style.height = `${R}px`), x[m] && (x[m].style.height = `${R}px`));
|
|
490
490
|
}
|
|
491
491
|
}
|
|
492
492
|
}, "#syncRowHeights"));
|
|
493
493
|
d(this, Dt, /* @__PURE__ */ c(() => {
|
|
494
|
-
!t(this, S) || !(t(this, S) instanceof HTMLElement) || (y(this,
|
|
494
|
+
!t(this, S) || !(t(this, S) instanceof HTMLElement) || (y(this, Y, new ResizeObserver((i) => {
|
|
495
495
|
for (const e of i) {
|
|
496
496
|
const s = e.target;
|
|
497
497
|
if (!s.classList.contains("active")) continue;
|
|
@@ -501,10 +501,10 @@ const Ie = class Ie {
|
|
|
501
501
|
const o = s.querySelector(".ng-part-header"), a = s.querySelector(".ng-part-footer");
|
|
502
502
|
o && (n += o.offsetHeight), a && (n += a.offsetHeight);
|
|
503
503
|
const h = Math.max(r - n, 100);
|
|
504
|
-
t(this,
|
|
504
|
+
t(this, et) !== h && (y(this, et, h), t(this, Et).call(this), t(this, I) !== null && (t(this, At).call(this), this.refresh()));
|
|
505
505
|
}
|
|
506
506
|
}
|
|
507
|
-
})), t(this,
|
|
507
|
+
})), t(this, Y).observe(t(this, S)));
|
|
508
508
|
}, "#initResizeObserver"));
|
|
509
509
|
d(this, At, /* @__PURE__ */ c(() => {
|
|
510
510
|
H.log("rowManager.#renderAllContainers"), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((i) => {
|
|
@@ -519,42 +519,44 @@ const Ie = class Ie {
|
|
|
519
519
|
if (!s) return;
|
|
520
520
|
const r = s.querySelector(".ng-part-body tbody.bindable-tbody");
|
|
521
521
|
if (!r) return;
|
|
522
|
-
const n = Array.from(r.querySelectorAll("tr:not(.nodata)")), o = ((l = t(this, D).get(e)) == null ? void 0 : l.length) || 1, h = (t(this,
|
|
523
|
-
n.forEach((f,
|
|
524
|
-
const b = i + Math.floor(
|
|
522
|
+
const n = Array.from(r.querySelectorAll("tr:not(.nodata)")), o = ((l = t(this, D).get(e)) == null ? void 0 : l.length) || 1, h = (t(this, j).data.get() || []).length;
|
|
523
|
+
n.forEach((f, g) => {
|
|
524
|
+
const b = i + Math.floor(g / o);
|
|
525
525
|
if (b >= h) {
|
|
526
526
|
f.style.visibility = "hidden";
|
|
527
527
|
return;
|
|
528
528
|
}
|
|
529
|
-
const
|
|
530
|
-
f.style.display = "", t(this, qt).call(this, f,
|
|
529
|
+
const u = t(this, j).data.get(b);
|
|
530
|
+
f.style.display = "", t(this, qt).call(this, f, u, b);
|
|
531
531
|
});
|
|
532
532
|
});
|
|
533
533
|
}, "#adjustBufferRows"));
|
|
534
|
-
d(this,
|
|
535
|
-
var
|
|
536
|
-
const e = t(this,
|
|
534
|
+
d(this, ct, /* @__PURE__ */ c((i) => {
|
|
535
|
+
var u, v;
|
|
536
|
+
const e = t(this, I);
|
|
537
537
|
if (!e || e <= 0) return;
|
|
538
|
-
const s = t(this,
|
|
538
|
+
const s = t(this, j).data.length;
|
|
539
539
|
if (s === 0) return;
|
|
540
|
-
const r = ((
|
|
541
|
-
|
|
542
|
-
const h = t(this,
|
|
543
|
-
(
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
const
|
|
540
|
+
const r = ((u = t(this, D).get(".ng-container-body")) == null ? void 0 : u.length) || 1, n = Math.max(0, s - 1);
|
|
541
|
+
let o = Math.min(n, Math.max(0, Math.floor(i / e))), a = Math.floor(o * e);
|
|
542
|
+
const h = t(this, S).querySelector(".ng-container-body .ng-part-body"), l = h ? h.clientHeight : 0, f = Math.max(0, s * e - l);
|
|
543
|
+
i >= f - e && f > 0 && (a = Math.min(i, f), o = n), H.log(`π [Scroll Inspect] scrollTop: ${i}, rowHeight: ${e}, startIndex: ${o}, offsetY: ${a}`);
|
|
544
|
+
const g = t(this, tt).firstTr, b = g && g.dataset.row !== void 0 ? parseInt(g.dataset.row, 10) : -1;
|
|
545
|
+
(v = t(this, tt)) == null || v.scrollTables.forEach((x) => {
|
|
546
|
+
x.style.transform = `translate3d(0, ${a}px, 0)`;
|
|
547
|
+
}), b !== o && [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((x) => {
|
|
548
|
+
const A = t(this, S).querySelector(x);
|
|
549
|
+
if (!A) return;
|
|
550
|
+
const m = A.querySelector(".ng-part-body tbody.bindable-tbody");
|
|
549
551
|
if (!m) return;
|
|
550
|
-
Array.from(m.querySelectorAll("tr:not(.nodata)")).forEach((
|
|
551
|
-
const
|
|
552
|
-
if (
|
|
553
|
-
|
|
552
|
+
Array.from(m.querySelectorAll("tr:not(.nodata)")).forEach((R, O) => {
|
|
553
|
+
const P = o + Math.floor(O / r);
|
|
554
|
+
if (P >= s) {
|
|
555
|
+
R.style.display = "none";
|
|
554
556
|
return;
|
|
555
557
|
}
|
|
556
|
-
const
|
|
557
|
-
|
|
558
|
+
const Xe = t(this, j).data.get(P);
|
|
559
|
+
R.style.display = "", t(this, qt).call(this, R, Xe, P);
|
|
558
560
|
});
|
|
559
561
|
});
|
|
560
562
|
}, "#handleScroll"));
|
|
@@ -585,29 +587,29 @@ const Ie = class Ie {
|
|
|
585
587
|
const i = t(this, S).querySelector(".ng-container-left .ng-part-header table"), e = t(this, S).querySelector(".ng-container-body .ng-part-header table"), s = t(this, S).querySelector(".ng-container-right .ng-part-header table");
|
|
586
588
|
if (!e) return;
|
|
587
589
|
const r = i ? Array.from(i.querySelectorAll("tr")) : [], n = Array.from(e.querySelectorAll("tr")), o = s ? Array.from(s.querySelectorAll("tr")) : [], a = Math.max(r.length, n.length, o.length);
|
|
588
|
-
for (let
|
|
590
|
+
for (let g = 0; g < a; g++) {
|
|
589
591
|
const b = [
|
|
590
|
-
((h = r[
|
|
591
|
-
((l = n[
|
|
592
|
-
((f = o[
|
|
593
|
-
],
|
|
594
|
-
|
|
592
|
+
((h = r[g]) == null ? void 0 : h.getBoundingClientRect().height) || 0,
|
|
593
|
+
((l = n[g]) == null ? void 0 : l.getBoundingClientRect().height) || 0,
|
|
594
|
+
((f = o[g]) == null ? void 0 : f.getBoundingClientRect().height) || 0
|
|
595
|
+
], u = Math.max(...b);
|
|
596
|
+
u > 0 && (r[g] && (r[g].style.height = `${u}px`), n[g] && (n[g].style.height = `${u}px`), o[g] && (o[g].style.height = `${u}px`));
|
|
595
597
|
}
|
|
596
598
|
}, "#syncHeaderHeights"));
|
|
597
|
-
|
|
598
|
-
t(this,
|
|
599
|
+
E(this, "destroy", /* @__PURE__ */ c(() => {
|
|
600
|
+
t(this, Y) && (t(this, Y).disconnect(), y(this, Y, null));
|
|
599
601
|
}, "destroy"));
|
|
600
|
-
y(this,
|
|
602
|
+
y(this, j, i.getRootNode().host), y(this, S, i), t(this, Dt).call(this);
|
|
601
603
|
}
|
|
602
604
|
getRowHeight() {
|
|
603
|
-
return t(this,
|
|
605
|
+
return t(this, I);
|
|
604
606
|
}
|
|
605
607
|
templateLength(i = ".ng-container-body") {
|
|
606
608
|
var e;
|
|
607
609
|
return ((e = t(this, D).get(i)) == null ? void 0 : e.length) || 1;
|
|
608
610
|
}
|
|
609
611
|
};
|
|
610
|
-
|
|
612
|
+
j = new WeakMap(), S = new WeakMap(), tt = new WeakMap(), D = new WeakMap(), I = new WeakMap(), Y = new WeakMap(), et = new WeakMap(), wt = new WeakMap(), Se = new WeakMap(), Ee = new WeakMap(), Wt = new WeakMap(), Ot = new WeakMap(), zt = new WeakMap(), St = new WeakMap(), Et = new WeakMap(), Bt = new WeakMap(), Dt = new WeakMap(), At = new WeakMap(), Ae = new WeakMap(), ct = new WeakMap(), qt = new WeakMap(), Pt = new WeakMap(), c(Ie, "RowManager");
|
|
611
613
|
let ce = Ie;
|
|
612
614
|
const jt = class jt {
|
|
613
615
|
/**
|
|
@@ -625,17 +627,17 @@ const jt = class jt {
|
|
|
625
627
|
a.querySelectorAll("tbody td, tbody th, tfoot td, tfoot th").forEach((l) => {
|
|
626
628
|
const f = l.getAttribute("cell-type") || "renderer";
|
|
627
629
|
if (l.children.length > 0 && l.firstElementChild.tagName.includes("-")) return;
|
|
628
|
-
let
|
|
629
|
-
const b = l.getAttribute("data-bind"),
|
|
630
|
-
let
|
|
631
|
-
b &&
|
|
630
|
+
let g = `cell-${f}`;
|
|
631
|
+
const b = l.getAttribute("data-bind"), u = l.getAttribute("data-expr"), v = l.getAttribute("maxbyte"), x = l.getAttribute("type");
|
|
632
|
+
let A = [];
|
|
633
|
+
b && A.push(`data-bind="${b}"`), u && A.push(`data-expr="${u}"`), v && A.push(`maxbyte="${v}"`), x && A.push(`type="${x}"`), l.innerHTML = `<${g} ${A.join(" ")}></${g}>`;
|
|
632
634
|
});
|
|
633
635
|
}, "processCellTypes"), s = /* @__PURE__ */ c((a) => {
|
|
634
636
|
if (!a.querySelector("colgroup")) {
|
|
635
|
-
const h = a.querySelector("tbody tr") || a.querySelector("tr"), l = h ? h.querySelectorAll("th, td").length : 1, f = document.createElement("colgroup"),
|
|
637
|
+
const h = a.querySelector("tbody tr") || a.querySelector("tr"), l = h ? h.querySelectorAll("th, td").length : 1, f = document.createElement("colgroup"), g = Math.max(Math.floor(a.clientWidth / l), 100);
|
|
636
638
|
for (let b = 0; b < l; b++) {
|
|
637
|
-
const
|
|
638
|
-
|
|
639
|
+
const u = document.createElement("col");
|
|
640
|
+
u.setAttribute("width", g), f.appendChild(u);
|
|
639
641
|
}
|
|
640
642
|
a.prepend(f);
|
|
641
643
|
}
|
|
@@ -645,33 +647,33 @@ const jt = class jt {
|
|
|
645
647
|
}
|
|
646
648
|
a.classList.add("nine-table-element");
|
|
647
649
|
}, "ensureTableStructure"), r = /* @__PURE__ */ c((a, h) => {
|
|
648
|
-
const l = Array.from(a.querySelectorAll(h + " tr")), f = Array.from(a.querySelectorAll(h + " th," + h + " td")),
|
|
649
|
-
if (
|
|
650
|
+
const l = Array.from(a.querySelectorAll(h + " tr")), f = Array.from(a.querySelectorAll(h + " th," + h + " td")), g = l.length;
|
|
651
|
+
if (g === 0 || f.length === 0) return;
|
|
650
652
|
let b = 0;
|
|
651
|
-
f.forEach((
|
|
652
|
-
b +=
|
|
653
|
+
f.forEach((v) => {
|
|
654
|
+
b += v.colSpan || 1;
|
|
653
655
|
});
|
|
654
|
-
const
|
|
655
|
-
l.forEach((
|
|
656
|
-
const x =
|
|
657
|
-
let
|
|
658
|
-
Array.from(
|
|
659
|
-
for (let
|
|
660
|
-
if (
|
|
661
|
-
|
|
656
|
+
const u = Array.from(Array(g), () => Array(b).fill(null));
|
|
657
|
+
l.forEach((v) => {
|
|
658
|
+
const x = v.sectionRowIndex;
|
|
659
|
+
let A = 0;
|
|
660
|
+
Array.from(v.querySelectorAll("th,td")).forEach((m) => {
|
|
661
|
+
for (let O = 0; O < u[x].length; O++)
|
|
662
|
+
if (u[x][O] === null) {
|
|
663
|
+
A = O;
|
|
662
664
|
break;
|
|
663
665
|
}
|
|
664
|
-
const
|
|
665
|
-
for (let
|
|
666
|
-
for (let
|
|
667
|
-
x +
|
|
666
|
+
const W = m.rowSpan || 1, R = m.colSpan || 1;
|
|
667
|
+
for (let O = 0; O < W; O++)
|
|
668
|
+
for (let P = 0; P < R; P++)
|
|
669
|
+
x + O < g && A + P < b && (u[x + O][A + P] = O === 0 && P === 0 ? "1" : "0");
|
|
668
670
|
});
|
|
669
|
-
}), l.forEach((
|
|
670
|
-
const x =
|
|
671
|
-
Array.from(
|
|
672
|
-
for (let
|
|
673
|
-
if (
|
|
674
|
-
|
|
671
|
+
}), l.forEach((v) => {
|
|
672
|
+
const x = v.sectionRowIndex;
|
|
673
|
+
Array.from(v.querySelectorAll("th,td")).forEach((A) => {
|
|
674
|
+
for (let m = 0; m < u[x].length; m++)
|
|
675
|
+
if (u[x][m] === "1") {
|
|
676
|
+
A.dataset.col = m, u[x][m] = "0";
|
|
675
677
|
break;
|
|
676
678
|
}
|
|
677
679
|
});
|
|
@@ -688,15 +690,15 @@ const jt = class jt {
|
|
|
688
690
|
};
|
|
689
691
|
c(jt, "TableCompiler");
|
|
690
692
|
let he = jt;
|
|
691
|
-
var Ft,
|
|
693
|
+
var Ft, st, it, Vt, Yt, ht, Ut, Xt;
|
|
692
694
|
const pt = class pt extends HTMLElement {
|
|
693
695
|
constructor() {
|
|
694
696
|
super();
|
|
695
697
|
d(this, Ft);
|
|
696
|
-
d(this,
|
|
697
|
-
d(this,
|
|
698
|
-
|
|
699
|
-
t(this,
|
|
698
|
+
d(this, st, null);
|
|
699
|
+
d(this, it);
|
|
700
|
+
E(this, "invalidate", /* @__PURE__ */ c(() => {
|
|
701
|
+
t(this, it).refresh();
|
|
700
702
|
}, "invalidate"));
|
|
701
703
|
d(this, Vt, /* @__PURE__ */ c(() => {
|
|
702
704
|
[
|
|
@@ -705,7 +707,7 @@ const pt = class pt extends HTMLElement {
|
|
|
705
707
|
{ selector: ".ng-container-right", type: "right" }
|
|
706
708
|
].forEach(({ selector: s, type: r }) => {
|
|
707
709
|
var n, o, a;
|
|
708
|
-
(n = this.querySelector(`${s} .ng-part-header`)) == null || n.appendChild(t(this,
|
|
710
|
+
(n = this.querySelector(`${s} .ng-part-header`)) == null || n.appendChild(t(this, ht).call(this, t(this, st), r, "header")), (o = this.querySelector(`${s} .ng-virtual-spacer`)) == null || o.before(t(this, ht).call(this, t(this, st), r, "body")), (a = this.querySelector(`${s} .ng-part-footer`)) == null || a.appendChild(t(this, ht).call(this, t(this, st), r, "footer"));
|
|
709
711
|
});
|
|
710
712
|
}, "#renderSplitContainers"));
|
|
711
713
|
d(this, Yt, /* @__PURE__ */ c(() => {
|
|
@@ -719,16 +721,16 @@ const pt = class pt extends HTMLElement {
|
|
|
719
721
|
}), e === "body" ? s.style.flex = "1" : (s.style.flex = `0 0 ${n}px`, s.style.width = `${n}px`);
|
|
720
722
|
});
|
|
721
723
|
}, "#updateContainerWidths"));
|
|
722
|
-
|
|
724
|
+
E(this, "generate", /* @__PURE__ */ c((e) => {
|
|
723
725
|
if (!e) return;
|
|
724
|
-
y(this,
|
|
726
|
+
y(this, st, he.compile(e)), t(this, Vt).call(this), t(this, Yt).call(this);
|
|
725
727
|
const s = this.querySelector(".ng-container-body .ng-part-header"), r = this.querySelector(".ng-container-body .ng-part-footer"), n = this.querySelector(".ng-nodata-overlay");
|
|
726
|
-
s && n && (n.style.top = `${s.offsetHeight}px`), r && n && (n.style.bottom = `${r.offsetHeight}px`), t(this,
|
|
728
|
+
s && n && (n.style.top = `${s.offsetHeight}px`), r && n && (n.style.bottom = `${r.offsetHeight}px`), t(this, it).initialize(), setTimeout(() => {
|
|
727
729
|
var o;
|
|
728
730
|
(o = this.querySelector("nine-table-hscrollbar")) == null || o.refresh();
|
|
729
731
|
}, 0);
|
|
730
732
|
}, "generate"));
|
|
731
|
-
d(this,
|
|
733
|
+
d(this, ht, /* @__PURE__ */ c((e, s, r) => {
|
|
732
734
|
const n = e.cloneNode(!0), o = n.querySelector("thead"), a = n.querySelector("tbody"), h = n.querySelector("tfoot");
|
|
733
735
|
if (r === "header") {
|
|
734
736
|
if (a && a.remove(), h && h.remove(), e.querySelector("tbody")) {
|
|
@@ -744,12 +746,12 @@ const pt = class pt extends HTMLElement {
|
|
|
744
746
|
l.remove();
|
|
745
747
|
}), n;
|
|
746
748
|
}, "#createSplitTable"));
|
|
747
|
-
|
|
748
|
-
|
|
749
|
+
E(this, "getRowHeight", /* @__PURE__ */ c(() => t(this, it).getRowHeight(), "getRowHeight"));
|
|
750
|
+
E(this, "scrollToX", /* @__PURE__ */ c((e) => {
|
|
749
751
|
const s = this.querySelector(".ng-container-body .ng-part-body");
|
|
750
752
|
s && (s.scrollLeft = e);
|
|
751
753
|
}, "scrollToX"));
|
|
752
|
-
|
|
754
|
+
E(this, "scrollToY", /* @__PURE__ */ c((e) => {
|
|
753
755
|
const s = this.querySelector(".ng-container-body .ng-part-body");
|
|
754
756
|
s && (s.scrollTop = e);
|
|
755
757
|
}, "scrollToY"));
|
|
@@ -945,7 +947,7 @@ const pt = class pt extends HTMLElement {
|
|
|
945
947
|
</div>
|
|
946
948
|
`;
|
|
947
949
|
}, "#render"));
|
|
948
|
-
y(this,
|
|
950
|
+
y(this, it, new ce(this)), y(this, Ft, this.getRootNode().host);
|
|
949
951
|
}
|
|
950
952
|
connectedCallback() {
|
|
951
953
|
t(this, Ut).call(this);
|
|
@@ -954,7 +956,7 @@ const pt = class pt extends HTMLElement {
|
|
|
954
956
|
this.innerHTML = "", H.log("NineTableSheet destroyed.");
|
|
955
957
|
}
|
|
956
958
|
};
|
|
957
|
-
Ft = new WeakMap(),
|
|
959
|
+
Ft = new WeakMap(), st = new WeakMap(), it = new WeakMap(), Vt = new WeakMap(), Yt = new WeakMap(), ht = new WeakMap(), Ut = new WeakMap(), Xt = new WeakMap(), c(pt, "NineTableSheet"), E(pt, "SCROLLBAR_SIZE", 16);
|
|
958
960
|
let $t = pt;
|
|
959
961
|
customElements.get("nine-table-sheet") || customElements.define("nine-table-sheet", $t);
|
|
960
962
|
var Kt, Rt;
|
|
@@ -972,24 +974,24 @@ const _e = class _e extends HTMLElement {
|
|
|
972
974
|
d(this, Rt, /* @__PURE__ */ c((e, s = !1) => {
|
|
973
975
|
const r = /* @__PURE__ */ c(() => {
|
|
974
976
|
const f = Array.from(this.querySelectorAll("nine-table-sheet"));
|
|
975
|
-
Array.from(this.querySelectorAll("nine-splitter")).forEach((
|
|
976
|
-
const b = f.filter((
|
|
977
|
-
b.length < 2 || b.forEach((
|
|
978
|
-
const
|
|
979
|
-
x &&
|
|
977
|
+
Array.from(this.querySelectorAll("nine-splitter")).forEach((u) => u.style.setProperty("display", "none"));
|
|
978
|
+
const b = f.filter((u) => u.classList.contains("active"));
|
|
979
|
+
b.length < 2 || b.forEach((u) => {
|
|
980
|
+
const v = parseInt(u.getAttribute("data-index"), 10), x = this.querySelector(`nine-splitter[data-split-index="${v}"]`), A = f[v + 1];
|
|
981
|
+
x && A && A.classList.contains("active") && x.style.setProperty("display", "flex");
|
|
980
982
|
});
|
|
981
983
|
}, "updateSplitters"), n = this.querySelector(".nine-tab-bar"), o = this.querySelector("nine-table-sheets-body"), a = n.querySelectorAll(".nine-tab-item"), h = o.querySelectorAll("nine-table-sheet");
|
|
982
984
|
if (!a[e]) return;
|
|
983
985
|
if (!s)
|
|
984
|
-
a.forEach((f,
|
|
985
|
-
f.classList.toggle("active",
|
|
986
|
-
}), h.forEach((f,
|
|
987
|
-
const b =
|
|
986
|
+
a.forEach((f, g) => {
|
|
987
|
+
f.classList.toggle("active", g === e);
|
|
988
|
+
}), h.forEach((f, g) => {
|
|
989
|
+
const b = g === e;
|
|
988
990
|
f.classList.toggle("active", b), f.style.flex = b ? "1 1 100%" : "";
|
|
989
991
|
});
|
|
990
992
|
else {
|
|
991
|
-
const f = a[e],
|
|
992
|
-
if (f.classList.contains("active") &&
|
|
993
|
+
const f = a[e], g = n.querySelectorAll(".nine-tab-item.active");
|
|
994
|
+
if (f.classList.contains("active") && g.length <= 1)
|
|
993
995
|
return;
|
|
994
996
|
f.classList.toggle("active");
|
|
995
997
|
const b = o.querySelector(`nine-table-sheet[data-index="${e}"]`);
|
|
@@ -1027,8 +1029,8 @@ const Ne = class Ne {
|
|
|
1027
1029
|
}, "#applyAutoHeight"));
|
|
1028
1030
|
d(this, Gt, /* @__PURE__ */ c(() => {
|
|
1029
1031
|
const e = Array.from(t(this, M).children).filter((h) => h.tagName === "TABLE"), s = t(this, M).getAttribute("auto-height") === "true", r = e.length, n = e.map((h, l) => {
|
|
1030
|
-
const
|
|
1031
|
-
return
|
|
1032
|
+
const g = `<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>` : "";
|
|
1033
|
+
return g + b;
|
|
1032
1034
|
}).join(""), o = e.map((h, l) => `<div class="nine-tab-item ${l === 0 ? "active" : ""}" data-index="${l}">Sheet ${l + 1}</div>`).join("");
|
|
1033
1035
|
t(this, M).shadowRoot.innerHTML = `
|
|
1034
1036
|
<style>
|
|
@@ -1163,85 +1165,85 @@ const Ne = class Ne {
|
|
|
1163
1165
|
};
|
|
1164
1166
|
M = new WeakMap(), Zt = new WeakMap(), Tt = new WeakMap(), Gt = new WeakMap(), c(Ne, "LayoutManager");
|
|
1165
1167
|
let fe = Ne;
|
|
1166
|
-
var kt,
|
|
1168
|
+
var kt, dt;
|
|
1167
1169
|
const We = class We {
|
|
1168
1170
|
constructor(i) {
|
|
1169
1171
|
d(this, kt);
|
|
1170
|
-
d(this,
|
|
1171
|
-
|
|
1172
|
+
d(this, dt, -1);
|
|
1173
|
+
E(this, "count", /* @__PURE__ */ c(() => t(this, kt).rawRecords.length, "count"));
|
|
1172
1174
|
y(this, kt, i);
|
|
1173
1175
|
}
|
|
1174
1176
|
get at() {
|
|
1175
|
-
return t(this,
|
|
1177
|
+
return t(this, dt);
|
|
1176
1178
|
}
|
|
1177
1179
|
set at(i) {
|
|
1178
|
-
y(this,
|
|
1180
|
+
y(this, dt, parseInt(i, 10)), body && !body.querySelector(`tbody.bindable tr[data-row="${t(this, dt)}"]`) && setTimeout(() => {
|
|
1179
1181
|
});
|
|
1180
1182
|
}
|
|
1181
1183
|
};
|
|
1182
|
-
kt = new WeakMap(),
|
|
1184
|
+
kt = new WeakMap(), dt = new WeakMap(), c(We, "ngRow");
|
|
1183
1185
|
let ue = We;
|
|
1184
|
-
var
|
|
1185
|
-
const
|
|
1186
|
+
var _, k, N, ft, Jt, U, Qt, rt, Ct, te, ee, ut;
|
|
1187
|
+
const z = class z {
|
|
1186
1188
|
constructor(i, e) {
|
|
1187
|
-
d(this,
|
|
1189
|
+
d(this, _);
|
|
1188
1190
|
d(this, k);
|
|
1189
|
-
d(this,
|
|
1190
|
-
d(this,
|
|
1191
|
+
d(this, N, []);
|
|
1192
|
+
d(this, ft, []);
|
|
1191
1193
|
d(this, Jt, 0);
|
|
1192
|
-
d(this,
|
|
1194
|
+
d(this, U, []);
|
|
1193
1195
|
d(this, Qt, /* @__PURE__ */ c(() => {
|
|
1194
|
-
y(this,
|
|
1195
|
-
const i = t(this,
|
|
1196
|
+
y(this, U, []);
|
|
1197
|
+
const i = t(this, _).template || [];
|
|
1196
1198
|
Array.from(i).forEach((e) => {
|
|
1197
1199
|
var s;
|
|
1198
|
-
t(this,
|
|
1200
|
+
t(this, U).push(((s = e.getBoundingClientRect) == null ? void 0 : s.call(e).height) || 24);
|
|
1199
1201
|
}), (t(this, k).rawRecords || []).forEach((e) => {
|
|
1200
|
-
e.__ng || (e.__ng = t(this, Ct).call(this)), e.__ng.height = t(this,
|
|
1202
|
+
e.__ng || (e.__ng = t(this, Ct).call(this)), e.__ng.height = t(this, U).slice();
|
|
1201
1203
|
});
|
|
1202
1204
|
}, "#initialize"));
|
|
1203
|
-
d(this,
|
|
1204
|
-
const i = t(this,
|
|
1205
|
-
i == null || i.classList.toggle("nodata", this.length === 0), t(this,
|
|
1205
|
+
d(this, rt, /* @__PURE__ */ c(() => {
|
|
1206
|
+
const i = t(this, _).shadowRoot.querySelector("nine-table-sheets");
|
|
1207
|
+
i == null || i.classList.toggle("nodata", this.length === 0), t(this, _).shadowRoot.querySelectorAll("nine-table-sheet").forEach((e) => {
|
|
1206
1208
|
e.invalidate();
|
|
1207
1209
|
});
|
|
1208
1210
|
}, "#invalidate"));
|
|
1209
|
-
|
|
1211
|
+
E(this, "get", /* @__PURE__ */ c((i, e) => {
|
|
1210
1212
|
var n;
|
|
1211
1213
|
const s = this.getValidData();
|
|
1212
1214
|
if (!s || s.length <= 0) return;
|
|
1213
|
-
if (i == null) return t(this,
|
|
1215
|
+
if (i == null) return t(this, ut).call(this, s);
|
|
1214
1216
|
if (i < 0 || i >= s.length) return null;
|
|
1215
|
-
const r = typeof ((n = t(this,
|
|
1217
|
+
const r = typeof ((n = t(this, _).fields) == null ? void 0 : n.get) == "function" ? t(this, _).fields.get() : [];
|
|
1216
1218
|
if (e != null) {
|
|
1217
1219
|
const o = r.indexOf(e);
|
|
1218
1220
|
return o >= 0 ? s[i].v[o] : null;
|
|
1219
1221
|
}
|
|
1220
|
-
return t(this,
|
|
1222
|
+
return t(this, ut).call(this, s[i]);
|
|
1221
1223
|
}, "get"));
|
|
1222
|
-
|
|
1223
|
-
this.clear(), this.add(i, !1), t(this,
|
|
1224
|
+
E(this, "set", /* @__PURE__ */ c((i) => {
|
|
1225
|
+
this.clear(), this.add(i, !1), t(this, rt).call(this);
|
|
1224
1226
|
}, "set"));
|
|
1225
1227
|
d(this, Ct, /* @__PURE__ */ c(() => ({
|
|
1226
|
-
rowState:
|
|
1228
|
+
rowState: z.ROW_STATE.EMPTY,
|
|
1227
1229
|
deleted: !1,
|
|
1228
1230
|
filtered: !1,
|
|
1229
|
-
height: t(this,
|
|
1231
|
+
height: t(this, U).slice(),
|
|
1230
1232
|
o: {},
|
|
1231
1233
|
c: {},
|
|
1232
|
-
_: [0, 0, 0, 0,
|
|
1234
|
+
_: [0, 0, 0, 0, z.ROW_STATE.EMPTY, !1, !1, !0, !1, !0, !0, !1, t(this, U).slice(), -1, {}, {}]
|
|
1233
1235
|
}), "#getDefaultMeta"));
|
|
1234
|
-
|
|
1235
|
-
y(this,
|
|
1236
|
+
E(this, "reset", /* @__PURE__ */ c(() => {
|
|
1237
|
+
y(this, N, []), y(this, ft, []), t(this, rt).call(this);
|
|
1236
1238
|
}, "reset"));
|
|
1237
|
-
|
|
1239
|
+
E(this, "clear", /* @__PURE__ */ c(() => {
|
|
1238
1240
|
var i;
|
|
1239
|
-
t(this, k).rawRecords = [], y(this,
|
|
1241
|
+
t(this, k).rawRecords = [], y(this, N, []), y(this, ft, []), (i = t(this, k).viewRecords) != null && i.reset && t(this, k).viewRecords.reset();
|
|
1240
1242
|
}, "clear"));
|
|
1241
1243
|
d(this, te, /* @__PURE__ */ c((i) => {
|
|
1242
1244
|
var r;
|
|
1243
1245
|
Array.isArray(i) || (i = [i]);
|
|
1244
|
-
const e = typeof ((r = t(this,
|
|
1246
|
+
const e = typeof ((r = t(this, _).fields) == null ? void 0 : r.get) == "function" ? t(this, _).fields.get() : Object.keys(i[0] || {}), s = [];
|
|
1245
1247
|
return i.forEach((n) => {
|
|
1246
1248
|
const o = { v: [] };
|
|
1247
1249
|
e.forEach((a) => {
|
|
@@ -1250,51 +1252,51 @@ const O = class O {
|
|
|
1250
1252
|
}), s;
|
|
1251
1253
|
}, "#json2Array"));
|
|
1252
1254
|
d(this, ee, /* @__PURE__ */ c((i) => (Array.isArray(i) || (i = [i]), i.forEach((e) => {
|
|
1253
|
-
e.__ng = t(this, Ct).call(this), e.__ng.rowid = this.nextId, e.__ng.rowState =
|
|
1255
|
+
e.__ng = t(this, Ct).call(this), e.__ng.rowid = this.nextId, e.__ng.rowState = z.ROW_STATE.INSERT, e.__ng._[0] = e.__ng.rowid;
|
|
1254
1256
|
}), i), "#defaultInsert"));
|
|
1255
|
-
|
|
1257
|
+
E(this, "add", /* @__PURE__ */ c((i, e = !0) => {
|
|
1256
1258
|
i === void 0 && (i = {});
|
|
1257
1259
|
const s = t(this, te).call(this, i);
|
|
1258
1260
|
t(this, k).rawRecords = t(this, k).rawRecords.concat(t(this, ee).call(this, s)), this.resetRecords();
|
|
1259
1261
|
const r = this.count() - 1;
|
|
1260
1262
|
return e || s.forEach((n, o) => {
|
|
1261
1263
|
const a = t(this, k).rawRecords[r - o];
|
|
1262
|
-
a && (a.__ng.rowState =
|
|
1263
|
-
}), t(this,
|
|
1264
|
+
a && (a.__ng.rowState = z.ROW_STATE.EMPTY);
|
|
1265
|
+
}), t(this, rt).call(this), r;
|
|
1264
1266
|
}, "add"));
|
|
1265
|
-
|
|
1267
|
+
E(this, "delete", /* @__PURE__ */ c((i) => {
|
|
1266
1268
|
let e = [];
|
|
1267
1269
|
Array.isArray(i) ? e = i : typeof i > "u" ? e = [t(this, k).host.row.at] : e = [parseInt(i, 10)], e.sort((s, r) => r - s).forEach((s) => {
|
|
1268
|
-
if (t(this,
|
|
1269
|
-
const r = t(this,
|
|
1270
|
-
t(this,
|
|
1271
|
-
n.__ng.rowid === r && (n.__ng.deleted = !0, n.__ng.rowState =
|
|
1270
|
+
if (t(this, N)[s]) {
|
|
1271
|
+
const r = t(this, N)[s].__ng.rowid;
|
|
1272
|
+
t(this, N)[s].__ng.rowState === z.ROW_STATE.INSERT ? t(this, k).rawRecords = t(this, k).rawRecords.filter((n) => n.__ng.rowid !== r) : t(this, k).rawRecords.forEach((n) => {
|
|
1273
|
+
n.__ng.rowid === r && (n.__ng.deleted = !0, n.__ng.rowState = z.ROW_STATE.DELETE);
|
|
1272
1274
|
});
|
|
1273
1275
|
}
|
|
1274
|
-
}), this.resetRecords(), t(this,
|
|
1276
|
+
}), this.resetRecords(), t(this, rt).call(this);
|
|
1275
1277
|
}, "delete"));
|
|
1276
|
-
|
|
1278
|
+
E(this, "setValue", /* @__PURE__ */ c((i, e, s) => {
|
|
1277
1279
|
var h;
|
|
1278
1280
|
i = parseInt(i, 10);
|
|
1279
|
-
const n = (typeof ((h = t(this,
|
|
1281
|
+
const n = (typeof ((h = t(this, _).fields) == null ? void 0 : h.get) == "function" ? t(this, _).fields.get() : []).indexOf(e);
|
|
1280
1282
|
if (n < 0) return;
|
|
1281
1283
|
const o = this.getValidData()[i];
|
|
1282
1284
|
if (!o) return;
|
|
1283
1285
|
const a = o.v[n];
|
|
1284
|
-
a !== s && o.__ng.rowState !==
|
|
1286
|
+
a !== s && o.__ng.rowState !== z.ROW_STATE.INSERT && (o.__ng.o.hasOwnProperty(e) || (o.__ng.o[e] = a), o.__ng.rowState = z.ROW_STATE.UPDATE), o.v[n] = s;
|
|
1285
1287
|
}, "setValue"));
|
|
1286
|
-
|
|
1287
|
-
y(this,
|
|
1288
|
+
E(this, "resetRecords", /* @__PURE__ */ c(() => {
|
|
1289
|
+
y(this, ft, t(this, k).rawRecords.filter((i) => !i.__ng.deleted)), y(this, N, t(this, k).rawRecords.filter((i) => !i.__ng.deleted && !i.__ng.filtered)), t(this, k).rawRecords.forEach((i, e) => {
|
|
1288
1290
|
i.__ng.rowidx = e;
|
|
1289
|
-
}), t(this,
|
|
1291
|
+
}), t(this, N).forEach((i, e) => {
|
|
1290
1292
|
i.__ng.i = e;
|
|
1291
1293
|
});
|
|
1292
1294
|
}, "resetRecords"));
|
|
1293
|
-
|
|
1294
|
-
d(this,
|
|
1295
|
+
E(this, "getValidData", /* @__PURE__ */ c(() => (t(this, N).length === 0 && t(this, k).rawRecords.length > 0 && this.resetRecords(), t(this, N)), "getValidData"));
|
|
1296
|
+
d(this, ut, /* @__PURE__ */ c((i) => {
|
|
1295
1297
|
var o;
|
|
1296
1298
|
if (!i) return i;
|
|
1297
|
-
const e = !Array.isArray(i), s = e ? [i] : i, r = typeof ((o = t(this,
|
|
1299
|
+
const e = !Array.isArray(i), s = e ? [i] : i, r = typeof ((o = t(this, _).fields) == null ? void 0 : o.get) == "function" ? t(this, _).fields.get() : [], n = s.filter((a) => !a.__ng.deleted).map((a) => {
|
|
1298
1300
|
const h = {};
|
|
1299
1301
|
return r.forEach((l, f) => {
|
|
1300
1302
|
h[l] = a.v ? a.v[f] : a[l];
|
|
@@ -1302,11 +1304,11 @@ const O = class O {
|
|
|
1302
1304
|
});
|
|
1303
1305
|
return e ? n[0] : n;
|
|
1304
1306
|
}, "#conv"));
|
|
1305
|
-
|
|
1306
|
-
y(this,
|
|
1307
|
+
E(this, "count", /* @__PURE__ */ c(() => this.getValidData().length, "count"));
|
|
1308
|
+
y(this, _, i), y(this, k, e), t(this, Qt).call(this);
|
|
1307
1309
|
}
|
|
1308
1310
|
get source() {
|
|
1309
|
-
return t(this,
|
|
1311
|
+
return t(this, ut).call(this, t(this, k).rawRecords);
|
|
1310
1312
|
}
|
|
1311
1313
|
set source(i) {
|
|
1312
1314
|
this.clear(), this.add(i, !1);
|
|
@@ -1315,31 +1317,31 @@ const O = class O {
|
|
|
1315
1317
|
return ++Ue(this, Jt)._;
|
|
1316
1318
|
}
|
|
1317
1319
|
get count() {
|
|
1318
|
-
return t(this,
|
|
1320
|
+
return t(this, N).length;
|
|
1319
1321
|
}
|
|
1320
1322
|
get length() {
|
|
1321
|
-
return t(this,
|
|
1323
|
+
return t(this, N).length;
|
|
1322
1324
|
}
|
|
1323
1325
|
getRowCount() {
|
|
1324
1326
|
return this.length;
|
|
1325
1327
|
}
|
|
1326
1328
|
};
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
+
_ = new WeakMap(), k = new WeakMap(), N = new WeakMap(), ft = new WeakMap(), Jt = new WeakMap(), U = new WeakMap(), Qt = new WeakMap(), rt = new WeakMap(), Ct = new WeakMap(), te = new WeakMap(), ee = new WeakMap(), ut = new WeakMap(), c(z, "ngData"), // π― ν μν μ μ μμλ₯Ό ν΄λμ€ λ΄λΆλ‘ λ΄μ¬ν
|
|
1330
|
+
E(z, "ROW_STATE", {
|
|
1329
1331
|
EMPTY: "EMPTY",
|
|
1330
1332
|
NORMAL: "NORMAL",
|
|
1331
1333
|
INSERT: "INSERT",
|
|
1332
1334
|
UPDATE: "UPDATE",
|
|
1333
1335
|
DELETE: "DELETE"
|
|
1334
1336
|
});
|
|
1335
|
-
let ge =
|
|
1336
|
-
var
|
|
1337
|
+
let ge = z;
|
|
1338
|
+
var nt;
|
|
1337
1339
|
const Oe = class Oe {
|
|
1338
1340
|
constructor(i) {
|
|
1339
|
-
d(this,
|
|
1340
|
-
y(this,
|
|
1341
|
+
d(this, nt);
|
|
1342
|
+
y(this, nt, i), this.row = new ue(this), this.data = new ge(t(this, nt), this), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.pageCnt = 25, this.viewRecords.reset = () => {
|
|
1341
1343
|
var e;
|
|
1342
|
-
(e = t(this,
|
|
1344
|
+
(e = t(this, nt).view) != null && e.redraw && t(this, nt).view.redraw();
|
|
1343
1345
|
}, this.setDataSource = (e) => {
|
|
1344
1346
|
this.data && this.data.reset(), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.data.set(e || []);
|
|
1345
1347
|
}, this.getRowState = (e) => {
|
|
@@ -1354,15 +1356,15 @@ const Oe = class Oe {
|
|
|
1354
1356
|
}, this.setDataSource([]);
|
|
1355
1357
|
}
|
|
1356
1358
|
};
|
|
1357
|
-
|
|
1359
|
+
nt = new WeakMap(), c(Oe, "ngDataManager");
|
|
1358
1360
|
let be = Oe;
|
|
1359
|
-
var
|
|
1361
|
+
var gt, L, Lt, se;
|
|
1360
1362
|
const ze = class ze {
|
|
1361
1363
|
// π― μ΄μ { name: string, type: string } κ°μ²΄λ€μ λ°°μ΄λ‘ κ΄λ¦¬ν©λλ€.
|
|
1362
1364
|
constructor(i) {
|
|
1363
|
-
d(this,
|
|
1365
|
+
d(this, gt);
|
|
1364
1366
|
d(this, L, []);
|
|
1365
|
-
|
|
1367
|
+
E(this, "add", /* @__PURE__ */ c((i, e = "string") => {
|
|
1366
1368
|
i.forEach((s) => {
|
|
1367
1369
|
t(this, L).some((r) => r.name === s) || t(this, L).push({ name: s, type: e });
|
|
1368
1370
|
}), t(this, Lt).call(this);
|
|
@@ -1374,8 +1376,8 @@ const ze = class ze {
|
|
|
1374
1376
|
}), y(this, L, Array.from(i, ([e, s]) => ({ name: e, type: s }))), y(this, L, t(this, L).filter((e) => e.name !== "" && e.name !== "__ng")), t(this, L).sort((e, s) => e.name.length < s.name.length ? 1 : -1);
|
|
1375
1377
|
}, "#adjust"));
|
|
1376
1378
|
d(this, se, /* @__PURE__ */ c(() => {
|
|
1377
|
-
y(this, L, []), H.log(t(this,
|
|
1378
|
-
const i = Array.from(t(this,
|
|
1379
|
+
y(this, L, []), H.log(t(this, gt).querySelectorAll("table"));
|
|
1380
|
+
const i = Array.from(t(this, gt).querySelectorAll("table"));
|
|
1379
1381
|
if (!(!i || i.length === 0)) {
|
|
1380
1382
|
for (const e of i)
|
|
1381
1383
|
H.log(e), $("[data-bind]", e).each((s, r) => {
|
|
@@ -1405,7 +1407,7 @@ const ze = class ze {
|
|
|
1405
1407
|
t(this, Lt).call(this);
|
|
1406
1408
|
}
|
|
1407
1409
|
}, "#init"));
|
|
1408
|
-
y(this,
|
|
1410
|
+
y(this, gt, i), t(this, se).call(this);
|
|
1409
1411
|
}
|
|
1410
1412
|
// π― κΈ°μ‘΄μ νλ μ΄λ¦λ§ μ°λ κ³³λ€κ³Όμ νΈνμ μν΄ μ΄λ¦ λ°°μ΄λ§ 리ν΄νλ λ©μλ μ μ§
|
|
1411
1413
|
get() {
|
|
@@ -1427,19 +1429,19 @@ const ze = class ze {
|
|
|
1427
1429
|
return t(this, L).some((e) => e.name === i);
|
|
1428
1430
|
}
|
|
1429
1431
|
};
|
|
1430
|
-
|
|
1432
|
+
gt = new WeakMap(), L = new WeakMap(), Lt = new WeakMap(), se = new WeakMap(), c(ze, "ngFields");
|
|
1431
1433
|
let ye = ze;
|
|
1432
|
-
var
|
|
1434
|
+
var ot, ie, re;
|
|
1433
1435
|
const Be = class Be extends HTMLElement {
|
|
1434
1436
|
constructor() {
|
|
1435
1437
|
super();
|
|
1436
1438
|
//#created = false;
|
|
1437
|
-
d(this,
|
|
1439
|
+
d(this, ot);
|
|
1438
1440
|
d(this, ie);
|
|
1439
1441
|
d(this, re, /* @__PURE__ */ c(() => {
|
|
1440
1442
|
this.fields = new ye(this), y(this, ie, new fe(this)), H.log("NineTable connected."), this.dispatchEvent(new CustomEvent("load", { bubbles: !0, detail: { target: this } }));
|
|
1441
1443
|
}, "#init"));
|
|
1442
|
-
this.attachShadow({ mode: "open" }), y(this,
|
|
1444
|
+
this.attachShadow({ mode: "open" }), y(this, ot, new be(this));
|
|
1443
1445
|
}
|
|
1444
1446
|
connectedCallback() {
|
|
1445
1447
|
t(this, re).call(this);
|
|
@@ -1449,18 +1451,18 @@ const Be = class Be extends HTMLElement {
|
|
|
1449
1451
|
}
|
|
1450
1452
|
// π― μΈλΆμμ grid.data.set(...) ννλ‘ μ κ·Όν μ μλλ‘ λ°μ΄ν° λ§€λμ μ€ν
|
|
1451
1453
|
get data() {
|
|
1452
|
-
return t(this,
|
|
1454
|
+
return t(this, ot).data;
|
|
1453
1455
|
}
|
|
1454
1456
|
// π― ν(row) κ΄λ ¨ μ μ΄ μ κ·Όμ μ€ν
|
|
1455
1457
|
get row() {
|
|
1456
|
-
return t(this,
|
|
1458
|
+
return t(this, ot).row;
|
|
1457
1459
|
}
|
|
1458
1460
|
// π― μ 체 λ°μ΄ν° λ§€λμ μ κ·Ό νμν κ²½μ°
|
|
1459
1461
|
get dataManager() {
|
|
1460
|
-
return t(this,
|
|
1462
|
+
return t(this, ot);
|
|
1461
1463
|
}
|
|
1462
1464
|
};
|
|
1463
|
-
|
|
1465
|
+
ot = new WeakMap(), ie = new WeakMap(), re = new WeakMap(), c(Be, "NineTable");
|
|
1464
1466
|
let pe = Be;
|
|
1465
1467
|
customElements.get("nine-table") || customElements.define("nine-table", pe);
|
|
1466
1468
|
const mt = class mt extends HTMLElement {
|
|
@@ -1474,7 +1476,7 @@ const mt = class mt extends HTMLElement {
|
|
|
1474
1476
|
connectedCallback() {
|
|
1475
1477
|
}
|
|
1476
1478
|
};
|
|
1477
|
-
c(mt, "BasicCellElement"),
|
|
1479
|
+
c(mt, "BasicCellElement"), E(mt, "_styleCache", /* @__PURE__ */ new Map()), E(mt, "_customStyleCache", /* @__PURE__ */ new Map());
|
|
1478
1480
|
let me = mt;
|
|
1479
1481
|
var C, Ht, p, qe, Re, Te, ke, Ce;
|
|
1480
1482
|
const De = class De extends me {
|
|
@@ -1487,7 +1489,7 @@ const De = class De extends me {
|
|
|
1487
1489
|
d(this, Re);
|
|
1488
1490
|
d(this, Te);
|
|
1489
1491
|
d(this, ke);
|
|
1490
|
-
|
|
1492
|
+
E(this, "getDisplayText", /* @__PURE__ */ c((e) => {
|
|
1491
1493
|
if (t(this, p))
|
|
1492
1494
|
if (t(this, p).closest("tbody")) {
|
|
1493
1495
|
const s = t(this, p).closest("tr").data, r = parseInt(t(this, p).dataset.row);
|
|
@@ -1512,9 +1514,9 @@ const De = class De extends me {
|
|
|
1512
1514
|
var e = ninegrid.j.querySelectorAll(t(this, p)).attr("suppress");
|
|
1513
1515
|
if (e && (e = parseInt(e)), e && !isNaN(e)) {
|
|
1514
1516
|
var s = t(this, p).closest("tr"), r = [];
|
|
1515
|
-
$("th,td", s).each((
|
|
1516
|
-
var R = ninegrid.j.querySelectorAll(
|
|
1517
|
-
R &&
|
|
1517
|
+
$("th,td", s).each((m, W) => {
|
|
1518
|
+
var R = ninegrid.j.querySelectorAll(W).attr("suppress");
|
|
1519
|
+
R && W.dataset.row && (R = parseInt(R), !isNaN(R) && R <= e && r.push(R));
|
|
1518
1520
|
}), r.sort();
|
|
1519
1521
|
var n = !1;
|
|
1520
1522
|
if (parseInt(s.sectionRowIndex / t(this, C).template.length) > 0)
|
|
@@ -1522,8 +1524,8 @@ const De = class De extends me {
|
|
|
1522
1524
|
if (o > e) break;
|
|
1523
1525
|
var a = parseInt(t(this, p).dataset.row), h = a - 1, l = t(this, p).closest("tr").data, f = t(this, C).data.get(h);
|
|
1524
1526
|
t(this, p).dataset.matrixRow;
|
|
1525
|
-
var
|
|
1526
|
-
if (b !=
|
|
1527
|
+
var g = t(this, C).body.querySelector(`tbody.bindable [suppress="${o}"][data-matrix-row="${t(this, p).dataset.matrixRow}"]`), b = g.dataset.expr ? this.getExprValue(g.dataset.expr, l, a) : l[g.dataset.bind], u = g.dataset.expr ? this.getExprValue(g.dataset.expr, f, h) : f[g.dataset.bind];
|
|
1528
|
+
if (b != u) {
|
|
1527
1529
|
n = !0;
|
|
1528
1530
|
break;
|
|
1529
1531
|
}
|
|
@@ -1531,12 +1533,12 @@ const De = class De extends me {
|
|
|
1531
1533
|
else
|
|
1532
1534
|
n = !0;
|
|
1533
1535
|
n ? ninegrid.j.querySelectorAll(t(this, p)).removeClass("suppress") : ninegrid.j.querySelectorAll(t(this, p)).addClass("suppress"), ninegrid.j.querySelectorAll(t(this, p)).hasClass("hidden") || (n ? ninegrid.j.querySelectorAll(t(this, p)).removeClass("hidden") : ninegrid.j.querySelectorAll(t(this, p)).addClass("hidden"));
|
|
1534
|
-
var
|
|
1535
|
-
$(
|
|
1536
|
+
var v = parseInt(t(this, p).dataset.matrixRow), x = v - 1, A = t(this, C).body.querySelector(`tbody.bindable [data-col="${t(this, p).dataset.col}"][data-matrix-row="${x}"]`);
|
|
1537
|
+
$(A).hasClass("suppress") && !ninegrid.j.querySelectorAll(t(this, p)).hasClass("suppress") ? ninegrid.j.querySelectorAll(A).removeClass("last-none-suppress").addClass("last-suppress") : !$(A).hasClass("suppress") && ninegrid.j.querySelectorAll(t(this, p)).hasClass("suppress") ? ninegrid.j.querySelectorAll(A).removeClass("last-suppress").addClass("last-none-suppress") : ninegrid.j.querySelectorAll(A).removeClass("last-none-suppress").removeClass("last-suppress");
|
|
1536
1538
|
}
|
|
1537
1539
|
}
|
|
1538
1540
|
}, "#resetSuppress"));
|
|
1539
|
-
|
|
1541
|
+
E(this, "getExprValue", /* @__PURE__ */ c((e, s, r, n) => {
|
|
1540
1542
|
if (typeof e < "u")
|
|
1541
1543
|
try {
|
|
1542
1544
|
r = parseInt(r);
|
|
@@ -1587,17 +1589,17 @@ const Pe = class Pe extends ve {
|
|
|
1587
1589
|
};
|
|
1588
1590
|
c(Pe, "EditableCellElement");
|
|
1589
1591
|
let xe = Pe;
|
|
1590
|
-
var Mt,
|
|
1592
|
+
var Mt, at, bt, yt, ne, X, Le;
|
|
1591
1593
|
const je = class je extends xe {
|
|
1592
1594
|
constructor() {
|
|
1593
1595
|
super();
|
|
1594
1596
|
d(this, Mt);
|
|
1595
|
-
d(this,
|
|
1596
|
-
d(this, gt);
|
|
1597
|
+
d(this, at);
|
|
1597
1598
|
d(this, bt);
|
|
1599
|
+
d(this, yt);
|
|
1598
1600
|
d(this, ne);
|
|
1599
|
-
d(this,
|
|
1600
|
-
|
|
1601
|
+
d(this, X);
|
|
1602
|
+
E(this, "refresh", /* @__PURE__ */ c(() => {
|
|
1601
1603
|
const e = super.refresh();
|
|
1602
1604
|
t(this, Mt).value = e;
|
|
1603
1605
|
}, "refresh"));
|
|
@@ -1633,20 +1635,20 @@ const je = class je extends xe {
|
|
|
1633
1635
|
*/
|
|
1634
1636
|
d(this, Le, /* @__PURE__ */ c((e) => {
|
|
1635
1637
|
if (!["Escape", "Enter", "Tab", "Home", "End", "ArrowLeft", "ArrowRight", "PageUp", "PageDown", "Backspace", "Delete"].includes(e.code)) {
|
|
1636
|
-
if (t(this,
|
|
1638
|
+
if (t(this, at) == "number") {
|
|
1637
1639
|
let n = [];
|
|
1638
|
-
if (t(this,
|
|
1640
|
+
if (t(this, X) && Number(t(this, X)) > 0 && n.push("."), t(this, yt) && Number(t(this, yt)) >= 0 && n.push("-"), !(e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && !n.includes(e.key) && e.preventDefault(), t(this, X) && (e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && e.target.selectionStart == e.target.selectionEnd) {
|
|
1639
1641
|
var s = e.target.value, r = s.indexOf(".");
|
|
1640
1642
|
if (r >= 0) {
|
|
1641
1643
|
var s = s.substr(r + 1, s.length);
|
|
1642
|
-
s.length >= Number(t(this,
|
|
1644
|
+
s.length >= Number(t(this, X)) && e.preventDefault();
|
|
1643
1645
|
}
|
|
1644
1646
|
}
|
|
1645
1647
|
}
|
|
1646
|
-
t(this,
|
|
1648
|
+
t(this, bt) && ninegrid.getByteLength(e.target.value) >= Number(t(this, bt)) && e.target.selectionStart == e.target.selectionEnd && e.preventDefault();
|
|
1647
1649
|
}
|
|
1648
1650
|
}, "#onKeyDown"));
|
|
1649
|
-
if (this.applyBaseStyle(), y(this,
|
|
1651
|
+
if (this.applyBaseStyle(), y(this, at, this.getAttribute("type") || "text"), y(this, bt, this.getAttribute("maxbyte")), y(this, yt, this.getAttribute("min")), y(this, ne, this.getAttribute("max")), y(this, X, this.getAttribute("scale")), !["text", "number"].includes(t(this, at))) throw `invalid type : ${t(this, at)}`;
|
|
1650
1652
|
}
|
|
1651
1653
|
connectedCallback() {
|
|
1652
1654
|
for (var e = [], s = 0; s < this.attributes.length; s++)
|
|
@@ -1659,7 +1661,7 @@ const je = class je extends xe {
|
|
|
1659
1661
|
`, super.connectedCallback(), y(this, Mt, this.querySelector("input"));
|
|
1660
1662
|
}
|
|
1661
1663
|
};
|
|
1662
|
-
Mt = new WeakMap(),
|
|
1664
|
+
Mt = new WeakMap(), at = new WeakMap(), bt = new WeakMap(), yt = new WeakMap(), ne = new WeakMap(), X = new WeakMap(), Le = new WeakMap(), c(je, "CellInputText");
|
|
1663
1665
|
let we = je;
|
|
1664
1666
|
customElements.get("cell-input-text");
|
|
1665
1667
|
customElements.get("cell-input") || customElements.define("cell-input", we);
|