ninegrid2 6.202.0 → 6.204.0
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/bundle.cjs.js +26 -42
- package/dist/bundle.esm.js +26 -42
- package/dist/etc/ngFiltering.js +25 -39
- package/package.json +1 -1
- package/src/etc/ngFiltering.js +25 -39
package/dist/bundle.cjs.js
CHANGED
|
@@ -18302,11 +18302,11 @@ class ngFilterPanel extends HTMLElement
|
|
|
18302
18302
|
|
|
18303
18303
|
#onOk = (e) => {
|
|
18304
18304
|
|
|
18305
|
-
|
|
18305
|
+
const grd = this.shadowRoot.querySelector("nine-grid");
|
|
18306
18306
|
|
|
18307
18307
|
//ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
18308
|
-
ninegrid.j.querySelectorAll(this.#target.owner).addClass("loading");
|
|
18309
|
-
|
|
18308
|
+
//ninegrid.j.querySelectorAll(this.#target.owner).addClass("loading");
|
|
18309
|
+
this.classList.add("loading");
|
|
18310
18310
|
|
|
18311
18311
|
setTimeout(() => {
|
|
18312
18312
|
|
|
@@ -18357,47 +18357,26 @@ class ngFilterPanel extends HTMLElement
|
|
|
18357
18357
|
|
|
18358
18358
|
console.log(this.#target, this.#target.button);
|
|
18359
18359
|
|
|
18360
|
-
this.#target.button.
|
|
18360
|
+
this.#target.button.filterOptions = filterData;
|
|
18361
|
+
|
|
18362
|
+
//this.#target.button.filterData = [...new Set(checked.map(m => { return m.v[DATA_IDX] }))];
|
|
18361
18363
|
|
|
18362
18364
|
console.log(this.#target.button.filterData);
|
|
18363
18365
|
|
|
18364
|
-
var oParam = {};
|
|
18365
|
-
|
|
18366
18366
|
$("ng-filter-button", this.#target.owner.body).each((index,el) => {
|
|
18367
18367
|
|
|
18368
|
-
//console.log(el, el.filterData);
|
|
18369
|
-
|
|
18370
18368
|
if (!el.filterData) return true;
|
|
18371
|
-
|
|
18372
|
-
//console.log(el, el.filterData);
|
|
18373
18369
|
|
|
18374
18370
|
el.colnms.forEach(colnm => {
|
|
18375
|
-
|
|
18371
|
+
el.filterData;
|
|
18376
18372
|
});
|
|
18377
|
-
|
|
18378
|
-
/**
|
|
18379
|
-
el.filterData.forEach(o => {
|
|
18380
|
-
|
|
18381
|
-
oParam[o.colnm] = o.data;
|
|
18382
|
-
|
|
18383
|
-
//const idx = this.#target.owner.fields.indexOf(o.colnm);
|
|
18384
|
-
//this.#target.owner.data.getValidData().filter(m => { return o.data.nineBinarySearch(m.v[idx] || '') < 0; }).map(m => { m.__ng.filtered = true; });
|
|
18385
|
-
}); */
|
|
18386
18373
|
});
|
|
18387
18374
|
|
|
18388
|
-
console.log(oParam);
|
|
18389
|
-
|
|
18390
|
-
//this.#target.owner.data.setFilter(oParam);
|
|
18391
|
-
this.#target.owner.filtering.on(oParam);
|
|
18392
|
-
|
|
18393
|
-
|
|
18394
|
-
//this.#target.owner.data.getValidDataNF().filter(rowData => { return this.#target.button.filterData.findIndex(item => (item.DATA || '') == (rowData[item.COLNM] || '') ) < 0; }).map(item => { item.__ng.filtered = true; });
|
|
18395
|
-
//this.#target.owner.scrollTo_V1(0);
|
|
18396
|
-
|
|
18397
|
-
//this.#target.owner.paging.reset();
|
|
18398
|
-
|
|
18399
|
-
ninegrid.j.querySelectorAll(this.#target.owner).removeClass("loading");
|
|
18375
|
+
//console.log(oParam);
|
|
18400
18376
|
|
|
18377
|
+
//this.#target.owner.filtering.on(oParam);
|
|
18378
|
+
|
|
18379
|
+
this.classList.remove("loading");
|
|
18401
18380
|
});
|
|
18402
18381
|
|
|
18403
18382
|
$(this).hide();
|
|
@@ -18476,18 +18455,20 @@ class ngFilterPanel extends HTMLElement
|
|
|
18476
18455
|
|
|
18477
18456
|
const owner = this.shadow.closest("nine-grid");
|
|
18478
18457
|
|
|
18479
|
-
var cell = filterButton.closest("th,td");
|
|
18480
18458
|
|
|
18481
|
-
|
|
18482
|
-
|
|
18483
|
-
|
|
18484
|
-
|
|
18459
|
+
/** 위치 */
|
|
18460
|
+
const cell = filterButton.closest("th,td");
|
|
18461
|
+
|
|
18462
|
+
const filterButtonRect = filterButton.getBoundingClientRect();
|
|
18463
|
+
const ownerRect = owner.getBoundingClientRect();
|
|
18464
|
+
const cellRect = cell.getBoundingClientRect();
|
|
18465
|
+
const targetRect = this.getBoundingClientRect();
|
|
18485
18466
|
|
|
18486
|
-
|
|
18467
|
+
let l = filterButtonRect.left - ownerRect.left;
|
|
18487
18468
|
if (l < 0) l = 0;
|
|
18488
18469
|
if (l + targetRect.width > ownerRect.width) l = ownerRect.width - targetRect.width - 5;
|
|
18489
18470
|
|
|
18490
|
-
|
|
18471
|
+
const t = cellRect.top + cellRect.height - ownerRect.top;
|
|
18491
18472
|
|
|
18492
18473
|
this.style.left = `${l}px`; // ✅ 위치 설정
|
|
18493
18474
|
this.style.top = `${t}px`;
|
|
@@ -18624,11 +18605,14 @@ class ngFilterPanel extends HTMLElement
|
|
|
18624
18605
|
|
|
18625
18606
|
grd.data.set(ds);
|
|
18626
18607
|
|
|
18627
|
-
|
|
18628
|
-
|
|
18608
|
+
// ✅ 데이터 필터링 및 체크 상태 결정
|
|
18609
|
+
const checkbox = this.shadowRoot.querySelector("input[type=checkbox]");
|
|
18610
|
+
checkbox.checked = grd.data.getValidData().filter(item => item.LVL == 2 && item.CHK != "Y").length === 0; // ✅ 체크 상태 설정
|
|
18611
|
+
|
|
18629
18612
|
this.shadowRoot.querySelector("input").focus();
|
|
18630
18613
|
|
|
18631
|
-
|
|
18614
|
+
this.classList.remove("loading");
|
|
18615
|
+
//ninegrid.j.querySelectorAll(this).removeClass("loading");
|
|
18632
18616
|
});
|
|
18633
18617
|
};
|
|
18634
18618
|
}
|
package/dist/bundle.esm.js
CHANGED
|
@@ -18300,11 +18300,11 @@ class ngFilterPanel extends HTMLElement
|
|
|
18300
18300
|
|
|
18301
18301
|
#onOk = (e) => {
|
|
18302
18302
|
|
|
18303
|
-
|
|
18303
|
+
const grd = this.shadowRoot.querySelector("nine-grid");
|
|
18304
18304
|
|
|
18305
18305
|
//ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
18306
|
-
ninegrid.j.querySelectorAll(this.#target.owner).addClass("loading");
|
|
18307
|
-
|
|
18306
|
+
//ninegrid.j.querySelectorAll(this.#target.owner).addClass("loading");
|
|
18307
|
+
this.classList.add("loading");
|
|
18308
18308
|
|
|
18309
18309
|
setTimeout(() => {
|
|
18310
18310
|
|
|
@@ -18355,47 +18355,26 @@ class ngFilterPanel extends HTMLElement
|
|
|
18355
18355
|
|
|
18356
18356
|
console.log(this.#target, this.#target.button);
|
|
18357
18357
|
|
|
18358
|
-
this.#target.button.
|
|
18358
|
+
this.#target.button.filterOptions = filterData;
|
|
18359
|
+
|
|
18360
|
+
//this.#target.button.filterData = [...new Set(checked.map(m => { return m.v[DATA_IDX] }))];
|
|
18359
18361
|
|
|
18360
18362
|
console.log(this.#target.button.filterData);
|
|
18361
18363
|
|
|
18362
|
-
var oParam = {};
|
|
18363
|
-
|
|
18364
18364
|
$("ng-filter-button", this.#target.owner.body).each((index,el) => {
|
|
18365
18365
|
|
|
18366
|
-
//console.log(el, el.filterData);
|
|
18367
|
-
|
|
18368
18366
|
if (!el.filterData) return true;
|
|
18369
|
-
|
|
18370
|
-
//console.log(el, el.filterData);
|
|
18371
18367
|
|
|
18372
18368
|
el.colnms.forEach(colnm => {
|
|
18373
|
-
|
|
18369
|
+
el.filterData;
|
|
18374
18370
|
});
|
|
18375
|
-
|
|
18376
|
-
/**
|
|
18377
|
-
el.filterData.forEach(o => {
|
|
18378
|
-
|
|
18379
|
-
oParam[o.colnm] = o.data;
|
|
18380
|
-
|
|
18381
|
-
//const idx = this.#target.owner.fields.indexOf(o.colnm);
|
|
18382
|
-
//this.#target.owner.data.getValidData().filter(m => { return o.data.nineBinarySearch(m.v[idx] || '') < 0; }).map(m => { m.__ng.filtered = true; });
|
|
18383
|
-
}); */
|
|
18384
18371
|
});
|
|
18385
18372
|
|
|
18386
|
-
console.log(oParam);
|
|
18387
|
-
|
|
18388
|
-
//this.#target.owner.data.setFilter(oParam);
|
|
18389
|
-
this.#target.owner.filtering.on(oParam);
|
|
18390
|
-
|
|
18391
|
-
|
|
18392
|
-
//this.#target.owner.data.getValidDataNF().filter(rowData => { return this.#target.button.filterData.findIndex(item => (item.DATA || '') == (rowData[item.COLNM] || '') ) < 0; }).map(item => { item.__ng.filtered = true; });
|
|
18393
|
-
//this.#target.owner.scrollTo_V1(0);
|
|
18394
|
-
|
|
18395
|
-
//this.#target.owner.paging.reset();
|
|
18396
|
-
|
|
18397
|
-
ninegrid.j.querySelectorAll(this.#target.owner).removeClass("loading");
|
|
18373
|
+
//console.log(oParam);
|
|
18398
18374
|
|
|
18375
|
+
//this.#target.owner.filtering.on(oParam);
|
|
18376
|
+
|
|
18377
|
+
this.classList.remove("loading");
|
|
18399
18378
|
});
|
|
18400
18379
|
|
|
18401
18380
|
$(this).hide();
|
|
@@ -18474,18 +18453,20 @@ class ngFilterPanel extends HTMLElement
|
|
|
18474
18453
|
|
|
18475
18454
|
const owner = this.shadow.closest("nine-grid");
|
|
18476
18455
|
|
|
18477
|
-
var cell = filterButton.closest("th,td");
|
|
18478
18456
|
|
|
18479
|
-
|
|
18480
|
-
|
|
18481
|
-
|
|
18482
|
-
|
|
18457
|
+
/** 위치 */
|
|
18458
|
+
const cell = filterButton.closest("th,td");
|
|
18459
|
+
|
|
18460
|
+
const filterButtonRect = filterButton.getBoundingClientRect();
|
|
18461
|
+
const ownerRect = owner.getBoundingClientRect();
|
|
18462
|
+
const cellRect = cell.getBoundingClientRect();
|
|
18463
|
+
const targetRect = this.getBoundingClientRect();
|
|
18483
18464
|
|
|
18484
|
-
|
|
18465
|
+
let l = filterButtonRect.left - ownerRect.left;
|
|
18485
18466
|
if (l < 0) l = 0;
|
|
18486
18467
|
if (l + targetRect.width > ownerRect.width) l = ownerRect.width - targetRect.width - 5;
|
|
18487
18468
|
|
|
18488
|
-
|
|
18469
|
+
const t = cellRect.top + cellRect.height - ownerRect.top;
|
|
18489
18470
|
|
|
18490
18471
|
this.style.left = `${l}px`; // ✅ 위치 설정
|
|
18491
18472
|
this.style.top = `${t}px`;
|
|
@@ -18622,11 +18603,14 @@ class ngFilterPanel extends HTMLElement
|
|
|
18622
18603
|
|
|
18623
18604
|
grd.data.set(ds);
|
|
18624
18605
|
|
|
18625
|
-
|
|
18626
|
-
|
|
18606
|
+
// ✅ 데이터 필터링 및 체크 상태 결정
|
|
18607
|
+
const checkbox = this.shadowRoot.querySelector("input[type=checkbox]");
|
|
18608
|
+
checkbox.checked = grd.data.getValidData().filter(item => item.LVL == 2 && item.CHK != "Y").length === 0; // ✅ 체크 상태 설정
|
|
18609
|
+
|
|
18627
18610
|
this.shadowRoot.querySelector("input").focus();
|
|
18628
18611
|
|
|
18629
|
-
|
|
18612
|
+
this.classList.remove("loading");
|
|
18613
|
+
//ninegrid.j.querySelectorAll(this).removeClass("loading");
|
|
18630
18614
|
});
|
|
18631
18615
|
};
|
|
18632
18616
|
}
|
package/dist/etc/ngFiltering.js
CHANGED
|
@@ -370,11 +370,11 @@ class ngFilterPanel extends HTMLElement
|
|
|
370
370
|
|
|
371
371
|
#onOk = (e) => {
|
|
372
372
|
|
|
373
|
-
|
|
373
|
+
const grd = this.shadowRoot.querySelector("nine-grid");
|
|
374
374
|
|
|
375
375
|
//ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
376
|
-
ninegrid.j.querySelectorAll(this.#target.owner).addClass("loading");
|
|
377
|
-
|
|
376
|
+
//ninegrid.j.querySelectorAll(this.#target.owner).addClass("loading");
|
|
377
|
+
this.classList.add("loading");
|
|
378
378
|
|
|
379
379
|
setTimeout(() => {
|
|
380
380
|
|
|
@@ -427,7 +427,9 @@ class ngFilterPanel extends HTMLElement
|
|
|
427
427
|
|
|
428
428
|
console.log(this.#target, this.#target.button)
|
|
429
429
|
|
|
430
|
-
this.#target.button.
|
|
430
|
+
this.#target.button.filterOptions = filterData;
|
|
431
|
+
|
|
432
|
+
//this.#target.button.filterData = [...new Set(checked.map(m => { return m.v[DATA_IDX] }))];
|
|
431
433
|
|
|
432
434
|
console.log(this.#target.button.filterData)
|
|
433
435
|
|
|
@@ -435,39 +437,18 @@ class ngFilterPanel extends HTMLElement
|
|
|
435
437
|
|
|
436
438
|
$("ng-filter-button", this.#target.owner.body).each((index,el) => {
|
|
437
439
|
|
|
438
|
-
//console.log(el, el.filterData);
|
|
439
|
-
|
|
440
440
|
if (!el.filterData) return true;
|
|
441
|
-
|
|
442
|
-
//console.log(el, el.filterData);
|
|
443
441
|
|
|
444
442
|
el.colnms.forEach(colnm => {
|
|
445
443
|
oParam[colnm] = el.filterData;
|
|
446
444
|
});
|
|
447
|
-
|
|
448
|
-
/**
|
|
449
|
-
el.filterData.forEach(o => {
|
|
450
|
-
|
|
451
|
-
oParam[o.colnm] = o.data;
|
|
452
|
-
|
|
453
|
-
//const idx = this.#target.owner.fields.indexOf(o.colnm);
|
|
454
|
-
//this.#target.owner.data.getValidData().filter(m => { return o.data.nineBinarySearch(m.v[idx] || '') < 0; }).map(m => { m.__ng.filtered = true; });
|
|
455
|
-
}); */
|
|
456
445
|
});
|
|
457
446
|
|
|
458
|
-
console.log(oParam);
|
|
459
|
-
|
|
460
|
-
//this.#target.owner.data.setFilter(oParam);
|
|
461
|
-
this.#target.owner.filtering.on(oParam);
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
//this.#target.owner.data.getValidDataNF().filter(rowData => { return this.#target.button.filterData.findIndex(item => (item.DATA || '') == (rowData[item.COLNM] || '') ) < 0; }).map(item => { item.__ng.filtered = true; });
|
|
465
|
-
//this.#target.owner.scrollTo_V1(0);
|
|
466
|
-
|
|
467
|
-
//this.#target.owner.paging.reset();
|
|
468
|
-
|
|
469
|
-
ninegrid.j.querySelectorAll(this.#target.owner).removeClass("loading");
|
|
447
|
+
//console.log(oParam);
|
|
470
448
|
|
|
449
|
+
//this.#target.owner.filtering.on(oParam);
|
|
450
|
+
|
|
451
|
+
this.classList.remove("loading");
|
|
471
452
|
});
|
|
472
453
|
|
|
473
454
|
$(this).hide();
|
|
@@ -546,18 +527,20 @@ class ngFilterPanel extends HTMLElement
|
|
|
546
527
|
|
|
547
528
|
const owner = this.shadow.closest("nine-grid");
|
|
548
529
|
|
|
549
|
-
var cell = filterButton.closest("th,td");
|
|
550
530
|
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
531
|
+
/** 위치 */
|
|
532
|
+
const cell = filterButton.closest("th,td");
|
|
533
|
+
|
|
534
|
+
const filterButtonRect = filterButton.getBoundingClientRect();
|
|
535
|
+
const ownerRect = owner.getBoundingClientRect();
|
|
536
|
+
const cellRect = cell.getBoundingClientRect();
|
|
537
|
+
const targetRect = this.getBoundingClientRect();
|
|
555
538
|
|
|
556
|
-
|
|
539
|
+
let l = filterButtonRect.left - ownerRect.left;
|
|
557
540
|
if (l < 0) l = 0;
|
|
558
541
|
if (l + targetRect.width > ownerRect.width) l = ownerRect.width - targetRect.width - 5;
|
|
559
542
|
|
|
560
|
-
|
|
543
|
+
const t = cellRect.top + cellRect.height - ownerRect.top;
|
|
561
544
|
|
|
562
545
|
this.style.left = `${l}px`; // ✅ 위치 설정
|
|
563
546
|
this.style.top = `${t}px`;
|
|
@@ -694,11 +677,14 @@ class ngFilterPanel extends HTMLElement
|
|
|
694
677
|
|
|
695
678
|
grd.data.set(ds);
|
|
696
679
|
|
|
697
|
-
|
|
698
|
-
|
|
680
|
+
// ✅ 데이터 필터링 및 체크 상태 결정
|
|
681
|
+
const checkbox = this.shadowRoot.querySelector("input[type=checkbox]");
|
|
682
|
+
checkbox.checked = grd.data.getValidData().filter(item => item.LVL == 2 && item.CHK != "Y").length === 0; // ✅ 체크 상태 설정
|
|
683
|
+
|
|
699
684
|
this.shadowRoot.querySelector("input").focus();
|
|
700
685
|
|
|
701
|
-
|
|
686
|
+
this.classList.remove("loading");
|
|
687
|
+
//ninegrid.j.querySelectorAll(this).removeClass("loading");
|
|
702
688
|
});
|
|
703
689
|
};
|
|
704
690
|
}
|
package/package.json
CHANGED
package/src/etc/ngFiltering.js
CHANGED
|
@@ -370,11 +370,11 @@ class ngFilterPanel extends HTMLElement
|
|
|
370
370
|
|
|
371
371
|
#onOk = (e) => {
|
|
372
372
|
|
|
373
|
-
|
|
373
|
+
const grd = this.shadowRoot.querySelector("nine-grid");
|
|
374
374
|
|
|
375
375
|
//ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
376
|
-
ninegrid.j.querySelectorAll(this.#target.owner).addClass("loading");
|
|
377
|
-
|
|
376
|
+
//ninegrid.j.querySelectorAll(this.#target.owner).addClass("loading");
|
|
377
|
+
this.classList.add("loading");
|
|
378
378
|
|
|
379
379
|
setTimeout(() => {
|
|
380
380
|
|
|
@@ -427,7 +427,9 @@ class ngFilterPanel extends HTMLElement
|
|
|
427
427
|
|
|
428
428
|
console.log(this.#target, this.#target.button)
|
|
429
429
|
|
|
430
|
-
this.#target.button.
|
|
430
|
+
this.#target.button.filterOptions = filterData;
|
|
431
|
+
|
|
432
|
+
//this.#target.button.filterData = [...new Set(checked.map(m => { return m.v[DATA_IDX] }))];
|
|
431
433
|
|
|
432
434
|
console.log(this.#target.button.filterData)
|
|
433
435
|
|
|
@@ -435,39 +437,18 @@ class ngFilterPanel extends HTMLElement
|
|
|
435
437
|
|
|
436
438
|
$("ng-filter-button", this.#target.owner.body).each((index,el) => {
|
|
437
439
|
|
|
438
|
-
//console.log(el, el.filterData);
|
|
439
|
-
|
|
440
440
|
if (!el.filterData) return true;
|
|
441
|
-
|
|
442
|
-
//console.log(el, el.filterData);
|
|
443
441
|
|
|
444
442
|
el.colnms.forEach(colnm => {
|
|
445
443
|
oParam[colnm] = el.filterData;
|
|
446
444
|
});
|
|
447
|
-
|
|
448
|
-
/**
|
|
449
|
-
el.filterData.forEach(o => {
|
|
450
|
-
|
|
451
|
-
oParam[o.colnm] = o.data;
|
|
452
|
-
|
|
453
|
-
//const idx = this.#target.owner.fields.indexOf(o.colnm);
|
|
454
|
-
//this.#target.owner.data.getValidData().filter(m => { return o.data.nineBinarySearch(m.v[idx] || '') < 0; }).map(m => { m.__ng.filtered = true; });
|
|
455
|
-
}); */
|
|
456
445
|
});
|
|
457
446
|
|
|
458
|
-
console.log(oParam);
|
|
459
|
-
|
|
460
|
-
//this.#target.owner.data.setFilter(oParam);
|
|
461
|
-
this.#target.owner.filtering.on(oParam);
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
//this.#target.owner.data.getValidDataNF().filter(rowData => { return this.#target.button.filterData.findIndex(item => (item.DATA || '') == (rowData[item.COLNM] || '') ) < 0; }).map(item => { item.__ng.filtered = true; });
|
|
465
|
-
//this.#target.owner.scrollTo_V1(0);
|
|
466
|
-
|
|
467
|
-
//this.#target.owner.paging.reset();
|
|
468
|
-
|
|
469
|
-
ninegrid.j.querySelectorAll(this.#target.owner).removeClass("loading");
|
|
447
|
+
//console.log(oParam);
|
|
470
448
|
|
|
449
|
+
//this.#target.owner.filtering.on(oParam);
|
|
450
|
+
|
|
451
|
+
this.classList.remove("loading");
|
|
471
452
|
});
|
|
472
453
|
|
|
473
454
|
$(this).hide();
|
|
@@ -546,18 +527,20 @@ class ngFilterPanel extends HTMLElement
|
|
|
546
527
|
|
|
547
528
|
const owner = this.shadow.closest("nine-grid");
|
|
548
529
|
|
|
549
|
-
var cell = filterButton.closest("th,td");
|
|
550
530
|
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
531
|
+
/** 위치 */
|
|
532
|
+
const cell = filterButton.closest("th,td");
|
|
533
|
+
|
|
534
|
+
const filterButtonRect = filterButton.getBoundingClientRect();
|
|
535
|
+
const ownerRect = owner.getBoundingClientRect();
|
|
536
|
+
const cellRect = cell.getBoundingClientRect();
|
|
537
|
+
const targetRect = this.getBoundingClientRect();
|
|
555
538
|
|
|
556
|
-
|
|
539
|
+
let l = filterButtonRect.left - ownerRect.left;
|
|
557
540
|
if (l < 0) l = 0;
|
|
558
541
|
if (l + targetRect.width > ownerRect.width) l = ownerRect.width - targetRect.width - 5;
|
|
559
542
|
|
|
560
|
-
|
|
543
|
+
const t = cellRect.top + cellRect.height - ownerRect.top;
|
|
561
544
|
|
|
562
545
|
this.style.left = `${l}px`; // ✅ 위치 설정
|
|
563
546
|
this.style.top = `${t}px`;
|
|
@@ -694,11 +677,14 @@ class ngFilterPanel extends HTMLElement
|
|
|
694
677
|
|
|
695
678
|
grd.data.set(ds);
|
|
696
679
|
|
|
697
|
-
|
|
698
|
-
|
|
680
|
+
// ✅ 데이터 필터링 및 체크 상태 결정
|
|
681
|
+
const checkbox = this.shadowRoot.querySelector("input[type=checkbox]");
|
|
682
|
+
checkbox.checked = grd.data.getValidData().filter(item => item.LVL == 2 && item.CHK != "Y").length === 0; // ✅ 체크 상태 설정
|
|
683
|
+
|
|
699
684
|
this.shadowRoot.querySelector("input").focus();
|
|
700
685
|
|
|
701
|
-
|
|
686
|
+
this.classList.remove("loading");
|
|
687
|
+
//ninegrid.j.querySelectorAll(this).removeClass("loading");
|
|
702
688
|
});
|
|
703
689
|
};
|
|
704
690
|
}
|