@ninebone/table 0.0.643 → 0.0.645
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 +386 -384
- 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
|
|
6
|
-
var
|
|
7
|
-
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
|
+
var c = (q, i) => Fe(q, "name", { value: i, configurable: !0 });
|
|
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,38 +14,38 @@ 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
|
}
|
|
22
22
|
};
|
|
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,
|
|
32
|
-
d(this,
|
|
33
|
-
d(this, X);
|
|
31
|
+
d(this, F, !1);
|
|
32
|
+
d(this, w);
|
|
34
33
|
d(this, K);
|
|
35
34
|
d(this, Z);
|
|
36
|
-
d(this,
|
|
35
|
+
d(this, G);
|
|
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,
|
|
45
|
-
const e = t(this,
|
|
43
|
+
E(this, "refresh", /* @__PURE__ */ c(() => {
|
|
44
|
+
if (!t(this, B) || !t(this, w) || t(this, F)) return;
|
|
45
|
+
const e = t(this, w).container, s = e.querySelector("table");
|
|
46
46
|
if (!s) return;
|
|
47
|
-
const r = t(this,
|
|
48
|
-
if (a !== 0 &&
|
|
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;
|
|
48
|
+
if (a !== 0 && h > a)
|
|
49
49
|
o && (o.style.display = "flex");
|
|
50
50
|
else {
|
|
51
51
|
o && (o.style.display = "none");
|
|
@@ -53,59 +53,59 @@ 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 / h), l), 20);
|
|
57
57
|
n.style.width = `${f}px`;
|
|
58
|
-
const g = e.scrollLeft, b =
|
|
58
|
+
const g = e.scrollLeft, b = h - a;
|
|
59
59
|
let u = 0;
|
|
60
60
|
b > 0 && (u = parseInt(g / b * (l - f), 10)), u < 0 && (u = 0);
|
|
61
|
-
const
|
|
62
|
-
u >
|
|
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,
|
|
65
|
-
if (!t(this,
|
|
66
|
-
const s = t(this,
|
|
64
|
+
d(this, J, /* @__PURE__ */ c((e) => {
|
|
65
|
+
if (!t(this, w)) return !1;
|
|
66
|
+
const s = t(this, w).container, r = s.querySelector("table");
|
|
67
67
|
if (!r) return !1;
|
|
68
|
-
const n = t(this,
|
|
68
|
+
const n = t(this, w).track.getBoundingClientRect(), o = t(this, w).thumb.clientWidth;
|
|
69
69
|
let a = e;
|
|
70
70
|
a < 0 && (a = 0);
|
|
71
|
-
const
|
|
72
|
-
a >
|
|
71
|
+
const h = n.width - o;
|
|
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
73
|
const l = s.clientWidth, g = r.scrollWidth - l;
|
|
74
|
-
return
|
|
74
|
+
return h > 0 && g > 0 && (s.scrollLeft = a / h * g), a > 0 && a < h - 1;
|
|
75
75
|
}, "#thumbMoveTo"));
|
|
76
|
-
d(this, _t, /* @__PURE__ */
|
|
77
|
-
const e = /* @__PURE__ */
|
|
78
|
-
clearInterval(t(this,
|
|
79
|
-
const n = parseInt(t(this,
|
|
80
|
-
t(this,
|
|
81
|
-
clearInterval(t(this,
|
|
82
|
-
const o = parseInt(t(this,
|
|
83
|
-
t(this,
|
|
76
|
+
d(this, _t, /* @__PURE__ */ c(() => {
|
|
77
|
+
const e = /* @__PURE__ */ c((r) => {
|
|
78
|
+
clearInterval(t(this, K)), clearInterval(t(this, Z));
|
|
79
|
+
const n = parseInt(t(this, w).thumb.style.left || 0, 10);
|
|
80
|
+
t(this, J).call(this, n + r), y(this, K, setInterval(() => {
|
|
81
|
+
clearInterval(t(this, K)), y(this, Z, setInterval(() => {
|
|
82
|
+
const o = parseInt(t(this, w).thumb.style.left || 0, 10);
|
|
83
|
+
t(this, J).call(this, o + r) || clearInterval(t(this, Z));
|
|
84
84
|
}, 50));
|
|
85
85
|
}, 500));
|
|
86
|
-
}, "delayScroll"), s = /* @__PURE__ */
|
|
87
|
-
clearInterval(t(this,
|
|
86
|
+
}, "delayScroll"), s = /* @__PURE__ */ c(() => {
|
|
87
|
+
clearInterval(t(this, K)), clearInterval(t(this, Z));
|
|
88
88
|
}, "clearTimer");
|
|
89
89
|
["mouseup", "mouseleave", "touchend"].forEach((r) => {
|
|
90
|
-
t(this,
|
|
91
|
-
}), t(this,
|
|
90
|
+
t(this, w).left.addEventListener(r, s), t(this, w).right.addEventListener(r, s), t(this, w).track.addEventListener(r, s);
|
|
91
|
+
}), t(this, w).left.addEventListener("mousedown", (r) => {
|
|
92
92
|
r.button === 0 && e(-20);
|
|
93
|
-
}), t(this,
|
|
93
|
+
}), t(this, w).right.addEventListener("mousedown", (r) => {
|
|
94
94
|
r.button === 0 && e(20);
|
|
95
|
-
}), t(this,
|
|
95
|
+
}), t(this, w).left.addEventListener("touchstart", () => e(-20)), t(this, w).right.addEventListener("touchstart", () => e(20)), t(this, w).track.addEventListener("mousedown", (r) => {
|
|
96
96
|
if (r.button !== 0) return;
|
|
97
97
|
r.preventDefault();
|
|
98
|
-
const n = t(this,
|
|
99
|
-
t(this,
|
|
100
|
-
}), t(this,
|
|
98
|
+
const n = t(this, w).track.getBoundingClientRect(), o = t(this, w).thumb.clientWidth;
|
|
99
|
+
t(this, J).call(this, r.clientX - n.left - o / 2);
|
|
100
|
+
}), t(this, w).thumb.addEventListener("mousedown", (r) => {
|
|
101
101
|
if (r.button !== 0) return;
|
|
102
|
-
r.stopPropagation(), r.preventDefault(), y(this,
|
|
103
|
-
const n = /* @__PURE__ */
|
|
104
|
-
if (!t(this,
|
|
105
|
-
const
|
|
106
|
-
t(this,
|
|
107
|
-
}, "onMouseMove"), o = /* @__PURE__ */
|
|
108
|
-
y(this,
|
|
102
|
+
r.stopPropagation(), r.preventDefault(), y(this, F, !0), this.shiftX = r.clientX - t(this, w).thumb.getBoundingClientRect().left;
|
|
103
|
+
const n = /* @__PURE__ */ c((a) => {
|
|
104
|
+
if (!t(this, F)) return;
|
|
105
|
+
const h = t(this, w).track.getBoundingClientRect();
|
|
106
|
+
t(this, J).call(this, a.clientX - h.left - this.shiftX);
|
|
107
|
+
}, "onMouseMove"), o = /* @__PURE__ */ c(() => {
|
|
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
|
});
|
|
@@ -176,82 +176,82 @@ 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__ */ c(() => {
|
|
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, w, {
|
|
186
186
|
container: s,
|
|
187
187
|
track: this.querySelector(".ng-scroll-track"),
|
|
188
188
|
thumb: this.querySelector(".ng-scroll-thumb"),
|
|
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, o = t(this,
|
|
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
222
|
const l = s.clientHeight;
|
|
223
223
|
if (l <= 0) return;
|
|
224
|
-
const f = Math.max(Math.min(l * (n /
|
|
224
|
+
const f = Math.max(Math.min(l * (n / h), l), 20);
|
|
225
225
|
r.style.height = `${f}px`;
|
|
226
|
-
const g = e.scrollTop, b = Math.max(
|
|
226
|
+
const g = e.scrollTop, b = Math.max(h - n, 1);
|
|
227
227
|
let u = 0;
|
|
228
228
|
b > 0 && (u = g / b * (l - f));
|
|
229
|
-
const
|
|
230
|
-
u < 0 && (u = 0), u >
|
|
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
|
-
d(this, Nt, /* @__PURE__ */
|
|
232
|
+
d(this, Nt, /* @__PURE__ */ c(() => {
|
|
233
233
|
H.log("nine-table-vscrollbar.#init");
|
|
234
|
-
const e = t(this, T).container, s = /* @__PURE__ */
|
|
235
|
-
const n = (t(this,
|
|
234
|
+
const e = t(this, T).container, s = /* @__PURE__ */ c(() => {
|
|
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,
|
|
243
|
-
const n = /* @__PURE__ */
|
|
244
|
-
if (!t(this,
|
|
245
|
-
const
|
|
246
|
-
if (g > 0 &&
|
|
247
|
-
const
|
|
248
|
-
let
|
|
249
|
-
const
|
|
250
|
-
|
|
242
|
+
r.stopPropagation(), r.preventDefault(), y(this, Q, !0), y(this, vt, r.clientY), y(this, xt, e.scrollTop);
|
|
243
|
+
const n = /* @__PURE__ */ c((a) => {
|
|
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
|
-
}, "onMouseMove"), o = /* @__PURE__ */
|
|
254
|
-
y(this,
|
|
253
|
+
}, "onMouseMove"), o = /* @__PURE__ */ c(() => {
|
|
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) => {
|
|
@@ -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;
|
|
@@ -334,8 +334,8 @@ 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__ */
|
|
338
|
-
const s = t(this,
|
|
337
|
+
const e = /* @__PURE__ */ c(() => {
|
|
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,62 +351,62 @@ 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,
|
|
361
|
-
d(this,
|
|
362
|
-
d(this,
|
|
360
|
+
d(this, j);
|
|
361
|
+
d(this, S);
|
|
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
|
-
const i = t(this,
|
|
376
|
-
i && (t(this, St).call(this), t(this,
|
|
375
|
+
const i = t(this, S).querySelector(".ng-container-body .ng-part-body");
|
|
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,
|
|
380
|
-
scrollTables: t(this,
|
|
381
|
-
firstTr: t(this,
|
|
382
|
-
}), y(this,
|
|
383
|
-
const a = t(this,
|
|
378
|
+
E(this, "initialize", /* @__PURE__ */ c(() => {
|
|
379
|
+
H.log("rowManager.initialize"), y(this, tt, {
|
|
380
|
+
scrollTables: t(this, S).querySelectorAll(".ng-part-body table"),
|
|
381
|
+
firstTr: t(this, S).querySelector(".ng-container-body .ng-part-body tbody.bindable-tbody tr:not(.nodata)")
|
|
382
|
+
}), y(this, I, null), t(this, D).clear(), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((o) => {
|
|
383
|
+
const a = t(this, S).querySelector(o);
|
|
384
384
|
if (!a) return;
|
|
385
|
-
const
|
|
386
|
-
if (!
|
|
387
|
-
const l =
|
|
385
|
+
const h = a.querySelector(".ng-part-body table");
|
|
386
|
+
if (!h) return;
|
|
387
|
+
const l = h.querySelector("tbody.bindable-tbody");
|
|
388
388
|
if (!l) return;
|
|
389
389
|
const g = Array.from(l.querySelectorAll("tr")).map((b) => b.cloneNode(!0));
|
|
390
390
|
t(this, D).set(o, g);
|
|
391
391
|
});
|
|
392
|
-
const i = t(this,
|
|
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
|
-
const a = /* @__PURE__ */
|
|
396
|
+
const a = /* @__PURE__ */ c((h) => {
|
|
397
397
|
if (o) return;
|
|
398
398
|
o = !0;
|
|
399
|
-
const l =
|
|
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,
|
|
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, ct).call(this, l), o = !1;
|
|
401
401
|
}, "handleContainerScroll");
|
|
402
|
-
[i, e, s].forEach((
|
|
403
|
-
|
|
404
|
-
a(
|
|
402
|
+
[i, e, s].forEach((h) => {
|
|
403
|
+
h && h.addEventListener("scroll", () => {
|
|
404
|
+
a(h);
|
|
405
405
|
}, { passive: !0 });
|
|
406
406
|
});
|
|
407
407
|
}
|
|
408
408
|
}, "initialize"));
|
|
409
|
-
d(this, Ot, /* @__PURE__ */
|
|
409
|
+
d(this, Ot, /* @__PURE__ */ c((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,14 +415,14 @@ 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((h) => {
|
|
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
|
-
d(this, zt, /* @__PURE__ */
|
|
424
|
-
if (H.log("rowManager.#measureAndCacheHeight"), t(this,
|
|
425
|
-
return t(this,
|
|
423
|
+
d(this, zt, /* @__PURE__ */ c((i) => {
|
|
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");
|
|
@@ -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, 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
439
|
const g = s.querySelectorAll("tr");
|
|
440
440
|
if (g.forEach((b) => {
|
|
441
441
|
let u = b.offsetHeight || b.getBoundingClientRect().height;
|
|
442
442
|
if (u === 0) {
|
|
443
|
-
const
|
|
444
|
-
u = parseFloat(
|
|
443
|
+
const v = window.getComputedStyle(b);
|
|
444
|
+
u = parseFloat(v.height) || parseFloat(v.minHeight) || 0;
|
|
445
445
|
}
|
|
446
446
|
f += u;
|
|
447
|
-
}), g.forEach((b) => b.remove()), o.style.display = a, o.style.visibility =
|
|
448
|
-
return y(this,
|
|
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
|
-
d(this, St, /* @__PURE__ */
|
|
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
|
-
const o = t(this,
|
|
454
|
+
const o = t(this, S).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__ */
|
|
461
|
-
if (t(this,
|
|
462
|
-
const i = Math.ceil(t(this,
|
|
460
|
+
d(this, Et, /* @__PURE__ */ c(() => {
|
|
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
|
-
d(this, Bt, /* @__PURE__ */
|
|
467
|
-
var a,
|
|
468
|
-
const i = t(this,
|
|
466
|
+
d(this, Bt, /* @__PURE__ */ c(() => {
|
|
467
|
+
var a, h, l, f, g, b;
|
|
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 u = i ? Array.from(i.querySelectorAll("tbody tr")) : [],
|
|
471
|
-
for (let
|
|
472
|
-
const
|
|
473
|
-
((a = u[
|
|
474
|
-
((
|
|
475
|
-
((l =
|
|
476
|
-
], R = Math.max(...
|
|
477
|
-
R > 0 && (u[
|
|
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
|
-
const r = t(this,
|
|
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 u = r ? Array.from(r.querySelectorAll("tfoot tr")) : [],
|
|
483
|
-
for (let
|
|
484
|
-
const
|
|
485
|
-
((f = u[
|
|
486
|
-
((g = m
|
|
487
|
-
((b =
|
|
488
|
-
], R = Math.max(...
|
|
489
|
-
R > 0 && (u[
|
|
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
|
-
d(this, Dt, /* @__PURE__ */
|
|
494
|
-
!t(this,
|
|
493
|
+
d(this, Dt, /* @__PURE__ */ c(() => {
|
|
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;
|
|
@@ -500,61 +500,63 @@ 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,
|
|
503
|
+
const h = Math.max(r - n, 100);
|
|
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
|
-
d(this, At, /* @__PURE__ */
|
|
509
|
+
d(this, At, /* @__PURE__ */ c(() => {
|
|
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, S).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__ */ c((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, S).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,
|
|
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
523
|
n.forEach((f, g) => {
|
|
524
524
|
const b = i + Math.floor(g / o);
|
|
525
|
-
if (b >=
|
|
525
|
+
if (b >= h) {
|
|
526
526
|
f.style.visibility = "hidden";
|
|
527
527
|
return;
|
|
528
528
|
}
|
|
529
|
-
const u = t(this,
|
|
529
|
+
const u = t(this, j).data.get(b);
|
|
530
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
|
|
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), o = Math.min(n, Math.max(0, Math.floor(i / e)));
|
|
541
|
+
let 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)), 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"));
|
|
@@ -572,42 +574,42 @@ const Ie = class Ie {
|
|
|
572
574
|
cell.dataset.row = dataIndex;
|
|
573
575
|
});
|
|
574
576
|
}; */
|
|
575
|
-
d(this, qt, /* @__PURE__ */
|
|
577
|
+
d(this, qt, /* @__PURE__ */ c((i, e, s) => {
|
|
576
578
|
i.dataset.row = s, i.data = e, Array.from(i.cells).forEach((r, n) => {
|
|
577
579
|
r.dataset.row = s;
|
|
578
580
|
const o = Array.from(r.children).find((a) => a.tagName.toLowerCase().startsWith("cell-") || typeof a.refresh == "function");
|
|
579
581
|
o && typeof o.refresh == "function" && o.refresh();
|
|
580
582
|
});
|
|
581
583
|
}, "#bindRowData"));
|
|
582
|
-
d(this, Pt, /* @__PURE__ */
|
|
583
|
-
var
|
|
584
|
+
d(this, Pt, /* @__PURE__ */ c(() => {
|
|
585
|
+
var h, l, f;
|
|
584
586
|
H.log("rowManager.#syncHeaderHeights");
|
|
585
|
-
const i = t(this,
|
|
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
590
|
for (let g = 0; g < a; g++) {
|
|
589
591
|
const b = [
|
|
590
|
-
((
|
|
592
|
+
((h = r[g]) == null ? void 0 : h.getBoundingClientRect().height) || 0,
|
|
591
593
|
((l = n[g]) == null ? void 0 : l.getBoundingClientRect().height) || 0,
|
|
592
594
|
((f = o[g]) == null ? void 0 : f.getBoundingClientRect().height) || 0
|
|
593
595
|
], u = Math.max(...b);
|
|
594
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
|
/**
|
|
@@ -621,18 +623,18 @@ const jt = class jt {
|
|
|
621
623
|
*/
|
|
622
624
|
static compile(i) {
|
|
623
625
|
if (!i) return null;
|
|
624
|
-
const e = /* @__PURE__ */
|
|
626
|
+
const e = /* @__PURE__ */ c((a) => {
|
|
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
630
|
let g = `cell-${f}`;
|
|
629
|
-
const b = l.getAttribute("data-bind"), u = l.getAttribute("data-expr"),
|
|
630
|
-
let
|
|
631
|
-
b &&
|
|
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
|
-
}, "processCellTypes"), s = /* @__PURE__ */
|
|
635
|
+
}, "processCellTypes"), s = /* @__PURE__ */ c((a) => {
|
|
634
636
|
if (!a.querySelector("colgroup")) {
|
|
635
|
-
const
|
|
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
639
|
const u = document.createElement("col");
|
|
638
640
|
u.setAttribute("width", g), f.appendChild(u);
|
|
@@ -640,75 +642,75 @@ const jt = class jt {
|
|
|
640
642
|
a.prepend(f);
|
|
641
643
|
}
|
|
642
644
|
if (!a.querySelector("thead")) {
|
|
643
|
-
const
|
|
644
|
-
l ? l.after(
|
|
645
|
+
const h = document.createElement("thead"), l = a.querySelector("colgroup");
|
|
646
|
+
l ? l.after(h) : a.prepend(h);
|
|
645
647
|
}
|
|
646
648
|
a.classList.add("nine-table-element");
|
|
647
|
-
}, "ensureTableStructure"), r = /* @__PURE__ */
|
|
648
|
-
const l = Array.from(a.querySelectorAll(
|
|
649
|
+
}, "ensureTableStructure"), r = /* @__PURE__ */ c((a, h) => {
|
|
650
|
+
const l = Array.from(a.querySelectorAll(h + " tr")), f = Array.from(a.querySelectorAll(h + " th," + h + " td")), g = l.length;
|
|
649
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
656
|
const u = Array.from(Array(g), () => Array(b).fill(null));
|
|
655
|
-
l.forEach((
|
|
656
|
-
const
|
|
657
|
-
let
|
|
658
|
-
Array.from(
|
|
659
|
-
for (let
|
|
660
|
-
if (u[
|
|
661
|
-
|
|
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
|
-
|
|
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
|
|
671
|
-
Array.from(
|
|
672
|
-
for (let
|
|
673
|
-
if (u[
|
|
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
|
});
|
|
678
680
|
});
|
|
679
681
|
}, "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,
|
|
682
|
+
return s(n), e(n), r(n, "thead"), r(n, "tbody"), r(n, "tfoot"), Array.from(n.querySelectorAll("colgroup col")).forEach((a, h) => {
|
|
681
683
|
const l = a.getAttribute("fixed");
|
|
682
|
-
l && n.querySelectorAll(`thead [data-col="${
|
|
684
|
+
l && n.querySelectorAll(`thead [data-col="${h}"], tbody [data-col="${h}"], tfoot [data-col="${h}"]`).forEach((f) => {
|
|
683
685
|
f.setAttribute("fixed", l);
|
|
684
686
|
});
|
|
685
687
|
}), n;
|
|
686
688
|
}
|
|
687
689
|
// 🎯 [추가] td/th에 선언된 cell-type 속성을 읽어 커스텀 태그로 자동 감싸기
|
|
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
|
-
d(this, Vt, /* @__PURE__ */
|
|
703
|
+
d(this, Vt, /* @__PURE__ */ c(() => {
|
|
702
704
|
[
|
|
703
705
|
{ selector: ".ng-container-body", type: null },
|
|
704
706
|
{ selector: ".ng-container-left", type: "left" },
|
|
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
|
-
d(this, Yt, /* @__PURE__ */
|
|
713
|
+
d(this, Yt, /* @__PURE__ */ c(() => {
|
|
712
714
|
["left", "right", "body"].forEach((e) => {
|
|
713
715
|
const s = this.querySelector(`.ng-container-${e}`), r = s == null ? void 0 : s.querySelectorAll("table");
|
|
714
716
|
if (!s || !r || r.length === 0) return;
|
|
@@ -719,23 +721,23 @@ 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,
|
|
732
|
-
const n = e.cloneNode(!0), o = n.querySelector("thead"), a = n.querySelector("tbody"),
|
|
733
|
+
d(this, ht, /* @__PURE__ */ c((e, s, r) => {
|
|
734
|
+
const n = e.cloneNode(!0), o = n.querySelector("thead"), a = n.querySelector("tbody"), h = n.querySelector("tfoot");
|
|
733
735
|
if (r === "header") {
|
|
734
|
-
if (a && a.remove(),
|
|
736
|
+
if (a && a.remove(), h && h.remove(), e.querySelector("tbody")) {
|
|
735
737
|
const f = document.createElement("tbody");
|
|
736
738
|
f.className = "fixed-tbody", n.appendChild(f);
|
|
737
739
|
}
|
|
738
|
-
} else r === "body" ? (o && o.remove(),
|
|
740
|
+
} else r === "body" ? (o && o.remove(), h && h.remove(), a && (a.className = "bindable-tbody")) : r === "footer" && (o && o.remove(), a && a.remove());
|
|
739
741
|
return s === "left" ? n.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
|
|
740
742
|
l.getAttribute("fixed") !== "left" && l.remove();
|
|
741
743
|
}) : s === "right" ? n.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
|
|
@@ -744,19 +746,19 @@ 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"));
|
|
756
|
-
d(this, Ut, /* @__PURE__ */
|
|
758
|
+
d(this, Ut, /* @__PURE__ */ c(() => {
|
|
757
759
|
t(this, Xt).call(this);
|
|
758
760
|
}, "#init"));
|
|
759
|
-
d(this, Xt, /* @__PURE__ */
|
|
761
|
+
d(this, Xt, /* @__PURE__ */ c(() => {
|
|
760
762
|
const e = pt.SCROLLBAR_SIZE;
|
|
761
763
|
this.innerHTML = `
|
|
762
764
|
<style>
|
|
@@ -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,14 +956,14 @@ 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;
|
|
961
963
|
const _e = class _e extends HTMLElement {
|
|
962
964
|
constructor() {
|
|
963
965
|
super();
|
|
964
|
-
d(this, Kt, /* @__PURE__ */
|
|
966
|
+
d(this, Kt, /* @__PURE__ */ c(() => {
|
|
965
967
|
var e;
|
|
966
968
|
(e = this.querySelector(".nine-tab-bar")) == null || e.addEventListener("click", (s) => {
|
|
967
969
|
var o;
|
|
@@ -969,21 +971,21 @@ const _e = class _e extends HTMLElement {
|
|
|
969
971
|
t(this, Rt).call(this, n, r);
|
|
970
972
|
}), t(this, Rt).call(this, 0, !1);
|
|
971
973
|
}, "#init"));
|
|
972
|
-
d(this, Rt, /* @__PURE__ */
|
|
973
|
-
const r = /* @__PURE__ */
|
|
974
|
+
d(this, Rt, /* @__PURE__ */ c((e, s = !1) => {
|
|
975
|
+
const r = /* @__PURE__ */ c(() => {
|
|
974
976
|
const f = Array.from(this.querySelectorAll("nine-table-sheet"));
|
|
975
977
|
Array.from(this.querySelectorAll("nine-splitter")).forEach((u) => u.style.setProperty("display", "none"));
|
|
976
978
|
const b = f.filter((u) => u.classList.contains("active"));
|
|
977
979
|
b.length < 2 || b.forEach((u) => {
|
|
978
|
-
const
|
|
979
|
-
|
|
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
|
-
}, "updateSplitters"), n = this.querySelector(".nine-tab-bar"), o = this.querySelector("nine-table-sheets-body"), a = n.querySelectorAll(".nine-tab-item"),
|
|
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
986
|
a.forEach((f, g) => {
|
|
985
987
|
f.classList.toggle("active", g === e);
|
|
986
|
-
}),
|
|
988
|
+
}), h.forEach((f, g) => {
|
|
987
989
|
const b = g === e;
|
|
988
990
|
f.classList.toggle("active", b), f.style.flex = b ? "1 1 100%" : "";
|
|
989
991
|
});
|
|
@@ -1005,31 +1007,31 @@ const _e = class _e extends HTMLElement {
|
|
|
1005
1007
|
t(this, Kt).call(this);
|
|
1006
1008
|
}
|
|
1007
1009
|
};
|
|
1008
|
-
Kt = new WeakMap(), Rt = new WeakMap(),
|
|
1010
|
+
Kt = new WeakMap(), Rt = new WeakMap(), c(_e, "NineTableSheets");
|
|
1009
1011
|
let de = _e;
|
|
1010
1012
|
customElements.get("nine-table-sheets") || customElements.define("nine-table-sheets", de);
|
|
1011
1013
|
var M, Zt, Tt, Gt;
|
|
1012
1014
|
const Ne = class Ne {
|
|
1013
1015
|
constructor(i) {
|
|
1014
1016
|
d(this, M);
|
|
1015
|
-
d(this, Zt, /* @__PURE__ */
|
|
1017
|
+
d(this, Zt, /* @__PURE__ */ c(() => {
|
|
1016
1018
|
t(this, Gt).call(this), new ResizeObserver((i) => {
|
|
1017
1019
|
for (let e of i)
|
|
1018
1020
|
t(this, M).getAttribute("auto-height") === "true" && t(this, Tt).call(this);
|
|
1019
1021
|
}).observe(t(this, M));
|
|
1020
1022
|
}, "#init"));
|
|
1021
|
-
d(this, Tt, /* @__PURE__ */
|
|
1022
|
-
var
|
|
1023
|
+
d(this, Tt, /* @__PURE__ */ c(() => {
|
|
1024
|
+
var h, l;
|
|
1023
1025
|
const i = Array.from(t(this, M).shadowRoot.querySelectorAll("nine-table-sheet.active"));
|
|
1024
1026
|
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 = (
|
|
1027
|
+
const e = parseInt(t(this, M).getAttribute("max-display-row"), 10) || 10, s = Math.max(...i.map((f) => f.getRowHeight())), r = (h = t(this, M).shadowRoot.querySelector("nine-table-header")) == null ? void 0 : h.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
1028
|
t(this, M).style.height = `${a}px`;
|
|
1027
1029
|
}, "#applyAutoHeight"));
|
|
1028
|
-
d(this, Gt, /* @__PURE__ */
|
|
1029
|
-
const e = Array.from(t(this, M).children).filter((
|
|
1030
|
+
d(this, Gt, /* @__PURE__ */ c(() => {
|
|
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
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>` : "";
|
|
1031
1033
|
return g + b;
|
|
1032
|
-
}).join(""), o = e.map((
|
|
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>
|
|
1035
1037
|
:host {
|
|
@@ -1152,96 +1154,96 @@ const Ne = class Ne {
|
|
|
1152
1154
|
<nine-table-footer></nine-table-footer>
|
|
1153
1155
|
`, t(this, M).shadowRoot.querySelector("nine-table-sheets").classList.add("nodata");
|
|
1154
1156
|
const a = t(this, M).shadowRoot.querySelectorAll("nine-table-sheet");
|
|
1155
|
-
a == null || a.forEach((
|
|
1157
|
+
a == null || a.forEach((h, l) => {
|
|
1156
1158
|
e[l] && setTimeout(() => {
|
|
1157
|
-
|
|
1159
|
+
h.generate(e[l]), s && t(this, Tt).call(this);
|
|
1158
1160
|
});
|
|
1159
1161
|
});
|
|
1160
1162
|
}, "#render"));
|
|
1161
1163
|
y(this, M, i), t(this, Zt).call(this);
|
|
1162
1164
|
}
|
|
1163
1165
|
};
|
|
1164
|
-
M = new WeakMap(), Zt = new WeakMap(), Tt = new WeakMap(), Gt = new WeakMap(),
|
|
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,
|
|
1193
|
-
d(this, Qt, /* @__PURE__ */
|
|
1194
|
-
y(this,
|
|
1195
|
-
const i = t(this,
|
|
1194
|
+
d(this, U, []);
|
|
1195
|
+
d(this, Qt, /* @__PURE__ */ c(() => {
|
|
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
|
-
d(this, Ct, /* @__PURE__ */
|
|
1226
|
-
rowState:
|
|
1227
|
+
d(this, Ct, /* @__PURE__ */ c(() => ({
|
|
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
|
-
d(this, te, /* @__PURE__ */
|
|
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) => {
|
|
@@ -1249,64 +1251,64 @@ const O = class O {
|
|
|
1249
1251
|
}), s.push(o);
|
|
1250
1252
|
}), s;
|
|
1251
1253
|
}, "#json2Array"));
|
|
1252
|
-
d(this, ee, /* @__PURE__ */
|
|
1253
|
-
e.__ng = t(this, Ct).call(this), e.__ng.rowid = this.nextId, e.__ng.rowState =
|
|
1254
|
+
d(this, ee, /* @__PURE__ */ c((i) => (Array.isArray(i) || (i = [i]), i.forEach((e) => {
|
|
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
|
-
|
|
1277
|
-
var
|
|
1278
|
+
E(this, "setValue", /* @__PURE__ */ c((i, e, s) => {
|
|
1279
|
+
var h;
|
|
1278
1280
|
i = parseInt(i, 10);
|
|
1279
|
-
const n = (typeof ((
|
|
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,
|
|
1298
|
-
const
|
|
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) => {
|
|
1300
|
+
const h = {};
|
|
1299
1301
|
return r.forEach((l, f) => {
|
|
1300
|
-
|
|
1301
|
-
}),
|
|
1302
|
+
h[l] = a.v ? a.v[f] : a[l];
|
|
1303
|
+
}), h.__ng = a.__ng, h;
|
|
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,28 +1356,28 @@ 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);
|
|
1369
1371
|
}, "add"));
|
|
1370
|
-
d(this, Lt, /* @__PURE__ */
|
|
1372
|
+
d(this, Lt, /* @__PURE__ */ c(() => {
|
|
1371
1373
|
const i = /* @__PURE__ */ new Map();
|
|
1372
1374
|
t(this, L).forEach((e) => {
|
|
1373
1375
|
i.set(e.name, e.type);
|
|
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
|
-
d(this, se, /* @__PURE__ */
|
|
1377
|
-
y(this, L, []), H.log(t(this,
|
|
1378
|
-
const i = Array.from(t(this,
|
|
1378
|
+
d(this, se, /* @__PURE__ */ c(() => {
|
|
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) => {
|
|
@@ -1395,9 +1397,9 @@ const ze = class ze {
|
|
|
1395
1397
|
}
|
|
1396
1398
|
o.split("data.").forEach((a) => {
|
|
1397
1399
|
if (a.trim() != "") {
|
|
1398
|
-
const
|
|
1400
|
+
const h = a.search(/[^_A-Za-z0-9]/g);
|
|
1399
1401
|
let l = "";
|
|
1400
|
-
|
|
1402
|
+
h >= 0 ? l = a.substring(0, h) : o.startsWith("data.") && (l = a.replace("data.", "")), l && t(this, L).push({ name: l, type: "string" });
|
|
1401
1403
|
}
|
|
1402
1404
|
});
|
|
1403
1405
|
});
|
|
@@ -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
|
-
d(this, re, /* @__PURE__ */
|
|
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
|
-
|
|
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);
|
|
@@ -1507,22 +1509,22 @@ const De = class De extends me {
|
|
|
1507
1509
|
} catch {
|
|
1508
1510
|
}
|
|
1509
1511
|
}, "getDisplayText"));
|
|
1510
|
-
d(this, Ce, /* @__PURE__ */
|
|
1512
|
+
d(this, Ce, /* @__PURE__ */ c(() => {
|
|
1511
1513
|
if (!(!t(this, C) || !t(this, C).template || !t(this, p).closest("tbody.bindable"))) {
|
|
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)
|
|
1521
1523
|
for (var o of r) {
|
|
1522
1524
|
if (o > e) break;
|
|
1523
|
-
var a = parseInt(t(this, p).dataset.row),
|
|
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 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,
|
|
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];
|
|
1526
1528
|
if (b != u) {
|
|
1527
1529
|
n = !0;
|
|
1528
1530
|
break;
|
|
@@ -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);
|
|
@@ -1572,7 +1574,7 @@ const De = class De extends me {
|
|
|
1572
1574
|
return parseInt(t(this, p).dataset.row), t(this, Ht).data[e];
|
|
1573
1575
|
}
|
|
1574
1576
|
};
|
|
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(),
|
|
1577
|
+
C = new WeakMap(), Ht = new WeakMap(), p = new WeakMap(), qe = new WeakMap(), Re = new WeakMap(), Te = new WeakMap(), ke = new WeakMap(), Ce = new WeakMap(), c(De, "CellElement");
|
|
1576
1578
|
let ve = De;
|
|
1577
1579
|
const Pe = class Pe extends ve {
|
|
1578
1580
|
constructor() {
|
|
@@ -1585,19 +1587,19 @@ const Pe = class Pe extends ve {
|
|
|
1585
1587
|
return super.refresh();
|
|
1586
1588
|
}
|
|
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"));
|
|
@@ -1631,22 +1633,22 @@ const je = class je extends xe {
|
|
|
1631
1633
|
if (!v) this.reset();
|
|
1632
1634
|
};
|
|
1633
1635
|
*/
|
|
1634
|
-
d(this, Le, /* @__PURE__ */
|
|
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);
|