@ninebone/table 0.0.774 → 0.0.776

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.
@@ -1,86 +1,86 @@
1
- var ps = Object.defineProperty;
2
- var ys = (C) => {
1
+ var ys = Object.defineProperty;
2
+ var ms = (C) => {
3
3
  throw TypeError(C);
4
4
  };
5
- var vs = (C, n, e) => n in C ? ps(C, n, { enumerable: !0, configurable: !0, writable: !0, value: e }) : C[n] = e;
6
- var h = (C, n) => ps(C, "name", { value: n, configurable: !0 });
7
- var q = (C, n, e) => vs(C, typeof n != "symbol" ? n + "" : n, e), Ee = (C, n, e) => n.has(C) || ys("Cannot " + e);
8
- var t = (C, n, e) => (Ee(C, n, "read from private field"), e ? e.call(C) : n.get(C)), d = (C, n, e) => n.has(C) ? ys("Cannot add the same private member more than once") : n instanceof WeakSet ? n.add(C) : n.set(C, e), p = (C, n, e, s) => (Ee(C, n, "write to private field"), s ? s.call(C, e) : n.set(C, e), e), Q = (C, n, e) => (Ee(C, n, "access private method"), e);
9
- var ms = (C, n, e, s) => ({
5
+ var Ss = (C, n, e) => n in C ? ys(C, n, { enumerable: !0, configurable: !0, writable: !0, value: e }) : C[n] = e;
6
+ var h = (C, n) => ys(C, "name", { value: n, configurable: !0 });
7
+ var q = (C, n, e) => Ss(C, typeof n != "symbol" ? n + "" : n, e), Ee = (C, n, e) => n.has(C) || ms("Cannot " + e);
8
+ var t = (C, n, e) => (Ee(C, n, "read from private field"), e ? e.call(C) : n.get(C)), d = (C, n, e) => n.has(C) ? ms("Cannot add the same private member more than once") : n instanceof WeakSet ? n.add(C) : n.set(C, e), y = (C, n, e, s) => (Ee(C, n, "write to private field"), s ? s.call(C, e) : n.set(C, e), e), V = (C, n, e) => (Ee(C, n, "access private method"), e);
9
+ var xs = (C, n, e, s) => ({
10
10
  set _(r) {
11
- p(C, n, r, e);
11
+ y(C, n, r, e);
12
12
  },
13
13
  get _() {
14
14
  return t(C, n, s);
15
15
  }
16
16
  });
17
- import { trace as Ss } from "@ninebone/util";
18
- const Qe = class Qe extends Ss.constructor {
17
+ import { trace as Rs } from "@ninebone/util";
18
+ const ts = class ts extends Rs.constructor {
19
19
  constructor() {
20
20
  super(), this.init("nine-table", "green");
21
21
  }
22
22
  };
23
- h(Qe, "Trace");
24
- let qe = Qe;
23
+ h(ts, "Trace");
24
+ let qe = ts;
25
25
  const S = new qe();
26
- var F, G, E, tt, et, st, Zt, nt, Jt;
27
- const ts = class ts extends HTMLElement {
26
+ var j, G, E, tt, et, st, Jt, nt, Qt;
27
+ const es = class es extends HTMLElement {
28
28
  constructor() {
29
29
  super();
30
- d(this, F);
30
+ d(this, j);
31
31
  d(this, G, !1);
32
32
  d(this, E);
33
33
  d(this, tt);
34
34
  d(this, et);
35
35
  d(this, st);
36
- d(this, Zt, /* @__PURE__ */ h(() => {
37
- if (!t(this, F)) return;
38
- const e = t(this, F).querySelector(".ng-container-body .ng-part-body");
39
- e && (p(this, st, new ResizeObserver(() => {
36
+ d(this, Jt, /* @__PURE__ */ h(() => {
37
+ if (!t(this, j)) return;
38
+ const e = t(this, j).querySelector(".ng-container-body .ng-part-body");
39
+ e && (y(this, st, new ResizeObserver(() => {
40
40
  this.refresh();
41
41
  })), t(this, st).observe(e));
42
42
  }, "#observeResize"));
43
43
  q(this, "refresh", /* @__PURE__ */ h(() => {
44
- if (!t(this, F) || !t(this, E) || t(this, G)) return;
44
+ if (!t(this, j) || !t(this, E) || t(this, G)) return;
45
45
  const e = t(this, E).container, s = e.querySelector("table");
46
46
  if (!s) return;
47
- const r = t(this, E).track, o = t(this, E).thumb, i = t(this, F).querySelector(".ng-container-bottom"), a = e.clientWidth, c = s.scrollWidth;
47
+ const r = t(this, E).track, i = t(this, E).thumb, o = t(this, j).querySelector(".ng-container-bottom"), a = e.clientWidth, c = s.scrollWidth;
48
48
  if (a !== 0 && c > a)
49
- i && (i.style.display = "flex");
49
+ o && (o.style.display = "flex");
50
50
  else {
51
- i && (i.style.display = "none");
51
+ o && (o.style.display = "none");
52
52
  return;
53
53
  }
54
54
  const l = r.clientWidth;
55
55
  if (l <= 0) return;
56
- const u = Math.max(Math.min(l * (a / c), l), 20);
57
- o.style.width = `${u}px`;
56
+ const g = Math.max(Math.min(l * (a / c), l), 20);
57
+ i.style.width = `${g}px`;
58
58
  const f = e.scrollLeft, b = c - a;
59
- let g = 0;
60
- b > 0 && (g = parseInt(f / b * (l - u), 10)), g < 0 && (g = 0);
61
- const y = l - u;
62
- g > y && (g = y), o.style.left = `${g}px`, t(this, E).left.disabled = g === 0, t(this, E).right.disabled = g >= y - 1;
59
+ let u = 0;
60
+ b > 0 && (u = parseInt(f / b * (l - g), 10)), u < 0 && (u = 0);
61
+ const p = l - g;
62
+ u > p && (u = p), i.style.left = `${u}px`, t(this, E).left.disabled = u === 0, t(this, E).right.disabled = u >= p - 1;
63
63
  }, "refresh"));
64
64
  d(this, nt, /* @__PURE__ */ h((e) => {
65
65
  if (!t(this, E)) return !1;
66
66
  const s = t(this, E).container, r = s.querySelector("table");
67
67
  if (!r) return !1;
68
- const o = t(this, E).track.getBoundingClientRect(), i = t(this, E).thumb.clientWidth;
68
+ const i = t(this, E).track.getBoundingClientRect(), o = t(this, E).thumb.clientWidth;
69
69
  let a = e;
70
70
  a < 0 && (a = 0);
71
- const c = o.width - i;
71
+ const c = i.width - o;
72
72
  a > c && (a = c), a = parseInt(a, 10), t(this, E).thumb.style.left = `${a}px`, t(this, E).left.disabled = a === 0, t(this, E).right.disabled = a >= c - 1;
73
73
  const l = s.clientWidth, f = r.scrollWidth - l;
74
74
  return c > 0 && f > 0 && (s.scrollLeft = a / c * f), a > 0 && a < c - 1;
75
75
  }, "#thumbMoveTo"));
76
- d(this, Jt, /* @__PURE__ */ h(() => {
76
+ d(this, Qt, /* @__PURE__ */ h(() => {
77
77
  const e = /* @__PURE__ */ h((r) => {
78
78
  clearInterval(t(this, tt)), clearInterval(t(this, et));
79
- const o = parseInt(t(this, E).thumb.style.left || 0, 10);
80
- t(this, nt).call(this, o + r), p(this, tt, setInterval(() => {
81
- clearInterval(t(this, tt)), p(this, et, setInterval(() => {
82
- const i = parseInt(t(this, E).thumb.style.left || 0, 10);
83
- t(this, nt).call(this, i + r) || clearInterval(t(this, et));
79
+ const i = parseInt(t(this, E).thumb.style.left || 0, 10);
80
+ t(this, nt).call(this, i + r), y(this, tt, setInterval(() => {
81
+ clearInterval(t(this, tt)), y(this, et, setInterval(() => {
82
+ const o = parseInt(t(this, E).thumb.style.left || 0, 10);
83
+ t(this, nt).call(this, o + r) || clearInterval(t(this, et));
84
84
  }, 50));
85
85
  }, 500));
86
86
  }, "delayScroll"), s = /* @__PURE__ */ h(() => {
@@ -95,24 +95,24 @@ const ts = class ts extends HTMLElement {
95
95
  }), t(this, E).left.addEventListener("touchstart", () => e(-20)), t(this, E).right.addEventListener("touchstart", () => e(20)), t(this, E).track.addEventListener("mousedown", (r) => {
96
96
  if (r.button !== 0) return;
97
97
  r.preventDefault();
98
- const o = t(this, E).track.getBoundingClientRect(), i = t(this, E).thumb.clientWidth;
99
- t(this, nt).call(this, r.clientX - o.left - i / 2);
98
+ const i = t(this, E).track.getBoundingClientRect(), o = t(this, E).thumb.clientWidth;
99
+ t(this, nt).call(this, r.clientX - i.left - o / 2);
100
100
  }), t(this, E).thumb.addEventListener("mousedown", (r) => {
101
101
  if (r.button !== 0) return;
102
- r.stopPropagation(), r.preventDefault(), p(this, G, !0), this.shiftX = r.clientX - t(this, E).thumb.getBoundingClientRect().left;
103
- const o = /* @__PURE__ */ h((a) => {
102
+ r.stopPropagation(), r.preventDefault(), y(this, G, !0), this.shiftX = r.clientX - t(this, E).thumb.getBoundingClientRect().left;
103
+ const i = /* @__PURE__ */ h((a) => {
104
104
  if (!t(this, G)) return;
105
105
  const c = t(this, E).track.getBoundingClientRect();
106
106
  t(this, nt).call(this, a.clientX - c.left - this.shiftX);
107
- }, "onMouseMove"), i = /* @__PURE__ */ h(() => {
108
- p(this, G, !1), s(), document.removeEventListener("mousemove", o), document.removeEventListener("mouseup", i), this.refresh();
107
+ }, "onMouseMove"), o = /* @__PURE__ */ h(() => {
108
+ y(this, G, !1), s(), document.removeEventListener("mousemove", i), document.removeEventListener("mouseup", o), this.refresh();
109
109
  }, "onMouseUp");
110
- document.addEventListener("mousemove", o), document.addEventListener("mouseup", i);
110
+ document.addEventListener("mousemove", i), document.addEventListener("mouseup", o);
111
111
  });
112
112
  }, "#init"));
113
113
  }
114
114
  connectedCallback() {
115
- if (p(this, F, this.closest("nine-table-sheet") || this.getRootNode().host), !t(this, F)) return;
115
+ if (y(this, j, this.closest("nine-table-sheet") || this.getRootNode().host), !t(this, j)) return;
116
116
  this.innerHTML = `
117
117
  <style>
118
118
  nine-table-hscrollbar {
@@ -177,12 +177,12 @@ const ts = class ts extends HTMLElement {
177
177
  <button class='ng-scroll-right' disabled><div class='ng-scroll-icon'></div></button>
178
178
  `;
179
179
  const e = /* @__PURE__ */ h(() => {
180
- const s = t(this, F).querySelector(".ng-container-body .ng-part-body");
180
+ const s = t(this, j).querySelector(".ng-container-body .ng-part-body");
181
181
  if (!s) {
182
182
  setTimeout(e, 10);
183
183
  return;
184
184
  }
185
- p(this, E, {
185
+ y(this, E, {
186
186
  container: s,
187
187
  track: this.querySelector(".ng-scroll-track"),
188
188
  thumb: this.querySelector(".ng-scroll-thumb"),
@@ -190,7 +190,7 @@ const ts = class ts extends HTMLElement {
190
190
  right: this.querySelector(".ng-scroll-right")
191
191
  }), s.addEventListener("scroll", () => {
192
192
  t(this, G) || this.refresh();
193
- }), t(this, Jt).call(this), t(this, Zt).call(this), this.refresh();
193
+ }), t(this, Qt).call(this), t(this, Jt).call(this), this.refresh();
194
194
  }, "initWhenReady");
195
195
  e();
196
196
  }
@@ -198,67 +198,67 @@ const ts = class ts extends HTMLElement {
198
198
  t(this, st) && t(this, st).disconnect();
199
199
  }
200
200
  };
201
- F = new WeakMap(), G = new WeakMap(), E = new WeakMap(), tt = new WeakMap(), et = new WeakMap(), st = new WeakMap(), Zt = new WeakMap(), nt = new WeakMap(), Jt = new WeakMap(), h(ts, "NineTableHScrollBar");
202
- let Ce = ts;
201
+ j = new WeakMap(), G = new WeakMap(), E = new WeakMap(), tt = new WeakMap(), et = new WeakMap(), st = new WeakMap(), Jt = new WeakMap(), nt = new WeakMap(), Qt = new WeakMap(), h(es, "NineTableHScrollBar");
202
+ let Ce = es;
203
203
  customElements.get("nine-table-hscrollbar") || customElements.define("nine-table-hscrollbar", Ce);
204
- var rt, ot, pt, k, Tt, kt, Qt;
205
- const es = class es extends HTMLElement {
204
+ var rt, ot, yt, k, kt, It, te;
205
+ const ss = class ss extends HTMLElement {
206
206
  constructor() {
207
207
  super();
208
208
  d(this, rt);
209
209
  d(this, ot);
210
- d(this, pt, !1);
210
+ d(this, yt, !1);
211
211
  d(this, k);
212
- d(this, Tt, 0);
213
212
  d(this, kt, 0);
213
+ d(this, It, 0);
214
214
  q(this, "refresh", /* @__PURE__ */ h(() => {
215
215
  if (S.log("vscrollbar.refresh"), !t(this, rt) || !t(this, k)) return;
216
- const e = t(this, k).container, s = t(this, k).track, r = t(this, k).thumb, o = e.clientHeight, i = t(this, rt).data.length, a = t(this, ot).getRowHeight(), c = i * a;
217
- if (c <= o || i === 0) {
216
+ const e = t(this, k).container, s = t(this, k).track, r = t(this, k).thumb, i = e.clientHeight, o = t(this, rt).data.length, a = t(this, ot).getRowHeight(), c = o * a;
217
+ if (c <= i || 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 u = Math.max(Math.min(l * (o / c), l), 20);
225
- r.style.height = `${u}px`;
226
- const f = e.scrollTop, b = Math.max(c - o, 1);
224
+ const g = Math.max(Math.min(l * (i / c), l), 20);
225
+ r.style.height = `${g}px`;
226
+ const f = e.scrollTop, b = Math.max(c - i, 1);
227
227
  S.log(e, f, b);
228
- let g = 0;
229
- b > 0 && (g = f / b * (l - u));
230
- const y = l - u;
231
- g < 0 && (g = 0), g > y && (g = y), r.style.top = `${g}px`, t(this, k).top.disabled = f <= 0, t(this, k).bottom.disabled = f >= b - 1;
228
+ let u = 0;
229
+ b > 0 && (u = f / b * (l - g));
230
+ const p = l - g;
231
+ u < 0 && (u = 0), u > p && (u = p), r.style.top = `${u}px`, t(this, k).top.disabled = f <= 0, t(this, k).bottom.disabled = f >= b - 1;
232
232
  }, "refresh"));
233
- d(this, Qt, /* @__PURE__ */ h(() => {
233
+ d(this, te, /* @__PURE__ */ h(() => {
234
234
  S.log("nine-table-vscrollbar.#init");
235
235
  const e = t(this, k).container, s = /* @__PURE__ */ h(() => {
236
- const o = (t(this, rt).data.get() || []).length, i = t(this, ot).getRowHeight();
237
- return o * i;
236
+ const i = (t(this, rt).data.get() || []).length, o = t(this, ot).getRowHeight();
237
+ return i * o;
238
238
  }, "getContentHeight");
239
239
  t(this, k).thumb.addEventListener("mousedown", (r) => {
240
240
  if (r.button !== 0) return;
241
- r.stopPropagation(), r.preventDefault(), p(this, pt, !0), p(this, Tt, r.clientY), p(this, kt, e.scrollTop);
242
- const o = /* @__PURE__ */ h((a) => {
243
- if (!t(this, pt)) return;
244
- const c = t(this, k).track.getBoundingClientRect(), l = t(this, k).thumb.clientHeight, f = c.height - l, b = a.clientY - t(this, Tt), g = e.clientHeight, y = s(), w = Math.max(y - g, 1);
245
- if (f > 0 && w > 0) {
246
- const v = b / f * w;
247
- let m = t(this, kt) + v;
248
- const T = Math.max(0, y - g);
241
+ r.stopPropagation(), r.preventDefault(), y(this, yt, !0), y(this, kt, r.clientY), y(this, It, e.scrollTop);
242
+ const i = /* @__PURE__ */ h((a) => {
243
+ if (!t(this, yt)) return;
244
+ const c = t(this, k).track.getBoundingClientRect(), l = t(this, k).thumb.clientHeight, f = c.height - l, b = a.clientY - t(this, kt), u = e.clientHeight, p = s(), x = Math.max(p - u, 1);
245
+ if (f > 0 && x > 0) {
246
+ const w = b / f * x;
247
+ let m = t(this, It) + w;
248
+ const T = Math.max(0, p - u);
249
249
  m < 0 && (m = 0), m > T && (m = T), e.scrollTop = m;
250
250
  }
251
251
  this.refresh();
252
- }, "onMouseMove"), i = /* @__PURE__ */ h(() => {
253
- p(this, pt, !1), document.removeEventListener("mousemove", o), document.removeEventListener("mouseup", i), this.refresh();
252
+ }, "onMouseMove"), o = /* @__PURE__ */ h(() => {
253
+ y(this, yt, !1), document.removeEventListener("mousemove", i), document.removeEventListener("mouseup", o), this.refresh();
254
254
  }, "onMouseUp");
255
- document.addEventListener("mousemove", o), document.addEventListener("mouseup", i);
255
+ document.addEventListener("mousemove", i), document.addEventListener("mouseup", o);
256
256
  }), t(this, k).track.addEventListener("mousedown", (r) => {
257
257
  if (r.button !== 0 || r.target === t(this, k).thumb) return;
258
- const o = t(this, k).track.getBoundingClientRect(), i = t(this, k).thumb.clientHeight, a = r.clientY - o.top - i / 2, l = o.height - i, u = e.clientHeight, f = s(), b = Math.max(f - u, 1);
258
+ const i = t(this, k).track.getBoundingClientRect(), o = t(this, k).thumb.clientHeight, a = r.clientY - i.top - o / 2, l = i.height - o, g = e.clientHeight, f = s(), b = Math.max(f - g, 1);
259
259
  if (l > 0 && b > 0) {
260
- const g = Math.max(0, Math.min(1, a / l));
261
- e.scrollTop = g * b;
260
+ const u = Math.max(0, Math.min(1, a / l));
261
+ e.scrollTop = u * b;
262
262
  }
263
263
  this.refresh();
264
264
  }), t(this, k).top.addEventListener("click", () => {
@@ -269,7 +269,7 @@ const es = class es extends HTMLElement {
269
269
  }, "#init"));
270
270
  }
271
271
  connectedCallback() {
272
- p(this, rt, this.getRootNode().host), p(this, ot, this.closest("nine-table-sheet")), this.innerHTML = `
272
+ y(this, rt, this.getRootNode().host), y(this, ot, this.closest("nine-table-sheet")), this.innerHTML = `
273
273
  <style>
274
274
  nine-table-vscrollbar {
275
275
  display: flex;
@@ -339,65 +339,65 @@ const es = class es extends HTMLElement {
339
339
  setTimeout(e, 10);
340
340
  return;
341
341
  }
342
- p(this, k, {
342
+ y(this, k, {
343
343
  container: s,
344
344
  track: this.querySelector(".ng-scroll-track"),
345
345
  thumb: this.querySelector(".ng-scroll-thumb"),
346
346
  top: this.querySelector(".ng-scroll-top"),
347
347
  bottom: this.querySelector(".ng-scroll-bottom")
348
- }), t(this, Qt).call(this), this.refresh();
348
+ }), t(this, te).call(this), this.refresh();
349
349
  }, "initWhenReady");
350
350
  e();
351
351
  }
352
352
  };
353
- rt = new WeakMap(), ot = new WeakMap(), pt = new WeakMap(), k = new WeakMap(), Tt = new WeakMap(), kt = new WeakMap(), Qt = new WeakMap(), h(es, "NineTableVScrollBar");
354
- let Te = es;
353
+ rt = new WeakMap(), ot = new WeakMap(), yt = new WeakMap(), k = new WeakMap(), kt = new WeakMap(), It = new WeakMap(), te = new WeakMap(), h(ss, "NineTableVScrollBar");
354
+ let Te = ss;
355
355
  customElements.get("nine-table-vscrollbar") || customElements.define("nine-table-vscrollbar", Te);
356
- var V, R, it, j, O, K, at, It, je, Ye, te, ee, Lt, Mt, Ht, se, ne, $t, Ve, yt, Nt, re;
357
- const ss = class ss {
356
+ var U, A, it, Y, O, Z, at, Lt, Ye, Ve, ee, se, Mt, Ht, $t, ne, re, Nt, Ue, mt, _t, oe;
357
+ const ns = class ns {
358
358
  constructor(n) {
359
- d(this, V);
360
- d(this, R);
359
+ d(this, U);
360
+ d(this, A);
361
361
  d(this, it);
362
- d(this, j, /* @__PURE__ */ new Map());
362
+ d(this, Y, /* @__PURE__ */ new Map());
363
363
  d(this, O, null);
364
- d(this, K, null);
364
+ d(this, Z, null);
365
365
  d(this, at, 0);
366
- d(this, It, 40);
367
- d(this, je, !1);
366
+ d(this, Lt, 40);
368
367
  d(this, Ye, !1);
368
+ d(this, Ve, !1);
369
369
  //#ticking = false; // 🎯 고속 스크롤 스로틀링용 플래그
370
- d(this, te, 3);
370
+ d(this, ee, 3);
371
371
  q(this, "refresh", /* @__PURE__ */ h(() => {
372
372
  var e;
373
373
  S.log("rowManager.refresh");
374
- const n = t(this, R).querySelector(".ng-container-body .ng-part-body");
375
- n && (t(this, Lt).call(this), t(this, Mt).call(this), t(this, yt).call(this, n.scrollTop), (e = t(this, R).querySelector("nine-table-vscrollbar")) == null || e.refresh());
374
+ const n = t(this, A).querySelector(".ng-container-body .ng-part-body");
375
+ n && (t(this, Mt).call(this), t(this, Ht).call(this), t(this, mt).call(this, n.scrollTop), (e = t(this, A).querySelector("nine-table-vscrollbar")) == null || e.refresh());
376
376
  }, "refresh"));
377
377
  q(this, "initialize", /* @__PURE__ */ h(() => {
378
- S.log("rowManager.initialize"), p(this, it, {
379
- scrollTables: t(this, R).querySelectorAll(".ng-part-body table"),
380
- firstTr: t(this, R).querySelector(".ng-container-body .ng-part-body tbody.bindable-tbody tr:not(.nodata)")
381
- }), p(this, O, null), t(this, j).clear(), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((i) => {
382
- const a = t(this, R).querySelector(i);
378
+ S.log("rowManager.initialize"), y(this, it, {
379
+ scrollTables: t(this, A).querySelectorAll(".ng-part-body table"),
380
+ firstTr: t(this, A).querySelector(".ng-container-body .ng-part-body tbody.bindable-tbody tr:not(.nodata)")
381
+ }), y(this, O, null), t(this, Y).clear(), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((o) => {
382
+ const a = t(this, A).querySelector(o);
383
383
  if (!a) return;
384
384
  const c = a.querySelector(".ng-part-body table");
385
385
  if (!c) return;
386
386
  const l = c.querySelector("tbody.bindable-tbody");
387
387
  if (!l) return;
388
388
  const f = Array.from(l.querySelectorAll("tr")).map((b) => b.cloneNode(!0));
389
- t(this, j).set(i, f);
389
+ t(this, Y).set(o, f);
390
390
  });
391
- const n = t(this, R).querySelector(".ng-container-body .ng-part-body"), e = t(this, R).querySelector(".ng-container-left .ng-part-body"), s = t(this, R).querySelector(".ng-container-right .ng-part-body"), r = t(this, R).querySelector(".ng-container-body .ng-part-header"), o = t(this, R).querySelector(".ng-container-body .ng-part-footer");
391
+ const n = t(this, A).querySelector(".ng-container-body .ng-part-body"), e = t(this, A).querySelector(".ng-container-left .ng-part-body"), s = t(this, A).querySelector(".ng-container-right .ng-part-body"), r = t(this, A).querySelector(".ng-container-body .ng-part-header"), i = t(this, A).querySelector(".ng-container-body .ng-part-footer");
392
392
  if (n) {
393
- t(this, Lt).call(this), t(this, $t).call(this), t(this, Mt).call(this), t(this, yt).call(this, n.scrollTop);
394
- let i = !1;
393
+ t(this, Mt).call(this), t(this, Nt).call(this), t(this, Ht).call(this), t(this, mt).call(this, n.scrollTop);
394
+ let o = !1;
395
395
  const a = /* @__PURE__ */ h((c) => {
396
396
  var f;
397
- if (i) return;
398
- i = !0;
399
- const l = c.scrollTop, u = c.scrollLeft;
400
- n && n.scrollTop !== l && (n.scrollTop = l), e && e.scrollTop !== l && (e.scrollTop = l), s && s.scrollTop !== l && (s.scrollTop = l), r && r.scrollLeft !== u && (r.scrollLeft = u), o && o.scrollLeft !== u && (o.scrollLeft = u), t(this, yt).call(this, l), (f = t(this, R).querySelector("nine-table-vscrollbar")) == null || f.refresh(), i = !1;
397
+ if (o) return;
398
+ o = !0;
399
+ const l = c.scrollTop, g = c.scrollLeft;
400
+ n && n.scrollTop !== l && (n.scrollTop = l), e && e.scrollTop !== l && (e.scrollTop = l), s && s.scrollTop !== l && (s.scrollTop = l), r && r.scrollLeft !== g && (r.scrollLeft = g), i && i.scrollLeft !== g && (i.scrollLeft = g), t(this, mt).call(this, l), (f = t(this, A).querySelector("nine-table-vscrollbar")) == null || f.refresh(), o = !1;
401
401
  }, "handleContainerScroll");
402
402
  [n, e, s].forEach((c) => {
403
403
  c == null || c.addEventListener("scroll", (l) => {
@@ -406,158 +406,158 @@ const ss = class ss {
406
406
  });
407
407
  }
408
408
  }, "initialize"));
409
- d(this, ee, /* @__PURE__ */ h((n, e) => {
409
+ d(this, se, /* @__PURE__ */ h((n, e) => {
410
410
  S.log("rowManager.#renderRows");
411
- const s = t(this, j).get(e);
411
+ const s = t(this, Y).get(e);
412
412
  if (!s || s.length === 0) return;
413
413
  const r = n.querySelector(".ng-part-body tbody.bindable-tbody");
414
414
  if (!r) return;
415
415
  r.querySelectorAll("tr:not(.nodata)").forEach((a) => a.remove());
416
- const o = r.querySelector("tr.nodata"), i = document.createDocumentFragment();
417
- for (let a = 0; a < t(this, It); a++)
416
+ const i = r.querySelector("tr.nodata"), o = document.createDocumentFragment();
417
+ for (let a = 0; a < t(this, Lt); a++)
418
418
  s.forEach((c) => {
419
- i.appendChild(c.cloneNode(!0));
419
+ o.appendChild(c.cloneNode(!0));
420
420
  });
421
- o ? o.before(i) : r.appendChild(i), e === ".ng-container-body" && (t(this, it).firstTr = r.querySelector("tr:not(.nodata)"));
421
+ i ? i.before(o) : r.appendChild(o), e === ".ng-container-body" && (t(this, it).firstTr = r.querySelector("tr:not(.nodata)"));
422
422
  }, "#renderRows"));
423
- d(this, Lt, /* @__PURE__ */ h(() => {
423
+ d(this, Mt, /* @__PURE__ */ h(() => {
424
424
  if (t(this, O) !== null && t(this, O) > 0)
425
425
  return t(this, O);
426
- const n = t(this, R).querySelector(".ng-container-body .ng-part-body");
426
+ const n = t(this, A).querySelector(".ng-container-body .ng-part-body");
427
427
  S.log("rowManager.#measureAndCacheHeight");
428
- const e = t(this, j).get(".ng-container-body");
428
+ const e = t(this, Y).get(".ng-container-body");
429
429
  if (!e || e.length === 0) throw new Error("invalid dom");
430
430
  const s = n.querySelector("tbody.bindable-tbody");
431
431
  if (S.log(s), !s) throw new Error("invalid dom");
432
432
  s.querySelectorAll("tr:not(.nodata)").forEach((b) => b.remove());
433
- const r = s.querySelector("tr.nodata"), o = document.createDocumentFragment();
433
+ const r = s.querySelector("tr.nodata"), i = document.createDocumentFragment();
434
434
  e.forEach((b) => {
435
- o.appendChild(b.cloneNode(!0));
436
- }), r ? r.before(o) : s.appendChild(o);
437
- const i = t(this, R), a = i.style.display, c = i.style.visibility, l = i.style.position;
438
- (a === "none" || window.getComputedStyle(i).display === "none") && (i.style.display = "block", i.style.visibility = "hidden", i.style.position = "absolute");
439
- let u = 0;
435
+ i.appendChild(b.cloneNode(!0));
436
+ }), r ? r.before(i) : s.appendChild(i);
437
+ const o = t(this, A), a = o.style.display, c = o.style.visibility, l = o.style.position;
438
+ (a === "none" || window.getComputedStyle(o).display === "none") && (o.style.display = "block", o.style.visibility = "hidden", o.style.position = "absolute");
439
+ let g = 0;
440
440
  const f = s.querySelectorAll("tr");
441
441
  return f.forEach((b) => {
442
- let g = b.offsetHeight || b.getBoundingClientRect().height;
443
- if (g === 0) {
444
- const y = window.getComputedStyle(b);
445
- g = parseFloat(y.height) || parseFloat(y.minHeight) || 0;
442
+ let u = b.offsetHeight || b.getBoundingClientRect().height;
443
+ if (u === 0) {
444
+ const p = window.getComputedStyle(b);
445
+ u = parseFloat(p.height) || parseFloat(p.minHeight) || 0;
446
446
  }
447
- u += g;
448
- }), f.forEach((b) => b.remove()), i.style.display = a, i.style.visibility = c, i.style.position = l, u <= 0 ? -1 : (p(this, O, u), t(this, Ht).call(this), t(this, O));
447
+ g += u;
448
+ }), f.forEach((b) => b.remove()), o.style.display = a, o.style.visibility = c, o.style.position = l, g <= 0 ? -1 : (y(this, O, g), t(this, $t).call(this), t(this, O));
449
449
  }, "#measureAndCacheHeight"));
450
- d(this, Mt, /* @__PURE__ */ h(() => {
450
+ d(this, Ht, /* @__PURE__ */ h(() => {
451
451
  S.log("rowManager.#updateVirtualScrollHeight");
452
- const e = (t(this, V).data.get() || []).length, s = t(this, O), r = e * s;
453
- S.log("🔍 [VirtualHeight]", { totalCount: e, rowHeight: s, totalVirtualHeight: r }), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((o) => {
454
- const i = t(this, R).querySelector(o);
455
- if (!i) return;
456
- const a = i.querySelector(".ng-part-body .ng-virtual-spacer");
452
+ const e = (t(this, U).data.get() || []).length, s = t(this, O), r = e * s;
453
+ S.log("🔍 [VirtualHeight]", { totalCount: e, rowHeight: s, totalVirtualHeight: r }), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((i) => {
454
+ const o = t(this, A).querySelector(i);
455
+ if (!o) return;
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, Ht, /* @__PURE__ */ h(() => {
460
+ d(this, $t, /* @__PURE__ */ h(() => {
461
461
  if (t(this, at) > 0 && t(this, O) > 0) {
462
462
  const n = Math.ceil(t(this, at) / t(this, O));
463
- p(this, It, n + t(this, te));
463
+ y(this, Lt, n + t(this, ee));
464
464
  }
465
465
  }, "#updateRowCount"));
466
- d(this, se, /* @__PURE__ */ h(() => {
467
- var a, c, l, u, f, b;
468
- const n = t(this, R).querySelector(".ng-container-left .ng-part-body table"), e = t(this, R).querySelector(".ng-container-body .ng-part-body table"), s = t(this, R).querySelector(".ng-container-right .ng-part-body table");
466
+ d(this, ne, /* @__PURE__ */ h(() => {
467
+ var a, c, l, g, f, b;
468
+ const n = t(this, A).querySelector(".ng-container-left .ng-part-body table"), e = t(this, A).querySelector(".ng-container-body .ng-part-body table"), s = t(this, A).querySelector(".ng-container-right .ng-part-body table");
469
469
  if (e) {
470
- const g = n ? Array.from(n.querySelectorAll("tbody tr")) : [], y = Array.from(e.querySelectorAll("tbody tr")), w = s ? Array.from(s.querySelectorAll("tbody tr")) : [], v = Math.max(g.length, y.length, w.length);
471
- for (let m = 0; m < v; m++) {
470
+ const u = n ? Array.from(n.querySelectorAll("tbody tr")) : [], p = Array.from(e.querySelectorAll("tbody tr")), x = s ? Array.from(s.querySelectorAll("tbody tr")) : [], w = Math.max(u.length, p.length, x.length);
471
+ for (let m = 0; m < w; m++) {
472
472
  const T = [
473
- ((a = g[m]) == null ? void 0 : a.getBoundingClientRect().height) || 0,
474
- ((c = y[m]) == null ? void 0 : c.getBoundingClientRect().height) || 0,
475
- ((l = w[m]) == null ? void 0 : l.getBoundingClientRect().height) || 0
476
- ], A = Math.max(...T);
477
- A > 0 && (g[m] && (g[m].style.height = `${A}px`), y[m] && (y[m].style.height = `${A}px`), w[m] && (w[m].style.height = `${A}px`));
473
+ ((a = u[m]) == null ? void 0 : a.getBoundingClientRect().height) || 0,
474
+ ((c = p[m]) == null ? void 0 : c.getBoundingClientRect().height) || 0,
475
+ ((l = x[m]) == null ? void 0 : l.getBoundingClientRect().height) || 0
476
+ ], R = Math.max(...T);
477
+ R > 0 && (u[m] && (u[m].style.height = `${R}px`), p[m] && (p[m].style.height = `${R}px`), x[m] && (x[m].style.height = `${R}px`));
478
478
  }
479
479
  }
480
- const r = t(this, R).querySelector(".ng-container-left .ng-part-footer table"), o = t(this, R).querySelector(".ng-container-body .ng-part-footer table"), i = t(this, R).querySelector(".ng-container-right .ng-part-footer table");
481
- if (o) {
482
- const g = r ? Array.from(r.querySelectorAll("tfoot tr")) : [], y = Array.from(o.querySelectorAll("tfoot tr")), w = i ? Array.from(i.querySelectorAll("tfoot tr")) : [], v = Math.max(g.length, y.length, w.length);
483
- for (let m = 0; m < v; m++) {
480
+ const r = t(this, A).querySelector(".ng-container-left .ng-part-footer table"), i = t(this, A).querySelector(".ng-container-body .ng-part-footer table"), o = t(this, A).querySelector(".ng-container-right .ng-part-footer table");
481
+ if (i) {
482
+ const u = r ? Array.from(r.querySelectorAll("tfoot tr")) : [], p = Array.from(i.querySelectorAll("tfoot tr")), x = o ? Array.from(o.querySelectorAll("tfoot tr")) : [], w = Math.max(u.length, p.length, x.length);
483
+ for (let m = 0; m < w; m++) {
484
484
  const T = [
485
- ((u = g[m]) == null ? void 0 : u.getBoundingClientRect().height) || 0,
486
- ((f = y[m]) == null ? void 0 : f.getBoundingClientRect().height) || 0,
487
- ((b = w[m]) == null ? void 0 : b.getBoundingClientRect().height) || 0
488
- ], A = Math.max(...T);
489
- A > 0 && (g[m] && (g[m].style.height = `${A}px`), y[m] && (y[m].style.height = `${A}px`), w[m] && (w[m].style.height = `${A}px`));
485
+ ((g = u[m]) == null ? void 0 : g.getBoundingClientRect().height) || 0,
486
+ ((f = p[m]) == null ? void 0 : f.getBoundingClientRect().height) || 0,
487
+ ((b = x[m]) == null ? void 0 : b.getBoundingClientRect().height) || 0
488
+ ], R = Math.max(...T);
489
+ R > 0 && (u[m] && (u[m].style.height = `${R}px`), p[m] && (p[m].style.height = `${R}px`), x[m] && (x[m].style.height = `${R}px`));
490
490
  }
491
491
  }
492
492
  }, "#syncRowHeights"));
493
- d(this, ne, /* @__PURE__ */ h(() => {
494
- !t(this, R) || !(t(this, R) instanceof HTMLElement) || (p(this, K, new ResizeObserver((n) => {
493
+ d(this, re, /* @__PURE__ */ h(() => {
494
+ !t(this, A) || !(t(this, A) instanceof HTMLElement) || (y(this, Z, new ResizeObserver((n) => {
495
495
  for (const e of n) {
496
496
  const s = e.target;
497
497
  if (!s.classList.contains("active")) continue;
498
498
  const r = e.contentRect.height;
499
499
  if (r > 0) {
500
- let o = 0;
501
- const i = s.querySelector(".ng-part-header"), a = s.querySelector(".ng-part-footer");
502
- i && (o += i.offsetHeight), a && (o += a.offsetHeight);
503
- const c = Math.max(r - o, 100);
504
- t(this, at) !== c && (p(this, at, c), t(this, Ht).call(this), t(this, O) !== null && (t(this, $t).call(this), this.refresh()));
500
+ let i = 0;
501
+ const o = s.querySelector(".ng-part-header"), a = s.querySelector(".ng-part-footer");
502
+ o && (i += o.offsetHeight), a && (i += a.offsetHeight);
503
+ const c = Math.max(r - i, 100);
504
+ t(this, at) !== c && (y(this, at, c), t(this, $t).call(this), t(this, O) !== null && (t(this, Nt).call(this), this.refresh()));
505
505
  }
506
506
  }
507
- })), t(this, K).observe(t(this, R)));
507
+ })), t(this, Z).observe(t(this, A)));
508
508
  }, "#initResizeObserver"));
509
- d(this, $t, /* @__PURE__ */ h(() => {
509
+ d(this, Nt, /* @__PURE__ */ h(() => {
510
510
  S.log("rowManager.#renderAllContainers"), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((n) => {
511
- const e = t(this, R).querySelector(n);
512
- e && e.querySelector(".ng-part-body tbody.bindable-tbody") && t(this, ee).call(this, e, n);
513
- }), t(this, re).call(this), t(this, se).call(this);
511
+ const e = t(this, A).querySelector(n);
512
+ e && e.querySelector(".ng-part-body tbody.bindable-tbody") && t(this, se).call(this, e, n);
513
+ }), t(this, oe).call(this), t(this, ne).call(this);
514
514
  }, "#renderAllContainers"));
515
- d(this, Ve, /* @__PURE__ */ h((n) => {
515
+ d(this, Ue, /* @__PURE__ */ h((n) => {
516
516
  [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((e) => {
517
517
  var l;
518
- const s = t(this, R).querySelector(e);
518
+ const s = t(this, A).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 o = Array.from(r.querySelectorAll("tr:not(.nodata)")), i = ((l = t(this, j).get(e)) == null ? void 0 : l.length) || 1, c = (t(this, V).data.get() || []).length;
523
- o.forEach((u, f) => {
524
- const b = n + Math.floor(f / i);
522
+ const i = Array.from(r.querySelectorAll("tr:not(.nodata)")), o = ((l = t(this, Y).get(e)) == null ? void 0 : l.length) || 1, c = (t(this, U).data.get() || []).length;
523
+ i.forEach((g, f) => {
524
+ const b = n + Math.floor(f / o);
525
525
  if (b >= c) {
526
- u.style.visibility = "hidden";
526
+ g.style.visibility = "hidden";
527
527
  return;
528
528
  }
529
- const g = t(this, V).data.get(b);
530
- u.style.display = "", t(this, Nt).call(this, u, g, b);
529
+ const u = t(this, U).data.get(b);
530
+ g.style.display = "", t(this, _t).call(this, g, u, b);
531
531
  });
532
532
  });
533
533
  }, "#adjustBufferRows"));
534
- d(this, yt, /* @__PURE__ */ h((n) => {
534
+ d(this, mt, /* @__PURE__ */ h((n) => {
535
535
  var f, b;
536
536
  const e = t(this, O);
537
537
  if (!e || e <= 0) return;
538
- const s = t(this, V).data.length;
538
+ const s = t(this, U).data.length;
539
539
  if (s === 0) return;
540
- const r = ((f = t(this, j).get(".ng-container-body")) == null ? void 0 : f.length) || 1, o = t(this, R).querySelector(".ng-container-body .ng-part-body");
541
- S.log("bodyContainer.clientHeight", o.clientHeight);
542
- const i = Math.max(0, s - Math.floor(o.clientHeight / e)), a = Math.min(i, Math.max(0, Math.floor(n / e)));
540
+ const r = ((f = t(this, Y).get(".ng-container-body")) == null ? void 0 : f.length) || 1, i = t(this, A).querySelector(".ng-container-body .ng-part-body");
541
+ S.log("bodyContainer.clientHeight", i.clientHeight);
542
+ const o = Math.max(0, s - Math.floor(i.clientHeight / e)), a = Math.min(o, Math.max(0, Math.floor(n / e)));
543
543
  let c = Math.floor(a * e);
544
- S.log(`📜 [Scroll Calc] maxStartIndex: ${i}, startIndex: ${a}, offsetY: ${c}`), a === i && S.log(`📜 [Scroll Inspect] scrollTop: ${n}, rowHeight: ${e}, maxStartIndex: ${i}, startIndex: ${a}, offsetY: ${c}`);
545
- const l = t(this, it).firstTr, u = l && l.dataset.row !== void 0 ? parseInt(l.dataset.row, 10) : -1;
546
- (b = t(this, it)) == null || b.scrollTables.forEach((g) => {
547
- g.style.transform = `translate3d(0, ${c}px, 0)`;
548
- }), u !== a && (S.log(`🔄 [Row Bind Trigger] currentStartIndex(${u}) !== startIndex(${a})`), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((g) => {
549
- const y = t(this, R).querySelector(g);
550
- if (!y) return;
551
- const w = y.querySelector(".ng-part-body tbody.bindable-tbody");
552
- if (!w) return;
553
- Array.from(w.querySelectorAll("tr:not(.nodata)")).forEach((m, T) => {
554
- const A = a + Math.floor(T / r);
555
- if (A >= s) {
544
+ S.log(`📜 [Scroll Calc] maxStartIndex: ${o}, startIndex: ${a}, offsetY: ${c}`), a === o && S.log(`📜 [Scroll Inspect] scrollTop: ${n}, rowHeight: ${e}, maxStartIndex: ${o}, startIndex: ${a}, offsetY: ${c}`);
545
+ const l = t(this, it).firstTr, g = l && l.dataset.row !== void 0 ? parseInt(l.dataset.row, 10) : -1;
546
+ (b = t(this, it)) == null || b.scrollTables.forEach((u) => {
547
+ u.style.transform = `translate3d(0, ${c}px, 0)`;
548
+ }), g !== a && (S.log(`🔄 [Row Bind Trigger] currentStartIndex(${g}) !== startIndex(${a})`), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((u) => {
549
+ const p = t(this, A).querySelector(u);
550
+ if (!p) return;
551
+ const x = p.querySelector(".ng-part-body tbody.bindable-tbody");
552
+ if (!x) return;
553
+ Array.from(x.querySelectorAll("tr:not(.nodata)")).forEach((m, T) => {
554
+ const R = a + Math.floor(T / r);
555
+ if (R >= s) {
556
556
  m.style.display = "none";
557
557
  return;
558
558
  }
559
- const M = t(this, V).data.get(A);
560
- m.style.display = "", t(this, Nt).call(this, m, M, A);
559
+ const M = t(this, U).data.get(R);
560
+ m.style.display = "", t(this, _t).call(this, m, M, R);
561
561
  });
562
562
  }));
563
563
  }, "#handleScroll"));
@@ -575,49 +575,49 @@ const ss = class ss {
575
575
  cell.dataset.row = dataIndex;
576
576
  });
577
577
  }; */
578
- d(this, Nt, /* @__PURE__ */ h((n, e, s) => {
579
- n.dataset.row = s, n.data = e, Array.from(n.cells).forEach((r, o) => {
578
+ d(this, _t, /* @__PURE__ */ h((n, e, s) => {
579
+ n.dataset.row = s, n.data = e, Array.from(n.cells).forEach((r, i) => {
580
580
  r.dataset.row = s;
581
- const i = Array.from(r.children).find((a) => a.tagName.toLowerCase().startsWith("cell-") || typeof a.refresh == "function");
582
- i && typeof i.refresh == "function" && i.refresh();
581
+ const o = Array.from(r.children).find((a) => a.tagName.toLowerCase().startsWith("cell-") || typeof a.refresh == "function");
582
+ o && typeof o.refresh == "function" && o.refresh();
583
583
  });
584
584
  }, "#bindRowData"));
585
- d(this, re, /* @__PURE__ */ h(() => {
586
- var c, l, u;
585
+ d(this, oe, /* @__PURE__ */ h(() => {
586
+ var c, l, g;
587
587
  S.log("rowManager.#syncHeaderHeights");
588
- const n = t(this, R).querySelector(".ng-container-left .ng-part-header table"), e = t(this, R).querySelector(".ng-container-body .ng-part-header table"), s = t(this, R).querySelector(".ng-container-right .ng-part-header table");
588
+ const n = t(this, A).querySelector(".ng-container-left .ng-part-header table"), e = t(this, A).querySelector(".ng-container-body .ng-part-header table"), s = t(this, A).querySelector(".ng-container-right .ng-part-header table");
589
589
  if (!e) return;
590
- const r = n ? Array.from(n.querySelectorAll("tr")) : [], o = Array.from(e.querySelectorAll("tr")), i = s ? Array.from(s.querySelectorAll("tr")) : [], a = Math.max(r.length, o.length, i.length);
590
+ const r = n ? Array.from(n.querySelectorAll("tr")) : [], i = Array.from(e.querySelectorAll("tr")), o = s ? Array.from(s.querySelectorAll("tr")) : [], a = Math.max(r.length, i.length, o.length);
591
591
  for (let f = 0; f < a; f++) {
592
592
  const b = [
593
593
  ((c = r[f]) == null ? void 0 : c.getBoundingClientRect().height) || 0,
594
- ((l = o[f]) == null ? void 0 : l.getBoundingClientRect().height) || 0,
595
- ((u = i[f]) == null ? void 0 : u.getBoundingClientRect().height) || 0
596
- ], g = Math.max(...b);
597
- g > 0 && (r[f] && (r[f].style.height = `${g}px`), o[f] && (o[f].style.height = `${g}px`), i[f] && (i[f].style.height = `${g}px`));
594
+ ((l = i[f]) == null ? void 0 : l.getBoundingClientRect().height) || 0,
595
+ ((g = o[f]) == null ? void 0 : g.getBoundingClientRect().height) || 0
596
+ ], u = Math.max(...b);
597
+ u > 0 && (r[f] && (r[f].style.height = `${u}px`), i[f] && (i[f].style.height = `${u}px`), o[f] && (o[f].style.height = `${u}px`));
598
598
  }
599
599
  }, "#syncHeaderHeights"));
600
600
  q(this, "destroy", /* @__PURE__ */ h(() => {
601
- t(this, K) && (t(this, K).disconnect(), p(this, K, null));
601
+ t(this, Z) && (t(this, Z).disconnect(), y(this, Z, null));
602
602
  }, "destroy"));
603
- p(this, V, n.getRootNode().host), p(this, R, n), t(this, ne).call(this);
603
+ y(this, U, n.getRootNode().host), y(this, A, n), t(this, re).call(this);
604
604
  }
605
605
  getRowHeight() {
606
606
  return t(this, O);
607
607
  }
608
608
  templateLength(n = ".ng-container-body") {
609
609
  var e;
610
- return ((e = t(this, j).get(n)) == null ? void 0 : e.length) || 1;
610
+ return ((e = t(this, Y).get(n)) == null ? void 0 : e.length) || 1;
611
611
  }
612
612
  };
613
- V = new WeakMap(), R = new WeakMap(), it = new WeakMap(), j = new WeakMap(), O = new WeakMap(), K = new WeakMap(), at = new WeakMap(), It = new WeakMap(), je = new WeakMap(), Ye = new WeakMap(), te = new WeakMap(), ee = new WeakMap(), Lt = new WeakMap(), Mt = new WeakMap(), Ht = new WeakMap(), se = new WeakMap(), ne = new WeakMap(), $t = new WeakMap(), Ve = new WeakMap(), yt = new WeakMap(), Nt = new WeakMap(), re = new WeakMap(), h(ss, "RowManager");
614
- let ke = ss;
615
- const oe = class oe {
613
+ U = new WeakMap(), A = new WeakMap(), it = new WeakMap(), Y = new WeakMap(), O = new WeakMap(), Z = new WeakMap(), at = new WeakMap(), Lt = new WeakMap(), Ye = new WeakMap(), Ve = new WeakMap(), ee = new WeakMap(), se = new WeakMap(), Mt = new WeakMap(), Ht = new WeakMap(), $t = new WeakMap(), ne = new WeakMap(), re = new WeakMap(), Nt = new WeakMap(), Ue = new WeakMap(), mt = new WeakMap(), _t = new WeakMap(), oe = new WeakMap(), h(ns, "RowManager");
614
+ let ke = ns;
615
+ const ie = class ie {
616
616
  /**
617
617
  * 🎯 레이아웃 내의 여러 rawTables 배열을 일괄로 받아 단일 마스터 템플릿으로 사전 컴파일합니다.
618
618
  */
619
619
  static compileAll(n) {
620
- return Array.isArray(n) ? n.map((e) => oe.compile(e)) : [];
620
+ return Array.isArray(n) ? n.map((e) => ie.compile(e)) : [];
621
621
  }
622
622
  /**
623
623
  * 🎯 단일 원본 테이블을 받아 기본 구조 보정 및 2차원 격자 인덱스 사전 부여 완료된 마스터 테이블 반환
@@ -626,23 +626,23 @@ const oe = class oe {
626
626
  if (!n) return null;
627
627
  const e = /* @__PURE__ */ h((a) => {
628
628
  a.querySelectorAll("tbody td, tbody th, tfoot td, tfoot th").forEach((l) => {
629
- const u = l.getAttribute("cell-type") || "renderer";
629
+ const g = l.getAttribute("cell-type") || "renderer";
630
630
  if (l.children.length > 0 && l.firstElementChild.tagName.includes("-")) return;
631
- let f = `cell-${u}`;
632
- const b = l.getAttribute("data-bind"), g = l.getAttribute("data-expr"), y = l.getAttribute("maxbyte"), w = l.getAttribute("type");
633
- let v = [];
634
- b && v.push(`data-bind="${b}"`), g && v.push(`data-expr="${g}"`), y && v.push(`maxbyte="${y}"`), w && v.push(`type="${w}"`), l.innerHTML = `<${f} ${v.join(" ")}></${f}>`;
631
+ let f = `cell-${g}`;
632
+ const b = l.getAttribute("data-bind"), u = l.getAttribute("data-expr"), p = l.getAttribute("maxbyte"), x = l.getAttribute("type");
633
+ let w = [];
634
+ b && w.push(`data-bind="${b}"`), u && w.push(`data-expr="${u}"`), p && w.push(`maxbyte="${p}"`), x && w.push(`type="${x}"`), l.innerHTML = `<${f} ${w.join(" ")}></${f}>`;
635
635
  }), a.querySelectorAll("tbody td, tfoot td").forEach((l) => {
636
636
  l.setAttribute("tabindex", "0");
637
637
  });
638
638
  }, "processCellTypes"), s = /* @__PURE__ */ h((a) => {
639
639
  if (!a.querySelector("colgroup")) {
640
- const c = a.querySelector("tbody tr") || a.querySelector("tr"), l = c ? c.querySelectorAll("th, td").length : 1, u = document.createElement("colgroup"), f = Math.max(Math.floor(a.clientWidth / l), 100);
640
+ const c = a.querySelector("tbody tr") || a.querySelector("tr"), l = c ? c.querySelectorAll("th, td").length : 1, g = document.createElement("colgroup"), f = Math.max(Math.floor(a.clientWidth / l), 100);
641
641
  for (let b = 0; b < l; b++) {
642
- const g = document.createElement("col");
643
- g.setAttribute("width", f), u.appendChild(g);
642
+ const u = document.createElement("col");
643
+ u.setAttribute("width", f), g.appendChild(u);
644
644
  }
645
- a.prepend(u);
645
+ a.prepend(g);
646
646
  }
647
647
  if (!a.querySelector("thead")) {
648
648
  const c = document.createElement("thead"), l = a.querySelector("colgroup");
@@ -650,62 +650,62 @@ const oe = class oe {
650
650
  }
651
651
  a.classList.add("nine-table-element");
652
652
  }, "ensureTableStructure"), r = /* @__PURE__ */ h((a, c) => {
653
- const l = Array.from(a.querySelectorAll(c + " tr")), u = Array.from(a.querySelectorAll(c + " th," + c + " td")), f = l.length;
654
- if (f === 0 || u.length === 0) return;
653
+ const l = Array.from(a.querySelectorAll(c + " tr")), g = Array.from(a.querySelectorAll(c + " th," + c + " td")), f = l.length;
654
+ if (f === 0 || g.length === 0) return;
655
655
  let b = 0;
656
- u.forEach((y) => {
657
- b += y.colSpan || 1;
656
+ g.forEach((p) => {
657
+ b += p.colSpan || 1;
658
658
  });
659
- const g = Array.from(Array(f), () => Array(b).fill(null));
660
- l.forEach((y) => {
661
- const w = y.sectionRowIndex;
662
- let v = 0;
663
- Array.from(y.querySelectorAll("th,td")).forEach((m) => {
664
- for (let M = 0; M < g[w].length; M++)
665
- if (g[w][M] === null) {
666
- v = M;
659
+ const u = Array.from(Array(f), () => Array(b).fill(null));
660
+ l.forEach((p) => {
661
+ const x = p.sectionRowIndex;
662
+ let w = 0;
663
+ Array.from(p.querySelectorAll("th,td")).forEach((m) => {
664
+ for (let M = 0; M < u[x].length; M++)
665
+ if (u[x][M] === null) {
666
+ w = M;
667
667
  break;
668
668
  }
669
- const T = m.rowSpan || 1, A = m.colSpan || 1;
669
+ const T = m.rowSpan || 1, R = m.colSpan || 1;
670
670
  for (let M = 0; M < T; M++)
671
- for (let W = 0; W < A; W++)
672
- w + M < f && v + W < b && (g[w + M][v + W] = M === 0 && W === 0 ? "1" : "0");
671
+ for (let B = 0; B < R; B++)
672
+ x + M < f && w + B < b && (u[x + M][w + B] = M === 0 && B === 0 ? "1" : "0");
673
673
  });
674
- }), l.forEach((y) => {
675
- const w = y.sectionRowIndex;
676
- Array.from(y.querySelectorAll("th,td")).forEach((v) => {
677
- for (let m = 0; m < g[w].length; m++)
678
- if (g[w][m] === "1") {
679
- v.dataset.col = m, g[w][m] = "0";
674
+ }), l.forEach((p) => {
675
+ const x = p.sectionRowIndex;
676
+ Array.from(p.querySelectorAll("th,td")).forEach((w) => {
677
+ for (let m = 0; m < u[x].length; m++)
678
+ if (u[x][m] === "1") {
679
+ w.dataset.col = m, u[x][m] = "0";
680
680
  break;
681
681
  }
682
682
  });
683
683
  });
684
- }, "resetColIndex"), o = n.cloneNode(!0);
685
- return s(o), e(o), r(o, "thead"), r(o, "tbody"), r(o, "tfoot"), Array.from(o.querySelectorAll("colgroup col")).forEach((a, c) => {
684
+ }, "resetColIndex"), i = n.cloneNode(!0);
685
+ return s(i), e(i), r(i, "thead"), r(i, "tbody"), r(i, "tfoot"), Array.from(i.querySelectorAll("colgroup col")).forEach((a, c) => {
686
686
  const l = a.getAttribute("fixed");
687
- l && o.querySelectorAll(`thead [data-col="${c}"], tbody [data-col="${c}"], tfoot [data-col="${c}"]`).forEach((u) => {
688
- u.setAttribute("fixed", l);
687
+ l && i.querySelectorAll(`thead [data-col="${c}"], tbody [data-col="${c}"], tfoot [data-col="${c}"]`).forEach((g) => {
688
+ g.setAttribute("fixed", l);
689
689
  });
690
- }), o;
690
+ }), i;
691
691
  }
692
692
  // 🎯 [추가] td/th에 선언된 cell-type 속성을 읽어 커스텀 태그로 자동 감싸기
693
693
  };
694
- h(oe, "TableCompiler");
695
- let Ie = oe;
696
- var N, U, X, Et, xs;
697
- const ns = class ns {
694
+ h(ie, "TableCompiler");
695
+ let Ie = ie;
696
+ var N, X, K, qt, ws;
697
+ const rs = class rs {
698
698
  constructor(n) {
699
- d(this, X);
699
+ d(this, K);
700
700
  d(this, N);
701
- d(this, U, { startRow: -1, startCol: -1, endRow: -1, endCol: -1 });
701
+ d(this, X, { startRow: -1, startCol: -1, endRow: -1, endCol: -1 });
702
702
  q(this, "render", /* @__PURE__ */ h(() => {
703
- const { startRow: n, startCol: e, endRow: s, endCol: r } = t(this, U);
704
- S.log("🎨 [CellSelection.render] Rendering range ->", t(this, U));
705
- const o = t(this, N).querySelectorAll(
703
+ const { startRow: n, startCol: e, endRow: s, endCol: r } = t(this, X);
704
+ S.log("🎨 [CellSelection.render] Rendering range ->", t(this, X));
705
+ const i = t(this, N).querySelectorAll(
706
706
  ".ng-container-left .ng-part-body, .ng-container-body .ng-part-body, .ng-container-right .ng-part-body"
707
707
  );
708
- if (o.forEach((a) => {
708
+ if (i.forEach((a) => {
709
709
  a.querySelectorAll(".selected, .selected-top, .selected-bottom, .selected-left, .selected-right").forEach((c) => {
710
710
  c.classList.remove("selected", "selected-top", "selected-bottom", "selected-left", "selected-right");
711
711
  });
@@ -713,60 +713,60 @@ const ns = class ns {
713
713
  S.log("⚠️ [CellSelection.render] Range is invalid (< 0), skipping render.");
714
714
  return;
715
715
  }
716
- let i = 0;
717
- o.forEach((a) => {
716
+ let o = 0;
717
+ i.forEach((a) => {
718
718
  a.querySelectorAll("tbody tr").forEach((c) => {
719
- const { matrixRow: l } = Q(this, X, Et).call(this, c);
720
- l < 0 || c.querySelectorAll("td, th").forEach((u) => {
721
- const f = parseInt(u.dataset.col, 10);
719
+ const { matrixRow: l } = V(this, K, qt).call(this, c);
720
+ l < 0 || c.querySelectorAll("td, th").forEach((g) => {
721
+ const f = parseInt(g.dataset.col, 10);
722
722
  if (isNaN(f)) return;
723
- const b = parseInt(u.rowSpan || 1, 10), g = parseInt(u.colSpan || 1, 10), y = l + b - 1, w = f + g - 1;
724
- y >= n && l <= s && w >= e && f <= r && (i++, u.classList.add("selected"), S.log(u, n, e, s, r), l <= n && u.classList.add("selected-top"), y >= s && u.classList.add("selected-bottom"), f <= e && u.classList.add("selected-left"), w >= r && u.classList.add("selected-right"));
723
+ const b = parseInt(g.rowSpan || 1, 10), u = parseInt(g.colSpan || 1, 10), p = l + b - 1, x = f + u - 1;
724
+ p >= n && l <= s && x >= e && f <= r && (o++, g.classList.add("selected"), S.log(g, n, e, s, r), l <= n && g.classList.add("selected-top"), p >= s && g.classList.add("selected-bottom"), f <= e && g.classList.add("selected-left"), x >= r && g.classList.add("selected-right"));
725
725
  });
726
726
  });
727
- }), S.log(`✨ [CellSelection.render] Total rendered cells marked: ${i}`);
727
+ }), S.log(`✨ [CellSelection.render] Total rendered cells marked: ${o}`);
728
728
  }, "render"));
729
- p(this, N, n), Q(this, X, xs).call(this), t(this, N).querySelectorAll(
729
+ y(this, N, n), V(this, K, ws).call(this), t(this, N).querySelectorAll(
730
730
  ".ng-container-left .ng-part-body, .ng-container-body .ng-part-body, .ng-container-right .ng-part-body"
731
731
  ).forEach((s) => {
732
732
  s.addEventListener("scroll", () => {
733
- t(this, U).startRow >= 0 && t(this, U).startCol >= 0 && this.render();
733
+ t(this, X).startRow >= 0 && t(this, X).startCol >= 0 && this.render();
734
734
  });
735
735
  }), S.log("🎯 [CellSelection] Initialized");
736
736
  }
737
737
  setRange(n, e, s, r) {
738
738
  S.log(`🔍 [CellSelection.setRange] Input -> startRow: ${n}, startCol: ${e}, endRow: ${s}, endCol: ${r}`);
739
- let o = Math.min(n, s), i = Math.max(n, s), a = Math.min(e, r), c = Math.max(e, r);
739
+ let i = Math.min(n, s), o = Math.max(n, s), a = Math.min(e, r), c = Math.max(e, r);
740
740
  const l = t(this, N).querySelectorAll(
741
741
  ".ng-container-left .ng-part-body, .ng-container-body .ng-part-body, .ng-container-right .ng-part-body"
742
742
  );
743
- let u = !0, f = 0;
744
- for (; u && f < 5; )
745
- u = !1, f++, l.forEach((b) => {
746
- b.querySelectorAll("tbody tr").forEach((g) => {
747
- if (g.classList.contains("nodata")) return;
748
- const { matrixRow: y } = Q(this, X, Et).call(this, g);
749
- y < 0 || g.querySelectorAll("td, th").forEach((w) => {
750
- const v = parseInt(w.dataset.col, 10);
751
- if (isNaN(v)) return;
752
- const m = parseInt(w.rowSpan || 1, 10), T = parseInt(w.colSpan || 1, 10), A = y + m - 1, M = v + T - 1;
753
- if (A >= o && y <= i && M >= a && v <= c) {
754
- const B = Math.min(o, y), Gt = Math.max(i, A), gs = Math.min(a, v), bs = Math.max(c, M);
755
- (B !== o || Gt !== i || gs !== a || bs !== c) && (o = B, i = Gt, a = gs, c = bs, u = !0);
743
+ let g = !0, f = 0;
744
+ for (; g && f < 5; )
745
+ g = !1, f++, l.forEach((b) => {
746
+ b.querySelectorAll("tbody tr").forEach((u) => {
747
+ if (u.classList.contains("nodata")) return;
748
+ const { matrixRow: p } = V(this, K, qt).call(this, u);
749
+ p < 0 || u.querySelectorAll("td, th").forEach((x) => {
750
+ const w = parseInt(x.dataset.col, 10);
751
+ if (isNaN(w)) return;
752
+ const m = parseInt(x.rowSpan || 1, 10), T = parseInt(x.colSpan || 1, 10), R = p + m - 1, M = w + T - 1;
753
+ if (R >= i && p <= o && M >= a && w <= c) {
754
+ const z = Math.min(i, p), Gt = Math.max(o, R), bs = Math.min(a, w), ps = Math.max(c, M);
755
+ (z !== i || Gt !== o || bs !== a || ps !== c) && (i = z, o = Gt, a = bs, c = ps, g = !0);
756
756
  }
757
757
  });
758
758
  });
759
759
  });
760
- p(this, U, { startRow: o, startCol: a, endRow: i, endCol: c }), S.log("📦 [CellSelection.setRange] Final Range ->", t(this, U)), this.render();
760
+ y(this, X, { startRow: i, startCol: a, endRow: o, endCol: c }), S.log("📦 [CellSelection.setRange] Final Range ->", t(this, X)), this.render();
761
761
  }
762
762
  };
763
- N = new WeakMap(), U = new WeakMap(), X = new WeakSet(), Et = /* @__PURE__ */ h(function(n) {
763
+ N = new WeakMap(), X = new WeakMap(), K = new WeakSet(), qt = /* @__PURE__ */ h(function(n) {
764
764
  if (!n || n.classList.contains("nodata")) return { dataRow: -1, subRowIndex: -1, matrixRow: -1 };
765
765
  const e = parseInt(n.dataset.row, 10);
766
766
  if (isNaN(e)) return { dataRow: -1, subRowIndex: -1, matrixRow: -1 };
767
- const s = n.closest("tbody"), o = Array.from(s.querySelectorAll("tr:not(.nodata)")).filter((l) => parseInt(l.dataset.row, 10) === e), i = o.indexOf(n), a = o.length > 0 ? o.length : 1, c = e * a + (i >= 0 ? i : n.sectionRowIndex % a);
768
- return { dataRow: e, subRowIndex: i, matrixRow: c };
769
- }, "#getMatrixRow"), xs = /* @__PURE__ */ h(function() {
767
+ const s = n.closest("tbody"), i = Array.from(s.querySelectorAll("tr:not(.nodata)")).filter((l) => parseInt(l.dataset.row, 10) === e), o = i.indexOf(n), a = i.length > 0 ? i.length : 1, c = e * a + (o >= 0 ? o : n.sectionRowIndex % a);
768
+ return { dataRow: e, subRowIndex: o, matrixRow: c };
769
+ }, "#getMatrixRow"), ws = /* @__PURE__ */ h(function() {
770
770
  const n = t(this, N).querySelector(".ng-container-top");
771
771
  if (!n) {
772
772
  S.log("❌ [CellSelection] .ng-container-top not found!");
@@ -777,56 +777,56 @@ N = new WeakMap(), U = new WeakMap(), X = new WeakSet(), Et = /* @__PURE__ */ h(
777
777
  const s = e.target.closest("td, th");
778
778
  if (!s || s.dataset.row === void 0 || s.dataset.col === void 0 || s.closest("tr").classList.contains("nodata")) return;
779
779
  t(this, N).style.userSelect = "none", t(this, N).style.webkitUserSelect = "none";
780
- const r = s.closest("tr"), { matrixRow: o } = Q(this, X, Et).call(this, r), i = parseInt(s.dataset.col, 10);
781
- if (o < 0) {
780
+ const r = s.closest("tr"), { matrixRow: i } = V(this, K, qt).call(this, r), o = parseInt(s.dataset.col, 10);
781
+ if (i < 0) {
782
782
  t(this, N).style.userSelect = "", t(this, N).style.webkitUserSelect = "";
783
783
  return;
784
784
  }
785
- S.log(`🖱️ [MouseDown Success] startRow: ${o}, startCol: ${i}`), t(this, N).navigation.currentCell = s;
786
- let a = o, c = i;
785
+ S.log(`🖱️ [MouseDown Success] startRow: ${i}, startCol: ${o}`), t(this, N).navigation.currentCell = s;
786
+ let a = i, c = o;
787
787
  const l = /* @__PURE__ */ h((f) => {
788
788
  const b = document.elementFromPoint(f.clientX, f.clientY);
789
- let g = b == null ? void 0 : b.closest("td, th");
790
- if (!g || !t(this, N).contains(g)) {
789
+ let u = b == null ? void 0 : b.closest("td, th");
790
+ if (!u || !t(this, N).contains(u)) {
791
791
  const m = t(this, N).querySelectorAll(".ng-part-body tbody tr:not(.nodata) td, .ng-part-body tbody tr:not(.nodata) th");
792
792
  for (const T of m) {
793
- const A = T.getBoundingClientRect();
794
- if (f.clientX >= A.left && f.clientX <= A.right && f.clientY >= A.top && f.clientY <= A.bottom) {
795
- g = T;
793
+ const R = T.getBoundingClientRect();
794
+ if (f.clientX >= R.left && f.clientX <= R.right && f.clientY >= R.top && f.clientY <= R.bottom) {
795
+ u = T;
796
796
  break;
797
797
  }
798
798
  }
799
799
  }
800
- if (!g || g.dataset.row === void 0 || g.dataset.col === void 0 || g.closest("tr").classList.contains("nodata")) return;
801
- const y = g.closest("tr"), { matrixRow: w } = Q(this, X, Et).call(this, y), v = parseInt(g.dataset.col, 10);
802
- w < 0 || a === w && c === v || (a = w, c = v, this.setRange(o, i, w, v));
803
- }, "onMouseMove"), u = /* @__PURE__ */ h(() => {
804
- S.log("🖱️ [MouseUp] Drag ended."), t(this, N).style.userSelect = "", t(this, N).style.webkitUserSelect = "", document.removeEventListener("mousemove", l), document.removeEventListener("mouseup", u);
800
+ if (!u || u.dataset.row === void 0 || u.dataset.col === void 0 || u.closest("tr").classList.contains("nodata")) return;
801
+ const p = u.closest("tr"), { matrixRow: x } = V(this, K, qt).call(this, p), w = parseInt(u.dataset.col, 10);
802
+ x < 0 || a === x && c === w || (a = x, c = w, this.setRange(i, o, x, w));
803
+ }, "onMouseMove"), g = /* @__PURE__ */ h(() => {
804
+ S.log("🖱️ [MouseUp] Drag ended."), t(this, N).style.userSelect = "", t(this, N).style.webkitUserSelect = "", document.removeEventListener("mousemove", l), document.removeEventListener("mouseup", g);
805
805
  }, "onMouseUp");
806
- document.addEventListener("mousemove", l), document.addEventListener("mouseup", u);
806
+ document.addEventListener("mousemove", l), document.addEventListener("mouseup", g);
807
807
  });
808
- }, "#initEvents"), h(ns, "CellSelection");
809
- let Le = ns;
810
- var Y, lt, ie, ae, _t, Ot, Dt, ct, Wt, le, ws;
811
- const rs = class rs {
808
+ }, "#initEvents"), h(rs, "CellSelection");
809
+ let Le = rs;
810
+ var F, lt, ae, le, pt, He, Ot, Dt, Bt, ct, Wt, vs;
811
+ const os = class os {
812
812
  constructor(n) {
813
- d(this, le);
814
- d(this, Y);
813
+ d(this, pt);
814
+ d(this, F);
815
815
  d(this, lt, null);
816
- d(this, ie, -1);
817
816
  d(this, ae, -1);
818
- d(this, _t, /* @__PURE__ */ h((n) => {
817
+ d(this, le, -1);
818
+ d(this, Ot, /* @__PURE__ */ h((n) => {
819
819
  const e = [];
820
820
  return n.forEach((s) => e.push(...Array.from(s.querySelectorAll("td")))), e.length === 0 ? null : (e.sort((s, r) => parseInt(s.dataset.col, 10) - parseInt(r.dataset.col, 10)), e[e.length - 1]);
821
821
  }, "#getMaxColCell"));
822
- d(this, Ot, /* @__PURE__ */ h((n, e) => {
822
+ d(this, Dt, /* @__PURE__ */ h((n, e) => {
823
823
  const s = t(this, ct).call(this, n);
824
824
  if (s.length === 0) return e + 1;
825
825
  let r = e + 1;
826
- const o = [];
827
- s.forEach((i) => o.push(...Array.from(i.querySelectorAll("td")))), o.sort((i, a) => parseInt(i.dataset.col, 10) - parseInt(a.dataset.col, 10));
828
- for (const i of o) {
829
- const a = parseInt(i.dataset.col, 10), c = parseInt(i.colSpan || 1, 10);
826
+ const i = [];
827
+ s.forEach((o) => i.push(...Array.from(o.querySelectorAll("td")))), i.sort((o, a) => parseInt(o.dataset.col, 10) - parseInt(a.dataset.col, 10));
828
+ for (const o of i) {
829
+ const a = parseInt(o.dataset.col, 10), c = parseInt(o.colSpan || 1, 10);
830
830
  if (e >= a && e < a + c) {
831
831
  r = a + c;
832
832
  break;
@@ -834,14 +834,14 @@ const rs = class rs {
834
834
  }
835
835
  return r;
836
836
  }, "#getNextCol"));
837
- d(this, Dt, /* @__PURE__ */ h((n, e) => {
837
+ d(this, Bt, /* @__PURE__ */ h((n, e) => {
838
838
  const s = t(this, ct).call(this, n);
839
839
  if (s.length === 0) return Math.max(0, e - 1);
840
840
  let r = -1;
841
- const o = [];
842
- s.forEach((i) => o.push(...Array.from(i.querySelectorAll("td")))), o.sort((i, a) => parseInt(i.dataset.col, 10) - parseInt(a.dataset.col, 10));
843
- for (const i of o) {
844
- const a = parseInt(i.dataset.col, 10);
841
+ const i = [];
842
+ s.forEach((o) => i.push(...Array.from(o.querySelectorAll("td")))), i.sort((o, a) => parseInt(o.dataset.col, 10) - parseInt(a.dataset.col, 10));
843
+ for (const o of i) {
844
+ const a = parseInt(o.dataset.col, 10);
845
845
  if (a < e)
846
846
  r = a;
847
847
  else
@@ -849,82 +849,94 @@ const rs = class rs {
849
849
  }
850
850
  return r;
851
851
  }, "#getPreviousCol"));
852
+ // 🎯 레거시의 병합 셀(rowSpan) 블록 포용 탐색 로직 이식
852
853
  d(this, ct, /* @__PURE__ */ h((n) => {
853
- const e = t(this, Y).querySelectorAll(
854
+ const e = t(this, F).querySelectorAll(
854
855
  ".ng-container-left .ng-part-body, .ng-container-body .ng-part-body, .ng-container-right .ng-part-body"
855
856
  ), s = [];
856
857
  return e.forEach((r) => {
857
- const o = Array.from(r.querySelectorAll("tbody tr:not(.nodata)"));
858
- for (const i of o) {
859
- const a = parseInt(i.dataset.row, 10), c = o.filter((b) => parseInt(b.dataset.row, 10) === a), l = c.length > 0 ? c.length : 1, u = c.indexOf(i);
860
- if (a * l + (u >= 0 ? u : 0) === n) {
861
- s.push(i);
858
+ const i = Array.from(r.querySelectorAll("tbody tr:not(.nodata)"));
859
+ for (const o of i) {
860
+ const a = parseInt(o.dataset.row, 10), c = i.filter((p) => parseInt(p.dataset.row, 10) === a), l = c.length > 0 ? c.length : 1, g = c.indexOf(o), f = a * l + (g >= 0 ? g : 0);
861
+ if (f === n) {
862
+ s.push(o);
862
863
  break;
863
864
  }
865
+ const b = Array.from(o.querySelectorAll("td"));
866
+ let u = !1;
867
+ for (const p of b) {
868
+ const x = parseInt(p.rowSpan || 1, 10);
869
+ if (x > 1 && n >= f && n < f + x) {
870
+ s.push(o), u = !0;
871
+ break;
872
+ }
873
+ }
874
+ if (u) break;
864
875
  }
865
876
  }), s;
866
877
  }, "#findTargetTrsByMatrix"));
867
- d(this, Wt, /* @__PURE__ */ h((n, e, s) => {
868
- const r = t(this, Y).querySelectorAll(
878
+ // 🎯 rowSpan 및 colSpan 경계를 모두 충족하는 셀을 3분할 전체 영역에서 탐색
879
+ d(this, Wt, /* @__PURE__ */ h((n, e, s, r) => {
880
+ const i = t(this, F).querySelectorAll(
869
881
  ".ng-container-left .ng-part-body, .ng-container-body .ng-part-body, .ng-container-right .ng-part-body"
870
- );
871
- for (const o of r) {
872
- const c = Array.from(o.querySelectorAll("tbody tr:not(.nodata)")).filter((l) => parseInt(l.dataset.row, 10) === n)[e];
873
- if (c) {
874
- const l = Array.from(c.querySelectorAll("td"));
875
- for (const u of l) {
876
- const f = parseInt(u.dataset.col, 10), b = parseInt(u.colSpan || 1, 10);
877
- if (!isNaN(f) && s >= f && s < f + b && window.getComputedStyle(u).display !== "none")
878
- return u;
882
+ ), o = r !== void 0 ? r : n * 1 + e;
883
+ for (const a of i) {
884
+ const c = Array.from(a.querySelectorAll("tbody tr:not(.nodata)"));
885
+ for (const l of c) {
886
+ const g = parseInt(l.dataset.row, 10), f = c.filter((w) => parseInt(w.dataset.row, 10) === g), b = f.length > 0 ? f.length : 1, u = f.indexOf(l), p = g * b + (u >= 0 ? u : 0), x = Array.from(l.querySelectorAll("td"));
887
+ for (const w of x) {
888
+ const m = parseInt(w.dataset.col, 10), T = parseInt(w.colSpan || 1, 10), R = parseInt(w.rowSpan || 1, 10);
889
+ if (!isNaN(m) && s >= m && s < m + T && o >= p && o < p + R && window.getComputedStyle(w).display !== "none")
890
+ return w;
879
891
  }
880
892
  }
881
893
  }
882
894
  return null;
883
895
  }, "#getNearElement"));
884
- p(this, Y, n), Q(this, le, ws).call(this), S.log("🎯 [CellNavigation] Initialized");
896
+ y(this, F, n), V(this, pt, vs).call(this), S.log("🎯 [CellNavigation] Initialized");
885
897
  }
886
898
  get currentCell() {
887
899
  return t(this, lt);
888
900
  }
889
901
  set currentCell(n) {
890
902
  if (!n) return;
891
- p(this, lt, n), n.focus({ preventScroll: !0 });
903
+ y(this, lt, n), n.focus({ preventScroll: !0 });
892
904
  const e = parseInt(n.dataset.row, 10), s = parseInt(n.dataset.col, 10);
893
905
  if (!isNaN(e) && !isNaN(s)) {
894
- p(this, ie, e), p(this, ae, s);
895
- const r = n.closest("tr"), o = r == null ? void 0 : r.closest("tbody");
896
- if (o) {
897
- const a = Array.from(o.querySelectorAll("tr:not(.nodata)")).filter((f) => parseInt(f.dataset.row, 10) === e), c = a.length > 0 ? a.length : 1, l = a.indexOf(r), u = e * c + (l >= 0 ? l : 0);
898
- t(this, Y).selection.setRange(u, s, u, s);
906
+ y(this, ae, e), y(this, le, s);
907
+ const r = n.closest("tr"), i = r == null ? void 0 : r.closest("tbody");
908
+ if (i) {
909
+ const a = Array.from(i.querySelectorAll("tr:not(.nodata)")).filter((f) => parseInt(f.dataset.row, 10) === e), c = a.length > 0 ? a.length : 1, l = a.indexOf(r), g = e * c + (l >= 0 ? l : 0);
910
+ t(this, F).selection.setRange(g, s, g, s);
899
911
  }
900
912
  }
901
913
  }
902
914
  moveCell(n) {
903
- var m, T, A, M;
915
+ var m, T, R, M;
904
916
  if (!t(this, lt)) return;
905
- const e = t(this, lt), s = e.closest("tr"), r = parseInt(e.dataset.row, 10), o = parseInt(e.dataset.col, 10), i = s == null ? void 0 : s.closest("tbody");
906
- if (!i) return;
907
- const c = Array.from(i.querySelectorAll("tr:not(.nodata)")).filter((W) => parseInt(W.dataset.row, 10) === r), l = c.length > 0 ? c.length : 1, u = c.indexOf(s), f = r * l + (u >= 0 ? u : 0);
908
- let b = f, g = o;
917
+ const e = t(this, lt), s = e.closest("tr"), r = parseInt(e.dataset.row, 10), i = parseInt(e.dataset.col, 10), o = s == null ? void 0 : s.closest("tbody");
918
+ if (!o) return;
919
+ const c = Array.from(o.querySelectorAll("tr:not(.nodata)")).filter((B) => parseInt(B.dataset.row, 10) === r), l = c.length > 0 ? c.length : 1, g = c.indexOf(s), f = r * l + (g >= 0 ? g : 0);
920
+ let b = f, u = i;
909
921
  switch (n.code) {
910
922
  case "Tab":
911
923
  if (n.preventDefault(), n.shiftKey) {
912
- if (g = t(this, Dt).call(this, f, o), g < 0 && f > 0) {
924
+ if (u = t(this, Bt).call(this, f, i), u < 0 && f > 0) {
913
925
  b = f - 1;
914
- const W = t(this, ct).call(this, b), B = t(this, _t).call(this, W);
915
- g = B ? parseInt(B.dataset.col, 10) : 0;
926
+ const B = t(this, ct).call(this, b), z = t(this, Ot).call(this, B);
927
+ u = z ? parseInt(z.dataset.col, 10) : 0;
916
928
  }
917
929
  } else {
918
- g = t(this, Ot).call(this, f, o);
919
- const W = t(this, ct).call(this, f), B = t(this, _t).call(this, W), Gt = B ? parseInt(B.dataset.col, 10) + parseInt(B.colSpan || 1, 10) : 0;
920
- g >= Gt && (b = f + 1, g = 0);
930
+ u = t(this, Dt).call(this, f, i);
931
+ const B = t(this, ct).call(this, f), z = t(this, Ot).call(this, B), Gt = z ? parseInt(z.dataset.col, 10) + parseInt(z.colSpan || 1, 10) : 0;
932
+ u >= Gt && (b = f + 1, u = 0);
921
933
  }
922
934
  break;
923
935
  case "ArrowRight":
924
- g = t(this, Ot).call(this, f, o);
936
+ u = t(this, Dt).call(this, f, i);
925
937
  break;
926
938
  case "ArrowLeft":
927
- g = t(this, Dt).call(this, f, o);
939
+ u = t(this, Bt).call(this, f, i);
928
940
  break;
929
941
  case "ArrowDown":
930
942
  n.preventDefault(), b = f + (e.rowSpan || 1);
@@ -933,44 +945,50 @@ const rs = class rs {
933
945
  n.preventDefault(), b = Math.max(0, f - (e.rowSpan || 1));
934
946
  break;
935
947
  }
936
- const y = Math.floor(b / l), w = b % l;
937
- let v = t(this, Wt).call(this, y, w, g);
938
- if (v)
939
- this.currentCell = v;
940
- else if (y !== r && y >= 0) {
941
- const W = ((T = (m = t(this, Y)).getRowHeight) == null ? void 0 : T.call(m)) || 40;
942
- (M = (A = t(this, Y)).scrollToY) == null || M.call(A, y * W), setTimeout(() => {
943
- const B = t(this, Wt).call(this, y, w, g);
944
- B && (this.currentCell = B);
948
+ const p = Math.floor(b / l), x = b % l;
949
+ let w = t(this, Wt).call(this, p, x, u, b);
950
+ if (w)
951
+ this.currentCell = w, V(this, pt, He).call(this, w);
952
+ else if (p !== r && p >= 0) {
953
+ const B = ((T = (m = t(this, F)).getRowHeight) == null ? void 0 : T.call(m)) || 40;
954
+ (M = (R = t(this, F)).scrollToY) == null || M.call(R, p * B), setTimeout(() => {
955
+ const z = t(this, Wt).call(this, p, x, u, b);
956
+ z && (this.currentCell = z, V(this, pt, He).call(this, z));
945
957
  }, 0);
946
958
  }
947
959
  }
948
960
  };
949
- Y = new WeakMap(), lt = new WeakMap(), ie = new WeakMap(), ae = new WeakMap(), _t = new WeakMap(), Ot = new WeakMap(), Dt = new WeakMap(), ct = new WeakMap(), Wt = new WeakMap(), le = new WeakSet(), ws = /* @__PURE__ */ h(function() {
950
- t(this, Y).addEventListener("keydown", (n) => {
961
+ F = new WeakMap(), lt = new WeakMap(), ae = new WeakMap(), le = new WeakMap(), pt = new WeakSet(), // 🎯 셀이 보이지 않는 영역에 있을 때 컨테이너 스크롤을 동기화하는 함수
962
+ He = /* @__PURE__ */ h(function(n) {
963
+ const e = t(this, F).querySelector(".ng-container-body .ng-part-body");
964
+ if (!e) return;
965
+ const s = n.getBoundingClientRect(), r = e.getBoundingClientRect();
966
+ s.top < r.top ? e.scrollTop -= r.top - s.top : s.bottom > r.bottom && (e.scrollTop += s.bottom - r.bottom), s.left < r.left ? e.scrollLeft -= r.left - s.left : s.right > r.right && (e.scrollLeft += s.right - r.right);
967
+ }, "#ensureCellVisible"), Ot = new WeakMap(), Dt = new WeakMap(), Bt = new WeakMap(), ct = new WeakMap(), Wt = new WeakMap(), vs = /* @__PURE__ */ h(function() {
968
+ t(this, F).addEventListener("keydown", (n) => {
951
969
  ["Tab", "ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"].includes(n.code) && this.moveCell(n);
952
970
  });
953
- }, "#initEvents"), h(rs, "CellNavigation");
954
- let Me = rs;
955
- var ce, ht, dt, zt, Bt, he, de, mt, fe, ue;
956
- const qt = class qt extends HTMLElement {
971
+ }, "#initEvents"), h(os, "CellNavigation");
972
+ let Me = os;
973
+ var ce, ht, dt, zt, Pt, he, de, xt, fe, ue;
974
+ const Ct = class Ct extends HTMLElement {
957
975
  constructor() {
958
976
  super();
959
977
  d(this, ce);
960
978
  d(this, ht, null);
961
979
  d(this, dt);
962
980
  d(this, zt);
963
- d(this, Bt);
981
+ d(this, Pt);
964
982
  q(this, "invalidate", /* @__PURE__ */ h(() => {
965
983
  S.log("sheet.invalidate()"), t(this, dt).refresh();
966
984
  }, "invalidate"));
967
985
  q(this, "generate", /* @__PURE__ */ h((e) => {
968
986
  if (S.log("sheet.generate()"), !e) return;
969
- p(this, ht, Ie.compile(e)), t(this, he).call(this), t(this, de).call(this);
970
- const s = this.querySelector(".ng-container-body .ng-part-header"), r = this.querySelector(".ng-container-body .ng-part-footer"), o = this.querySelector(".ng-nodata-overlay");
971
- s && o && (o.style.top = `${s.offsetHeight}px`), r && o && (o.style.bottom = `${r.offsetHeight}px`), t(this, dt).initialize(), setTimeout(() => {
972
- var i;
973
- (i = this.querySelector("nine-table-hscrollbar")) == null || i.refresh();
987
+ y(this, ht, Ie.compile(e)), t(this, he).call(this), t(this, de).call(this);
988
+ const s = this.querySelector(".ng-container-body .ng-part-header"), r = this.querySelector(".ng-container-body .ng-part-footer"), i = this.querySelector(".ng-nodata-overlay");
989
+ s && i && (i.style.top = `${s.offsetHeight}px`), r && i && (i.style.bottom = `${r.offsetHeight}px`), t(this, dt).initialize(), setTimeout(() => {
990
+ var o;
991
+ (o = this.querySelector("nine-table-hscrollbar")) == null || o.refresh();
974
992
  }, 0);
975
993
  }, "generate"));
976
994
  d(this, he, /* @__PURE__ */ h(() => {
@@ -979,40 +997,40 @@ const qt = class qt extends HTMLElement {
979
997
  { selector: ".ng-container-left", type: "left" },
980
998
  { selector: ".ng-container-right", type: "right" }
981
999
  ].forEach(({ selector: s, type: r }) => {
982
- var o, i, a;
983
- (o = this.querySelector(`${s} .ng-part-header`)) == null || o.appendChild(t(this, mt).call(this, t(this, ht), r, "header")), (i = this.querySelector(`${s} .ng-virtual-spacer`)) == null || i.before(t(this, mt).call(this, t(this, ht), r, "body")), (a = this.querySelector(`${s} .ng-part-footer`)) == null || a.appendChild(t(this, mt).call(this, t(this, ht), r, "footer"));
1000
+ var i, o, a;
1001
+ (i = this.querySelector(`${s} .ng-part-header`)) == null || i.appendChild(t(this, xt).call(this, t(this, ht), r, "header")), (o = this.querySelector(`${s} .ng-virtual-spacer`)) == null || o.before(t(this, xt).call(this, t(this, ht), r, "body")), (a = this.querySelector(`${s} .ng-part-footer`)) == null || a.appendChild(t(this, xt).call(this, t(this, ht), r, "footer"));
984
1002
  });
985
1003
  }, "#renderSplitContainers"));
986
1004
  d(this, de, /* @__PURE__ */ h(() => {
987
1005
  ["left", "right", "body"].forEach((e) => {
988
1006
  const s = this.querySelector(`.ng-container-${e}`), r = s == null ? void 0 : s.querySelectorAll("table");
989
1007
  if (!s || !r || r.length === 0) return;
990
- let o = 0;
991
- r[0].querySelectorAll("col").forEach((i) => {
992
- const a = parseInt(i.getAttribute("width"), 10);
993
- isNaN(a) || (o += a);
994
- }), e === "body" ? (s.style.flex = "1", r.forEach((i) => {
995
- i.style.width = `${o}px`, i.style.minWidth = `${o}px`;
996
- })) : (s.style.flex = `0 0 ${o}px`, s.style.width = `${o}px`, r.forEach((i) => {
997
- i.style.width = `${o}px`, i.style.minWidth = `${o}px`;
1008
+ let i = 0;
1009
+ r[0].querySelectorAll("col").forEach((o) => {
1010
+ const a = parseInt(o.getAttribute("width"), 10);
1011
+ isNaN(a) || (i += a);
1012
+ }), e === "body" ? (s.style.flex = "1", r.forEach((o) => {
1013
+ o.style.width = `${i}px`, o.style.minWidth = `${i}px`;
1014
+ })) : (s.style.flex = `0 0 ${i}px`, s.style.width = `${i}px`, r.forEach((o) => {
1015
+ o.style.width = `${i}px`, o.style.minWidth = `${i}px`;
998
1016
  }));
999
1017
  });
1000
1018
  }, "#updateContainerWidths"));
1001
- d(this, mt, /* @__PURE__ */ h((e, s, r) => {
1002
- const o = e.cloneNode(!0), i = o.querySelector("thead"), a = o.querySelector("tbody"), c = o.querySelector("tfoot");
1019
+ d(this, xt, /* @__PURE__ */ h((e, s, r) => {
1020
+ const i = e.cloneNode(!0), o = i.querySelector("thead"), a = i.querySelector("tbody"), c = i.querySelector("tfoot");
1003
1021
  if (r === "header") {
1004
1022
  if (a && a.remove(), c && c.remove(), e.querySelector("tbody")) {
1005
- const u = document.createElement("tbody");
1006
- u.className = "fixed-tbody", o.appendChild(u);
1023
+ const g = document.createElement("tbody");
1024
+ g.className = "fixed-tbody", i.appendChild(g);
1007
1025
  }
1008
- } else r === "body" ? (i && i.remove(), c && c.remove(), a && (a.className = "bindable-tbody")) : r === "footer" && (i && i.remove(), a && a.remove());
1009
- return s === "left" ? o.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
1026
+ } else r === "body" ? (o && o.remove(), c && c.remove(), a && (a.className = "bindable-tbody")) : r === "footer" && (o && o.remove(), a && a.remove());
1027
+ return s === "left" ? i.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
1010
1028
  l.getAttribute("fixed") !== "left" && l.remove();
1011
- }) : s === "right" ? o.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
1029
+ }) : s === "right" ? i.querySelectorAll("col, th, td, tfoot td, tfoot th").forEach((l) => {
1012
1030
  l.getAttribute("fixed") !== "right" && l.remove();
1013
- }) : o.querySelectorAll("[fixed=left], [fixed=right]").forEach((l) => {
1031
+ }) : i.querySelectorAll("[fixed=left], [fixed=right]").forEach((l) => {
1014
1032
  l.remove();
1015
- }), o;
1033
+ }), i;
1016
1034
  }, "#createSplitTable"));
1017
1035
  q(this, "getRowHeight", /* @__PURE__ */ h(() => t(this, dt).getRowHeight(), "getRowHeight"));
1018
1036
  q(this, "scrollToX", /* @__PURE__ */ h((e) => {
@@ -1024,10 +1042,10 @@ const qt = class qt extends HTMLElement {
1024
1042
  s && (s.scrollTop = e);
1025
1043
  }, "scrollToY"));
1026
1044
  d(this, fe, /* @__PURE__ */ h(() => {
1027
- t(this, ue).call(this), p(this, zt, new Le(this)), p(this, Bt, new Me(this));
1045
+ t(this, ue).call(this), y(this, zt, new Le(this)), y(this, Pt, new Me(this));
1028
1046
  }, "#init"));
1029
1047
  d(this, ue, /* @__PURE__ */ h(() => {
1030
- const e = qt.SCROLLBAR_SIZE;
1048
+ const e = Ct.SCROLLBAR_SIZE;
1031
1049
  this.innerHTML = `
1032
1050
  <style>
1033
1051
  nine-table-sheet {
@@ -1228,7 +1246,7 @@ const qt = class qt extends HTMLElement {
1228
1246
  </div>
1229
1247
  `;
1230
1248
  }, "#render"));
1231
- p(this, dt, new ke(this)), p(this, ce, this.getRootNode().host);
1249
+ y(this, dt, new ke(this)), y(this, ce, this.getRootNode().host);
1232
1250
  }
1233
1251
  connectedCallback() {
1234
1252
  t(this, fe).call(this);
@@ -1237,56 +1255,56 @@ const qt = class qt extends HTMLElement {
1237
1255
  return t(this, zt);
1238
1256
  }
1239
1257
  get navigation() {
1240
- return t(this, Bt);
1258
+ return t(this, Pt);
1241
1259
  }
1242
1260
  disconnectedCallback() {
1243
1261
  this.innerHTML = "", S.log("NineTableSheet destroyed.");
1244
1262
  }
1245
1263
  };
1246
- ce = new WeakMap(), ht = new WeakMap(), dt = new WeakMap(), zt = new WeakMap(), Bt = new WeakMap(), he = new WeakMap(), de = new WeakMap(), mt = new WeakMap(), fe = new WeakMap(), ue = new WeakMap(), h(qt, "NineTableSheet"), q(qt, "SCROLLBAR_SIZE", 16);
1247
- let Kt = qt;
1248
- customElements.get("nine-table-sheet") || customElements.define("nine-table-sheet", Kt);
1249
- var ge, Pt;
1250
- const os = class os extends HTMLElement {
1264
+ ce = new WeakMap(), ht = new WeakMap(), dt = new WeakMap(), zt = new WeakMap(), Pt = new WeakMap(), he = new WeakMap(), de = new WeakMap(), xt = new WeakMap(), fe = new WeakMap(), ue = new WeakMap(), h(Ct, "NineTableSheet"), q(Ct, "SCROLLBAR_SIZE", 16);
1265
+ let Zt = Ct;
1266
+ customElements.get("nine-table-sheet") || customElements.define("nine-table-sheet", Zt);
1267
+ var ge, Ft;
1268
+ const is = class is extends HTMLElement {
1251
1269
  constructor() {
1252
1270
  super();
1253
1271
  d(this, ge, /* @__PURE__ */ h(() => {
1254
1272
  var e;
1255
1273
  (e = this.querySelector(".nine-tab-bar")) == null || e.addEventListener("click", (s) => {
1256
- var i;
1257
- const r = s.ctrlKey || s.metaKey || s.shiftKey, o = parseInt((i = s.target.closest(".nine-tab-item")) == null ? void 0 : i.dataset.index, 10);
1258
- t(this, Pt).call(this, o, r);
1259
- }), t(this, Pt).call(this, 0, !1);
1274
+ var o;
1275
+ const r = s.ctrlKey || s.metaKey || s.shiftKey, i = parseInt((o = s.target.closest(".nine-tab-item")) == null ? void 0 : o.dataset.index, 10);
1276
+ t(this, Ft).call(this, i, r);
1277
+ }), t(this, Ft).call(this, 0, !1);
1260
1278
  }, "#init"));
1261
- d(this, Pt, /* @__PURE__ */ h((e, s = !1) => {
1279
+ d(this, Ft, /* @__PURE__ */ h((e, s = !1) => {
1262
1280
  const r = /* @__PURE__ */ h(() => {
1263
- const u = Array.from(this.querySelectorAll("nine-table-sheet"));
1264
- Array.from(this.querySelectorAll("nine-splitter")).forEach((g) => g.style.setProperty("display", "none"));
1265
- const b = u.filter((g) => g.classList.contains("active"));
1266
- b.length < 2 || b.forEach((g) => {
1267
- const y = parseInt(g.getAttribute("data-index"), 10), w = this.querySelector(`nine-splitter[data-split-index="${y}"]`), v = u[y + 1];
1268
- w && v && v.classList.contains("active") && w.style.setProperty("display", "flex");
1281
+ const g = Array.from(this.querySelectorAll("nine-table-sheet"));
1282
+ Array.from(this.querySelectorAll("nine-splitter")).forEach((u) => u.style.setProperty("display", "none"));
1283
+ const b = g.filter((u) => u.classList.contains("active"));
1284
+ b.length < 2 || b.forEach((u) => {
1285
+ const p = parseInt(u.getAttribute("data-index"), 10), x = this.querySelector(`nine-splitter[data-split-index="${p}"]`), w = g[p + 1];
1286
+ x && w && w.classList.contains("active") && x.style.setProperty("display", "flex");
1269
1287
  });
1270
- }, "updateSplitters"), o = this.querySelector(".nine-tab-bar"), i = this.querySelector("nine-table-sheets-body"), a = o.querySelectorAll(".nine-tab-item"), c = i.querySelectorAll("nine-table-sheet");
1288
+ }, "updateSplitters"), i = this.querySelector(".nine-tab-bar"), o = this.querySelector("nine-table-sheets-body"), a = i.querySelectorAll(".nine-tab-item"), c = o.querySelectorAll("nine-table-sheet");
1271
1289
  if (!a[e]) return;
1272
1290
  if (!s)
1273
- a.forEach((u, f) => {
1274
- u.classList.toggle("active", f === e);
1275
- }), c.forEach((u, f) => {
1291
+ a.forEach((g, f) => {
1292
+ g.classList.toggle("active", f === e);
1293
+ }), c.forEach((g, f) => {
1276
1294
  const b = f === e;
1277
- u.classList.toggle("active", b), u.style.flex = b ? "1 1 100%" : "";
1295
+ g.classList.toggle("active", b), g.style.flex = b ? "1 1 100%" : "";
1278
1296
  });
1279
1297
  else {
1280
- const u = a[e], f = o.querySelectorAll(".nine-tab-item.active");
1281
- if (u.classList.contains("active") && f.length <= 1)
1298
+ const g = a[e], f = i.querySelectorAll(".nine-tab-item.active");
1299
+ if (g.classList.contains("active") && f.length <= 1)
1282
1300
  return;
1283
- u.classList.toggle("active");
1284
- const b = i.querySelector(`nine-table-sheet[data-index="${e}"]`);
1301
+ g.classList.toggle("active");
1302
+ const b = o.querySelector(`nine-table-sheet[data-index="${e}"]`);
1285
1303
  b && (b.classList.toggle("active"), b.classList.contains("active") || (b.style.flex = ""));
1286
1304
  }
1287
- const l = i.querySelectorAll("nine-table-sheet.active");
1288
- l == null || l.forEach((u) => {
1289
- u.style.flex = l.length > 1 ? "1 1 0%" : "1 1 100%";
1305
+ const l = o.querySelectorAll("nine-table-sheet.active");
1306
+ l == null || l.forEach((g) => {
1307
+ g.style.flex = l.length > 1 ? "1 1 0%" : "1 1 100%";
1290
1308
  }), r();
1291
1309
  }, "#switchSheet"));
1292
1310
  }
@@ -1294,31 +1312,31 @@ const os = class os extends HTMLElement {
1294
1312
  t(this, ge).call(this);
1295
1313
  }
1296
1314
  };
1297
- ge = new WeakMap(), Pt = new WeakMap(), h(os, "NineTableSheets");
1298
- let He = os;
1299
- customElements.get("nine-table-sheets") || customElements.define("nine-table-sheets", He);
1300
- var _, be, Ft, pe;
1301
- const is = class is {
1315
+ ge = new WeakMap(), Ft = new WeakMap(), h(is, "NineTableSheets");
1316
+ let $e = is;
1317
+ customElements.get("nine-table-sheets") || customElements.define("nine-table-sheets", $e);
1318
+ var _, be, jt, pe;
1319
+ const as = class as {
1302
1320
  constructor(n) {
1303
1321
  d(this, _);
1304
1322
  d(this, be, /* @__PURE__ */ h(() => {
1305
1323
  t(this, pe).call(this), new ResizeObserver((n) => {
1306
1324
  for (let e of n)
1307
- t(this, _).getAttribute("auto-height") === "true" && t(this, Ft).call(this);
1325
+ t(this, _).getAttribute("auto-height") === "true" && t(this, jt).call(this);
1308
1326
  }).observe(t(this, _));
1309
1327
  }, "#init"));
1310
- d(this, Ft, /* @__PURE__ */ h(() => {
1328
+ d(this, jt, /* @__PURE__ */ h(() => {
1311
1329
  var c, l;
1312
1330
  const n = Array.from(t(this, _).shadowRoot.querySelectorAll("nine-table-sheet.active"));
1313
1331
  if (n.length === 0) return;
1314
- const e = parseInt(t(this, _).getAttribute("max-display-row"), 10) || 10, s = Math.max(...n.map((u) => u.getRowHeight())), r = (c = t(this, _).shadowRoot.querySelector("nine-table-header")) == null ? void 0 : c.getBoundingClientRect().height, o = (l = t(this, _).shadowRoot.querySelector("nine-table-sheets-footer")) == null ? void 0 : l.getBoundingClientRect().height, i = Kt.SCROLLBAR_SIZE, a = e * s + r + o + i;
1332
+ const e = parseInt(t(this, _).getAttribute("max-display-row"), 10) || 10, s = Math.max(...n.map((g) => g.getRowHeight())), r = (c = t(this, _).shadowRoot.querySelector("nine-table-header")) == null ? void 0 : c.getBoundingClientRect().height, i = (l = t(this, _).shadowRoot.querySelector("nine-table-sheets-footer")) == null ? void 0 : l.getBoundingClientRect().height, o = Zt.SCROLLBAR_SIZE, a = e * s + r + i + o;
1315
1333
  t(this, _).style.height = `${a}px`;
1316
1334
  }, "#applyAutoHeight"));
1317
1335
  d(this, pe, /* @__PURE__ */ h(() => {
1318
- const e = Array.from(t(this, _).children).filter((c) => c.tagName === "TABLE"), s = t(this, _).getAttribute("auto-height") === "true", r = e.length, o = e.map((c, l) => {
1336
+ const e = Array.from(t(this, _).children).filter((c) => c.tagName === "TABLE"), s = t(this, _).getAttribute("auto-height") === "true", r = e.length, i = e.map((c, l) => {
1319
1337
  const f = `<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>` : "";
1320
1338
  return f + b;
1321
- }).join(""), i = e.map((c, l) => `<div class="nine-tab-item ${l === 0 ? "active" : ""}" data-index="${l}">Sheet ${l + 1}</div>`).join("");
1339
+ }).join(""), o = e.map((c, l) => `<div class="nine-tab-item ${l === 0 ? "active" : ""}" data-index="${l}">Sheet ${l + 1}</div>`).join("");
1322
1340
  t(this, _).shadowRoot.innerHTML = `
1323
1341
  <style>
1324
1342
  :host {
@@ -1430,9 +1448,9 @@ const is = class is {
1430
1448
  <nine-table-body>
1431
1449
  <nine-table-summary></nine-table-summary>
1432
1450
  <nine-table-sheets>
1433
- <nine-table-sheets-body>${o}</nine-table-sheets-body>
1451
+ <nine-table-sheets-body>${i}</nine-table-sheets-body>
1434
1452
  <nine-table-sheets-footer>
1435
- <div class="nine-tab-bar">${i}</div>
1453
+ <div class="nine-tab-bar">${o}</div>
1436
1454
  <div class="sheets-counter">Total : <span id="row-count">0</span></div>
1437
1455
  </nine-table-sheets-footer>
1438
1456
  </nine-table-sheets>
@@ -1443,50 +1461,50 @@ const is = class is {
1443
1461
  const a = t(this, _).shadowRoot.querySelectorAll("nine-table-sheet");
1444
1462
  a == null || a.forEach((c, l) => {
1445
1463
  e[l] && setTimeout(() => {
1446
- c.generate(e[l]), s && t(this, Ft).call(this);
1464
+ c.generate(e[l]), s && t(this, jt).call(this);
1447
1465
  });
1448
1466
  });
1449
1467
  }, "#render"));
1450
- p(this, _, n), t(this, be).call(this);
1468
+ y(this, _, n), t(this, be).call(this);
1451
1469
  }
1452
1470
  };
1453
- _ = new WeakMap(), be = new WeakMap(), Ft = new WeakMap(), pe = new WeakMap(), h(is, "LayoutManager");
1454
- let $e = is;
1455
- var jt, xt;
1456
- const as = class as {
1471
+ _ = new WeakMap(), be = new WeakMap(), jt = new WeakMap(), pe = new WeakMap(), h(as, "LayoutManager");
1472
+ let Ne = as;
1473
+ var Yt, wt;
1474
+ const ls = class ls {
1457
1475
  constructor(n) {
1458
- d(this, jt);
1459
- d(this, xt, -1);
1460
- q(this, "count", /* @__PURE__ */ h(() => t(this, jt).rawRecords.length, "count"));
1461
- p(this, jt, n);
1476
+ d(this, Yt);
1477
+ d(this, wt, -1);
1478
+ q(this, "count", /* @__PURE__ */ h(() => t(this, Yt).rawRecords.length, "count"));
1479
+ y(this, Yt, n);
1462
1480
  }
1463
1481
  get at() {
1464
- return t(this, xt);
1482
+ return t(this, wt);
1465
1483
  }
1466
1484
  set at(n) {
1467
- p(this, xt, parseInt(n, 10)), body && !body.querySelector(`tbody.bindable tr[data-row="${t(this, xt)}"]`) && setTimeout(() => {
1485
+ y(this, wt, parseInt(n, 10)), body && !body.querySelector(`tbody.bindable tr[data-row="${t(this, wt)}"]`) && setTimeout(() => {
1468
1486
  });
1469
1487
  }
1470
1488
  };
1471
- jt = new WeakMap(), xt = new WeakMap(), h(as, "ngRow");
1472
- let Ne = as;
1473
- var D, I, z, wt, ye, Z, me, ft, Yt, xe, we, vt;
1489
+ Yt = new WeakMap(), wt = new WeakMap(), h(ls, "ngRow");
1490
+ let _e = ls;
1491
+ var D, I, W, vt, ye, J, me, ft, Vt, xe, we, St;
1474
1492
  const P = class P {
1475
1493
  constructor(n, e) {
1476
1494
  d(this, D);
1477
1495
  d(this, I);
1478
- d(this, z, []);
1479
- d(this, wt, []);
1496
+ d(this, W, []);
1497
+ d(this, vt, []);
1480
1498
  d(this, ye, 0);
1481
- d(this, Z, []);
1499
+ d(this, J, []);
1482
1500
  d(this, me, /* @__PURE__ */ h(() => {
1483
- p(this, Z, []);
1501
+ y(this, J, []);
1484
1502
  const n = t(this, D).template || [];
1485
1503
  Array.from(n).forEach((e) => {
1486
1504
  var s;
1487
- t(this, Z).push(((s = e.getBoundingClientRect) == null ? void 0 : s.call(e).height) || 24);
1505
+ t(this, J).push(((s = e.getBoundingClientRect) == null ? void 0 : s.call(e).height) || 24);
1488
1506
  }), (t(this, I).rawRecords || []).forEach((e) => {
1489
- e.__ng || (e.__ng = t(this, Yt).call(this)), e.__ng.height = t(this, Z).slice();
1507
+ e.__ng || (e.__ng = t(this, Vt).call(this)), e.__ng.height = t(this, J).slice();
1490
1508
  });
1491
1509
  }, "#initialize"));
1492
1510
  d(this, ft, /* @__PURE__ */ h(() => {
@@ -1496,68 +1514,68 @@ const P = class P {
1496
1514
  });
1497
1515
  }, "#invalidate"));
1498
1516
  q(this, "get", /* @__PURE__ */ h((n, e) => {
1499
- var o;
1517
+ var i;
1500
1518
  const s = this.getValidData();
1501
1519
  if (!s || s.length <= 0) return;
1502
- if (n == null) return t(this, vt).call(this, s);
1520
+ if (n == null) return t(this, St).call(this, s);
1503
1521
  if (n < 0 || n >= s.length) return null;
1504
- const r = typeof ((o = t(this, D).fields) == null ? void 0 : o.get) == "function" ? t(this, D).fields.get() : [];
1522
+ const r = typeof ((i = t(this, D).fields) == null ? void 0 : i.get) == "function" ? t(this, D).fields.get() : [];
1505
1523
  if (e != null) {
1506
- const i = r.indexOf(e);
1507
- return i >= 0 ? s[n].v[i] : null;
1524
+ const o = r.indexOf(e);
1525
+ return o >= 0 ? s[n].v[o] : null;
1508
1526
  }
1509
- return t(this, vt).call(this, s[n]);
1527
+ return t(this, St).call(this, s[n]);
1510
1528
  }, "get"));
1511
1529
  q(this, "set", /* @__PURE__ */ h((n) => {
1512
1530
  this.clear(), this.add(n, !1), t(this, ft).call(this);
1513
1531
  }, "set"));
1514
- d(this, Yt, /* @__PURE__ */ h(() => ({
1532
+ d(this, Vt, /* @__PURE__ */ h(() => ({
1515
1533
  rowState: P.ROW_STATE.EMPTY,
1516
1534
  deleted: !1,
1517
1535
  filtered: !1,
1518
- height: t(this, Z).slice(),
1536
+ height: t(this, J).slice(),
1519
1537
  o: {},
1520
1538
  c: {},
1521
- _: [0, 0, 0, 0, P.ROW_STATE.EMPTY, !1, !1, !0, !1, !0, !0, !1, t(this, Z).slice(), -1, {}, {}]
1539
+ _: [0, 0, 0, 0, P.ROW_STATE.EMPTY, !1, !1, !0, !1, !0, !0, !1, t(this, J).slice(), -1, {}, {}]
1522
1540
  }), "#getDefaultMeta"));
1523
1541
  q(this, "reset", /* @__PURE__ */ h(() => {
1524
- p(this, z, []), p(this, wt, []), t(this, ft).call(this);
1542
+ y(this, W, []), y(this, vt, []), t(this, ft).call(this);
1525
1543
  }, "reset"));
1526
1544
  q(this, "clear", /* @__PURE__ */ h(() => {
1527
1545
  var n;
1528
- t(this, I).rawRecords = [], p(this, z, []), p(this, wt, []), (n = t(this, I).viewRecords) != null && n.reset && t(this, I).viewRecords.reset();
1546
+ t(this, I).rawRecords = [], y(this, W, []), y(this, vt, []), (n = t(this, I).viewRecords) != null && n.reset && t(this, I).viewRecords.reset();
1529
1547
  }, "clear"));
1530
1548
  d(this, xe, /* @__PURE__ */ h((n) => {
1531
1549
  var r;
1532
1550
  Array.isArray(n) || (n = [n]);
1533
1551
  const e = typeof ((r = t(this, D).fields) == null ? void 0 : r.get) == "function" ? t(this, D).fields.get() : Object.keys(n[0] || {}), s = [];
1534
- return n.forEach((o) => {
1535
- const i = { v: [] };
1552
+ return n.forEach((i) => {
1553
+ const o = { v: [] };
1536
1554
  e.forEach((a) => {
1537
- i.v.push(o[a] !== void 0 && o[a] !== null ? o[a] : "");
1538
- }), s.push(i);
1555
+ o.v.push(i[a] !== void 0 && i[a] !== null ? i[a] : "");
1556
+ }), s.push(o);
1539
1557
  }), s;
1540
1558
  }, "#json2Array"));
1541
1559
  d(this, we, /* @__PURE__ */ h((n) => (Array.isArray(n) || (n = [n]), n.forEach((e) => {
1542
- e.__ng = t(this, Yt).call(this), e.__ng.rowid = this.nextId, e.__ng.rowState = P.ROW_STATE.INSERT, e.__ng._[0] = e.__ng.rowid;
1560
+ e.__ng = t(this, Vt).call(this), e.__ng.rowid = this.nextId, e.__ng.rowState = P.ROW_STATE.INSERT, e.__ng._[0] = e.__ng.rowid;
1543
1561
  }), n), "#defaultInsert"));
1544
1562
  q(this, "add", /* @__PURE__ */ h((n, e = !0) => {
1545
1563
  n === void 0 && (n = {});
1546
1564
  const s = t(this, xe).call(this, n);
1547
1565
  t(this, I).rawRecords = t(this, I).rawRecords.concat(t(this, we).call(this, s)), this.resetRecords();
1548
1566
  const r = this.count() - 1;
1549
- return e || s.forEach((o, i) => {
1550
- const a = t(this, I).rawRecords[r - i];
1567
+ return e || s.forEach((i, o) => {
1568
+ const a = t(this, I).rawRecords[r - o];
1551
1569
  a && (a.__ng.rowState = P.ROW_STATE.EMPTY);
1552
1570
  }), t(this, ft).call(this), r;
1553
1571
  }, "add"));
1554
1572
  q(this, "delete", /* @__PURE__ */ h((n) => {
1555
1573
  let e = [];
1556
1574
  Array.isArray(n) ? e = n : typeof n > "u" ? e = [t(this, I).host.row.at] : e = [parseInt(n, 10)], e.sort((s, r) => r - s).forEach((s) => {
1557
- if (t(this, z)[s]) {
1558
- const r = t(this, z)[s].__ng.rowid;
1559
- t(this, z)[s].__ng.rowState === P.ROW_STATE.INSERT ? t(this, I).rawRecords = t(this, I).rawRecords.filter((o) => o.__ng.rowid !== r) : t(this, I).rawRecords.forEach((o) => {
1560
- o.__ng.rowid === r && (o.__ng.deleted = !0, o.__ng.rowState = P.ROW_STATE.DELETE);
1575
+ if (t(this, W)[s]) {
1576
+ const r = t(this, W)[s].__ng.rowid;
1577
+ t(this, W)[s].__ng.rowState === P.ROW_STATE.INSERT ? t(this, I).rawRecords = t(this, I).rawRecords.filter((i) => i.__ng.rowid !== r) : t(this, I).rawRecords.forEach((i) => {
1578
+ i.__ng.rowid === r && (i.__ng.deleted = !0, i.__ng.rowState = P.ROW_STATE.DELETE);
1561
1579
  });
1562
1580
  }
1563
1581
  }), this.resetRecords(), t(this, ft).call(this);
@@ -1565,55 +1583,55 @@ const P = class P {
1565
1583
  q(this, "setValue", /* @__PURE__ */ h((n, e, s) => {
1566
1584
  var c;
1567
1585
  n = parseInt(n, 10);
1568
- const o = (typeof ((c = t(this, D).fields) == null ? void 0 : c.get) == "function" ? t(this, D).fields.get() : []).indexOf(e);
1569
- if (o < 0) return;
1570
- const i = this.getValidData()[n];
1571
- if (!i) return;
1572
- const a = i.v[o];
1573
- a !== s && i.__ng.rowState !== P.ROW_STATE.INSERT && (i.__ng.o.hasOwnProperty(e) || (i.__ng.o[e] = a), i.__ng.rowState = P.ROW_STATE.UPDATE), i.v[o] = s;
1586
+ const i = (typeof ((c = t(this, D).fields) == null ? void 0 : c.get) == "function" ? t(this, D).fields.get() : []).indexOf(e);
1587
+ if (i < 0) return;
1588
+ const o = this.getValidData()[n];
1589
+ if (!o) return;
1590
+ const a = o.v[i];
1591
+ a !== s && o.__ng.rowState !== P.ROW_STATE.INSERT && (o.__ng.o.hasOwnProperty(e) || (o.__ng.o[e] = a), o.__ng.rowState = P.ROW_STATE.UPDATE), o.v[i] = s;
1574
1592
  }, "setValue"));
1575
1593
  q(this, "resetRecords", /* @__PURE__ */ h(() => {
1576
- p(this, wt, t(this, I).rawRecords.filter((n) => !n.__ng.deleted)), p(this, z, t(this, I).rawRecords.filter((n) => !n.__ng.deleted && !n.__ng.filtered)), t(this, I).rawRecords.forEach((n, e) => {
1594
+ y(this, vt, t(this, I).rawRecords.filter((n) => !n.__ng.deleted)), y(this, W, t(this, I).rawRecords.filter((n) => !n.__ng.deleted && !n.__ng.filtered)), t(this, I).rawRecords.forEach((n, e) => {
1577
1595
  n.__ng.rowidx = e;
1578
- }), t(this, z).forEach((n, e) => {
1596
+ }), t(this, W).forEach((n, e) => {
1579
1597
  n.__ng.i = e;
1580
1598
  });
1581
1599
  }, "resetRecords"));
1582
- q(this, "getValidData", /* @__PURE__ */ h(() => (t(this, z).length === 0 && t(this, I).rawRecords.length > 0 && this.resetRecords(), t(this, z)), "getValidData"));
1583
- d(this, vt, /* @__PURE__ */ h((n) => {
1584
- var i;
1600
+ q(this, "getValidData", /* @__PURE__ */ h(() => (t(this, W).length === 0 && t(this, I).rawRecords.length > 0 && this.resetRecords(), t(this, W)), "getValidData"));
1601
+ d(this, St, /* @__PURE__ */ h((n) => {
1602
+ var o;
1585
1603
  if (!n) return n;
1586
- const e = !Array.isArray(n), s = e ? [n] : n, r = typeof ((i = t(this, D).fields) == null ? void 0 : i.get) == "function" ? t(this, D).fields.get() : [], o = s.filter((a) => !a.__ng.deleted).map((a) => {
1604
+ const e = !Array.isArray(n), s = e ? [n] : n, r = typeof ((o = t(this, D).fields) == null ? void 0 : o.get) == "function" ? t(this, D).fields.get() : [], i = s.filter((a) => !a.__ng.deleted).map((a) => {
1587
1605
  const c = {};
1588
- return r.forEach((l, u) => {
1589
- c[l] = a.v ? a.v[u] : a[l];
1606
+ return r.forEach((l, g) => {
1607
+ c[l] = a.v ? a.v[g] : a[l];
1590
1608
  }), c.__ng = a.__ng, c;
1591
1609
  });
1592
- return e ? o[0] : o;
1610
+ return e ? i[0] : i;
1593
1611
  }, "#conv"));
1594
1612
  q(this, "count", /* @__PURE__ */ h(() => this.getValidData().length, "count"));
1595
- p(this, D, n), p(this, I, e), t(this, me).call(this);
1613
+ y(this, D, n), y(this, I, e), t(this, me).call(this);
1596
1614
  }
1597
1615
  get source() {
1598
- return t(this, vt).call(this, t(this, I).rawRecords);
1616
+ return t(this, St).call(this, t(this, I).rawRecords);
1599
1617
  }
1600
1618
  set source(n) {
1601
1619
  this.clear(), this.add(n, !1);
1602
1620
  }
1603
1621
  get nextId() {
1604
- return ++ms(this, ye)._;
1622
+ return ++xs(this, ye)._;
1605
1623
  }
1606
1624
  get count() {
1607
- return t(this, z).length;
1625
+ return t(this, W).length;
1608
1626
  }
1609
1627
  get length() {
1610
- return t(this, z).length;
1628
+ return t(this, W).length;
1611
1629
  }
1612
1630
  getRowCount() {
1613
1631
  return this.length;
1614
1632
  }
1615
1633
  };
1616
- D = new WeakMap(), I = new WeakMap(), z = new WeakMap(), wt = new WeakMap(), ye = new WeakMap(), Z = new WeakMap(), me = new WeakMap(), ft = new WeakMap(), Yt = new WeakMap(), xe = new WeakMap(), we = new WeakMap(), vt = new WeakMap(), h(P, "ngData"), // 🎯 행 상태 정의 상수를 클래스 내부로 내재화
1634
+ D = new WeakMap(), I = new WeakMap(), W = new WeakMap(), vt = new WeakMap(), ye = new WeakMap(), J = new WeakMap(), me = new WeakMap(), ft = new WeakMap(), Vt = new WeakMap(), xe = new WeakMap(), we = new WeakMap(), St = new WeakMap(), h(P, "ngData"), // 🎯 행 상태 정의 상수를 클래스 내부로 내재화
1617
1635
  q(P, "ROW_STATE", {
1618
1636
  EMPTY: "EMPTY",
1619
1637
  NORMAL: "NORMAL",
@@ -1621,21 +1639,21 @@ q(P, "ROW_STATE", {
1621
1639
  UPDATE: "UPDATE",
1622
1640
  DELETE: "DELETE"
1623
1641
  });
1624
- let _e = P;
1642
+ let Oe = P;
1625
1643
  var ut;
1626
- const ls = class ls {
1644
+ const cs = class cs {
1627
1645
  constructor(n) {
1628
1646
  d(this, ut);
1629
- p(this, ut, n), this.row = new Ne(this), this.data = new _e(t(this, ut), this), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.pageCnt = 25, this.viewRecords.reset = () => {
1647
+ y(this, ut, n), this.row = new _e(this), this.data = new Oe(t(this, ut), this), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.pageCnt = 25, this.viewRecords.reset = () => {
1630
1648
  var e;
1631
1649
  (e = t(this, ut).view) != null && e.redraw && t(this, ut).view.redraw();
1632
1650
  }, this.setDataSource = (e) => {
1633
1651
  this.data && this.data.reset(), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.data.set(e || []);
1634
1652
  }, this.getRowState = (e) => {
1635
- var r, o;
1653
+ var r, i;
1636
1654
  const s = parseInt(e, 10);
1637
1655
  if (!(s >= this.data.count()))
1638
- return (o = (r = this.data.getValidData()[s]) == null ? void 0 : r.__ng) == null ? void 0 : o.rowState;
1656
+ return (i = (r = this.data.getValidData()[s]) == null ? void 0 : r.__ng) == null ? void 0 : i.rowState;
1639
1657
  }, this.getRowPosition = () => this.row.at, this.setRowPosition = (e) => {
1640
1658
  this.row.at = e;
1641
1659
  }, 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) => {
@@ -1643,58 +1661,58 @@ const ls = class ls {
1643
1661
  }, this.setDataSource([]);
1644
1662
  }
1645
1663
  };
1646
- ut = new WeakMap(), h(ls, "ngDataManager");
1647
- let Oe = ls;
1648
- var St, H, Vt, ve;
1649
- const cs = class cs {
1664
+ ut = new WeakMap(), h(cs, "ngDataManager");
1665
+ let De = cs;
1666
+ var Rt, H, Ut, ve;
1667
+ const hs = class hs {
1650
1668
  // 🎯 이제 { name: string, type: string } 객체들의 배열로 관리합니다.
1651
1669
  constructor(n) {
1652
- d(this, St);
1670
+ d(this, Rt);
1653
1671
  d(this, H, []);
1654
1672
  q(this, "add", /* @__PURE__ */ h((n, e = "string") => {
1655
1673
  n.forEach((s) => {
1656
1674
  t(this, H).some((r) => r.name === s) || t(this, H).push({ name: s, type: e });
1657
- }), t(this, Vt).call(this);
1675
+ }), t(this, Ut).call(this);
1658
1676
  }, "add"));
1659
- d(this, Vt, /* @__PURE__ */ h(() => {
1677
+ d(this, Ut, /* @__PURE__ */ h(() => {
1660
1678
  const n = /* @__PURE__ */ new Map();
1661
1679
  t(this, H).forEach((e) => {
1662
1680
  n.set(e.name, e.type);
1663
- }), p(this, H, Array.from(n, ([e, s]) => ({ name: e, type: s }))), p(this, H, t(this, H).filter((e) => e.name !== "" && e.name !== "__ng")), t(this, H).sort((e, s) => e.name.length < s.name.length ? 1 : -1);
1681
+ }), y(this, H, Array.from(n, ([e, s]) => ({ name: e, type: s }))), y(this, H, t(this, H).filter((e) => e.name !== "" && e.name !== "__ng")), t(this, H).sort((e, s) => e.name.length < s.name.length ? 1 : -1);
1664
1682
  }, "#adjust"));
1665
1683
  d(this, ve, /* @__PURE__ */ h(() => {
1666
- p(this, H, []), S.log(t(this, St).querySelectorAll("table"));
1667
- const n = Array.from(t(this, St).querySelectorAll("table"));
1684
+ y(this, H, []), S.log(t(this, Rt).querySelectorAll("table"));
1685
+ const n = Array.from(t(this, Rt).querySelectorAll("table"));
1668
1686
  if (!(!n || n.length === 0)) {
1669
1687
  for (const e of n)
1670
1688
  S.log(e), $("[data-bind]", e).each((s, r) => {
1671
- const o = r.dataset.bind, i = r.getAttribute("data-type") || "string";
1672
- o && t(this, H).push({ name: o, type: i });
1689
+ const i = r.dataset.bind, o = r.getAttribute("data-type") || "string";
1690
+ i && t(this, H).push({ name: i, type: o });
1673
1691
  }), ["data-expr", "background-color", "color", "tooltip", "visible", "readonly", "enable-button", "enable-check", "class-expr", "icon-color", "icon-src"].forEach((s) => {
1674
- $(`[${s}]`, e).each((r, o) => {
1675
- var i = o.getAttribute(s);
1676
- if (i.indexOf("data.") < 0) {
1677
- const a = i.search(/[(]/g);
1692
+ $(`[${s}]`, e).each((r, i) => {
1693
+ var o = i.getAttribute(s);
1694
+ if (o.indexOf("data.") < 0) {
1695
+ const a = o.search(/[(]/g);
1678
1696
  if (a > 0)
1679
1697
  try {
1680
- i = String(window[i.substring(0, a).trim()]);
1698
+ o = String(window[o.substring(0, a).trim()]);
1681
1699
  } catch {
1682
- i = "";
1700
+ o = "";
1683
1701
  }
1684
1702
  }
1685
- i.split("data.").forEach((a) => {
1703
+ o.split("data.").forEach((a) => {
1686
1704
  if (a.trim() != "") {
1687
1705
  const c = a.search(/[^_A-Za-z0-9]/g);
1688
1706
  let l = "";
1689
- c >= 0 ? l = a.substring(0, c) : i.startsWith("data.") && (l = a.replace("data.", "")), l && t(this, H).push({ name: l, type: "string" });
1707
+ c >= 0 ? l = a.substring(0, c) : o.startsWith("data.") && (l = a.replace("data.", "")), l && t(this, H).push({ name: l, type: "string" });
1690
1708
  }
1691
1709
  });
1692
1710
  });
1693
1711
  });
1694
- t(this, Vt).call(this);
1712
+ t(this, Ut).call(this);
1695
1713
  }
1696
1714
  }, "#init"));
1697
- p(this, St, n), t(this, ve).call(this);
1715
+ y(this, Rt, n), t(this, ve).call(this);
1698
1716
  }
1699
1717
  // 🎯 기존에 필드 이름만 쓰던 곳들과의 호환을 위해 이름 배열만 리턴하는 메서드 유지
1700
1718
  get() {
@@ -1716,19 +1734,19 @@ const cs = class cs {
1716
1734
  return t(this, H).some((e) => e.name === n);
1717
1735
  }
1718
1736
  };
1719
- St = new WeakMap(), H = new WeakMap(), Vt = new WeakMap(), ve = new WeakMap(), h(cs, "ngFields");
1720
- let De = cs;
1737
+ Rt = new WeakMap(), H = new WeakMap(), Ut = new WeakMap(), ve = new WeakMap(), h(hs, "ngFields");
1738
+ let Be = hs;
1721
1739
  var gt, Se, Re;
1722
- const hs = class hs extends HTMLElement {
1740
+ const ds = class ds extends HTMLElement {
1723
1741
  constructor() {
1724
1742
  super();
1725
1743
  //#created = false;
1726
1744
  d(this, gt);
1727
1745
  d(this, Se);
1728
1746
  d(this, Re, /* @__PURE__ */ h(() => {
1729
- this.fields = new De(this), p(this, Se, new $e(this)), S.log("NineTable connected."), this.dispatchEvent(new CustomEvent("load", { bubbles: !0, detail: { target: this } }));
1747
+ this.fields = new Be(this), y(this, Se, new Ne(this)), S.log("NineTable connected."), this.dispatchEvent(new CustomEvent("load", { bubbles: !0, detail: { target: this } }));
1730
1748
  }, "#init"));
1731
- this.attachShadow({ mode: "open" }), p(this, gt, new Oe(this));
1749
+ this.attachShadow({ mode: "open" }), y(this, gt, new De(this));
1732
1750
  }
1733
1751
  connectedCallback() {
1734
1752
  t(this, Re).call(this);
@@ -1749,10 +1767,10 @@ const hs = class hs extends HTMLElement {
1749
1767
  return t(this, gt);
1750
1768
  }
1751
1769
  };
1752
- gt = new WeakMap(), Se = new WeakMap(), Re = new WeakMap(), h(hs, "NineTable");
1753
- let We = hs;
1770
+ gt = new WeakMap(), Se = new WeakMap(), Re = new WeakMap(), h(ds, "NineTable");
1771
+ let We = ds;
1754
1772
  customElements.get("nine-table") || customElements.define("nine-table", We);
1755
- const Ct = class Ct extends HTMLElement {
1773
+ const Tt = class Tt extends HTMLElement {
1756
1774
  // 👈 커스텀 스타일용 캐시 추가
1757
1775
  constructor() {
1758
1776
  super();
@@ -1763,74 +1781,74 @@ const Ct = class Ct extends HTMLElement {
1763
1781
  connectedCallback() {
1764
1782
  }
1765
1783
  };
1766
- h(Ct, "BasicCellElement"), q(Ct, "_styleCache", /* @__PURE__ */ new Map()), q(Ct, "_customStyleCache", /* @__PURE__ */ new Map());
1767
- let ze = Ct;
1768
- var L, Ut, x, Ue, Xe, Ge, Ke, Ze;
1769
- const ds = class ds extends ze {
1784
+ h(Tt, "BasicCellElement"), q(Tt, "_styleCache", /* @__PURE__ */ new Map()), q(Tt, "_customStyleCache", /* @__PURE__ */ new Map());
1785
+ let ze = Tt;
1786
+ var L, Xt, v, Xe, Ke, Ge, Ze, Je;
1787
+ const fs = class fs extends ze {
1770
1788
  constructor() {
1771
1789
  super();
1772
1790
  d(this, L);
1773
- d(this, Ut);
1774
- d(this, x);
1775
- d(this, Ue);
1791
+ d(this, Xt);
1792
+ d(this, v);
1776
1793
  d(this, Xe);
1777
- d(this, Ge);
1778
1794
  d(this, Ke);
1795
+ d(this, Ge);
1796
+ d(this, Ze);
1779
1797
  q(this, "getDisplayText", /* @__PURE__ */ h((e) => {
1780
- if (t(this, x))
1781
- if (t(this, x).closest("tbody")) {
1782
- const s = t(this, x).closest("tr").data, r = parseInt(t(this, x).dataset.row);
1798
+ if (t(this, v))
1799
+ if (t(this, v).closest("tbody")) {
1800
+ const s = t(this, v).closest("tr").data, r = parseInt(t(this, v).dataset.row);
1783
1801
  if (!s) return "";
1784
- if (ninegrid.isNull(t(this, x).dataset.expr)) {
1785
- if (!ninegrid.isNull(t(this, x).dataset.bind))
1786
- return s[t(this, x).dataset.bind] || ninegrid.nvl(e, "");
1802
+ if (ninegrid.isNull(t(this, v).dataset.expr)) {
1803
+ if (!ninegrid.isNull(t(this, v).dataset.bind))
1804
+ return s[t(this, v).dataset.bind] || ninegrid.nvl(e, "");
1787
1805
  } else try {
1788
- return this.getExprValue(t(this, x).dataset.expr, s, r, t(this, x));
1806
+ return this.getExprValue(t(this, v).dataset.expr, s, r, t(this, v));
1789
1807
  } catch {
1790
- console.error(t(this, x).dataset.expr, s, t(this, x).dataset.row);
1808
+ console.error(t(this, v).dataset.expr, s, t(this, v).dataset.row);
1791
1809
  }
1792
1810
  return ninegrid.nvl(e, "");
1793
1811
  } else
1794
1812
  try {
1795
- return t(this, L).exprFunction(t(this, x).dataset.expr).call(this, null, -1, t(this, L).data);
1813
+ return t(this, L).exprFunction(t(this, v).dataset.expr).call(this, null, -1, t(this, L).data);
1796
1814
  } catch {
1797
1815
  }
1798
1816
  }, "getDisplayText"));
1799
- d(this, Ze, /* @__PURE__ */ h(() => {
1800
- if (!(!t(this, L) || !t(this, L).template || !t(this, x).closest("tbody.bindable"))) {
1801
- var e = ninegrid.j.querySelectorAll(t(this, x)).attr("suppress");
1817
+ d(this, Je, /* @__PURE__ */ h(() => {
1818
+ if (!(!t(this, L) || !t(this, L).template || !t(this, v).closest("tbody.bindable"))) {
1819
+ var e = ninegrid.j.querySelectorAll(t(this, v)).attr("suppress");
1802
1820
  if (e && (e = parseInt(e)), e && !isNaN(e)) {
1803
- var s = t(this, x).closest("tr"), r = [];
1821
+ var s = t(this, v).closest("tr"), r = [];
1804
1822
  $("th,td", s).each((m, T) => {
1805
- var A = ninegrid.j.querySelectorAll(T).attr("suppress");
1806
- A && T.dataset.row && (A = parseInt(A), !isNaN(A) && A <= e && r.push(A));
1823
+ var R = ninegrid.j.querySelectorAll(T).attr("suppress");
1824
+ R && T.dataset.row && (R = parseInt(R), !isNaN(R) && R <= e && r.push(R));
1807
1825
  }), r.sort();
1808
- var o = !1;
1826
+ var i = !1;
1809
1827
  if (parseInt(s.sectionRowIndex / t(this, L).template.length) > 0)
1810
- for (var i of r) {
1811
- if (i > e) break;
1812
- var a = parseInt(t(this, x).dataset.row), c = a - 1, l = t(this, x).closest("tr").data, u = t(this, L).data.get(c);
1813
- t(this, x).dataset.matrixRow;
1814
- var f = t(this, L).body.querySelector(`tbody.bindable [suppress="${i}"][data-matrix-row="${t(this, x).dataset.matrixRow}"]`), b = f.dataset.expr ? this.getExprValue(f.dataset.expr, l, a) : l[f.dataset.bind], g = f.dataset.expr ? this.getExprValue(f.dataset.expr, u, c) : u[f.dataset.bind];
1815
- if (b != g) {
1816
- o = !0;
1828
+ for (var o of r) {
1829
+ if (o > e) break;
1830
+ var a = parseInt(t(this, v).dataset.row), c = a - 1, l = t(this, v).closest("tr").data, g = t(this, L).data.get(c);
1831
+ t(this, v).dataset.matrixRow;
1832
+ var f = t(this, L).body.querySelector(`tbody.bindable [suppress="${o}"][data-matrix-row="${t(this, v).dataset.matrixRow}"]`), b = f.dataset.expr ? this.getExprValue(f.dataset.expr, l, a) : l[f.dataset.bind], u = f.dataset.expr ? this.getExprValue(f.dataset.expr, g, c) : g[f.dataset.bind];
1833
+ if (b != u) {
1834
+ i = !0;
1817
1835
  break;
1818
1836
  }
1819
1837
  }
1820
1838
  else
1821
- o = !0;
1822
- o ? ninegrid.j.querySelectorAll(t(this, x)).removeClass("suppress") : ninegrid.j.querySelectorAll(t(this, x)).addClass("suppress"), ninegrid.j.querySelectorAll(t(this, x)).hasClass("hidden") || (o ? ninegrid.j.querySelectorAll(t(this, x)).removeClass("hidden") : ninegrid.j.querySelectorAll(t(this, x)).addClass("hidden"));
1823
- var y = parseInt(t(this, x).dataset.matrixRow), w = y - 1, v = t(this, L).body.querySelector(`tbody.bindable [data-col="${t(this, x).dataset.col}"][data-matrix-row="${w}"]`);
1824
- $(v).hasClass("suppress") && !ninegrid.j.querySelectorAll(t(this, x)).hasClass("suppress") ? ninegrid.j.querySelectorAll(v).removeClass("last-none-suppress").addClass("last-suppress") : !$(v).hasClass("suppress") && ninegrid.j.querySelectorAll(t(this, x)).hasClass("suppress") ? ninegrid.j.querySelectorAll(v).removeClass("last-suppress").addClass("last-none-suppress") : ninegrid.j.querySelectorAll(v).removeClass("last-none-suppress").removeClass("last-suppress");
1839
+ i = !0;
1840
+ i ? ninegrid.j.querySelectorAll(t(this, v)).removeClass("suppress") : ninegrid.j.querySelectorAll(t(this, v)).addClass("suppress"), ninegrid.j.querySelectorAll(t(this, v)).hasClass("hidden") || (i ? ninegrid.j.querySelectorAll(t(this, v)).removeClass("hidden") : ninegrid.j.querySelectorAll(t(this, v)).addClass("hidden"));
1841
+ var p = parseInt(t(this, v).dataset.matrixRow), x = p - 1, w = t(this, L).body.querySelector(`tbody.bindable [data-col="${t(this, v).dataset.col}"][data-matrix-row="${x}"]`);
1842
+ $(w).hasClass("suppress") && !ninegrid.j.querySelectorAll(t(this, v)).hasClass("suppress") ? ninegrid.j.querySelectorAll(w).removeClass("last-none-suppress").addClass("last-suppress") : !$(w).hasClass("suppress") && ninegrid.j.querySelectorAll(t(this, v)).hasClass("suppress") ? ninegrid.j.querySelectorAll(w).removeClass("last-suppress").addClass("last-none-suppress") : ninegrid.j.querySelectorAll(w).removeClass("last-none-suppress").removeClass("last-suppress");
1825
1843
  }
1826
1844
  }
1827
1845
  }, "#resetSuppress"));
1828
- q(this, "getExprValue", /* @__PURE__ */ h((e, s, r, o) => {
1846
+ q(this, "getExprValue", /* @__PURE__ */ h((e, s, r, i) => {
1829
1847
  if (typeof e < "u")
1830
1848
  try {
1831
1849
  r = parseInt(r);
1832
- const i = e.replace("()", "");
1833
- return t(this, L)[i] ? t(this, L)[i].call(this, s, r, t(this, x)) : t(this, L).exprFunction(e).call(this, s, r, t(this, L).data);
1850
+ const o = e.replace("()", "");
1851
+ return t(this, L)[o] ? t(this, L)[o].call(this, s, r, t(this, v)) : t(this, L).exprFunction(e).call(this, s, r, t(this, L).data);
1834
1852
  } catch {
1835
1853
  return ["NG-COMBO"].includes(this.tagName) ? "" : e;
1836
1854
  }
@@ -1839,31 +1857,31 @@ const ds = class ds extends ze {
1839
1857
  }, "getExprValue"));
1840
1858
  }
1841
1859
  connectedCallback() {
1842
- super.connectedCallback(), p(this, L, this.getRootNode().host), p(this, x, this.closest("th,td")), p(this, Ut, t(this, x).closest("tr"));
1860
+ super.connectedCallback(), y(this, L, this.getRootNode().host), y(this, v, this.closest("th,td")), y(this, Xt, t(this, v).closest("tr"));
1843
1861
  }
1844
1862
  get value() {
1845
- var e = !t(this, L) || !t(this, L).dataManager || !t(this, x) || !t(this, x).dataset || !t(this, x).dataset.row || !t(this, x).dataset.bind ? "" : t(this, x).closest("tr").data[t(this, x).dataset.bind];
1863
+ var e = !t(this, L) || !t(this, L).dataManager || !t(this, v) || !t(this, v).dataset || !t(this, v).dataset.row || !t(this, v).dataset.bind ? "" : t(this, v).closest("tr").data[t(this, v).dataset.bind];
1846
1864
  return e ?? "";
1847
1865
  }
1848
1866
  set value(e) {
1849
- var s = parseInt(t(this, x).dataset.row);
1867
+ var s = parseInt(t(this, v).dataset.row);
1850
1868
  const r = this.getAttribute("update-row-state") != "false";
1851
- s < 0 ? t(this, L).data.setValueNF(parseInt(t(this, x).dataset.index), t(this, x).dataset.bind, e, r) : t(this, L).data.setValue(s, t(this, x).dataset.bind, e, r);
1869
+ s < 0 ? t(this, L).data.setValueNF(parseInt(t(this, v).dataset.index), t(this, v).dataset.bind, e, r) : t(this, L).data.setValue(s, t(this, v).dataset.bind, e, r);
1852
1870
  }
1853
1871
  get row() {
1854
- return parseInt(t(this, x).dataset.row);
1872
+ return parseInt(t(this, v).dataset.row);
1855
1873
  }
1856
1874
  get data() {
1857
- return t(this, x).closest("tr").data;
1875
+ return t(this, v).closest("tr").data;
1858
1876
  }
1859
1877
  refresh() {
1860
- const e = t(this, x).dataset.bind;
1861
- return parseInt(t(this, x).dataset.row), t(this, Ut).data[e];
1878
+ const e = t(this, v).dataset.bind;
1879
+ return parseInt(t(this, v).dataset.row), t(this, Xt).data[e];
1862
1880
  }
1863
1881
  };
1864
- L = new WeakMap(), Ut = new WeakMap(), x = new WeakMap(), Ue = new WeakMap(), Xe = new WeakMap(), Ge = new WeakMap(), Ke = new WeakMap(), Ze = new WeakMap(), h(ds, "CellElement");
1865
- let Be = ds;
1866
- const fs = class fs extends Be {
1882
+ L = new WeakMap(), Xt = new WeakMap(), v = new WeakMap(), Xe = new WeakMap(), Ke = new WeakMap(), Ge = new WeakMap(), Ze = new WeakMap(), Je = new WeakMap(), h(fs, "CellElement");
1883
+ let Pe = fs;
1884
+ const us = class us extends Pe {
1867
1885
  constructor() {
1868
1886
  super();
1869
1887
  }
@@ -1874,21 +1892,21 @@ const fs = class fs extends Be {
1874
1892
  return super.refresh();
1875
1893
  }
1876
1894
  };
1877
- h(fs, "EditableCellElement");
1878
- let Pe = fs;
1879
- var Xt, bt, Rt, At, Ae, J, Je;
1880
- const us = class us extends Pe {
1895
+ h(us, "EditableCellElement");
1896
+ let Fe = us;
1897
+ var Kt, bt, At, Et, Ae, Q, Qe;
1898
+ const gs = class gs extends Fe {
1881
1899
  constructor() {
1882
1900
  super();
1883
- d(this, Xt);
1901
+ d(this, Kt);
1884
1902
  d(this, bt);
1885
- d(this, Rt);
1886
1903
  d(this, At);
1904
+ d(this, Et);
1887
1905
  d(this, Ae);
1888
- d(this, J);
1906
+ d(this, Q);
1889
1907
  q(this, "refresh", /* @__PURE__ */ h(() => {
1890
1908
  const e = super.refresh();
1891
- t(this, Xt).value = e;
1909
+ t(this, Kt).value = e;
1892
1910
  }, "refresh"));
1893
1911
  /**
1894
1912
  dataRefresh = (v) => {
@@ -1920,22 +1938,22 @@ const us = class us extends Pe {
1920
1938
  if (!v) this.reset();
1921
1939
  };
1922
1940
  */
1923
- d(this, Je, /* @__PURE__ */ h((e) => {
1941
+ d(this, Qe, /* @__PURE__ */ h((e) => {
1924
1942
  if (!["Escape", "Enter", "Tab", "Home", "End", "ArrowLeft", "ArrowRight", "PageUp", "PageDown", "Backspace", "Delete"].includes(e.code)) {
1925
1943
  if (t(this, bt) == "number") {
1926
- let o = [];
1927
- if (t(this, J) && Number(t(this, J)) > 0 && o.push("."), t(this, At) && Number(t(this, At)) >= 0 && o.push("-"), !(e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && !o.includes(e.key) && e.preventDefault(), t(this, J) && (e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && e.target.selectionStart == e.target.selectionEnd) {
1944
+ let i = [];
1945
+ if (t(this, Q) && Number(t(this, Q)) > 0 && i.push("."), t(this, Et) && Number(t(this, Et)) >= 0 && i.push("-"), !(e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && !i.includes(e.key) && e.preventDefault(), t(this, Q) && (e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) && e.target.selectionStart == e.target.selectionEnd) {
1928
1946
  var s = e.target.value, r = s.indexOf(".");
1929
1947
  if (r >= 0) {
1930
1948
  var s = s.substr(r + 1, s.length);
1931
- s.length >= Number(t(this, J)) && e.preventDefault();
1949
+ s.length >= Number(t(this, Q)) && e.preventDefault();
1932
1950
  }
1933
1951
  }
1934
1952
  }
1935
- t(this, Rt) && ninegrid.getByteLength(e.target.value) >= Number(t(this, Rt)) && e.target.selectionStart == e.target.selectionEnd && e.preventDefault();
1953
+ t(this, At) && ninegrid.getByteLength(e.target.value) >= Number(t(this, At)) && e.target.selectionStart == e.target.selectionEnd && e.preventDefault();
1936
1954
  }
1937
1955
  }, "#onKeyDown"));
1938
- if (this.applyBaseStyle(), p(this, bt, this.getAttribute("type") || "text"), p(this, Rt, this.getAttribute("maxbyte")), p(this, At, this.getAttribute("min")), p(this, Ae, this.getAttribute("max")), p(this, J, this.getAttribute("scale")), !["text", "number"].includes(t(this, bt))) throw `invalid type : ${t(this, bt)}`;
1956
+ if (this.applyBaseStyle(), y(this, bt, this.getAttribute("type") || "text"), y(this, At, this.getAttribute("maxbyte")), y(this, Et, this.getAttribute("min")), y(this, Ae, this.getAttribute("max")), y(this, Q, this.getAttribute("scale")), !["text", "number"].includes(t(this, bt))) throw `invalid type : ${t(this, bt)}`;
1939
1957
  }
1940
1958
  connectedCallback() {
1941
1959
  for (var e = [], s = 0; s < this.attributes.length; s++)
@@ -1945,11 +1963,11 @@ const us = class us extends Pe {
1945
1963
  ${e.join(" ")}
1946
1964
  ondragstart="return false;"
1947
1965
  >
1948
- `, super.connectedCallback(), p(this, Xt, this.querySelector("input"));
1966
+ `, super.connectedCallback(), y(this, Kt, this.querySelector("input"));
1949
1967
  }
1950
1968
  };
1951
- Xt = new WeakMap(), bt = new WeakMap(), Rt = new WeakMap(), At = new WeakMap(), Ae = new WeakMap(), J = new WeakMap(), Je = new WeakMap(), h(us, "CellInputText");
1952
- let Fe = us;
1969
+ Kt = new WeakMap(), bt = new WeakMap(), At = new WeakMap(), Et = new WeakMap(), Ae = new WeakMap(), Q = new WeakMap(), Qe = new WeakMap(), h(gs, "CellInputText");
1970
+ let je = gs;
1953
1971
  customElements.get("cell-input-text");
1954
- customElements.get("cell-input") || customElements.define("cell-input", Fe);
1972
+ customElements.get("cell-input") || customElements.define("cell-input", je);
1955
1973
  //# sourceMappingURL=nine-table.js.map