@ninebone/table 0.0.545 → 0.0.547

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.
@@ -2,16 +2,16 @@ var Fe = Object.defineProperty;
2
2
  var Ve = (R) => {
3
3
  throw TypeError(R);
4
4
  };
5
- var Xe = (R, i, e) => i in R ? Fe(R, i, { enumerable: !0, configurable: !0, writable: !0, value: e }) : R[i] = e;
6
- var h = (R, i) => Fe(R, "name", { value: i, configurable: !0 });
7
- var E = (R, i, e) => Xe(R, typeof i != "symbol" ? i + "" : i, e), Ye = (R, i, e) => i.has(R) || Ve("Cannot " + e);
8
- var t = (R, i, e) => (Ye(R, i, "read from private field"), e ? e.call(R) : i.get(R)), d = (R, i, e) => i.has(R) ? Ve("Cannot add the same private member more than once") : i instanceof WeakSet ? i.add(R) : i.set(R, e), y = (R, i, e, s) => (Ye(R, i, "write to private field"), s ? s.call(R, e) : i.set(R, e), e);
9
- var Ue = (R, i, e, s) => ({
10
- set _(r) {
11
- y(R, i, r, e);
5
+ var Xe = (R, r, e) => r in R ? Fe(R, r, { enumerable: !0, configurable: !0, writable: !0, value: e }) : R[r] = e;
6
+ var h = (R, r) => Fe(R, "name", { value: r, configurable: !0 });
7
+ var E = (R, r, e) => Xe(R, typeof r != "symbol" ? r + "" : r, e), Ye = (R, r, e) => r.has(R) || Ve("Cannot " + e);
8
+ var t = (R, r, e) => (Ye(R, r, "read from private field"), e ? e.call(R) : r.get(R)), d = (R, r, e) => r.has(R) ? Ve("Cannot add the same private member more than once") : r instanceof WeakSet ? r.add(R) : r.set(R, e), y = (R, r, e, s) => (Ye(R, r, "write to private field"), s ? s.call(R, e) : r.set(R, e), e);
9
+ var Ue = (R, r, e, s) => ({
10
+ set _(i) {
11
+ y(R, r, i, e);
12
12
  },
13
13
  get _() {
14
- return t(R, i, s);
14
+ return t(R, r, s);
15
15
  }
16
16
  });
17
17
  import { trace as Ke } from "@ninebone/util";
@@ -21,9 +21,9 @@ const He = class He extends Ke.constructor {
21
21
  }
22
22
  };
23
23
  h(He, "Trace");
24
- let ae = He;
25
- const N = new ae();
26
- var z, j, w, X, K, Z, _t, G, Nt;
24
+ let oe = He;
25
+ const N = new oe();
26
+ var z, j, w, X, K, Z, It, G, _t;
27
27
  const Me = class Me extends HTMLElement {
28
28
  constructor() {
29
29
  super();
@@ -33,7 +33,7 @@ const Me = class Me extends HTMLElement {
33
33
  d(this, X);
34
34
  d(this, K);
35
35
  d(this, Z);
36
- d(this, _t, /* @__PURE__ */ h(() => {
36
+ d(this, It, /* @__PURE__ */ h(() => {
37
37
  if (!t(this, z)) return;
38
38
  const e = t(this, z).querySelector(".ng-container-body .ng-part-body");
39
39
  e && (y(this, Z, new ResizeObserver(() => {
@@ -44,14 +44,14 @@ const Me = class Me extends HTMLElement {
44
44
  if (!t(this, z) || !t(this, w) || t(this, j)) return;
45
45
  const e = t(this, w).container, s = e.querySelector("table");
46
46
  if (!s) return;
47
- const r = t(this, w).track, n = t(this, w).thumb, a = t(this, z).querySelector(".ng-container-bottom"), o = e.clientWidth, c = s.scrollWidth;
47
+ const i = t(this, w).track, n = t(this, w).thumb, a = t(this, z).querySelector(".ng-container-bottom"), o = e.clientWidth, c = s.scrollWidth;
48
48
  if (o !== 0 && c > o)
49
49
  a && (a.style.display = "flex");
50
50
  else {
51
51
  a && (a.style.display = "none");
52
52
  return;
53
53
  }
54
- const l = r.clientWidth;
54
+ const l = i.clientWidth;
55
55
  if (l <= 0) return;
56
56
  const f = Math.max(Math.min(l * (o / c), l), 20);
57
57
  n.style.width = `${f}px`;
@@ -63,43 +63,43 @@ const Me = class Me extends HTMLElement {
63
63
  }, "refresh"));
64
64
  d(this, G, /* @__PURE__ */ h((e) => {
65
65
  if (!t(this, w)) return !1;
66
- const s = t(this, w).container, r = s.querySelector("table");
67
- if (!r) return !1;
66
+ const s = t(this, w).container, i = s.querySelector("table");
67
+ if (!i) return !1;
68
68
  const n = t(this, w).track.getBoundingClientRect(), a = t(this, w).thumb.clientWidth;
69
69
  let o = e;
70
70
  o < 0 && (o = 0);
71
71
  const c = n.width - a;
72
72
  o > c && (o = c), o = parseInt(o, 10), t(this, w).thumb.style.left = `${o}px`, t(this, w).left.disabled = o === 0, t(this, w).right.disabled = o >= c - 1;
73
- const l = s.clientWidth, u = r.scrollWidth - l;
73
+ const l = s.clientWidth, u = i.scrollWidth - l;
74
74
  return c > 0 && u > 0 && (s.scrollLeft = o / c * u), o > 0 && o < c - 1;
75
75
  }, "#thumbMoveTo"));
76
- d(this, Nt, /* @__PURE__ */ h(() => {
77
- const e = /* @__PURE__ */ h((r) => {
76
+ d(this, _t, /* @__PURE__ */ h(() => {
77
+ const e = /* @__PURE__ */ h((i) => {
78
78
  clearInterval(t(this, X)), clearInterval(t(this, K));
79
79
  const n = parseInt(t(this, w).thumb.style.left || 0, 10);
80
- t(this, G).call(this, n + r), y(this, X, setInterval(() => {
80
+ t(this, G).call(this, n + i), y(this, X, setInterval(() => {
81
81
  clearInterval(t(this, X)), y(this, K, setInterval(() => {
82
82
  const a = parseInt(t(this, w).thumb.style.left || 0, 10);
83
- t(this, G).call(this, a + r) || clearInterval(t(this, K));
83
+ t(this, G).call(this, a + i) || clearInterval(t(this, K));
84
84
  }, 50));
85
85
  }, 500));
86
86
  }, "delayScroll"), s = /* @__PURE__ */ h(() => {
87
87
  clearInterval(t(this, X)), clearInterval(t(this, K));
88
88
  }, "clearTimer");
89
- ["mouseup", "mouseleave", "touchend"].forEach((r) => {
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
- r.button === 0 && e(-20);
93
- }), t(this, w).right.addEventListener("mousedown", (r) => {
94
- r.button === 0 && e(20);
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
- if (r.button !== 0) return;
97
- r.preventDefault();
89
+ ["mouseup", "mouseleave", "touchend"].forEach((i) => {
90
+ t(this, w).left.addEventListener(i, s), t(this, w).right.addEventListener(i, s), t(this, w).track.addEventListener(i, s);
91
+ }), t(this, w).left.addEventListener("mousedown", (i) => {
92
+ i.button === 0 && e(-20);
93
+ }), t(this, w).right.addEventListener("mousedown", (i) => {
94
+ i.button === 0 && e(20);
95
+ }), t(this, w).left.addEventListener("touchstart", () => e(-20)), t(this, w).right.addEventListener("touchstart", () => e(20)), t(this, w).track.addEventListener("mousedown", (i) => {
96
+ if (i.button !== 0) return;
97
+ i.preventDefault();
98
98
  const n = t(this, w).track.getBoundingClientRect(), a = t(this, w).thumb.clientWidth;
99
- t(this, G).call(this, r.clientX - n.left - a / 2);
100
- }), t(this, w).thumb.addEventListener("mousedown", (r) => {
101
- if (r.button !== 0) return;
102
- r.stopPropagation(), r.preventDefault(), y(this, j, !0), this.shiftX = r.clientX - t(this, w).thumb.getBoundingClientRect().left;
99
+ t(this, G).call(this, i.clientX - n.left - a / 2);
100
+ }), t(this, w).thumb.addEventListener("mousedown", (i) => {
101
+ if (i.button !== 0) return;
102
+ i.stopPropagation(), i.preventDefault(), y(this, j, !0), this.shiftX = i.clientX - t(this, w).thumb.getBoundingClientRect().left;
103
103
  const n = /* @__PURE__ */ h((o) => {
104
104
  if (!t(this, j)) return;
105
105
  const c = t(this, w).track.getBoundingClientRect();
@@ -190,7 +190,7 @@ const Me = class Me extends HTMLElement {
190
190
  right: this.querySelector(".ng-scroll-right")
191
191
  }), s.addEventListener("scroll", () => {
192
192
  t(this, j) || this.refresh();
193
- }), t(this, Nt).call(this), t(this, _t).call(this), this.refresh();
193
+ }), t(this, _t).call(this), t(this, It).call(this), this.refresh();
194
194
  }, "initWhenReady");
195
195
  e();
196
196
  }
@@ -198,10 +198,10 @@ const Me = class Me extends HTMLElement {
198
198
  t(this, Z) && t(this, Z).disconnect();
199
199
  }
200
200
  };
201
- z = new WeakMap(), j = new WeakMap(), w = new WeakMap(), X = new WeakMap(), K = new WeakMap(), Z = new WeakMap(), _t = new WeakMap(), G = new WeakMap(), Nt = new WeakMap(), h(Me, "NineTableHScrollBar");
202
- let le = Me;
203
- customElements.get("nine-table-hscrollbar") || customElements.define("nine-table-hscrollbar", le);
204
- var F, at, J, q, vt, wt, Wt;
201
+ z = new WeakMap(), j = new WeakMap(), w = new WeakMap(), X = new WeakMap(), K = new WeakMap(), Z = new WeakMap(), It = new WeakMap(), G = new WeakMap(), _t = new WeakMap(), h(Me, "NineTableHScrollBar");
202
+ let ae = Me;
203
+ customElements.get("nine-table-hscrollbar") || customElements.define("nine-table-hscrollbar", ae);
204
+ var F, at, J, q, xt, vt, Nt;
205
205
  const $e = class $e extends HTMLElement {
206
206
  constructor() {
207
207
  super();
@@ -209,27 +209,27 @@ const $e = class $e extends HTMLElement {
209
209
  d(this, at);
210
210
  d(this, J, !1);
211
211
  d(this, q);
212
+ d(this, xt, 0);
212
213
  d(this, vt, 0);
213
- d(this, wt, 0);
214
214
  E(this, "refresh", /* @__PURE__ */ h(() => {
215
215
  if (!t(this, F) || !t(this, q)) return;
216
- const e = t(this, q).container, s = t(this, q).track, r = t(this, q).thumb, n = e.clientHeight, o = (t(this, F).data.get() || []).length, c = t(this, at).getRowHeight(), l = o * c;
216
+ const e = t(this, q).container, s = t(this, q).track, i = t(this, q).thumb, n = e.clientHeight, o = (t(this, F).data.get() || []).length, c = t(this, at).getRowHeight(), l = o * c;
217
217
  if (l <= n) {
218
- r.style.display = "none", t(this, q).top.disabled = !0, t(this, q).bottom.disabled = !0;
218
+ i.style.display = "none", t(this, q).top.disabled = !0, t(this, q).bottom.disabled = !0;
219
219
  return;
220
220
  } else
221
- r.style.display = "block";
221
+ i.style.display = "block";
222
222
  const f = s.clientHeight;
223
223
  if (f <= 0) return;
224
224
  const u = Math.max(Math.min(f * (n / l), f), 20);
225
- r.style.height = `${u}px`;
225
+ i.style.height = `${u}px`;
226
226
  const g = e.scrollTop, b = Math.max(l - n, 1);
227
227
  let x = 0;
228
228
  b > 0 && (x = g / b * (f - u));
229
229
  const v = f - u;
230
- x < 0 && (x = 0), x > v && (x = v), r.style.top = `${x}px`, t(this, q).top.disabled = g <= 0, t(this, q).bottom.disabled = g >= b - 1;
230
+ x < 0 && (x = 0), x > v && (x = v), i.style.top = `${x}px`, t(this, q).top.disabled = g <= 0, t(this, q).bottom.disabled = g >= b - 1;
231
231
  }, "refresh"));
232
- d(this, Wt, /* @__PURE__ */ h(() => {
232
+ d(this, Nt, /* @__PURE__ */ h(() => {
233
233
  N.log("nine-table-vscrollbar.#init");
234
234
  const e = t(this, q).container, s = /* @__PURE__ */ h(() => {
235
235
  const n = (t(this, F).data.get() || []).length, a = t(this, at).getRowHeight();
@@ -237,15 +237,15 @@ const $e = class $e extends HTMLElement {
237
237
  }, "getContentHeight");
238
238
  e.addEventListener("scroll", () => {
239
239
  t(this, J) || this.refresh();
240
- }), t(this, q).thumb.addEventListener("mousedown", (r) => {
241
- if (r.button !== 0) return;
242
- r.stopPropagation(), r.preventDefault(), y(this, J, !0), y(this, vt, r.clientY), y(this, wt, e.scrollTop);
240
+ }), t(this, q).thumb.addEventListener("mousedown", (i) => {
241
+ if (i.button !== 0) return;
242
+ i.stopPropagation(), i.preventDefault(), y(this, J, !0), y(this, xt, i.clientY), y(this, vt, e.scrollTop);
243
243
  const n = /* @__PURE__ */ h((o) => {
244
244
  if (!t(this, J)) return;
245
- const c = t(this, q).track.getBoundingClientRect(), l = t(this, q).thumb.clientHeight, u = c.height - l, g = o.clientY - t(this, vt), b = e.clientHeight, x = s(), v = Math.max(x - b, 1);
245
+ const c = t(this, q).track.getBoundingClientRect(), l = t(this, q).thumb.clientHeight, u = c.height - l, g = o.clientY - t(this, xt), b = e.clientHeight, x = s(), v = Math.max(x - b, 1);
246
246
  if (u > 0 && v > 0) {
247
247
  const A = g / u * v;
248
- let m = t(this, wt) + A;
248
+ let m = t(this, vt) + A;
249
249
  const W = Math.max(0, x - b);
250
250
  m < 0 && (m = 0), m > W && (m = W), e.scrollTop = m;
251
251
  }
@@ -254,9 +254,9 @@ const $e = class $e extends HTMLElement {
254
254
  y(this, J, !1), document.removeEventListener("mousemove", n), document.removeEventListener("mouseup", a), this.refresh();
255
255
  }, "onMouseUp");
256
256
  document.addEventListener("mousemove", n), document.addEventListener("mouseup", a);
257
- }), t(this, q).track.addEventListener("mousedown", (r) => {
258
- if (r.button !== 0 || r.target === t(this, q).thumb) return;
259
- const n = t(this, q).track.getBoundingClientRect(), a = t(this, q).thumb.clientHeight, o = r.clientY - n.top - a / 2, l = n.height - a, f = e.clientHeight, u = s(), g = Math.max(u - f, 1);
257
+ }), t(this, q).track.addEventListener("mousedown", (i) => {
258
+ if (i.button !== 0 || i.target === t(this, q).thumb) return;
259
+ const n = t(this, q).track.getBoundingClientRect(), a = t(this, q).thumb.clientHeight, o = i.clientY - n.top - a / 2, l = n.height - a, f = e.clientHeight, u = s(), g = Math.max(u - f, 1);
260
260
  if (l > 0 && g > 0) {
261
261
  const b = Math.max(0, Math.min(1, o / l));
262
262
  e.scrollTop = b * g;
@@ -346,17 +346,17 @@ const $e = class $e extends HTMLElement {
346
346
  thumb: this.querySelector(".ng-scroll-thumb"),
347
347
  top: this.querySelector(".ng-scroll-top"),
348
348
  bottom: this.querySelector(".ng-scroll-bottom")
349
- }), t(this, Wt).call(this), this.refresh();
349
+ }), t(this, Nt).call(this), this.refresh();
350
350
  }, "initWhenReady");
351
351
  e();
352
352
  }
353
353
  };
354
- F = new WeakMap(), at = new WeakMap(), J = new WeakMap(), q = new WeakMap(), vt = new WeakMap(), wt = new WeakMap(), Wt = new WeakMap(), h($e, "NineTableVScrollBar");
355
- let ce = $e;
356
- customElements.get("nine-table-vscrollbar") || customElements.define("nine-table-vscrollbar", ce);
357
- var D, S, Q, P, H, V, tt, St, Ee, lt, Ot, Bt, zt, Et, At, Pt, Dt, Rt, Ae, ct, qt, jt;
354
+ F = new WeakMap(), at = new WeakMap(), J = new WeakMap(), q = new WeakMap(), xt = new WeakMap(), vt = new WeakMap(), Nt = new WeakMap(), h($e, "NineTableVScrollBar");
355
+ let le = $e;
356
+ customElements.get("nine-table-vscrollbar") || customElements.define("nine-table-vscrollbar", le);
357
+ var D, S, Q, P, H, V, tt, wt, Se, Ee, Wt, Ot, Bt, St, Et, zt, Pt, At, Ae, lt, Rt, Dt;
358
358
  const Ie = class Ie {
359
- constructor(i) {
359
+ constructor(r) {
360
360
  d(this, D);
361
361
  d(this, S);
362
362
  d(this, Q);
@@ -364,15 +364,15 @@ const Ie = class Ie {
364
364
  d(this, H, null);
365
365
  d(this, V, null);
366
366
  d(this, tt, 0);
367
- d(this, St, 40);
367
+ d(this, wt, 40);
368
+ d(this, Se, !1);
368
369
  d(this, Ee, !1);
369
- d(this, lt, !1);
370
- d(this, Ot, 3);
370
+ d(this, Wt, 3);
371
371
  E(this, "refresh", /* @__PURE__ */ h(() => {
372
372
  var e;
373
373
  N.log("rowManager.refresh");
374
- const i = t(this, S).querySelector(".ng-container-body .ng-part-body");
375
- i && (t(this, Et).call(this), t(this, ct).call(this, i.scrollTop), (e = t(this, S).querySelector("nine-table-vscrollbar")) == null || e.refresh());
374
+ const r = t(this, S).querySelector(".ng-container-body .ng-part-body");
375
+ r && (t(this, St).call(this), t(this, lt).call(this, r.scrollTop), (e = t(this, S).querySelector("nine-table-vscrollbar")) == null || e.refresh());
376
376
  }, "refresh"));
377
377
  E(this, "initialize", /* @__PURE__ */ h(() => {
378
378
  N.log("rowManager.initialize"), y(this, Q, {
@@ -388,79 +388,69 @@ const Ie = class Ie {
388
388
  const u = Array.from(l.querySelectorAll("tr")).map((g) => g.cloneNode(!0));
389
389
  t(this, P).set(a, u);
390
390
  });
391
- 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");
392
- if (i) {
393
- t(this, zt).call(this, i), t(this, Rt).call(this), t(this, Et).call(this), t(this, ct).call(this, i.scrollTop);
394
- let a = !1;
395
- const o = /* @__PURE__ */ h((c, l, f) => {
396
- var u;
397
- a || (a = !0, i && i.scrollTop !== c && (i.scrollTop = c), e && e.scrollTop !== c && (e.scrollTop = c), s && s.scrollTop !== c && (s.scrollTop = c), r && r.scrollLeft !== l && (r.scrollLeft = l), n && n.scrollLeft !== l && (n.scrollLeft = l), t(this, ct).call(this, c), (u = t(this, S).querySelector("nine-table-vscrollbar")) == null || u.refresh(), a = !1);
398
- }, "syncScroll");
399
- [i, e, s].forEach((c) => {
400
- c && c.addEventListener("scroll", () => {
401
- t(this, lt) || (y(this, lt, !0), requestAnimationFrame(() => {
402
- o(c.scrollTop, c.scrollLeft), y(this, lt, !1);
403
- }));
404
- });
405
- });
406
- }
391
+ const r = 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"), i = t(this, S).querySelector(".ng-container-body .ng-part-header"), n = t(this, S).querySelector(".ng-container-body .ng-part-footer");
392
+ r && (t(this, Bt).call(this, r), t(this, At).call(this), t(this, St).call(this), t(this, lt).call(this, r.scrollTop), r.addEventListener("scroll", () => {
393
+ var c;
394
+ const a = r.scrollTop, o = r.scrollLeft;
395
+ e && (e.scrollTop = a), s && (s.scrollTop = a), i && (i.scrollLeft = o), n && (n.scrollLeft = o), t(this, lt).call(this, a), (c = t(this, S).querySelector("nine-table-vscrollbar")) == null || c.refresh();
396
+ }));
407
397
  }, "initialize"));
408
- d(this, Bt, /* @__PURE__ */ h((i, e) => {
398
+ d(this, Ot, /* @__PURE__ */ h((r, e) => {
409
399
  N.log("rowManager.#renderRows");
410
400
  const s = t(this, P).get(e);
411
401
  if (!s || s.length === 0) return;
412
- const r = i.querySelector(".ng-part-body tbody.bindable-tbody");
413
- if (!r) return;
414
- r.querySelectorAll("tr:not(.nodata)").forEach((o) => o.remove());
415
- const n = r.querySelector("tr.nodata"), a = document.createDocumentFragment();
416
- for (let o = 0; o < t(this, St); o++)
402
+ const i = r.querySelector(".ng-part-body tbody.bindable-tbody");
403
+ if (!i) return;
404
+ i.querySelectorAll("tr:not(.nodata)").forEach((o) => o.remove());
405
+ const n = i.querySelector("tr.nodata"), a = document.createDocumentFragment();
406
+ for (let o = 0; o < t(this, wt); o++)
417
407
  s.forEach((c) => {
418
408
  a.appendChild(c.cloneNode(!0));
419
409
  });
420
- n ? n.before(a) : r.appendChild(a), e === ".ng-container-body" && (t(this, Q).firstTr = r.querySelector("tr:not(.nodata)"));
410
+ n ? n.before(a) : i.appendChild(a), e === ".ng-container-body" && (t(this, Q).firstTr = i.querySelector("tr:not(.nodata)"));
421
411
  }, "#renderRows"));
422
- d(this, zt, /* @__PURE__ */ h((i) => {
412
+ d(this, Bt, /* @__PURE__ */ h((r) => {
423
413
  if (N.log("rowManager.#measureAndCacheHeight"), t(this, H) !== null && t(this, H) > 0)
424
414
  return t(this, H);
425
415
  N.log("#measureAndCacheHeight");
426
416
  const e = t(this, P).get(".ng-container-body");
427
417
  if (!e || e.length === 0) return 24;
428
- const s = i.querySelector("tbody.bindable-tbody");
418
+ const s = r.querySelector("tbody.bindable-tbody");
429
419
  if (!s) return 24;
430
420
  s.querySelectorAll("tr:not(.nodata)").forEach((g) => g.remove());
431
- const r = s.querySelector("tr.nodata"), n = document.createDocumentFragment();
421
+ const i = s.querySelector("tr.nodata"), n = document.createDocumentFragment();
432
422
  e.forEach((g) => {
433
423
  n.appendChild(g.cloneNode(!0));
434
- }), r ? r.before(n) : s.appendChild(n);
424
+ }), i ? i.before(n) : s.appendChild(n);
435
425
  const a = t(this, S), o = a.style.display, c = a.style.visibility, l = a.style.position;
436
426
  (o === "none" || window.getComputedStyle(a).display === "none") && (a.style.display = "block", a.style.visibility = "hidden", a.style.position = "absolute");
437
427
  let f = 0;
438
428
  const u = s.querySelectorAll("tr:not(.nodata)");
439
429
  return u.forEach((g) => {
440
430
  f += g.offsetHeight || g.getBoundingClientRect().height;
441
- }), u.forEach((g) => g.remove()), a.style.display = o, a.style.visibility = c, a.style.position = l, y(this, H, f > 0 ? f : 24), t(this, At).call(this), t(this, H);
431
+ }), u.forEach((g) => g.remove()), a.style.display = o, a.style.visibility = c, a.style.position = l, y(this, H, f > 0 ? f : 24), t(this, Et).call(this), t(this, H);
442
432
  }, "#measureAndCacheHeight"));
443
- d(this, Et, /* @__PURE__ */ h(() => {
433
+ d(this, St, /* @__PURE__ */ h(() => {
444
434
  N.log("rowManager.#updateVirtualScrollHeight");
445
- const e = (t(this, D).data.get() || []).length, s = t(this, H), r = e * s;
435
+ const e = (t(this, D).data.get() || []).length, s = t(this, H), i = e * s;
446
436
  [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((n) => {
447
437
  const a = t(this, S).querySelector(n);
448
438
  if (!a) return;
449
439
  const o = a.querySelector(".ng-part-body .ng-virtual-spacer");
450
- o && (o.style.height = `${r}px`);
440
+ o && (o.style.height = `${i}px`);
451
441
  });
452
442
  }, "#updateVirtualScrollHeight"));
453
- d(this, At, /* @__PURE__ */ h(() => {
443
+ d(this, Et, /* @__PURE__ */ h(() => {
454
444
  if (t(this, tt) > 0 && t(this, H) > 0) {
455
- const i = Math.ceil(t(this, tt) / t(this, H));
456
- y(this, St, i + t(this, Ot));
445
+ const r = Math.ceil(t(this, tt) / t(this, H));
446
+ y(this, wt, r + t(this, Wt));
457
447
  }
458
448
  }, "#updateRowCount"));
459
- d(this, Pt, /* @__PURE__ */ h(() => {
449
+ d(this, zt, /* @__PURE__ */ h(() => {
460
450
  var o, c, l, f, u, g;
461
- 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");
451
+ const r = 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");
462
452
  if (e) {
463
- const b = i ? Array.from(i.querySelectorAll("tbody tr")) : [], x = Array.from(e.querySelectorAll("tbody tr")), v = s ? Array.from(s.querySelectorAll("tbody tr")) : [], A = Math.max(b.length, x.length, v.length);
453
+ const b = r ? Array.from(r.querySelectorAll("tbody tr")) : [], x = Array.from(e.querySelectorAll("tbody tr")), v = s ? Array.from(s.querySelectorAll("tbody tr")) : [], A = Math.max(b.length, x.length, v.length);
464
454
  for (let m = 0; m < A; m++) {
465
455
  const W = [
466
456
  ((o = b[m]) == null ? void 0 : o.getBoundingClientRect().height) || 0,
@@ -470,9 +460,9 @@ const Ie = class Ie {
470
460
  C > 0 && (b[m] && (b[m].style.height = `${C}px`), x[m] && (x[m].style.height = `${C}px`), v[m] && (v[m].style.height = `${C}px`));
471
461
  }
472
462
  }
473
- 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"), a = t(this, S).querySelector(".ng-container-right .ng-part-footer table");
463
+ const i = t(this, S).querySelector(".ng-container-left .ng-part-footer table"), n = t(this, S).querySelector(".ng-container-body .ng-part-footer table"), a = t(this, S).querySelector(".ng-container-right .ng-part-footer table");
474
464
  if (n) {
475
- const b = r ? Array.from(r.querySelectorAll("tfoot tr")) : [], x = Array.from(n.querySelectorAll("tfoot tr")), v = a ? Array.from(a.querySelectorAll("tfoot tr")) : [], A = Math.max(b.length, x.length, v.length);
465
+ const b = i ? Array.from(i.querySelectorAll("tfoot tr")) : [], x = Array.from(n.querySelectorAll("tfoot tr")), v = a ? Array.from(a.querySelectorAll("tfoot tr")) : [], A = Math.max(b.length, x.length, v.length);
476
466
  for (let m = 0; m < A; m++) {
477
467
  const W = [
478
468
  ((f = b[m]) == null ? void 0 : f.getBoundingClientRect().height) || 0,
@@ -483,67 +473,67 @@ const Ie = class Ie {
483
473
  }
484
474
  }
485
475
  }, "#syncRowHeights"));
486
- d(this, Dt, /* @__PURE__ */ h(() => {
487
- !t(this, S) || !(t(this, S) instanceof HTMLElement) || (y(this, V, new ResizeObserver((i) => {
488
- for (const e of i) {
476
+ d(this, Pt, /* @__PURE__ */ h(() => {
477
+ !t(this, S) || !(t(this, S) instanceof HTMLElement) || (y(this, V, new ResizeObserver((r) => {
478
+ for (const e of r) {
489
479
  const s = e.target;
490
480
  if (!s.classList.contains("active")) continue;
491
- const r = e.contentRect.height;
492
- if (r > 0) {
481
+ const i = e.contentRect.height;
482
+ if (i > 0) {
493
483
  let n = 0;
494
484
  const a = s.querySelector(".ng-part-header"), o = s.querySelector(".ng-part-footer");
495
485
  a && (n += a.offsetHeight), o && (n += o.offsetHeight);
496
- const c = Math.max(r - n, 100);
497
- t(this, tt) !== c && (y(this, tt, c), t(this, At).call(this), t(this, H) !== null && (t(this, Rt).call(this), this.refresh()));
486
+ const c = Math.max(i - n, 100);
487
+ t(this, tt) !== c && (y(this, tt, c), t(this, Et).call(this), t(this, H) !== null && (t(this, At).call(this), this.refresh()));
498
488
  }
499
489
  }
500
490
  })), t(this, V).observe(t(this, S)));
501
491
  }, "#initResizeObserver"));
502
- d(this, Rt, /* @__PURE__ */ h(() => {
503
- N.log("rowManager.#renderAllContainers"), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((i) => {
504
- const e = t(this, S).querySelector(i);
505
- e && e.querySelector(".ng-part-body tbody.bindable-tbody") && t(this, Bt).call(this, e, i);
506
- }), t(this, jt).call(this), t(this, Pt).call(this);
492
+ d(this, At, /* @__PURE__ */ h(() => {
493
+ N.log("rowManager.#renderAllContainers"), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((r) => {
494
+ const e = t(this, S).querySelector(r);
495
+ e && e.querySelector(".ng-part-body tbody.bindable-tbody") && t(this, Ot).call(this, e, r);
496
+ }), t(this, Dt).call(this), t(this, zt).call(this);
507
497
  }, "#renderAllContainers"));
508
- d(this, Ae, /* @__PURE__ */ h((i) => {
498
+ d(this, Ae, /* @__PURE__ */ h((r) => {
509
499
  [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((e) => {
510
500
  var l;
511
501
  const s = t(this, S).querySelector(e);
512
502
  if (!s) return;
513
- const r = s.querySelector(".ng-part-body tbody.bindable-tbody");
514
- if (!r) return;
515
- const n = Array.from(r.querySelectorAll("tr:not(.nodata)")), a = ((l = t(this, P).get(e)) == null ? void 0 : l.length) || 1, c = (t(this, D).data.get() || []).length;
503
+ const i = s.querySelector(".ng-part-body tbody.bindable-tbody");
504
+ if (!i) return;
505
+ const n = Array.from(i.querySelectorAll("tr:not(.nodata)")), a = ((l = t(this, P).get(e)) == null ? void 0 : l.length) || 1, c = (t(this, D).data.get() || []).length;
516
506
  n.forEach((f, u) => {
517
- const g = i + Math.floor(u / a);
507
+ const g = r + Math.floor(u / a);
518
508
  if (g >= c) {
519
509
  f.style.display = "none";
520
510
  return;
521
511
  }
522
512
  const b = t(this, D).data.get(g);
523
- f.style.display = "", t(this, qt).call(this, f, b, g);
513
+ f.style.display = "", t(this, Rt).call(this, f, b, g);
524
514
  });
525
515
  });
526
516
  }, "#adjustBufferRows"));
527
- d(this, ct, /* @__PURE__ */ h((i) => {
517
+ d(this, lt, /* @__PURE__ */ h((r) => {
528
518
  var l, f;
529
519
  const e = t(this, H);
530
520
  if (!e || e <= 0) return;
531
- const s = t(this, D).data.length, r = Math.max(0, Math.floor(i / e)), n = r * e, a = ((l = t(this, P).get(".ng-container-body")) == null ? void 0 : l.length) || 1, o = t(this, Q).firstTr, c = o && o.dataset.row !== void 0 ? parseInt(o.dataset.row, 10) : -1;
521
+ const s = t(this, D).data.length, i = Math.max(0, Math.floor(r / e)), n = i * e, a = ((l = t(this, P).get(".ng-container-body")) == null ? void 0 : l.length) || 1, o = t(this, Q).firstTr, c = o && o.dataset.row !== void 0 ? parseInt(o.dataset.row, 10) : -1;
532
522
  (f = t(this, Q)) == null || f.scrollTables.forEach((u) => {
533
523
  u.style.transform = `translate3d(0, ${n}px, 0)`;
534
- }), c !== r && [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((u) => {
524
+ }), c !== i && [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((u) => {
535
525
  const g = t(this, S).querySelector(u);
536
526
  if (!g) return;
537
527
  const b = g.querySelector(".ng-part-body tbody.bindable-tbody");
538
528
  if (!b) return;
539
529
  Array.from(b.querySelectorAll("tr:not(.nodata)")).forEach((v, A) => {
540
- const m = r + Math.floor(A / a);
530
+ const m = i + Math.floor(A / a);
541
531
  if (m >= s) {
542
532
  v.style.display = "none";
543
533
  return;
544
534
  }
545
535
  const W = t(this, D).data.get(m);
546
- v.style.display = "", t(this, qt).call(this, v, W, m);
536
+ v.style.display = "", t(this, Rt).call(this, v, W, m);
547
537
  });
548
538
  });
549
539
  }, "#handleScroll"));
@@ -561,55 +551,55 @@ const Ie = class Ie {
561
551
  cell.dataset.row = dataIndex;
562
552
  });
563
553
  }; */
564
- d(this, qt, /* @__PURE__ */ h((i, e, s) => {
565
- i.dataset.row = s, i.data = e, Array.from(i.cells).forEach((r, n) => {
566
- r.dataset.row = s;
567
- const a = Array.from(r.children).find((o) => o.tagName.toLowerCase().startsWith("cell-") || typeof o.refresh == "function");
554
+ d(this, Rt, /* @__PURE__ */ h((r, e, s) => {
555
+ r.dataset.row = s, r.data = e, Array.from(r.cells).forEach((i, n) => {
556
+ i.dataset.row = s;
557
+ const a = Array.from(i.children).find((o) => o.tagName.toLowerCase().startsWith("cell-") || typeof o.refresh == "function");
568
558
  a && typeof a.refresh == "function" && a.refresh();
569
559
  });
570
560
  }, "#bindRowData"));
571
- d(this, jt, /* @__PURE__ */ h(() => {
561
+ d(this, Dt, /* @__PURE__ */ h(() => {
572
562
  var c, l, f;
573
563
  N.log("rowManager.#syncHeaderHeights");
574
- 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");
564
+ const r = 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");
575
565
  if (!e) return;
576
- const r = i ? Array.from(i.querySelectorAll("tr")) : [], n = Array.from(e.querySelectorAll("tr")), a = s ? Array.from(s.querySelectorAll("tr")) : [], o = Math.max(r.length, n.length, a.length);
566
+ const i = r ? Array.from(r.querySelectorAll("tr")) : [], n = Array.from(e.querySelectorAll("tr")), a = s ? Array.from(s.querySelectorAll("tr")) : [], o = Math.max(i.length, n.length, a.length);
577
567
  for (let u = 0; u < o; u++) {
578
568
  const g = [
579
- ((c = r[u]) == null ? void 0 : c.getBoundingClientRect().height) || 0,
569
+ ((c = i[u]) == null ? void 0 : c.getBoundingClientRect().height) || 0,
580
570
  ((l = n[u]) == null ? void 0 : l.getBoundingClientRect().height) || 0,
581
571
  ((f = a[u]) == null ? void 0 : f.getBoundingClientRect().height) || 0
582
572
  ], b = Math.max(...g);
583
- b > 0 && (r[u] && (r[u].style.height = `${b}px`), n[u] && (n[u].style.height = `${b}px`), a[u] && (a[u].style.height = `${b}px`));
573
+ b > 0 && (i[u] && (i[u].style.height = `${b}px`), n[u] && (n[u].style.height = `${b}px`), a[u] && (a[u].style.height = `${b}px`));
584
574
  }
585
575
  }, "#syncHeaderHeights"));
586
576
  E(this, "destroy", /* @__PURE__ */ h(() => {
587
577
  t(this, V) && (t(this, V).disconnect(), y(this, V, null));
588
578
  }, "destroy"));
589
- y(this, D, i.getRootNode().host), y(this, S, i), t(this, Dt).call(this);
579
+ y(this, D, r.getRootNode().host), y(this, S, r), t(this, Pt).call(this);
590
580
  }
591
581
  getRowHeight() {
592
582
  return t(this, H);
593
583
  }
594
- templateLength(i = ".ng-container-body") {
584
+ templateLength(r = ".ng-container-body") {
595
585
  var e;
596
- return ((e = t(this, P).get(i)) == null ? void 0 : e.length) || 1;
586
+ return ((e = t(this, P).get(r)) == null ? void 0 : e.length) || 1;
597
587
  }
598
588
  };
599
- D = new WeakMap(), S = new WeakMap(), Q = new WeakMap(), P = new WeakMap(), H = new WeakMap(), V = new WeakMap(), tt = new WeakMap(), St = new WeakMap(), Ee = new WeakMap(), lt = new WeakMap(), Ot = new WeakMap(), Bt = new WeakMap(), zt = new WeakMap(), Et = new WeakMap(), At = new WeakMap(), Pt = new WeakMap(), Dt = new WeakMap(), Rt = new WeakMap(), Ae = new WeakMap(), ct = new WeakMap(), qt = new WeakMap(), jt = new WeakMap(), h(Ie, "RowManager");
600
- let he = Ie;
601
- const Ft = class Ft {
589
+ D = new WeakMap(), S = new WeakMap(), Q = new WeakMap(), P = new WeakMap(), H = new WeakMap(), V = new WeakMap(), tt = new WeakMap(), wt = new WeakMap(), Se = new WeakMap(), Ee = new WeakMap(), Wt = new WeakMap(), Ot = new WeakMap(), Bt = new WeakMap(), St = new WeakMap(), Et = new WeakMap(), zt = new WeakMap(), Pt = new WeakMap(), At = new WeakMap(), Ae = new WeakMap(), lt = new WeakMap(), Rt = new WeakMap(), Dt = new WeakMap(), h(Ie, "RowManager");
590
+ let ce = Ie;
591
+ const jt = class jt {
602
592
  /**
603
593
  * 🎯 레이아웃 내의 여러 rawTables 배열을 일괄로 받아 단일 마스터 템플릿으로 사전 컴파일합니다.
604
594
  */
605
- static compileAll(i) {
606
- return Array.isArray(i) ? i.map((e) => Ft.compile(e)) : [];
595
+ static compileAll(r) {
596
+ return Array.isArray(r) ? r.map((e) => jt.compile(e)) : [];
607
597
  }
608
598
  /**
609
599
  * 🎯 단일 원본 테이블을 받아 기본 구조 보정 및 2차원 격자 인덱스 사전 부여 완료된 마스터 테이블 반환
610
600
  */
611
- static compile(i) {
612
- if (!i) return null;
601
+ static compile(r) {
602
+ if (!r) return null;
613
603
  const e = /* @__PURE__ */ h((o) => {
614
604
  o.querySelectorAll("tbody td, tbody th, tfoot td, tfoot th").forEach((l) => {
615
605
  const f = l.getAttribute("cell-type") || "renderer";
@@ -633,7 +623,7 @@ const Ft = class Ft {
633
623
  l ? l.after(c) : o.prepend(c);
634
624
  }
635
625
  o.classList.add("nine-table-element"), o.style.display = "table";
636
- }, "ensureTableStructure"), r = /* @__PURE__ */ h((o, c) => {
626
+ }, "ensureTableStructure"), i = /* @__PURE__ */ h((o, c) => {
637
627
  const l = Array.from(o.querySelectorAll(c + " tr")), f = Array.from(o.querySelectorAll(c + " th," + c + " td")), u = l.length;
638
628
  if (u === 0 || f.length === 0) return;
639
629
  let g = 0;
@@ -652,8 +642,8 @@ const Ft = class Ft {
652
642
  }
653
643
  const W = m.rowSpan || 1, C = m.colSpan || 1;
654
644
  for (let B = 0; B < W; B++)
655
- for (let pt = 0; pt < C; pt++)
656
- v + B < u && A + pt < g && (b[v + B][A + pt] = B === 0 && pt === 0 ? "1" : "0");
645
+ for (let yt = 0; yt < C; yt++)
646
+ v + B < u && A + yt < g && (b[v + B][A + yt] = B === 0 && yt === 0 ? "1" : "0");
657
647
  });
658
648
  }), l.forEach((x) => {
659
649
  const v = x.sectionRowIndex;
@@ -665,8 +655,8 @@ const Ft = class Ft {
665
655
  }
666
656
  });
667
657
  });
668
- }, "resetColIndex"), n = i.cloneNode(!0);
669
- return s(n), e(n), r(n, "thead"), r(n, "tbody"), r(n, "tfoot"), Array.from(n.querySelectorAll("colgroup col")).forEach((o, c) => {
658
+ }, "resetColIndex"), n = r.cloneNode(!0);
659
+ return s(n), e(n), i(n, "thead"), i(n, "tbody"), i(n, "tfoot"), Array.from(n.querySelectorAll("colgroup col")).forEach((o, c) => {
670
660
  const l = o.getAttribute("fixed");
671
661
  l && n.querySelectorAll(`thead [data-col="${c}"], tbody [data-col="${c}"], tfoot [data-col="${c}"]`).forEach((f) => {
672
662
  f.setAttribute("fixed", l);
@@ -675,64 +665,64 @@ const Ft = class Ft {
675
665
  }
676
666
  // 🎯 [추가] td/th에 선언된 cell-type 속성을 읽어 커스텀 태그로 자동 감싸기
677
667
  };
678
- h(Ft, "TableCompiler");
679
- let de = Ft;
680
- var Vt, et, st, Yt, Ut, ht, Xt, Kt;
681
- const mt = class mt extends HTMLElement {
668
+ h(jt, "TableCompiler");
669
+ let he = jt;
670
+ var Ft, et, st, Vt, Yt, ct, Ut, Xt;
671
+ const pt = class pt extends HTMLElement {
682
672
  constructor() {
683
673
  super();
684
- d(this, Vt);
674
+ d(this, Ft);
685
675
  d(this, et, null);
686
676
  d(this, st);
687
677
  E(this, "invalidate", /* @__PURE__ */ h(() => {
688
678
  t(this, st).refresh();
689
679
  }, "invalidate"));
690
- d(this, Yt, /* @__PURE__ */ h(() => {
680
+ d(this, Vt, /* @__PURE__ */ h(() => {
691
681
  [
692
682
  { selector: ".ng-container-body", type: null },
693
683
  { selector: ".ng-container-left", type: "left" },
694
684
  { selector: ".ng-container-right", type: "right" }
695
- ].forEach(({ selector: s, type: r }) => {
685
+ ].forEach(({ selector: s, type: i }) => {
696
686
  const n = this.querySelector(s);
697
687
  if (!n) return;
698
688
  n.innerHTML = "";
699
689
  const a = document.createElement("div");
700
- a.className = "ng-part-header", a.appendChild(t(this, ht).call(this, t(this, et), r, "header"));
690
+ a.className = "ng-part-header", a.appendChild(t(this, ct).call(this, t(this, et), i, "header"));
701
691
  const o = document.createElement("div");
702
692
  o.className = "ng-part-body";
703
693
  const c = document.createElement("div");
704
- c.className = "ng-scroll-content", c.style.position = "relative", c.style.width = "100%", c.appendChild(t(this, ht).call(this, t(this, et), r, "body"));
694
+ c.className = "ng-scroll-content", c.style.position = "relative", c.style.width = "100%", c.appendChild(t(this, ct).call(this, t(this, et), i, "body"));
705
695
  const l = document.createElement("div");
706
696
  l.className = "ng-virtual-spacer", l.style.width = "100%", l.style.pointerEvents = "none", c.appendChild(l), o.appendChild(c);
707
697
  const f = document.createElement("div");
708
- f.className = "ng-part-footer", f.appendChild(t(this, ht).call(this, t(this, et), r, "footer")), n.appendChild(a), n.appendChild(o), n.appendChild(f);
698
+ f.className = "ng-part-footer", f.appendChild(t(this, ct).call(this, t(this, et), i, "footer")), n.appendChild(a), n.appendChild(o), n.appendChild(f);
709
699
  });
710
700
  }, "#renderSplitContainers"));
711
- d(this, Ut, /* @__PURE__ */ h(() => {
701
+ d(this, Yt, /* @__PURE__ */ h(() => {
712
702
  ["left", "right", "body"].forEach((e) => {
713
- const s = this.querySelector(`.ng-container-${e}`), r = s == null ? void 0 : s.querySelectorAll("table");
714
- if (!s || !r || r.length === 0) return;
703
+ const s = this.querySelector(`.ng-container-${e}`), i = s == null ? void 0 : s.querySelectorAll("table");
704
+ if (!s || !i || i.length === 0) return;
715
705
  let n = 0;
716
- r[0].querySelectorAll("col").forEach((a) => {
706
+ i[0].querySelectorAll("col").forEach((a) => {
717
707
  const o = parseInt(a.getAttribute("width"), 10);
718
708
  isNaN(n) || (n += o);
719
709
  }), e === "body" ? s.style.flex = "1" : (s.style.flex = `0 0 ${n}px`, s.style.width = `${n}px`);
720
710
  });
721
711
  }, "#updateContainerWidths"));
722
712
  E(this, "generate", /* @__PURE__ */ h((e) => {
723
- e && (y(this, et, de.compile(e)), t(this, Yt).call(this), t(this, Ut).call(this), t(this, st).initialize(), setTimeout(() => {
713
+ e && (y(this, et, he.compile(e)), t(this, Vt).call(this), t(this, Yt).call(this), t(this, st).initialize(), setTimeout(() => {
724
714
  var s;
725
715
  (s = this.querySelector("nine-table-hscrollbar")) == null || s.refresh();
726
716
  }, 0));
727
717
  }, "generate"));
728
- d(this, ht, /* @__PURE__ */ h((e, s, r) => {
718
+ d(this, ct, /* @__PURE__ */ h((e, s, i) => {
729
719
  const n = e.cloneNode(!0), a = n.querySelector("thead"), o = n.querySelector("tbody"), c = n.querySelector("tfoot");
730
- if (r === "header") {
720
+ if (i === "header") {
731
721
  if (o && o.remove(), c && c.remove(), e.querySelector("tbody")) {
732
722
  const f = document.createElement("tbody");
733
723
  f.className = "fixed-tbody", n.appendChild(f);
734
724
  }
735
- } else r === "body" ? (a && a.remove(), c && c.remove(), o && (o.className = "bindable-tbody")) : r === "footer" && (a && a.remove(), o && o.remove());
725
+ } else i === "body" ? (a && a.remove(), c && c.remove(), o && (o.className = "bindable-tbody")) : i === "footer" && (a && a.remove(), o && o.remove());
736
726
  return s === "left" ? n.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
737
727
  l.getAttribute("fixed") !== "left" && l.remove();
738
728
  }) : s === "right" ? n.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
@@ -750,11 +740,11 @@ const mt = class mt extends HTMLElement {
750
740
  const s = this.querySelector(".ng-container-body .ng-part-body");
751
741
  s && (s.scrollTop = e);
752
742
  }, "scrollToY"));
753
- d(this, Xt, /* @__PURE__ */ h(() => {
754
- t(this, Kt).call(this);
743
+ d(this, Ut, /* @__PURE__ */ h(() => {
744
+ t(this, Xt).call(this);
755
745
  }, "#init"));
756
- d(this, Kt, /* @__PURE__ */ h(() => {
757
- const e = mt.SCROLLBAR_SIZE;
746
+ d(this, Xt, /* @__PURE__ */ h(() => {
747
+ const e = pt.SCROLLBAR_SIZE;
758
748
  this.innerHTML = `
759
749
  <style>
760
750
  nine-table-sheet {
@@ -902,32 +892,32 @@ const mt = class mt extends HTMLElement {
902
892
  </div>
903
893
  `;
904
894
  }, "#render"));
905
- y(this, st, new he(this)), y(this, Vt, this.getRootNode().host);
895
+ y(this, st, new ce(this)), y(this, Ft, this.getRootNode().host);
906
896
  }
907
897
  connectedCallback() {
908
- t(this, Xt).call(this);
898
+ t(this, Ut).call(this);
909
899
  }
910
900
  disconnectedCallback() {
911
901
  this.innerHTML = "", N.log("NineTableSheet destroyed.");
912
902
  }
913
903
  };
914
- Vt = new WeakMap(), et = new WeakMap(), st = new WeakMap(), Yt = new WeakMap(), Ut = new WeakMap(), ht = new WeakMap(), Xt = new WeakMap(), Kt = new WeakMap(), h(mt, "NineTableSheet"), E(mt, "SCROLLBAR_SIZE", 16);
915
- let It = mt;
916
- customElements.get("nine-table-sheet") || customElements.define("nine-table-sheet", It);
917
- var Zt, kt;
904
+ 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"), E(pt, "SCROLLBAR_SIZE", 16);
905
+ let $t = pt;
906
+ customElements.get("nine-table-sheet") || customElements.define("nine-table-sheet", $t);
907
+ var Kt, qt;
918
908
  const _e = class _e extends HTMLElement {
919
909
  constructor() {
920
910
  super();
921
- d(this, Zt, /* @__PURE__ */ h(() => {
911
+ d(this, Kt, /* @__PURE__ */ h(() => {
922
912
  var e;
923
913
  (e = this.querySelector(".nine-tab-bar")) == null || e.addEventListener("click", (s) => {
924
914
  var a;
925
- const r = s.ctrlKey || s.metaKey || s.shiftKey, n = parseInt((a = s.target.closest(".nine-tab-item")) == null ? void 0 : a.dataset.index, 10);
926
- t(this, kt).call(this, n, r);
927
- }), t(this, kt).call(this, 0, !1);
915
+ const i = s.ctrlKey || s.metaKey || s.shiftKey, n = parseInt((a = s.target.closest(".nine-tab-item")) == null ? void 0 : a.dataset.index, 10);
916
+ t(this, qt).call(this, n, i);
917
+ }), t(this, qt).call(this, 0, !1);
928
918
  }, "#init"));
929
- d(this, kt, /* @__PURE__ */ h((e, s = !1) => {
930
- const r = /* @__PURE__ */ h(() => {
919
+ d(this, qt, /* @__PURE__ */ h((e, s = !1) => {
920
+ const i = /* @__PURE__ */ h(() => {
931
921
  const f = Array.from(this.querySelectorAll("nine-table-sheet"));
932
922
  Array.from(this.querySelectorAll("nine-splitter")).forEach((b) => b.style.setProperty("display", "none"));
933
923
  const g = f.filter((b) => b.classList.contains("active"));
@@ -955,36 +945,36 @@ const _e = class _e extends HTMLElement {
955
945
  const l = a.querySelectorAll("nine-table-sheet.active");
956
946
  l == null || l.forEach((f) => {
957
947
  f.style.flex = l.length > 1 ? "1 1 0%" : "1 1 100%";
958
- }), r();
948
+ }), i();
959
949
  }, "#switchSheet"));
960
950
  }
961
951
  connectedCallback() {
962
- t(this, Zt).call(this);
952
+ t(this, Kt).call(this);
963
953
  }
964
954
  };
965
- Zt = new WeakMap(), kt = new WeakMap(), h(_e, "NineTableSheets");
966
- let fe = _e;
967
- customElements.get("nine-table-sheets") || customElements.define("nine-table-sheets", fe);
968
- var M, Gt, Tt, Jt;
955
+ Kt = new WeakMap(), qt = new WeakMap(), h(_e, "NineTableSheets");
956
+ let de = _e;
957
+ customElements.get("nine-table-sheets") || customElements.define("nine-table-sheets", de);
958
+ var M, Zt, Tt, Gt;
969
959
  const Ne = class Ne {
970
- constructor(i) {
960
+ constructor(r) {
971
961
  d(this, M);
972
- d(this, Gt, /* @__PURE__ */ h(() => {
973
- t(this, Jt).call(this), new ResizeObserver((i) => {
974
- for (let e of i)
962
+ d(this, Zt, /* @__PURE__ */ h(() => {
963
+ t(this, Gt).call(this), new ResizeObserver((r) => {
964
+ for (let e of r)
975
965
  t(this, M).getAttribute("auto-height") === "true" && t(this, Tt).call(this);
976
966
  }).observe(t(this, M));
977
967
  }, "#init"));
978
968
  d(this, Tt, /* @__PURE__ */ h(() => {
979
969
  var c, l;
980
- const i = Array.from(t(this, M).shadowRoot.querySelectorAll("nine-table-sheet.active"));
981
- if (i.length === 0) return;
982
- 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, a = It.SCROLLBAR_SIZE, o = e * s + r + n + a;
970
+ const r = Array.from(t(this, M).shadowRoot.querySelectorAll("nine-table-sheet.active"));
971
+ if (r.length === 0) return;
972
+ const e = parseInt(t(this, M).getAttribute("max-display-row"), 10) || 10, s = Math.max(...r.map((f) => f.getRowHeight())), i = (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, a = $t.SCROLLBAR_SIZE, o = e * s + i + n + a;
983
973
  t(this, M).style.height = `${o}px`;
984
974
  }, "#applyAutoHeight"));
985
- d(this, Jt, /* @__PURE__ */ h(() => {
986
- 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) => {
987
- const u = `<nine-table-sheet class="${l === 0 ? "active" : ""}" data-index="${l}"></nine-table-sheet>`, g = l < r - 1 ? `<nine-splitter class="h" data-split-index="${l}"></nine-splitter>` : "";
975
+ d(this, Gt, /* @__PURE__ */ h(() => {
976
+ const e = Array.from(t(this, M).children).filter((c) => c.tagName === "TABLE"), s = t(this, M).getAttribute("auto-height") === "true", i = e.length, n = e.map((c, l) => {
977
+ const u = `<nine-table-sheet class="${l === 0 ? "active" : ""}" data-index="${l}"></nine-table-sheet>`, g = l < i - 1 ? `<nine-splitter class="h" data-split-index="${l}"></nine-splitter>` : "";
988
978
  return u + g;
989
979
  }).join(""), a = e.map((c, l) => `<div class="nine-tab-item ${l === 0 ? "active" : ""}" data-index="${l}">Sheet ${l + 1}</div>`).join("");
990
980
  t(this, M).shadowRoot.innerHTML = `
@@ -1085,70 +1075,70 @@ const Ne = class Ne {
1085
1075
  });
1086
1076
  });
1087
1077
  }, "#render"));
1088
- y(this, M, i), t(this, Gt).call(this);
1078
+ y(this, M, r), t(this, Zt).call(this);
1089
1079
  }
1090
1080
  };
1091
- M = new WeakMap(), Gt = new WeakMap(), Tt = new WeakMap(), Jt = new WeakMap(), h(Ne, "LayoutManager");
1092
- let ue = Ne;
1093
- var Ct, dt;
1081
+ M = new WeakMap(), Zt = new WeakMap(), Tt = new WeakMap(), Gt = new WeakMap(), h(Ne, "LayoutManager");
1082
+ let fe = Ne;
1083
+ var kt, ht;
1094
1084
  const We = class We {
1095
- constructor(i) {
1096
- d(this, Ct);
1097
- d(this, dt, -1);
1098
- E(this, "count", /* @__PURE__ */ h(() => t(this, Ct).rawRecords.length, "count"));
1099
- y(this, Ct, i);
1085
+ constructor(r) {
1086
+ d(this, kt);
1087
+ d(this, ht, -1);
1088
+ E(this, "count", /* @__PURE__ */ h(() => t(this, kt).rawRecords.length, "count"));
1089
+ y(this, kt, r);
1100
1090
  }
1101
1091
  get at() {
1102
- return t(this, dt);
1092
+ return t(this, ht);
1103
1093
  }
1104
- set at(i) {
1105
- y(this, dt, parseInt(i, 10)), body && !body.querySelector(`tbody.bindable tr[data-row="${t(this, dt)}"]`) && setTimeout(() => {
1094
+ set at(r) {
1095
+ y(this, ht, parseInt(r, 10)), body && !body.querySelector(`tbody.bindable tr[data-row="${t(this, ht)}"]`) && setTimeout(() => {
1106
1096
  });
1107
1097
  }
1108
1098
  };
1109
- Ct = new WeakMap(), dt = new WeakMap(), h(We, "ngRow");
1110
- let ge = We;
1111
- var I, k, _, ft, Qt, Y, te, it, Lt, ee, se, ut;
1099
+ kt = new WeakMap(), ht = new WeakMap(), h(We, "ngRow");
1100
+ let ue = We;
1101
+ var I, T, _, dt, Jt, Y, Qt, rt, Ct, te, ee, ft;
1112
1102
  const O = class O {
1113
- constructor(i, e) {
1103
+ constructor(r, e) {
1114
1104
  d(this, I);
1115
- d(this, k);
1105
+ d(this, T);
1116
1106
  d(this, _, []);
1117
- d(this, ft, []);
1118
- d(this, Qt, 0);
1107
+ d(this, dt, []);
1108
+ d(this, Jt, 0);
1119
1109
  d(this, Y, []);
1120
- d(this, te, /* @__PURE__ */ h(() => {
1110
+ d(this, Qt, /* @__PURE__ */ h(() => {
1121
1111
  y(this, Y, []);
1122
- const i = t(this, I).template || [];
1123
- Array.from(i).forEach((e) => {
1112
+ const r = t(this, I).template || [];
1113
+ Array.from(r).forEach((e) => {
1124
1114
  var s;
1125
1115
  t(this, Y).push(((s = e.getBoundingClientRect) == null ? void 0 : s.call(e).height) || 24);
1126
- }), (t(this, k).rawRecords || []).forEach((e) => {
1127
- e.__ng || (e.__ng = t(this, Lt).call(this)), e.__ng.height = t(this, Y).slice();
1116
+ }), (t(this, T).rawRecords || []).forEach((e) => {
1117
+ e.__ng || (e.__ng = t(this, Ct).call(this)), e.__ng.height = t(this, Y).slice();
1128
1118
  });
1129
1119
  }, "#initialize"));
1130
- d(this, it, /* @__PURE__ */ h(() => {
1131
- t(this, I).shadowRoot.querySelectorAll("nine-table-sheet").forEach((i) => {
1132
- i.invalidate();
1120
+ d(this, rt, /* @__PURE__ */ h(() => {
1121
+ t(this, I).shadowRoot.querySelectorAll("nine-table-sheet").forEach((r) => {
1122
+ r.invalidate();
1133
1123
  });
1134
1124
  }, "#invalidate"));
1135
- E(this, "get", /* @__PURE__ */ h((i, e) => {
1125
+ E(this, "get", /* @__PURE__ */ h((r, e) => {
1136
1126
  var n;
1137
1127
  const s = this.getValidData();
1138
1128
  if (!s || s.length <= 0) return;
1139
- if (i == null) return t(this, ut).call(this, s);
1140
- if (i < 0 || i >= s.length) return null;
1141
- const r = typeof ((n = t(this, I).fields) == null ? void 0 : n.get) == "function" ? t(this, I).fields.get() : [];
1129
+ if (r == null) return t(this, ft).call(this, s);
1130
+ if (r < 0 || r >= s.length) return null;
1131
+ const i = typeof ((n = t(this, I).fields) == null ? void 0 : n.get) == "function" ? t(this, I).fields.get() : [];
1142
1132
  if (e != null) {
1143
- const a = r.indexOf(e);
1144
- return a >= 0 ? s[i].v[a] : null;
1133
+ const a = i.indexOf(e);
1134
+ return a >= 0 ? s[r].v[a] : null;
1145
1135
  }
1146
- return t(this, ut).call(this, s[i]);
1136
+ return t(this, ft).call(this, s[r]);
1147
1137
  }, "get"));
1148
- E(this, "set", /* @__PURE__ */ h((i) => {
1149
- this.clear(), this.add(i, !1), t(this, it).call(this);
1138
+ E(this, "set", /* @__PURE__ */ h((r) => {
1139
+ this.clear(), this.add(r, !1), t(this, rt).call(this);
1150
1140
  }, "set"));
1151
- d(this, Lt, /* @__PURE__ */ h(() => ({
1141
+ d(this, Ct, /* @__PURE__ */ h(() => ({
1152
1142
  rowState: O.ROW_STATE.EMPTY,
1153
1143
  deleted: !1,
1154
1144
  filtered: !1,
@@ -1158,87 +1148,87 @@ const O = class O {
1158
1148
  _: [0, 0, 0, 0, O.ROW_STATE.EMPTY, !1, !1, !0, !1, !0, !0, !1, t(this, Y).slice(), -1, {}, {}]
1159
1149
  }), "#getDefaultMeta"));
1160
1150
  E(this, "reset", /* @__PURE__ */ h(() => {
1161
- y(this, _, []), y(this, ft, []), t(this, it).call(this);
1151
+ y(this, _, []), y(this, dt, []), t(this, rt).call(this);
1162
1152
  }, "reset"));
1163
1153
  E(this, "clear", /* @__PURE__ */ h(() => {
1164
- var i;
1165
- t(this, k).rawRecords = [], y(this, _, []), y(this, ft, []), (i = t(this, k).viewRecords) != null && i.reset && t(this, k).viewRecords.reset();
1166
- }, "clear"));
1167
- d(this, ee, /* @__PURE__ */ h((i) => {
1168
1154
  var r;
1169
- Array.isArray(i) || (i = [i]);
1170
- const e = typeof ((r = t(this, I).fields) == null ? void 0 : r.get) == "function" ? t(this, I).fields.get() : Object.keys(i[0] || {}), s = [];
1171
- return i.forEach((n) => {
1155
+ t(this, T).rawRecords = [], y(this, _, []), y(this, dt, []), (r = t(this, T).viewRecords) != null && r.reset && t(this, T).viewRecords.reset();
1156
+ }, "clear"));
1157
+ d(this, te, /* @__PURE__ */ h((r) => {
1158
+ var i;
1159
+ Array.isArray(r) || (r = [r]);
1160
+ const e = typeof ((i = t(this, I).fields) == null ? void 0 : i.get) == "function" ? t(this, I).fields.get() : Object.keys(r[0] || {}), s = [];
1161
+ return r.forEach((n) => {
1172
1162
  const a = { v: [] };
1173
1163
  e.forEach((o) => {
1174
1164
  a.v.push(n[o] !== void 0 && n[o] !== null ? n[o] : "");
1175
1165
  }), s.push(a);
1176
1166
  }), s;
1177
1167
  }, "#json2Array"));
1178
- d(this, se, /* @__PURE__ */ h((i) => (Array.isArray(i) || (i = [i]), i.forEach((e) => {
1179
- e.__ng = t(this, Lt).call(this), e.__ng.rowid = this.nextId, e.__ng.rowState = O.ROW_STATE.INSERT, e.__ng._[0] = e.__ng.rowid;
1180
- }), i), "#defaultInsert"));
1181
- E(this, "add", /* @__PURE__ */ h((i, e = !0) => {
1182
- i === void 0 && (i = {});
1183
- const s = t(this, ee).call(this, i);
1184
- t(this, k).rawRecords = t(this, k).rawRecords.concat(t(this, se).call(this, s)), this.resetRecords();
1185
- const r = this.count() - 1;
1168
+ d(this, ee, /* @__PURE__ */ h((r) => (Array.isArray(r) || (r = [r]), r.forEach((e) => {
1169
+ 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;
1170
+ }), r), "#defaultInsert"));
1171
+ E(this, "add", /* @__PURE__ */ h((r, e = !0) => {
1172
+ r === void 0 && (r = {});
1173
+ const s = t(this, te).call(this, r);
1174
+ t(this, T).rawRecords = t(this, T).rawRecords.concat(t(this, ee).call(this, s)), this.resetRecords();
1175
+ const i = this.count() - 1;
1186
1176
  return e || s.forEach((n, a) => {
1187
- const o = t(this, k).rawRecords[r - a];
1177
+ const o = t(this, T).rawRecords[i - a];
1188
1178
  o && (o.__ng.rowState = O.ROW_STATE.EMPTY);
1189
- }), t(this, it).call(this), r;
1179
+ }), t(this, rt).call(this), i;
1190
1180
  }, "add"));
1191
- E(this, "delete", /* @__PURE__ */ h((i) => {
1181
+ E(this, "delete", /* @__PURE__ */ h((r) => {
1192
1182
  let e = [];
1193
- 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) => {
1183
+ Array.isArray(r) ? e = r : typeof r > "u" ? e = [t(this, T).host.row.at] : e = [parseInt(r, 10)], e.sort((s, i) => i - s).forEach((s) => {
1194
1184
  if (t(this, _)[s]) {
1195
- const r = t(this, _)[s].__ng.rowid;
1196
- t(this, _)[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) => {
1197
- n.__ng.rowid === r && (n.__ng.deleted = !0, n.__ng.rowState = O.ROW_STATE.DELETE);
1185
+ const i = t(this, _)[s].__ng.rowid;
1186
+ t(this, _)[s].__ng.rowState === O.ROW_STATE.INSERT ? t(this, T).rawRecords = t(this, T).rawRecords.filter((n) => n.__ng.rowid !== i) : t(this, T).rawRecords.forEach((n) => {
1187
+ n.__ng.rowid === i && (n.__ng.deleted = !0, n.__ng.rowState = O.ROW_STATE.DELETE);
1198
1188
  });
1199
1189
  }
1200
- }), this.resetRecords(), t(this, it).call(this);
1190
+ }), this.resetRecords(), t(this, rt).call(this);
1201
1191
  }, "delete"));
1202
- E(this, "setValue", /* @__PURE__ */ h((i, e, s) => {
1192
+ E(this, "setValue", /* @__PURE__ */ h((r, e, s) => {
1203
1193
  var c;
1204
- i = parseInt(i, 10);
1194
+ r = parseInt(r, 10);
1205
1195
  const n = (typeof ((c = t(this, I).fields) == null ? void 0 : c.get) == "function" ? t(this, I).fields.get() : []).indexOf(e);
1206
1196
  if (n < 0) return;
1207
- const a = this.getValidData()[i];
1197
+ const a = this.getValidData()[r];
1208
1198
  if (!a) return;
1209
1199
  const o = a.v[n];
1210
1200
  o !== s && a.__ng.rowState !== O.ROW_STATE.INSERT && (a.__ng.o.hasOwnProperty(e) || (a.__ng.o[e] = o), a.__ng.rowState = O.ROW_STATE.UPDATE), a.v[n] = s;
1211
1201
  }, "setValue"));
1212
1202
  E(this, "resetRecords", /* @__PURE__ */ h(() => {
1213
- y(this, ft, t(this, k).rawRecords.filter((i) => !i.__ng.deleted)), y(this, _, t(this, k).rawRecords.filter((i) => !i.__ng.deleted && !i.__ng.filtered)), t(this, k).rawRecords.forEach((i, e) => {
1214
- i.__ng.rowidx = e;
1215
- }), t(this, _).forEach((i, e) => {
1216
- i.__ng.i = e;
1203
+ y(this, dt, t(this, T).rawRecords.filter((r) => !r.__ng.deleted)), y(this, _, t(this, T).rawRecords.filter((r) => !r.__ng.deleted && !r.__ng.filtered)), t(this, T).rawRecords.forEach((r, e) => {
1204
+ r.__ng.rowidx = e;
1205
+ }), t(this, _).forEach((r, e) => {
1206
+ r.__ng.i = e;
1217
1207
  });
1218
1208
  }, "resetRecords"));
1219
- E(this, "getValidData", /* @__PURE__ */ h(() => (t(this, _).length === 0 && t(this, k).rawRecords.length > 0 && this.resetRecords(), t(this, _)), "getValidData"));
1220
- d(this, ut, /* @__PURE__ */ h((i) => {
1209
+ E(this, "getValidData", /* @__PURE__ */ h(() => (t(this, _).length === 0 && t(this, T).rawRecords.length > 0 && this.resetRecords(), t(this, _)), "getValidData"));
1210
+ d(this, ft, /* @__PURE__ */ h((r) => {
1221
1211
  var a;
1222
- if (!i) return i;
1223
- const e = !Array.isArray(i), s = e ? [i] : i, r = typeof ((a = t(this, I).fields) == null ? void 0 : a.get) == "function" ? t(this, I).fields.get() : [], n = s.filter((o) => !o.__ng.deleted).map((o) => {
1212
+ if (!r) return r;
1213
+ const e = !Array.isArray(r), s = e ? [r] : r, i = typeof ((a = t(this, I).fields) == null ? void 0 : a.get) == "function" ? t(this, I).fields.get() : [], n = s.filter((o) => !o.__ng.deleted).map((o) => {
1224
1214
  const c = {};
1225
- return r.forEach((l, f) => {
1215
+ return i.forEach((l, f) => {
1226
1216
  c[l] = o.v ? o.v[f] : o[l];
1227
1217
  }), c.__ng = o.__ng, c;
1228
1218
  });
1229
1219
  return e ? n[0] : n;
1230
1220
  }, "#conv"));
1231
1221
  E(this, "count", /* @__PURE__ */ h(() => this.getValidData().length, "count"));
1232
- y(this, I, i), y(this, k, e), t(this, te).call(this);
1222
+ y(this, I, r), y(this, T, e), t(this, Qt).call(this);
1233
1223
  }
1234
1224
  get source() {
1235
- return t(this, ut).call(this, t(this, k).rawRecords);
1225
+ return t(this, ft).call(this, t(this, T).rawRecords);
1236
1226
  }
1237
- set source(i) {
1238
- this.clear(), this.add(i, !1);
1227
+ set source(r) {
1228
+ this.clear(), this.add(r, !1);
1239
1229
  }
1240
1230
  get nextId() {
1241
- return ++Ue(this, Qt)._;
1231
+ return ++Ue(this, Jt)._;
1242
1232
  }
1243
1233
  get count() {
1244
1234
  return t(this, _).length;
@@ -1250,7 +1240,7 @@ const O = class O {
1250
1240
  return this.length;
1251
1241
  }
1252
1242
  };
1253
- I = new WeakMap(), k = new WeakMap(), _ = new WeakMap(), ft = new WeakMap(), Qt = new WeakMap(), Y = new WeakMap(), te = new WeakMap(), it = new WeakMap(), Lt = new WeakMap(), ee = new WeakMap(), se = new WeakMap(), ut = new WeakMap(), h(O, "ngData"), // 🎯 행 상태 정의 상수를 클래스 내부로 내재화
1243
+ I = new WeakMap(), T = new WeakMap(), _ = new WeakMap(), dt = new WeakMap(), Jt = new WeakMap(), Y = new WeakMap(), Qt = new WeakMap(), rt = new WeakMap(), Ct = new WeakMap(), te = new WeakMap(), ee = new WeakMap(), ft = new WeakMap(), h(O, "ngData"), // 🎯 행 상태 정의 상수를 클래스 내부로 내재화
1254
1244
  E(O, "ROW_STATE", {
1255
1245
  EMPTY: "EMPTY",
1256
1246
  NORMAL: "NORMAL",
@@ -1258,57 +1248,57 @@ E(O, "ROW_STATE", {
1258
1248
  UPDATE: "UPDATE",
1259
1249
  DELETE: "DELETE"
1260
1250
  });
1261
- let be = O;
1262
- var rt;
1251
+ let ge = O;
1252
+ var it;
1263
1253
  const Oe = class Oe {
1264
- constructor(i) {
1265
- d(this, rt);
1266
- y(this, rt, i), this.row = new ge(this), this.data = new be(t(this, rt), this), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.pageCnt = 25, this.viewRecords.reset = () => {
1254
+ constructor(r) {
1255
+ d(this, it);
1256
+ y(this, it, r), this.row = new ue(this), this.data = new ge(t(this, it), this), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.pageCnt = 25, this.viewRecords.reset = () => {
1267
1257
  var e;
1268
- (e = t(this, rt).view) != null && e.redraw && t(this, rt).view.redraw();
1258
+ (e = t(this, it).view) != null && e.redraw && t(this, it).view.redraw();
1269
1259
  }, this.setDataSource = (e) => {
1270
1260
  this.data && this.data.reset(), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.data.set(e || []);
1271
1261
  }, this.getRowState = (e) => {
1272
- var r, n;
1262
+ var i, n;
1273
1263
  const s = parseInt(e, 10);
1274
1264
  if (!(s >= this.data.count()))
1275
- return (n = (r = this.data.getValidData()[s]) == null ? void 0 : r.__ng) == null ? void 0 : n.rowState;
1265
+ return (n = (i = this.data.getValidData()[s]) == null ? void 0 : i.__ng) == null ? void 0 : n.rowState;
1276
1266
  }, this.getRowPosition = () => this.row.at, this.setRowPosition = (e) => {
1277
1267
  this.row.at = e;
1278
- }, this.scrollTo_V1 = (e) => (e < 0 && (e = 0), e >= this.rawRecords.length && (e = this.rawRecords.length - 1), this.viewRecords.rawIndex = e, this.viewRecords.reset && this.viewRecords.reset(), !(e <= 0 || e >= this.rawRecords.length - 1)), this.getColumn = (e, s) => this.data.get(e, s), this.setColumn = (e, s, r) => {
1279
- e = parseInt(e, 10), this.data.setValue(e, s, r);
1268
+ }, this.scrollTo_V1 = (e) => (e < 0 && (e = 0), e >= this.rawRecords.length && (e = this.rawRecords.length - 1), this.viewRecords.rawIndex = e, this.viewRecords.reset && this.viewRecords.reset(), !(e <= 0 || e >= this.rawRecords.length - 1)), this.getColumn = (e, s) => this.data.get(e, s), this.setColumn = (e, s, i) => {
1269
+ e = parseInt(e, 10), this.data.setValue(e, s, i);
1280
1270
  }, this.setDataSource([]);
1281
1271
  }
1282
1272
  };
1283
- rt = new WeakMap(), h(Oe, "ngDataManager");
1284
- let ye = Oe;
1285
- var gt, L, Ht, ie;
1273
+ it = new WeakMap(), h(Oe, "ngDataManager");
1274
+ let be = Oe;
1275
+ var ut, L, Lt, se;
1286
1276
  const Be = class Be {
1287
1277
  // 🎯 이제 { name: string, type: string } 객체들의 배열로 관리합니다.
1288
- constructor(i) {
1289
- d(this, gt);
1278
+ constructor(r) {
1279
+ d(this, ut);
1290
1280
  d(this, L, []);
1291
- E(this, "add", /* @__PURE__ */ h((i, e = "string") => {
1292
- i.forEach((s) => {
1293
- t(this, L).some((r) => r.name === s) || t(this, L).push({ name: s, type: e });
1294
- }), t(this, Ht).call(this);
1281
+ E(this, "add", /* @__PURE__ */ h((r, e = "string") => {
1282
+ r.forEach((s) => {
1283
+ t(this, L).some((i) => i.name === s) || t(this, L).push({ name: s, type: e });
1284
+ }), t(this, Lt).call(this);
1295
1285
  }, "add"));
1296
- d(this, Ht, /* @__PURE__ */ h(() => {
1297
- const i = /* @__PURE__ */ new Map();
1286
+ d(this, Lt, /* @__PURE__ */ h(() => {
1287
+ const r = /* @__PURE__ */ new Map();
1298
1288
  t(this, L).forEach((e) => {
1299
- i.set(e.name, e.type);
1300
- }), 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);
1289
+ r.set(e.name, e.type);
1290
+ }), y(this, L, Array.from(r, ([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);
1301
1291
  }, "#adjust"));
1302
- d(this, ie, /* @__PURE__ */ h(() => {
1303
- y(this, L, []), N.log(t(this, gt).querySelectorAll("table"));
1304
- const i = Array.from(t(this, gt).querySelectorAll("table"));
1305
- if (!(!i || i.length === 0)) {
1306
- for (const e of i)
1307
- N.log(e), $("[data-bind]", e).each((s, r) => {
1308
- const n = r.dataset.bind, a = r.getAttribute("data-type") || "string";
1292
+ d(this, se, /* @__PURE__ */ h(() => {
1293
+ y(this, L, []), N.log(t(this, ut).querySelectorAll("table"));
1294
+ const r = Array.from(t(this, ut).querySelectorAll("table"));
1295
+ if (!(!r || r.length === 0)) {
1296
+ for (const e of r)
1297
+ N.log(e), $("[data-bind]", e).each((s, i) => {
1298
+ const n = i.dataset.bind, a = i.getAttribute("data-type") || "string";
1309
1299
  n && t(this, L).push({ name: n, type: a });
1310
1300
  }), ["data-expr", "background-color", "color", "tooltip", "visible", "readonly", "enable-button", "enable-check", "class-expr", "icon-color", "icon-src"].forEach((s) => {
1311
- $(`[${s}]`, e).each((r, n) => {
1301
+ $(`[${s}]`, e).each((i, n) => {
1312
1302
  var a = n.getAttribute(s);
1313
1303
  if (a.indexOf("data.") < 0) {
1314
1304
  const o = a.search(/[(]/g);
@@ -1328,47 +1318,47 @@ const Be = class Be {
1328
1318
  });
1329
1319
  });
1330
1320
  });
1331
- t(this, Ht).call(this);
1321
+ t(this, Lt).call(this);
1332
1322
  }
1333
1323
  }, "#init"));
1334
- y(this, gt, i), t(this, ie).call(this);
1324
+ y(this, ut, r), t(this, se).call(this);
1335
1325
  }
1336
1326
  // 🎯 기존에 필드 이름만 쓰던 곳들과의 호환을 위해 이름 배열만 리턴하는 메서드 유지
1337
1327
  get() {
1338
- return t(this, L).map((i) => i.name);
1328
+ return t(this, L).map((r) => r.name);
1339
1329
  }
1340
1330
  // 🎯 내부 객체 통째로 얻기
1341
1331
  getFields() {
1342
1332
  return t(this, L);
1343
1333
  }
1344
1334
  // 🎯 특정 필드의 데이터 타입 조회
1345
- getType(i) {
1346
- const e = t(this, L).find((s) => s.name === i);
1335
+ getType(r) {
1336
+ const e = t(this, L).find((s) => s.name === r);
1347
1337
  return e ? e.type : "string";
1348
1338
  }
1349
- indexOf(i) {
1350
- return t(this, L).findIndex((e) => e.name === i);
1339
+ indexOf(r) {
1340
+ return t(this, L).findIndex((e) => e.name === r);
1351
1341
  }
1352
- includes(i) {
1353
- return t(this, L).some((e) => e.name === i);
1342
+ includes(r) {
1343
+ return t(this, L).some((e) => e.name === r);
1354
1344
  }
1355
1345
  };
1356
- gt = new WeakMap(), L = new WeakMap(), Ht = new WeakMap(), ie = new WeakMap(), h(Be, "ngFields");
1357
- let pe = Be;
1358
- var nt, re, ne;
1346
+ ut = new WeakMap(), L = new WeakMap(), Lt = new WeakMap(), se = new WeakMap(), h(Be, "ngFields");
1347
+ let ye = Be;
1348
+ var nt, re, ie;
1359
1349
  const ze = class ze extends HTMLElement {
1360
1350
  constructor() {
1361
1351
  super();
1362
1352
  //#created = false;
1363
1353
  d(this, nt);
1364
1354
  d(this, re);
1365
- d(this, ne, /* @__PURE__ */ h(() => {
1366
- this.fields = new pe(this), y(this, re, new ue(this)), N.log("NineTable connected."), this.dispatchEvent(new CustomEvent("load", { bubbles: !0, detail: { target: this } }));
1355
+ d(this, ie, /* @__PURE__ */ h(() => {
1356
+ this.fields = new ye(this), y(this, re, new fe(this)), N.log("NineTable connected."), this.dispatchEvent(new CustomEvent("load", { bubbles: !0, detail: { target: this } }));
1367
1357
  }, "#init"));
1368
- this.attachShadow({ mode: "open" }), y(this, nt, new ye(this));
1358
+ this.attachShadow({ mode: "open" }), y(this, nt, new be(this));
1369
1359
  }
1370
1360
  connectedCallback() {
1371
- t(this, ne).call(this);
1361
+ t(this, ie).call(this);
1372
1362
  }
1373
1363
  disconnectedCallback() {
1374
1364
  N.log("NineTable disconnected.");
@@ -1386,10 +1376,10 @@ const ze = class ze extends HTMLElement {
1386
1376
  return t(this, nt);
1387
1377
  }
1388
1378
  };
1389
- nt = new WeakMap(), re = new WeakMap(), ne = new WeakMap(), h(ze, "NineTable");
1390
- let me = ze;
1391
- customElements.get("nine-table") || customElements.define("nine-table", me);
1392
- const xt = class xt extends HTMLElement {
1379
+ nt = new WeakMap(), re = new WeakMap(), ie = new WeakMap(), h(ze, "NineTable");
1380
+ let pe = ze;
1381
+ customElements.get("nine-table") || customElements.define("nine-table", pe);
1382
+ const mt = class mt extends HTMLElement {
1393
1383
  // 👈 커스텀 스타일용 캐시 추가
1394
1384
  constructor() {
1395
1385
  super();
@@ -1400,55 +1390,55 @@ const xt = class xt extends HTMLElement {
1400
1390
  connectedCallback() {
1401
1391
  }
1402
1392
  };
1403
- h(xt, "BasicCellElement"), E(xt, "_styleCache", /* @__PURE__ */ new Map()), E(xt, "_customStyleCache", /* @__PURE__ */ new Map());
1404
- let xe = xt;
1405
- var T, Mt, p, Re, qe, ke, Te, Ce;
1406
- const Pe = class Pe extends xe {
1393
+ h(mt, "BasicCellElement"), E(mt, "_styleCache", /* @__PURE__ */ new Map()), E(mt, "_customStyleCache", /* @__PURE__ */ new Map());
1394
+ let me = mt;
1395
+ var k, Ht, p, Re, qe, Te, ke, Ce;
1396
+ const Pe = class Pe extends me {
1407
1397
  constructor() {
1408
1398
  super();
1409
- d(this, T);
1410
- d(this, Mt);
1399
+ d(this, k);
1400
+ d(this, Ht);
1411
1401
  d(this, p);
1412
1402
  d(this, Re);
1413
1403
  d(this, qe);
1414
- d(this, ke);
1415
1404
  d(this, Te);
1405
+ d(this, ke);
1416
1406
  E(this, "getDisplayText", /* @__PURE__ */ h((e) => {
1417
1407
  if (t(this, p))
1418
1408
  if (t(this, p).closest("tbody")) {
1419
- const s = t(this, p).closest("tr").data, r = parseInt(t(this, p).dataset.row);
1409
+ const s = t(this, p).closest("tr").data, i = parseInt(t(this, p).dataset.row);
1420
1410
  if (!s) return "";
1421
1411
  if (ninegrid.isNull(t(this, p).dataset.expr)) {
1422
1412
  if (!ninegrid.isNull(t(this, p).dataset.bind))
1423
1413
  return s[t(this, p).dataset.bind] || ninegrid.nvl(e, "");
1424
1414
  } else try {
1425
- return this.getExprValue(t(this, p).dataset.expr, s, r, t(this, p));
1415
+ return this.getExprValue(t(this, p).dataset.expr, s, i, t(this, p));
1426
1416
  } catch {
1427
1417
  console.error(t(this, p).dataset.expr, s, t(this, p).dataset.row);
1428
1418
  }
1429
1419
  return ninegrid.nvl(e, "");
1430
1420
  } else
1431
1421
  try {
1432
- return t(this, T).exprFunction(t(this, p).dataset.expr).call(this, null, -1, t(this, T).data);
1422
+ return t(this, k).exprFunction(t(this, p).dataset.expr).call(this, null, -1, t(this, k).data);
1433
1423
  } catch {
1434
1424
  }
1435
1425
  }, "getDisplayText"));
1436
1426
  d(this, Ce, /* @__PURE__ */ h(() => {
1437
- if (!(!t(this, T) || !t(this, T).template || !t(this, p).closest("tbody.bindable"))) {
1427
+ if (!(!t(this, k) || !t(this, k).template || !t(this, p).closest("tbody.bindable"))) {
1438
1428
  var e = ninegrid.j.querySelectorAll(t(this, p)).attr("suppress");
1439
1429
  if (e && (e = parseInt(e)), e && !isNaN(e)) {
1440
- var s = t(this, p).closest("tr"), r = [];
1430
+ var s = t(this, p).closest("tr"), i = [];
1441
1431
  $("th,td", s).each((m, W) => {
1442
1432
  var C = ninegrid.j.querySelectorAll(W).attr("suppress");
1443
- C && W.dataset.row && (C = parseInt(C), !isNaN(C) && C <= e && r.push(C));
1444
- }), r.sort();
1433
+ C && W.dataset.row && (C = parseInt(C), !isNaN(C) && C <= e && i.push(C));
1434
+ }), i.sort();
1445
1435
  var n = !1;
1446
- if (parseInt(s.sectionRowIndex / t(this, T).template.length) > 0)
1447
- for (var a of r) {
1436
+ if (parseInt(s.sectionRowIndex / t(this, k).template.length) > 0)
1437
+ for (var a of i) {
1448
1438
  if (a > e) break;
1449
- var o = parseInt(t(this, p).dataset.row), c = o - 1, l = t(this, p).closest("tr").data, f = t(this, T).data.get(c);
1439
+ var o = parseInt(t(this, p).dataset.row), c = o - 1, l = t(this, p).closest("tr").data, f = t(this, k).data.get(c);
1450
1440
  t(this, p).dataset.matrixRow;
1451
- var u = t(this, T).body.querySelector(`tbody.bindable [suppress="${a}"][data-matrix-row="${t(this, p).dataset.matrixRow}"]`), g = u.dataset.expr ? this.getExprValue(u.dataset.expr, l, o) : l[u.dataset.bind], b = u.dataset.expr ? this.getExprValue(u.dataset.expr, f, c) : f[u.dataset.bind];
1441
+ var u = t(this, k).body.querySelector(`tbody.bindable [suppress="${a}"][data-matrix-row="${t(this, p).dataset.matrixRow}"]`), g = u.dataset.expr ? this.getExprValue(u.dataset.expr, l, o) : l[u.dataset.bind], b = u.dataset.expr ? this.getExprValue(u.dataset.expr, f, c) : f[u.dataset.bind];
1452
1442
  if (g != b) {
1453
1443
  n = !0;
1454
1444
  break;
@@ -1457,17 +1447,17 @@ const Pe = class Pe extends xe {
1457
1447
  else
1458
1448
  n = !0;
1459
1449
  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"));
1460
- var x = parseInt(t(this, p).dataset.matrixRow), v = x - 1, A = t(this, T).body.querySelector(`tbody.bindable [data-col="${t(this, p).dataset.col}"][data-matrix-row="${v}"]`);
1450
+ var x = parseInt(t(this, p).dataset.matrixRow), v = x - 1, A = t(this, k).body.querySelector(`tbody.bindable [data-col="${t(this, p).dataset.col}"][data-matrix-row="${v}"]`);
1461
1451
  $(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");
1462
1452
  }
1463
1453
  }
1464
1454
  }, "#resetSuppress"));
1465
- E(this, "getExprValue", /* @__PURE__ */ h((e, s, r, n) => {
1455
+ E(this, "getExprValue", /* @__PURE__ */ h((e, s, i, n) => {
1466
1456
  if (typeof e < "u")
1467
1457
  try {
1468
- r = parseInt(r);
1458
+ i = parseInt(i);
1469
1459
  const a = e.replace("()", "");
1470
- return t(this, T)[a] ? t(this, T)[a].call(this, s, r, t(this, p)) : t(this, T).exprFunction(e).call(this, s, r, t(this, T).data);
1460
+ return t(this, k)[a] ? t(this, k)[a].call(this, s, i, t(this, p)) : t(this, k).exprFunction(e).call(this, s, i, t(this, k).data);
1471
1461
  } catch {
1472
1462
  return ["NG-COMBO"].includes(this.tagName) ? "" : e;
1473
1463
  }
@@ -1476,16 +1466,16 @@ const Pe = class Pe extends xe {
1476
1466
  }, "getExprValue"));
1477
1467
  }
1478
1468
  connectedCallback() {
1479
- super.connectedCallback(), y(this, T, this.getRootNode().host), y(this, p, this.closest("th,td")), y(this, Mt, t(this, p).closest("tr"));
1469
+ super.connectedCallback(), y(this, k, this.getRootNode().host), y(this, p, this.closest("th,td")), y(this, Ht, t(this, p).closest("tr"));
1480
1470
  }
1481
1471
  get value() {
1482
- var e = !t(this, T) || !t(this, T).dataManager || !t(this, p) || !t(this, p).dataset || !t(this, p).dataset.row || !t(this, p).dataset.bind ? "" : t(this, p).closest("tr").data[t(this, p).dataset.bind];
1472
+ var e = !t(this, k) || !t(this, k).dataManager || !t(this, p) || !t(this, p).dataset || !t(this, p).dataset.row || !t(this, p).dataset.bind ? "" : t(this, p).closest("tr").data[t(this, p).dataset.bind];
1483
1473
  return e ?? "";
1484
1474
  }
1485
1475
  set value(e) {
1486
1476
  var s = parseInt(t(this, p).dataset.row);
1487
- const r = this.getAttribute("update-row-state") != "false";
1488
- s < 0 ? t(this, T).data.setValueNF(parseInt(t(this, p).dataset.index), t(this, p).dataset.bind, e, r) : t(this, T).data.setValue(s, t(this, p).dataset.bind, e, r);
1477
+ const i = this.getAttribute("update-row-state") != "false";
1478
+ s < 0 ? t(this, k).data.setValueNF(parseInt(t(this, p).dataset.index), t(this, p).dataset.bind, e, i) : t(this, k).data.setValue(s, t(this, p).dataset.bind, e, i);
1489
1479
  }
1490
1480
  get row() {
1491
1481
  return parseInt(t(this, p).dataset.row);
@@ -1495,12 +1485,12 @@ const Pe = class Pe extends xe {
1495
1485
  }
1496
1486
  refresh() {
1497
1487
  const e = t(this, p).dataset.bind;
1498
- return parseInt(t(this, p).dataset.row), t(this, Mt).data[e];
1488
+ return parseInt(t(this, p).dataset.row), t(this, Ht).data[e];
1499
1489
  }
1500
1490
  };
1501
- T = new WeakMap(), Mt = new WeakMap(), p = new WeakMap(), Re = new WeakMap(), qe = new WeakMap(), ke = new WeakMap(), Te = new WeakMap(), Ce = new WeakMap(), h(Pe, "CellElement");
1502
- let ve = Pe;
1503
- const De = class De extends ve {
1491
+ k = new WeakMap(), Ht = new WeakMap(), p = new WeakMap(), Re = new WeakMap(), qe = new WeakMap(), Te = new WeakMap(), ke = new WeakMap(), Ce = new WeakMap(), h(Pe, "CellElement");
1492
+ let xe = Pe;
1493
+ const De = class De extends xe {
1504
1494
  constructor() {
1505
1495
  super();
1506
1496
  }
@@ -1512,20 +1502,20 @@ const De = class De extends ve {
1512
1502
  }
1513
1503
  };
1514
1504
  h(De, "EditableCellElement");
1515
- let we = De;
1516
- var $t, ot, bt, yt, oe, U, Le;
1517
- const je = class je extends we {
1505
+ let ve = De;
1506
+ var Mt, ot, gt, bt, ne, U, Le;
1507
+ const je = class je extends ve {
1518
1508
  constructor() {
1519
1509
  super();
1520
- d(this, $t);
1510
+ d(this, Mt);
1521
1511
  d(this, ot);
1512
+ d(this, gt);
1522
1513
  d(this, bt);
1523
- d(this, yt);
1524
- d(this, oe);
1514
+ d(this, ne);
1525
1515
  d(this, U);
1526
1516
  E(this, "refresh", /* @__PURE__ */ h(() => {
1527
1517
  const e = super.refresh();
1528
- t(this, $t).value = e;
1518
+ t(this, Mt).value = e;
1529
1519
  }, "refresh"));
1530
1520
  /**
1531
1521
  dataRefresh = (v) => {
@@ -1561,18 +1551,18 @@ const je = class je extends we {
1561
1551
  if (!["Escape", "Enter", "Tab", "Home", "End", "ArrowLeft", "ArrowRight", "PageUp", "PageDown", "Backspace", "Delete"].includes(e.code)) {
1562
1552
  if (t(this, ot) == "number") {
1563
1553
  let n = [];
1564
- if (t(this, U) && Number(t(this, U)) > 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, U) && (e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && e.target.selectionStart == e.target.selectionEnd) {
1565
- var s = e.target.value, r = s.indexOf(".");
1566
- if (r >= 0) {
1567
- var s = s.substr(r + 1, s.length);
1554
+ 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) {
1555
+ var s = e.target.value, i = s.indexOf(".");
1556
+ if (i >= 0) {
1557
+ var s = s.substr(i + 1, s.length);
1568
1558
  s.length >= Number(t(this, U)) && e.preventDefault();
1569
1559
  }
1570
1560
  }
1571
1561
  }
1572
- t(this, bt) && ninegrid.getByteLength(e.target.value) >= Number(t(this, bt)) && e.target.selectionStart == e.target.selectionEnd && e.preventDefault();
1562
+ t(this, gt) && ninegrid.getByteLength(e.target.value) >= Number(t(this, gt)) && e.target.selectionStart == e.target.selectionEnd && e.preventDefault();
1573
1563
  }
1574
1564
  }, "#onKeyDown"));
1575
- if (this.applyBaseStyle(), y(this, ot, this.getAttribute("type") || "text"), y(this, bt, this.getAttribute("maxbyte")), y(this, yt, this.getAttribute("min")), y(this, oe, this.getAttribute("max")), y(this, U, this.getAttribute("scale")), !["text", "number"].includes(t(this, ot))) throw `invalid type : ${t(this, ot)}`;
1565
+ 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)}`;
1576
1566
  }
1577
1567
  connectedCallback() {
1578
1568
  for (var e = [], s = 0; s < this.attributes.length; s++)
@@ -1582,11 +1572,11 @@ const je = class je extends we {
1582
1572
  ${e.join(" ")}
1583
1573
  ondragstart="return false;"
1584
1574
  >
1585
- `, super.connectedCallback(), y(this, $t, this.querySelector("input"));
1575
+ `, super.connectedCallback(), y(this, Mt, this.querySelector("input"));
1586
1576
  }
1587
1577
  };
1588
- $t = new WeakMap(), ot = new WeakMap(), bt = new WeakMap(), yt = new WeakMap(), oe = new WeakMap(), U = new WeakMap(), Le = new WeakMap(), h(je, "CellInputText");
1589
- let Se = je;
1578
+ Mt = new WeakMap(), ot = new WeakMap(), gt = new WeakMap(), bt = new WeakMap(), ne = new WeakMap(), U = new WeakMap(), Le = new WeakMap(), h(je, "CellInputText");
1579
+ let we = je;
1590
1580
  customElements.get("cell-input-text");
1591
- customElements.get("cell-input") || customElements.define("cell-input", Se);
1581
+ customElements.get("cell-input") || customElements.define("cell-input", we);
1592
1582
  //# sourceMappingURL=nine-table.js.map