@ninebone/table 0.0.640 → 0.0.642
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 +264 -264
- 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
|
@@ -3,7 +3,7 @@ var Ve = (q) => {
|
|
|
3
3
|
throw TypeError(q);
|
|
4
4
|
};
|
|
5
5
|
var Xe = (q, i, e) => i in q ? Fe(q, i, { enumerable: !0, configurable: !0, writable: !0, value: e }) : q[i] = e;
|
|
6
|
-
var
|
|
6
|
+
var h = (q, i) => Fe(q, "name", { value: i, configurable: !0 });
|
|
7
7
|
var A = (q, i, e) => Xe(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) => ({
|
|
@@ -20,32 +20,32 @@ const He = class He extends Ke.constructor {
|
|
|
20
20
|
super(), this.init("nine-table", "green");
|
|
21
21
|
}
|
|
22
22
|
};
|
|
23
|
-
|
|
23
|
+
h(He, "Trace");
|
|
24
24
|
let oe = He;
|
|
25
25
|
const H = new oe();
|
|
26
|
-
var B, j,
|
|
26
|
+
var B, j, x, X, K, Z, It, G, _t;
|
|
27
27
|
const Me = class Me extends HTMLElement {
|
|
28
28
|
constructor() {
|
|
29
29
|
super();
|
|
30
30
|
d(this, B);
|
|
31
31
|
d(this, j, !1);
|
|
32
|
-
d(this,
|
|
32
|
+
d(this, x);
|
|
33
33
|
d(this, X);
|
|
34
34
|
d(this, K);
|
|
35
35
|
d(this, Z);
|
|
36
|
-
d(this, It, /* @__PURE__ */
|
|
36
|
+
d(this, It, /* @__PURE__ */ h(() => {
|
|
37
37
|
if (!t(this, B)) return;
|
|
38
38
|
const e = t(this, B).querySelector(".ng-container-body .ng-part-body");
|
|
39
39
|
e && (y(this, Z, new ResizeObserver(() => {
|
|
40
40
|
this.refresh();
|
|
41
41
|
})), t(this, Z).observe(e));
|
|
42
42
|
}, "#observeResize"));
|
|
43
|
-
A(this, "refresh", /* @__PURE__ */
|
|
44
|
-
if (!t(this, B) || !t(this,
|
|
45
|
-
const e = t(this,
|
|
43
|
+
A(this, "refresh", /* @__PURE__ */ h(() => {
|
|
44
|
+
if (!t(this, B) || !t(this, x) || t(this, j)) return;
|
|
45
|
+
const e = t(this, x).container, s = e.querySelector("table");
|
|
46
46
|
if (!s) return;
|
|
47
|
-
const r = t(this,
|
|
48
|
-
if (a !== 0 &&
|
|
47
|
+
const r = t(this, x).track, n = t(this, x).thumb, o = t(this, B).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,58 +53,58 @@ const Me = class Me extends HTMLElement {
|
|
|
53
53
|
}
|
|
54
54
|
const l = r.clientWidth;
|
|
55
55
|
if (l <= 0) return;
|
|
56
|
-
const f = Math.max(Math.min(l * (a /
|
|
56
|
+
const f = Math.max(Math.min(l * (a / c), l), 20);
|
|
57
57
|
n.style.width = `${f}px`;
|
|
58
|
-
const
|
|
59
|
-
let
|
|
60
|
-
b > 0 && (
|
|
58
|
+
const g = e.scrollLeft, b = c - a;
|
|
59
|
+
let u = 0;
|
|
60
|
+
b > 0 && (u = parseInt(g / b * (l - f), 10)), u < 0 && (u = 0);
|
|
61
61
|
const m = l - f;
|
|
62
|
-
|
|
62
|
+
u > m && (u = m), n.style.left = `${u}px`, t(this, x).left.disabled = u === 0, t(this, x).right.disabled = u >= m - 1;
|
|
63
63
|
}, "refresh"));
|
|
64
|
-
d(this, G, /* @__PURE__ */
|
|
65
|
-
if (!t(this,
|
|
66
|
-
const s = t(this,
|
|
64
|
+
d(this, G, /* @__PURE__ */ h((e) => {
|
|
65
|
+
if (!t(this, x)) return !1;
|
|
66
|
+
const s = t(this, x).container, r = s.querySelector("table");
|
|
67
67
|
if (!r) return !1;
|
|
68
|
-
const n = t(this,
|
|
68
|
+
const n = t(this, x).track.getBoundingClientRect(), o = t(this, x).thumb.clientWidth;
|
|
69
69
|
let a = e;
|
|
70
70
|
a < 0 && (a = 0);
|
|
71
|
-
const
|
|
72
|
-
a >
|
|
73
|
-
const l = s.clientWidth,
|
|
74
|
-
return
|
|
71
|
+
const c = n.width - o;
|
|
72
|
+
a > c && (a = c), a = parseInt(a, 10), t(this, x).thumb.style.left = `${a}px`, t(this, x).left.disabled = a === 0, t(this, x).right.disabled = a >= c - 1;
|
|
73
|
+
const l = s.clientWidth, g = r.scrollWidth - l;
|
|
74
|
+
return c > 0 && g > 0 && (s.scrollLeft = a / c * g), a > 0 && a < c - 1;
|
|
75
75
|
}, "#thumbMoveTo"));
|
|
76
|
-
d(this, _t, /* @__PURE__ */
|
|
77
|
-
const e = /* @__PURE__ */
|
|
76
|
+
d(this, _t, /* @__PURE__ */ h(() => {
|
|
77
|
+
const e = /* @__PURE__ */ h((r) => {
|
|
78
78
|
clearInterval(t(this, X)), clearInterval(t(this, K));
|
|
79
|
-
const n = parseInt(t(this,
|
|
79
|
+
const n = parseInt(t(this, x).thumb.style.left || 0, 10);
|
|
80
80
|
t(this, G).call(this, n + r), y(this, X, setInterval(() => {
|
|
81
81
|
clearInterval(t(this, X)), y(this, K, setInterval(() => {
|
|
82
|
-
const o = parseInt(t(this,
|
|
82
|
+
const o = parseInt(t(this, x).thumb.style.left || 0, 10);
|
|
83
83
|
t(this, G).call(this, o + r) || clearInterval(t(this, K));
|
|
84
84
|
}, 50));
|
|
85
85
|
}, 500));
|
|
86
|
-
}, "delayScroll"), s = /* @__PURE__ */
|
|
86
|
+
}, "delayScroll"), s = /* @__PURE__ */ h(() => {
|
|
87
87
|
clearInterval(t(this, X)), clearInterval(t(this, K));
|
|
88
88
|
}, "clearTimer");
|
|
89
89
|
["mouseup", "mouseleave", "touchend"].forEach((r) => {
|
|
90
|
-
t(this,
|
|
91
|
-
}), t(this,
|
|
90
|
+
t(this, x).left.addEventListener(r, s), t(this, x).right.addEventListener(r, s), t(this, x).track.addEventListener(r, s);
|
|
91
|
+
}), t(this, x).left.addEventListener("mousedown", (r) => {
|
|
92
92
|
r.button === 0 && e(-20);
|
|
93
|
-
}), t(this,
|
|
93
|
+
}), t(this, x).right.addEventListener("mousedown", (r) => {
|
|
94
94
|
r.button === 0 && e(20);
|
|
95
|
-
}), t(this,
|
|
95
|
+
}), t(this, x).left.addEventListener("touchstart", () => e(-20)), t(this, x).right.addEventListener("touchstart", () => e(20)), t(this, x).track.addEventListener("mousedown", (r) => {
|
|
96
96
|
if (r.button !== 0) return;
|
|
97
97
|
r.preventDefault();
|
|
98
|
-
const n = t(this,
|
|
98
|
+
const n = t(this, x).track.getBoundingClientRect(), o = t(this, x).thumb.clientWidth;
|
|
99
99
|
t(this, G).call(this, r.clientX - n.left - o / 2);
|
|
100
|
-
}), t(this,
|
|
100
|
+
}), t(this, x).thumb.addEventListener("mousedown", (r) => {
|
|
101
101
|
if (r.button !== 0) return;
|
|
102
|
-
r.stopPropagation(), r.preventDefault(), y(this, j, !0), this.shiftX = r.clientX - t(this,
|
|
103
|
-
const n = /* @__PURE__ */
|
|
102
|
+
r.stopPropagation(), r.preventDefault(), y(this, j, !0), this.shiftX = r.clientX - t(this, x).thumb.getBoundingClientRect().left;
|
|
103
|
+
const n = /* @__PURE__ */ h((a) => {
|
|
104
104
|
if (!t(this, j)) return;
|
|
105
|
-
const
|
|
106
|
-
t(this, G).call(this, a.clientX -
|
|
107
|
-
}, "onMouseMove"), o = /* @__PURE__ */
|
|
105
|
+
const c = t(this, x).track.getBoundingClientRect();
|
|
106
|
+
t(this, G).call(this, a.clientX - c.left - this.shiftX);
|
|
107
|
+
}, "onMouseMove"), o = /* @__PURE__ */ h(() => {
|
|
108
108
|
y(this, j, !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);
|
|
@@ -176,13 +176,13 @@ const Me = class Me extends HTMLElement {
|
|
|
176
176
|
<div class='ng-scroll-track'><div class='ng-scroll-thumb'></div></div>
|
|
177
177
|
<button class='ng-scroll-right' disabled><div class='ng-scroll-icon'></div></button>
|
|
178
178
|
`;
|
|
179
|
-
const e = /* @__PURE__ */
|
|
179
|
+
const e = /* @__PURE__ */ h(() => {
|
|
180
180
|
const s = t(this, B).querySelector(".ng-container-body .ng-part-body");
|
|
181
181
|
if (!s) {
|
|
182
182
|
setTimeout(e, 10);
|
|
183
183
|
return;
|
|
184
184
|
}
|
|
185
|
-
y(this,
|
|
185
|
+
y(this, x, {
|
|
186
186
|
container: s,
|
|
187
187
|
track: this.querySelector(".ng-scroll-track"),
|
|
188
188
|
thumb: this.querySelector(".ng-scroll-thumb"),
|
|
@@ -198,7 +198,7 @@ const Me = class Me extends HTMLElement {
|
|
|
198
198
|
t(this, Z) && t(this, Z).disconnect();
|
|
199
199
|
}
|
|
200
200
|
};
|
|
201
|
-
B = new WeakMap(), j = new WeakMap(),
|
|
201
|
+
B = new WeakMap(), j = new WeakMap(), x = new WeakMap(), X = new WeakMap(), K = new WeakMap(), Z = new WeakMap(), It = new WeakMap(), G = new WeakMap(), _t = new WeakMap(), h(Me, "NineTableHScrollBar");
|
|
202
202
|
let ae = Me;
|
|
203
203
|
customElements.get("nine-table-hscrollbar") || customElements.define("nine-table-hscrollbar", ae);
|
|
204
204
|
var F, at, J, T, vt, xt, Nt;
|
|
@@ -211,27 +211,27 @@ const $e = class $e extends HTMLElement {
|
|
|
211
211
|
d(this, T);
|
|
212
212
|
d(this, vt, 0);
|
|
213
213
|
d(this, xt, 0);
|
|
214
|
-
A(this, "refresh", /* @__PURE__ */
|
|
214
|
+
A(this, "refresh", /* @__PURE__ */ h(() => {
|
|
215
215
|
if (!t(this, F) || !t(this, T)) return;
|
|
216
|
-
const e = t(this, T).container, s = t(this, T).track, r = t(this, T).thumb, n = e.clientHeight,
|
|
217
|
-
if (
|
|
216
|
+
const e = t(this, T).container, s = t(this, T).track, r = t(this, T).thumb, n = e.clientHeight, o = t(this, F).data.length, a = t(this, at).getRowHeight(), c = o * a;
|
|
217
|
+
if (c <= 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 / c), l), 20);
|
|
225
|
+
r.style.height = `${f}px`;
|
|
226
|
+
const g = e.scrollTop, b = Math.max(c - n, 1);
|
|
227
|
+
let u = 0;
|
|
228
|
+
b > 0 && (u = g / b * (l - f));
|
|
229
|
+
const m = l - f;
|
|
230
|
+
u < 0 && (u = 0), u > m && (u = m), r.style.top = `${u}px`, t(this, T).top.disabled = g <= 0, t(this, T).bottom.disabled = g >= b - 1;
|
|
231
231
|
}, "refresh"));
|
|
232
|
-
d(this, Nt, /* @__PURE__ */
|
|
232
|
+
d(this, Nt, /* @__PURE__ */ h(() => {
|
|
233
233
|
H.log("nine-table-vscrollbar.#init");
|
|
234
|
-
const e = t(this, T).container, s = /* @__PURE__ */
|
|
234
|
+
const e = t(this, T).container, s = /* @__PURE__ */ h(() => {
|
|
235
235
|
const n = (t(this, F).data.get() || []).length, o = t(this, at).getRowHeight();
|
|
236
236
|
return n * o;
|
|
237
237
|
}, "getContentHeight");
|
|
@@ -240,26 +240,26 @@ const $e = class $e extends HTMLElement {
|
|
|
240
240
|
}), t(this, T).thumb.addEventListener("mousedown", (r) => {
|
|
241
241
|
if (r.button !== 0) return;
|
|
242
242
|
r.stopPropagation(), r.preventDefault(), y(this, J, !0), y(this, vt, r.clientY), y(this, xt, e.scrollTop);
|
|
243
|
-
const n = /* @__PURE__ */
|
|
243
|
+
const n = /* @__PURE__ */ h((a) => {
|
|
244
244
|
if (!t(this, J)) return;
|
|
245
|
-
const
|
|
246
|
-
if (
|
|
247
|
-
const E = b /
|
|
245
|
+
const c = t(this, T).track.getBoundingClientRect(), l = t(this, T).thumb.clientHeight, g = c.height - l, b = a.clientY - t(this, vt), u = e.clientHeight, m = s(), S = Math.max(m - u, 1);
|
|
246
|
+
if (g > 0 && S > 0) {
|
|
247
|
+
const E = b / g * S;
|
|
248
248
|
let v = t(this, xt) + E;
|
|
249
|
-
const I = Math.max(0, m -
|
|
249
|
+
const I = Math.max(0, m - u);
|
|
250
250
|
v < 0 && (v = 0), v > I && (v = I), e.scrollTop = v;
|
|
251
251
|
}
|
|
252
252
|
this.refresh();
|
|
253
|
-
}, "onMouseMove"), o = /* @__PURE__ */
|
|
253
|
+
}, "onMouseMove"), o = /* @__PURE__ */ h(() => {
|
|
254
254
|
y(this, J, !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", () => {
|
|
@@ -334,7 +334,7 @@ const $e = class $e extends HTMLElement {
|
|
|
334
334
|
<div class='ng-scroll-track'><div class='ng-scroll-thumb'></div></div>
|
|
335
335
|
<button class='ng-scroll-bottom' disabled><div class='ng-scroll-icon'></div></button>
|
|
336
336
|
`;
|
|
337
|
-
const e = /* @__PURE__ */
|
|
337
|
+
const e = /* @__PURE__ */ h(() => {
|
|
338
338
|
const s = t(this, F).shadowRoot.querySelector(".ng-container-body .ng-part-body");
|
|
339
339
|
if (!s) {
|
|
340
340
|
setTimeout(e, 10);
|
|
@@ -351,14 +351,14 @@ const $e = class $e extends HTMLElement {
|
|
|
351
351
|
e();
|
|
352
352
|
}
|
|
353
353
|
};
|
|
354
|
-
F = new WeakMap(), at = new WeakMap(), J = new WeakMap(), T = new WeakMap(), vt = new WeakMap(), xt = new WeakMap(), Nt = new WeakMap(),
|
|
354
|
+
F = new WeakMap(), at = new WeakMap(), J = new WeakMap(), T = new WeakMap(), vt = new WeakMap(), xt = new WeakMap(), Nt = new WeakMap(), h($e, "NineTableVScrollBar");
|
|
355
355
|
let le = $e;
|
|
356
356
|
customElements.get("nine-table-vscrollbar") || customElements.define("nine-table-vscrollbar", le);
|
|
357
|
-
var P,
|
|
357
|
+
var P, w, Q, D, _, V, tt, wt, Se, Ee, Wt, Ot, zt, St, Et, Bt, Dt, At, Ae, lt, qt, Pt;
|
|
358
358
|
const Ie = class Ie {
|
|
359
359
|
constructor(i) {
|
|
360
360
|
d(this, P);
|
|
361
|
-
d(this,
|
|
361
|
+
d(this, w);
|
|
362
362
|
d(this, Q);
|
|
363
363
|
d(this, D, /* @__PURE__ */ new Map());
|
|
364
364
|
d(this, _, null);
|
|
@@ -369,44 +369,44 @@ const Ie = class Ie {
|
|
|
369
369
|
d(this, Ee, !1);
|
|
370
370
|
//#ticking = false; // 🎯 고속 스크롤 스로틀링용 플래그
|
|
371
371
|
d(this, Wt, 3);
|
|
372
|
-
A(this, "refresh", /* @__PURE__ */
|
|
372
|
+
A(this, "refresh", /* @__PURE__ */ h(() => {
|
|
373
373
|
var e;
|
|
374
374
|
H.log("rowManager.refresh");
|
|
375
|
-
const i = t(this,
|
|
376
|
-
i && (t(this, St).call(this), t(this, lt).call(this, i.scrollTop), (e = t(this,
|
|
375
|
+
const i = t(this, w).querySelector(".ng-container-body .ng-part-body");
|
|
376
|
+
i && (t(this, St).call(this), t(this, lt).call(this, i.scrollTop), (e = t(this, w).querySelector("nine-table-vscrollbar")) == null || e.refresh());
|
|
377
377
|
}, "refresh"));
|
|
378
|
-
A(this, "initialize", /* @__PURE__ */
|
|
378
|
+
A(this, "initialize", /* @__PURE__ */ h(() => {
|
|
379
379
|
H.log("rowManager.initialize"), y(this, Q, {
|
|
380
|
-
scrollTables: t(this,
|
|
381
|
-
firstTr: t(this,
|
|
380
|
+
scrollTables: t(this, w).querySelectorAll(".ng-part-body table"),
|
|
381
|
+
firstTr: t(this, w).querySelector(".ng-container-body .ng-part-body tbody.bindable-tbody tr:not(.nodata)")
|
|
382
382
|
}), y(this, _, null), t(this, D).clear(), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((o) => {
|
|
383
|
-
const a = t(this,
|
|
383
|
+
const a = t(this, w).querySelector(o);
|
|
384
384
|
if (!a) return;
|
|
385
|
-
const
|
|
386
|
-
if (!
|
|
387
|
-
const l =
|
|
385
|
+
const c = a.querySelector(".ng-part-body table");
|
|
386
|
+
if (!c) return;
|
|
387
|
+
const l = c.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
|
-
const i = t(this,
|
|
392
|
+
const i = t(this, w).querySelector(".ng-container-body .ng-part-body"), e = t(this, w).querySelector(".ng-container-left .ng-part-body"), s = t(this, w).querySelector(".ng-container-right .ng-part-body"), r = t(this, w).querySelector(".ng-container-body .ng-part-header"), n = t(this, w).querySelector(".ng-container-body .ng-part-footer");
|
|
393
393
|
if (i) {
|
|
394
394
|
t(this, zt).call(this, i), t(this, At).call(this), t(this, St).call(this), t(this, lt).call(this, i.scrollTop);
|
|
395
395
|
let o = !1;
|
|
396
|
-
const a = /* @__PURE__ */
|
|
396
|
+
const a = /* @__PURE__ */ h((c) => {
|
|
397
397
|
if (o) return;
|
|
398
398
|
o = !0;
|
|
399
|
-
const l =
|
|
399
|
+
const l = c.scrollTop, f = c.scrollLeft;
|
|
400
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, lt).call(this, l), o = !1;
|
|
401
401
|
}, "handleContainerScroll");
|
|
402
|
-
[i, e, s].forEach((
|
|
403
|
-
|
|
404
|
-
a(
|
|
402
|
+
[i, e, s].forEach((c) => {
|
|
403
|
+
c && c.addEventListener("scroll", () => {
|
|
404
|
+
a(c);
|
|
405
405
|
}, { passive: !0 });
|
|
406
406
|
});
|
|
407
407
|
}
|
|
408
408
|
}, "initialize"));
|
|
409
|
-
d(this, Ot, /* @__PURE__ */
|
|
409
|
+
d(this, Ot, /* @__PURE__ */ h((i, e) => {
|
|
410
410
|
H.log("rowManager.#renderRows");
|
|
411
411
|
const s = t(this, D).get(e);
|
|
412
412
|
if (!s || s.length === 0) return;
|
|
@@ -415,12 +415,12 @@ const Ie = class Ie {
|
|
|
415
415
|
r.querySelectorAll("tr:not(.nodata)").forEach((a) => a.remove());
|
|
416
416
|
const n = r.querySelector("tr.nodata"), o = document.createDocumentFragment();
|
|
417
417
|
for (let a = 0; a < t(this, wt); a++)
|
|
418
|
-
s.forEach((
|
|
419
|
-
o.appendChild(
|
|
418
|
+
s.forEach((c) => {
|
|
419
|
+
o.appendChild(c.cloneNode(!0));
|
|
420
420
|
});
|
|
421
421
|
n ? n.before(o) : r.appendChild(o), e === ".ng-container-body" && (t(this, Q).firstTr = r.querySelector("tr:not(.nodata)"));
|
|
422
422
|
}, "#renderRows"));
|
|
423
|
-
d(this, zt, /* @__PURE__ */
|
|
423
|
+
d(this, zt, /* @__PURE__ */ h((i) => {
|
|
424
424
|
if (H.log("rowManager.#measureAndCacheHeight"), t(this, _) !== null && t(this, _) > 0)
|
|
425
425
|
return t(this, _);
|
|
426
426
|
H.log("#measureAndCacheHeight");
|
|
@@ -433,65 +433,65 @@ const Ie = class Ie {
|
|
|
433
433
|
e.forEach((b) => {
|
|
434
434
|
n.appendChild(b.cloneNode(!0));
|
|
435
435
|
}), r ? r.before(n) : s.appendChild(n);
|
|
436
|
-
const o = t(this,
|
|
436
|
+
const o = t(this, w), a = o.style.display, c = 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 (
|
|
439
|
+
const g = s.querySelectorAll("tr");
|
|
440
|
+
if (g.forEach((b) => {
|
|
441
|
+
let u = b.offsetHeight || b.getBoundingClientRect().height;
|
|
442
|
+
if (u === 0) {
|
|
443
443
|
const m = window.getComputedStyle(b);
|
|
444
|
-
|
|
444
|
+
u = parseFloat(m.height) || parseFloat(m.minHeight) || 0;
|
|
445
445
|
}
|
|
446
|
-
f +=
|
|
447
|
-
}),
|
|
446
|
+
f += u;
|
|
447
|
+
}), g.forEach((b) => b.remove()), o.style.display = a, o.style.visibility = c, o.style.position = l, f <= 0) throw new Error("invalid dom");
|
|
448
448
|
return y(this, _, f), t(this, Et).call(this), t(this, _);
|
|
449
449
|
}, "#measureAndCacheHeight"));
|
|
450
|
-
d(this, St, /* @__PURE__ */
|
|
450
|
+
d(this, St, /* @__PURE__ */ h(() => {
|
|
451
451
|
H.log("rowManager.#updateVirtualScrollHeight");
|
|
452
452
|
const e = (t(this, P).data.get() || []).length, s = t(this, _), 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
|
-
const o = t(this,
|
|
454
|
+
const o = t(this, w).querySelector(n);
|
|
455
455
|
if (!o) return;
|
|
456
456
|
const a = o.querySelector(".ng-part-body .ng-virtual-spacer");
|
|
457
457
|
a && (a.style.height = `${r}px`);
|
|
458
458
|
});
|
|
459
459
|
}, "#updateVirtualScrollHeight"));
|
|
460
|
-
d(this, Et, /* @__PURE__ */
|
|
460
|
+
d(this, Et, /* @__PURE__ */ h(() => {
|
|
461
461
|
if (t(this, tt) > 0 && t(this, _) > 0) {
|
|
462
462
|
const i = Math.ceil(t(this, tt) / t(this, _));
|
|
463
463
|
y(this, wt, i + t(this, Wt));
|
|
464
464
|
}
|
|
465
465
|
}, "#updateRowCount"));
|
|
466
|
-
d(this, Bt, /* @__PURE__ */
|
|
467
|
-
var a,
|
|
468
|
-
const i = t(this,
|
|
466
|
+
d(this, Bt, /* @__PURE__ */ h(() => {
|
|
467
|
+
var a, c, l, f, g, b;
|
|
468
|
+
const i = t(this, w).querySelector(".ng-container-left .ng-part-body table"), e = t(this, w).querySelector(".ng-container-body .ng-part-body table"), s = t(this, w).querySelector(".ng-container-right .ng-part-body table");
|
|
469
469
|
if (e) {
|
|
470
|
-
const
|
|
470
|
+
const u = i ? Array.from(i.querySelectorAll("tbody tr")) : [], m = Array.from(e.querySelectorAll("tbody tr")), S = s ? Array.from(s.querySelectorAll("tbody tr")) : [], E = Math.max(u.length, m.length, S.length);
|
|
471
471
|
for (let v = 0; v < E; v++) {
|
|
472
472
|
const I = [
|
|
473
|
-
((a =
|
|
474
|
-
((
|
|
475
|
-
((l =
|
|
473
|
+
((a = u[v]) == null ? void 0 : a.getBoundingClientRect().height) || 0,
|
|
474
|
+
((c = m[v]) == null ? void 0 : c.getBoundingClientRect().height) || 0,
|
|
475
|
+
((l = S[v]) == null ? void 0 : l.getBoundingClientRect().height) || 0
|
|
476
476
|
], R = Math.max(...I);
|
|
477
|
-
R > 0 && (
|
|
477
|
+
R > 0 && (u[v] && (u[v].style.height = `${R}px`), m[v] && (m[v].style.height = `${R}px`), S[v] && (S[v].style.height = `${R}px`));
|
|
478
478
|
}
|
|
479
479
|
}
|
|
480
|
-
const r = t(this,
|
|
480
|
+
const r = t(this, w).querySelector(".ng-container-left .ng-part-footer table"), n = t(this, w).querySelector(".ng-container-body .ng-part-footer table"), o = t(this, w).querySelector(".ng-container-right .ng-part-footer table");
|
|
481
481
|
if (n) {
|
|
482
|
-
const
|
|
482
|
+
const u = r ? Array.from(r.querySelectorAll("tfoot tr")) : [], m = Array.from(n.querySelectorAll("tfoot tr")), S = o ? Array.from(o.querySelectorAll("tfoot tr")) : [], E = Math.max(u.length, m.length, S.length);
|
|
483
483
|
for (let v = 0; v < E; v++) {
|
|
484
484
|
const I = [
|
|
485
|
-
((f =
|
|
486
|
-
((
|
|
487
|
-
((b =
|
|
485
|
+
((f = u[v]) == null ? void 0 : f.getBoundingClientRect().height) || 0,
|
|
486
|
+
((g = m[v]) == null ? void 0 : g.getBoundingClientRect().height) || 0,
|
|
487
|
+
((b = S[v]) == null ? void 0 : b.getBoundingClientRect().height) || 0
|
|
488
488
|
], R = Math.max(...I);
|
|
489
|
-
R > 0 && (
|
|
489
|
+
R > 0 && (u[v] && (u[v].style.height = `${R}px`), m[v] && (m[v].style.height = `${R}px`), S[v] && (S[v].style.height = `${R}px`));
|
|
490
490
|
}
|
|
491
491
|
}
|
|
492
492
|
}, "#syncRowHeights"));
|
|
493
|
-
d(this, Dt, /* @__PURE__ */
|
|
494
|
-
!t(this,
|
|
493
|
+
d(this, Dt, /* @__PURE__ */ h(() => {
|
|
494
|
+
!t(this, w) || !(t(this, w) instanceof HTMLElement) || (y(this, V, new ResizeObserver((i) => {
|
|
495
495
|
for (const e of i) {
|
|
496
496
|
const s = e.target;
|
|
497
497
|
if (!s.classList.contains("active")) continue;
|
|
@@ -500,52 +500,52 @@ const Ie = class Ie {
|
|
|
500
500
|
let n = 0;
|
|
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
|
-
const
|
|
504
|
-
t(this, tt) !==
|
|
503
|
+
const c = Math.max(r - n, 100);
|
|
504
|
+
t(this, tt) !== c && (y(this, tt, c), t(this, Et).call(this), t(this, _) !== null && (t(this, At).call(this), this.refresh()));
|
|
505
505
|
}
|
|
506
506
|
}
|
|
507
|
-
})), t(this, V).observe(t(this,
|
|
507
|
+
})), t(this, V).observe(t(this, w)));
|
|
508
508
|
}, "#initResizeObserver"));
|
|
509
|
-
d(this, At, /* @__PURE__ */
|
|
509
|
+
d(this, At, /* @__PURE__ */ h(() => {
|
|
510
510
|
H.log("rowManager.#renderAllContainers"), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((i) => {
|
|
511
|
-
const e = t(this,
|
|
511
|
+
const e = t(this, w).querySelector(i);
|
|
512
512
|
e && e.querySelector(".ng-part-body tbody.bindable-tbody") && t(this, Ot).call(this, e, i);
|
|
513
513
|
}), t(this, Pt).call(this), t(this, Bt).call(this);
|
|
514
514
|
}, "#renderAllContainers"));
|
|
515
|
-
d(this, Ae, /* @__PURE__ */
|
|
515
|
+
d(this, Ae, /* @__PURE__ */ h((i) => {
|
|
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, w).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 n = Array.from(r.querySelectorAll("tr:not(.nodata)")), o = ((l = t(this, D).get(e)) == null ? void 0 : l.length) || 1,
|
|
523
|
-
n.forEach((f,
|
|
524
|
-
const b = i + Math.floor(
|
|
525
|
-
if (b >=
|
|
522
|
+
const n = Array.from(r.querySelectorAll("tr:not(.nodata)")), o = ((l = t(this, D).get(e)) == null ? void 0 : l.length) || 1, c = (t(this, P).data.get() || []).length;
|
|
523
|
+
n.forEach((f, g) => {
|
|
524
|
+
const b = i + Math.floor(g / o);
|
|
525
|
+
if (b >= c) {
|
|
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, P).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, lt, /* @__PURE__ */
|
|
535
|
-
var f,
|
|
534
|
+
d(this, lt, /* @__PURE__ */ h((i) => {
|
|
535
|
+
var f, g;
|
|
536
536
|
const e = t(this, _);
|
|
537
537
|
if (!e || e <= 0) return;
|
|
538
538
|
const s = t(this, P).data.length;
|
|
539
539
|
if (s === 0) return;
|
|
540
540
|
const r = ((f = t(this, D).get(".ng-container-body")) == null ? void 0 : f.length) || 1, n = Math.max(0, s - 1), o = Math.min(n, Math.max(0, Math.floor(i / e))), a = Math.floor(o * e);
|
|
541
541
|
H.log(`📜 [Scroll Inspect] scrollTop: ${i}, rowHeight: ${e}, startIndex: ${o}, offsetY: ${a}`);
|
|
542
|
-
const
|
|
543
|
-
(
|
|
542
|
+
const c = t(this, Q).firstTr, l = c && c.dataset.row !== void 0 ? parseInt(c.dataset.row, 10) : -1;
|
|
543
|
+
(g = t(this, Q)) == null || g.scrollTables.forEach((b) => {
|
|
544
544
|
b.style.transform = `translate3d(0, ${a}px, 0)`;
|
|
545
545
|
}), l !== o && [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((b) => {
|
|
546
|
-
const
|
|
547
|
-
if (!
|
|
548
|
-
const m =
|
|
546
|
+
const u = t(this, w).querySelector(b);
|
|
547
|
+
if (!u) return;
|
|
548
|
+
const m = u.querySelector(".ng-part-body tbody.bindable-tbody");
|
|
549
549
|
if (!m) return;
|
|
550
550
|
Array.from(m.querySelectorAll("tr:not(.nodata)")).forEach((E, v) => {
|
|
551
551
|
const I = o + Math.floor(v / r);
|
|
@@ -572,32 +572,32 @@ const Ie = class Ie {
|
|
|
572
572
|
cell.dataset.row = dataIndex;
|
|
573
573
|
});
|
|
574
574
|
}; */
|
|
575
|
-
d(this, qt, /* @__PURE__ */
|
|
575
|
+
d(this, qt, /* @__PURE__ */ h((i, e, s) => {
|
|
576
576
|
i.dataset.row = s, i.data = e, Array.from(i.cells).forEach((r, n) => {
|
|
577
577
|
r.dataset.row = s;
|
|
578
578
|
const o = Array.from(r.children).find((a) => a.tagName.toLowerCase().startsWith("cell-") || typeof a.refresh == "function");
|
|
579
579
|
o && typeof o.refresh == "function" && o.refresh();
|
|
580
580
|
});
|
|
581
581
|
}, "#bindRowData"));
|
|
582
|
-
d(this, Pt, /* @__PURE__ */
|
|
583
|
-
var
|
|
582
|
+
d(this, Pt, /* @__PURE__ */ h(() => {
|
|
583
|
+
var c, l, f;
|
|
584
584
|
H.log("rowManager.#syncHeaderHeights");
|
|
585
|
-
const i = t(this,
|
|
585
|
+
const i = t(this, w).querySelector(".ng-container-left .ng-part-header table"), e = t(this, w).querySelector(".ng-container-body .ng-part-header table"), s = t(this, w).querySelector(".ng-container-right .ng-part-header table");
|
|
586
586
|
if (!e) return;
|
|
587
587
|
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
|
|
588
|
+
for (let g = 0; g < a; g++) {
|
|
589
589
|
const b = [
|
|
590
|
-
((
|
|
591
|
-
((l = n[
|
|
592
|
-
((f = o[
|
|
593
|
-
],
|
|
594
|
-
|
|
590
|
+
((c = r[g]) == null ? void 0 : c.getBoundingClientRect().height) || 0,
|
|
591
|
+
((l = n[g]) == null ? void 0 : l.getBoundingClientRect().height) || 0,
|
|
592
|
+
((f = o[g]) == null ? void 0 : f.getBoundingClientRect().height) || 0
|
|
593
|
+
], u = Math.max(...b);
|
|
594
|
+
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
595
|
}
|
|
596
596
|
}, "#syncHeaderHeights"));
|
|
597
|
-
A(this, "destroy", /* @__PURE__ */
|
|
597
|
+
A(this, "destroy", /* @__PURE__ */ h(() => {
|
|
598
598
|
t(this, V) && (t(this, V).disconnect(), y(this, V, null));
|
|
599
599
|
}, "destroy"));
|
|
600
|
-
y(this, P, i.getRootNode().host), y(this,
|
|
600
|
+
y(this, P, i.getRootNode().host), y(this, w, i), t(this, Dt).call(this);
|
|
601
601
|
}
|
|
602
602
|
getRowHeight() {
|
|
603
603
|
return t(this, _);
|
|
@@ -607,7 +607,7 @@ const Ie = class Ie {
|
|
|
607
607
|
return ((e = t(this, D).get(i)) == null ? void 0 : e.length) || 1;
|
|
608
608
|
}
|
|
609
609
|
};
|
|
610
|
-
P = new WeakMap(),
|
|
610
|
+
P = new WeakMap(), w = new WeakMap(), Q = new WeakMap(), D = new WeakMap(), _ = new WeakMap(), V = new WeakMap(), tt = 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(), lt = new WeakMap(), qt = new WeakMap(), Pt = new WeakMap(), h(Ie, "RowManager");
|
|
611
611
|
let ce = Ie;
|
|
612
612
|
const jt = class jt {
|
|
613
613
|
/**
|
|
@@ -621,72 +621,72 @@ const jt = class jt {
|
|
|
621
621
|
*/
|
|
622
622
|
static compile(i) {
|
|
623
623
|
if (!i) return null;
|
|
624
|
-
const e = /* @__PURE__ */
|
|
624
|
+
const e = /* @__PURE__ */ h((a) => {
|
|
625
625
|
a.querySelectorAll("tbody td, tbody th, tfoot td, tfoot th").forEach((l) => {
|
|
626
626
|
const f = l.getAttribute("cell-type") || "renderer";
|
|
627
627
|
if (l.children.length > 0 && l.firstElementChild.tagName.includes("-")) return;
|
|
628
|
-
let
|
|
629
|
-
const b = l.getAttribute("data-bind"),
|
|
628
|
+
let g = `cell-${f}`;
|
|
629
|
+
const b = l.getAttribute("data-bind"), u = l.getAttribute("data-expr"), m = l.getAttribute("maxbyte"), S = l.getAttribute("type");
|
|
630
630
|
let E = [];
|
|
631
|
-
b && E.push(`data-bind="${b}"`),
|
|
631
|
+
b && E.push(`data-bind="${b}"`), u && E.push(`data-expr="${u}"`), m && E.push(`maxbyte="${m}"`), S && E.push(`type="${S}"`), l.innerHTML = `<${g} ${E.join(" ")}></${g}>`;
|
|
632
632
|
});
|
|
633
|
-
}, "processCellTypes"), s = /* @__PURE__ */
|
|
633
|
+
}, "processCellTypes"), s = /* @__PURE__ */ h((a) => {
|
|
634
634
|
if (!a.querySelector("colgroup")) {
|
|
635
|
-
const
|
|
635
|
+
const c = a.querySelector("tbody tr") || a.querySelector("tr"), l = c ? c.querySelectorAll("th, td").length : 1, f = document.createElement("colgroup"), g = Math.max(Math.floor(a.clientWidth / l), 100);
|
|
636
636
|
for (let b = 0; b < l; b++) {
|
|
637
|
-
const
|
|
638
|
-
|
|
637
|
+
const u = document.createElement("col");
|
|
638
|
+
u.setAttribute("width", g), f.appendChild(u);
|
|
639
639
|
}
|
|
640
640
|
a.prepend(f);
|
|
641
641
|
}
|
|
642
642
|
if (!a.querySelector("thead")) {
|
|
643
|
-
const
|
|
644
|
-
l ? l.after(
|
|
643
|
+
const c = document.createElement("thead"), l = a.querySelector("colgroup");
|
|
644
|
+
l ? l.after(c) : a.prepend(c);
|
|
645
645
|
}
|
|
646
646
|
a.classList.add("nine-table-element");
|
|
647
|
-
}, "ensureTableStructure"), r = /* @__PURE__ */
|
|
648
|
-
const l = Array.from(a.querySelectorAll(
|
|
649
|
-
if (
|
|
647
|
+
}, "ensureTableStructure"), r = /* @__PURE__ */ h((a, c) => {
|
|
648
|
+
const l = Array.from(a.querySelectorAll(c + " tr")), f = Array.from(a.querySelectorAll(c + " th," + c + " td")), g = l.length;
|
|
649
|
+
if (g === 0 || f.length === 0) return;
|
|
650
650
|
let b = 0;
|
|
651
651
|
f.forEach((m) => {
|
|
652
652
|
b += m.colSpan || 1;
|
|
653
653
|
});
|
|
654
|
-
const
|
|
654
|
+
const u = Array.from(Array(g), () => Array(b).fill(null));
|
|
655
655
|
l.forEach((m) => {
|
|
656
|
-
const
|
|
656
|
+
const S = m.sectionRowIndex;
|
|
657
657
|
let E = 0;
|
|
658
658
|
Array.from(m.querySelectorAll("th,td")).forEach((v) => {
|
|
659
|
-
for (let z = 0; z <
|
|
660
|
-
if (
|
|
659
|
+
for (let z = 0; z < u[S].length; z++)
|
|
660
|
+
if (u[S][z] === null) {
|
|
661
661
|
E = z;
|
|
662
662
|
break;
|
|
663
663
|
}
|
|
664
664
|
const I = v.rowSpan || 1, R = v.colSpan || 1;
|
|
665
665
|
for (let z = 0; z < I; z++)
|
|
666
666
|
for (let yt = 0; yt < R; yt++)
|
|
667
|
-
|
|
667
|
+
S + z < g && E + yt < b && (u[S + z][E + yt] = z === 0 && yt === 0 ? "1" : "0");
|
|
668
668
|
});
|
|
669
669
|
}), l.forEach((m) => {
|
|
670
|
-
const
|
|
670
|
+
const S = m.sectionRowIndex;
|
|
671
671
|
Array.from(m.querySelectorAll("th,td")).forEach((E) => {
|
|
672
|
-
for (let v = 0; v <
|
|
673
|
-
if (
|
|
674
|
-
E.dataset.col = v,
|
|
672
|
+
for (let v = 0; v < u[S].length; v++)
|
|
673
|
+
if (u[S][v] === "1") {
|
|
674
|
+
E.dataset.col = v, u[S][v] = "0";
|
|
675
675
|
break;
|
|
676
676
|
}
|
|
677
677
|
});
|
|
678
678
|
});
|
|
679
679
|
}, "resetColIndex"), n = i.cloneNode(!0);
|
|
680
|
-
return s(n), e(n), r(n, "thead"), r(n, "tbody"), r(n, "tfoot"), Array.from(n.querySelectorAll("colgroup col")).forEach((a,
|
|
680
|
+
return s(n), e(n), r(n, "thead"), r(n, "tbody"), r(n, "tfoot"), Array.from(n.querySelectorAll("colgroup col")).forEach((a, c) => {
|
|
681
681
|
const l = a.getAttribute("fixed");
|
|
682
|
-
l && n.querySelectorAll(`thead [data-col="${
|
|
682
|
+
l && n.querySelectorAll(`thead [data-col="${c}"], tbody [data-col="${c}"], tfoot [data-col="${c}"]`).forEach((f) => {
|
|
683
683
|
f.setAttribute("fixed", l);
|
|
684
684
|
});
|
|
685
685
|
}), n;
|
|
686
686
|
}
|
|
687
687
|
// 🎯 [추가] td/th에 선언된 cell-type 속성을 읽어 커스텀 태그로 자동 감싸기
|
|
688
688
|
};
|
|
689
|
-
|
|
689
|
+
h(jt, "TableCompiler");
|
|
690
690
|
let he = jt;
|
|
691
691
|
var Ft, et, st, Vt, Yt, ct, Ut, Xt;
|
|
692
692
|
const pt = class pt extends HTMLElement {
|
|
@@ -695,10 +695,10 @@ const pt = class pt extends HTMLElement {
|
|
|
695
695
|
d(this, Ft);
|
|
696
696
|
d(this, et, null);
|
|
697
697
|
d(this, st);
|
|
698
|
-
A(this, "invalidate", /* @__PURE__ */
|
|
698
|
+
A(this, "invalidate", /* @__PURE__ */ h(() => {
|
|
699
699
|
t(this, st).refresh();
|
|
700
700
|
}, "invalidate"));
|
|
701
|
-
d(this, Vt, /* @__PURE__ */
|
|
701
|
+
d(this, Vt, /* @__PURE__ */ h(() => {
|
|
702
702
|
[
|
|
703
703
|
{ selector: ".ng-container-body", type: null },
|
|
704
704
|
{ selector: ".ng-container-left", type: "left" },
|
|
@@ -708,7 +708,7 @@ const pt = class pt extends HTMLElement {
|
|
|
708
708
|
(n = this.querySelector(`${s} .ng-part-header`)) == null || n.appendChild(t(this, ct).call(this, t(this, et), r, "header")), (o = this.querySelector(`${s} .ng-virtual-spacer`)) == null || o.before(t(this, ct).call(this, t(this, et), r, "body")), (a = this.querySelector(`${s} .ng-part-footer`)) == null || a.appendChild(t(this, ct).call(this, t(this, et), r, "footer"));
|
|
709
709
|
});
|
|
710
710
|
}, "#renderSplitContainers"));
|
|
711
|
-
d(this, Yt, /* @__PURE__ */
|
|
711
|
+
d(this, Yt, /* @__PURE__ */ h(() => {
|
|
712
712
|
["left", "right", "body"].forEach((e) => {
|
|
713
713
|
const s = this.querySelector(`.ng-container-${e}`), r = s == null ? void 0 : s.querySelectorAll("table");
|
|
714
714
|
if (!s || !r || r.length === 0) return;
|
|
@@ -719,7 +719,7 @@ const pt = class pt extends HTMLElement {
|
|
|
719
719
|
}), e === "body" ? s.style.flex = "1" : (s.style.flex = `0 0 ${n}px`, s.style.width = `${n}px`);
|
|
720
720
|
});
|
|
721
721
|
}, "#updateContainerWidths"));
|
|
722
|
-
A(this, "generate", /* @__PURE__ */
|
|
722
|
+
A(this, "generate", /* @__PURE__ */ h((e) => {
|
|
723
723
|
if (!e) return;
|
|
724
724
|
y(this, et, he.compile(e)), t(this, Vt).call(this), t(this, Yt).call(this);
|
|
725
725
|
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");
|
|
@@ -728,14 +728,14 @@ const pt = class pt extends HTMLElement {
|
|
|
728
728
|
(o = this.querySelector("nine-table-hscrollbar")) == null || o.refresh();
|
|
729
729
|
}, 0);
|
|
730
730
|
}, "generate"));
|
|
731
|
-
d(this, ct, /* @__PURE__ */
|
|
732
|
-
const n = e.cloneNode(!0), o = n.querySelector("thead"), a = n.querySelector("tbody"),
|
|
731
|
+
d(this, ct, /* @__PURE__ */ h((e, s, r) => {
|
|
732
|
+
const n = e.cloneNode(!0), o = n.querySelector("thead"), a = n.querySelector("tbody"), c = n.querySelector("tfoot");
|
|
733
733
|
if (r === "header") {
|
|
734
|
-
if (a && a.remove(),
|
|
734
|
+
if (a && a.remove(), c && c.remove(), e.querySelector("tbody")) {
|
|
735
735
|
const f = document.createElement("tbody");
|
|
736
736
|
f.className = "fixed-tbody", n.appendChild(f);
|
|
737
737
|
}
|
|
738
|
-
} else r === "body" ? (o && o.remove(),
|
|
738
|
+
} else r === "body" ? (o && o.remove(), c && c.remove(), a && (a.className = "bindable-tbody")) : r === "footer" && (o && o.remove(), a && a.remove());
|
|
739
739
|
return s === "left" ? n.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
|
|
740
740
|
l.getAttribute("fixed") !== "left" && l.remove();
|
|
741
741
|
}) : s === "right" ? n.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
|
|
@@ -744,19 +744,19 @@ const pt = class pt extends HTMLElement {
|
|
|
744
744
|
l.remove();
|
|
745
745
|
}), n;
|
|
746
746
|
}, "#createSplitTable"));
|
|
747
|
-
A(this, "getRowHeight", /* @__PURE__ */
|
|
748
|
-
A(this, "scrollToX", /* @__PURE__ */
|
|
747
|
+
A(this, "getRowHeight", /* @__PURE__ */ h(() => t(this, st).getRowHeight(), "getRowHeight"));
|
|
748
|
+
A(this, "scrollToX", /* @__PURE__ */ h((e) => {
|
|
749
749
|
const s = this.querySelector(".ng-container-body .ng-part-body");
|
|
750
750
|
s && (s.scrollLeft = e);
|
|
751
751
|
}, "scrollToX"));
|
|
752
|
-
A(this, "scrollToY", /* @__PURE__ */
|
|
752
|
+
A(this, "scrollToY", /* @__PURE__ */ h((e) => {
|
|
753
753
|
const s = this.querySelector(".ng-container-body .ng-part-body");
|
|
754
754
|
s && (s.scrollTop = e);
|
|
755
755
|
}, "scrollToY"));
|
|
756
|
-
d(this, Ut, /* @__PURE__ */
|
|
756
|
+
d(this, Ut, /* @__PURE__ */ h(() => {
|
|
757
757
|
t(this, Xt).call(this);
|
|
758
758
|
}, "#init"));
|
|
759
|
-
d(this, Xt, /* @__PURE__ */
|
|
759
|
+
d(this, Xt, /* @__PURE__ */ h(() => {
|
|
760
760
|
const e = pt.SCROLLBAR_SIZE;
|
|
761
761
|
this.innerHTML = `
|
|
762
762
|
<style>
|
|
@@ -954,14 +954,14 @@ const pt = class pt extends HTMLElement {
|
|
|
954
954
|
this.innerHTML = "", H.log("NineTableSheet destroyed.");
|
|
955
955
|
}
|
|
956
956
|
};
|
|
957
|
-
Ft = new WeakMap(), et = new WeakMap(), st = new WeakMap(), Vt = new WeakMap(), Yt = new WeakMap(), ct = new WeakMap(), Ut = new WeakMap(), Xt = new WeakMap(),
|
|
957
|
+
Ft = new WeakMap(), et = new WeakMap(), st = new WeakMap(), Vt = new WeakMap(), Yt = new WeakMap(), ct = new WeakMap(), Ut = new WeakMap(), Xt = new WeakMap(), h(pt, "NineTableSheet"), A(pt, "SCROLLBAR_SIZE", 16);
|
|
958
958
|
let $t = pt;
|
|
959
959
|
customElements.get("nine-table-sheet") || customElements.define("nine-table-sheet", $t);
|
|
960
960
|
var Kt, Rt;
|
|
961
961
|
const _e = class _e extends HTMLElement {
|
|
962
962
|
constructor() {
|
|
963
963
|
super();
|
|
964
|
-
d(this, Kt, /* @__PURE__ */
|
|
964
|
+
d(this, Kt, /* @__PURE__ */ h(() => {
|
|
965
965
|
var e;
|
|
966
966
|
(e = this.querySelector(".nine-tab-bar")) == null || e.addEventListener("click", (s) => {
|
|
967
967
|
var o;
|
|
@@ -969,27 +969,27 @@ const _e = class _e extends HTMLElement {
|
|
|
969
969
|
t(this, Rt).call(this, n, r);
|
|
970
970
|
}), t(this, Rt).call(this, 0, !1);
|
|
971
971
|
}, "#init"));
|
|
972
|
-
d(this, Rt, /* @__PURE__ */
|
|
973
|
-
const r = /* @__PURE__ */
|
|
972
|
+
d(this, Rt, /* @__PURE__ */ h((e, s = !1) => {
|
|
973
|
+
const r = /* @__PURE__ */ h(() => {
|
|
974
974
|
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 m = parseInt(
|
|
979
|
-
|
|
975
|
+
Array.from(this.querySelectorAll("nine-splitter")).forEach((u) => u.style.setProperty("display", "none"));
|
|
976
|
+
const b = f.filter((u) => u.classList.contains("active"));
|
|
977
|
+
b.length < 2 || b.forEach((u) => {
|
|
978
|
+
const m = parseInt(u.getAttribute("data-index"), 10), S = this.querySelector(`nine-splitter[data-split-index="${m}"]`), E = f[m + 1];
|
|
979
|
+
S && E && E.classList.contains("active") && S.style.setProperty("display", "flex");
|
|
980
980
|
});
|
|
981
|
-
}, "updateSplitters"), n = this.querySelector(".nine-tab-bar"), o = this.querySelector("nine-table-sheets-body"), a = n.querySelectorAll(".nine-tab-item"),
|
|
981
|
+
}, "updateSplitters"), n = this.querySelector(".nine-tab-bar"), o = this.querySelector("nine-table-sheets-body"), a = n.querySelectorAll(".nine-tab-item"), c = o.querySelectorAll("nine-table-sheet");
|
|
982
982
|
if (!a[e]) return;
|
|
983
983
|
if (!s)
|
|
984
|
-
a.forEach((f,
|
|
985
|
-
f.classList.toggle("active",
|
|
986
|
-
}),
|
|
987
|
-
const b =
|
|
984
|
+
a.forEach((f, g) => {
|
|
985
|
+
f.classList.toggle("active", g === e);
|
|
986
|
+
}), c.forEach((f, g) => {
|
|
987
|
+
const b = g === e;
|
|
988
988
|
f.classList.toggle("active", b), f.style.flex = b ? "1 1 100%" : "";
|
|
989
989
|
});
|
|
990
990
|
else {
|
|
991
|
-
const f = a[e],
|
|
992
|
-
if (f.classList.contains("active") &&
|
|
991
|
+
const f = a[e], g = n.querySelectorAll(".nine-tab-item.active");
|
|
992
|
+
if (f.classList.contains("active") && g.length <= 1)
|
|
993
993
|
return;
|
|
994
994
|
f.classList.toggle("active");
|
|
995
995
|
const b = o.querySelector(`nine-table-sheet[data-index="${e}"]`);
|
|
@@ -1005,31 +1005,31 @@ const _e = class _e extends HTMLElement {
|
|
|
1005
1005
|
t(this, Kt).call(this);
|
|
1006
1006
|
}
|
|
1007
1007
|
};
|
|
1008
|
-
Kt = new WeakMap(), Rt = new WeakMap(),
|
|
1008
|
+
Kt = new WeakMap(), Rt = new WeakMap(), h(_e, "NineTableSheets");
|
|
1009
1009
|
let de = _e;
|
|
1010
1010
|
customElements.get("nine-table-sheets") || customElements.define("nine-table-sheets", de);
|
|
1011
1011
|
var M, Zt, Tt, Gt;
|
|
1012
1012
|
const Ne = class Ne {
|
|
1013
1013
|
constructor(i) {
|
|
1014
1014
|
d(this, M);
|
|
1015
|
-
d(this, Zt, /* @__PURE__ */
|
|
1015
|
+
d(this, Zt, /* @__PURE__ */ h(() => {
|
|
1016
1016
|
t(this, Gt).call(this), new ResizeObserver((i) => {
|
|
1017
1017
|
for (let e of i)
|
|
1018
1018
|
t(this, M).getAttribute("auto-height") === "true" && t(this, Tt).call(this);
|
|
1019
1019
|
}).observe(t(this, M));
|
|
1020
1020
|
}, "#init"));
|
|
1021
|
-
d(this, Tt, /* @__PURE__ */
|
|
1022
|
-
var
|
|
1021
|
+
d(this, Tt, /* @__PURE__ */ h(() => {
|
|
1022
|
+
var c, l;
|
|
1023
1023
|
const i = Array.from(t(this, M).shadowRoot.querySelectorAll("nine-table-sheet.active"));
|
|
1024
1024
|
if (i.length === 0) return;
|
|
1025
|
-
const e = parseInt(t(this, M).getAttribute("max-display-row"), 10) || 10, s = Math.max(...i.map((f) => f.getRowHeight())), r = (
|
|
1025
|
+
const e = parseInt(t(this, M).getAttribute("max-display-row"), 10) || 10, s = Math.max(...i.map((f) => f.getRowHeight())), r = (c = t(this, M).shadowRoot.querySelector("nine-table-header")) == null ? void 0 : c.getBoundingClientRect().height, n = (l = t(this, M).shadowRoot.querySelector("nine-table-sheets-footer")) == null ? void 0 : l.getBoundingClientRect().height, o = $t.SCROLLBAR_SIZE, a = e * s + r + n + o;
|
|
1026
1026
|
t(this, M).style.height = `${a}px`;
|
|
1027
1027
|
}, "#applyAutoHeight"));
|
|
1028
|
-
d(this, Gt, /* @__PURE__ */
|
|
1029
|
-
const e = Array.from(t(this, M).children).filter((
|
|
1030
|
-
const
|
|
1031
|
-
return
|
|
1032
|
-
}).join(""), o = e.map((
|
|
1028
|
+
d(this, Gt, /* @__PURE__ */ h(() => {
|
|
1029
|
+
const e = Array.from(t(this, M).children).filter((c) => c.tagName === "TABLE"), s = t(this, M).getAttribute("auto-height") === "true", r = e.length, n = e.map((c, l) => {
|
|
1030
|
+
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>` : "";
|
|
1031
|
+
return g + b;
|
|
1032
|
+
}).join(""), o = e.map((c, l) => `<div class="nine-tab-item ${l === 0 ? "active" : ""}" data-index="${l}">Sheet ${l + 1}</div>`).join("");
|
|
1033
1033
|
t(this, M).shadowRoot.innerHTML = `
|
|
1034
1034
|
<style>
|
|
1035
1035
|
:host {
|
|
@@ -1152,23 +1152,23 @@ const Ne = class Ne {
|
|
|
1152
1152
|
<nine-table-footer></nine-table-footer>
|
|
1153
1153
|
`, t(this, M).shadowRoot.querySelector("nine-table-sheets").classList.add("nodata");
|
|
1154
1154
|
const a = t(this, M).shadowRoot.querySelectorAll("nine-table-sheet");
|
|
1155
|
-
a == null || a.forEach((
|
|
1155
|
+
a == null || a.forEach((c, l) => {
|
|
1156
1156
|
e[l] && setTimeout(() => {
|
|
1157
|
-
|
|
1157
|
+
c.generate(e[l]), s && t(this, Tt).call(this);
|
|
1158
1158
|
});
|
|
1159
1159
|
});
|
|
1160
1160
|
}, "#render"));
|
|
1161
1161
|
y(this, M, i), t(this, Zt).call(this);
|
|
1162
1162
|
}
|
|
1163
1163
|
};
|
|
1164
|
-
M = new WeakMap(), Zt = new WeakMap(), Tt = new WeakMap(), Gt = new WeakMap(),
|
|
1164
|
+
M = new WeakMap(), Zt = new WeakMap(), Tt = new WeakMap(), Gt = new WeakMap(), h(Ne, "LayoutManager");
|
|
1165
1165
|
let fe = Ne;
|
|
1166
1166
|
var kt, ht;
|
|
1167
1167
|
const We = class We {
|
|
1168
1168
|
constructor(i) {
|
|
1169
1169
|
d(this, kt);
|
|
1170
1170
|
d(this, ht, -1);
|
|
1171
|
-
A(this, "count", /* @__PURE__ */
|
|
1171
|
+
A(this, "count", /* @__PURE__ */ h(() => t(this, kt).rawRecords.length, "count"));
|
|
1172
1172
|
y(this, kt, i);
|
|
1173
1173
|
}
|
|
1174
1174
|
get at() {
|
|
@@ -1179,7 +1179,7 @@ const We = class We {
|
|
|
1179
1179
|
});
|
|
1180
1180
|
}
|
|
1181
1181
|
};
|
|
1182
|
-
kt = new WeakMap(), ht = new WeakMap(),
|
|
1182
|
+
kt = new WeakMap(), ht = new WeakMap(), h(We, "ngRow");
|
|
1183
1183
|
let ue = We;
|
|
1184
1184
|
var N, k, W, dt, Jt, Y, Qt, it, Ct, te, ee, ft;
|
|
1185
1185
|
const O = class O {
|
|
@@ -1190,7 +1190,7 @@ const O = class O {
|
|
|
1190
1190
|
d(this, dt, []);
|
|
1191
1191
|
d(this, Jt, 0);
|
|
1192
1192
|
d(this, Y, []);
|
|
1193
|
-
d(this, Qt, /* @__PURE__ */
|
|
1193
|
+
d(this, Qt, /* @__PURE__ */ h(() => {
|
|
1194
1194
|
y(this, Y, []);
|
|
1195
1195
|
const i = t(this, N).template || [];
|
|
1196
1196
|
Array.from(i).forEach((e) => {
|
|
@@ -1200,13 +1200,13 @@ const O = class O {
|
|
|
1200
1200
|
e.__ng || (e.__ng = t(this, Ct).call(this)), e.__ng.height = t(this, Y).slice();
|
|
1201
1201
|
});
|
|
1202
1202
|
}, "#initialize"));
|
|
1203
|
-
d(this, it, /* @__PURE__ */
|
|
1203
|
+
d(this, it, /* @__PURE__ */ h(() => {
|
|
1204
1204
|
const i = t(this, N).shadowRoot.querySelector("nine-table-sheets");
|
|
1205
1205
|
i == null || i.classList.toggle("nodata", this.length === 0), t(this, N).shadowRoot.querySelectorAll("nine-table-sheet").forEach((e) => {
|
|
1206
1206
|
e.invalidate();
|
|
1207
1207
|
});
|
|
1208
1208
|
}, "#invalidate"));
|
|
1209
|
-
A(this, "get", /* @__PURE__ */
|
|
1209
|
+
A(this, "get", /* @__PURE__ */ h((i, e) => {
|
|
1210
1210
|
var n;
|
|
1211
1211
|
const s = this.getValidData();
|
|
1212
1212
|
if (!s || s.length <= 0) return;
|
|
@@ -1219,10 +1219,10 @@ const O = class O {
|
|
|
1219
1219
|
}
|
|
1220
1220
|
return t(this, ft).call(this, s[i]);
|
|
1221
1221
|
}, "get"));
|
|
1222
|
-
A(this, "set", /* @__PURE__ */
|
|
1222
|
+
A(this, "set", /* @__PURE__ */ h((i) => {
|
|
1223
1223
|
this.clear(), this.add(i, !1), t(this, it).call(this);
|
|
1224
1224
|
}, "set"));
|
|
1225
|
-
d(this, Ct, /* @__PURE__ */
|
|
1225
|
+
d(this, Ct, /* @__PURE__ */ h(() => ({
|
|
1226
1226
|
rowState: O.ROW_STATE.EMPTY,
|
|
1227
1227
|
deleted: !1,
|
|
1228
1228
|
filtered: !1,
|
|
@@ -1231,14 +1231,14 @@ const O = class O {
|
|
|
1231
1231
|
c: {},
|
|
1232
1232
|
_: [0, 0, 0, 0, O.ROW_STATE.EMPTY, !1, !1, !0, !1, !0, !0, !1, t(this, Y).slice(), -1, {}, {}]
|
|
1233
1233
|
}), "#getDefaultMeta"));
|
|
1234
|
-
A(this, "reset", /* @__PURE__ */
|
|
1234
|
+
A(this, "reset", /* @__PURE__ */ h(() => {
|
|
1235
1235
|
y(this, W, []), y(this, dt, []), t(this, it).call(this);
|
|
1236
1236
|
}, "reset"));
|
|
1237
|
-
A(this, "clear", /* @__PURE__ */
|
|
1237
|
+
A(this, "clear", /* @__PURE__ */ h(() => {
|
|
1238
1238
|
var i;
|
|
1239
1239
|
t(this, k).rawRecords = [], y(this, W, []), y(this, dt, []), (i = t(this, k).viewRecords) != null && i.reset && t(this, k).viewRecords.reset();
|
|
1240
1240
|
}, "clear"));
|
|
1241
|
-
d(this, te, /* @__PURE__ */
|
|
1241
|
+
d(this, te, /* @__PURE__ */ h((i) => {
|
|
1242
1242
|
var r;
|
|
1243
1243
|
Array.isArray(i) || (i = [i]);
|
|
1244
1244
|
const e = typeof ((r = t(this, N).fields) == null ? void 0 : r.get) == "function" ? t(this, N).fields.get() : Object.keys(i[0] || {}), s = [];
|
|
@@ -1249,10 +1249,10 @@ const O = class O {
|
|
|
1249
1249
|
}), s.push(o);
|
|
1250
1250
|
}), s;
|
|
1251
1251
|
}, "#json2Array"));
|
|
1252
|
-
d(this, ee, /* @__PURE__ */
|
|
1252
|
+
d(this, ee, /* @__PURE__ */ h((i) => (Array.isArray(i) || (i = [i]), i.forEach((e) => {
|
|
1253
1253
|
e.__ng = t(this, Ct).call(this), e.__ng.rowid = this.nextId, e.__ng.rowState = O.ROW_STATE.INSERT, e.__ng._[0] = e.__ng.rowid;
|
|
1254
1254
|
}), i), "#defaultInsert"));
|
|
1255
|
-
A(this, "add", /* @__PURE__ */
|
|
1255
|
+
A(this, "add", /* @__PURE__ */ h((i, e = !0) => {
|
|
1256
1256
|
i === void 0 && (i = {});
|
|
1257
1257
|
const s = t(this, te).call(this, i);
|
|
1258
1258
|
t(this, k).rawRecords = t(this, k).rawRecords.concat(t(this, ee).call(this, s)), this.resetRecords();
|
|
@@ -1262,7 +1262,7 @@ const O = class O {
|
|
|
1262
1262
|
a && (a.__ng.rowState = O.ROW_STATE.EMPTY);
|
|
1263
1263
|
}), t(this, it).call(this), r;
|
|
1264
1264
|
}, "add"));
|
|
1265
|
-
A(this, "delete", /* @__PURE__ */
|
|
1265
|
+
A(this, "delete", /* @__PURE__ */ h((i) => {
|
|
1266
1266
|
let e = [];
|
|
1267
1267
|
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
1268
|
if (t(this, W)[s]) {
|
|
@@ -1273,36 +1273,36 @@ const O = class O {
|
|
|
1273
1273
|
}
|
|
1274
1274
|
}), this.resetRecords(), t(this, it).call(this);
|
|
1275
1275
|
}, "delete"));
|
|
1276
|
-
A(this, "setValue", /* @__PURE__ */
|
|
1277
|
-
var
|
|
1276
|
+
A(this, "setValue", /* @__PURE__ */ h((i, e, s) => {
|
|
1277
|
+
var c;
|
|
1278
1278
|
i = parseInt(i, 10);
|
|
1279
|
-
const n = (typeof ((
|
|
1279
|
+
const n = (typeof ((c = t(this, N).fields) == null ? void 0 : c.get) == "function" ? t(this, N).fields.get() : []).indexOf(e);
|
|
1280
1280
|
if (n < 0) return;
|
|
1281
1281
|
const o = this.getValidData()[i];
|
|
1282
1282
|
if (!o) return;
|
|
1283
1283
|
const a = o.v[n];
|
|
1284
1284
|
a !== s && o.__ng.rowState !== O.ROW_STATE.INSERT && (o.__ng.o.hasOwnProperty(e) || (o.__ng.o[e] = a), o.__ng.rowState = O.ROW_STATE.UPDATE), o.v[n] = s;
|
|
1285
1285
|
}, "setValue"));
|
|
1286
|
-
A(this, "resetRecords", /* @__PURE__ */
|
|
1286
|
+
A(this, "resetRecords", /* @__PURE__ */ h(() => {
|
|
1287
1287
|
y(this, dt, t(this, k).rawRecords.filter((i) => !i.__ng.deleted)), y(this, W, t(this, k).rawRecords.filter((i) => !i.__ng.deleted && !i.__ng.filtered)), t(this, k).rawRecords.forEach((i, e) => {
|
|
1288
1288
|
i.__ng.rowidx = e;
|
|
1289
1289
|
}), t(this, W).forEach((i, e) => {
|
|
1290
1290
|
i.__ng.i = e;
|
|
1291
1291
|
});
|
|
1292
1292
|
}, "resetRecords"));
|
|
1293
|
-
A(this, "getValidData", /* @__PURE__ */
|
|
1294
|
-
d(this, ft, /* @__PURE__ */
|
|
1293
|
+
A(this, "getValidData", /* @__PURE__ */ h(() => (t(this, W).length === 0 && t(this, k).rawRecords.length > 0 && this.resetRecords(), t(this, W)), "getValidData"));
|
|
1294
|
+
d(this, ft, /* @__PURE__ */ h((i) => {
|
|
1295
1295
|
var o;
|
|
1296
1296
|
if (!i) return i;
|
|
1297
1297
|
const e = !Array.isArray(i), s = e ? [i] : i, r = typeof ((o = t(this, N).fields) == null ? void 0 : o.get) == "function" ? t(this, N).fields.get() : [], n = s.filter((a) => !a.__ng.deleted).map((a) => {
|
|
1298
|
-
const
|
|
1298
|
+
const c = {};
|
|
1299
1299
|
return r.forEach((l, f) => {
|
|
1300
|
-
|
|
1301
|
-
}),
|
|
1300
|
+
c[l] = a.v ? a.v[f] : a[l];
|
|
1301
|
+
}), c.__ng = a.__ng, c;
|
|
1302
1302
|
});
|
|
1303
1303
|
return e ? n[0] : n;
|
|
1304
1304
|
}, "#conv"));
|
|
1305
|
-
A(this, "count", /* @__PURE__ */
|
|
1305
|
+
A(this, "count", /* @__PURE__ */ h(() => this.getValidData().length, "count"));
|
|
1306
1306
|
y(this, N, i), y(this, k, e), t(this, Qt).call(this);
|
|
1307
1307
|
}
|
|
1308
1308
|
get source() {
|
|
@@ -1324,7 +1324,7 @@ const O = class O {
|
|
|
1324
1324
|
return this.length;
|
|
1325
1325
|
}
|
|
1326
1326
|
};
|
|
1327
|
-
N = new WeakMap(), k = new WeakMap(), W = new WeakMap(), dt = new WeakMap(), Jt = new WeakMap(), Y = new WeakMap(), Qt = new WeakMap(), it = new WeakMap(), Ct = new WeakMap(), te = new WeakMap(), ee = new WeakMap(), ft = new WeakMap(),
|
|
1327
|
+
N = new WeakMap(), k = new WeakMap(), W = new WeakMap(), dt = new WeakMap(), Jt = new WeakMap(), Y = new WeakMap(), Qt = new WeakMap(), it = new WeakMap(), Ct = new WeakMap(), te = new WeakMap(), ee = new WeakMap(), ft = new WeakMap(), h(O, "ngData"), // 🎯 행 상태 정의 상수를 클래스 내부로 내재화
|
|
1328
1328
|
A(O, "ROW_STATE", {
|
|
1329
1329
|
EMPTY: "EMPTY",
|
|
1330
1330
|
NORMAL: "NORMAL",
|
|
@@ -1354,7 +1354,7 @@ const Oe = class Oe {
|
|
|
1354
1354
|
}, this.setDataSource([]);
|
|
1355
1355
|
}
|
|
1356
1356
|
};
|
|
1357
|
-
rt = new WeakMap(),
|
|
1357
|
+
rt = new WeakMap(), h(Oe, "ngDataManager");
|
|
1358
1358
|
let be = Oe;
|
|
1359
1359
|
var ut, L, Lt, se;
|
|
1360
1360
|
const ze = class ze {
|
|
@@ -1362,18 +1362,18 @@ const ze = class ze {
|
|
|
1362
1362
|
constructor(i) {
|
|
1363
1363
|
d(this, ut);
|
|
1364
1364
|
d(this, L, []);
|
|
1365
|
-
A(this, "add", /* @__PURE__ */
|
|
1365
|
+
A(this, "add", /* @__PURE__ */ h((i, e = "string") => {
|
|
1366
1366
|
i.forEach((s) => {
|
|
1367
1367
|
t(this, L).some((r) => r.name === s) || t(this, L).push({ name: s, type: e });
|
|
1368
1368
|
}), t(this, Lt).call(this);
|
|
1369
1369
|
}, "add"));
|
|
1370
|
-
d(this, Lt, /* @__PURE__ */
|
|
1370
|
+
d(this, Lt, /* @__PURE__ */ h(() => {
|
|
1371
1371
|
const i = /* @__PURE__ */ new Map();
|
|
1372
1372
|
t(this, L).forEach((e) => {
|
|
1373
1373
|
i.set(e.name, e.type);
|
|
1374
1374
|
}), 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
1375
|
}, "#adjust"));
|
|
1376
|
-
d(this, se, /* @__PURE__ */
|
|
1376
|
+
d(this, se, /* @__PURE__ */ h(() => {
|
|
1377
1377
|
y(this, L, []), H.log(t(this, ut).querySelectorAll("table"));
|
|
1378
1378
|
const i = Array.from(t(this, ut).querySelectorAll("table"));
|
|
1379
1379
|
if (!(!i || i.length === 0)) {
|
|
@@ -1395,9 +1395,9 @@ const ze = class ze {
|
|
|
1395
1395
|
}
|
|
1396
1396
|
o.split("data.").forEach((a) => {
|
|
1397
1397
|
if (a.trim() != "") {
|
|
1398
|
-
const
|
|
1398
|
+
const c = a.search(/[^_A-Za-z0-9]/g);
|
|
1399
1399
|
let l = "";
|
|
1400
|
-
|
|
1400
|
+
c >= 0 ? l = a.substring(0, c) : o.startsWith("data.") && (l = a.replace("data.", "")), l && t(this, L).push({ name: l, type: "string" });
|
|
1401
1401
|
}
|
|
1402
1402
|
});
|
|
1403
1403
|
});
|
|
@@ -1427,7 +1427,7 @@ const ze = class ze {
|
|
|
1427
1427
|
return t(this, L).some((e) => e.name === i);
|
|
1428
1428
|
}
|
|
1429
1429
|
};
|
|
1430
|
-
ut = new WeakMap(), L = new WeakMap(), Lt = new WeakMap(), se = new WeakMap(),
|
|
1430
|
+
ut = new WeakMap(), L = new WeakMap(), Lt = new WeakMap(), se = new WeakMap(), h(ze, "ngFields");
|
|
1431
1431
|
let ye = ze;
|
|
1432
1432
|
var nt, ie, re;
|
|
1433
1433
|
const Be = class Be extends HTMLElement {
|
|
@@ -1436,7 +1436,7 @@ const Be = class Be extends HTMLElement {
|
|
|
1436
1436
|
//#created = false;
|
|
1437
1437
|
d(this, nt);
|
|
1438
1438
|
d(this, ie);
|
|
1439
|
-
d(this, re, /* @__PURE__ */
|
|
1439
|
+
d(this, re, /* @__PURE__ */ h(() => {
|
|
1440
1440
|
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
1441
|
}, "#init"));
|
|
1442
1442
|
this.attachShadow({ mode: "open" }), y(this, nt, new be(this));
|
|
@@ -1460,7 +1460,7 @@ const Be = class Be extends HTMLElement {
|
|
|
1460
1460
|
return t(this, nt);
|
|
1461
1461
|
}
|
|
1462
1462
|
};
|
|
1463
|
-
nt = new WeakMap(), ie = new WeakMap(), re = new WeakMap(),
|
|
1463
|
+
nt = new WeakMap(), ie = new WeakMap(), re = new WeakMap(), h(Be, "NineTable");
|
|
1464
1464
|
let pe = Be;
|
|
1465
1465
|
customElements.get("nine-table") || customElements.define("nine-table", pe);
|
|
1466
1466
|
const mt = class mt extends HTMLElement {
|
|
@@ -1474,7 +1474,7 @@ const mt = class mt extends HTMLElement {
|
|
|
1474
1474
|
connectedCallback() {
|
|
1475
1475
|
}
|
|
1476
1476
|
};
|
|
1477
|
-
|
|
1477
|
+
h(mt, "BasicCellElement"), A(mt, "_styleCache", /* @__PURE__ */ new Map()), A(mt, "_customStyleCache", /* @__PURE__ */ new Map());
|
|
1478
1478
|
let me = mt;
|
|
1479
1479
|
var C, Ht, p, qe, Re, Te, ke, Ce;
|
|
1480
1480
|
const De = class De extends me {
|
|
@@ -1487,7 +1487,7 @@ const De = class De extends me {
|
|
|
1487
1487
|
d(this, Re);
|
|
1488
1488
|
d(this, Te);
|
|
1489
1489
|
d(this, ke);
|
|
1490
|
-
A(this, "getDisplayText", /* @__PURE__ */
|
|
1490
|
+
A(this, "getDisplayText", /* @__PURE__ */ h((e) => {
|
|
1491
1491
|
if (t(this, p))
|
|
1492
1492
|
if (t(this, p).closest("tbody")) {
|
|
1493
1493
|
const s = t(this, p).closest("tr").data, r = parseInt(t(this, p).dataset.row);
|
|
@@ -1507,7 +1507,7 @@ const De = class De extends me {
|
|
|
1507
1507
|
} catch {
|
|
1508
1508
|
}
|
|
1509
1509
|
}, "getDisplayText"));
|
|
1510
|
-
d(this, Ce, /* @__PURE__ */
|
|
1510
|
+
d(this, Ce, /* @__PURE__ */ h(() => {
|
|
1511
1511
|
if (!(!t(this, C) || !t(this, C).template || !t(this, p).closest("tbody.bindable"))) {
|
|
1512
1512
|
var e = ninegrid.j.querySelectorAll(t(this, p)).attr("suppress");
|
|
1513
1513
|
if (e && (e = parseInt(e)), e && !isNaN(e)) {
|
|
@@ -1520,10 +1520,10 @@ const De = class De extends me {
|
|
|
1520
1520
|
if (parseInt(s.sectionRowIndex / t(this, C).template.length) > 0)
|
|
1521
1521
|
for (var o of r) {
|
|
1522
1522
|
if (o > e) break;
|
|
1523
|
-
var a = parseInt(t(this, p).dataset.row),
|
|
1523
|
+
var a = parseInt(t(this, p).dataset.row), c = a - 1, l = t(this, p).closest("tr").data, f = t(this, C).data.get(c);
|
|
1524
1524
|
t(this, p).dataset.matrixRow;
|
|
1525
|
-
var
|
|
1526
|
-
if (b !=
|
|
1525
|
+
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, c) : f[g.dataset.bind];
|
|
1526
|
+
if (b != u) {
|
|
1527
1527
|
n = !0;
|
|
1528
1528
|
break;
|
|
1529
1529
|
}
|
|
@@ -1531,12 +1531,12 @@ const De = class De extends me {
|
|
|
1531
1531
|
else
|
|
1532
1532
|
n = !0;
|
|
1533
1533
|
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 m = parseInt(t(this, p).dataset.matrixRow),
|
|
1534
|
+
var m = parseInt(t(this, p).dataset.matrixRow), S = m - 1, E = t(this, C).body.querySelector(`tbody.bindable [data-col="${t(this, p).dataset.col}"][data-matrix-row="${S}"]`);
|
|
1535
1535
|
$(E).hasClass("suppress") && !ninegrid.j.querySelectorAll(t(this, p)).hasClass("suppress") ? ninegrid.j.querySelectorAll(E).removeClass("last-none-suppress").addClass("last-suppress") : !$(E).hasClass("suppress") && ninegrid.j.querySelectorAll(t(this, p)).hasClass("suppress") ? ninegrid.j.querySelectorAll(E).removeClass("last-suppress").addClass("last-none-suppress") : ninegrid.j.querySelectorAll(E).removeClass("last-none-suppress").removeClass("last-suppress");
|
|
1536
1536
|
}
|
|
1537
1537
|
}
|
|
1538
1538
|
}, "#resetSuppress"));
|
|
1539
|
-
A(this, "getExprValue", /* @__PURE__ */
|
|
1539
|
+
A(this, "getExprValue", /* @__PURE__ */ h((e, s, r, n) => {
|
|
1540
1540
|
if (typeof e < "u")
|
|
1541
1541
|
try {
|
|
1542
1542
|
r = parseInt(r);
|
|
@@ -1572,7 +1572,7 @@ const De = class De extends me {
|
|
|
1572
1572
|
return parseInt(t(this, p).dataset.row), t(this, Ht).data[e];
|
|
1573
1573
|
}
|
|
1574
1574
|
};
|
|
1575
|
-
C = new WeakMap(), Ht = new WeakMap(), p = new WeakMap(), qe = new WeakMap(), Re = new WeakMap(), Te = new WeakMap(), ke = new WeakMap(), Ce = new WeakMap(),
|
|
1575
|
+
C = new WeakMap(), Ht = new WeakMap(), p = new WeakMap(), qe = new WeakMap(), Re = new WeakMap(), Te = new WeakMap(), ke = new WeakMap(), Ce = new WeakMap(), h(De, "CellElement");
|
|
1576
1576
|
let ve = De;
|
|
1577
1577
|
const Pe = class Pe extends ve {
|
|
1578
1578
|
constructor() {
|
|
@@ -1585,7 +1585,7 @@ const Pe = class Pe extends ve {
|
|
|
1585
1585
|
return super.refresh();
|
|
1586
1586
|
}
|
|
1587
1587
|
};
|
|
1588
|
-
|
|
1588
|
+
h(Pe, "EditableCellElement");
|
|
1589
1589
|
let xe = Pe;
|
|
1590
1590
|
var Mt, ot, gt, bt, ne, U, Le;
|
|
1591
1591
|
const je = class je extends xe {
|
|
@@ -1597,7 +1597,7 @@ const je = class je extends xe {
|
|
|
1597
1597
|
d(this, bt);
|
|
1598
1598
|
d(this, ne);
|
|
1599
1599
|
d(this, U);
|
|
1600
|
-
A(this, "refresh", /* @__PURE__ */
|
|
1600
|
+
A(this, "refresh", /* @__PURE__ */ h(() => {
|
|
1601
1601
|
const e = super.refresh();
|
|
1602
1602
|
t(this, Mt).value = e;
|
|
1603
1603
|
}, "refresh"));
|
|
@@ -1631,7 +1631,7 @@ const je = class je extends xe {
|
|
|
1631
1631
|
if (!v) this.reset();
|
|
1632
1632
|
};
|
|
1633
1633
|
*/
|
|
1634
|
-
d(this, Le, /* @__PURE__ */
|
|
1634
|
+
d(this, Le, /* @__PURE__ */ h((e) => {
|
|
1635
1635
|
if (!["Escape", "Enter", "Tab", "Home", "End", "ArrowLeft", "ArrowRight", "PageUp", "PageDown", "Backspace", "Delete"].includes(e.code)) {
|
|
1636
1636
|
if (t(this, ot) == "number") {
|
|
1637
1637
|
let n = [];
|
|
@@ -1659,7 +1659,7 @@ const je = class je extends xe {
|
|
|
1659
1659
|
`, super.connectedCallback(), y(this, Mt, this.querySelector("input"));
|
|
1660
1660
|
}
|
|
1661
1661
|
};
|
|
1662
|
-
Mt = new WeakMap(), ot = new WeakMap(), gt = new WeakMap(), bt = new WeakMap(), ne = new WeakMap(), U = new WeakMap(), Le = new WeakMap(),
|
|
1662
|
+
Mt = new WeakMap(), ot = new WeakMap(), gt = new WeakMap(), bt = new WeakMap(), ne = new WeakMap(), U = new WeakMap(), Le = new WeakMap(), h(je, "CellInputText");
|
|
1663
1663
|
let we = je;
|
|
1664
1664
|
customElements.get("cell-input-text");
|
|
1665
1665
|
customElements.get("cell-input") || customElements.define("cell-input", we);
|