@ninebone/table 0.0.195 β 0.0.197
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/nine-table.js +312 -321
- package/dist/nine-table.js.map +1 -1
- package/dist/nine-table.umd.js +6 -6
- package/dist/nine-table.umd.js.map +1 -1
- package/package.json +1 -1
package/dist/nine-table.js
CHANGED
|
@@ -1,96 +1,96 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
1
|
+
var _e = Object.defineProperty;
|
|
2
|
+
var Ie = (w) => {
|
|
3
3
|
throw TypeError(w);
|
|
4
4
|
};
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var m = (w, i, t) =>
|
|
8
|
-
var e = (w, i, t) => (
|
|
9
|
-
var
|
|
5
|
+
var $e = (w, i, t) => i in w ? _e(w, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : w[i] = t;
|
|
6
|
+
var a = (w, i) => _e(w, "name", { value: i, configurable: !0 });
|
|
7
|
+
var m = (w, i, t) => $e(w, typeof i != "symbol" ? i + "" : i, t), Me = (w, i, t) => i.has(w) || Ie("Cannot " + t);
|
|
8
|
+
var e = (w, i, t) => (Me(w, i, "read from private field"), t ? t.call(w) : i.get(w)), d = (w, i, t) => i.has(w) ? Ie("Cannot add the same private member more than once") : i instanceof WeakSet ? i.add(w) : i.set(w, t), p = (w, i, t, s) => (Me(w, i, "write to private field"), s ? s.call(w, t) : i.set(w, t), t);
|
|
9
|
+
var He = (w, i, t, s) => ({
|
|
10
10
|
set _(n) {
|
|
11
|
-
|
|
11
|
+
p(w, i, n, t);
|
|
12
12
|
},
|
|
13
13
|
get _() {
|
|
14
14
|
return e(w, i, s);
|
|
15
15
|
}
|
|
16
16
|
});
|
|
17
|
-
import { trace as
|
|
18
|
-
const
|
|
17
|
+
import { trace as We } from "@ninebone/util";
|
|
18
|
+
const Re = class Re extends We.constructor {
|
|
19
19
|
constructor() {
|
|
20
20
|
super(), this.init("nine-table", "green");
|
|
21
21
|
}
|
|
22
22
|
};
|
|
23
|
-
|
|
24
|
-
let
|
|
25
|
-
const
|
|
26
|
-
var L, O, y, B, D, N,
|
|
27
|
-
const
|
|
23
|
+
a(Re, "Trace");
|
|
24
|
+
let ge = Re;
|
|
25
|
+
const G = new ge();
|
|
26
|
+
var L, O, y, B, D, N, te, P, ie;
|
|
27
|
+
const Ee = class Ee extends HTMLElement {
|
|
28
28
|
constructor() {
|
|
29
29
|
super();
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
30
|
+
d(this, L);
|
|
31
|
+
d(this, O, !1);
|
|
32
|
+
d(this, y);
|
|
33
|
+
d(this, B);
|
|
34
|
+
d(this, D);
|
|
35
|
+
d(this, N);
|
|
36
|
+
d(this, te, /* @__PURE__ */ a(() => {
|
|
37
37
|
if (!e(this, L)) return;
|
|
38
38
|
const t = e(this, L).querySelector(".ng-container-body");
|
|
39
|
-
t && (
|
|
39
|
+
t && (p(this, N, new ResizeObserver(() => {
|
|
40
40
|
this.refresh();
|
|
41
41
|
})), e(this, N).observe(t));
|
|
42
42
|
}, "#observeResize"));
|
|
43
|
-
m(this, "refresh", /* @__PURE__ */
|
|
43
|
+
m(this, "refresh", /* @__PURE__ */ a(() => {
|
|
44
44
|
if (!e(this, L) || !e(this, y) || e(this, O)) return;
|
|
45
45
|
const t = e(this, y).container, s = t.querySelector("table");
|
|
46
46
|
if (!s) return;
|
|
47
|
-
const n = e(this, y).track, r = e(this, y).thumb, o = e(this, L).querySelector(".ng-container-bottom"), h = t.clientWidth,
|
|
48
|
-
if (h !== 0 &&
|
|
47
|
+
const n = e(this, y).track, r = e(this, y).thumb, o = e(this, L).querySelector(".ng-container-bottom"), h = t.clientWidth, f = s.scrollWidth;
|
|
48
|
+
if (h !== 0 && f > h)
|
|
49
49
|
o && (o.style.display = "flex");
|
|
50
50
|
else {
|
|
51
51
|
o && (o.style.display = "none");
|
|
52
52
|
return;
|
|
53
53
|
}
|
|
54
|
-
const
|
|
55
|
-
if (
|
|
56
|
-
const
|
|
57
|
-
r.style.width = `${
|
|
58
|
-
let
|
|
59
|
-
const
|
|
60
|
-
if (
|
|
61
|
-
const x =
|
|
62
|
-
x && x[1] && (
|
|
54
|
+
const l = n.clientWidth;
|
|
55
|
+
if (l <= 0) return;
|
|
56
|
+
const g = Math.max(Math.min(l * (h / f), l), 20);
|
|
57
|
+
r.style.width = `${g}px`;
|
|
58
|
+
let c = 0;
|
|
59
|
+
const b = s.style.transform;
|
|
60
|
+
if (b && b.includes("translateX")) {
|
|
61
|
+
const x = b.match(/translateX\(([-\d.]+)px\)/);
|
|
62
|
+
x && x[1] && (c = parseFloat(x[1]));
|
|
63
63
|
} else
|
|
64
|
-
|
|
65
|
-
let
|
|
66
|
-
|
|
67
|
-
const
|
|
68
|
-
|
|
64
|
+
c = parseInt(s.style.left || 0, 10);
|
|
65
|
+
let u = parseInt(Math.abs(c) * l / f, 10);
|
|
66
|
+
u < 0 && (u = 0);
|
|
67
|
+
const S = l - g;
|
|
68
|
+
u > S && (u = S), r.style.left = `${u}px`, e(this, y).left.disabled = u === 0, e(this, y).right.disabled = u >= S - 1;
|
|
69
69
|
}, "refresh"));
|
|
70
|
-
|
|
70
|
+
d(this, P, /* @__PURE__ */ a((t) => {
|
|
71
71
|
if (!e(this, y)) return !1;
|
|
72
72
|
const s = e(this, y).container, n = s.querySelector("table");
|
|
73
73
|
if (!n) return !1;
|
|
74
74
|
const r = e(this, y).track.getBoundingClientRect(), o = e(this, y).thumb.clientWidth;
|
|
75
75
|
let h = t;
|
|
76
76
|
h < 0 && (h = 0);
|
|
77
|
-
const
|
|
78
|
-
h >
|
|
79
|
-
const
|
|
80
|
-
let
|
|
81
|
-
return -
|
|
77
|
+
const f = r.width - o;
|
|
78
|
+
h > f && (h = f), h = parseInt(h, 10), e(this, y).thumb.style.left = `${h}px`, e(this, y).left.disabled = h === 0, e(this, y).right.disabled = h >= f - 1;
|
|
79
|
+
const l = s.clientWidth, g = n.scrollWidth;
|
|
80
|
+
let c = f > 0 ? -h * (g - l) / f : 0;
|
|
81
|
+
return -c > g - l && (c = -(g - l)), -c + 5 > g - l && (c = -(g - l)), l >= g && (c = 0), n.style.transform = `translateX(${c}px)`, h > 0 && h < f - 1;
|
|
82
82
|
}, "#thumbMoveTo"));
|
|
83
|
-
|
|
84
|
-
const t = /* @__PURE__ */
|
|
83
|
+
d(this, ie, /* @__PURE__ */ a(() => {
|
|
84
|
+
const t = /* @__PURE__ */ a((n) => {
|
|
85
85
|
clearInterval(e(this, B)), clearInterval(e(this, D));
|
|
86
86
|
const r = parseInt(e(this, y).thumb.style.left || 0, 10);
|
|
87
|
-
e(this, P).call(this, r + n),
|
|
88
|
-
clearInterval(e(this, B)),
|
|
87
|
+
e(this, P).call(this, r + n), p(this, B, setInterval(() => {
|
|
88
|
+
clearInterval(e(this, B)), p(this, D, setInterval(() => {
|
|
89
89
|
const o = parseInt(e(this, y).thumb.style.left || 0, 10);
|
|
90
90
|
e(this, P).call(this, o + n) || clearInterval(e(this, D));
|
|
91
91
|
}, 50));
|
|
92
92
|
}, 500));
|
|
93
|
-
}, "delayScroll"), s = /* @__PURE__ */
|
|
93
|
+
}, "delayScroll"), s = /* @__PURE__ */ a(() => {
|
|
94
94
|
clearInterval(e(this, B)), clearInterval(e(this, D));
|
|
95
95
|
}, "clearTimer");
|
|
96
96
|
["mouseup", "mouseleave", "touchend"].forEach((n) => {
|
|
@@ -106,20 +106,20 @@ const Ae = class Ae extends HTMLElement {
|
|
|
106
106
|
e(this, P).call(this, n.clientX - r.left - o / 2);
|
|
107
107
|
}), e(this, y).thumb.addEventListener("mousedown", (n) => {
|
|
108
108
|
if (n.button !== 0) return;
|
|
109
|
-
n.stopPropagation(), n.preventDefault(),
|
|
110
|
-
const r = /* @__PURE__ */
|
|
109
|
+
n.stopPropagation(), n.preventDefault(), p(this, O, !0), this.shiftX = n.clientX - e(this, y).thumb.getBoundingClientRect().left;
|
|
110
|
+
const r = /* @__PURE__ */ a((h) => {
|
|
111
111
|
if (!e(this, O)) return;
|
|
112
|
-
const
|
|
113
|
-
e(this, P).call(this, h.clientX -
|
|
114
|
-
}, "onMouseMove"), o = /* @__PURE__ */
|
|
115
|
-
|
|
112
|
+
const f = e(this, y).track.getBoundingClientRect();
|
|
113
|
+
e(this, P).call(this, h.clientX - f.left - this.shiftX);
|
|
114
|
+
}, "onMouseMove"), o = /* @__PURE__ */ a(() => {
|
|
115
|
+
p(this, O, !1), s(), document.removeEventListener("mousemove", r), document.removeEventListener("mouseup", o), this.refresh();
|
|
116
116
|
}, "onMouseUp");
|
|
117
117
|
document.addEventListener("mousemove", r), document.addEventListener("mouseup", o);
|
|
118
118
|
});
|
|
119
119
|
}, "#init"));
|
|
120
120
|
}
|
|
121
121
|
connectedCallback() {
|
|
122
|
-
if (
|
|
122
|
+
if (p(this, L, this.closest("nine-table-sheet") || this.getRootNode().host), !e(this, L)) return;
|
|
123
123
|
this.innerHTML = `
|
|
124
124
|
<style>
|
|
125
125
|
nine-table-hscrollbar {
|
|
@@ -183,19 +183,19 @@ const Ae = class Ae extends HTMLElement {
|
|
|
183
183
|
<div class='ng-scroll-track'><div class='ng-scroll-thumb'></div></div>
|
|
184
184
|
<button class='ng-scroll-right' disabled><div class='ng-scroll-icon'></div></button>
|
|
185
185
|
`;
|
|
186
|
-
const t = /* @__PURE__ */
|
|
186
|
+
const t = /* @__PURE__ */ a(() => {
|
|
187
187
|
const s = e(this, L).querySelector(".ng-container-body");
|
|
188
188
|
if (!s) {
|
|
189
189
|
setTimeout(t, 10);
|
|
190
190
|
return;
|
|
191
191
|
}
|
|
192
|
-
|
|
192
|
+
p(this, y, {
|
|
193
193
|
container: s,
|
|
194
194
|
track: this.querySelector(".ng-scroll-track"),
|
|
195
195
|
thumb: this.querySelector(".ng-scroll-thumb"),
|
|
196
196
|
left: this.querySelector(".ng-scroll-left"),
|
|
197
197
|
right: this.querySelector(".ng-scroll-right")
|
|
198
|
-
}), e(this,
|
|
198
|
+
}), e(this, ie).call(this), e(this, te).call(this), this.refresh();
|
|
199
199
|
}, "initWhenReady");
|
|
200
200
|
t();
|
|
201
201
|
}
|
|
@@ -203,27 +203,27 @@ const Ae = class Ae extends HTMLElement {
|
|
|
203
203
|
e(this, N) && e(this, N).disconnect();
|
|
204
204
|
}
|
|
205
205
|
};
|
|
206
|
-
L = new WeakMap(), O = new WeakMap(), y = new WeakMap(), B = new WeakMap(), D = new WeakMap(), N = new WeakMap(),
|
|
207
|
-
let
|
|
208
|
-
customElements.get("nine-table-hscrollbar") || customElements.define("nine-table-hscrollbar",
|
|
209
|
-
var V, _, E, $, M,
|
|
210
|
-
const
|
|
206
|
+
L = new WeakMap(), O = new WeakMap(), y = new WeakMap(), B = new WeakMap(), D = new WeakMap(), N = new WeakMap(), te = new WeakMap(), P = new WeakMap(), ie = new WeakMap(), a(Ee, "NineTableHScrollBar");
|
|
207
|
+
let be = Ee;
|
|
208
|
+
customElements.get("nine-table-hscrollbar") || customElements.define("nine-table-hscrollbar", be);
|
|
209
|
+
var V, _, E, $, I, M, se, ne;
|
|
210
|
+
const Te = class Te {
|
|
211
211
|
constructor(i) {
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
m(this, "getRowHeight", /* @__PURE__ */
|
|
219
|
-
|
|
220
|
-
e(this,
|
|
212
|
+
d(this, V);
|
|
213
|
+
d(this, _, []);
|
|
214
|
+
d(this, E, null);
|
|
215
|
+
d(this, $, null);
|
|
216
|
+
d(this, I, 0);
|
|
217
|
+
d(this, M, 0);
|
|
218
|
+
m(this, "getRowHeight", /* @__PURE__ */ a(() => e(this, E), "getRowHeight"));
|
|
219
|
+
d(this, se, /* @__PURE__ */ a(() => {
|
|
220
|
+
e(this, ne).call(this);
|
|
221
221
|
}, "#init"));
|
|
222
222
|
/**
|
|
223
223
|
* π― λ·°ν¬νΈ ν¬κΈ° λ³ν μμ μ λμ΄ κ³μ° λ° νμν ν κ°μ μ°μ Β·μΊμ±μ μκ²°
|
|
224
224
|
*/
|
|
225
|
-
|
|
226
|
-
!e(this, V) || !(e(this, V) instanceof HTMLElement) || (
|
|
225
|
+
d(this, ne, /* @__PURE__ */ a(() => {
|
|
226
|
+
!e(this, V) || !(e(this, V) instanceof HTMLElement) || (p(this, $, new ResizeObserver((i) => {
|
|
227
227
|
for (const t of i) {
|
|
228
228
|
const s = t.target;
|
|
229
229
|
if (!s.classList.contains("active"))
|
|
@@ -232,50 +232,50 @@ const qe = class qe {
|
|
|
232
232
|
if (n > 0) {
|
|
233
233
|
const r = s.clientHeight || s.getBoundingClientRect().height || n;
|
|
234
234
|
let o = 0;
|
|
235
|
-
const h = s.querySelector(".ng-container-body") || s,
|
|
236
|
-
|
|
237
|
-
const
|
|
238
|
-
if (e(this,
|
|
239
|
-
const
|
|
240
|
-
|
|
241
|
-
const
|
|
242
|
-
|
|
235
|
+
const h = s.querySelector(".ng-container-body") || s, f = h.querySelector("thead"), l = h.querySelector("tfoot");
|
|
236
|
+
f && (o += f.offsetHeight || f.getBoundingClientRect().height), l && (o += l.offsetHeight || l.getBoundingClientRect().height);
|
|
237
|
+
const g = Math.max(r - o, 100);
|
|
238
|
+
if (e(this, I) !== g && (p(this, I, g), e(this, E) !== null)) {
|
|
239
|
+
const c = Math.ceil(e(this, I) / e(this, E));
|
|
240
|
+
p(this, M, c + 20), G.log(`[RowManager] Resized. Height: ${e(this, I)}px | Target Rows: ${e(this, M)}`), [".ng-container-body", ".ng-container-left", ".ng-container-right"].forEach((b) => {
|
|
241
|
+
const u = s.querySelector(b);
|
|
242
|
+
u && u.querySelector("tbody") && this.renderRows(u);
|
|
243
243
|
});
|
|
244
244
|
}
|
|
245
245
|
}
|
|
246
246
|
}
|
|
247
247
|
})), e(this, $).observe(e(this, V)));
|
|
248
248
|
}, "#initResizeObserver"));
|
|
249
|
-
m(this, "initTemplate", /* @__PURE__ */
|
|
249
|
+
m(this, "initTemplate", /* @__PURE__ */ a((i) => {
|
|
250
250
|
const t = i.querySelector("tbody.bindable") || i.querySelector("tbody");
|
|
251
251
|
if (!t) return;
|
|
252
252
|
const s = Array.from(t.querySelectorAll("tr")).filter((n) => !n.classList.contains("nodata"));
|
|
253
|
-
|
|
253
|
+
p(this, _, s.map((n) => n.cloneNode(!0))), p(this, E, null), console.log(`[RowManager] Template initialized with ${e(this, _).length} row(s).`);
|
|
254
254
|
}, "initTemplate"));
|
|
255
|
-
m(this, "measureAndCacheHeight", /* @__PURE__ */
|
|
255
|
+
m(this, "measureAndCacheHeight", /* @__PURE__ */ a((i) => {
|
|
256
256
|
if (e(this, E) !== null && e(this, E) > 0)
|
|
257
257
|
return e(this, E);
|
|
258
258
|
if (e(this, _).length === 0)
|
|
259
259
|
throw new Error("[RowManager] Template TRs are empty.");
|
|
260
260
|
const t = i.querySelector("tbody.bindable") || i.querySelector("tbody");
|
|
261
261
|
if (!t) return 24;
|
|
262
|
-
t.querySelectorAll("tr:not(.nodata)").forEach((
|
|
262
|
+
t.querySelectorAll("tr:not(.nodata)").forEach((c) => c.remove());
|
|
263
263
|
const s = t.querySelector("tr.nodata"), n = document.createDocumentFragment();
|
|
264
|
-
e(this, _).forEach((
|
|
265
|
-
n.appendChild(
|
|
264
|
+
e(this, _).forEach((c) => {
|
|
265
|
+
n.appendChild(c.cloneNode(!0));
|
|
266
266
|
}), s ? s.before(n) : t.appendChild(n);
|
|
267
|
-
const r = i.closest("nine-table-sheet"), o = r ? r.style.display : "", h = r ? r.style.visibility : "",
|
|
267
|
+
const r = i.closest("nine-table-sheet"), o = r ? r.style.display : "", h = r ? r.style.visibility : "", f = r ? r.style.position : "";
|
|
268
268
|
r && (r.style.display === "none" || window.getComputedStyle(r).display === "none") && (r.style.display = "block", r.style.visibility = "hidden", r.style.position = "absolute");
|
|
269
|
-
let
|
|
270
|
-
if (t.querySelectorAll("tr:not(.nodata)").forEach((
|
|
271
|
-
const
|
|
272
|
-
|
|
273
|
-
}), r && (r.style.display = o, r.style.visibility = h, r.style.position =
|
|
274
|
-
const
|
|
275
|
-
|
|
269
|
+
let l = 0;
|
|
270
|
+
if (t.querySelectorAll("tr:not(.nodata)").forEach((c, b) => {
|
|
271
|
+
const u = c.offsetHeight || c.getBoundingClientRect().height;
|
|
272
|
+
u === 0 ? l += 40 : l += u;
|
|
273
|
+
}), r && (r.style.display = o, r.style.visibility = h, r.style.position = f), p(this, E, l), e(this, I) > 0) {
|
|
274
|
+
const c = Math.ceil(e(this, I) / e(this, E));
|
|
275
|
+
p(this, M, c + 20);
|
|
276
276
|
} else
|
|
277
|
-
|
|
278
|
-
return console.log(`[RowManager] Template Height Cached: ${e(this, E)}px | RowCount: ${e(this,
|
|
277
|
+
p(this, M, 40);
|
|
278
|
+
return console.log(`[RowManager] Template Height Cached: ${e(this, E)}px | RowCount: ${e(this, M)}`), e(this, E);
|
|
279
279
|
}, "measureAndCacheHeight"));
|
|
280
280
|
/**
|
|
281
281
|
* π― μΊμλ ν κ°μ λ°ν (μμ λλ§ μ΅μνμ λ°©μ΄ μ°μ°)
|
|
@@ -293,114 +293,114 @@ const qe = class qe {
|
|
|
293
293
|
/**
|
|
294
294
|
* π― μΊμλ ν κ°μλ₯Ό κ³§λ°λ‘ κ°μ Έμμ TR λΌλ μ£Όμ
(μ€λ³΅ κ³μ° μ κ±°)
|
|
295
295
|
*/
|
|
296
|
-
m(this, "renderRows", /* @__PURE__ */
|
|
296
|
+
m(this, "renderRows", /* @__PURE__ */ a((i) => {
|
|
297
297
|
if (e(this, _).length === 0) return;
|
|
298
298
|
const t = i.querySelector("tbody.bindable") || i.querySelector("tbody");
|
|
299
299
|
if (!t) return;
|
|
300
300
|
t.querySelectorAll("tr:not(.nodata)").forEach((o) => o.remove());
|
|
301
|
-
const s = t.querySelector("tr.nodata"), n = document.createDocumentFragment(), r = e(this,
|
|
301
|
+
const s = t.querySelector("tr.nodata"), n = document.createDocumentFragment(), r = e(this, M);
|
|
302
302
|
for (let o = 0; o < r; o++)
|
|
303
303
|
e(this, _).forEach((h) => {
|
|
304
304
|
n.appendChild(h.cloneNode(!0));
|
|
305
305
|
});
|
|
306
306
|
s ? s.before(n) : t.appendChild(n), console.log(`[RowManager] Rendered ${r} sets into DOM.`);
|
|
307
307
|
}, "renderRows"));
|
|
308
|
-
m(this, "destroy", /* @__PURE__ */
|
|
309
|
-
e(this, $) && (e(this, $).disconnect(),
|
|
308
|
+
m(this, "destroy", /* @__PURE__ */ a(() => {
|
|
309
|
+
e(this, $) && (e(this, $).disconnect(), p(this, $, null));
|
|
310
310
|
}, "destroy"));
|
|
311
|
-
|
|
311
|
+
p(this, V, i), e(this, se).call(this);
|
|
312
312
|
}
|
|
313
313
|
get templateLength() {
|
|
314
314
|
return e(this, _).length || 1;
|
|
315
315
|
}
|
|
316
316
|
};
|
|
317
|
-
V = new WeakMap(), _ = new WeakMap(), E = new WeakMap(), $ = new WeakMap(),
|
|
318
|
-
let
|
|
319
|
-
var
|
|
320
|
-
const
|
|
317
|
+
V = new WeakMap(), _ = new WeakMap(), E = new WeakMap(), $ = new WeakMap(), I = new WeakMap(), M = new WeakMap(), se = new WeakMap(), ne = new WeakMap(), a(Te, "RowManager");
|
|
318
|
+
let pe = Te;
|
|
319
|
+
var C, X, re;
|
|
320
|
+
const j = class j extends HTMLElement {
|
|
321
321
|
constructor() {
|
|
322
322
|
super();
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
m(this, "init", /* @__PURE__ */
|
|
323
|
+
d(this, C, null);
|
|
324
|
+
d(this, X);
|
|
325
|
+
m(this, "init", /* @__PURE__ */ a((t) => {
|
|
326
326
|
if (!t) return;
|
|
327
|
-
const s = /* @__PURE__ */
|
|
328
|
-
const
|
|
329
|
-
if (
|
|
330
|
-
const
|
|
331
|
-
for (let q = 0; q <
|
|
332
|
-
const
|
|
333
|
-
|
|
327
|
+
const s = /* @__PURE__ */ a((l) => {
|
|
328
|
+
const g = /* @__PURE__ */ a((b) => {
|
|
329
|
+
if (b.querySelector("colgroup")) return;
|
|
330
|
+
const u = b.querySelector("tbody tr") || b.querySelector("tr"), S = u ? u.querySelectorAll("th, td").length : 1, x = document.createElement("colgroup"), H = Math.max(Math.floor((b.clientWidth || 600) / S), 100);
|
|
331
|
+
for (let q = 0; q < S; q++) {
|
|
332
|
+
const U = document.createElement("col");
|
|
333
|
+
U.setAttribute("width", H), x.appendChild(U);
|
|
334
334
|
}
|
|
335
|
-
|
|
336
|
-
}, "ensureColgroup"),
|
|
337
|
-
if (
|
|
338
|
-
const
|
|
339
|
-
|
|
335
|
+
b.prepend(x);
|
|
336
|
+
}, "ensureColgroup"), c = /* @__PURE__ */ a((b) => {
|
|
337
|
+
if (b.querySelector("thead")) return;
|
|
338
|
+
const u = document.createElement("thead"), S = b.querySelector("colgroup");
|
|
339
|
+
S ? S.after(u) : b.prepend(u);
|
|
340
340
|
}, "ensureThead");
|
|
341
|
-
return
|
|
341
|
+
return g(l), c(l), l.classList.add("nine-table-element"), l;
|
|
342
342
|
}, "initializeTable"), n = t.cloneNode(!0);
|
|
343
|
-
|
|
344
|
-
const r = this.querySelector(".ng-container-left"), o = this.querySelector(".ng-container-body"), h = this.querySelector(".ng-container-right"),
|
|
345
|
-
const
|
|
346
|
-
return
|
|
343
|
+
p(this, C, s(n)), e(this, C).style.display = "table", e(this, X).initTemplate(e(this, C));
|
|
344
|
+
const r = this.querySelector(".ng-container-left"), o = this.querySelector(".ng-container-body"), h = this.querySelector(".ng-container-right"), f = /* @__PURE__ */ a((l, g, c = !1) => {
|
|
345
|
+
const b = l.cloneNode(!0), u = Array.from(b.querySelectorAll("colgroup col")), S = [];
|
|
346
|
+
return u.forEach((x, H) => {
|
|
347
347
|
const q = x.getAttribute("fixed");
|
|
348
|
-
(
|
|
349
|
-
}),
|
|
350
|
-
|
|
348
|
+
(c ? q !== "left" && q !== "right" : q === g) || S.push(H);
|
|
349
|
+
}), S.reverse().forEach((x) => {
|
|
350
|
+
u[x] && u[x].remove(), b.querySelectorAll("tr").forEach((H) => {
|
|
351
351
|
const q = H.querySelectorAll("th, td");
|
|
352
352
|
q[x] && q[x].remove();
|
|
353
353
|
});
|
|
354
|
-
}),
|
|
354
|
+
}), b;
|
|
355
355
|
}, "filterTableByFixed");
|
|
356
356
|
if (o) {
|
|
357
|
-
const
|
|
358
|
-
o.innerHTML = "", o.appendChild(
|
|
357
|
+
const l = f(e(this, C), null, !0);
|
|
358
|
+
o.innerHTML = "", o.appendChild(l), e(this, X).measureAndCacheHeight(o);
|
|
359
359
|
}
|
|
360
360
|
if (r) {
|
|
361
|
-
const
|
|
362
|
-
let
|
|
363
|
-
|
|
364
|
-
const
|
|
365
|
-
isNaN(
|
|
366
|
-
}), r.innerHTML = "", r.appendChild(
|
|
367
|
-
const
|
|
368
|
-
r.style.flex = `0 0 ${
|
|
361
|
+
const l = f(e(this, C), "left", !1);
|
|
362
|
+
let g = 0;
|
|
363
|
+
l.querySelectorAll("col").forEach((b) => {
|
|
364
|
+
const u = parseInt(b.getAttribute("width"), 10);
|
|
365
|
+
isNaN(u) || (g += u);
|
|
366
|
+
}), r.innerHTML = "", r.appendChild(l);
|
|
367
|
+
const c = g > 0 ? g : 0;
|
|
368
|
+
r.style.flex = `0 0 ${c}px`, r.style.width = `${c}px`;
|
|
369
369
|
}
|
|
370
370
|
if (h) {
|
|
371
|
-
const
|
|
372
|
-
let
|
|
373
|
-
|
|
374
|
-
const
|
|
375
|
-
isNaN(
|
|
376
|
-
}), h.innerHTML = "", h.appendChild(
|
|
377
|
-
const
|
|
378
|
-
h.style.flex = `0 0 ${
|
|
371
|
+
const l = f(e(this, C), "right", !1);
|
|
372
|
+
let g = 0;
|
|
373
|
+
l.querySelectorAll("col").forEach((b) => {
|
|
374
|
+
const u = parseInt(b.getAttribute("width"), 10);
|
|
375
|
+
isNaN(u) || (g += u);
|
|
376
|
+
}), h.innerHTML = "", h.appendChild(l);
|
|
377
|
+
const c = g > 0 ? g : 0;
|
|
378
|
+
h.style.flex = `0 0 ${c}px`, h.style.width = `${c}px`;
|
|
379
379
|
}
|
|
380
380
|
if (o) {
|
|
381
|
-
const
|
|
382
|
-
o.style.overflowY =
|
|
383
|
-
const
|
|
384
|
-
|
|
381
|
+
const l = this.getRowCount();
|
|
382
|
+
o.style.overflowY = l > 10 ? "auto" : "hidden", o.addEventListener("scroll", () => {
|
|
383
|
+
const g = this.querySelector("nine-table-hscrollbar");
|
|
384
|
+
g && typeof g.refresh == "function" && g.refresh();
|
|
385
385
|
});
|
|
386
386
|
}
|
|
387
387
|
setTimeout(() => {
|
|
388
|
-
const
|
|
389
|
-
|
|
390
|
-
}, 0),
|
|
388
|
+
const l = this.querySelector("nine-table-hscrollbar");
|
|
389
|
+
l && typeof l.refresh == "function" && l.refresh();
|
|
390
|
+
}, 0), G.log(`NineTableSheet 3-split initialized with rows: ${this.getRowCount()}`);
|
|
391
391
|
}, "init"));
|
|
392
|
-
m(this, "getRowHeight", /* @__PURE__ */
|
|
393
|
-
m(this, "getRowCount", /* @__PURE__ */
|
|
394
|
-
m(this, "scrollToX", /* @__PURE__ */
|
|
392
|
+
m(this, "getRowHeight", /* @__PURE__ */ a(() => e(this, X).getRowHeight(), "getRowHeight"));
|
|
393
|
+
m(this, "getRowCount", /* @__PURE__ */ a(() => e(this, C) ? e(this, C).querySelectorAll("tbody tr").length : 0, "getRowCount"));
|
|
394
|
+
m(this, "scrollToX", /* @__PURE__ */ a((t) => {
|
|
395
395
|
const s = this.querySelector(".ng-container-body");
|
|
396
396
|
s && (s.scrollLeft = t);
|
|
397
397
|
}, "scrollToX"));
|
|
398
|
-
m(this, "scrollToY", /* @__PURE__ */
|
|
398
|
+
m(this, "scrollToY", /* @__PURE__ */ a((t) => {
|
|
399
399
|
const s = this.querySelector(".ng-container-body");
|
|
400
400
|
s && (s.scrollTop = t);
|
|
401
401
|
}, "scrollToY"));
|
|
402
|
-
|
|
403
|
-
const t =
|
|
402
|
+
d(this, re, /* @__PURE__ */ a(() => {
|
|
403
|
+
const t = j.SCROLLBAR_SIZE;
|
|
404
404
|
this.innerHTML = `
|
|
405
405
|
<style>
|
|
406
406
|
nine-table-sheet {
|
|
@@ -515,23 +515,23 @@ const G = class G extends HTMLElement {
|
|
|
515
515
|
</div>
|
|
516
516
|
`;
|
|
517
517
|
}, "#render"));
|
|
518
|
-
|
|
518
|
+
p(this, X, new pe(this));
|
|
519
519
|
}
|
|
520
520
|
connectedCallback() {
|
|
521
|
-
e(this,
|
|
521
|
+
e(this, re).call(this);
|
|
522
522
|
}
|
|
523
523
|
disconnectedCallback() {
|
|
524
|
-
this.innerHTML = "",
|
|
524
|
+
this.innerHTML = "", G.log("NineTableSheet destroyed.");
|
|
525
525
|
}
|
|
526
526
|
};
|
|
527
|
-
|
|
528
|
-
let
|
|
529
|
-
customElements.get("nine-table-sheet") || customElements.define("nine-table-sheet",
|
|
530
|
-
var
|
|
531
|
-
const
|
|
527
|
+
C = new WeakMap(), X = new WeakMap(), re = new WeakMap(), a(j, "NineTableSheet"), m(j, "SCROLLBAR_SIZE", 16);
|
|
528
|
+
let ee = j;
|
|
529
|
+
customElements.get("nine-table-sheet") || customElements.define("nine-table-sheet", ee);
|
|
530
|
+
var oe;
|
|
531
|
+
const Ae = class Ae extends HTMLElement {
|
|
532
532
|
constructor() {
|
|
533
533
|
super();
|
|
534
|
-
|
|
534
|
+
d(this, oe, /* @__PURE__ */ a(() => {
|
|
535
535
|
const t = this.querySelector(".nine-tab-bar");
|
|
536
536
|
t && (t.addEventListener("click", (s) => {
|
|
537
537
|
const n = s.target.closest(".nine-tab-item");
|
|
@@ -540,92 +540,83 @@ const Ce = class Ce extends HTMLElement {
|
|
|
540
540
|
this.switchSheet(o, r);
|
|
541
541
|
}), this.switchSheet(0, !1));
|
|
542
542
|
}, "#init"));
|
|
543
|
-
m(this, "switchSheet", /* @__PURE__ */
|
|
544
|
-
const n = /* @__PURE__ */
|
|
545
|
-
const
|
|
546
|
-
Array.from(
|
|
547
|
-
const
|
|
548
|
-
|
|
549
|
-
const H = parseInt(x.getAttribute("data-index"), 10), q =
|
|
550
|
-
q &&
|
|
543
|
+
m(this, "switchSheet", /* @__PURE__ */ a((t, s = !1) => {
|
|
544
|
+
const n = /* @__PURE__ */ a((c) => {
|
|
545
|
+
const b = Array.from(c.querySelectorAll("nine-table-sheet"));
|
|
546
|
+
Array.from(c.querySelectorAll("nine-splitter")).forEach((x) => x.style.setProperty("display", "none"));
|
|
547
|
+
const S = b.filter((x) => x.classList.contains("active"));
|
|
548
|
+
S.length < 2 || S.forEach((x) => {
|
|
549
|
+
const H = parseInt(x.getAttribute("data-index"), 10), q = c.querySelector(`nine-splitter[data-split-index="${H}"]`), U = b[H + 1];
|
|
550
|
+
q && U && U.classList.contains("active") && q.style.setProperty("display", "block");
|
|
551
551
|
});
|
|
552
|
-
}, "updateSplitters"), r = this.querySelector(".nine-tab-bar"), o = this.querySelector("nine-table-sheets-body"), h = r.querySelectorAll(".nine-tab-item"),
|
|
552
|
+
}, "updateSplitters"), r = this.querySelector(".nine-tab-bar"), o = this.querySelector("nine-table-sheets-body"), h = r.querySelectorAll(".nine-tab-item"), f = o.querySelectorAll("nine-table-sheet");
|
|
553
553
|
if (!h[t]) return;
|
|
554
554
|
if (!s)
|
|
555
|
-
trace.log("================================= 1"), h.forEach((
|
|
556
|
-
|
|
557
|
-
}),
|
|
558
|
-
const
|
|
559
|
-
|
|
555
|
+
trace.log("================================= 1"), h.forEach((c, b) => {
|
|
556
|
+
c.classList.toggle("active", b === t);
|
|
557
|
+
}), f.forEach((c, b) => {
|
|
558
|
+
const u = b === t;
|
|
559
|
+
c.classList.toggle("active", u), u ? c.style.flex = "1 1 100%" : c.style.flex = "";
|
|
560
560
|
});
|
|
561
561
|
else {
|
|
562
562
|
trace.log("================================= 2");
|
|
563
|
-
const
|
|
564
|
-
if (trace.log(
|
|
563
|
+
const c = h[t], b = r.querySelectorAll(".nine-tab-item.active");
|
|
564
|
+
if (trace.log(c, b.length), c.classList.contains("active") && b.length <= 1)
|
|
565
565
|
return;
|
|
566
|
-
|
|
567
|
-
const
|
|
568
|
-
|
|
566
|
+
c.classList.toggle("active");
|
|
567
|
+
const u = o.querySelector(`nine-table-sheet[data-index="${t}"]`);
|
|
568
|
+
u && (u.classList.toggle("active"), u.classList.contains("active") || (u.style.flex = ""));
|
|
569
569
|
}
|
|
570
|
-
const
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
}) :
|
|
574
|
-
|
|
570
|
+
const l = Array.from(o.querySelectorAll("nine-table-sheet.active"));
|
|
571
|
+
l.length > 1 ? l.forEach((c) => {
|
|
572
|
+
c.style.flex = "1 1 0%";
|
|
573
|
+
}) : l.forEach((c) => {
|
|
574
|
+
c.style.flex = "1 1 100%";
|
|
575
575
|
}), n(o);
|
|
576
|
-
const
|
|
577
|
-
if (
|
|
578
|
-
const
|
|
579
|
-
|
|
576
|
+
const g = o.querySelector("nine-table-sheet.active");
|
|
577
|
+
if (g && typeof g.getRowCount == "function") {
|
|
578
|
+
const c = this.querySelector("#row-count");
|
|
579
|
+
c && (c.textContent = g.getRowCount().toLocaleString());
|
|
580
580
|
}
|
|
581
581
|
}, "switchSheet"));
|
|
582
582
|
}
|
|
583
583
|
connectedCallback() {
|
|
584
|
-
e(this,
|
|
584
|
+
e(this, oe).call(this);
|
|
585
585
|
}
|
|
586
586
|
};
|
|
587
|
-
|
|
588
|
-
let
|
|
589
|
-
customElements.get("nine-table-sheets") || customElements.define("nine-table-sheets",
|
|
590
|
-
var
|
|
591
|
-
const
|
|
587
|
+
oe = new WeakMap(), a(Ae, "NineTableSheets");
|
|
588
|
+
let ye = Ae;
|
|
589
|
+
customElements.get("nine-table-sheets") || customElements.define("nine-table-sheets", ye);
|
|
590
|
+
var R, le, J, ae;
|
|
591
|
+
const qe = class qe {
|
|
592
592
|
constructor(i) {
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
if (t.length === 0) return;
|
|
607
|
-
const s = parseInt(i.getAttribute("max-display-row"), 10) || 10, n = Math.max(...t.map((f) => f.getRowHeight())), r = (a = e(this, S).shadowRoot.querySelector("nine-table-header")) == null ? void 0 : a.getBoundingClientRect().height, o = (g = e(this, S).shadowRoot.querySelector("nine-table-sheets-footer")) == null ? void 0 : g.getBoundingClientRect().height, h = te.SCROLLBAR_SIZE, p = s * n + r + o + h;
|
|
608
|
-
i.style.height = `${p}px`;
|
|
609
|
-
const c = Math.max(...t.map((f) => f.getRowCount())), d = e(this, S).shadowRoot.querySelector("nine-table-sheets-body");
|
|
610
|
-
if (!d)
|
|
611
|
-
throw new Error("[LayoutManager] sheetsBody element is missing from the DOM.");
|
|
612
|
-
U.log(e(this, S).data.getRowCount()), U.log(e(this, S).data.length), d.style.overflowY = c > s ? "auto" : "hidden";
|
|
593
|
+
d(this, R);
|
|
594
|
+
d(this, le, /* @__PURE__ */ a(() => {
|
|
595
|
+
e(this, ae).call(this), new ResizeObserver((i) => {
|
|
596
|
+
for (let t of i)
|
|
597
|
+
e(this, R).getAttribute("auto-height") === "true" && e(this, J).call(this);
|
|
598
|
+
}).observe(e(this, R));
|
|
599
|
+
}, "#init"));
|
|
600
|
+
d(this, J, /* @__PURE__ */ a(() => {
|
|
601
|
+
var f, l;
|
|
602
|
+
const i = Array.from(e(this, R).shadowRoot.querySelectorAll("nine-table-sheet.active"));
|
|
603
|
+
if (i.length === 0) return;
|
|
604
|
+
const t = parseInt(e(this, R).getAttribute("max-display-row"), 10) || 10, s = Math.max(...i.map((g) => g.getRowHeight())), n = (f = e(this, R).shadowRoot.querySelector("nine-table-header")) == null ? void 0 : f.getBoundingClientRect().height, r = (l = e(this, R).shadowRoot.querySelector("nine-table-sheets-footer")) == null ? void 0 : l.getBoundingClientRect().height, o = ee.SCROLLBAR_SIZE, h = t * s + n + r + o;
|
|
605
|
+
e(this, R).style.height = `${h}px`;
|
|
613
606
|
}, "#applyAutoHeight"));
|
|
614
|
-
|
|
615
|
-
const
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
}).join(""), h = s.map((c, d) => `<div class="nine-tab-item ${d === 0 ? "active" : ""}" data-index="${d}">Sheet ${d + 1}</div>`).join("");
|
|
621
|
-
e(this, S).shadowRoot.innerHTML = `
|
|
607
|
+
d(this, ae, /* @__PURE__ */ a(() => {
|
|
608
|
+
const t = Array.from(e(this, R).children).filter((f) => f.tagName === "TABLE"), s = e(this, R).getAttribute("auto-height") === "true", n = t.length, r = t.map((f, l) => {
|
|
609
|
+
const c = `<nine-table-sheet class="${l === 0 ? "active" : ""}" data-index="${l}"></nine-table-sheet>`, b = l < n - 1 ? `<nine-splitter class="h" data-split-index="${l}"></nine-splitter>` : "";
|
|
610
|
+
return c + b;
|
|
611
|
+
}).join(""), o = t.map((f, l) => `<div class="nine-tab-item ${l === 0 ? "active" : ""}" data-index="${l}">Sheet ${l + 1}</div>`).join("");
|
|
612
|
+
e(this, R).shadowRoot.innerHTML = `
|
|
622
613
|
<style>
|
|
623
614
|
:host {
|
|
624
615
|
display: flex;
|
|
625
616
|
flex-direction: column;
|
|
626
617
|
position: relative;
|
|
627
618
|
overflow: hidden;
|
|
628
|
-
height: ${
|
|
619
|
+
height: ${s ? "auto" : "100%"};
|
|
629
620
|
background: #fff;
|
|
630
621
|
}
|
|
631
622
|
|
|
@@ -707,9 +698,9 @@ const ke = class ke {
|
|
|
707
698
|
<nine-table-body>
|
|
708
699
|
<nine-table-summary></nine-table-summary>
|
|
709
700
|
<nine-table-sheets>
|
|
710
|
-
<nine-table-sheets-body>${
|
|
701
|
+
<nine-table-sheets-body>${r}</nine-table-sheets-body>
|
|
711
702
|
<nine-table-sheets-footer>
|
|
712
|
-
<div class="nine-tab-bar">${
|
|
703
|
+
<div class="nine-tab-bar">${o}</div>
|
|
713
704
|
<div class="sheets-counter">Total : <span id="row-count">0</span></div>
|
|
714
705
|
</nine-table-sheets-footer>
|
|
715
706
|
</nine-table-sheets>
|
|
@@ -717,80 +708,80 @@ const ke = class ke {
|
|
|
717
708
|
</nine-table-body>
|
|
718
709
|
<nine-table-footer></nine-table-footer>
|
|
719
710
|
`;
|
|
720
|
-
const
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
711
|
+
const h = e(this, R).shadowRoot.querySelectorAll("nine-table-sheet");
|
|
712
|
+
h == null || h.forEach((f, l) => {
|
|
713
|
+
t[l] && setTimeout(() => {
|
|
714
|
+
f.init(t[l]), s && e(this, J).call(this);
|
|
724
715
|
});
|
|
725
716
|
});
|
|
726
717
|
}, "#render"));
|
|
727
|
-
|
|
718
|
+
p(this, R, i), e(this, le).call(this);
|
|
728
719
|
}
|
|
729
720
|
};
|
|
730
|
-
|
|
731
|
-
let
|
|
732
|
-
var
|
|
733
|
-
const
|
|
721
|
+
R = new WeakMap(), le = new WeakMap(), J = new WeakMap(), ae = new WeakMap(), a(qe, "LayoutManager");
|
|
722
|
+
let we = qe;
|
|
723
|
+
var W, Y;
|
|
724
|
+
const ke = class ke {
|
|
734
725
|
constructor(i) {
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
m(this, "count", /* @__PURE__ */
|
|
738
|
-
|
|
726
|
+
d(this, W);
|
|
727
|
+
d(this, Y, -1);
|
|
728
|
+
m(this, "count", /* @__PURE__ */ a(() => e(this, W).rawRecords.length, "count"));
|
|
729
|
+
p(this, W, i);
|
|
739
730
|
}
|
|
740
731
|
get at() {
|
|
741
732
|
return e(this, Y);
|
|
742
733
|
}
|
|
743
734
|
set at(i) {
|
|
744
735
|
var s, n;
|
|
745
|
-
|
|
746
|
-
const t = ((n = (s = e(this,
|
|
736
|
+
p(this, Y, parseInt(i, 10));
|
|
737
|
+
const t = ((n = (s = e(this, W).owner).querySelector) == null ? void 0 : n.call(s, ".ng-container-body")) || e(this, W).owner.body;
|
|
747
738
|
t && !t.querySelector(`tbody.bindable tr[data-row="${e(this, Y)}"]`) && setTimeout(() => {
|
|
748
739
|
var r, o;
|
|
749
|
-
(o = (r = e(this,
|
|
740
|
+
(o = (r = e(this, W).owner).scrollTo_V1) == null || o.call(r, e(this, Y));
|
|
750
741
|
});
|
|
751
742
|
}
|
|
752
743
|
};
|
|
753
|
-
|
|
754
|
-
let
|
|
755
|
-
var T, v, A,
|
|
756
|
-
const
|
|
744
|
+
W = new WeakMap(), Y = new WeakMap(), a(ke, "ngRow");
|
|
745
|
+
let me = ke;
|
|
746
|
+
var T, v, A, K, ce, z, he, Q, de, fe, Z;
|
|
747
|
+
const k = class k {
|
|
757
748
|
constructor(i, t) {
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
749
|
+
d(this, T);
|
|
750
|
+
d(this, v);
|
|
751
|
+
d(this, A, []);
|
|
752
|
+
d(this, K, []);
|
|
753
|
+
d(this, ce, 0);
|
|
754
|
+
d(this, z, []);
|
|
755
|
+
d(this, he, /* @__PURE__ */ a(() => {
|
|
756
|
+
p(this, z, []);
|
|
766
757
|
const i = e(this, T).template || [];
|
|
767
758
|
Array.from(i).forEach((t) => {
|
|
768
759
|
var s;
|
|
769
|
-
e(this,
|
|
760
|
+
e(this, z).push(((s = t.getBoundingClientRect) == null ? void 0 : s.call(t).height) || 24);
|
|
770
761
|
}), (e(this, v).rawRecords || []).forEach((t) => {
|
|
771
|
-
t.__ng || (t.__ng = e(this,
|
|
762
|
+
t.__ng || (t.__ng = e(this, Q).call(this)), t.__ng.height = e(this, z).slice();
|
|
772
763
|
});
|
|
773
764
|
}, "#initialize"));
|
|
774
|
-
m(this, "set", /* @__PURE__ */
|
|
765
|
+
m(this, "set", /* @__PURE__ */ a((i) => {
|
|
775
766
|
this.clear(), this.add(i, !1);
|
|
776
767
|
}, "set"));
|
|
777
|
-
|
|
778
|
-
rowState:
|
|
768
|
+
d(this, Q, /* @__PURE__ */ a(() => ({
|
|
769
|
+
rowState: k.ROW_STATE.EMPTY,
|
|
779
770
|
deleted: !1,
|
|
780
771
|
filtered: !1,
|
|
781
|
-
height: e(this,
|
|
772
|
+
height: e(this, z).slice(),
|
|
782
773
|
o: {},
|
|
783
774
|
c: {},
|
|
784
|
-
_: [0, 0, 0, 0,
|
|
775
|
+
_: [0, 0, 0, 0, k.ROW_STATE.EMPTY, !1, !1, !0, !1, !0, !0, !1, e(this, z).slice(), -1, {}, {}]
|
|
785
776
|
}), "#getDefaultMeta"));
|
|
786
|
-
m(this, "reset", /* @__PURE__ */
|
|
787
|
-
|
|
777
|
+
m(this, "reset", /* @__PURE__ */ a(() => {
|
|
778
|
+
p(this, A, []), p(this, K, []);
|
|
788
779
|
}, "reset"));
|
|
789
|
-
m(this, "clear", /* @__PURE__ */
|
|
780
|
+
m(this, "clear", /* @__PURE__ */ a(() => {
|
|
790
781
|
var i;
|
|
791
|
-
e(this, v).rawRecords = [],
|
|
782
|
+
e(this, v).rawRecords = [], p(this, A, []), p(this, K, []), (i = e(this, v).viewRecords) != null && i.reset && e(this, v).viewRecords.reset();
|
|
792
783
|
}, "clear"));
|
|
793
|
-
|
|
784
|
+
d(this, de, /* @__PURE__ */ a((i) => {
|
|
794
785
|
var n;
|
|
795
786
|
Array.isArray(i) || (i = [i]);
|
|
796
787
|
const t = typeof ((n = e(this, T).fields) == null ? void 0 : n.get) == "function" ? e(this, T).fields.get() : Object.keys(i[0] || {}), s = [];
|
|
@@ -801,51 +792,51 @@ const C = class C {
|
|
|
801
792
|
}), s.push(o);
|
|
802
793
|
}), s;
|
|
803
794
|
}, "#json2Array"));
|
|
804
|
-
|
|
805
|
-
t.__ng = e(this,
|
|
795
|
+
d(this, fe, /* @__PURE__ */ a((i) => (Array.isArray(i) || (i = [i]), i.forEach((t) => {
|
|
796
|
+
t.__ng = e(this, Q).call(this), t.__ng.rowid = this.nextId, t.__ng.rowState = k.ROW_STATE.INSERT, t.__ng._[0] = t.__ng.rowid;
|
|
806
797
|
}), i), "#defaultInsert"));
|
|
807
|
-
m(this, "add", /* @__PURE__ */
|
|
798
|
+
m(this, "add", /* @__PURE__ */ a((i, t = !0) => {
|
|
808
799
|
var r;
|
|
809
800
|
i === void 0 && (i = {});
|
|
810
|
-
const s = e(this,
|
|
811
|
-
e(this, v).rawRecords = e(this, v).rawRecords.concat(e(this,
|
|
801
|
+
const s = e(this, de).call(this, i);
|
|
802
|
+
e(this, v).rawRecords = e(this, v).rawRecords.concat(e(this, fe).call(this, s)), this.resetRecords();
|
|
812
803
|
const n = this.count() - 1;
|
|
813
804
|
return t || s.forEach((o, h) => {
|
|
814
|
-
const
|
|
815
|
-
|
|
805
|
+
const f = e(this, v).rawRecords[n - h];
|
|
806
|
+
f && (f.__ng.rowState = k.ROW_STATE.EMPTY);
|
|
816
807
|
}), (r = e(this, v).viewRecords) != null && r.reset && e(this, v).viewRecords.reset(), n;
|
|
817
808
|
}, "add"));
|
|
818
|
-
m(this, "delete", /* @__PURE__ */
|
|
809
|
+
m(this, "delete", /* @__PURE__ */ a((i) => {
|
|
819
810
|
var s;
|
|
820
811
|
let t = [];
|
|
821
812
|
Array.isArray(i) ? t = i : typeof i > "u" ? t = [e(this, v).owner.row.at] : t = [parseInt(i, 10)], t.sort((n, r) => r - n).forEach((n) => {
|
|
822
813
|
if (e(this, A)[n]) {
|
|
823
814
|
const r = e(this, A)[n].__ng.rowid;
|
|
824
|
-
e(this, A)[n].__ng.rowState ===
|
|
825
|
-
o.__ng.rowid === r && (o.__ng.deleted = !0, o.__ng.rowState =
|
|
815
|
+
e(this, A)[n].__ng.rowState === k.ROW_STATE.INSERT ? e(this, v).rawRecords = e(this, v).rawRecords.filter((o) => o.__ng.rowid !== r) : e(this, v).rawRecords.forEach((o) => {
|
|
816
|
+
o.__ng.rowid === r && (o.__ng.deleted = !0, o.__ng.rowState = k.ROW_STATE.DELETE);
|
|
826
817
|
});
|
|
827
818
|
}
|
|
828
819
|
}), this.resetRecords(), (s = e(this, v).viewRecords) != null && s.reset && e(this, v).viewRecords.reset();
|
|
829
820
|
}, "delete"));
|
|
830
|
-
m(this, "setValue", /* @__PURE__ */
|
|
831
|
-
var
|
|
821
|
+
m(this, "setValue", /* @__PURE__ */ a((i, t, s) => {
|
|
822
|
+
var f;
|
|
832
823
|
i = parseInt(i, 10);
|
|
833
|
-
const r = (typeof ((
|
|
824
|
+
const r = (typeof ((f = e(this, T).fields) == null ? void 0 : f.get) == "function" ? e(this, T).fields.get() : []).indexOf(t);
|
|
834
825
|
if (r < 0) return;
|
|
835
826
|
const o = this.getValidData()[i];
|
|
836
827
|
if (!o) return;
|
|
837
828
|
const h = o.v[r];
|
|
838
|
-
h !== s && o.__ng.rowState !==
|
|
829
|
+
h !== s && o.__ng.rowState !== k.ROW_STATE.INSERT && (o.__ng.o.hasOwnProperty(t) || (o.__ng.o[t] = h), o.__ng.rowState = k.ROW_STATE.UPDATE), o.v[r] = s, e(this, v).owner.refreshData && e(this, v).owner.refreshData(i);
|
|
839
830
|
}, "setValue"));
|
|
840
|
-
m(this, "resetRecords", /* @__PURE__ */
|
|
841
|
-
|
|
831
|
+
m(this, "resetRecords", /* @__PURE__ */ a(() => {
|
|
832
|
+
p(this, K, e(this, v).rawRecords.filter((i) => !i.__ng.deleted)), p(this, A, e(this, v).rawRecords.filter((i) => !i.__ng.deleted && !i.__ng.filtered)), e(this, v).rawRecords.forEach((i, t) => {
|
|
842
833
|
i.__ng.rowidx = t;
|
|
843
834
|
}), e(this, A).forEach((i, t) => {
|
|
844
835
|
i.__ng.i = t;
|
|
845
836
|
});
|
|
846
837
|
}, "resetRecords"));
|
|
847
|
-
m(this, "getValidData", /* @__PURE__ */
|
|
848
|
-
|
|
838
|
+
m(this, "getValidData", /* @__PURE__ */ a(() => (e(this, A).length === 0 && e(this, v).rawRecords.length > 0 && this.resetRecords(), e(this, A)), "getValidData"));
|
|
839
|
+
d(this, Z, /* @__PURE__ */ a((i) => {
|
|
849
840
|
var s;
|
|
850
841
|
if (!i) return i;
|
|
851
842
|
const t = typeof ((s = e(this, T).fields) == null ? void 0 : s.get) == "function" ? e(this, T).fields.get() : [];
|
|
@@ -856,30 +847,30 @@ const C = class C {
|
|
|
856
847
|
}), r.__ng = n.__ng, r;
|
|
857
848
|
}) : i;
|
|
858
849
|
}, "#conv2"));
|
|
859
|
-
m(this, "count", /* @__PURE__ */
|
|
860
|
-
m(this, "get", /* @__PURE__ */
|
|
850
|
+
m(this, "count", /* @__PURE__ */ a(() => this.getValidData().length, "count"));
|
|
851
|
+
m(this, "get", /* @__PURE__ */ a((i, t) => {
|
|
861
852
|
var r;
|
|
862
853
|
const s = this.getValidData();
|
|
863
854
|
if (!s || s.length <= 0) return;
|
|
864
|
-
if (i == null) return e(this,
|
|
855
|
+
if (i == null) return e(this, Z).call(this, s);
|
|
865
856
|
if (i < 0 || i >= s.length) return null;
|
|
866
857
|
const n = typeof ((r = e(this, T).fields) == null ? void 0 : r.get) == "function" ? e(this, T).fields.get() : [];
|
|
867
858
|
if (t != null) {
|
|
868
859
|
const o = n.indexOf(t);
|
|
869
860
|
return o >= 0 ? s[i].v[o] : null;
|
|
870
861
|
}
|
|
871
|
-
return e(this,
|
|
862
|
+
return e(this, Z).call(this, s[i]);
|
|
872
863
|
}, "get"));
|
|
873
|
-
|
|
864
|
+
p(this, T, i), p(this, v, t), e(this, he).call(this);
|
|
874
865
|
}
|
|
875
866
|
get source() {
|
|
876
|
-
return e(this,
|
|
867
|
+
return e(this, Z).call(this, e(this, v).rawRecords);
|
|
877
868
|
}
|
|
878
869
|
set source(i) {
|
|
879
870
|
this.clear(), this.add(i, !1);
|
|
880
871
|
}
|
|
881
872
|
get nextId() {
|
|
882
|
-
return ++
|
|
873
|
+
return ++He(this, ce)._;
|
|
883
874
|
}
|
|
884
875
|
get length() {
|
|
885
876
|
return e(this, A).length;
|
|
@@ -888,18 +879,18 @@ const C = class C {
|
|
|
888
879
|
return this.length;
|
|
889
880
|
}
|
|
890
881
|
};
|
|
891
|
-
T = new WeakMap(), v = new WeakMap(), A = new WeakMap(),
|
|
892
|
-
m(
|
|
882
|
+
T = new WeakMap(), v = new WeakMap(), A = new WeakMap(), K = new WeakMap(), ce = new WeakMap(), z = new WeakMap(), he = new WeakMap(), Q = new WeakMap(), de = new WeakMap(), fe = new WeakMap(), Z = new WeakMap(), a(k, "ngData"), // π― ν μν μ μ μμλ₯Ό ν΄λμ€ λ΄λΆλ‘ λ΄μ¬ν
|
|
883
|
+
m(k, "ROW_STATE", {
|
|
893
884
|
EMPTY: "EMPTY",
|
|
894
885
|
NORMAL: "NORMAL",
|
|
895
886
|
INSERT: "INSERT",
|
|
896
887
|
UPDATE: "UPDATE",
|
|
897
888
|
DELETE: "DELETE"
|
|
898
889
|
});
|
|
899
|
-
let
|
|
900
|
-
const
|
|
890
|
+
let ve = k;
|
|
891
|
+
const Ce = class Ce {
|
|
901
892
|
constructor(i) {
|
|
902
|
-
this.owner = i, this.row = new
|
|
893
|
+
this.owner = i, this.row = new me(this), this.data = new ve(i, this), this.rawRecords = [], this.viewRecords = [], this.delRecords = [], this.pageCnt = 25, this.viewRecords.reset = () => {
|
|
903
894
|
var t;
|
|
904
895
|
(t = this.owner.view) != null && t.redraw && this.owner.view.redraw();
|
|
905
896
|
}, this.setDataSource = (t) => {
|
|
@@ -916,22 +907,22 @@ const _e = class _e {
|
|
|
916
907
|
}, this.setDataSource([]);
|
|
917
908
|
}
|
|
918
909
|
};
|
|
919
|
-
|
|
920
|
-
let
|
|
921
|
-
var F,
|
|
922
|
-
const
|
|
910
|
+
a(Ce, "ngDataManager");
|
|
911
|
+
let xe = Ce;
|
|
912
|
+
var F, ue;
|
|
913
|
+
const Le = class Le extends HTMLElement {
|
|
923
914
|
constructor() {
|
|
924
915
|
super();
|
|
925
916
|
//#created = false;
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
this.attachShadow({ mode: "open" }),
|
|
917
|
+
d(this, F);
|
|
918
|
+
d(this, ue);
|
|
919
|
+
this.attachShadow({ mode: "open" }), p(this, F, new xe(this));
|
|
929
920
|
}
|
|
930
921
|
connectedCallback() {
|
|
931
|
-
|
|
922
|
+
p(this, ue, new we(this)), G.log("NineTable connected."), this.dispatchEvent(new CustomEvent("load", { bubbles: !0, detail: { target: this } }));
|
|
932
923
|
}
|
|
933
924
|
disconnectedCallback() {
|
|
934
|
-
|
|
925
|
+
G.log("NineTable disconnected.");
|
|
935
926
|
}
|
|
936
927
|
// π― μΈλΆμμ grid.data.set(...) ννλ‘ μ κ·Όν μ μλλ‘ λ°μ΄ν° λ§€λμ μ€ν
|
|
937
928
|
get data() {
|
|
@@ -946,7 +937,7 @@ const Me = class Me extends HTMLElement {
|
|
|
946
937
|
return e(this, F);
|
|
947
938
|
}
|
|
948
939
|
};
|
|
949
|
-
F = new WeakMap(),
|
|
950
|
-
let
|
|
951
|
-
customElements.get("nine-table") || customElements.define("nine-table",
|
|
940
|
+
F = new WeakMap(), ue = new WeakMap(), a(Le, "NineTable");
|
|
941
|
+
let Se = Le;
|
|
942
|
+
customElements.get("nine-table") || customElements.define("nine-table", Se);
|
|
952
943
|
//# sourceMappingURL=nine-table.js.map
|