@ninebone/table 0.0.644 → 0.0.646
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 +384 -385
- 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 Xe = (q, i, e) => i in q ? Fe(q, i, { enumerable: !0, configurable: !0, writable: !0, value: e }) : q[i] = e;
|
|
6
|
+
var h = (q, i) => Fe(q, "name", { value: i, configurable: !0 });
|
|
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) => ({
|
|
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 Ke } from "@ninebone/util";
|
|
18
|
+
const He = class He extends Ke.constructor {
|
|
19
19
|
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,
|
|
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
|
-
d(this,
|
|
32
|
-
d(this,
|
|
31
|
+
d(this, j, !1);
|
|
32
|
+
d(this, x);
|
|
33
|
+
d(this, X);
|
|
33
34
|
d(this, K);
|
|
34
35
|
d(this, Z);
|
|
35
|
-
d(this,
|
|
36
|
-
d(this, It, /* @__PURE__ */ c(() => {
|
|
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
|
-
e && (y(this,
|
|
39
|
+
e && (y(this, Z, new ResizeObserver(() => {
|
|
40
40
|
this.refresh();
|
|
41
|
-
})), t(this,
|
|
41
|
+
})), t(this, Z).observe(e));
|
|
42
42
|
}, "#observeResize"));
|
|
43
|
-
|
|
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,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 / c), l), 20);
|
|
57
57
|
n.style.width = `${f}px`;
|
|
58
|
-
const g = e.scrollLeft, b =
|
|
58
|
+
const g = e.scrollLeft, b = c - 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 m = l - f;
|
|
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,
|
|
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 >
|
|
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
73
|
const l = s.clientWidth, g = r.scrollWidth - l;
|
|
74
|
-
return
|
|
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__ */
|
|
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__ */ h(() => {
|
|
77
|
+
const e = /* @__PURE__ */ h((r) => {
|
|
78
|
+
clearInterval(t(this, X)), clearInterval(t(this, K));
|
|
79
|
+
const n = parseInt(t(this, x).thumb.style.left || 0, 10);
|
|
80
|
+
t(this, G).call(this, n + r), y(this, X, setInterval(() => {
|
|
81
|
+
clearInterval(t(this, X)), y(this, K, setInterval(() => {
|
|
82
|
+
const o = parseInt(t(this, x).thumb.style.left || 0, 10);
|
|
83
|
+
t(this, G).call(this, o + r) || clearInterval(t(this, K));
|
|
84
84
|
}, 50));
|
|
85
85
|
}, 500));
|
|
86
|
-
}, "delayScroll"), s = /* @__PURE__ */
|
|
87
|
-
clearInterval(t(this,
|
|
86
|
+
}, "delayScroll"), s = /* @__PURE__ */ h(() => {
|
|
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,
|
|
99
|
-
t(this,
|
|
100
|
-
}), t(this,
|
|
98
|
+
const n = t(this, x).track.getBoundingClientRect(), o = t(this, x).thumb.clientWidth;
|
|
99
|
+
t(this, G).call(this, r.clientX - n.left - o / 2);
|
|
100
|
+
}), t(this, x).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, j, !0), this.shiftX = r.clientX - t(this, x).thumb.getBoundingClientRect().left;
|
|
103
|
+
const n = /* @__PURE__ */ h((a) => {
|
|
104
|
+
if (!t(this, j)) return;
|
|
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
|
+
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);
|
|
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__ */ 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"),
|
|
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, j) || 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, Z) && t(this, Z).disconnect();
|
|
199
199
|
}
|
|
200
200
|
};
|
|
201
|
-
B = 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
|
-
var
|
|
204
|
+
var F, at, J, 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, F);
|
|
209
|
+
d(this, at);
|
|
210
|
+
d(this, J, !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
|
+
A(this, "refresh", /* @__PURE__ */ h(() => {
|
|
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, 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
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 / c), 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(c - 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 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__ */
|
|
235
|
-
const n = (t(this,
|
|
234
|
+
const e = t(this, T).container, s = /* @__PURE__ */ h(() => {
|
|
235
|
+
const n = (t(this, F).data.get() || []).length, o = t(this, at).getRowHeight();
|
|
236
236
|
return n * o;
|
|
237
237
|
}, "getContentHeight");
|
|
238
238
|
e.addEventListener("scroll", () => {
|
|
239
|
-
t(this,
|
|
239
|
+
t(this, J) || 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, J, !0), y(this, vt, r.clientY), y(this, xt, e.scrollTop);
|
|
243
|
+
const n = /* @__PURE__ */ h((a) => {
|
|
244
|
+
if (!t(this, J)) return;
|
|
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
|
+
let v = t(this, xt) + E;
|
|
249
|
+
const I = Math.max(0, m - u);
|
|
250
|
+
v < 0 && (v = 0), v > I && (v = I), e.scrollTop = v;
|
|
251
251
|
}
|
|
252
252
|
this.refresh();
|
|
253
|
-
}, "onMouseMove"), o = /* @__PURE__ */
|
|
254
|
-
y(this,
|
|
253
|
+
}, "onMouseMove"), o = /* @__PURE__ */ h(() => {
|
|
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) => {
|
|
@@ -270,7 +270,7 @@ const $e = class $e extends HTMLElement {
|
|
|
270
270
|
}, "#init"));
|
|
271
271
|
}
|
|
272
272
|
connectedCallback() {
|
|
273
|
-
y(this,
|
|
273
|
+
y(this, F, this.getRootNode().host), y(this, at, 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__ */ h(() => {
|
|
338
|
+
const s = t(this, F).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
|
+
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
|
|
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
|
-
d(this,
|
|
361
|
-
d(this,
|
|
362
|
-
d(this,
|
|
360
|
+
d(this, P);
|
|
361
|
+
d(this, w);
|
|
362
|
+
d(this, Q);
|
|
363
363
|
d(this, D, /* @__PURE__ */ new Map());
|
|
364
|
-
d(this,
|
|
365
|
-
d(this,
|
|
366
|
-
d(this,
|
|
364
|
+
d(this, _, null);
|
|
365
|
+
d(this, V, null);
|
|
366
|
+
d(this, tt, 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
|
+
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,
|
|
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
|
-
|
|
379
|
-
H.log("rowManager.initialize"), y(this,
|
|
380
|
-
scrollTables: t(this,
|
|
381
|
-
firstTr: t(this,
|
|
382
|
-
}), y(this,
|
|
383
|
-
const a = t(this,
|
|
378
|
+
A(this, "initialize", /* @__PURE__ */ h(() => {
|
|
379
|
+
H.log("rowManager.initialize"), y(this, Q, {
|
|
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
|
+
}), y(this, _, null), t(this, D).clear(), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((o) => {
|
|
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
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, 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
|
-
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, 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 =
|
|
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 = c.scrollTop, f = c.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, 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,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((c) => {
|
|
419
|
+
o.appendChild(c.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, Q).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__ */ h((i) => {
|
|
424
|
+
if (H.log("rowManager.#measureAndCacheHeight"), t(this, _) !== null && t(this, _) > 0)
|
|
425
|
+
return t(this, _);
|
|
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, 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
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 m = window.getComputedStyle(b);
|
|
444
|
+
u = parseFloat(m.height) || parseFloat(m.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 = c, o.style.position = l, f <= 0) throw new Error("invalid dom");
|
|
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
|
-
const e = (t(this,
|
|
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__ */
|
|
461
|
-
if (t(this,
|
|
462
|
-
const i = Math.ceil(t(this,
|
|
460
|
+
d(this, Et, /* @__PURE__ */ h(() => {
|
|
461
|
+
if (t(this, tt) > 0 && t(this, _) > 0) {
|
|
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 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")) : [], 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
|
+
for (let v = 0; v < E; v++) {
|
|
472
|
+
const I = [
|
|
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
|
+
], R = Math.max(...I);
|
|
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 u = r ? Array.from(r.querySelectorAll("tfoot tr")) : [],
|
|
483
|
-
for (let
|
|
484
|
-
const
|
|
485
|
-
((f = u[
|
|
486
|
-
((g = v
|
|
487
|
-
((b =
|
|
488
|
-
], R = Math.max(...
|
|
489
|
-
R > 0 && (u[
|
|
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
|
+
for (let v = 0; v < E; v++) {
|
|
484
|
+
const I = [
|
|
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
|
+
], R = Math.max(...I);
|
|
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,63 +500,62 @@ 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 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,
|
|
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,
|
|
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
523
|
n.forEach((f, g) => {
|
|
524
524
|
const b = i + Math.floor(g / o);
|
|
525
|
-
if (b >=
|
|
525
|
+
if (b >= c) {
|
|
526
526
|
f.style.visibility = "hidden";
|
|
527
527
|
return;
|
|
528
528
|
}
|
|
529
|
-
const u = t(this,
|
|
529
|
+
const u = t(this, P).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, lt, /* @__PURE__ */ h((i) => {
|
|
535
|
+
var f, g;
|
|
536
|
+
const e = t(this, _);
|
|
537
537
|
if (!e || e <= 0) return;
|
|
538
|
-
const s = t(this,
|
|
538
|
+
const s = t(this, P).data.length;
|
|
539
539
|
if (s === 0) return;
|
|
540
|
-
const r = ((
|
|
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)));
|
|
541
541
|
let a = Math.floor(o * e);
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
const m = A.querySelector(".ng-part-body tbody.bindable-tbody");
|
|
542
|
+
H.log(`📜 [Scroll Inspect] scrollTop: ${i}, rowHeight: ${e}, startIndex: ${o}, offsetY: ${a}`);
|
|
543
|
+
const c = t(this, Q).firstTr, l = c && c.dataset.row !== void 0 ? parseInt(c.dataset.row, 10) : -1;
|
|
544
|
+
(g = t(this, Q)) == null || g.scrollTables.forEach((b) => {
|
|
545
|
+
b.style.transform = `translate3d(0, ${a}px, 0)`;
|
|
546
|
+
}), l !== o && [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((b) => {
|
|
547
|
+
const u = t(this, w).querySelector(b);
|
|
548
|
+
if (!u) return;
|
|
549
|
+
const m = u.querySelector(".ng-part-body tbody.bindable-tbody");
|
|
551
550
|
if (!m) return;
|
|
552
|
-
Array.from(m.querySelectorAll("tr:not(.nodata)")).forEach((
|
|
553
|
-
const
|
|
554
|
-
if (
|
|
555
|
-
|
|
551
|
+
Array.from(m.querySelectorAll("tr:not(.nodata)")).forEach((E, v) => {
|
|
552
|
+
const I = o + Math.floor(v / r);
|
|
553
|
+
if (I >= s) {
|
|
554
|
+
E.style.display = "none";
|
|
556
555
|
return;
|
|
557
556
|
}
|
|
558
|
-
const
|
|
559
|
-
|
|
557
|
+
const R = t(this, P).data.get(I);
|
|
558
|
+
E.style.display = "", t(this, qt).call(this, E, R, I);
|
|
560
559
|
});
|
|
561
560
|
});
|
|
562
561
|
}, "#handleScroll"));
|
|
@@ -574,42 +573,42 @@ const Ie = class Ie {
|
|
|
574
573
|
cell.dataset.row = dataIndex;
|
|
575
574
|
});
|
|
576
575
|
}; */
|
|
577
|
-
d(this, qt, /* @__PURE__ */
|
|
576
|
+
d(this, qt, /* @__PURE__ */ h((i, e, s) => {
|
|
578
577
|
i.dataset.row = s, i.data = e, Array.from(i.cells).forEach((r, n) => {
|
|
579
578
|
r.dataset.row = s;
|
|
580
579
|
const o = Array.from(r.children).find((a) => a.tagName.toLowerCase().startsWith("cell-") || typeof a.refresh == "function");
|
|
581
580
|
o && typeof o.refresh == "function" && o.refresh();
|
|
582
581
|
});
|
|
583
582
|
}, "#bindRowData"));
|
|
584
|
-
d(this, Pt, /* @__PURE__ */
|
|
585
|
-
var
|
|
583
|
+
d(this, Pt, /* @__PURE__ */ h(() => {
|
|
584
|
+
var c, l, f;
|
|
586
585
|
H.log("rowManager.#syncHeaderHeights");
|
|
587
|
-
const i = t(this,
|
|
586
|
+
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");
|
|
588
587
|
if (!e) return;
|
|
589
588
|
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);
|
|
590
589
|
for (let g = 0; g < a; g++) {
|
|
591
590
|
const b = [
|
|
592
|
-
((
|
|
591
|
+
((c = r[g]) == null ? void 0 : c.getBoundingClientRect().height) || 0,
|
|
593
592
|
((l = n[g]) == null ? void 0 : l.getBoundingClientRect().height) || 0,
|
|
594
593
|
((f = o[g]) == null ? void 0 : f.getBoundingClientRect().height) || 0
|
|
595
594
|
], u = Math.max(...b);
|
|
596
595
|
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`));
|
|
597
596
|
}
|
|
598
597
|
}, "#syncHeaderHeights"));
|
|
599
|
-
|
|
600
|
-
t(this,
|
|
598
|
+
A(this, "destroy", /* @__PURE__ */ h(() => {
|
|
599
|
+
t(this, V) && (t(this, V).disconnect(), y(this, V, null));
|
|
601
600
|
}, "destroy"));
|
|
602
|
-
y(this,
|
|
601
|
+
y(this, P, i.getRootNode().host), y(this, w, i), t(this, Dt).call(this);
|
|
603
602
|
}
|
|
604
603
|
getRowHeight() {
|
|
605
|
-
return t(this,
|
|
604
|
+
return t(this, _);
|
|
606
605
|
}
|
|
607
606
|
templateLength(i = ".ng-container-body") {
|
|
608
607
|
var e;
|
|
609
608
|
return ((e = t(this, D).get(i)) == null ? void 0 : e.length) || 1;
|
|
610
609
|
}
|
|
611
610
|
};
|
|
612
|
-
|
|
611
|
+
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");
|
|
613
612
|
let ce = Ie;
|
|
614
613
|
const jt = class jt {
|
|
615
614
|
/**
|
|
@@ -623,18 +622,18 @@ const jt = class jt {
|
|
|
623
622
|
*/
|
|
624
623
|
static compile(i) {
|
|
625
624
|
if (!i) return null;
|
|
626
|
-
const e = /* @__PURE__ */
|
|
625
|
+
const e = /* @__PURE__ */ h((a) => {
|
|
627
626
|
a.querySelectorAll("tbody td, tbody th, tfoot td, tfoot th").forEach((l) => {
|
|
628
627
|
const f = l.getAttribute("cell-type") || "renderer";
|
|
629
628
|
if (l.children.length > 0 && l.firstElementChild.tagName.includes("-")) return;
|
|
630
629
|
let g = `cell-${f}`;
|
|
631
|
-
const b = l.getAttribute("data-bind"), u = l.getAttribute("data-expr"),
|
|
632
|
-
let
|
|
633
|
-
b &&
|
|
630
|
+
const b = l.getAttribute("data-bind"), u = l.getAttribute("data-expr"), m = l.getAttribute("maxbyte"), S = l.getAttribute("type");
|
|
631
|
+
let E = [];
|
|
632
|
+
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}>`;
|
|
634
633
|
});
|
|
635
|
-
}, "processCellTypes"), s = /* @__PURE__ */
|
|
634
|
+
}, "processCellTypes"), s = /* @__PURE__ */ h((a) => {
|
|
636
635
|
if (!a.querySelector("colgroup")) {
|
|
637
|
-
const
|
|
636
|
+
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);
|
|
638
637
|
for (let b = 0; b < l; b++) {
|
|
639
638
|
const u = document.createElement("col");
|
|
640
639
|
u.setAttribute("width", g), f.appendChild(u);
|
|
@@ -642,75 +641,75 @@ const jt = class jt {
|
|
|
642
641
|
a.prepend(f);
|
|
643
642
|
}
|
|
644
643
|
if (!a.querySelector("thead")) {
|
|
645
|
-
const
|
|
646
|
-
l ? l.after(
|
|
644
|
+
const c = document.createElement("thead"), l = a.querySelector("colgroup");
|
|
645
|
+
l ? l.after(c) : a.prepend(c);
|
|
647
646
|
}
|
|
648
647
|
a.classList.add("nine-table-element");
|
|
649
|
-
}, "ensureTableStructure"), r = /* @__PURE__ */
|
|
650
|
-
const l = Array.from(a.querySelectorAll(
|
|
648
|
+
}, "ensureTableStructure"), r = /* @__PURE__ */ h((a, c) => {
|
|
649
|
+
const l = Array.from(a.querySelectorAll(c + " tr")), f = Array.from(a.querySelectorAll(c + " th," + c + " td")), g = l.length;
|
|
651
650
|
if (g === 0 || f.length === 0) return;
|
|
652
651
|
let b = 0;
|
|
653
|
-
f.forEach((
|
|
654
|
-
b +=
|
|
652
|
+
f.forEach((m) => {
|
|
653
|
+
b += m.colSpan || 1;
|
|
655
654
|
});
|
|
656
655
|
const u = Array.from(Array(g), () => Array(b).fill(null));
|
|
657
|
-
l.forEach((
|
|
658
|
-
const
|
|
659
|
-
let
|
|
660
|
-
Array.from(
|
|
661
|
-
for (let
|
|
662
|
-
if (u[
|
|
663
|
-
|
|
656
|
+
l.forEach((m) => {
|
|
657
|
+
const S = m.sectionRowIndex;
|
|
658
|
+
let E = 0;
|
|
659
|
+
Array.from(m.querySelectorAll("th,td")).forEach((v) => {
|
|
660
|
+
for (let z = 0; z < u[S].length; z++)
|
|
661
|
+
if (u[S][z] === null) {
|
|
662
|
+
E = z;
|
|
664
663
|
break;
|
|
665
664
|
}
|
|
666
|
-
const
|
|
667
|
-
for (let
|
|
668
|
-
for (let
|
|
669
|
-
|
|
665
|
+
const I = v.rowSpan || 1, R = v.colSpan || 1;
|
|
666
|
+
for (let z = 0; z < I; z++)
|
|
667
|
+
for (let yt = 0; yt < R; yt++)
|
|
668
|
+
S + z < g && E + yt < b && (u[S + z][E + yt] = z === 0 && yt === 0 ? "1" : "0");
|
|
670
669
|
});
|
|
671
|
-
}), l.forEach((
|
|
672
|
-
const
|
|
673
|
-
Array.from(
|
|
674
|
-
for (let
|
|
675
|
-
if (u[
|
|
676
|
-
|
|
670
|
+
}), l.forEach((m) => {
|
|
671
|
+
const S = m.sectionRowIndex;
|
|
672
|
+
Array.from(m.querySelectorAll("th,td")).forEach((E) => {
|
|
673
|
+
for (let v = 0; v < u[S].length; v++)
|
|
674
|
+
if (u[S][v] === "1") {
|
|
675
|
+
E.dataset.col = v, u[S][v] = "0";
|
|
677
676
|
break;
|
|
678
677
|
}
|
|
679
678
|
});
|
|
680
679
|
});
|
|
681
680
|
}, "resetColIndex"), n = i.cloneNode(!0);
|
|
682
|
-
return s(n), e(n), r(n, "thead"), r(n, "tbody"), r(n, "tfoot"), Array.from(n.querySelectorAll("colgroup col")).forEach((a,
|
|
681
|
+
return s(n), e(n), r(n, "thead"), r(n, "tbody"), r(n, "tfoot"), Array.from(n.querySelectorAll("colgroup col")).forEach((a, c) => {
|
|
683
682
|
const l = a.getAttribute("fixed");
|
|
684
|
-
l && n.querySelectorAll(`thead [data-col="${
|
|
683
|
+
l && n.querySelectorAll(`thead [data-col="${c}"], tbody [data-col="${c}"], tfoot [data-col="${c}"]`).forEach((f) => {
|
|
685
684
|
f.setAttribute("fixed", l);
|
|
686
685
|
});
|
|
687
686
|
}), n;
|
|
688
687
|
}
|
|
689
688
|
// 🎯 [추가] td/th에 선언된 cell-type 속성을 읽어 커스텀 태그로 자동 감싸기
|
|
690
689
|
};
|
|
691
|
-
|
|
690
|
+
h(jt, "TableCompiler");
|
|
692
691
|
let he = jt;
|
|
693
|
-
var Ft,
|
|
692
|
+
var Ft, et, st, Vt, Yt, ct, Ut, Xt;
|
|
694
693
|
const pt = class pt extends HTMLElement {
|
|
695
694
|
constructor() {
|
|
696
695
|
super();
|
|
697
696
|
d(this, Ft);
|
|
698
|
-
d(this,
|
|
699
|
-
d(this,
|
|
700
|
-
|
|
701
|
-
t(this,
|
|
697
|
+
d(this, et, null);
|
|
698
|
+
d(this, st);
|
|
699
|
+
A(this, "invalidate", /* @__PURE__ */ h(() => {
|
|
700
|
+
t(this, st).refresh();
|
|
702
701
|
}, "invalidate"));
|
|
703
|
-
d(this, Vt, /* @__PURE__ */
|
|
702
|
+
d(this, Vt, /* @__PURE__ */ h(() => {
|
|
704
703
|
[
|
|
705
704
|
{ selector: ".ng-container-body", type: null },
|
|
706
705
|
{ selector: ".ng-container-left", type: "left" },
|
|
707
706
|
{ selector: ".ng-container-right", type: "right" }
|
|
708
707
|
].forEach(({ selector: s, type: r }) => {
|
|
709
708
|
var n, o, a;
|
|
710
|
-
(n = this.querySelector(`${s} .ng-part-header`)) == null || n.appendChild(t(this,
|
|
709
|
+
(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"));
|
|
711
710
|
});
|
|
712
711
|
}, "#renderSplitContainers"));
|
|
713
|
-
d(this, Yt, /* @__PURE__ */
|
|
712
|
+
d(this, Yt, /* @__PURE__ */ h(() => {
|
|
714
713
|
["left", "right", "body"].forEach((e) => {
|
|
715
714
|
const s = this.querySelector(`.ng-container-${e}`), r = s == null ? void 0 : s.querySelectorAll("table");
|
|
716
715
|
if (!s || !r || r.length === 0) return;
|
|
@@ -721,23 +720,23 @@ const pt = class pt extends HTMLElement {
|
|
|
721
720
|
}), e === "body" ? s.style.flex = "1" : (s.style.flex = `0 0 ${n}px`, s.style.width = `${n}px`);
|
|
722
721
|
});
|
|
723
722
|
}, "#updateContainerWidths"));
|
|
724
|
-
|
|
723
|
+
A(this, "generate", /* @__PURE__ */ h((e) => {
|
|
725
724
|
if (!e) return;
|
|
726
|
-
y(this,
|
|
725
|
+
y(this, et, he.compile(e)), t(this, Vt).call(this), t(this, Yt).call(this);
|
|
727
726
|
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
|
-
s && n && (n.style.top = `${s.offsetHeight}px`), r && n && (n.style.bottom = `${r.offsetHeight}px`), t(this,
|
|
727
|
+
s && n && (n.style.top = `${s.offsetHeight}px`), r && n && (n.style.bottom = `${r.offsetHeight}px`), t(this, st).initialize(), setTimeout(() => {
|
|
729
728
|
var o;
|
|
730
729
|
(o = this.querySelector("nine-table-hscrollbar")) == null || o.refresh();
|
|
731
730
|
}, 0);
|
|
732
731
|
}, "generate"));
|
|
733
|
-
d(this,
|
|
734
|
-
const n = e.cloneNode(!0), o = n.querySelector("thead"), a = n.querySelector("tbody"),
|
|
732
|
+
d(this, ct, /* @__PURE__ */ h((e, s, r) => {
|
|
733
|
+
const n = e.cloneNode(!0), o = n.querySelector("thead"), a = n.querySelector("tbody"), c = n.querySelector("tfoot");
|
|
735
734
|
if (r === "header") {
|
|
736
|
-
if (a && a.remove(),
|
|
735
|
+
if (a && a.remove(), c && c.remove(), e.querySelector("tbody")) {
|
|
737
736
|
const f = document.createElement("tbody");
|
|
738
737
|
f.className = "fixed-tbody", n.appendChild(f);
|
|
739
738
|
}
|
|
740
|
-
} else r === "body" ? (o && o.remove(),
|
|
739
|
+
} else r === "body" ? (o && o.remove(), c && c.remove(), a && (a.className = "bindable-tbody")) : r === "footer" && (o && o.remove(), a && a.remove());
|
|
741
740
|
return s === "left" ? n.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
|
|
742
741
|
l.getAttribute("fixed") !== "left" && l.remove();
|
|
743
742
|
}) : s === "right" ? n.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
|
|
@@ -746,19 +745,19 @@ const pt = class pt extends HTMLElement {
|
|
|
746
745
|
l.remove();
|
|
747
746
|
}), n;
|
|
748
747
|
}, "#createSplitTable"));
|
|
749
|
-
|
|
750
|
-
|
|
748
|
+
A(this, "getRowHeight", /* @__PURE__ */ h(() => t(this, st).getRowHeight(), "getRowHeight"));
|
|
749
|
+
A(this, "scrollToX", /* @__PURE__ */ h((e) => {
|
|
751
750
|
const s = this.querySelector(".ng-container-body .ng-part-body");
|
|
752
751
|
s && (s.scrollLeft = e);
|
|
753
752
|
}, "scrollToX"));
|
|
754
|
-
|
|
753
|
+
A(this, "scrollToY", /* @__PURE__ */ h((e) => {
|
|
755
754
|
const s = this.querySelector(".ng-container-body .ng-part-body");
|
|
756
755
|
s && (s.scrollTop = e);
|
|
757
756
|
}, "scrollToY"));
|
|
758
|
-
d(this, Ut, /* @__PURE__ */
|
|
757
|
+
d(this, Ut, /* @__PURE__ */ h(() => {
|
|
759
758
|
t(this, Xt).call(this);
|
|
760
759
|
}, "#init"));
|
|
761
|
-
d(this, Xt, /* @__PURE__ */
|
|
760
|
+
d(this, Xt, /* @__PURE__ */ h(() => {
|
|
762
761
|
const e = pt.SCROLLBAR_SIZE;
|
|
763
762
|
this.innerHTML = `
|
|
764
763
|
<style>
|
|
@@ -947,7 +946,7 @@ const pt = class pt extends HTMLElement {
|
|
|
947
946
|
</div>
|
|
948
947
|
`;
|
|
949
948
|
}, "#render"));
|
|
950
|
-
y(this,
|
|
949
|
+
y(this, st, new ce(this)), y(this, Ft, this.getRootNode().host);
|
|
951
950
|
}
|
|
952
951
|
connectedCallback() {
|
|
953
952
|
t(this, Ut).call(this);
|
|
@@ -956,14 +955,14 @@ const pt = class pt extends HTMLElement {
|
|
|
956
955
|
this.innerHTML = "", H.log("NineTableSheet destroyed.");
|
|
957
956
|
}
|
|
958
957
|
};
|
|
959
|
-
Ft = new WeakMap(),
|
|
958
|
+
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);
|
|
960
959
|
let $t = pt;
|
|
961
960
|
customElements.get("nine-table-sheet") || customElements.define("nine-table-sheet", $t);
|
|
962
961
|
var Kt, Rt;
|
|
963
962
|
const _e = class _e extends HTMLElement {
|
|
964
963
|
constructor() {
|
|
965
964
|
super();
|
|
966
|
-
d(this, Kt, /* @__PURE__ */
|
|
965
|
+
d(this, Kt, /* @__PURE__ */ h(() => {
|
|
967
966
|
var e;
|
|
968
967
|
(e = this.querySelector(".nine-tab-bar")) == null || e.addEventListener("click", (s) => {
|
|
969
968
|
var o;
|
|
@@ -971,21 +970,21 @@ const _e = class _e extends HTMLElement {
|
|
|
971
970
|
t(this, Rt).call(this, n, r);
|
|
972
971
|
}), t(this, Rt).call(this, 0, !1);
|
|
973
972
|
}, "#init"));
|
|
974
|
-
d(this, Rt, /* @__PURE__ */
|
|
975
|
-
const r = /* @__PURE__ */
|
|
973
|
+
d(this, Rt, /* @__PURE__ */ h((e, s = !1) => {
|
|
974
|
+
const r = /* @__PURE__ */ h(() => {
|
|
976
975
|
const f = Array.from(this.querySelectorAll("nine-table-sheet"));
|
|
977
976
|
Array.from(this.querySelectorAll("nine-splitter")).forEach((u) => u.style.setProperty("display", "none"));
|
|
978
977
|
const b = f.filter((u) => u.classList.contains("active"));
|
|
979
978
|
b.length < 2 || b.forEach((u) => {
|
|
980
|
-
const
|
|
981
|
-
|
|
979
|
+
const m = parseInt(u.getAttribute("data-index"), 10), S = this.querySelector(`nine-splitter[data-split-index="${m}"]`), E = f[m + 1];
|
|
980
|
+
S && E && E.classList.contains("active") && S.style.setProperty("display", "flex");
|
|
982
981
|
});
|
|
983
|
-
}, "updateSplitters"), n = this.querySelector(".nine-tab-bar"), o = this.querySelector("nine-table-sheets-body"), a = n.querySelectorAll(".nine-tab-item"),
|
|
982
|
+
}, "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");
|
|
984
983
|
if (!a[e]) return;
|
|
985
984
|
if (!s)
|
|
986
985
|
a.forEach((f, g) => {
|
|
987
986
|
f.classList.toggle("active", g === e);
|
|
988
|
-
}),
|
|
987
|
+
}), c.forEach((f, g) => {
|
|
989
988
|
const b = g === e;
|
|
990
989
|
f.classList.toggle("active", b), f.style.flex = b ? "1 1 100%" : "";
|
|
991
990
|
});
|
|
@@ -1007,31 +1006,31 @@ const _e = class _e extends HTMLElement {
|
|
|
1007
1006
|
t(this, Kt).call(this);
|
|
1008
1007
|
}
|
|
1009
1008
|
};
|
|
1010
|
-
Kt = new WeakMap(), Rt = new WeakMap(),
|
|
1009
|
+
Kt = new WeakMap(), Rt = new WeakMap(), h(_e, "NineTableSheets");
|
|
1011
1010
|
let de = _e;
|
|
1012
1011
|
customElements.get("nine-table-sheets") || customElements.define("nine-table-sheets", de);
|
|
1013
1012
|
var M, Zt, Tt, Gt;
|
|
1014
1013
|
const Ne = class Ne {
|
|
1015
1014
|
constructor(i) {
|
|
1016
1015
|
d(this, M);
|
|
1017
|
-
d(this, Zt, /* @__PURE__ */
|
|
1016
|
+
d(this, Zt, /* @__PURE__ */ h(() => {
|
|
1018
1017
|
t(this, Gt).call(this), new ResizeObserver((i) => {
|
|
1019
1018
|
for (let e of i)
|
|
1020
1019
|
t(this, M).getAttribute("auto-height") === "true" && t(this, Tt).call(this);
|
|
1021
1020
|
}).observe(t(this, M));
|
|
1022
1021
|
}, "#init"));
|
|
1023
|
-
d(this, Tt, /* @__PURE__ */
|
|
1024
|
-
var
|
|
1022
|
+
d(this, Tt, /* @__PURE__ */ h(() => {
|
|
1023
|
+
var c, l;
|
|
1025
1024
|
const i = Array.from(t(this, M).shadowRoot.querySelectorAll("nine-table-sheet.active"));
|
|
1026
1025
|
if (i.length === 0) return;
|
|
1027
|
-
const e = parseInt(t(this, M).getAttribute("max-display-row"), 10) || 10, s = Math.max(...i.map((f) => f.getRowHeight())), r = (
|
|
1026
|
+
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;
|
|
1028
1027
|
t(this, M).style.height = `${a}px`;
|
|
1029
1028
|
}, "#applyAutoHeight"));
|
|
1030
|
-
d(this, Gt, /* @__PURE__ */
|
|
1031
|
-
const e = Array.from(t(this, M).children).filter((
|
|
1029
|
+
d(this, Gt, /* @__PURE__ */ h(() => {
|
|
1030
|
+
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) => {
|
|
1032
1031
|
const g = `<nine-table-sheet class="${l === 0 ? "active" : ""}" data-index="${l}"></nine-table-sheet>`, b = l < r - 1 ? `<nine-splitter class="h" data-split-index="${l}"></nine-splitter>` : "";
|
|
1033
1032
|
return g + b;
|
|
1034
|
-
}).join(""), o = e.map((
|
|
1033
|
+
}).join(""), o = e.map((c, l) => `<div class="nine-tab-item ${l === 0 ? "active" : ""}" data-index="${l}">Sheet ${l + 1}</div>`).join("");
|
|
1035
1034
|
t(this, M).shadowRoot.innerHTML = `
|
|
1036
1035
|
<style>
|
|
1037
1036
|
:host {
|
|
@@ -1154,96 +1153,96 @@ const Ne = class Ne {
|
|
|
1154
1153
|
<nine-table-footer></nine-table-footer>
|
|
1155
1154
|
`, t(this, M).shadowRoot.querySelector("nine-table-sheets").classList.add("nodata");
|
|
1156
1155
|
const a = t(this, M).shadowRoot.querySelectorAll("nine-table-sheet");
|
|
1157
|
-
a == null || a.forEach((
|
|
1156
|
+
a == null || a.forEach((c, l) => {
|
|
1158
1157
|
e[l] && setTimeout(() => {
|
|
1159
|
-
|
|
1158
|
+
c.generate(e[l]), s && t(this, Tt).call(this);
|
|
1160
1159
|
});
|
|
1161
1160
|
});
|
|
1162
1161
|
}, "#render"));
|
|
1163
1162
|
y(this, M, i), t(this, Zt).call(this);
|
|
1164
1163
|
}
|
|
1165
1164
|
};
|
|
1166
|
-
M = new WeakMap(), Zt = new WeakMap(), Tt = new WeakMap(), Gt = new WeakMap(),
|
|
1165
|
+
M = new WeakMap(), Zt = new WeakMap(), Tt = new WeakMap(), Gt = new WeakMap(), h(Ne, "LayoutManager");
|
|
1167
1166
|
let fe = Ne;
|
|
1168
|
-
var kt,
|
|
1167
|
+
var kt, ht;
|
|
1169
1168
|
const We = class We {
|
|
1170
1169
|
constructor(i) {
|
|
1171
1170
|
d(this, kt);
|
|
1172
|
-
d(this,
|
|
1173
|
-
|
|
1171
|
+
d(this, ht, -1);
|
|
1172
|
+
A(this, "count", /* @__PURE__ */ h(() => t(this, kt).rawRecords.length, "count"));
|
|
1174
1173
|
y(this, kt, i);
|
|
1175
1174
|
}
|
|
1176
1175
|
get at() {
|
|
1177
|
-
return t(this,
|
|
1176
|
+
return t(this, ht);
|
|
1178
1177
|
}
|
|
1179
1178
|
set at(i) {
|
|
1180
|
-
y(this,
|
|
1179
|
+
y(this, ht, parseInt(i, 10)), body && !body.querySelector(`tbody.bindable tr[data-row="${t(this, ht)}"]`) && setTimeout(() => {
|
|
1181
1180
|
});
|
|
1182
1181
|
}
|
|
1183
1182
|
};
|
|
1184
|
-
kt = new WeakMap(),
|
|
1183
|
+
kt = new WeakMap(), ht = new WeakMap(), h(We, "ngRow");
|
|
1185
1184
|
let ue = We;
|
|
1186
|
-
var
|
|
1187
|
-
const
|
|
1185
|
+
var N, k, W, dt, Jt, Y, Qt, it, Ct, te, ee, ft;
|
|
1186
|
+
const O = class O {
|
|
1188
1187
|
constructor(i, e) {
|
|
1189
|
-
d(this,
|
|
1188
|
+
d(this, N);
|
|
1190
1189
|
d(this, k);
|
|
1191
|
-
d(this,
|
|
1192
|
-
d(this,
|
|
1190
|
+
d(this, W, []);
|
|
1191
|
+
d(this, dt, []);
|
|
1193
1192
|
d(this, Jt, 0);
|
|
1194
|
-
d(this,
|
|
1195
|
-
d(this, Qt, /* @__PURE__ */
|
|
1196
|
-
y(this,
|
|
1197
|
-
const i = t(this,
|
|
1193
|
+
d(this, Y, []);
|
|
1194
|
+
d(this, Qt, /* @__PURE__ */ h(() => {
|
|
1195
|
+
y(this, Y, []);
|
|
1196
|
+
const i = t(this, N).template || [];
|
|
1198
1197
|
Array.from(i).forEach((e) => {
|
|
1199
1198
|
var s;
|
|
1200
|
-
t(this,
|
|
1199
|
+
t(this, Y).push(((s = e.getBoundingClientRect) == null ? void 0 : s.call(e).height) || 24);
|
|
1201
1200
|
}), (t(this, k).rawRecords || []).forEach((e) => {
|
|
1202
|
-
e.__ng || (e.__ng = t(this, Ct).call(this)), e.__ng.height = t(this,
|
|
1201
|
+
e.__ng || (e.__ng = t(this, Ct).call(this)), e.__ng.height = t(this, Y).slice();
|
|
1203
1202
|
});
|
|
1204
1203
|
}, "#initialize"));
|
|
1205
|
-
d(this,
|
|
1206
|
-
const i = t(this,
|
|
1207
|
-
i == null || i.classList.toggle("nodata", this.length === 0), t(this,
|
|
1204
|
+
d(this, it, /* @__PURE__ */ h(() => {
|
|
1205
|
+
const i = t(this, N).shadowRoot.querySelector("nine-table-sheets");
|
|
1206
|
+
i == null || i.classList.toggle("nodata", this.length === 0), t(this, N).shadowRoot.querySelectorAll("nine-table-sheet").forEach((e) => {
|
|
1208
1207
|
e.invalidate();
|
|
1209
1208
|
});
|
|
1210
1209
|
}, "#invalidate"));
|
|
1211
|
-
|
|
1210
|
+
A(this, "get", /* @__PURE__ */ h((i, e) => {
|
|
1212
1211
|
var n;
|
|
1213
1212
|
const s = this.getValidData();
|
|
1214
1213
|
if (!s || s.length <= 0) return;
|
|
1215
|
-
if (i == null) return t(this,
|
|
1214
|
+
if (i == null) return t(this, ft).call(this, s);
|
|
1216
1215
|
if (i < 0 || i >= s.length) return null;
|
|
1217
|
-
const r = typeof ((n = t(this,
|
|
1216
|
+
const r = typeof ((n = t(this, N).fields) == null ? void 0 : n.get) == "function" ? t(this, N).fields.get() : [];
|
|
1218
1217
|
if (e != null) {
|
|
1219
1218
|
const o = r.indexOf(e);
|
|
1220
1219
|
return o >= 0 ? s[i].v[o] : null;
|
|
1221
1220
|
}
|
|
1222
|
-
return t(this,
|
|
1221
|
+
return t(this, ft).call(this, s[i]);
|
|
1223
1222
|
}, "get"));
|
|
1224
|
-
|
|
1225
|
-
this.clear(), this.add(i, !1), t(this,
|
|
1223
|
+
A(this, "set", /* @__PURE__ */ h((i) => {
|
|
1224
|
+
this.clear(), this.add(i, !1), t(this, it).call(this);
|
|
1226
1225
|
}, "set"));
|
|
1227
|
-
d(this, Ct, /* @__PURE__ */
|
|
1228
|
-
rowState:
|
|
1226
|
+
d(this, Ct, /* @__PURE__ */ h(() => ({
|
|
1227
|
+
rowState: O.ROW_STATE.EMPTY,
|
|
1229
1228
|
deleted: !1,
|
|
1230
1229
|
filtered: !1,
|
|
1231
|
-
height: t(this,
|
|
1230
|
+
height: t(this, Y).slice(),
|
|
1232
1231
|
o: {},
|
|
1233
1232
|
c: {},
|
|
1234
|
-
_: [0, 0, 0, 0,
|
|
1233
|
+
_: [0, 0, 0, 0, O.ROW_STATE.EMPTY, !1, !1, !0, !1, !0, !0, !1, t(this, Y).slice(), -1, {}, {}]
|
|
1235
1234
|
}), "#getDefaultMeta"));
|
|
1236
|
-
|
|
1237
|
-
y(this,
|
|
1235
|
+
A(this, "reset", /* @__PURE__ */ h(() => {
|
|
1236
|
+
y(this, W, []), y(this, dt, []), t(this, it).call(this);
|
|
1238
1237
|
}, "reset"));
|
|
1239
|
-
|
|
1238
|
+
A(this, "clear", /* @__PURE__ */ h(() => {
|
|
1240
1239
|
var i;
|
|
1241
|
-
t(this, k).rawRecords = [], y(this,
|
|
1240
|
+
t(this, k).rawRecords = [], y(this, W, []), y(this, dt, []), (i = t(this, k).viewRecords) != null && i.reset && t(this, k).viewRecords.reset();
|
|
1242
1241
|
}, "clear"));
|
|
1243
|
-
d(this, te, /* @__PURE__ */
|
|
1242
|
+
d(this, te, /* @__PURE__ */ h((i) => {
|
|
1244
1243
|
var r;
|
|
1245
1244
|
Array.isArray(i) || (i = [i]);
|
|
1246
|
-
const e = typeof ((r = t(this,
|
|
1245
|
+
const e = typeof ((r = t(this, N).fields) == null ? void 0 : r.get) == "function" ? t(this, N).fields.get() : Object.keys(i[0] || {}), s = [];
|
|
1247
1246
|
return i.forEach((n) => {
|
|
1248
1247
|
const o = { v: [] };
|
|
1249
1248
|
e.forEach((a) => {
|
|
@@ -1251,64 +1250,64 @@ const z = class z {
|
|
|
1251
1250
|
}), s.push(o);
|
|
1252
1251
|
}), s;
|
|
1253
1252
|
}, "#json2Array"));
|
|
1254
|
-
d(this, ee, /* @__PURE__ */
|
|
1255
|
-
e.__ng = t(this, Ct).call(this), e.__ng.rowid = this.nextId, e.__ng.rowState =
|
|
1253
|
+
d(this, ee, /* @__PURE__ */ h((i) => (Array.isArray(i) || (i = [i]), i.forEach((e) => {
|
|
1254
|
+
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;
|
|
1256
1255
|
}), i), "#defaultInsert"));
|
|
1257
|
-
|
|
1256
|
+
A(this, "add", /* @__PURE__ */ h((i, e = !0) => {
|
|
1258
1257
|
i === void 0 && (i = {});
|
|
1259
1258
|
const s = t(this, te).call(this, i);
|
|
1260
1259
|
t(this, k).rawRecords = t(this, k).rawRecords.concat(t(this, ee).call(this, s)), this.resetRecords();
|
|
1261
1260
|
const r = this.count() - 1;
|
|
1262
1261
|
return e || s.forEach((n, o) => {
|
|
1263
1262
|
const a = t(this, k).rawRecords[r - o];
|
|
1264
|
-
a && (a.__ng.rowState =
|
|
1265
|
-
}), t(this,
|
|
1263
|
+
a && (a.__ng.rowState = O.ROW_STATE.EMPTY);
|
|
1264
|
+
}), t(this, it).call(this), r;
|
|
1266
1265
|
}, "add"));
|
|
1267
|
-
|
|
1266
|
+
A(this, "delete", /* @__PURE__ */ h((i) => {
|
|
1268
1267
|
let e = [];
|
|
1269
1268
|
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) => {
|
|
1270
|
-
if (t(this,
|
|
1271
|
-
const r = t(this,
|
|
1272
|
-
t(this,
|
|
1273
|
-
n.__ng.rowid === r && (n.__ng.deleted = !0, n.__ng.rowState =
|
|
1269
|
+
if (t(this, W)[s]) {
|
|
1270
|
+
const r = t(this, W)[s].__ng.rowid;
|
|
1271
|
+
t(this, W)[s].__ng.rowState === O.ROW_STATE.INSERT ? t(this, k).rawRecords = t(this, k).rawRecords.filter((n) => n.__ng.rowid !== r) : t(this, k).rawRecords.forEach((n) => {
|
|
1272
|
+
n.__ng.rowid === r && (n.__ng.deleted = !0, n.__ng.rowState = O.ROW_STATE.DELETE);
|
|
1274
1273
|
});
|
|
1275
1274
|
}
|
|
1276
|
-
}), this.resetRecords(), t(this,
|
|
1275
|
+
}), this.resetRecords(), t(this, it).call(this);
|
|
1277
1276
|
}, "delete"));
|
|
1278
|
-
|
|
1279
|
-
var
|
|
1277
|
+
A(this, "setValue", /* @__PURE__ */ h((i, e, s) => {
|
|
1278
|
+
var c;
|
|
1280
1279
|
i = parseInt(i, 10);
|
|
1281
|
-
const n = (typeof ((
|
|
1280
|
+
const n = (typeof ((c = t(this, N).fields) == null ? void 0 : c.get) == "function" ? t(this, N).fields.get() : []).indexOf(e);
|
|
1282
1281
|
if (n < 0) return;
|
|
1283
1282
|
const o = this.getValidData()[i];
|
|
1284
1283
|
if (!o) return;
|
|
1285
1284
|
const a = o.v[n];
|
|
1286
|
-
a !== s && o.__ng.rowState !==
|
|
1285
|
+
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;
|
|
1287
1286
|
}, "setValue"));
|
|
1288
|
-
|
|
1289
|
-
y(this,
|
|
1287
|
+
A(this, "resetRecords", /* @__PURE__ */ h(() => {
|
|
1288
|
+
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) => {
|
|
1290
1289
|
i.__ng.rowidx = e;
|
|
1291
|
-
}), t(this,
|
|
1290
|
+
}), t(this, W).forEach((i, e) => {
|
|
1292
1291
|
i.__ng.i = e;
|
|
1293
1292
|
});
|
|
1294
1293
|
}, "resetRecords"));
|
|
1295
|
-
|
|
1296
|
-
d(this,
|
|
1294
|
+
A(this, "getValidData", /* @__PURE__ */ h(() => (t(this, W).length === 0 && t(this, k).rawRecords.length > 0 && this.resetRecords(), t(this, W)), "getValidData"));
|
|
1295
|
+
d(this, ft, /* @__PURE__ */ h((i) => {
|
|
1297
1296
|
var o;
|
|
1298
1297
|
if (!i) return i;
|
|
1299
|
-
const e = !Array.isArray(i), s = e ? [i] : i, r = typeof ((o = t(this,
|
|
1300
|
-
const
|
|
1298
|
+
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) => {
|
|
1299
|
+
const c = {};
|
|
1301
1300
|
return r.forEach((l, f) => {
|
|
1302
|
-
|
|
1303
|
-
}),
|
|
1301
|
+
c[l] = a.v ? a.v[f] : a[l];
|
|
1302
|
+
}), c.__ng = a.__ng, c;
|
|
1304
1303
|
});
|
|
1305
1304
|
return e ? n[0] : n;
|
|
1306
1305
|
}, "#conv"));
|
|
1307
|
-
|
|
1308
|
-
y(this,
|
|
1306
|
+
A(this, "count", /* @__PURE__ */ h(() => this.getValidData().length, "count"));
|
|
1307
|
+
y(this, N, i), y(this, k, e), t(this, Qt).call(this);
|
|
1309
1308
|
}
|
|
1310
1309
|
get source() {
|
|
1311
|
-
return t(this,
|
|
1310
|
+
return t(this, ft).call(this, t(this, k).rawRecords);
|
|
1312
1311
|
}
|
|
1313
1312
|
set source(i) {
|
|
1314
1313
|
this.clear(), this.add(i, !1);
|
|
@@ -1317,31 +1316,31 @@ const z = class z {
|
|
|
1317
1316
|
return ++Ue(this, Jt)._;
|
|
1318
1317
|
}
|
|
1319
1318
|
get count() {
|
|
1320
|
-
return t(this,
|
|
1319
|
+
return t(this, W).length;
|
|
1321
1320
|
}
|
|
1322
1321
|
get length() {
|
|
1323
|
-
return t(this,
|
|
1322
|
+
return t(this, W).length;
|
|
1324
1323
|
}
|
|
1325
1324
|
getRowCount() {
|
|
1326
1325
|
return this.length;
|
|
1327
1326
|
}
|
|
1328
1327
|
};
|
|
1329
|
-
|
|
1330
|
-
|
|
1328
|
+
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"), // 🎯 행 상태 정의 상수를 클래스 내부로 내재화
|
|
1329
|
+
A(O, "ROW_STATE", {
|
|
1331
1330
|
EMPTY: "EMPTY",
|
|
1332
1331
|
NORMAL: "NORMAL",
|
|
1333
1332
|
INSERT: "INSERT",
|
|
1334
1333
|
UPDATE: "UPDATE",
|
|
1335
1334
|
DELETE: "DELETE"
|
|
1336
1335
|
});
|
|
1337
|
-
let ge =
|
|
1338
|
-
var
|
|
1336
|
+
let ge = O;
|
|
1337
|
+
var rt;
|
|
1339
1338
|
const Oe = class Oe {
|
|
1340
1339
|
constructor(i) {
|
|
1341
|
-
d(this,
|
|
1342
|
-
y(this,
|
|
1340
|
+
d(this, rt);
|
|
1341
|
+
y(this, rt, i), this.row = new ue(this), this.data = new ge(t(this, rt), this), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.pageCnt = 25, this.viewRecords.reset = () => {
|
|
1343
1342
|
var e;
|
|
1344
|
-
(e = t(this,
|
|
1343
|
+
(e = t(this, rt).view) != null && e.redraw && t(this, rt).view.redraw();
|
|
1345
1344
|
}, this.setDataSource = (e) => {
|
|
1346
1345
|
this.data && this.data.reset(), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.data.set(e || []);
|
|
1347
1346
|
}, this.getRowState = (e) => {
|
|
@@ -1356,28 +1355,28 @@ const Oe = class Oe {
|
|
|
1356
1355
|
}, this.setDataSource([]);
|
|
1357
1356
|
}
|
|
1358
1357
|
};
|
|
1359
|
-
|
|
1358
|
+
rt = new WeakMap(), h(Oe, "ngDataManager");
|
|
1360
1359
|
let be = Oe;
|
|
1361
|
-
var
|
|
1360
|
+
var ut, L, Lt, se;
|
|
1362
1361
|
const ze = class ze {
|
|
1363
1362
|
// 🎯 이제 { name: string, type: string } 객체들의 배열로 관리합니다.
|
|
1364
1363
|
constructor(i) {
|
|
1365
|
-
d(this,
|
|
1364
|
+
d(this, ut);
|
|
1366
1365
|
d(this, L, []);
|
|
1367
|
-
|
|
1366
|
+
A(this, "add", /* @__PURE__ */ h((i, e = "string") => {
|
|
1368
1367
|
i.forEach((s) => {
|
|
1369
1368
|
t(this, L).some((r) => r.name === s) || t(this, L).push({ name: s, type: e });
|
|
1370
1369
|
}), t(this, Lt).call(this);
|
|
1371
1370
|
}, "add"));
|
|
1372
|
-
d(this, Lt, /* @__PURE__ */
|
|
1371
|
+
d(this, Lt, /* @__PURE__ */ h(() => {
|
|
1373
1372
|
const i = /* @__PURE__ */ new Map();
|
|
1374
1373
|
t(this, L).forEach((e) => {
|
|
1375
1374
|
i.set(e.name, e.type);
|
|
1376
1375
|
}), 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);
|
|
1377
1376
|
}, "#adjust"));
|
|
1378
|
-
d(this, se, /* @__PURE__ */
|
|
1379
|
-
y(this, L, []), H.log(t(this,
|
|
1380
|
-
const i = Array.from(t(this,
|
|
1377
|
+
d(this, se, /* @__PURE__ */ h(() => {
|
|
1378
|
+
y(this, L, []), H.log(t(this, ut).querySelectorAll("table"));
|
|
1379
|
+
const i = Array.from(t(this, ut).querySelectorAll("table"));
|
|
1381
1380
|
if (!(!i || i.length === 0)) {
|
|
1382
1381
|
for (const e of i)
|
|
1383
1382
|
H.log(e), $("[data-bind]", e).each((s, r) => {
|
|
@@ -1397,9 +1396,9 @@ const ze = class ze {
|
|
|
1397
1396
|
}
|
|
1398
1397
|
o.split("data.").forEach((a) => {
|
|
1399
1398
|
if (a.trim() != "") {
|
|
1400
|
-
const
|
|
1399
|
+
const c = a.search(/[^_A-Za-z0-9]/g);
|
|
1401
1400
|
let l = "";
|
|
1402
|
-
|
|
1401
|
+
c >= 0 ? l = a.substring(0, c) : o.startsWith("data.") && (l = a.replace("data.", "")), l && t(this, L).push({ name: l, type: "string" });
|
|
1403
1402
|
}
|
|
1404
1403
|
});
|
|
1405
1404
|
});
|
|
@@ -1407,7 +1406,7 @@ const ze = class ze {
|
|
|
1407
1406
|
t(this, Lt).call(this);
|
|
1408
1407
|
}
|
|
1409
1408
|
}, "#init"));
|
|
1410
|
-
y(this,
|
|
1409
|
+
y(this, ut, i), t(this, se).call(this);
|
|
1411
1410
|
}
|
|
1412
1411
|
// 🎯 기존에 필드 이름만 쓰던 곳들과의 호환을 위해 이름 배열만 리턴하는 메서드 유지
|
|
1413
1412
|
get() {
|
|
@@ -1429,19 +1428,19 @@ const ze = class ze {
|
|
|
1429
1428
|
return t(this, L).some((e) => e.name === i);
|
|
1430
1429
|
}
|
|
1431
1430
|
};
|
|
1432
|
-
|
|
1431
|
+
ut = new WeakMap(), L = new WeakMap(), Lt = new WeakMap(), se = new WeakMap(), h(ze, "ngFields");
|
|
1433
1432
|
let ye = ze;
|
|
1434
|
-
var
|
|
1433
|
+
var nt, ie, re;
|
|
1435
1434
|
const Be = class Be extends HTMLElement {
|
|
1436
1435
|
constructor() {
|
|
1437
1436
|
super();
|
|
1438
1437
|
//#created = false;
|
|
1439
|
-
d(this,
|
|
1438
|
+
d(this, nt);
|
|
1440
1439
|
d(this, ie);
|
|
1441
|
-
d(this, re, /* @__PURE__ */
|
|
1440
|
+
d(this, re, /* @__PURE__ */ h(() => {
|
|
1442
1441
|
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 } }));
|
|
1443
1442
|
}, "#init"));
|
|
1444
|
-
this.attachShadow({ mode: "open" }), y(this,
|
|
1443
|
+
this.attachShadow({ mode: "open" }), y(this, nt, new be(this));
|
|
1445
1444
|
}
|
|
1446
1445
|
connectedCallback() {
|
|
1447
1446
|
t(this, re).call(this);
|
|
@@ -1451,18 +1450,18 @@ const Be = class Be extends HTMLElement {
|
|
|
1451
1450
|
}
|
|
1452
1451
|
// 🎯 외부에서 grid.data.set(...) 형태로 접근할 수 있도록 데이터 매니저 오픈
|
|
1453
1452
|
get data() {
|
|
1454
|
-
return t(this,
|
|
1453
|
+
return t(this, nt).data;
|
|
1455
1454
|
}
|
|
1456
1455
|
// 🎯 행(row) 관련 제어 접근자 오픈
|
|
1457
1456
|
get row() {
|
|
1458
|
-
return t(this,
|
|
1457
|
+
return t(this, nt).row;
|
|
1459
1458
|
}
|
|
1460
1459
|
// 🎯 전체 데이터 매니저 접근 필요할 경우
|
|
1461
1460
|
get dataManager() {
|
|
1462
|
-
return t(this,
|
|
1461
|
+
return t(this, nt);
|
|
1463
1462
|
}
|
|
1464
1463
|
};
|
|
1465
|
-
|
|
1464
|
+
nt = new WeakMap(), ie = new WeakMap(), re = new WeakMap(), h(Be, "NineTable");
|
|
1466
1465
|
let pe = Be;
|
|
1467
1466
|
customElements.get("nine-table") || customElements.define("nine-table", pe);
|
|
1468
1467
|
const mt = class mt extends HTMLElement {
|
|
@@ -1476,7 +1475,7 @@ const mt = class mt extends HTMLElement {
|
|
|
1476
1475
|
connectedCallback() {
|
|
1477
1476
|
}
|
|
1478
1477
|
};
|
|
1479
|
-
|
|
1478
|
+
h(mt, "BasicCellElement"), A(mt, "_styleCache", /* @__PURE__ */ new Map()), A(mt, "_customStyleCache", /* @__PURE__ */ new Map());
|
|
1480
1479
|
let me = mt;
|
|
1481
1480
|
var C, Ht, p, qe, Re, Te, ke, Ce;
|
|
1482
1481
|
const De = class De extends me {
|
|
@@ -1489,7 +1488,7 @@ const De = class De extends me {
|
|
|
1489
1488
|
d(this, Re);
|
|
1490
1489
|
d(this, Te);
|
|
1491
1490
|
d(this, ke);
|
|
1492
|
-
|
|
1491
|
+
A(this, "getDisplayText", /* @__PURE__ */ h((e) => {
|
|
1493
1492
|
if (t(this, p))
|
|
1494
1493
|
if (t(this, p).closest("tbody")) {
|
|
1495
1494
|
const s = t(this, p).closest("tr").data, r = parseInt(t(this, p).dataset.row);
|
|
@@ -1509,22 +1508,22 @@ const De = class De extends me {
|
|
|
1509
1508
|
} catch {
|
|
1510
1509
|
}
|
|
1511
1510
|
}, "getDisplayText"));
|
|
1512
|
-
d(this, Ce, /* @__PURE__ */
|
|
1511
|
+
d(this, Ce, /* @__PURE__ */ h(() => {
|
|
1513
1512
|
if (!(!t(this, C) || !t(this, C).template || !t(this, p).closest("tbody.bindable"))) {
|
|
1514
1513
|
var e = ninegrid.j.querySelectorAll(t(this, p)).attr("suppress");
|
|
1515
1514
|
if (e && (e = parseInt(e)), e && !isNaN(e)) {
|
|
1516
1515
|
var s = t(this, p).closest("tr"), r = [];
|
|
1517
|
-
$("th,td", s).each((
|
|
1518
|
-
var R = ninegrid.j.querySelectorAll(
|
|
1519
|
-
R &&
|
|
1516
|
+
$("th,td", s).each((v, I) => {
|
|
1517
|
+
var R = ninegrid.j.querySelectorAll(I).attr("suppress");
|
|
1518
|
+
R && I.dataset.row && (R = parseInt(R), !isNaN(R) && R <= e && r.push(R));
|
|
1520
1519
|
}), r.sort();
|
|
1521
1520
|
var n = !1;
|
|
1522
1521
|
if (parseInt(s.sectionRowIndex / t(this, C).template.length) > 0)
|
|
1523
1522
|
for (var o of r) {
|
|
1524
1523
|
if (o > e) break;
|
|
1525
|
-
var a = parseInt(t(this, p).dataset.row),
|
|
1524
|
+
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);
|
|
1526
1525
|
t(this, p).dataset.matrixRow;
|
|
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,
|
|
1526
|
+
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];
|
|
1528
1527
|
if (b != u) {
|
|
1529
1528
|
n = !0;
|
|
1530
1529
|
break;
|
|
@@ -1533,12 +1532,12 @@ const De = class De extends me {
|
|
|
1533
1532
|
else
|
|
1534
1533
|
n = !0;
|
|
1535
1534
|
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"));
|
|
1536
|
-
var
|
|
1537
|
-
$(
|
|
1535
|
+
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}"]`);
|
|
1536
|
+
$(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");
|
|
1538
1537
|
}
|
|
1539
1538
|
}
|
|
1540
1539
|
}, "#resetSuppress"));
|
|
1541
|
-
|
|
1540
|
+
A(this, "getExprValue", /* @__PURE__ */ h((e, s, r, n) => {
|
|
1542
1541
|
if (typeof e < "u")
|
|
1543
1542
|
try {
|
|
1544
1543
|
r = parseInt(r);
|
|
@@ -1574,7 +1573,7 @@ const De = class De extends me {
|
|
|
1574
1573
|
return parseInt(t(this, p).dataset.row), t(this, Ht).data[e];
|
|
1575
1574
|
}
|
|
1576
1575
|
};
|
|
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(),
|
|
1576
|
+
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");
|
|
1578
1577
|
let ve = De;
|
|
1579
1578
|
const Pe = class Pe extends ve {
|
|
1580
1579
|
constructor() {
|
|
@@ -1587,19 +1586,19 @@ const Pe = class Pe extends ve {
|
|
|
1587
1586
|
return super.refresh();
|
|
1588
1587
|
}
|
|
1589
1588
|
};
|
|
1590
|
-
|
|
1589
|
+
h(Pe, "EditableCellElement");
|
|
1591
1590
|
let xe = Pe;
|
|
1592
|
-
var Mt,
|
|
1591
|
+
var Mt, ot, gt, bt, ne, U, Le;
|
|
1593
1592
|
const je = class je extends xe {
|
|
1594
1593
|
constructor() {
|
|
1595
1594
|
super();
|
|
1596
1595
|
d(this, Mt);
|
|
1597
|
-
d(this,
|
|
1596
|
+
d(this, ot);
|
|
1597
|
+
d(this, gt);
|
|
1598
1598
|
d(this, bt);
|
|
1599
|
-
d(this, yt);
|
|
1600
1599
|
d(this, ne);
|
|
1601
|
-
d(this,
|
|
1602
|
-
|
|
1600
|
+
d(this, U);
|
|
1601
|
+
A(this, "refresh", /* @__PURE__ */ h(() => {
|
|
1603
1602
|
const e = super.refresh();
|
|
1604
1603
|
t(this, Mt).value = e;
|
|
1605
1604
|
}, "refresh"));
|
|
@@ -1633,22 +1632,22 @@ const je = class je extends xe {
|
|
|
1633
1632
|
if (!v) this.reset();
|
|
1634
1633
|
};
|
|
1635
1634
|
*/
|
|
1636
|
-
d(this, Le, /* @__PURE__ */
|
|
1635
|
+
d(this, Le, /* @__PURE__ */ h((e) => {
|
|
1637
1636
|
if (!["Escape", "Enter", "Tab", "Home", "End", "ArrowLeft", "ArrowRight", "PageUp", "PageDown", "Backspace", "Delete"].includes(e.code)) {
|
|
1638
|
-
if (t(this,
|
|
1637
|
+
if (t(this, ot) == "number") {
|
|
1639
1638
|
let n = [];
|
|
1640
|
-
if (t(this,
|
|
1639
|
+
if (t(this, U) && Number(t(this, U)) > 0 && n.push("."), t(this, bt) && Number(t(this, bt)) >= 0 && n.push("-"), !(e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && !n.includes(e.key) && e.preventDefault(), t(this, U) && (e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && e.target.selectionStart == e.target.selectionEnd) {
|
|
1641
1640
|
var s = e.target.value, r = s.indexOf(".");
|
|
1642
1641
|
if (r >= 0) {
|
|
1643
1642
|
var s = s.substr(r + 1, s.length);
|
|
1644
|
-
s.length >= Number(t(this,
|
|
1643
|
+
s.length >= Number(t(this, U)) && e.preventDefault();
|
|
1645
1644
|
}
|
|
1646
1645
|
}
|
|
1647
1646
|
}
|
|
1648
|
-
t(this,
|
|
1647
|
+
t(this, gt) && ninegrid.getByteLength(e.target.value) >= Number(t(this, gt)) && e.target.selectionStart == e.target.selectionEnd && e.preventDefault();
|
|
1649
1648
|
}
|
|
1650
1649
|
}, "#onKeyDown"));
|
|
1651
|
-
if (this.applyBaseStyle(), y(this,
|
|
1650
|
+
if (this.applyBaseStyle(), y(this, ot, this.getAttribute("type") || "text"), y(this, gt, this.getAttribute("maxbyte")), y(this, bt, this.getAttribute("min")), y(this, ne, this.getAttribute("max")), y(this, U, this.getAttribute("scale")), !["text", "number"].includes(t(this, ot))) throw `invalid type : ${t(this, ot)}`;
|
|
1652
1651
|
}
|
|
1653
1652
|
connectedCallback() {
|
|
1654
1653
|
for (var e = [], s = 0; s < this.attributes.length; s++)
|
|
@@ -1661,7 +1660,7 @@ const je = class je extends xe {
|
|
|
1661
1660
|
`, super.connectedCallback(), y(this, Mt, this.querySelector("input"));
|
|
1662
1661
|
}
|
|
1663
1662
|
};
|
|
1664
|
-
Mt = new WeakMap(),
|
|
1663
|
+
Mt = new WeakMap(), ot = new WeakMap(), gt = new WeakMap(), bt = new WeakMap(), ne = new WeakMap(), U = new WeakMap(), Le = new WeakMap(), h(je, "CellInputText");
|
|
1665
1664
|
let we = je;
|
|
1666
1665
|
customElements.get("cell-input-text");
|
|
1667
1666
|
customElements.get("cell-input") || customElements.define("cell-input", we);
|