ninegrid2 6.258.0 → 6.260.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/ai/aiMessage.js +1 -1
- package/dist/bundle.cjs.js +568 -570
- package/dist/bundle.esm.js +568 -570
- package/package.json +1 -1
- package/src/ai/aiMessage.js +1 -1
package/dist/bundle.esm.js
CHANGED
|
@@ -10704,7 +10704,7 @@ function requireJquery () {
|
|
|
10704
10704
|
var jqueryExports = requireJquery();
|
|
10705
10705
|
var $$1 = /*@__PURE__*/getDefaultExportFromCjs(jqueryExports);
|
|
10706
10706
|
|
|
10707
|
-
|
|
10707
|
+
class ninegrid {
|
|
10708
10708
|
|
|
10709
10709
|
|
|
10710
10710
|
constructor() {
|
|
@@ -11551,7 +11551,7 @@ let ninegrid$1 = class ninegrid {
|
|
|
11551
11551
|
}
|
|
11552
11552
|
},
|
|
11553
11553
|
}
|
|
11554
|
-
}
|
|
11554
|
+
}
|
|
11555
11555
|
|
|
11556
11556
|
Array.prototype.nineBinarySearch = function(target)
|
|
11557
11557
|
{
|
|
@@ -11657,11 +11657,11 @@ class ngCellEx extends HTMLElement
|
|
|
11657
11657
|
this.#showCheck = this.getAttribute("show-check") == "true" || this.cell.getAttribute("show-check") == "true";
|
|
11658
11658
|
this.#showButton = this.getAttribute("show-button") == "true" || this.cell.getAttribute("show-button") == "true";
|
|
11659
11659
|
|
|
11660
|
-
if (this.cell.dataset.bind) ninegrid
|
|
11660
|
+
if (this.cell.dataset.bind) ninegrid.j.querySelectorAll(this).addClass(this.cell.dataset.bind);
|
|
11661
11661
|
|
|
11662
11662
|
const style = this.shadowRoot.querySelector("style");
|
|
11663
11663
|
const textAlign = this.getAttribute("text-align") || this.cell.getAttribute("text-align") || "left";
|
|
11664
|
-
ninegrid
|
|
11664
|
+
ninegrid.j.querySelectorAll(this).addClass(`ng-${textAlign}`);
|
|
11665
11665
|
|
|
11666
11666
|
if (this.#showIcon) {
|
|
11667
11667
|
const iconType = this.getAttribute("icon-type") || this.cell.getAttribute("icon-type") || "sphere";
|
|
@@ -11762,20 +11762,20 @@ class ngCellEx extends HTMLElement
|
|
|
11762
11762
|
const next = this.shadowRoot.querySelector("input[type=text],textarea").nextElementSibling;
|
|
11763
11763
|
|
|
11764
11764
|
if (prev.tagName == "NG-EXPAND-BUTTON") {
|
|
11765
|
-
ninegrid
|
|
11766
|
-
ninegrid
|
|
11765
|
+
ninegrid.j.querySelectorAll(this.shadowRoot.querySelector("input[type=text],textarea")).addClass("border-left-none");
|
|
11766
|
+
ninegrid.j.querySelectorAll(prev).addClass("border-right-none");
|
|
11767
11767
|
}
|
|
11768
11768
|
else if (next.tagName == "NG-EXPAND-BUTTON") {
|
|
11769
|
-
ninegrid
|
|
11770
|
-
ninegrid
|
|
11769
|
+
ninegrid.j.querySelectorAll(this.shadowRoot.querySelector("input[type=text],textarea")).addClass("border-right-none");
|
|
11770
|
+
ninegrid.j.querySelectorAll(next).addClass("border-left-none");
|
|
11771
11771
|
}
|
|
11772
11772
|
}
|
|
11773
11773
|
}
|
|
11774
11774
|
|
|
11775
11775
|
const expandleft = this.shadowRoot.querySelectorAll(".ng-left");
|
|
11776
|
-
if (expandleft.length > 0) ninegrid
|
|
11776
|
+
if (expandleft.length > 0) ninegrid.j.querySelectorAll(expandleft[0]).addClass("ng-first");
|
|
11777
11777
|
const expandRight = this.shadowRoot.querySelectorAll(".ng-right");
|
|
11778
|
-
if (expandRight.length > 0) ninegrid
|
|
11778
|
+
if (expandRight.length > 0) ninegrid.j.querySelectorAll(expandRight[expandRight.length-1]).addClass("ng-last");
|
|
11779
11779
|
|
|
11780
11780
|
|
|
11781
11781
|
|
|
@@ -11830,7 +11830,7 @@ class ngCellEx extends HTMLElement
|
|
|
11830
11830
|
}
|
|
11831
11831
|
}
|
|
11832
11832
|
|
|
11833
|
-
this.owner.dispatchEvent(new CustomEvent(ninegrid
|
|
11833
|
+
this.owner.dispatchEvent(new CustomEvent(ninegrid.EVENT.BUTTON_CLICK, { detail: { target: this.cell, data: this.cell.closest("tr").data, currow: parseInt(this.cell.dataset.row) }, bubbles: true, composed: true }));
|
|
11834
11834
|
//var row = parseInt(this.cell.dataset.row);
|
|
11835
11835
|
//this.owner.exprFunction(this.cell.getAttribute("onButtonClick") || this.getAttribute("onButtonClick")).call(this, this.cell.closest("tr").data, row);
|
|
11836
11836
|
});
|
|
@@ -11843,7 +11843,7 @@ class ngCellEx extends HTMLElement
|
|
|
11843
11843
|
|
|
11844
11844
|
|
|
11845
11845
|
if (this.getAttribute("link") == "true") {
|
|
11846
|
-
ninegrid
|
|
11846
|
+
ninegrid.j.querySelectorAll(renderer).addClass("link");
|
|
11847
11847
|
|
|
11848
11848
|
renderer.addEventListener("click", e => {
|
|
11849
11849
|
|
|
@@ -11858,7 +11858,7 @@ class ngCellEx extends HTMLElement
|
|
|
11858
11858
|
}
|
|
11859
11859
|
}
|
|
11860
11860
|
|
|
11861
|
-
this.owner.dispatchEvent(new CustomEvent(ninegrid
|
|
11861
|
+
this.owner.dispatchEvent(new CustomEvent(ninegrid.EVENT.LINK_CLICK, { detail: { target: this.cell, data: this.cell.closest("tr").data, currow: parseInt(this.cell.dataset.row) }, bubbles: true, composed: true }));
|
|
11862
11862
|
});
|
|
11863
11863
|
}
|
|
11864
11864
|
|
|
@@ -11911,7 +11911,7 @@ class ngCellEx extends HTMLElement
|
|
|
11911
11911
|
|
|
11912
11912
|
//console.log(this.cell.dataset.expr, this.cell.dataset.bind, ninegrid.ROW.ORDER);
|
|
11913
11913
|
|
|
11914
|
-
if (!ninegrid
|
|
11914
|
+
if (!ninegrid.isNull(this.cell.dataset.expr)) {
|
|
11915
11915
|
|
|
11916
11916
|
try {
|
|
11917
11917
|
//console.log(this.cell.dataset.expr);
|
|
@@ -11928,11 +11928,11 @@ class ngCellEx extends HTMLElement
|
|
|
11928
11928
|
console.error(this.cell.dataset.expr, rowData, this.cell.dataset.row);
|
|
11929
11929
|
}
|
|
11930
11930
|
}
|
|
11931
|
-
else if (!ninegrid
|
|
11932
|
-
return rowData[this.cell.dataset.bind] || ninegrid
|
|
11931
|
+
else if (!ninegrid.isNull(this.cell.dataset.bind)) {
|
|
11932
|
+
return rowData[this.cell.dataset.bind] || ninegrid.nvl(defaultValue, "");
|
|
11933
11933
|
}
|
|
11934
11934
|
|
|
11935
|
-
return ninegrid
|
|
11935
|
+
return ninegrid.nvl(defaultValue, "");
|
|
11936
11936
|
}
|
|
11937
11937
|
else {
|
|
11938
11938
|
try {
|
|
@@ -11957,11 +11957,11 @@ class ngCellEx extends HTMLElement
|
|
|
11957
11957
|
}
|
|
11958
11958
|
|
|
11959
11959
|
if (this.cell.dataset.bind && this.shadowRoot.querySelector("input,textarea,button")) {
|
|
11960
|
-
ninegrid
|
|
11960
|
+
ninegrid.j.querySelectorAll(this.cell).removeClass("ng-changed");
|
|
11961
11961
|
|
|
11962
11962
|
if (data.__ng.o.hasOwnProperty(this.cell.dataset.bind)) {
|
|
11963
11963
|
if (data[this.cell.dataset.bind] != data.__ng.o[this.cell.dataset.bind]) {
|
|
11964
|
-
ninegrid
|
|
11964
|
+
ninegrid.j.querySelectorAll(this.cell).addClass("ng-changed");
|
|
11965
11965
|
}
|
|
11966
11966
|
}
|
|
11967
11967
|
}
|
|
@@ -12032,26 +12032,26 @@ class ngCellEx extends HTMLElement
|
|
|
12032
12032
|
|
|
12033
12033
|
var expr = this.getAttribute('visible') || this.cell.getAttribute('visible');
|
|
12034
12034
|
if (expr) {
|
|
12035
|
-
this.getExprValue(expr, data, row) ? ninegrid
|
|
12035
|
+
this.getExprValue(expr, data, row) ? ninegrid.j.querySelectorAll(this.cell).removeClass('hidden') : ninegrid.j.querySelectorAll(this.cell).addClass('hidden');
|
|
12036
12036
|
}
|
|
12037
12037
|
else {
|
|
12038
|
-
ninegrid
|
|
12038
|
+
ninegrid.j.querySelectorAll(this.cell).removeClass('hidden');
|
|
12039
12039
|
}
|
|
12040
12040
|
|
|
12041
12041
|
var expr = this.getAttribute('enable') || this.cell.getAttribute('enable');
|
|
12042
12042
|
if (expr) {
|
|
12043
|
-
ninegrid
|
|
12043
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("disabled", !this.getExprValue(expr, data, row));
|
|
12044
12044
|
}
|
|
12045
12045
|
else {
|
|
12046
|
-
ninegrid
|
|
12046
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("disabled", false);
|
|
12047
12047
|
}
|
|
12048
12048
|
|
|
12049
12049
|
var expr = this.getAttribute('readonly') || this.cell.getAttribute('readonly');
|
|
12050
12050
|
if (expr) {
|
|
12051
|
-
ninegrid
|
|
12051
|
+
ninegrid.j.querySelectorAll("input,textarea", this.shadowRoot).attr("readonly", this.getExprValue(expr, data, row));
|
|
12052
12052
|
}
|
|
12053
12053
|
else {
|
|
12054
|
-
ninegrid
|
|
12054
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("readonly", false);
|
|
12055
12055
|
}
|
|
12056
12056
|
|
|
12057
12057
|
|
|
@@ -12069,7 +12069,7 @@ class ngCellEx extends HTMLElement
|
|
|
12069
12069
|
$(this.cell).children().each((i,el) => {
|
|
12070
12070
|
var tooltipFn = el.getAttribute('tooltip');
|
|
12071
12071
|
if (tooltipFn) {
|
|
12072
|
-
ninegrid
|
|
12072
|
+
ninegrid.j.querySelectorAll(el).attr("title", this.owner.exprFunction(tooltipFn).call(this, this.cell.closest("tr").data, row));
|
|
12073
12073
|
}
|
|
12074
12074
|
});
|
|
12075
12075
|
|
|
@@ -12080,7 +12080,7 @@ class ngCellEx extends HTMLElement
|
|
|
12080
12080
|
|
|
12081
12081
|
if (!this.owner || !this.owner.template || !this.cell.closest("tbody.bindable")) return;
|
|
12082
12082
|
|
|
12083
|
-
var suppress = ninegrid
|
|
12083
|
+
var suppress = ninegrid.j.querySelectorAll(this.cell).attr('suppress');
|
|
12084
12084
|
if (suppress) suppress = parseInt(suppress);
|
|
12085
12085
|
|
|
12086
12086
|
if (suppress && !isNaN(suppress)) {
|
|
@@ -12089,7 +12089,7 @@ class ngCellEx extends HTMLElement
|
|
|
12089
12089
|
var arrSuppress = [];
|
|
12090
12090
|
|
|
12091
12091
|
$("th,td", tr).each((i,el) => {
|
|
12092
|
-
var otherSuppress = ninegrid
|
|
12092
|
+
var otherSuppress = ninegrid.j.querySelectorAll(el).attr('suppress');
|
|
12093
12093
|
if (otherSuppress && el.dataset.row) {
|
|
12094
12094
|
otherSuppress = parseInt(otherSuppress);
|
|
12095
12095
|
|
|
@@ -12126,23 +12126,23 @@ class ngCellEx extends HTMLElement
|
|
|
12126
12126
|
bSuppress = true;
|
|
12127
12127
|
}
|
|
12128
12128
|
|
|
12129
|
-
(bSuppress) ? ninegrid
|
|
12130
|
-
if (!ninegrid
|
|
12131
|
-
(bSuppress) ? ninegrid
|
|
12129
|
+
(bSuppress) ? ninegrid.j.querySelectorAll(this.cell).removeClass('suppress') : ninegrid.j.querySelectorAll(this.cell).addClass('suppress');
|
|
12130
|
+
if (!ninegrid.j.querySelectorAll(this.cell).hasClass("hidden")) {
|
|
12131
|
+
(bSuppress) ? ninegrid.j.querySelectorAll(this.cell).removeClass('hidden') : ninegrid.j.querySelectorAll(this.cell).addClass('hidden');
|
|
12132
12132
|
}
|
|
12133
12133
|
|
|
12134
12134
|
var currMatrixRow = parseInt(this.cell.dataset.matrixRow);
|
|
12135
12135
|
var prevMatrixRow = currMatrixRow - 1;//this.owner.template.length;
|
|
12136
12136
|
var prevCell = this.owner.body.querySelector(`tbody.bindable [data-col="${this.cell.dataset.col}"][data-matrix-row="${prevMatrixRow}"]`);
|
|
12137
12137
|
|
|
12138
|
-
if ($(prevCell).hasClass('suppress') && !ninegrid
|
|
12139
|
-
ninegrid
|
|
12138
|
+
if ($(prevCell).hasClass('suppress') && !ninegrid.j.querySelectorAll(this.cell).hasClass('suppress')) {
|
|
12139
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-none-suppress').addClass('last-suppress');
|
|
12140
12140
|
}
|
|
12141
|
-
else if (!$(prevCell).hasClass('suppress') && ninegrid
|
|
12142
|
-
ninegrid
|
|
12141
|
+
else if (!$(prevCell).hasClass('suppress') && ninegrid.j.querySelectorAll(this.cell).hasClass('suppress')) {
|
|
12142
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-suppress').addClass('last-none-suppress');
|
|
12143
12143
|
}
|
|
12144
12144
|
else {
|
|
12145
|
-
ninegrid
|
|
12145
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-none-suppress').removeClass('last-suppress');
|
|
12146
12146
|
}
|
|
12147
12147
|
}
|
|
12148
12148
|
};
|
|
@@ -12208,13 +12208,13 @@ class ngEditableEx extends ngCellEx
|
|
|
12208
12208
|
if (maxbyte) {
|
|
12209
12209
|
maxbyte = parseInt(maxbyte);
|
|
12210
12210
|
|
|
12211
|
-
if (ninegrid
|
|
12211
|
+
if (ninegrid.getByteLength(event.target.value) >= maxbyte) {
|
|
12212
12212
|
|
|
12213
|
-
event.target.value = ninegrid
|
|
12213
|
+
event.target.value = ninegrid.cut(event.target.value, maxbyte);
|
|
12214
12214
|
}
|
|
12215
12215
|
}
|
|
12216
12216
|
var v = $(event.target).val();
|
|
12217
|
-
this.value = ninegrid
|
|
12217
|
+
this.value = ninegrid.j.querySelectorAll(this).attr("type") == "number" ? (isNaN(v) ? "" : Number(v)) : v;
|
|
12218
12218
|
|
|
12219
12219
|
break;
|
|
12220
12220
|
}
|
|
@@ -12244,8 +12244,8 @@ class ngButton extends ngCellEx
|
|
|
12244
12244
|
*/
|
|
12245
12245
|
this.shadowRoot.innerHTML =`
|
|
12246
12246
|
<style>
|
|
12247
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
12248
|
-
${ninegrid
|
|
12247
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngButton.css";
|
|
12248
|
+
${ninegrid.getCustomPath(this,"ngButton.css")}
|
|
12249
12249
|
</style>
|
|
12250
12250
|
|
|
12251
12251
|
<button class="button" ${attr.join(" ")}>${this.getAttribute("text")}</button>
|
|
@@ -12355,11 +12355,11 @@ class ngCellCopyPasteKeyHandler
|
|
|
12355
12355
|
.then(() => {
|
|
12356
12356
|
//ninegrid.j.querySelectorAll(".copied", this.#owner.body).removeClass("copied");
|
|
12357
12357
|
setTimeout(() => {
|
|
12358
|
-
ninegrid
|
|
12358
|
+
ninegrid.j.querySelectorAll(".selected", this.#owner.body).addClass("copied");
|
|
12359
12359
|
});
|
|
12360
12360
|
|
|
12361
12361
|
setTimeout(() => {
|
|
12362
|
-
ninegrid
|
|
12362
|
+
ninegrid.j.querySelectorAll(".copied", this.#owner.body).removeClass("copied");
|
|
12363
12363
|
}, 1000);
|
|
12364
12364
|
})
|
|
12365
12365
|
.catch(err => {
|
|
@@ -12481,7 +12481,7 @@ class ngCellManager
|
|
|
12481
12481
|
const oldCellIndex = this.#oldCellIndex;
|
|
12482
12482
|
|
|
12483
12483
|
if (row != oldrow || subrow != oldsubrow || col != oldcol) {
|
|
12484
|
-
const customEvent = new CustomEvent(ninegrid
|
|
12484
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.CELL_POS_CHANGED, { bubbles: true, detail: {} });
|
|
12485
12485
|
customEvent.col = col;
|
|
12486
12486
|
customEvent.cellIndex = cellIndex;
|
|
12487
12487
|
customEvent.row = row;
|
|
@@ -12500,7 +12500,7 @@ class ngCellManager
|
|
|
12500
12500
|
}
|
|
12501
12501
|
|
|
12502
12502
|
if (row != oldrow) {
|
|
12503
|
-
const customEvent = new CustomEvent(ninegrid
|
|
12503
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.ROW_POS_CHANGED, { bubbles: true, detail: {} });
|
|
12504
12504
|
customEvent.col = col;
|
|
12505
12505
|
customEvent.cellIndex = cellIndex;
|
|
12506
12506
|
customEvent.row = row;
|
|
@@ -12636,7 +12636,7 @@ class ngCellManager
|
|
|
12636
12636
|
$(`tbody tr[data-matrix-row=${matrixRow}]`, this.#owner.body).find("th,td").each((i,el) => {
|
|
12637
12637
|
var elCol = parseInt(el.dataset.col);
|
|
12638
12638
|
if ((col - 1) >= elCol && (col - 1) <= elCol + el.colSpan - 1) {
|
|
12639
|
-
previousCol = ninegrid
|
|
12639
|
+
previousCol = ninegrid.j.querySelectorAll(el).hasClass("dummy") ? this.#getPreviousCol(matrixRow, el.dataset.col) : el.dataset.col;
|
|
12640
12640
|
return false;
|
|
12641
12641
|
}
|
|
12642
12642
|
});
|
|
@@ -12645,7 +12645,7 @@ class ngCellManager
|
|
|
12645
12645
|
$(`tbody tr[data-row=${row}]`, this.#owner.body).find("th,td").each((i,el) => {
|
|
12646
12646
|
var elCol = parseInt(el.dataset.col);
|
|
12647
12647
|
if ((col - 1) >= elCol && (col - 1) <= elCol + el.colSpan - 1) {
|
|
12648
|
-
previousCol = ninegrid
|
|
12648
|
+
previousCol = ninegrid.j.querySelectorAll(el).hasClass("dummy") ? this.#getPreviousCol(matrixRow, el.dataset.col) : el.dataset.col;
|
|
12649
12649
|
return false;
|
|
12650
12650
|
}
|
|
12651
12651
|
});
|
|
@@ -12659,7 +12659,7 @@ class ngCellManager
|
|
|
12659
12659
|
|
|
12660
12660
|
var nextCol = col + (td.colSpan || 1);
|
|
12661
12661
|
var nextTd = this.#owner.body.querySelector(`tbody [data-matrix-row="${matrixRow}"][data-col="${nextCol}"]`);
|
|
12662
|
-
if (ninegrid
|
|
12662
|
+
if (ninegrid.j.querySelectorAll(nextTd).hasClass("dummy")) {
|
|
12663
12663
|
nextCol = this.#getNextCol(matrixRow, nextCol);
|
|
12664
12664
|
}
|
|
12665
12665
|
|
|
@@ -12703,10 +12703,10 @@ class ngCellManager
|
|
|
12703
12703
|
|
|
12704
12704
|
if (e.ctrlKey || e.altKey) return;
|
|
12705
12705
|
|
|
12706
|
-
if (e.target.tagName == "NG-ROW-INDICATOR" && [ninegrid
|
|
12706
|
+
if (e.target.tagName == "NG-ROW-INDICATOR" && [ninegrid.SELECTTYPE.CELL,ninegrid.SELECTTYPE.AREA].includes(this.#owner.selection.type)) return;
|
|
12707
12707
|
|
|
12708
12708
|
if (e.shiftKey) {
|
|
12709
|
-
if ([ninegrid
|
|
12709
|
+
if ([ninegrid.SELECTTYPE.COLS,ninegrid.SELECTTYPE.ROWS,ninegrid.SELECTTYPE.AREA].includes(this.#owner.selection.type)) {
|
|
12710
12710
|
var fromTD = this.#owner.selection.getActiveCell();
|
|
12711
12711
|
if (fromTD) {
|
|
12712
12712
|
var fromTR = fromTD.closest("tr");
|
|
@@ -12824,7 +12824,7 @@ class ngCellSelection
|
|
|
12824
12824
|
clear :
|
|
12825
12825
|
() => {
|
|
12826
12826
|
this.selected.startRow = this.selected.endRow = this.selected.startCol = this.selected.endCol = -1;
|
|
12827
|
-
ninegrid
|
|
12827
|
+
ninegrid.j.querySelectorAll("th,td", this.#owner.body).removeClass("selected").removeClass("selected-area").removeClass("selected-top").removeClass("selected-bottom").removeClass("selected-left").removeClass("selected-right");
|
|
12828
12828
|
},
|
|
12829
12829
|
};
|
|
12830
12830
|
|
|
@@ -12837,10 +12837,10 @@ class ngCellSelection
|
|
|
12837
12837
|
return this.#owner.getAttribute("select-type");
|
|
12838
12838
|
};
|
|
12839
12839
|
set type(v) {
|
|
12840
|
-
if (!Object.values(ninegrid
|
|
12840
|
+
if (!Object.values(ninegrid.SELECTTYPE).includes(v)) throw `invalid select type : ${v}`;
|
|
12841
12841
|
|
|
12842
|
-
Object.values(ninegrid
|
|
12843
|
-
ninegrid
|
|
12842
|
+
Object.values(ninegrid.SELECTTYPE).forEach(m => { ninegrid.j.querySelectorAll(".ng-table", this.#owner.body).removeClass(`select-type-${m}`); });
|
|
12843
|
+
ninegrid.j.querySelectorAll(".ng-table", this.#owner.body).addClass(`select-type-${v}`);
|
|
12844
12844
|
this.#owner.cell.refresh();
|
|
12845
12845
|
};
|
|
12846
12846
|
|
|
@@ -12859,20 +12859,20 @@ class ngCellSelection
|
|
|
12859
12859
|
refresh = () => {
|
|
12860
12860
|
|
|
12861
12861
|
switch (this.type) {
|
|
12862
|
-
case ninegrid
|
|
12862
|
+
case ninegrid.SELECTTYPE.ROW:
|
|
12863
12863
|
|
|
12864
12864
|
this.selected.startRow = parseInt(this.#owner.row.at * this.#owner.template.length);
|
|
12865
12865
|
this.selected.endRow = this.selected.startRow + this.#owner.template.length - 1;
|
|
12866
12866
|
|
|
12867
12867
|
var cols = [];
|
|
12868
|
-
$(`tbody tr[data-row=${parseInt(this.selected.startRow / this.#owner.template.length)}] td`, this.#owner.body).not(".dummy").not(".first").each((i,el) => { if (parseInt(ninegrid
|
|
12868
|
+
$(`tbody tr[data-row=${parseInt(this.selected.startRow / this.#owner.template.length)}] td`, this.#owner.body).not(".dummy").not(".first").each((i,el) => { if (parseInt(ninegrid.j.querySelectorAll(el).attr("tabindex")) >= 0) cols.push(Number(el.dataset.col)); });
|
|
12869
12869
|
|
|
12870
12870
|
this.selected.startCol = (cols.length > 0) ? Math.min.apply(null, cols) : -1;
|
|
12871
12871
|
this.selected.endCol = (cols.length > 0) ? Math.max.apply(null, cols) : -1;
|
|
12872
12872
|
|
|
12873
12873
|
break;
|
|
12874
12874
|
|
|
12875
|
-
case ninegrid
|
|
12875
|
+
case ninegrid.SELECTTYPE.ROWS:
|
|
12876
12876
|
this.selected.startRow = parseInt(this.selected.startRow / this.#owner.template.length) * this.#owner.template.length;
|
|
12877
12877
|
this.selected.endRow = parseInt(this.selected.endRow / this.#owner.template.length) * this.#owner.template.length - 1 + this.#owner.template.length;
|
|
12878
12878
|
|
|
@@ -12880,7 +12880,7 @@ class ngCellSelection
|
|
|
12880
12880
|
this.selected.endCol = this.#owner.lastCol;//Math.max.apply(null, cols);
|
|
12881
12881
|
break;
|
|
12882
12882
|
|
|
12883
|
-
case ninegrid
|
|
12883
|
+
case ninegrid.SELECTTYPE.COL:
|
|
12884
12884
|
this.selected.startRow = 0;
|
|
12885
12885
|
this.selected.endRow = parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
12886
12886
|
this.selected.endCol = this.selected.startCol;
|
|
@@ -12908,7 +12908,7 @@ class ngCellSelection
|
|
|
12908
12908
|
|
|
12909
12909
|
break;
|
|
12910
12910
|
|
|
12911
|
-
case ninegrid
|
|
12911
|
+
case ninegrid.SELECTTYPE.COLS:
|
|
12912
12912
|
|
|
12913
12913
|
this.selected.startRow = 0;
|
|
12914
12914
|
this.selected.endRow = parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
@@ -12937,31 +12937,31 @@ class ngCellSelection
|
|
|
12937
12937
|
|
|
12938
12938
|
break;
|
|
12939
12939
|
|
|
12940
|
-
case ninegrid
|
|
12940
|
+
case ninegrid.SELECTTYPE.CELL:
|
|
12941
12941
|
this.selected.endRow = this.selected.startRow;
|
|
12942
12942
|
this.selected.endCol = this.selected.startCol;
|
|
12943
12943
|
break;
|
|
12944
12944
|
|
|
12945
|
-
case ninegrid
|
|
12945
|
+
case ninegrid.SELECTTYPE.AREA:
|
|
12946
12946
|
break;
|
|
12947
12947
|
|
|
12948
|
-
case ninegrid
|
|
12948
|
+
case ninegrid.SELECTTYPE.NONE:
|
|
12949
12949
|
this.selected.startRow = this.selected.endRow = this.selected.startCol = this.selected.endCol = -1;
|
|
12950
12950
|
break;
|
|
12951
12951
|
}
|
|
12952
12952
|
|
|
12953
12953
|
|
|
12954
|
-
ninegrid
|
|
12954
|
+
ninegrid.j.querySelectorAll("th,td", this.#owner.body).removeClass("active").removeClass("multi-selected").removeClass("selected").removeClass("selected-current").removeClass("selected-area").removeClass("selected-top").removeClass("selected-bottom").removeClass("selected-left").removeClass("selected-right");
|
|
12955
12955
|
|
|
12956
|
-
ninegrid
|
|
12957
|
-
ninegrid
|
|
12956
|
+
ninegrid.j.querySelectorAll(".selected-current", this.#owner.body).removeClass("selected-current");
|
|
12957
|
+
ninegrid.j.querySelectorAll(`tr[data-row="${this.selected.currentRow}"] ng-row-indicator`, this.#owner.body).addClass("selected-current");
|
|
12958
12958
|
|
|
12959
12959
|
//var row = parseInt(this.selected.currentRow / this.#owner.template.length);
|
|
12960
|
-
ninegrid
|
|
12960
|
+
ninegrid.j.querySelectorAll(`.col-indicator[data-col="${this.selected.currentCol}"]`, this.#owner.body).addClass("selected-current");
|
|
12961
12961
|
$(`tr[data-row="${this.selected.currentRow}"] ng-row-indicator`, this.#owner.body).closest("th,td").addClass("selected-current");
|
|
12962
12962
|
|
|
12963
12963
|
var activeCell = this.getActiveCell();
|
|
12964
|
-
if (activeCell) ninegrid
|
|
12964
|
+
if (activeCell) ninegrid.j.querySelectorAll(activeCell).addClass("active");
|
|
12965
12965
|
|
|
12966
12966
|
$("tbody th,tbody td", this.#owner.body).each((index, td) => {
|
|
12967
12967
|
var tdCol = parseInt(td.dataset.col);
|
|
@@ -12971,17 +12971,17 @@ class ngCellSelection
|
|
|
12971
12971
|
|
|
12972
12972
|
if (row + td.rowSpan - 1 >= this.selected.startRow && row <= this.selected.endRow && tdCol+td.colSpan-1 >= this.selected.startCol && tdCol <= this.selected.endCol) {
|
|
12973
12973
|
|
|
12974
|
-
ninegrid
|
|
12974
|
+
ninegrid.j.querySelectorAll(td).addClass("selected");//.addClass("selected-area");
|
|
12975
12975
|
|
|
12976
12976
|
if (this.selected.startRow == this.selected.endRow && this.selected.startCol == this.selected.endCol) {
|
|
12977
|
-
ninegrid
|
|
12977
|
+
ninegrid.j.querySelectorAll(td).addClass("selected-top").addClass("selected-bottom").addClass("selected-left").addClass("selected-right");
|
|
12978
12978
|
}
|
|
12979
12979
|
else {
|
|
12980
|
-
if (row == this.selected.startRow) ninegrid
|
|
12981
|
-
if (row+td.rowSpan-1 == this.selected.endRow) ninegrid
|
|
12982
|
-
if (tdCol == this.selected.startCol) ninegrid
|
|
12983
|
-
if (tdCol+td.colSpan-1 == this.selected.endCol) ninegrid
|
|
12984
|
-
ninegrid
|
|
12980
|
+
if (row == this.selected.startRow) ninegrid.j.querySelectorAll(td).addClass("selected-top");
|
|
12981
|
+
if (row+td.rowSpan-1 == this.selected.endRow) ninegrid.j.querySelectorAll(td).addClass("selected-bottom");
|
|
12982
|
+
if (tdCol == this.selected.startCol) ninegrid.j.querySelectorAll(td).addClass("selected-left");
|
|
12983
|
+
if (tdCol+td.colSpan-1 == this.selected.endCol) ninegrid.j.querySelectorAll(td).addClass("selected-right");
|
|
12984
|
+
ninegrid.j.querySelectorAll(td).addClass("multi-selected");
|
|
12985
12985
|
}
|
|
12986
12986
|
}
|
|
12987
12987
|
});
|
|
@@ -12996,7 +12996,7 @@ class ngCellSelection
|
|
|
12996
12996
|
for (var i = 0; i < td.rowSpan; i++) {
|
|
12997
12997
|
var row = parseInt(td.dataset.row) * this.#owner.template.length + tr.sectionRowIndex % this.#owner.template.length + i;//tr.sectionRowIndex + this.#owner.dataManager.viewRecords.rawIndex * this.#owner.template.length;
|
|
12998
12998
|
if (row >= this.selected.startRow && row <= this.selected.endRow) {
|
|
12999
|
-
ninegrid
|
|
12999
|
+
ninegrid.j.querySelectorAll(td).addClass("selected-area");
|
|
13000
13000
|
}
|
|
13001
13001
|
}
|
|
13002
13002
|
}
|
|
@@ -13004,7 +13004,7 @@ class ngCellSelection
|
|
|
13004
13004
|
|
|
13005
13005
|
|
|
13006
13006
|
for (var i = this.selected.startCol; i <= this.selected.endCol; i++) {
|
|
13007
|
-
ninegrid
|
|
13007
|
+
ninegrid.j.querySelectorAll(`.col-indicator[data-col="${i}"]`, this.#owner.body).addClass("selected-area");
|
|
13008
13008
|
}
|
|
13009
13009
|
|
|
13010
13010
|
if (this.selected.oldStartRow != this.selected.startRow || this.selected.oldEndRow != this.selected.endRow ||
|
|
@@ -13197,7 +13197,7 @@ class ngCellSelection
|
|
|
13197
13197
|
}
|
|
13198
13198
|
};
|
|
13199
13199
|
|
|
13200
|
-
if ([ninegrid
|
|
13200
|
+
if ([ninegrid.SELECTTYPE.AREA,ninegrid.SELECTTYPE.ROWS,ninegrid.SELECTTYPE.COLS].includes(this.type)) {
|
|
13201
13201
|
$(".ng-table tbody.bindable", this.#owner.body).on("mousemove", onMouseMove);
|
|
13202
13202
|
$(".ng-table tbody.bindable", this.#owner.body).on("mouseenter", onMouseEnter);
|
|
13203
13203
|
$(".ng-table tbody.bindable", this.#owner.body).on("mouseleave", onMouseLeave);
|
|
@@ -13865,8 +13865,8 @@ class ngCheckBox extends ngEditableEx
|
|
|
13865
13865
|
|
|
13866
13866
|
this.shadowRoot.innerHTML = `
|
|
13867
13867
|
<style>
|
|
13868
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
13869
|
-
${ninegrid
|
|
13868
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngCheckBox.css";
|
|
13869
|
+
${ninegrid.getCustomPath(this,"ngCheckBox.css")}
|
|
13870
13870
|
|
|
13871
13871
|
:host {
|
|
13872
13872
|
justify-content: ${this.closest("th,td").getAttribute("text-align") || "center"};
|
|
@@ -13926,11 +13926,11 @@ class ngCheckBox extends ngEditableEx
|
|
|
13926
13926
|
|
|
13927
13927
|
if (!this.closest("tbody")) return;
|
|
13928
13928
|
|
|
13929
|
-
if (ninegrid
|
|
13930
|
-
ninegrid
|
|
13929
|
+
if (ninegrid.isNull(this.value) || this.value == this.trueValue || this.value == this.falseValue) {
|
|
13930
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
13931
13931
|
}
|
|
13932
13932
|
else {
|
|
13933
|
-
ninegrid
|
|
13933
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
13934
13934
|
}
|
|
13935
13935
|
|
|
13936
13936
|
$(this.#target).prop("checked", this.value == this.trueValue);
|
|
@@ -13984,15 +13984,15 @@ class ngColExpand extends HTMLElement
|
|
|
13984
13984
|
|
|
13985
13985
|
this.shadowRoot.innerHTML = `
|
|
13986
13986
|
<style>
|
|
13987
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
13988
|
-
${ninegrid
|
|
13987
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngColExpand.css";
|
|
13988
|
+
${ninegrid.getCustomPath(this,"ngColExpand.css")}
|
|
13989
13989
|
</style>
|
|
13990
13990
|
`;
|
|
13991
13991
|
|
|
13992
13992
|
this.#owner = this.getRootNode().host;
|
|
13993
13993
|
this.#cell = this.closest("th,td");
|
|
13994
13994
|
|
|
13995
|
-
ninegrid
|
|
13995
|
+
ninegrid.j.querySelectorAll(this).addClass("expand");
|
|
13996
13996
|
|
|
13997
13997
|
$(this).off("click", this.#onClick);
|
|
13998
13998
|
$(this).on("click", this.#onClick);
|
|
@@ -14003,7 +14003,7 @@ class ngColExpand extends HTMLElement
|
|
|
14003
14003
|
e.preventDefault();
|
|
14004
14004
|
e.stopPropagation();
|
|
14005
14005
|
|
|
14006
|
-
if (ninegrid
|
|
14006
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) {
|
|
14007
14007
|
this.#collapse();
|
|
14008
14008
|
}
|
|
14009
14009
|
else {
|
|
@@ -14012,7 +14012,7 @@ class ngColExpand extends HTMLElement
|
|
|
14012
14012
|
};
|
|
14013
14013
|
|
|
14014
14014
|
expand = () => {
|
|
14015
|
-
if (ninegrid
|
|
14015
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) return;
|
|
14016
14016
|
|
|
14017
14017
|
$(this).addClass("expand");
|
|
14018
14018
|
this.#cell.style.color = this.#orgColor;
|
|
@@ -14025,7 +14025,7 @@ class ngColExpand extends HTMLElement
|
|
|
14025
14025
|
};
|
|
14026
14026
|
|
|
14027
14027
|
#collapse = () => {
|
|
14028
|
-
if (!ninegrid
|
|
14028
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("expand")) return;
|
|
14029
14029
|
|
|
14030
14030
|
$(this).removeClass("expand");
|
|
14031
14031
|
this.#orgColor = this.#cell.style.color;
|
|
@@ -14311,7 +14311,7 @@ class ngColMover
|
|
|
14311
14311
|
|
|
14312
14312
|
#onPrevMouseDown = e => {
|
|
14313
14313
|
|
|
14314
|
-
if (ninegrid
|
|
14314
|
+
if (ninegrid.j.querySelectorAll(this.#owner).attr("col-movable") != "true") return;
|
|
14315
14315
|
if (e.target.tagName == "NG-FILTER-BUTTON") return;
|
|
14316
14316
|
|
|
14317
14317
|
this.#ready = true;
|
|
@@ -14710,7 +14710,7 @@ class ngColResizer
|
|
|
14710
14710
|
|
|
14711
14711
|
var prev = this.#owner.tableUtils.prev(td);
|
|
14712
14712
|
var next = this.#owner.tableUtils.next(td);
|
|
14713
|
-
var target = this.#owner.getBand(td.dataset.col) == ninegrid
|
|
14713
|
+
var target = this.#owner.getBand(td.dataset.col) == ninegrid.BAND.RIGHT ? ((e.offsetX <= 2) ? $(td) : next) : ((e.offsetX <= 2) ? prev : $(td));
|
|
14714
14714
|
|
|
14715
14715
|
this.#owner.setColumnWidthFit(target[0].dataset.col);
|
|
14716
14716
|
}
|
|
@@ -14874,7 +14874,7 @@ class ngColumns
|
|
|
14874
14874
|
for (var v of [source.thead.cells, source.tfoot.cells, source.tbody.cells, source.fixed.cells]) {
|
|
14875
14875
|
for (var fromCell of v) {
|
|
14876
14876
|
|
|
14877
|
-
ninegrid
|
|
14877
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14878
14878
|
|
|
14879
14879
|
const rowIndex = fromCell.closest("tr").rowIndex;
|
|
14880
14880
|
const targetTr = targetTable.querySelectorAll("tr")[rowIndex];
|
|
@@ -14894,7 +14894,7 @@ class ngColumns
|
|
|
14894
14894
|
for (var v of [source.org.thead.cells, source.org.tfoot.cells, source.org.tbody.cells, source.org.fixed.cells]) {
|
|
14895
14895
|
for (var fromCell of v) {
|
|
14896
14896
|
|
|
14897
|
-
ninegrid
|
|
14897
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14898
14898
|
|
|
14899
14899
|
const targetTable = fromCell.closest("table");
|
|
14900
14900
|
const rowIndex = fromCell.closest("tr").rowIndex;
|
|
@@ -14914,7 +14914,7 @@ class ngColumns
|
|
|
14914
14914
|
|
|
14915
14915
|
for (var fromCell of source.template.cells) {
|
|
14916
14916
|
|
|
14917
|
-
ninegrid
|
|
14917
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14918
14918
|
|
|
14919
14919
|
//const rowIndex = fromCell.closest("tr").rowIndex;
|
|
14920
14920
|
const targetTr = fromCell.closest("tr");
|
|
@@ -14964,18 +14964,18 @@ class ngColumns
|
|
|
14964
14964
|
|
|
14965
14965
|
for (var v of [source.thead.cells, source.tfoot.cells, source.tbody.cells, source.fixed.cells]) {
|
|
14966
14966
|
for (var fromCell of v) {
|
|
14967
|
-
ninegrid
|
|
14967
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14968
14968
|
}
|
|
14969
14969
|
}
|
|
14970
14970
|
|
|
14971
14971
|
for (var v of [source.org.thead.cells, source.org.tfoot.cells, source.org.tbody.cells, source.org.fixed.cells]) {
|
|
14972
14972
|
for (var fromCell of v) {
|
|
14973
|
-
ninegrid
|
|
14973
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14974
14974
|
}
|
|
14975
14975
|
}
|
|
14976
14976
|
|
|
14977
14977
|
for (var fromCell of source.template.cells) {
|
|
14978
|
-
ninegrid
|
|
14978
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14979
14979
|
}
|
|
14980
14980
|
|
|
14981
14981
|
|
|
@@ -15158,8 +15158,8 @@ class ngCombo extends ngEditableEx
|
|
|
15158
15158
|
|
|
15159
15159
|
this.shadowRoot.innerHTML = `
|
|
15160
15160
|
<style>
|
|
15161
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
15162
|
-
${ninegrid
|
|
15161
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngCombo.css";
|
|
15162
|
+
${ninegrid.getCustomPath(this,"ngCombo.css")}
|
|
15163
15163
|
</style>
|
|
15164
15164
|
|
|
15165
15165
|
<button class="btn1" type="button" data-bs-toggle="dropdown" aria-expanded="false" tabindex="-1"></button>
|
|
@@ -15222,7 +15222,7 @@ class ngCombo extends ngEditableEx
|
|
|
15222
15222
|
dataRefresh = (v) => {
|
|
15223
15223
|
|
|
15224
15224
|
if (this.#dataSource) {
|
|
15225
|
-
this.#isValid() ? ninegrid
|
|
15225
|
+
this.#isValid() ? ninegrid.j.querySelectorAll(this).removeClass("invalid") : ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
15226
15226
|
}
|
|
15227
15227
|
|
|
15228
15228
|
this.#target.innerHTML = this.getDisplayText() || "Select";
|
|
@@ -15236,7 +15236,7 @@ class ngCombo extends ngEditableEx
|
|
|
15236
15236
|
|
|
15237
15237
|
#isValid = () => {
|
|
15238
15238
|
|
|
15239
|
-
if (ninegrid
|
|
15239
|
+
if (ninegrid.isNull(this.value)) return true;
|
|
15240
15240
|
|
|
15241
15241
|
var list = (this.multi) ? this.value.split(this.multiSeparator) : [this.value];
|
|
15242
15242
|
|
|
@@ -15282,8 +15282,8 @@ class ngCombo extends ngEditableEx
|
|
|
15282
15282
|
this.#panel.col = this.cell.dataset.col;
|
|
15283
15283
|
this.#panel.row = this.cell.closest("tr").sectionRowIndex;
|
|
15284
15284
|
|
|
15285
|
-
this.#dataSource.length > this.#EXPAND_ROWS ? ninegrid
|
|
15286
|
-
this.multi ? ninegrid
|
|
15285
|
+
this.#dataSource.length > this.#EXPAND_ROWS ? ninegrid.j.querySelectorAll(this.#panel).addClass("expand") : ninegrid.j.querySelectorAll(this.#panel).removeClass("expand");
|
|
15286
|
+
this.multi ? ninegrid.j.querySelectorAll(this.#panel).addClass("multi") : ninegrid.j.querySelectorAll(this.#panel).removeClass("multi");
|
|
15287
15287
|
|
|
15288
15288
|
this.#panel.refresh(this, this.#dataSource, this.#code, this.#items);
|
|
15289
15289
|
|
|
@@ -15297,7 +15297,7 @@ class ngCombo extends ngEditableEx
|
|
|
15297
15297
|
|
|
15298
15298
|
|
|
15299
15299
|
if (this.multi) {
|
|
15300
|
-
if (ninegrid
|
|
15300
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15301
15301
|
h += 12; //위아래 padding
|
|
15302
15302
|
h += 3; //margin
|
|
15303
15303
|
h += 24; // input box
|
|
@@ -15308,7 +15308,7 @@ class ngCombo extends ngEditableEx
|
|
|
15308
15308
|
h += 25; // bottom
|
|
15309
15309
|
}
|
|
15310
15310
|
else {
|
|
15311
|
-
if (ninegrid
|
|
15311
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15312
15312
|
h += 12; //위아래 padding
|
|
15313
15313
|
h += 3; //margin
|
|
15314
15314
|
h += 24; // input box
|
|
@@ -15339,7 +15339,7 @@ class ngCombo extends ngEditableEx
|
|
|
15339
15339
|
"min-height": h,
|
|
15340
15340
|
}).show();
|
|
15341
15341
|
|
|
15342
|
-
if (ninegrid
|
|
15342
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15343
15343
|
$("div", this.#panel).eq(0).find("input").focus().val("");
|
|
15344
15344
|
}
|
|
15345
15345
|
};
|
|
@@ -15379,8 +15379,8 @@ class ngComboPanel extends HTMLElement
|
|
|
15379
15379
|
|
|
15380
15380
|
this.shadowRoot.innerHTML = `
|
|
15381
15381
|
<style>
|
|
15382
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
15383
|
-
${ninegrid
|
|
15382
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngComboPanel.css";
|
|
15383
|
+
${ninegrid.getCustomPath(this,"ngComboPanel.css")}
|
|
15384
15384
|
</style>
|
|
15385
15385
|
|
|
15386
15386
|
<div class="head">
|
|
@@ -15516,7 +15516,7 @@ class ngComboPanel extends HTMLElement
|
|
|
15516
15516
|
#onInput = e => {
|
|
15517
15517
|
var grd = this.shadowRoot.querySelector("nine-grid");
|
|
15518
15518
|
|
|
15519
|
-
ninegrid
|
|
15519
|
+
ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
15520
15520
|
|
|
15521
15521
|
var data = grd.data.getValidDataNF();
|
|
15522
15522
|
data.map(m => { m.__ng.filtered = false; });
|
|
@@ -15534,7 +15534,7 @@ class ngComboPanel extends HTMLElement
|
|
|
15534
15534
|
|
|
15535
15535
|
grd.data.resetRecords();
|
|
15536
15536
|
|
|
15537
|
-
if (grd.data.count() == 0) ninegrid
|
|
15537
|
+
if (grd.data.count() == 0) ninegrid.j.querySelectorAll(grd).removeClass("loading");
|
|
15538
15538
|
|
|
15539
15539
|
if (this.#timer) {
|
|
15540
15540
|
clearTimeout(this.#timer);
|
|
@@ -15650,9 +15650,9 @@ class ngComboPanel extends HTMLElement
|
|
|
15650
15650
|
}
|
|
15651
15651
|
*/
|
|
15652
15652
|
|
|
15653
|
-
var w = 16 + (ninegrid
|
|
15653
|
+
var w = 16 + (ninegrid.j.querySelectorAll(this).hasClass("expand") ? 0 : 0) + 20;
|
|
15654
15654
|
|
|
15655
|
-
if (ninegrid
|
|
15655
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("multi")) {
|
|
15656
15656
|
$("col", grd.body).each((i,el) => { w += parseInt(el.getAttribute("width")); });
|
|
15657
15657
|
}
|
|
15658
15658
|
else {
|
|
@@ -15696,7 +15696,7 @@ class ngContextMenu
|
|
|
15696
15696
|
var font = $(this.#panel).css("font");
|
|
15697
15697
|
var w = 150;
|
|
15698
15698
|
for (const item of this.#items) {
|
|
15699
|
-
w = Math.max(w, ninegrid
|
|
15699
|
+
w = Math.max(w, ninegrid.measureTextSize(item.name, font).width + 60);
|
|
15700
15700
|
}
|
|
15701
15701
|
|
|
15702
15702
|
$(this.#panel).css({
|
|
@@ -15783,7 +15783,7 @@ class ngContextMenuPanel extends HTMLElement
|
|
|
15783
15783
|
//$("li", this).on("touchmove", this.#onMouseOver);
|
|
15784
15784
|
$("li", this).on("mouseover", this.#onMouseOver);
|
|
15785
15785
|
|
|
15786
|
-
$("li", this).on("mouseout", e => { ninegrid
|
|
15786
|
+
$("li", this).on("mouseout", e => { ninegrid.j.querySelectorAll(e.currentTarget).removeClass("visible"); });
|
|
15787
15787
|
};
|
|
15788
15788
|
|
|
15789
15789
|
open = () => {
|
|
@@ -15809,12 +15809,12 @@ class ngContextMenuPanel extends HTMLElement
|
|
|
15809
15809
|
|
|
15810
15810
|
#onMouseOver = e => {
|
|
15811
15811
|
|
|
15812
|
-
ninegrid
|
|
15812
|
+
ninegrid.j.querySelectorAll(e.currentTarget).addClass("visible");
|
|
15813
15813
|
|
|
15814
15814
|
var font = $(this).css("font");
|
|
15815
15815
|
var w = 150;
|
|
15816
15816
|
$("ul > li:visible > span", e.currentTarget).each((i,el) => {
|
|
15817
|
-
w = Math.max(w, ninegrid
|
|
15817
|
+
w = Math.max(w, ninegrid.measureTextSize($(el).text(), font).width + 60);
|
|
15818
15818
|
});
|
|
15819
15819
|
|
|
15820
15820
|
$("ul", e.currentTarget).eq(0).css({
|
|
@@ -15847,7 +15847,7 @@ class ngCustomEvent
|
|
|
15847
15847
|
|
|
15848
15848
|
this.#resetEvent();
|
|
15849
15849
|
|
|
15850
|
-
this.#owner.addEventListener(ninegrid
|
|
15850
|
+
this.#owner.addEventListener(ninegrid.EVENT.LAYOUT_CHANGED, e => {
|
|
15851
15851
|
this.#resetEvent();
|
|
15852
15852
|
});
|
|
15853
15853
|
}
|
|
@@ -15868,7 +15868,7 @@ class ngCustomEvent
|
|
|
15868
15868
|
|
|
15869
15869
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15870
15870
|
const cell = e.target.closest("th,td");
|
|
15871
|
-
const eventType = e.detail == 1 ? ninegrid
|
|
15871
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.CELL_CLICK : ninegrid.EVENT.CELL_DBL_CLICK;
|
|
15872
15872
|
|
|
15873
15873
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15874
15874
|
customEvent.col = cell.dataset.col;
|
|
@@ -15876,7 +15876,7 @@ class ngCustomEvent
|
|
|
15876
15876
|
customEvent.subrow = parseInt(cell.dataset.matrixRow) % parseInt(cell.dataset.row);
|
|
15877
15877
|
customEvent.bind = cell.dataset.bind;
|
|
15878
15878
|
|
|
15879
|
-
ninegrid
|
|
15879
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15880
15880
|
|
|
15881
15881
|
this.#owner.dispatchEvent(customEvent);
|
|
15882
15882
|
};
|
|
@@ -15887,12 +15887,12 @@ class ngCustomEvent
|
|
|
15887
15887
|
|
|
15888
15888
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15889
15889
|
const cell = e.target.closest("th,td");
|
|
15890
|
-
const eventType = e.detail == 1 ? ninegrid
|
|
15890
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.HEADCELL_CLICK : ninegrid.EVENT.HEADCELL_DBL_CLICK;
|
|
15891
15891
|
|
|
15892
15892
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15893
15893
|
customEvent.col = cell.dataset.col;
|
|
15894
15894
|
|
|
15895
|
-
ninegrid
|
|
15895
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15896
15896
|
|
|
15897
15897
|
this.#owner.dispatchEvent(customEvent);
|
|
15898
15898
|
};
|
|
@@ -15903,12 +15903,12 @@ class ngCustomEvent
|
|
|
15903
15903
|
|
|
15904
15904
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15905
15905
|
const cell = e.target.closest("th,td");
|
|
15906
|
-
const eventType = e.detail == 1 ? ninegrid
|
|
15906
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.FOOTCELL_CLICK : ninegrid.EVENT.FOOTCELL_DBL_CLICK;
|
|
15907
15907
|
|
|
15908
15908
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15909
15909
|
customEvent.col = cell.dataset.col;
|
|
15910
15910
|
|
|
15911
|
-
ninegrid
|
|
15911
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15912
15912
|
|
|
15913
15913
|
this.#owner.dispatchEvent(customEvent);
|
|
15914
15914
|
};
|
|
@@ -16056,7 +16056,7 @@ class ngData
|
|
|
16056
16056
|
this.source = v;
|
|
16057
16057
|
|
|
16058
16058
|
for (var i = 0; i < v.length; i++) {
|
|
16059
|
-
this.#records[i].__ng._[ninegrid
|
|
16059
|
+
this.#records[i].__ng._[ninegrid.ROW.ID] = v[i].__ng._[ninegrid.ROW.ID];
|
|
16060
16060
|
//this.#records[i].__ninegrid.rowState = v[i].__ng.rowState;
|
|
16061
16061
|
|
|
16062
16062
|
this.#nextId = Math.max(this.#nextId, v[i].__ng.rowid);
|
|
@@ -16069,14 +16069,14 @@ class ngData
|
|
|
16069
16069
|
|
|
16070
16070
|
getId = (o) => {
|
|
16071
16071
|
|
|
16072
|
-
return o.__ng._[ninegrid
|
|
16072
|
+
return o.__ng._[ninegrid.ROW.ID];
|
|
16073
16073
|
}
|
|
16074
16074
|
|
|
16075
16075
|
get default() {
|
|
16076
16076
|
|
|
16077
16077
|
return {
|
|
16078
16078
|
//rowid : this.nextId,//nextId + index,
|
|
16079
|
-
rowState: ninegrid
|
|
16079
|
+
rowState: ninegrid.ROW_STATE.EMPTY,
|
|
16080
16080
|
deleted : false,
|
|
16081
16081
|
filtered: false,
|
|
16082
16082
|
pin : false,
|
|
@@ -16091,7 +16091,7 @@ class ngData
|
|
|
16091
16091
|
0, // INDEX
|
|
16092
16092
|
0, // ORDER
|
|
16093
16093
|
0, // VISIBLE_ROW
|
|
16094
|
-
ninegrid
|
|
16094
|
+
ninegrid.ROW_STATE.EMPTY, // STATE
|
|
16095
16095
|
false, // FILTER
|
|
16096
16096
|
false, // PIN
|
|
16097
16097
|
true, // EXPAND
|
|
@@ -16144,14 +16144,14 @@ class ngData
|
|
|
16144
16144
|
#indexOf = (rec1, row, rec2) => {
|
|
16145
16145
|
const rowData = rec1[row];
|
|
16146
16146
|
|
|
16147
|
-
return rec2.findIndex(m => { return m.__ng._[ninegrid
|
|
16147
|
+
return rec2.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == rowData.__ng._[ninegrid.ROW.ID]; });
|
|
16148
16148
|
};
|
|
16149
16149
|
|
|
16150
16150
|
moveRow = (row1, row2) => {
|
|
16151
16151
|
|
|
16152
16152
|
if (row1 == row2) return;
|
|
16153
16153
|
|
|
16154
|
-
ninegrid
|
|
16154
|
+
ninegrid.move(this.#parent.rawRecords, this.total.indexOf(row1), this.total.indexOf(row2));
|
|
16155
16155
|
this.resetRecords();
|
|
16156
16156
|
|
|
16157
16157
|
this.#parent.owner.dataManager.viewRecords.reset();
|
|
@@ -16194,7 +16194,7 @@ class ngData
|
|
|
16194
16194
|
if (td.length <= 0) return;
|
|
16195
16195
|
const col = td.eq(0)[0].dataset.col;
|
|
16196
16196
|
//var th = $(`thead th[data-col=${col}]`, this.#parent.owner.body).not(".col-indicator");
|
|
16197
|
-
const th = ninegrid
|
|
16197
|
+
const th = ninegrid.j.querySelectorAll(`thead th[data-col="${col}"]:not(.col-indicator)`, this.#parent.owner.body);
|
|
16198
16198
|
|
|
16199
16199
|
th.removeClass("deleted").removeClass("added").removeClass("updated");
|
|
16200
16200
|
if (updateData.delete.length > 0) th.addClass("deleted");
|
|
@@ -16211,9 +16211,9 @@ class ngData
|
|
|
16211
16211
|
arr.forEach((o,i) => {
|
|
16212
16212
|
o.__ng = this.default;
|
|
16213
16213
|
o.__ng.rowid = this.nextId;
|
|
16214
|
-
o.__ng.rowState = ninegrid
|
|
16214
|
+
o.__ng.rowState = ninegrid.ROW_STATE.INSERT;
|
|
16215
16215
|
|
|
16216
|
-
o.__ng._[ninegrid
|
|
16216
|
+
o.__ng._[ninegrid.ROW.ID] = o.__ng.rowid;
|
|
16217
16217
|
});
|
|
16218
16218
|
|
|
16219
16219
|
this.onRowStateChanged();
|
|
@@ -16235,13 +16235,13 @@ class ngData
|
|
|
16235
16235
|
//this.#recordsNF.forEach((o,i) => { o.__ng._[ninegrid.ROW.INDEX] = i; });
|
|
16236
16236
|
//this.#recordsNF.filter(m => { return !m.__ng.deleted && !m.__ng.filtered && m.__ng.visible; } ).forEach((o,i) => { o.__ng._[ninegrid.ROW.ORDER] = i + 1; });
|
|
16237
16237
|
|
|
16238
|
-
this.#parent.rawRecords.forEach((o,i) => { o.__ng._[ninegrid
|
|
16239
|
-
this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng.filtered && m.__ng.visible; } ).forEach((o,i) => { o.__ng._[ninegrid
|
|
16238
|
+
this.#parent.rawRecords.forEach((o,i) => { o.__ng._[ninegrid.ROW.INDEX] = i; });
|
|
16239
|
+
this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng.filtered && m.__ng.visible; } ).forEach((o,i) => { o.__ng._[ninegrid.ROW.ORDER] = i + 1; });
|
|
16240
16240
|
|
|
16241
|
-
const arr = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && m.__ng._[ninegrid
|
|
16242
|
-
arr.forEach((o,i) => { o.__ng._[ninegrid
|
|
16241
|
+
const arr = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && m.__ng._[ninegrid.ROW.PIN]; } );
|
|
16242
|
+
arr.forEach((o,i) => { o.__ng._[ninegrid.ROW.VISIBLE_ROW] = (arr.length - i) * -1; });
|
|
16243
16243
|
|
|
16244
|
-
this.#records.forEach((o,i) => { o.__ng._[ninegrid
|
|
16244
|
+
this.#records.forEach((o,i) => { o.__ng._[ninegrid.ROW.VISIBLE_ROW] = i; });
|
|
16245
16245
|
//!m.__ng.deleted && !m.__ng.pin && !m.__ng._[ninegrid.ROW.PIN] && !m.__ng.filtered && m.__ng.visible && m.__ng.paging;
|
|
16246
16246
|
|
|
16247
16247
|
};
|
|
@@ -16280,7 +16280,7 @@ class ngData
|
|
|
16280
16280
|
resetRecords = () => {
|
|
16281
16281
|
|
|
16282
16282
|
this.#recordsNF = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted } );
|
|
16283
|
-
this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[ninegrid
|
|
16283
|
+
this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[ninegrid.ROW.PIN] && !m.__ng._[ninegrid.ROW.COLLAPSE] && !m.__ng.filtered && m.__ng.visible && m.__ng.paging; } );
|
|
16284
16284
|
//this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[ninegrid.ROW.PIN] && !m.__ng._[ninegrid.ROW.COLLAPSE] && !m.__ng.filtered && m.__ng.visible; } );
|
|
16285
16285
|
|
|
16286
16286
|
this.resetIndex();
|
|
@@ -16296,7 +16296,7 @@ class ngData
|
|
|
16296
16296
|
};
|
|
16297
16297
|
|
|
16298
16298
|
for (const colnm of this.#owner.fields.get()) {
|
|
16299
|
-
o.v.push(ninegrid
|
|
16299
|
+
o.v.push(ninegrid.nvl(json[colnm], "")); /** checklist: 숫자형식 체크해서 0으로 변경해야함 */
|
|
16300
16300
|
}
|
|
16301
16301
|
arr.push(o);
|
|
16302
16302
|
});
|
|
@@ -16332,7 +16332,7 @@ class ngData
|
|
|
16332
16332
|
|
|
16333
16333
|
getValidData = () => {
|
|
16334
16334
|
//if (this.#records.length == 0) this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng.pin && !m.__ng.filtered && m.__ng.visible && m.__ng.paging; } );
|
|
16335
|
-
if (this.#records.length == 0) this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[ninegrid
|
|
16335
|
+
if (this.#records.length == 0) this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[ninegrid.ROW.PIN] && !m.__ng._[ninegrid.ROW.COLLAPSE] && m.__ng._[ninegrid.ROW.VISIBLE] && !m.__ng.filtered && m.__ng.visible && m.__ng.paging; } );
|
|
16336
16336
|
return this.#records;
|
|
16337
16337
|
}
|
|
16338
16338
|
getValidDataNF = () => {
|
|
@@ -16345,7 +16345,7 @@ class ngData
|
|
|
16345
16345
|
|
|
16346
16346
|
|
|
16347
16347
|
conv = (arr) => {
|
|
16348
|
-
if (ninegrid
|
|
16348
|
+
if (ninegrid.isNull(arr)) return arr;
|
|
16349
16349
|
|
|
16350
16350
|
if (Array.isArray(arr)) {
|
|
16351
16351
|
var r = [];
|
|
@@ -16376,7 +16376,7 @@ class ngData
|
|
|
16376
16376
|
}
|
|
16377
16377
|
}
|
|
16378
16378
|
conv2 = (arr) => {
|
|
16379
|
-
if (ninegrid
|
|
16379
|
+
if (ninegrid.isNull(arr)) return arr;
|
|
16380
16380
|
|
|
16381
16381
|
if (Array.isArray(arr)) {
|
|
16382
16382
|
var r = [];
|
|
@@ -16427,11 +16427,11 @@ class ngData
|
|
|
16427
16427
|
*/
|
|
16428
16428
|
changeRowState = (state, fromIndex, toIndex) => {
|
|
16429
16429
|
const to = (v) => {
|
|
16430
|
-
if ([ninegrid
|
|
16430
|
+
if ([ninegrid.ROW_STATE.EMPTY, ninegrid.ROW_STATE.NORMAL].includes(state)) v.__ng.o = {};
|
|
16431
16431
|
v.__ng.rowState = state;
|
|
16432
16432
|
};
|
|
16433
16433
|
|
|
16434
|
-
if (!state) state = ninegrid
|
|
16434
|
+
if (!state) state = ninegrid.ROW_STATE.EMPTY;
|
|
16435
16435
|
if (!fromIndex && !toIndex) { fromIndex = 0; toIndex = this.count() - 1; }
|
|
16436
16436
|
if (!fromIndex) fromIndex = 0;
|
|
16437
16437
|
if (!toIndex) toIndex = fromIndex;//this.count() - 1;
|
|
@@ -16475,7 +16475,7 @@ class ngData
|
|
|
16475
16475
|
#dataChanged = (row, bind, oldValue, newValue) => {
|
|
16476
16476
|
if (oldValue == newValue) return;
|
|
16477
16477
|
|
|
16478
|
-
const customEvent = new CustomEvent(ninegrid
|
|
16478
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.DATA_CHANGED, { bubbles: true, detail: {} });
|
|
16479
16479
|
customEvent.row = row;
|
|
16480
16480
|
customEvent.bind = bind;
|
|
16481
16481
|
customEvent.oldvalue = oldValue;
|
|
@@ -16521,15 +16521,15 @@ class ngData
|
|
|
16521
16521
|
|
|
16522
16522
|
this.#parent.rawRecords = this.#parent.rawRecords.concat(this.#defaultInsert(arr));
|
|
16523
16523
|
|
|
16524
|
-
const arr2 = this.#parent.rawRecords.map(m => { return m.__ng._[ninegrid
|
|
16524
|
+
const arr2 = this.#parent.rawRecords.map(m => { return m.__ng._[ninegrid.ROW.ORIGIN_ORDER]; });
|
|
16525
16525
|
if (arr2.length > 0) {
|
|
16526
16526
|
const maxOrder = arr2.reduce( function (a, b) {
|
|
16527
16527
|
return a > b ? a : b;
|
|
16528
16528
|
});
|
|
16529
16529
|
|
|
16530
16530
|
this.#parent.rawRecords.forEach((o,i) => {
|
|
16531
|
-
if (o.__ng._[ninegrid
|
|
16532
|
-
o.__ng._[ninegrid
|
|
16531
|
+
if (o.__ng._[ninegrid.ROW.ORIGIN_ORDER] < 0) {
|
|
16532
|
+
o.__ng._[ninegrid.ROW.ORIGIN_ORDER] = maxOrder + 1 + i;
|
|
16533
16533
|
}
|
|
16534
16534
|
});
|
|
16535
16535
|
}
|
|
@@ -16537,7 +16537,7 @@ class ngData
|
|
|
16537
16537
|
this.resetRecords();
|
|
16538
16538
|
|
|
16539
16539
|
const row = this.count() - 1;
|
|
16540
|
-
if (!updateState) this.changeRowState(ninegrid
|
|
16540
|
+
if (!updateState) this.changeRowState(ninegrid.ROW_STATE.EMPTY, row - arr.length + 1, row);
|
|
16541
16541
|
//this.#parent.owner.refresh();
|
|
16542
16542
|
this.#parent.viewRecords.reset();
|
|
16543
16543
|
|
|
@@ -16563,8 +16563,8 @@ class ngData
|
|
|
16563
16563
|
var arr = this.#json2Array(dataSource);
|
|
16564
16564
|
|
|
16565
16565
|
/** 후방 원순서 증가 */
|
|
16566
|
-
const originOrder = this.#parent.rawRecords[at].__ng._[ninegrid
|
|
16567
|
-
this.#parent.rawRecords.filter(m => {return m.__ng._[ninegrid
|
|
16566
|
+
const originOrder = this.#parent.rawRecords[at].__ng._[ninegrid.ROW.ORIGIN_ORDER];
|
|
16567
|
+
this.#parent.rawRecords.filter(m => {return m.__ng._[ninegrid.ROW.ORIGIN_ORDER] >= originOrder}).forEach(v => { v.__ng._[ninegrid.ROW.ORIGIN_ORDER] += arr.length; });
|
|
16568
16568
|
/**
|
|
16569
16569
|
this.#parent.rawRecords.forEach((o,i) => {
|
|
16570
16570
|
if (i >= at) {
|
|
@@ -16574,7 +16574,7 @@ class ngData
|
|
|
16574
16574
|
|
|
16575
16575
|
arr = this.#defaultInsert(arr);
|
|
16576
16576
|
arr.forEach((o,i) => {
|
|
16577
|
-
o.__ng._[ninegrid
|
|
16577
|
+
o.__ng._[ninegrid.ROW.ORIGIN_ORDER] = originOrder + i;
|
|
16578
16578
|
});
|
|
16579
16579
|
|
|
16580
16580
|
this.#parent.rawRecords.splice(at, 0, ...arr);
|
|
@@ -16582,7 +16582,7 @@ class ngData
|
|
|
16582
16582
|
|
|
16583
16583
|
this.resetRecords();
|
|
16584
16584
|
|
|
16585
|
-
if (!updateState) this.changeRowState(ninegrid
|
|
16585
|
+
if (!updateState) this.changeRowState(ninegrid.ROW_STATE.EMPTY, at, at + arr.length - 1);
|
|
16586
16586
|
|
|
16587
16587
|
//this.#parent.owner.refresh();
|
|
16588
16588
|
this.#parent.viewRecords.reset();
|
|
@@ -16594,11 +16594,11 @@ class ngData
|
|
|
16594
16594
|
|
|
16595
16595
|
var changed = false;
|
|
16596
16596
|
arr.sort((a,b) => {return b-a}).forEach(rowidx => {
|
|
16597
|
-
if (this.#records[rowidx].__ng.rowState == ninegrid
|
|
16598
|
-
ninegrid
|
|
16597
|
+
if (this.#records[rowidx].__ng.rowState == ninegrid.ROW_STATE.INSERT) {
|
|
16598
|
+
ninegrid.removeIf(this.#parent.rawRecords, item => { return item.__ng.rowid == this.#records[rowidx].__ng.rowid; } );
|
|
16599
16599
|
}
|
|
16600
16600
|
else {
|
|
16601
|
-
this.#parent.rawRecords.filter(item => { return item.__ng.rowid == this.#records[rowidx].__ng.rowid; } ).map(item => { item.__ng.deleted = true; item.__ng.rowState = ninegrid
|
|
16601
|
+
this.#parent.rawRecords.filter(item => { return item.__ng.rowid == this.#records[rowidx].__ng.rowid; } ).map(item => { item.__ng.deleted = true; item.__ng.rowState = ninegrid.ROW_STATE.DELETE; });
|
|
16602
16602
|
changed = true;
|
|
16603
16603
|
}
|
|
16604
16604
|
});
|
|
@@ -16638,8 +16638,8 @@ class ngData
|
|
|
16638
16638
|
arr = [at];
|
|
16639
16639
|
}*/
|
|
16640
16640
|
else if (typeof at === "object") {
|
|
16641
|
-
const index = this.#records.findIndex(m => { return m.__ng._[ninegrid
|
|
16642
|
-
if (index < 0) throw new Error(`${at.__ng._[ninegrid
|
|
16641
|
+
const index = this.#records.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == at.__ng._[ninegrid.ROW.ID]; });
|
|
16642
|
+
if (index < 0) throw new Error(`${at.__ng._[ninegrid.ROW.ID]} not found.`);
|
|
16643
16643
|
arr = [index];
|
|
16644
16644
|
}
|
|
16645
16645
|
else {
|
|
@@ -16660,7 +16660,7 @@ class ngData
|
|
|
16660
16660
|
deleteFromId = (rowId) => {
|
|
16661
16661
|
|
|
16662
16662
|
var rec = this.records();
|
|
16663
|
-
const at = rec.findIndex(m => { return m.__ng._[ninegrid
|
|
16663
|
+
const at = rec.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == rowId; });
|
|
16664
16664
|
|
|
16665
16665
|
if (at < 0) throw new Error(`${rowId} not found.`);
|
|
16666
16666
|
|
|
@@ -16671,7 +16671,7 @@ class ngData
|
|
|
16671
16671
|
#update = (rec, o, at) => {
|
|
16672
16672
|
|
|
16673
16673
|
if (typeof at === "undefined") {
|
|
16674
|
-
at = rec.findIndex(m => { return m.__ng._[ninegrid
|
|
16674
|
+
at = rec.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == o.__ng._[ninegrid.ROW.ID]; });
|
|
16675
16675
|
}
|
|
16676
16676
|
else if (typeof at === "number" || typeof at === "string") {
|
|
16677
16677
|
at = parseInt(at);
|
|
@@ -16699,7 +16699,7 @@ class ngData
|
|
|
16699
16699
|
rowData.v[COL_IDX] = newValue;
|
|
16700
16700
|
|
|
16701
16701
|
if (oldValue != newValue){
|
|
16702
|
-
rowData.__ng.rowState = ninegrid
|
|
16702
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16703
16703
|
changed = true;
|
|
16704
16704
|
|
|
16705
16705
|
this.#dataChanged(at, colnm, oldValue, newValue);
|
|
@@ -16749,12 +16749,12 @@ class ngData
|
|
|
16749
16749
|
//var rowData = records(index);
|
|
16750
16750
|
var oldValue = rowData.v[COL_IDX];
|
|
16751
16751
|
|
|
16752
|
-
if (rowData.v[COL_IDX] != value && rowData.__ng.rowState != ninegrid
|
|
16752
|
+
if (rowData.v[COL_IDX] != value && rowData.__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
16753
16753
|
//if (!rowData.__ng.org) rowData.__ng.org = {};
|
|
16754
16754
|
if (!rowData.__ng.o.hasOwnProperty(colnm)) rowData.__ng.o[colnm] = oldValue;
|
|
16755
16755
|
|
|
16756
16756
|
if (updateRowState) {
|
|
16757
|
-
rowData.__ng.rowState = ninegrid
|
|
16757
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16758
16758
|
this.onRowStateChanged(); // thead row-state marking
|
|
16759
16759
|
}
|
|
16760
16760
|
}
|
|
@@ -16791,11 +16791,11 @@ class ngData
|
|
|
16791
16791
|
//var rowData = records(index);
|
|
16792
16792
|
rowData.v[colIndex];
|
|
16793
16793
|
|
|
16794
|
-
if (rowData.v[colIndex] != value && rowData.__ng.rowState != ninegrid
|
|
16794
|
+
if (rowData.v[colIndex] != value && rowData.__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
16795
16795
|
//if (!rowData.__ng.o.hasOwnProperty(colnm)) rowData.__ng.o[colnm] = oldValue;
|
|
16796
16796
|
|
|
16797
16797
|
if (updateRowState) {
|
|
16798
|
-
rowData.__ng.rowState = ninegrid
|
|
16798
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16799
16799
|
}
|
|
16800
16800
|
}
|
|
16801
16801
|
|
|
@@ -16816,14 +16816,14 @@ class ngData
|
|
|
16816
16816
|
}
|
|
16817
16817
|
else {
|
|
16818
16818
|
return {
|
|
16819
|
-
insert: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid
|
|
16820
|
-
update: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid
|
|
16821
|
-
delete: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid
|
|
16819
|
+
insert: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.INSERT; } ) ),
|
|
16820
|
+
update: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.UPDATE; } ) ),
|
|
16821
|
+
delete: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.DELETE; } ) ),
|
|
16822
16822
|
};
|
|
16823
16823
|
}
|
|
16824
16824
|
};
|
|
16825
16825
|
isChanged = () => {
|
|
16826
|
-
const arr = this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid
|
|
16826
|
+
const arr = this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.INSERT || m.__ng.rowState == ninegrid.ROW_STATE.UPDATE || m.__ng.rowState == ninegrid.ROW_STATE.DELETE; } );
|
|
16827
16827
|
return arr.length > 0;
|
|
16828
16828
|
}
|
|
16829
16829
|
|
|
@@ -16842,7 +16842,7 @@ class ngData
|
|
|
16842
16842
|
|
|
16843
16843
|
if (!records || records.length <= 0) return;
|
|
16844
16844
|
|
|
16845
|
-
if (ninegrid
|
|
16845
|
+
if (ninegrid.isNull(at)) {
|
|
16846
16846
|
return this.conv2(records);
|
|
16847
16847
|
}
|
|
16848
16848
|
|
|
@@ -16873,10 +16873,10 @@ class ngData
|
|
|
16873
16873
|
* return : 모든 행의 데이타 값을 Array 배열로 반환
|
|
16874
16874
|
*/
|
|
16875
16875
|
records = (at) => {
|
|
16876
|
-
return (ninegrid
|
|
16876
|
+
return (ninegrid.isNull(at)) ? this.getValidData() : this.getValidData(at);
|
|
16877
16877
|
}
|
|
16878
16878
|
recordsNF = (at) => {
|
|
16879
|
-
return (ninegrid
|
|
16879
|
+
return (ninegrid.isNull(at)) ? this.getValidDataNF() : this.getValidDataNF(at);
|
|
16880
16880
|
}
|
|
16881
16881
|
|
|
16882
16882
|
/**
|
|
@@ -16943,11 +16943,11 @@ class ngData
|
|
|
16943
16943
|
|
|
16944
16944
|
mid = parseInt((start+end)/2);
|
|
16945
16945
|
|
|
16946
|
-
if (target === arr[mid].__ng._[ninegrid
|
|
16946
|
+
if (target === arr[mid].__ng._[ninegrid.ROW.INDEX]) {
|
|
16947
16947
|
return mid;
|
|
16948
16948
|
}
|
|
16949
16949
|
else {
|
|
16950
|
-
if (target < arr[mid].__ng._[ninegrid
|
|
16950
|
+
if (target < arr[mid].__ng._[ninegrid.ROW.INDEX]){
|
|
16951
16951
|
end = mid - 1;
|
|
16952
16952
|
}
|
|
16953
16953
|
else {
|
|
@@ -17082,7 +17082,7 @@ class ngDataManager
|
|
|
17082
17082
|
|
|
17083
17083
|
this.exprFunction = (s) => {
|
|
17084
17084
|
|
|
17085
|
-
s = s.replaceAll("ninegrid.ROW.ORDER", ninegrid
|
|
17085
|
+
s = s.replaceAll("ninegrid.ROW.ORDER", ninegrid.ROW.ORDER);
|
|
17086
17086
|
|
|
17087
17087
|
let args = '...args';
|
|
17088
17088
|
let body = 'let [data, currow, all] = args; currow = Number(currow); return ' + s + ';';
|
|
@@ -17136,8 +17136,8 @@ class ngDataManager
|
|
|
17136
17136
|
this.getColumn = (rowidx,colnm) => { return this.data.get(rowidx, colnm); };
|
|
17137
17137
|
this.setColumn = (rowidx,colnm,v) => {
|
|
17138
17138
|
rowidx = parseInt(rowidx);
|
|
17139
|
-
if (this.data.get(rowidx)[colnm] != v && this.data.get(rowidx).__ng.rowState != ninegrid
|
|
17140
|
-
this.data.get(rowidx).__ng.rowState = ninegrid
|
|
17139
|
+
if (this.data.get(rowidx)[colnm] != v && this.data.get(rowidx).__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
17140
|
+
this.data.get(rowidx).__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
17141
17141
|
this.data.onRowStateChanged();
|
|
17142
17142
|
}
|
|
17143
17143
|
this.setColumnSilent(rowidx,colnm,v);
|
|
@@ -17221,8 +17221,8 @@ class ngExpandIcon extends HTMLElement
|
|
|
17221
17221
|
|
|
17222
17222
|
this.shadowRoot.innerHTML = `
|
|
17223
17223
|
<style>
|
|
17224
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
17225
|
-
${ninegrid
|
|
17224
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandIcon.css";
|
|
17225
|
+
${ninegrid.getCustomPath(this,"ngExpandIcon.css")}
|
|
17226
17226
|
|
|
17227
17227
|
:host {
|
|
17228
17228
|
width: ${width};
|
|
@@ -17250,7 +17250,7 @@ class ngExpandIcon extends HTMLElement
|
|
|
17250
17250
|
case "rect":
|
|
17251
17251
|
case "check":
|
|
17252
17252
|
case "svg":
|
|
17253
|
-
ninegrid
|
|
17253
|
+
ninegrid.j.querySelectorAll("circle,rect,svg", this.shadowRoot).attr("fill", this.getAttribute(entry.attributeName));
|
|
17254
17254
|
break;
|
|
17255
17255
|
}
|
|
17256
17256
|
break;
|
|
@@ -17261,7 +17261,7 @@ class ngExpandIcon extends HTMLElement
|
|
|
17261
17261
|
this.shadowRoot.querySelector("div").innerHTML = this.getAttribute(entry.attributeName);
|
|
17262
17262
|
break;
|
|
17263
17263
|
case "img":
|
|
17264
|
-
ninegrid
|
|
17264
|
+
ninegrid.j.querySelectorAll("img", this.shadowRoot).attr("src", this.getAttribute(entry.attributeName));
|
|
17265
17265
|
break;
|
|
17266
17266
|
}
|
|
17267
17267
|
break;
|
|
@@ -17287,8 +17287,8 @@ class ngExpandCheck extends HTMLElement
|
|
|
17287
17287
|
|
|
17288
17288
|
this.shadowRoot.innerHTML = `
|
|
17289
17289
|
<style>
|
|
17290
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
17291
|
-
${ninegrid
|
|
17290
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandCheck.css";
|
|
17291
|
+
${ninegrid.getCustomPath(this,"ngExpandCheck.css")}
|
|
17292
17292
|
</style>
|
|
17293
17293
|
|
|
17294
17294
|
<input type="checkbox" />
|
|
@@ -17308,8 +17308,8 @@ class ngExpandButton extends HTMLElement
|
|
|
17308
17308
|
|
|
17309
17309
|
this.shadowRoot.innerHTML = `
|
|
17310
17310
|
<style>
|
|
17311
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
17312
|
-
${ninegrid
|
|
17311
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandButton.css";
|
|
17312
|
+
${ninegrid.getCustomPath(this,"ngExpandButton.css")}
|
|
17313
17313
|
</style>
|
|
17314
17314
|
|
|
17315
17315
|
<button>...</button>
|
|
@@ -17343,7 +17343,7 @@ class ngExportExcel
|
|
|
17343
17343
|
afterFunc : () => {},
|
|
17344
17344
|
};
|
|
17345
17345
|
|
|
17346
|
-
var fileName = ninegrid
|
|
17346
|
+
var fileName = ninegrid.nvl(_option.fileName, "temp");
|
|
17347
17347
|
|
|
17348
17348
|
const _download = async (workbook, fileName) => {
|
|
17349
17349
|
|
|
@@ -17419,7 +17419,7 @@ class ngExportExcel
|
|
|
17419
17419
|
|
|
17420
17420
|
var v = "";
|
|
17421
17421
|
|
|
17422
|
-
if (!ninegrid
|
|
17422
|
+
if (!ninegrid.isNull(td.dataset.expr)) {
|
|
17423
17423
|
try {
|
|
17424
17424
|
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17425
17425
|
v = this.#owner.exprFunction(td.dataset.expr).call(this, rowData, rowIndex);
|
|
@@ -17428,7 +17428,7 @@ class ngExportExcel
|
|
|
17428
17428
|
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17429
17429
|
}
|
|
17430
17430
|
}
|
|
17431
|
-
else if (!ninegrid
|
|
17431
|
+
else if (!ninegrid.isNull(td.dataset.bind)) {
|
|
17432
17432
|
//const COL_IDX = this.#owner.fields.indexOf(td.dataset.bind);
|
|
17433
17433
|
//v = rowData.v[COL_IDX] || "";
|
|
17434
17434
|
v = rowData[td.dataset.bind] || "";
|
|
@@ -18019,8 +18019,8 @@ class ngFilterPanel extends HTMLElement
|
|
|
18019
18019
|
|
|
18020
18020
|
this.shadowRoot.innerHTML = `
|
|
18021
18021
|
<style>
|
|
18022
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18023
|
-
${ninegrid
|
|
18022
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngFilterPanel.css";
|
|
18023
|
+
${ninegrid.getCustomPath(this,"ngFilterPanel.css")}
|
|
18024
18024
|
</style>
|
|
18025
18025
|
|
|
18026
18026
|
<div class="head">
|
|
@@ -18225,8 +18225,8 @@ class ngFoot extends HTMLElement
|
|
|
18225
18225
|
|
|
18226
18226
|
this.shadowRoot.innerHTML = `
|
|
18227
18227
|
<style>
|
|
18228
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18229
|
-
${ninegrid
|
|
18228
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngFoot.css";
|
|
18229
|
+
${ninegrid.getCustomPath(this,"ngFoot.css")}
|
|
18230
18230
|
</style>
|
|
18231
18231
|
|
|
18232
18232
|
<ng-layout></ng-layout>
|
|
@@ -18273,7 +18273,7 @@ class ngLayout extends HTMLElement
|
|
|
18273
18273
|
if (this.#tables.length <= 1) $(this.#wrap).hide();
|
|
18274
18274
|
|
|
18275
18275
|
//$("button", this.#wrap).eq(0).addClass("ng-active");
|
|
18276
|
-
ninegrid
|
|
18276
|
+
ninegrid.j.querySelectorAll(this.#wrap.querySelector("button")).addClass("ng-active");
|
|
18277
18277
|
|
|
18278
18278
|
$("button", this.#wrap).on("click", this.#onClick);
|
|
18279
18279
|
};
|
|
@@ -18296,7 +18296,7 @@ class ngLayout extends HTMLElement
|
|
|
18296
18296
|
|
|
18297
18297
|
#onClick = e => {
|
|
18298
18298
|
|
|
18299
|
-
if (ninegrid
|
|
18299
|
+
if (ninegrid.j.querySelectorAll(e.currentTarget).hasClass("ng-active")) return;
|
|
18300
18300
|
|
|
18301
18301
|
const oldIndex = this.#at;
|
|
18302
18302
|
|
|
@@ -18304,10 +18304,10 @@ class ngLayout extends HTMLElement
|
|
|
18304
18304
|
|
|
18305
18305
|
this.#owner.changeRayout(this.#at);
|
|
18306
18306
|
|
|
18307
|
-
ninegrid
|
|
18308
|
-
ninegrid
|
|
18307
|
+
ninegrid.j.querySelectorAll("button", this.#wrap).removeClass("ng-active");
|
|
18308
|
+
ninegrid.j.querySelectorAll(e.currentTarget).addClass("ng-active");
|
|
18309
18309
|
|
|
18310
|
-
var customEvent = new CustomEvent(ninegrid
|
|
18310
|
+
var customEvent = new CustomEvent(ninegrid.EVENT.LAYOUT_CHANGED, { bubbles: true, detail: {} });
|
|
18311
18311
|
customEvent.oldIndex = oldIndex;
|
|
18312
18312
|
customEvent.newIndex = this.#at;
|
|
18313
18313
|
|
|
@@ -18332,12 +18332,12 @@ class ngHead extends HTMLElement
|
|
|
18332
18332
|
|
|
18333
18333
|
this.#owner = this.getRootNode().host;
|
|
18334
18334
|
|
|
18335
|
-
if (ninegrid
|
|
18335
|
+
if (ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) return;
|
|
18336
18336
|
|
|
18337
18337
|
this.shadowRoot.innerHTML = `
|
|
18338
18338
|
<style>
|
|
18339
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18340
|
-
${ninegrid
|
|
18339
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngHead.css";
|
|
18340
|
+
${ninegrid.getCustomPath(this,"ngHead.css")}
|
|
18341
18341
|
</style>
|
|
18342
18342
|
|
|
18343
18343
|
<ng-menu></ng-menu>
|
|
@@ -18577,8 +18577,8 @@ class ngImg extends ngCellEx
|
|
|
18577
18577
|
|
|
18578
18578
|
this.shadowRoot.innerHTML = `
|
|
18579
18579
|
<style>
|
|
18580
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18581
|
-
${ninegrid
|
|
18580
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngImg.css";
|
|
18581
|
+
${ninegrid.getCustomPath(this,"ngImg.css")}
|
|
18582
18582
|
|
|
18583
18583
|
img {
|
|
18584
18584
|
border: ${border};
|
|
@@ -18643,8 +18643,8 @@ class ngSvg extends ngCellEx
|
|
|
18643
18643
|
|
|
18644
18644
|
this.shadowRoot.innerHTML = `
|
|
18645
18645
|
<style>
|
|
18646
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18647
|
-
${ninegrid
|
|
18646
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngSvg.css";
|
|
18647
|
+
${ninegrid.getCustomPath(this,"ngSvg.css")}
|
|
18648
18648
|
|
|
18649
18649
|
div {
|
|
18650
18650
|
border: ${border};
|
|
@@ -18781,8 +18781,8 @@ class ngInfo extends HTMLElement
|
|
|
18781
18781
|
|
|
18782
18782
|
this.shadowRoot.innerHTML = `
|
|
18783
18783
|
<style>
|
|
18784
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18785
|
-
${ninegrid
|
|
18784
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInfo.css";
|
|
18785
|
+
${ninegrid.getCustomPath(this,"ngInfo.css")}
|
|
18786
18786
|
</style>
|
|
18787
18787
|
|
|
18788
18788
|
<svg class="icon" xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 16 16">
|
|
@@ -18848,8 +18848,8 @@ class ngInputColor extends ngEditableEx
|
|
|
18848
18848
|
|
|
18849
18849
|
this.shadowRoot.innerHTML = `
|
|
18850
18850
|
<style>
|
|
18851
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18852
|
-
${ninegrid
|
|
18851
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputColor.css";
|
|
18852
|
+
${ninegrid.getCustomPath(this,"ngInputColor.css")}
|
|
18853
18853
|
</style>
|
|
18854
18854
|
|
|
18855
18855
|
<input type="color" required />
|
|
@@ -18889,12 +18889,12 @@ class ngInputColor extends ngEditableEx
|
|
|
18889
18889
|
dataRefresh = (v) => {
|
|
18890
18890
|
|
|
18891
18891
|
if (this.#isValidColor(this.value)) {
|
|
18892
|
-
this.#target.value = ninegrid
|
|
18893
|
-
ninegrid
|
|
18892
|
+
this.#target.value = ninegrid.nvl(this.value, "#ffffff");
|
|
18893
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
18894
18894
|
}
|
|
18895
18895
|
else {
|
|
18896
18896
|
this.#target.value = "#ffffff";
|
|
18897
|
-
ninegrid
|
|
18897
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
18898
18898
|
}
|
|
18899
18899
|
|
|
18900
18900
|
this.#target.setAttribute("title", this.value);
|
|
@@ -18904,7 +18904,7 @@ class ngInputColor extends ngEditableEx
|
|
|
18904
18904
|
|
|
18905
18905
|
#isValidColor = (v) => {
|
|
18906
18906
|
|
|
18907
|
-
if (ninegrid
|
|
18907
|
+
if (ninegrid.isNull(v)) return true;
|
|
18908
18908
|
|
|
18909
18909
|
if (typeof v !== "string" || v.length != 7 || !v.startsWith("#")) return false;
|
|
18910
18910
|
|
|
@@ -18943,8 +18943,8 @@ class ngInputDate extends ngEditableEx
|
|
|
18943
18943
|
|
|
18944
18944
|
this.shadowRoot.innerHTML = `
|
|
18945
18945
|
<style>
|
|
18946
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18947
|
-
${ninegrid
|
|
18946
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputDate.css";
|
|
18947
|
+
${ninegrid.getCustomPath(this,"ngInputDate.css")}
|
|
18948
18948
|
|
|
18949
18949
|
input {
|
|
18950
18950
|
--height: ${height}px;
|
|
@@ -19021,10 +19021,10 @@ class ngInputDate extends ngEditableEx
|
|
|
19021
19021
|
this.#target.value = v;
|
|
19022
19022
|
|
|
19023
19023
|
if (this.#isValidDate(v)) {
|
|
19024
|
-
ninegrid
|
|
19024
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
19025
19025
|
}
|
|
19026
19026
|
else {
|
|
19027
|
-
ninegrid
|
|
19027
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
19028
19028
|
}
|
|
19029
19029
|
|
|
19030
19030
|
if (!a) this.reset();
|
|
@@ -19032,7 +19032,7 @@ class ngInputDate extends ngEditableEx
|
|
|
19032
19032
|
|
|
19033
19033
|
#isValidDate = (v) => {
|
|
19034
19034
|
|
|
19035
|
-
if (ninegrid
|
|
19035
|
+
if (ninegrid.isNull(v)) return true;
|
|
19036
19036
|
|
|
19037
19037
|
if (typeof v !== "string") return false;
|
|
19038
19038
|
|
|
@@ -19152,8 +19152,8 @@ class ngInputText extends ngEditableEx
|
|
|
19152
19152
|
|
|
19153
19153
|
this.shadowRoot.innerHTML = `
|
|
19154
19154
|
<style>
|
|
19155
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
19156
|
-
${ninegrid
|
|
19155
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputText.css";
|
|
19156
|
+
${ninegrid.getCustomPath(this,"ngInputText.css")}
|
|
19157
19157
|
</style>
|
|
19158
19158
|
|
|
19159
19159
|
<input type="text"
|
|
@@ -19184,9 +19184,9 @@ class ngInputText extends ngEditableEx
|
|
|
19184
19184
|
if (e.target.selectionStart == e.target.selectionEnd) {
|
|
19185
19185
|
if (this.#maxbyte) {
|
|
19186
19186
|
|
|
19187
|
-
if (ninegrid
|
|
19187
|
+
if (ninegrid.getByteLength(e.target.value) >= Number(this.#maxbyte)) {
|
|
19188
19188
|
|
|
19189
|
-
e.target.value = ninegrid
|
|
19189
|
+
e.target.value = ninegrid.cut(e.target.value, Number(this.#maxbyte));
|
|
19190
19190
|
|
|
19191
19191
|
this.value = e.target.value;
|
|
19192
19192
|
}
|
|
@@ -19225,7 +19225,7 @@ class ngInputText extends ngEditableEx
|
|
|
19225
19225
|
this.#target.value = this.value;
|
|
19226
19226
|
|
|
19227
19227
|
|
|
19228
|
-
ninegrid
|
|
19228
|
+
ninegrid.j.querySelectorAll(this.#target).removeClass("invalid");
|
|
19229
19229
|
|
|
19230
19230
|
if (this.#type == "number") {
|
|
19231
19231
|
|
|
@@ -19233,18 +19233,18 @@ class ngInputText extends ngEditableEx
|
|
|
19233
19233
|
this.#max && Number(this.#target.value) > Number(this.#max) ||
|
|
19234
19234
|
this.#min && Number(this.#target.value) < Number(this.#min)
|
|
19235
19235
|
) {
|
|
19236
|
-
ninegrid
|
|
19236
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19237
19237
|
}
|
|
19238
19238
|
else if (this.#scale) {
|
|
19239
19239
|
if (this.#target.value.indexOf('.') >= 0 && this.#target.value.substring(this.#target.value.indexOf('.')+1).length > Number(this.#scale) ) {
|
|
19240
|
-
ninegrid
|
|
19240
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19241
19241
|
}
|
|
19242
19242
|
}
|
|
19243
19243
|
}
|
|
19244
19244
|
|
|
19245
19245
|
|
|
19246
|
-
if (this.#maxbyte && ninegrid
|
|
19247
|
-
ninegrid
|
|
19246
|
+
if (this.#maxbyte && ninegrid.getByteLength(this.value) > Number(this.#maxbyte)) {
|
|
19247
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19248
19248
|
}
|
|
19249
19249
|
|
|
19250
19250
|
if (!v) this.reset();
|
|
@@ -19286,7 +19286,7 @@ class ngInputText extends ngEditableEx
|
|
|
19286
19286
|
}
|
|
19287
19287
|
|
|
19288
19288
|
|
|
19289
|
-
if (this.#maxbyte && ninegrid
|
|
19289
|
+
if (this.#maxbyte && ninegrid.getByteLength(e.target.value) >= Number(this.#maxbyte) && e.target.selectionStart == e.target.selectionEnd) e.preventDefault();
|
|
19290
19290
|
}
|
|
19291
19291
|
}
|
|
19292
19292
|
|
|
@@ -19380,7 +19380,7 @@ class ngMatrixManager
|
|
|
19380
19380
|
var subrow = matrixRow % this.#owner.template.length;
|
|
19381
19381
|
//matrixRow += this.#owner.dataManager.viewRecords.rawIndex * this.#owner.template.length;
|
|
19382
19382
|
|
|
19383
|
-
var rows = ninegrid
|
|
19383
|
+
var rows = ninegrid.decode(group, "head", this.#headRows, "foot", this.#footRows, this.#bodyRows);
|
|
19384
19384
|
var idx = rows.findIndex(o => o.rowid == rowid && o.subrow == subrow);
|
|
19385
19385
|
|
|
19386
19386
|
|
|
@@ -19422,7 +19422,7 @@ class ngMatrixManager
|
|
|
19422
19422
|
//matrixRow += this.#owner.dataManager.viewRecords.rawIndex * this.#owner.template.length;
|
|
19423
19423
|
|
|
19424
19424
|
|
|
19425
|
-
var rows = ninegrid
|
|
19425
|
+
var rows = ninegrid.decode(group, "head", this.#headRows, "foot", this.#footRows, this.#bodyRows);
|
|
19426
19426
|
var idx = rows.findIndex(o => o.rowid == rowid && o.subrow == subrow);
|
|
19427
19427
|
|
|
19428
19428
|
|
|
@@ -19472,7 +19472,7 @@ class ngMaxPopup extends HTMLElement
|
|
|
19472
19472
|
|
|
19473
19473
|
this.shadowRoot.innerHTML = `
|
|
19474
19474
|
<style>
|
|
19475
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
19475
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
19476
19476
|
:host {
|
|
19477
19477
|
}
|
|
19478
19478
|
nine-grid {
|
|
@@ -19518,7 +19518,7 @@ class ngMaxPopup extends HTMLElement
|
|
|
19518
19518
|
|
|
19519
19519
|
e.stopImmediatePropagation();
|
|
19520
19520
|
|
|
19521
|
-
ninegrid
|
|
19521
|
+
ninegrid.confirm("There is changed data.\nDo you want to save it?", "SAVE", {"class": "rgb", "true-text": "Yes", "false-text": "No", }).then(result => {
|
|
19522
19522
|
|
|
19523
19523
|
if (result) {
|
|
19524
19524
|
$(".apply", this.shadowRoot).trigger("click");
|
|
@@ -19625,34 +19625,34 @@ class ngMenu extends HTMLElement
|
|
|
19625
19625
|
"select-type": {
|
|
19626
19626
|
name: 'select type',
|
|
19627
19627
|
items: {
|
|
19628
|
-
[`select-type-${ninegrid
|
|
19629
|
-
[`select-type-${ninegrid
|
|
19630
|
-
[`select-type-${ninegrid
|
|
19631
|
-
[`select-type-${ninegrid
|
|
19632
|
-
[`select-type-${ninegrid
|
|
19633
|
-
[`select-type-${ninegrid
|
|
19634
|
-
[`select-type-${ninegrid
|
|
19628
|
+
[`select-type-${ninegrid.SELECTTYPE.ROW}`] : { name: "row", className: `select-type select-type-${ninegrid.SELECTTYPE.ROW}` },
|
|
19629
|
+
[`select-type-${ninegrid.SELECTTYPE.ROWS}`]: { name: "multi row", className: `select-type select-type-${ninegrid.SELECTTYPE.ROWS}`},
|
|
19630
|
+
[`select-type-${ninegrid.SELECTTYPE.COL}`] : { name: "column", className: `select-type select-type-${ninegrid.SELECTTYPE.COL}` },
|
|
19631
|
+
[`select-type-${ninegrid.SELECTTYPE.COLS}`]: { name: "multi column", className: `select-type select-type-${ninegrid.SELECTTYPE.COLS}`},
|
|
19632
|
+
[`select-type-${ninegrid.SELECTTYPE.CELL}`]: { name: "cell", className: `select-type select-type-${ninegrid.SELECTTYPE.CELL}`},
|
|
19633
|
+
[`select-type-${ninegrid.SELECTTYPE.AREA}`]: { name: "area", className: `select-type select-type-${ninegrid.SELECTTYPE.AREA}`},
|
|
19634
|
+
[`select-type-${ninegrid.SELECTTYPE.NONE}`]: { name: "none", className: `select-type select-type-${ninegrid.SELECTTYPE.NONE}`},
|
|
19635
19635
|
},
|
|
19636
19636
|
},
|
|
19637
19637
|
"paging-type": {
|
|
19638
19638
|
name: 'paging type',
|
|
19639
19639
|
items: {
|
|
19640
|
-
[`paging-type-${ninegrid
|
|
19641
|
-
[`paging-type-${ninegrid
|
|
19642
|
-
[`paging-type-${ninegrid
|
|
19640
|
+
[`paging-type-${ninegrid.PAGINGTYPE.NONE}`] : { name: "none", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.NONE}` },
|
|
19641
|
+
[`paging-type-${ninegrid.PAGINGTYPE.CLIENT}`] : { name: "client", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.CLIENT}` },
|
|
19642
|
+
[`paging-type-${ninegrid.PAGINGTYPE.SERVER}`] : { name: "server", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.SERVER}` },
|
|
19643
19643
|
"paging-count": {
|
|
19644
19644
|
name: "entries per page",
|
|
19645
19645
|
items: {
|
|
19646
|
-
[`paging-count-${ninegrid
|
|
19647
|
-
[`paging-count-${ninegrid
|
|
19648
|
-
[`paging-count-${ninegrid
|
|
19649
|
-
[`paging-count-${ninegrid
|
|
19650
|
-
[`paging-count-${ninegrid
|
|
19651
|
-
[`paging-count-${ninegrid
|
|
19652
|
-
[`paging-count-${ninegrid
|
|
19653
|
-
[`paging-count-${ninegrid
|
|
19654
|
-
[`paging-count-${ninegrid
|
|
19655
|
-
[`paging-count-${ninegrid
|
|
19646
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.AUTO}`] : { name: "auto", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.AUTO}` },
|
|
19647
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_1}`] : { name: "1", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_1}` },
|
|
19648
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_5}`] : { name: "5", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_5}` },
|
|
19649
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_10}`] : { name: "10", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_10}` },
|
|
19650
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_20}`] : { name: "20", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_20}` },
|
|
19651
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_30}`] : { name: "30", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_30}` },
|
|
19652
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_50}`] : { name: "50", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_50}` },
|
|
19653
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_100}`] : { name: "100", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_100}` },
|
|
19654
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}`] : { name: "1000", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}` },
|
|
19655
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`] : { name: "10000", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`},
|
|
19656
19656
|
},
|
|
19657
19657
|
},
|
|
19658
19658
|
},
|
|
@@ -19699,13 +19699,13 @@ class ngMenu extends HTMLElement
|
|
|
19699
19699
|
this.#owner.filtering.isFiltering() ? this.#owner.filtering.off() : this.#owner.filtering.on();
|
|
19700
19700
|
break;
|
|
19701
19701
|
|
|
19702
|
-
case `select-type-${ninegrid
|
|
19703
|
-
case `select-type-${ninegrid
|
|
19704
|
-
case `select-type-${ninegrid
|
|
19705
|
-
case `select-type-${ninegrid
|
|
19706
|
-
case `select-type-${ninegrid
|
|
19707
|
-
case `select-type-${ninegrid
|
|
19708
|
-
case `select-type-${ninegrid
|
|
19702
|
+
case `select-type-${ninegrid.SELECTTYPE.ROW}`:
|
|
19703
|
+
case `select-type-${ninegrid.SELECTTYPE.ROWS}`:
|
|
19704
|
+
case `select-type-${ninegrid.SELECTTYPE.COL}`:
|
|
19705
|
+
case `select-type-${ninegrid.SELECTTYPE.COLS}`:
|
|
19706
|
+
case `select-type-${ninegrid.SELECTTYPE.CELL}`:
|
|
19707
|
+
case `select-type-${ninegrid.SELECTTYPE.AREA}`:
|
|
19708
|
+
case `select-type-${ninegrid.SELECTTYPE.NONE}`:
|
|
19709
19709
|
this.#owner.setAttribute("select-type", e.menuId.replace("select-type-", ""));
|
|
19710
19710
|
break;
|
|
19711
19711
|
|
|
@@ -19720,25 +19720,25 @@ class ngMenu extends HTMLElement
|
|
|
19720
19720
|
this.#owner.setAttribute("show-status-bar", this.#owner.getAttribute("show-status-bar") == "true" ? "false" : "true");
|
|
19721
19721
|
break;
|
|
19722
19722
|
|
|
19723
|
-
case `paging-type-${ninegrid
|
|
19724
|
-
case `paging-type-${ninegrid
|
|
19725
|
-
case `paging-type-${ninegrid
|
|
19723
|
+
case `paging-type-${ninegrid.PAGINGTYPE.NONE}`:
|
|
19724
|
+
case `paging-type-${ninegrid.PAGINGTYPE.CLIENT}`:
|
|
19725
|
+
case `paging-type-${ninegrid.PAGINGTYPE.SERVER}`:
|
|
19726
19726
|
this.#owner.setAttribute("paging-type", e.menuId.replace("paging-type-", ""));
|
|
19727
19727
|
break;
|
|
19728
|
-
case `paging-count-${ninegrid
|
|
19729
|
-
case `paging-count-${ninegrid
|
|
19730
|
-
case `paging-count-${ninegrid
|
|
19731
|
-
case `paging-count-${ninegrid
|
|
19732
|
-
case `paging-count-${ninegrid
|
|
19733
|
-
case `paging-count-${ninegrid
|
|
19734
|
-
case `paging-count-${ninegrid
|
|
19735
|
-
case `paging-count-${ninegrid
|
|
19736
|
-
case `paging-count-${ninegrid
|
|
19737
|
-
case `paging-count-${ninegrid
|
|
19728
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.AUTO}`:
|
|
19729
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_1}`:
|
|
19730
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_5}`:
|
|
19731
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_10}`:
|
|
19732
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_20}`:
|
|
19733
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_30}`:
|
|
19734
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_50}`:
|
|
19735
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_100}`:
|
|
19736
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}`:
|
|
19737
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`:
|
|
19738
19738
|
this.#owner.setAttribute("paging-count", e.menuId.replace("paging-count-", ""));
|
|
19739
19739
|
break;
|
|
19740
19740
|
case "col-indicator-type":
|
|
19741
|
-
this.#owner.setAttribute("col-indicator-type", this.#owner.getAttribute("col-indicator-type") == ninegrid
|
|
19741
|
+
this.#owner.setAttribute("col-indicator-type", this.#owner.getAttribute("col-indicator-type") == ninegrid.COLINDICATORTYPE.EXPAND ? ninegrid.COLINDICATORTYPE.COLLAPSE : ninegrid.COLINDICATORTYPE.EXPAND);
|
|
19742
19742
|
break;
|
|
19743
19743
|
case "auto-fit-col":
|
|
19744
19744
|
this.#owner.setAttribute("auto-fit-col", this.#owner.getAttribute("auto-fit-col") == "true" ? "false" : "true");
|
|
@@ -19752,29 +19752,29 @@ class ngMenu extends HTMLElement
|
|
|
19752
19752
|
},
|
|
19753
19753
|
events : {
|
|
19754
19754
|
show : e => {
|
|
19755
|
-
ninegrid
|
|
19755
|
+
ninegrid.j.querySelectorAll(this.#owner).hasClass("ng-maximize") ? ninegrid.j.querySelectorAll("ng-context-menu-panel .maximize", this.#owner.shadowRoot).addClass("on") : ninegrid.j.querySelectorAll("ng-context-menu-panel .maximize", this.#owner.shadowRoot).removeClass("on");
|
|
19756
19756
|
|
|
19757
|
-
this.#owner.getAttribute("show-title-bar") == "true" ? ninegrid
|
|
19758
|
-
this.#owner.getAttribute("show-menu-icon") == "true" ? ninegrid
|
|
19759
|
-
this.#owner.getAttribute("show-status-bar") == "true" ? ninegrid
|
|
19757
|
+
this.#owner.getAttribute("show-title-bar") == "true" ? ninegrid.j.querySelectorAll("ng-context-menu-panel .show-title-bar", this.#owner.shadowRoot).addClass("on") : ninegrid.j.querySelectorAll("ng-context-menu-panel .show-title-bar", this.#owner.shadowRoot).removeClass("on");
|
|
19758
|
+
this.#owner.getAttribute("show-menu-icon") == "true" ? ninegrid.j.querySelectorAll("ng-context-menu-panel .show-menu-icon", this.#owner.shadowRoot).addClass("on") : ninegrid.j.querySelectorAll("ng-context-menu-panel .show-menu-icon", this.#owner.shadowRoot).removeClass("on");
|
|
19759
|
+
this.#owner.getAttribute("show-status-bar") == "true" ? ninegrid.j.querySelectorAll("ng-context-menu-panel .show-status-bar", this.#owner.shadowRoot).addClass("on") : ninegrid.j.querySelectorAll("ng-context-menu-panel .show-status-bar", this.#owner.shadowRoot).removeClass("on");
|
|
19760
19760
|
|
|
19761
|
-
ninegrid
|
|
19762
|
-
ninegrid
|
|
19761
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .select-type", this.#owner.shadowRoot).removeClass("on");
|
|
19762
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .select-type-${this.#owner.getAttribute("select-type")}`, this.#owner.shadowRoot).addClass("on");
|
|
19763
19763
|
|
|
19764
|
-
ninegrid
|
|
19765
|
-
ninegrid
|
|
19764
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .paging-type", this.#owner.shadowRoot).removeClass("on");
|
|
19765
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .paging-type-${this.#owner.getAttribute("paging-type")}`, this.#owner.shadowRoot).addClass("on");
|
|
19766
19766
|
|
|
19767
|
-
ninegrid
|
|
19768
|
-
ninegrid
|
|
19767
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .paging-count", this.#owner.shadowRoot).removeClass("on");
|
|
19768
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .paging-count-${this.#owner.getAttribute("paging-count")}`, this.#owner.shadowRoot).addClass("on");
|
|
19769
19769
|
|
|
19770
|
-
this.#owner.filtering.isFiltering() ? ninegrid
|
|
19770
|
+
this.#owner.filtering.isFiltering() ? ninegrid.j.querySelectorAll("ng-context-menu-panel .ng-menu-filtering", this.#owner.shadowRoot).addClass("on") : ninegrid.j.querySelectorAll("ng-context-menu-panel .ng-menu-filtering", this.#owner.shadowRoot).removeClass("on");
|
|
19771
19771
|
|
|
19772
|
-
this.#owner.getAttribute("auto-fit-col") == "true" ? ninegrid
|
|
19772
|
+
this.#owner.getAttribute("auto-fit-col") == "true" ? ninegrid.j.querySelectorAll("ng-context-menu-panel .auto-fit-col", this.#owner.shadowRoot).addClass("on") : ninegrid.j.querySelectorAll("ng-context-menu-panel .auto-fit-col", this.#owner.shadowRoot).removeClass("on");
|
|
19773
19773
|
|
|
19774
|
-
this.#owner.getAttribute("col-indicator-type") == ninegrid
|
|
19774
|
+
this.#owner.getAttribute("col-indicator-type") == ninegrid.COLINDICATORTYPE.EXPAND ? ninegrid.j.querySelectorAll("ng-context-menu-panel .col-indicator-type", this.#owner.shadowRoot).addClass("on") : ninegrid.j.querySelectorAll("ng-context-menu-panel .col-indicator-type", this.#owner.shadowRoot).removeClass("on");
|
|
19775
19775
|
|
|
19776
19776
|
const tfoot = this.#owner.body.querySelector(".ng-table tfoot");
|
|
19777
|
-
const tfootMenu = ninegrid
|
|
19777
|
+
const tfootMenu = ninegrid.j.querySelectorAll("ng-context-menu-panel .show-tfoot", this.#owner.shadowRoot);
|
|
19778
19778
|
|
|
19779
19779
|
if (tfoot) {
|
|
19780
19780
|
tfootMenu.removeClass("disabled");
|
|
@@ -19785,12 +19785,12 @@ class ngMenu extends HTMLElement
|
|
|
19785
19785
|
}
|
|
19786
19786
|
|
|
19787
19787
|
if (typeof ExcelJS == "undefined") {
|
|
19788
|
-
ninegrid
|
|
19788
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .import,ng-context-menu-panel .export-excel", this.#owner.shadowRoot).addClass("disabled");
|
|
19789
19789
|
}
|
|
19790
19790
|
|
|
19791
|
-
ninegrid
|
|
19791
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .import,ng-context-menu-panel .export-pdf", this.#owner.shadowRoot).addClass("disabled");
|
|
19792
19792
|
|
|
19793
|
-
this.#owner.closest("dialog") ? ninegrid
|
|
19793
|
+
this.#owner.closest("dialog") ? ninegrid.j.querySelectorAll("ng-context-menu-panel .maximize", this.#owner.shadowRoot).addClass("disabled") : ninegrid.j.querySelectorAll("ng-context-menu-panel .maximize", this.#owner.shadowRoot).removeClass("disabled");
|
|
19794
19794
|
},
|
|
19795
19795
|
hide : () => {
|
|
19796
19796
|
},
|
|
@@ -19849,22 +19849,22 @@ class ngPaging extends HTMLElement
|
|
|
19849
19849
|
return this.#owner.getAttribute("paging-type");
|
|
19850
19850
|
};
|
|
19851
19851
|
set type(v) {
|
|
19852
|
-
if (!Object.values(ninegrid
|
|
19852
|
+
if (!Object.values(ninegrid.PAGINGTYPE).includes(v)) throw `invalid page type : ${v}`;
|
|
19853
19853
|
|
|
19854
19854
|
//this.#owner.setAttribute("paging-type", v);
|
|
19855
19855
|
|
|
19856
19856
|
switch (v) {
|
|
19857
|
-
case ninegrid
|
|
19857
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
19858
19858
|
|
|
19859
19859
|
$(this).children().show();
|
|
19860
19860
|
$(this).children().not("span:last-child").hide();
|
|
19861
19861
|
break;
|
|
19862
19862
|
|
|
19863
|
-
case ninegrid
|
|
19863
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
19864
19864
|
$(this).children().show();
|
|
19865
19865
|
break;
|
|
19866
19866
|
|
|
19867
|
-
case ninegrid
|
|
19867
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
19868
19868
|
$(this).children().show();
|
|
19869
19869
|
break;
|
|
19870
19870
|
}
|
|
@@ -19876,7 +19876,7 @@ class ngPaging extends HTMLElement
|
|
|
19876
19876
|
return this.#currentPage;
|
|
19877
19877
|
};
|
|
19878
19878
|
set currentPage(v) {
|
|
19879
|
-
if (this.type != ninegrid
|
|
19879
|
+
if (this.type != ninegrid.PAGINGTYPE.SERVER) throw `"currentPage" is only allowed when the paging type is server.`;
|
|
19880
19880
|
|
|
19881
19881
|
this.#currentPage = v;
|
|
19882
19882
|
};
|
|
@@ -19910,7 +19910,7 @@ class ngPaging extends HTMLElement
|
|
|
19910
19910
|
setTimeout(() => {/** paging-type : none -> client 변경시 height 오류 */
|
|
19911
19911
|
this.#count = v;
|
|
19912
19912
|
|
|
19913
|
-
if (v == ninegrid
|
|
19913
|
+
if (v == ninegrid.PAGINGCOUNT.AUTO) {
|
|
19914
19914
|
var totalHeight = $(".ng-container-body", this.#owner.body).height() - ($(".ng-container-body thead", this.#owner.body).height() || 0) - ($(".ng-container-body tfoot", this.#owner.body).height() || 0);
|
|
19915
19915
|
var tmplHeight = 0;
|
|
19916
19916
|
$(this.#owner.template).each((i,el) => tmplHeight += $(el).height());
|
|
@@ -19924,15 +19924,15 @@ class ngPaging extends HTMLElement
|
|
|
19924
19924
|
|
|
19925
19925
|
|
|
19926
19926
|
switch (this.type) {
|
|
19927
|
-
case ninegrid
|
|
19927
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
19928
19928
|
this.refresh();
|
|
19929
19929
|
break;
|
|
19930
19930
|
|
|
19931
|
-
case ninegrid
|
|
19931
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
19932
19932
|
this.refresh();
|
|
19933
19933
|
break;
|
|
19934
19934
|
|
|
19935
|
-
case ninegrid
|
|
19935
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
19936
19936
|
this.movePage(1);
|
|
19937
19937
|
break;
|
|
19938
19938
|
}
|
|
@@ -19959,13 +19959,13 @@ class ngPaging extends HTMLElement
|
|
|
19959
19959
|
#refresh = () => {
|
|
19960
19960
|
|
|
19961
19961
|
|
|
19962
|
-
if (this.type == ninegrid
|
|
19962
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
19963
19963
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#owner.data.countNF().toLocaleString()}`);
|
|
19964
19964
|
}
|
|
19965
|
-
else if (this.type == ninegrid
|
|
19965
|
+
else if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
19966
19966
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#totalCount.toLocaleString()}`);
|
|
19967
19967
|
}
|
|
19968
|
-
else if (this.type == ninegrid
|
|
19968
|
+
else if (this.type == ninegrid.PAGINGTYPE.NONE) {
|
|
19969
19969
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#totalCount.toLocaleString()}`);
|
|
19970
19970
|
}
|
|
19971
19971
|
|
|
@@ -19976,21 +19976,21 @@ class ngPaging extends HTMLElement
|
|
|
19976
19976
|
$('span', this).eq(0).html(`${this.#currentPage.toLocaleString()} <i>of</i> ${this.#totalPage.toLocaleString()}`);
|
|
19977
19977
|
}
|
|
19978
19978
|
|
|
19979
|
-
ninegrid
|
|
19980
|
-
ninegrid
|
|
19981
|
-
ninegrid
|
|
19982
|
-
ninegrid
|
|
19979
|
+
ninegrid.j.querySelectorAll('.ng-paging-first', this).attr("disabled", (this.#currentPage == 1 || this.#totalPage < 1) ? true : false);
|
|
19980
|
+
ninegrid.j.querySelectorAll('.ng-paging-prev', this).attr("disabled", (this.#currentPage == 1 || this.#totalPage < 1) ? true : false);
|
|
19981
|
+
ninegrid.j.querySelectorAll('.ng-paging-next', this).attr("disabled", (this.#currentPage == this.#totalPage || this.#totalPage < 1) ? true : false);
|
|
19982
|
+
ninegrid.j.querySelectorAll('.ng-paging-last', this).attr("disabled", (this.#currentPage == this.#totalPage || this.#totalPage < 1) ? true : false);
|
|
19983
19983
|
};
|
|
19984
19984
|
|
|
19985
19985
|
|
|
19986
19986
|
#moveLast = () => {
|
|
19987
19987
|
//this.#clearPaging();
|
|
19988
19988
|
|
|
19989
|
-
if (this.type == ninegrid
|
|
19989
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
19990
19990
|
|
|
19991
19991
|
this.movePage(Math.ceil(this.#owner.data.countNF() / this.#linesPerPage));
|
|
19992
19992
|
}
|
|
19993
|
-
else if (this.type == ninegrid
|
|
19993
|
+
else if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
19994
19994
|
this.movePage(Math.ceil(this.#totalCount / this.#linesPerPage));
|
|
19995
19995
|
}
|
|
19996
19996
|
};
|
|
@@ -20000,11 +20000,11 @@ class ngPaging extends HTMLElement
|
|
|
20000
20000
|
//if (!this.#owner || !this.#owner.data || isNaN(page) || this.#totalPage == 0) return;
|
|
20001
20001
|
if (!this.#owner || !this.#owner.data || isNaN(page)) return;
|
|
20002
20002
|
|
|
20003
|
-
if (this.type == ninegrid
|
|
20004
|
-
ninegrid
|
|
20005
|
-
ninegrid
|
|
20006
|
-
ninegrid
|
|
20007
|
-
ninegrid
|
|
20003
|
+
if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
20004
|
+
ninegrid.j.querySelectorAll('.ng-paging-first', this).attr("disabled", true);
|
|
20005
|
+
ninegrid.j.querySelectorAll('.ng-paging-prev', this).attr("disabled", true);
|
|
20006
|
+
ninegrid.j.querySelectorAll('.ng-paging-next', this).attr("disabled", true);
|
|
20007
|
+
ninegrid.j.querySelectorAll('.ng-paging-last', this).attr("disabled", true);
|
|
20008
20008
|
}
|
|
20009
20009
|
|
|
20010
20010
|
//this.#clearPaging();
|
|
@@ -20012,7 +20012,7 @@ class ngPaging extends HTMLElement
|
|
|
20012
20012
|
this.#oldPage = this.#currentPage;
|
|
20013
20013
|
this.#currentPage = page;
|
|
20014
20014
|
|
|
20015
|
-
if (this.type == ninegrid
|
|
20015
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
20016
20016
|
|
|
20017
20017
|
var data = this.#owner.data.getValidDataNF();
|
|
20018
20018
|
|
|
@@ -20038,7 +20038,7 @@ class ngPaging extends HTMLElement
|
|
|
20038
20038
|
this.#owner.scrollTo_V1(0);
|
|
20039
20039
|
}
|
|
20040
20040
|
|
|
20041
|
-
if (this.type == ninegrid
|
|
20041
|
+
if (this.type == ninegrid.PAGINGTYPE.SERVER && this.#oldPage != this.#currentPage){
|
|
20042
20042
|
this.onpagechanged.pageIndex= this.#currentPage;
|
|
20043
20043
|
this.onpagechanged.pageCnt = this.#linesPerPage;
|
|
20044
20044
|
|
|
@@ -20053,18 +20053,18 @@ class ngPaging extends HTMLElement
|
|
|
20053
20053
|
refresh = () => {
|
|
20054
20054
|
|
|
20055
20055
|
switch (this.type) {
|
|
20056
|
-
case ninegrid
|
|
20056
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
20057
20057
|
this.#clearPaging();
|
|
20058
20058
|
$(".ng-container tbody tr.bindable:not(.nodata)", this.#owner.body).remove();
|
|
20059
20059
|
this.#owner.scrollTo_V1(0);
|
|
20060
20060
|
break;
|
|
20061
20061
|
|
|
20062
|
-
case ninegrid
|
|
20062
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
20063
20063
|
this.movePage(1);
|
|
20064
20064
|
this.#owner.refresh();
|
|
20065
20065
|
break;
|
|
20066
20066
|
|
|
20067
|
-
case ninegrid
|
|
20067
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
20068
20068
|
break;
|
|
20069
20069
|
}
|
|
20070
20070
|
|
|
@@ -20097,8 +20097,8 @@ class ngProgress extends ngCellEx
|
|
|
20097
20097
|
|
|
20098
20098
|
this.shadowRoot.innerHTML = `
|
|
20099
20099
|
<style>
|
|
20100
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20101
|
-
${ninegrid
|
|
20100
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngProgress.css";
|
|
20101
|
+
${ninegrid.getCustomPath(this,"ngProgress.css")}
|
|
20102
20102
|
|
|
20103
20103
|
progress::-webkit-progress-bar {
|
|
20104
20104
|
background: ${backColor};
|
|
@@ -20204,8 +20204,8 @@ class ngRadio extends ngEditableEx
|
|
|
20204
20204
|
|
|
20205
20205
|
this.shadowRoot.innerHTML = `
|
|
20206
20206
|
<style>
|
|
20207
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20208
|
-
${ninegrid
|
|
20207
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRadio.css";
|
|
20208
|
+
${ninegrid.getCustomPath(this,"ngRadio.css")}
|
|
20209
20209
|
|
|
20210
20210
|
div.ng-wrap {
|
|
20211
20211
|
justify-content: ${justifyContent};
|
|
@@ -20247,7 +20247,7 @@ class ngRadio extends ngEditableEx
|
|
|
20247
20247
|
dataRefresh = (v) => {
|
|
20248
20248
|
|
|
20249
20249
|
if (this.#dataSource) {
|
|
20250
|
-
this.#isValid() ? ninegrid
|
|
20250
|
+
this.#isValid() ? ninegrid.j.querySelectorAll(this).removeClass("invalid") : ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
20251
20251
|
}
|
|
20252
20252
|
|
|
20253
20253
|
$(this.#target).each((i,el) => {
|
|
@@ -20261,7 +20261,7 @@ class ngRadio extends ngEditableEx
|
|
|
20261
20261
|
|
|
20262
20262
|
//console.log(this.value, ninegrid.isNull(this.value));
|
|
20263
20263
|
|
|
20264
|
-
if (ninegrid
|
|
20264
|
+
if (ninegrid.isNull(this.value)) return true;
|
|
20265
20265
|
|
|
20266
20266
|
var idx = this.#dataSource.findIndex(m => { return this.value == m[this.#code]; });
|
|
20267
20267
|
if (idx < 0) return false;
|
|
@@ -20306,8 +20306,8 @@ class ngRenderer extends ngCellEx
|
|
|
20306
20306
|
|
|
20307
20307
|
this.shadowRoot.innerHTML =`
|
|
20308
20308
|
<style>
|
|
20309
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20310
|
-
${ninegrid
|
|
20309
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRenderer.css";
|
|
20310
|
+
${ninegrid.getCustomPath(this,"ngRenderer.css")}
|
|
20311
20311
|
|
|
20312
20312
|
span {
|
|
20313
20313
|
color: ${color};
|
|
@@ -20366,8 +20366,8 @@ class ngRowDetail extends ngCellEx
|
|
|
20366
20366
|
|
|
20367
20367
|
this.shadowRoot.innerHTML = `
|
|
20368
20368
|
<style>
|
|
20369
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20370
|
-
${ninegrid
|
|
20369
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowDetail.css";
|
|
20370
|
+
${ninegrid.getCustomPath(this,"ngRowDetail.css")}
|
|
20371
20371
|
</style>
|
|
20372
20372
|
|
|
20373
20373
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="dtl" focusable="false" aria-hidden="true">
|
|
@@ -20419,7 +20419,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20419
20419
|
|
|
20420
20420
|
this.shadowRoot.innerHTML = `
|
|
20421
20421
|
<style>
|
|
20422
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20422
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
20423
20423
|
nine-grid {
|
|
20424
20424
|
border: 1px solid #ccc;
|
|
20425
20425
|
}
|
|
@@ -20471,7 +20471,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20471
20471
|
|
|
20472
20472
|
e.stopImmediatePropagation();
|
|
20473
20473
|
|
|
20474
|
-
ninegrid
|
|
20474
|
+
ninegrid.confirm("There is changed data.\nDo you want to save it?", "SAVE", {"class": "rgb", "true-text": "Yes", "false-text": "No", }).then(result => {
|
|
20475
20475
|
|
|
20476
20476
|
if (result) {
|
|
20477
20477
|
$(".apply", this.shadowRoot).trigger("click");
|
|
@@ -20487,7 +20487,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20487
20487
|
|
|
20488
20488
|
var data = this.#owner.body.querySelector(`tr[data-row="${row}"]`).data;
|
|
20489
20489
|
|
|
20490
|
-
this.#rowIndex = data.__ng._[ninegrid
|
|
20490
|
+
this.#rowIndex = data.__ng._[ninegrid.ROW.INDEX];
|
|
20491
20491
|
|
|
20492
20492
|
$(".title", this.shadowRoot).html(this.#owner.getAttribute("caption") || "Details");
|
|
20493
20493
|
$(".sub-title", this.shadowRoot).html(`(${(Number(row)+1).toLocaleString()} of ${this.#owner.data.count().toLocaleString()})`);
|
|
@@ -20617,8 +20617,8 @@ class ngRowDrag extends ngCellEx
|
|
|
20617
20617
|
connectedCallback() {
|
|
20618
20618
|
this.shadowRoot.innerHTML = `
|
|
20619
20619
|
<style>
|
|
20620
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20621
|
-
${ninegrid
|
|
20620
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowDrag.css";
|
|
20621
|
+
${ninegrid.getCustomPath(this,"ngRowDrag.css")}
|
|
20622
20622
|
</style>
|
|
20623
20623
|
`;
|
|
20624
20624
|
|
|
@@ -20698,7 +20698,7 @@ class ngRowMover
|
|
|
20698
20698
|
#borderTop = (row) => {
|
|
20699
20699
|
[".ng-container-left",".ng-container-body",".ng-container-right"].forEach(group => {
|
|
20700
20700
|
const trs = this.#owner.body.querySelectorAll(`${group} tr[data-row="${row}"]`);
|
|
20701
|
-
ninegrid
|
|
20701
|
+
ninegrid.j.querySelectorAll("th,td", trs[0]).addClass("ng-dragover-up");
|
|
20702
20702
|
});
|
|
20703
20703
|
};
|
|
20704
20704
|
|
|
@@ -20706,7 +20706,7 @@ class ngRowMover
|
|
|
20706
20706
|
[".ng-container-left",".ng-container-body",".ng-container-right"].forEach(group => {
|
|
20707
20707
|
this.#owner.body.querySelectorAll(`${group} tr[data-row="${row}"]`).forEach((tr,i) => {
|
|
20708
20708
|
tr.querySelectorAll("th,td").forEach(cell => {
|
|
20709
|
-
if ((i + (cell.rowSpan || 1)) == this.#owner.template.length) ninegrid
|
|
20709
|
+
if ((i + (cell.rowSpan || 1)) == this.#owner.template.length) ninegrid.j.querySelectorAll(cell).addClass("ng-dragover-down");
|
|
20710
20710
|
});
|
|
20711
20711
|
});
|
|
20712
20712
|
});
|
|
@@ -20724,8 +20724,8 @@ class ngRowMover
|
|
|
20724
20724
|
const targetRow = parseInt(e.target.closest("th,td").dataset.row);
|
|
20725
20725
|
|
|
20726
20726
|
|
|
20727
|
-
ninegrid
|
|
20728
|
-
ninegrid
|
|
20727
|
+
ninegrid.j.querySelectorAll("th,td", sourceGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20728
|
+
ninegrid.j.querySelectorAll("th,td", targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20729
20729
|
//ninegrid.j.querySelectorAll(`tr`, targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20730
20730
|
|
|
20731
20731
|
if (sourceGrid.id == targetGrid.id) {
|
|
@@ -20793,7 +20793,7 @@ class ngRowMover
|
|
|
20793
20793
|
//const sourceGrid= document.getElementById(e.dataTransfer.getData("id"));
|
|
20794
20794
|
//const sourceRow = parseInt(e.dataTransfer.getData("row"));
|
|
20795
20795
|
//const sourceBind= e.dataTransfer.getData("bind");
|
|
20796
|
-
const sourceGrid= ninegrid
|
|
20796
|
+
const sourceGrid= ninegrid.nvl(document.getElementById(ngRowDrag.dragData.id), this.#owner); /** Max Popup 화면에서 document.getElementById(ngRowDrag.dragData.id) == null */
|
|
20797
20797
|
const sourceRow = ngRowDrag.dragData.row;
|
|
20798
20798
|
const sourceBind= ngRowDrag.dragData.bind;
|
|
20799
20799
|
|
|
@@ -20804,12 +20804,12 @@ class ngRowMover
|
|
|
20804
20804
|
const targetRow = parseInt(targetTr.dataset.row);
|
|
20805
20805
|
const targetBind= targetGrid.body.querySelector("ng-row-drag") ? targetGrid.body.querySelector("ng-row-drag").cell.dataset.bind : null;
|
|
20806
20806
|
|
|
20807
|
-
ninegrid
|
|
20808
|
-
ninegrid
|
|
20807
|
+
ninegrid.j.querySelectorAll("th,td", sourceGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20808
|
+
ninegrid.j.querySelectorAll("th,td", targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20809
20809
|
|
|
20810
20810
|
if (sourceGrid.id == targetGrid.id && sourceRow == targetRow) return;
|
|
20811
20811
|
|
|
20812
|
-
const canEvent = new CustomEvent(ninegrid
|
|
20812
|
+
const canEvent = new CustomEvent(ninegrid.EVENT.CAN_ROW_MOVE, { bubbles: true, cancelable: true, detail: {} });
|
|
20813
20813
|
canEvent.sourceGrid = sourceGrid;
|
|
20814
20814
|
canEvent.targetGrid = targetGrid;
|
|
20815
20815
|
canEvent.sourceRow = sourceRow;
|
|
@@ -20847,7 +20847,7 @@ class ngRowMover
|
|
|
20847
20847
|
|
|
20848
20848
|
this.#owner.dataManager.viewRecords.reset();
|
|
20849
20849
|
|
|
20850
|
-
const doneEvent = new CustomEvent(ninegrid
|
|
20850
|
+
const doneEvent = new CustomEvent(ninegrid.EVENT.ROW_MOVED, { bubbles: true, detail: {} });
|
|
20851
20851
|
doneEvent.sourceGrid= sourceGrid;
|
|
20852
20852
|
doneEvent.targetGrid= targetGrid;
|
|
20853
20853
|
doneEvent.sourceRow = sourceRow;
|
|
@@ -20880,8 +20880,8 @@ class ngRowExpand extends HTMLElement
|
|
|
20880
20880
|
|
|
20881
20881
|
this.shadowRoot.innerHTML = `
|
|
20882
20882
|
<style>
|
|
20883
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20884
|
-
${ninegrid
|
|
20883
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowExpand.css";
|
|
20884
|
+
${ninegrid.getCustomPath(this,"ngRowExpand.css")}
|
|
20885
20885
|
</style>
|
|
20886
20886
|
`;
|
|
20887
20887
|
|
|
@@ -20891,17 +20891,17 @@ class ngRowExpand extends HTMLElement
|
|
|
20891
20891
|
if (!this.#owner || !this.#cell) return;
|
|
20892
20892
|
|
|
20893
20893
|
//this.#originExpr= $(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.template).attr("data-expr");
|
|
20894
|
-
this.#originExpr= ninegrid
|
|
20894
|
+
this.#originExpr= ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr");
|
|
20895
20895
|
|
|
20896
20896
|
if (this.#cell.querySelector("ng-col-expand")) {
|
|
20897
|
-
ninegrid
|
|
20897
|
+
ninegrid.j.querySelectorAll(this).addClass("padding");
|
|
20898
20898
|
}
|
|
20899
20899
|
|
|
20900
20900
|
$(this).on("click", e => {
|
|
20901
20901
|
e.preventDefault();
|
|
20902
20902
|
e.stopPropagation();
|
|
20903
20903
|
|
|
20904
|
-
if (ninegrid
|
|
20904
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) {
|
|
20905
20905
|
this.#collapse();
|
|
20906
20906
|
}
|
|
20907
20907
|
else {
|
|
@@ -20913,28 +20913,28 @@ class ngRowExpand extends HTMLElement
|
|
|
20913
20913
|
};
|
|
20914
20914
|
|
|
20915
20915
|
#expand = () => {
|
|
20916
|
-
const bind = ninegrid
|
|
20916
|
+
const bind = ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-bind");
|
|
20917
20917
|
const expr = `data.${bind}.replaceAll("\\n", "<br>")`;
|
|
20918
20918
|
|
|
20919
|
-
ninegrid
|
|
20919
|
+
ninegrid.j.querySelectorAll(this).addClass("expand");
|
|
20920
20920
|
|
|
20921
|
-
ninegrid
|
|
20922
|
-
ninegrid
|
|
20921
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr", expr);
|
|
20922
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).attr("data-expr", expr);
|
|
20923
20923
|
|
|
20924
20924
|
this.#setRowHeightFit();
|
|
20925
20925
|
};
|
|
20926
20926
|
|
|
20927
20927
|
#collapse = () => {
|
|
20928
20928
|
|
|
20929
|
-
ninegrid
|
|
20929
|
+
ninegrid.j.querySelectorAll(this).removeClass("expand");
|
|
20930
20930
|
|
|
20931
20931
|
if (this.#originExpr) {
|
|
20932
|
-
ninegrid
|
|
20933
|
-
ninegrid
|
|
20932
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr", this.#originExpr);
|
|
20933
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).attr("data-expr", this.#originExpr);
|
|
20934
20934
|
}
|
|
20935
20935
|
else {
|
|
20936
|
-
ninegrid
|
|
20937
|
-
ninegrid
|
|
20936
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).removeAttr("data-expr");
|
|
20937
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).removeAttr("data-expr");
|
|
20938
20938
|
}
|
|
20939
20939
|
|
|
20940
20940
|
this.#setRowHeightFit();
|
|
@@ -20970,8 +20970,8 @@ class ngRowIndicator extends ngCellEx
|
|
|
20970
20970
|
|
|
20971
20971
|
this.shadowRoot.innerHTML = `
|
|
20972
20972
|
<style>
|
|
20973
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20974
|
-
${ninegrid
|
|
20973
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowIndicator.css";
|
|
20974
|
+
${ninegrid.getCustomPath(this,"ngRowIndicator.css")}
|
|
20975
20975
|
|
|
20976
20976
|
svg.dtl {
|
|
20977
20977
|
display: ${"none"};
|
|
@@ -21006,7 +21006,7 @@ class ngRowIndicator extends ngCellEx
|
|
|
21006
21006
|
|
|
21007
21007
|
//this.cell.dataset.expr = ninegrid.nvl(this.cell.dataset.expr, "data.__ng._[ninegrid.ROW.PIN] ? '*' : data.__ng._[ninegrid.ROW.ORDER]");
|
|
21008
21008
|
//this.cell.dataset.expr = ninegrid.nvl(this.cell.dataset.expr, "data.__ng._[ninegrid.ROW.ORDER] + ':' + data.__ng._[ninegrid.ROW.VISIBLE_ROW] + ':' + data.__ng._[ninegrid.ROW.INDEX]");
|
|
21009
|
-
this.cell.dataset.expr = ninegrid
|
|
21009
|
+
this.cell.dataset.expr = ninegrid.nvl(this.cell.dataset.expr, "data.__ng._[ninegrid.ROW.ORDER]");
|
|
21010
21010
|
|
|
21011
21011
|
this.cell.setAttribute("text-align", "center");
|
|
21012
21012
|
|
|
@@ -21034,14 +21034,14 @@ class ngRowIndicator extends ngCellEx
|
|
|
21034
21034
|
var row = parseInt(this.cell.dataset.row);
|
|
21035
21035
|
|
|
21036
21036
|
switch (this.data.__ng.rowState) {
|
|
21037
|
-
case ninegrid
|
|
21038
|
-
ninegrid
|
|
21037
|
+
case ninegrid.ROW_STATE.INSERT:
|
|
21038
|
+
ninegrid.j.querySelectorAll(this).addClass('added').removeClass('updated');
|
|
21039
21039
|
break;
|
|
21040
|
-
case ninegrid
|
|
21041
|
-
ninegrid
|
|
21040
|
+
case ninegrid.ROW_STATE.UPDATE:
|
|
21041
|
+
ninegrid.j.querySelectorAll(this).addClass('updated');
|
|
21042
21042
|
break;
|
|
21043
21043
|
default:
|
|
21044
|
-
ninegrid
|
|
21044
|
+
ninegrid.j.querySelectorAll(this).removeClass('added').removeClass('updated');
|
|
21045
21045
|
break;
|
|
21046
21046
|
}
|
|
21047
21047
|
|
|
@@ -21051,7 +21051,7 @@ class ngRowIndicator extends ngCellEx
|
|
|
21051
21051
|
};
|
|
21052
21052
|
|
|
21053
21053
|
#init = () => {
|
|
21054
|
-
if (!ninegrid
|
|
21054
|
+
if (!ninegrid.j.querySelectorAll(this.closest("tbody")).hasClass("fixed")) {
|
|
21055
21055
|
var rowSpan = this.cell.rowSpan;
|
|
21056
21056
|
var tr = this.closest("tr");
|
|
21057
21057
|
for (var i = 0; i < rowSpan; i++) {
|
|
@@ -21138,12 +21138,12 @@ class ngRowResizer extends HTMLElement
|
|
|
21138
21138
|
|
|
21139
21139
|
$(this).on("mousedown", e => {
|
|
21140
21140
|
|
|
21141
|
-
if (ninegrid
|
|
21141
|
+
if (ninegrid.j.querySelectorAll(this.#cell.closest("tbody")).hasClass('fixed')) return;
|
|
21142
21142
|
|
|
21143
21143
|
this.#timer = setTimeout(() => { this.#onMouseDown(e); }, 500);
|
|
21144
21144
|
})
|
|
21145
21145
|
.on("dblclick", e => {
|
|
21146
|
-
if (ninegrid
|
|
21146
|
+
if (ninegrid.j.querySelectorAll(this.#cell.closest("tbody")).hasClass('fixed')) return;
|
|
21147
21147
|
|
|
21148
21148
|
this.#onDblClick(e);
|
|
21149
21149
|
});
|
|
@@ -21254,8 +21254,8 @@ class ngRowPin extends ngCellEx
|
|
|
21254
21254
|
|
|
21255
21255
|
this.shadowRoot.innerHTML = `
|
|
21256
21256
|
<style>
|
|
21257
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
21258
|
-
${ninegrid
|
|
21257
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowPin.css";
|
|
21258
|
+
${ninegrid.getCustomPath(this,"ngRowPin.css")}
|
|
21259
21259
|
</style>
|
|
21260
21260
|
|
|
21261
21261
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" focusable="false" aria-hidden="true">
|
|
@@ -21271,7 +21271,7 @@ class ngRowPin extends ngCellEx
|
|
|
21271
21271
|
dataRefresh = (v) => {
|
|
21272
21272
|
if (!this.owner || !this.cell || !this.data) return;
|
|
21273
21273
|
|
|
21274
|
-
this.cell.closest("tbody.fixed") ? ninegrid
|
|
21274
|
+
this.cell.closest("tbody.fixed") ? ninegrid.j.querySelectorAll(this).addClass("pin") : ninegrid.j.querySelectorAll(this).removeClass("pin");
|
|
21275
21275
|
|
|
21276
21276
|
if (!v) this.reset();
|
|
21277
21277
|
};
|
|
@@ -21279,12 +21279,12 @@ class ngRowPin extends ngCellEx
|
|
|
21279
21279
|
#init = () => {
|
|
21280
21280
|
|
|
21281
21281
|
/** Mobile에서 Row Pin 기능 방지 */
|
|
21282
|
-
if (!ninegrid
|
|
21282
|
+
if (!ninegrid.isMobile()) {
|
|
21283
21283
|
this.shadowRoot.querySelector("svg").addEventListener("click", e => {
|
|
21284
21284
|
|
|
21285
21285
|
const row = this.cell.closest("tr").dataset.row;
|
|
21286
21286
|
|
|
21287
|
-
this.cell.closest("tbody.fixed") ? this.owner.pin.remove(row) : this.owner.pin.add(this.data.__ng._[ninegrid
|
|
21287
|
+
this.cell.closest("tbody.fixed") ? this.owner.pin.remove(row) : this.owner.pin.add(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
21288
21288
|
});
|
|
21289
21289
|
}
|
|
21290
21290
|
}
|
|
@@ -21306,7 +21306,7 @@ class ngPinManager
|
|
|
21306
21306
|
* 1. grid attr == filter : on();
|
|
21307
21307
|
*/
|
|
21308
21308
|
this.#records.forEach(v => {
|
|
21309
|
-
v.__ng._[ninegrid
|
|
21309
|
+
v.__ng._[ninegrid.ROW.PIN] = false;
|
|
21310
21310
|
});
|
|
21311
21311
|
|
|
21312
21312
|
this.#records = [];
|
|
@@ -21318,7 +21318,7 @@ class ngPinManager
|
|
|
21318
21318
|
|
|
21319
21319
|
//var data = this.#owner.data.getRow(i);
|
|
21320
21320
|
var data = this.#owner.data.getNF(index);
|
|
21321
|
-
data.__ng._[ninegrid
|
|
21321
|
+
data.__ng._[ninegrid.ROW.PIN] = true;
|
|
21322
21322
|
|
|
21323
21323
|
this.#records.push(data);
|
|
21324
21324
|
|
|
@@ -21338,7 +21338,7 @@ class ngPinManager
|
|
|
21338
21338
|
bodyTmpl .each((i,tr) => { $(".ng-container-body tbody.fixed", this.#owner.body).append(tr.outerHTML); });
|
|
21339
21339
|
|
|
21340
21340
|
$("tbody.fixed tr:not([data-index])", this.#owner.body).each((i,tr) => {
|
|
21341
|
-
tr.dataset.index = data.__ng._[ninegrid
|
|
21341
|
+
tr.dataset.index = data.__ng._[ninegrid.ROW.INDEX];
|
|
21342
21342
|
tr.data = data;
|
|
21343
21343
|
});
|
|
21344
21344
|
|
|
@@ -21349,9 +21349,9 @@ class ngPinManager
|
|
|
21349
21349
|
|
|
21350
21350
|
$("tbody.fixed tr", this.#owner.body).each((i,tr) => {
|
|
21351
21351
|
tr.dataset.matrixRow = parseInt(tr.dataset.row) * this.#owner.template.length + (parseInt(tr.sectionRowIndex % this.#owner.template.length));
|
|
21352
|
-
ninegrid
|
|
21353
|
-
ninegrid
|
|
21354
|
-
ninegrid
|
|
21352
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-index", tr.dataset.index);
|
|
21353
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-row", tr.dataset.row);
|
|
21354
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-matrix-row", tr.dataset.matrixRow);
|
|
21355
21355
|
});
|
|
21356
21356
|
|
|
21357
21357
|
this.#owner.data.resetRecords();
|
|
@@ -21368,7 +21368,7 @@ class ngPinManager
|
|
|
21368
21368
|
$(`.ng-container-right tbody.fixed tr[data-row=${row}]`, this.#owner.body).remove();
|
|
21369
21369
|
$(`.ng-container-body tbody.fixed tr[data-row=${row}]`, this.#owner.body).remove();
|
|
21370
21370
|
|
|
21371
|
-
this.#records[index].__ng._[ninegrid
|
|
21371
|
+
this.#records[index].__ng._[ninegrid.ROW.PIN] = false;
|
|
21372
21372
|
|
|
21373
21373
|
this.#records.splice(index, 1);
|
|
21374
21374
|
}
|
|
@@ -21404,8 +21404,8 @@ class ngRowState extends ngCellEx
|
|
|
21404
21404
|
connectedCallback() {
|
|
21405
21405
|
this.shadowRoot.innerHTML = `
|
|
21406
21406
|
<style>
|
|
21407
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
21408
|
-
${ninegrid
|
|
21407
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowState.css";
|
|
21408
|
+
${ninegrid.getCustomPath(this,"ngRowState.css")}
|
|
21409
21409
|
</style>
|
|
21410
21410
|
`;
|
|
21411
21411
|
|
|
@@ -21419,14 +21419,14 @@ class ngRowState extends ngCellEx
|
|
|
21419
21419
|
//var row = parseInt(this.cell.dataset.row);
|
|
21420
21420
|
|
|
21421
21421
|
switch (this.data.__ng.rowState) {
|
|
21422
|
-
case ninegrid
|
|
21423
|
-
ninegrid
|
|
21422
|
+
case ninegrid.ROW_STATE.INSERT:
|
|
21423
|
+
ninegrid.j.querySelectorAll(this).addClass('added').removeClass('updated');
|
|
21424
21424
|
break;
|
|
21425
|
-
case ninegrid
|
|
21426
|
-
ninegrid
|
|
21425
|
+
case ninegrid.ROW_STATE.UPDATE:
|
|
21426
|
+
ninegrid.j.querySelectorAll(this).addClass('updated');
|
|
21427
21427
|
break;
|
|
21428
21428
|
default:
|
|
21429
|
-
ninegrid
|
|
21429
|
+
ninegrid.j.querySelectorAll(this).removeClass('added').removeClass('updated');
|
|
21430
21430
|
break;
|
|
21431
21431
|
}
|
|
21432
21432
|
|
|
@@ -21458,8 +21458,8 @@ class ngVScrollBar extends HTMLElement
|
|
|
21458
21458
|
|
|
21459
21459
|
this.shadowRoot.innerHTML = `
|
|
21460
21460
|
<style>
|
|
21461
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
21462
|
-
${ninegrid
|
|
21461
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngVScrollBar.css";
|
|
21462
|
+
${ninegrid.getCustomPath(this,"ngVScrollBar.css")}
|
|
21463
21463
|
</style>
|
|
21464
21464
|
|
|
21465
21465
|
<button class='ng-scroll-top' disabled><div class='ng-scroll-icon'></div></button>
|
|
@@ -21784,7 +21784,7 @@ class ngVScrollBar extends HTMLElement
|
|
|
21784
21784
|
e.preventDefault();
|
|
21785
21785
|
|
|
21786
21786
|
if (this.#firstThumbMove) {
|
|
21787
|
-
ninegrid
|
|
21787
|
+
ninegrid.j.querySelectorAll("th,td", this.#owner.body).removeClass("active").removeClass("multi-selected").removeClass("selected").removeClass("selected-current").removeClass("selected-area").removeClass("selected-top").removeClass("selected-bottom").removeClass("selected-left").removeClass("selected-right");
|
|
21788
21788
|
this.#firstThumbMove = false;
|
|
21789
21789
|
}
|
|
21790
21790
|
|
|
@@ -21828,8 +21828,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
21828
21828
|
|
|
21829
21829
|
this.shadowRoot.innerHTML = `
|
|
21830
21830
|
<style>
|
|
21831
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
21832
|
-
${ninegrid
|
|
21831
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngHScrollBar.css";
|
|
21832
|
+
${ninegrid.getCustomPath(this,"ngHScrollBar.css")}
|
|
21833
21833
|
</style>
|
|
21834
21834
|
|
|
21835
21835
|
<button class='ng-scroll-left' disabled><div class='ng-scroll-icon'></div></button>
|
|
@@ -21877,8 +21877,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
21877
21877
|
thumb.css({left : l});
|
|
21878
21878
|
|
|
21879
21879
|
// enable
|
|
21880
|
-
ninegrid
|
|
21881
|
-
ninegrid
|
|
21880
|
+
ninegrid.j.querySelectorAll(".ng-scroll-left", this.shadowRoot).attr("disabled", l == 0 ? true : false);
|
|
21881
|
+
ninegrid.j.querySelectorAll(".ng-scroll-right", this.shadowRoot).attr("disabled", (l == track.width() - thumb.width()) ? true : false);
|
|
21882
21882
|
|
|
21883
21883
|
// edge show
|
|
21884
21884
|
var vbar = this.#owner.body.querySelector("ng-vscrollbar");
|
|
@@ -21942,8 +21942,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
21942
21942
|
|
|
21943
21943
|
thumb.css({left : l});
|
|
21944
21944
|
|
|
21945
|
-
ninegrid
|
|
21946
|
-
ninegrid
|
|
21945
|
+
ninegrid.j.querySelectorAll(".ng-scroll-left", this.shadowRoot).attr("disabled", l == 0 ? true : false);
|
|
21946
|
+
ninegrid.j.querySelectorAll(".ng-scroll-right", this.shadowRoot).attr("disabled", (l == track.width() - thumb.width()) ? true : false);
|
|
21947
21947
|
}
|
|
21948
21948
|
|
|
21949
21949
|
#init = () => {
|
|
@@ -22169,7 +22169,7 @@ class ngSorting
|
|
|
22169
22169
|
* 정렬상태 초기화
|
|
22170
22170
|
*/
|
|
22171
22171
|
#restore = () => {
|
|
22172
|
-
this.#owner.data.sort((a,b) => { return a.__ng._[ninegrid
|
|
22172
|
+
this.#owner.data.sort((a,b) => { return a.__ng._[ninegrid.ROW.ORIGIN_ORDER] - b.__ng._[ninegrid.ROW.ORIGIN_ORDER]; });
|
|
22173
22173
|
}
|
|
22174
22174
|
|
|
22175
22175
|
#onClick = (e) => {
|
|
@@ -22184,11 +22184,11 @@ class ngSorting
|
|
|
22184
22184
|
|
|
22185
22185
|
switch (e.detail) {
|
|
22186
22186
|
case 1:
|
|
22187
|
-
ninegrid
|
|
22187
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22188
22188
|
|
|
22189
22189
|
setTimeout(() => {
|
|
22190
22190
|
this.#sort(e);
|
|
22191
|
-
ninegrid
|
|
22191
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22192
22192
|
}); // should match OS multi-click speed
|
|
22193
22193
|
break;
|
|
22194
22194
|
case 2:
|
|
@@ -22225,36 +22225,36 @@ class ngSorting
|
|
|
22225
22225
|
if (!e.ctrlKey && !e.shiftKey) {
|
|
22226
22226
|
//remove all class
|
|
22227
22227
|
//$("thead th,thead td", this.#owner.body).not(`[data-col="${col}"]`).removeClass("asc").removeClass("desc");
|
|
22228
|
-
ninegrid
|
|
22228
|
+
ninegrid.j.querySelectorAll(`thead th:not([data-col="${col}"],thead td:not([data-col="${col}"])`, this.#owner.body).removeClass("asc").removeClass("desc");
|
|
22229
22229
|
|
|
22230
22230
|
this.#columns.splice(0, this.#columns.length);
|
|
22231
22231
|
}
|
|
22232
22232
|
|
|
22233
|
-
ninegrid
|
|
22233
|
+
ninegrid.removeIf(this.#columns, m => { return m.colnm == colnm; });
|
|
22234
22234
|
|
|
22235
|
-
if (!ninegrid
|
|
22236
|
-
ninegrid
|
|
22235
|
+
if (!ninegrid.j.querySelectorAll(td).hasClass("asc") && !ninegrid.j.querySelectorAll(td).hasClass("desc")) {
|
|
22236
|
+
ninegrid.j.querySelectorAll(td).removeClass("desc").addClass("asc");
|
|
22237
22237
|
|
|
22238
22238
|
this.#columns.push({"colnm": colnm, "asc": true, "expr-func": exprFunc, });
|
|
22239
22239
|
}
|
|
22240
|
-
else if (ninegrid
|
|
22241
|
-
ninegrid
|
|
22240
|
+
else if (ninegrid.j.querySelectorAll(td).hasClass("asc")) {
|
|
22241
|
+
ninegrid.j.querySelectorAll(td).removeClass("asc").addClass("desc");
|
|
22242
22242
|
this.#columns.push({"colnm": colnm, "asc": false, "expr-func": exprFunc, });
|
|
22243
22243
|
}
|
|
22244
22244
|
else {
|
|
22245
|
-
ninegrid
|
|
22245
|
+
ninegrid.j.querySelectorAll(td).removeClass("asc").removeClass("desc");
|
|
22246
22246
|
}
|
|
22247
22247
|
|
|
22248
22248
|
//console.log(ninegrid.j.querySelectorAll("thead th,thead td", this.#owner.body).hasClass("asc"), ninegrid.j.querySelectorAll("thead th,thead td", this.#owner.body).hasClass("desc"));
|
|
22249
22249
|
|
|
22250
|
-
if (!ninegrid
|
|
22250
|
+
if (!ninegrid.j.querySelectorAll("thead th,thead td", this.#owner.body).hasClass("asc") && !ninegrid.j.querySelectorAll("thead th,thead td", this.#owner.body).hasClass("desc")) {
|
|
22251
22251
|
this.#restore();
|
|
22252
22252
|
}
|
|
22253
22253
|
else {
|
|
22254
22254
|
this.#owner.data.sort((a,b) => { return this.#compareFn(a,b); });
|
|
22255
22255
|
}
|
|
22256
22256
|
|
|
22257
|
-
(this.#owner.paging.type == ninegrid
|
|
22257
|
+
(this.#owner.paging.type == ninegrid.PAGINGTYPE.CLIENT) ? this.#owner.paging.movePage(1) : this.#owner.view.redraw();
|
|
22258
22258
|
}
|
|
22259
22259
|
|
|
22260
22260
|
#compareFn = (a, b) => {
|
|
@@ -22266,10 +22266,10 @@ class ngSorting
|
|
|
22266
22266
|
const aa = this.#owner.data.conv(a);
|
|
22267
22267
|
const bb = this.#owner.data.conv(b);
|
|
22268
22268
|
|
|
22269
|
-
if (column["expr-func"](aa,aa.__ng._[ninegrid
|
|
22269
|
+
if (column["expr-func"](aa,aa.__ng._[ninegrid.ROW.INDEX]) > column["expr-func"](bb,bb.__ng._[ninegrid.ROW.INDEX])) {
|
|
22270
22270
|
return column.asc ? 1 : -1;
|
|
22271
22271
|
}
|
|
22272
|
-
else if (column["expr-func"](aa,aa.__ng._[ninegrid
|
|
22272
|
+
else if (column["expr-func"](aa,aa.__ng._[ninegrid.ROW.INDEX]) < column["expr-func"](bb,bb.__ng._[ninegrid.ROW.INDEX])) {
|
|
22273
22273
|
return column.asc ? -1 : 1;
|
|
22274
22274
|
}
|
|
22275
22275
|
}
|
|
@@ -22329,13 +22329,13 @@ class ngTableManager
|
|
|
22329
22329
|
const target = $(`.col-indicator[data-col=${col}]`, this.#owner.body);
|
|
22330
22330
|
|
|
22331
22331
|
if (target.closest(".ng-container-body").length > 0) {
|
|
22332
|
-
return ninegrid
|
|
22332
|
+
return ninegrid.BAND.BODY;
|
|
22333
22333
|
}
|
|
22334
22334
|
else if (target.closest(".ng-container-left").length > 0) {
|
|
22335
|
-
return ninegrid
|
|
22335
|
+
return ninegrid.BAND.LEFT;
|
|
22336
22336
|
}
|
|
22337
22337
|
else if (target.closest(".ng-container-right").length > 0) {
|
|
22338
|
-
return ninegrid
|
|
22338
|
+
return ninegrid.BAND.RIGHT;
|
|
22339
22339
|
}
|
|
22340
22340
|
};
|
|
22341
22341
|
|
|
@@ -22347,7 +22347,7 @@ class ngTableManager
|
|
|
22347
22347
|
|
|
22348
22348
|
this.#owner.body.querySelector(`colgroup [data-col="${col}"]:not(.cdummy)`).setAttribute("width", w);
|
|
22349
22349
|
|
|
22350
|
-
if (band != ninegrid
|
|
22350
|
+
if (band != ninegrid.BAND.BODY) {
|
|
22351
22351
|
var w = 0;
|
|
22352
22352
|
$(`.ng-container-${band} col`, this.#owner.body).each((i,el) => { w += parseInt(el.getAttribute("width")); });
|
|
22353
22353
|
$(`.ng-container-${band}`, this.#owner.body).css({ "width": w, "min-width" : w, });
|
|
@@ -22357,7 +22357,7 @@ class ngTableManager
|
|
|
22357
22357
|
};
|
|
22358
22358
|
|
|
22359
22359
|
this.getExprFunc = (col, colnm) => {
|
|
22360
|
-
const cell = ninegrid
|
|
22360
|
+
const cell = ninegrid.j.querySelectorAll(colnm ? `[data-col="${col}"][data-bind="${colnm}"]` : `[data-col="${col}"]`, this.#owner.tmpl).elem();
|
|
22361
22361
|
const expr = cell ? cell.getAttribute("data-expr") : null;
|
|
22362
22362
|
|
|
22363
22363
|
return (expr) ? this.#owner.exprFunction(expr) : null;
|
|
@@ -22370,14 +22370,14 @@ class ngTableManager
|
|
|
22370
22370
|
if (async == undefined) async = true;
|
|
22371
22371
|
|
|
22372
22372
|
if (async) {
|
|
22373
|
-
ninegrid
|
|
22373
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22374
22374
|
|
|
22375
22375
|
setTimeout(() => {
|
|
22376
22376
|
var w = this.#getColumnTextWidth(col);
|
|
22377
22377
|
//if (w != 0) this.setColumnWidth(col, minWidth ? Math.max(w, minWidth) : w);
|
|
22378
22378
|
this.setColumnWidth(col, minWidth ? Math.max(w, minWidth) : w);
|
|
22379
22379
|
|
|
22380
|
-
ninegrid
|
|
22380
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22381
22381
|
});
|
|
22382
22382
|
}
|
|
22383
22383
|
else {
|
|
@@ -22406,7 +22406,7 @@ class ngTableManager
|
|
|
22406
22406
|
const th = document.createElement('th');
|
|
22407
22407
|
th.setAttribute("scope", "col");
|
|
22408
22408
|
|
|
22409
|
-
ninegrid
|
|
22409
|
+
ninegrid.j.querySelectorAll(th).addClass("col-indicator");
|
|
22410
22410
|
|
|
22411
22411
|
$(th).html('<div></div>').insertBefore(toTH).css({ "width" : w, "min-width" : w, });
|
|
22412
22412
|
});
|
|
@@ -22601,7 +22601,7 @@ class ngTableManager
|
|
|
22601
22601
|
|
|
22602
22602
|
case "NG-RADIO":
|
|
22603
22603
|
o.value = rowData[colnm];
|
|
22604
|
-
if (o.value != null && o.value != "" && !ninegrid
|
|
22604
|
+
if (o.value != null && o.value != "" && !ninegrid.isNull(comp.dataSource)) {
|
|
22605
22605
|
o.code = comp.dataSource.map(m => { return m[comp.getAttribute("key") || "key"]; }).includes(o.value) ? 0 : -1;
|
|
22606
22606
|
}
|
|
22607
22607
|
break;
|
|
@@ -22644,7 +22644,7 @@ class ngTableManager
|
|
|
22644
22644
|
}
|
|
22645
22645
|
|
|
22646
22646
|
if (matrixRow == null) {
|
|
22647
|
-
ninegrid
|
|
22647
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22648
22648
|
|
|
22649
22649
|
setTimeout(() => {
|
|
22650
22650
|
for (var i = 0; i < this.#owner.data.count(); i++) {
|
|
@@ -22663,7 +22663,7 @@ class ngTableManager
|
|
|
22663
22663
|
|
|
22664
22664
|
this.#owner.view.redraw();
|
|
22665
22665
|
|
|
22666
|
-
ninegrid
|
|
22666
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22667
22667
|
});
|
|
22668
22668
|
}
|
|
22669
22669
|
else {
|
|
@@ -22694,7 +22694,7 @@ class ngTableManager
|
|
|
22694
22694
|
const v = String(rowData.v[COL_IDX]);
|
|
22695
22695
|
|
|
22696
22696
|
if (bind && v.includes("\n")) {
|
|
22697
|
-
h = Math.max(h, ninegrid
|
|
22697
|
+
h = Math.max(h, ninegrid.measureTextSize(v, fonts[i]).height);
|
|
22698
22698
|
}
|
|
22699
22699
|
});
|
|
22700
22700
|
|
|
@@ -22727,7 +22727,7 @@ class ngTableManager
|
|
|
22727
22727
|
if (!v) continue;
|
|
22728
22728
|
|
|
22729
22729
|
|
|
22730
|
-
w = Math.max(w, ninegrid
|
|
22730
|
+
w = Math.max(w, ninegrid.measureTextSize(v, font).width);// + (comp.length > 0 ? 40 : 0);
|
|
22731
22731
|
}
|
|
22732
22732
|
});
|
|
22733
22733
|
|
|
@@ -22781,7 +22781,7 @@ class ngTableWrapper
|
|
|
22781
22781
|
const th = document.createElement('th');
|
|
22782
22782
|
th.setAttribute("scope", "col");
|
|
22783
22783
|
|
|
22784
|
-
ninegrid
|
|
22784
|
+
ninegrid.j.querySelectorAll(th).addClass("col-indicator");
|
|
22785
22785
|
|
|
22786
22786
|
$(th).html('<div></div>').insertBefore(toTH).css({ "width" : w, "min-width" : w, });
|
|
22787
22787
|
});
|
|
@@ -23024,8 +23024,8 @@ class ngTextArea extends ngEditableEx
|
|
|
23024
23024
|
connectedCallback() {
|
|
23025
23025
|
this.shadowRoot.innerHTML = `
|
|
23026
23026
|
<style>
|
|
23027
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
23028
|
-
${ninegrid
|
|
23027
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngTextArea.css";
|
|
23028
|
+
${ninegrid.getCustomPath(this,"ngTextArea.css")}
|
|
23029
23029
|
</style>
|
|
23030
23030
|
|
|
23031
23031
|
<textarea ondragstart="return false"></textarea>
|
|
@@ -23162,8 +23162,8 @@ class ngTreeItem extends ngCellEx
|
|
|
23162
23162
|
|
|
23163
23163
|
this.shadowRoot.innerHTML = `
|
|
23164
23164
|
<style>
|
|
23165
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
23166
|
-
${ninegrid
|
|
23165
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngTreeItem.css";
|
|
23166
|
+
${ninegrid.getCustomPath(this,"ngTreeItem.css")}
|
|
23167
23167
|
</style>
|
|
23168
23168
|
|
|
23169
23169
|
<div class="ng-pad"></div>
|
|
@@ -23209,8 +23209,8 @@ class ngTreeItem extends ngCellEx
|
|
|
23209
23209
|
#onClick = e => {
|
|
23210
23210
|
|
|
23211
23211
|
this.#toggle();
|
|
23212
|
-
ninegrid
|
|
23213
|
-
ninegrid
|
|
23212
|
+
ninegrid.j.querySelectorAll(e.target).removeClass("ng-expand-on").removeClass("ng-expand-off");
|
|
23213
|
+
ninegrid.j.querySelectorAll(e.target).addClass(this.#isExpand ? "ng-expand-on" : "ng-expand-off");
|
|
23214
23214
|
};
|
|
23215
23215
|
|
|
23216
23216
|
get prevLevel() {
|
|
@@ -23225,7 +23225,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23225
23225
|
else {
|
|
23226
23226
|
for (var i = parseInt(this.cell.dataset.row) - 1; i >= 0; i--) {
|
|
23227
23227
|
var data = this.owner.data.get(i);
|
|
23228
|
-
if (!data.__ng._[ninegrid
|
|
23228
|
+
if (!data.__ng._[ninegrid.ROW.EXPAND]) return data[this.cell.dataset.bind];
|
|
23229
23229
|
}
|
|
23230
23230
|
}
|
|
23231
23231
|
|
|
@@ -23234,7 +23234,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23234
23234
|
|
|
23235
23235
|
|
|
23236
23236
|
get #isExpand() {
|
|
23237
|
-
return this.data.__ng._[ninegrid
|
|
23237
|
+
return this.data.__ng._[ninegrid.ROW.EXPAND];
|
|
23238
23238
|
};
|
|
23239
23239
|
|
|
23240
23240
|
#resetTree = () => {
|
|
@@ -23254,11 +23254,11 @@ class ngTreeItem extends ngCellEx
|
|
|
23254
23254
|
|
|
23255
23255
|
|
|
23256
23256
|
|
|
23257
|
-
ninegrid
|
|
23257
|
+
ninegrid.j.querySelectorAll(".ng-icon", this.shadowRoot)
|
|
23258
23258
|
.removeClass("ng-expand-on").removeClass("ng-expand-off").removeClass("ng-node").removeClass("ng-icon-up").removeClass("ng-icon-down").removeClass("ng-icon-none")
|
|
23259
23259
|
.addClass(hasChildren ? (this.#isExpand ? "ng-expand-on" : "ng-expand-off") : "ng-node");
|
|
23260
23260
|
|
|
23261
|
-
const icon = ninegrid
|
|
23261
|
+
const icon = ninegrid.j.querySelectorAll(".ng-icon", this.shadowRoot);
|
|
23262
23262
|
if (row == 0) {
|
|
23263
23263
|
if (isLast) {
|
|
23264
23264
|
icon.addClass("ng-icon-none");
|
|
@@ -23288,12 +23288,12 @@ class ngTreeItem extends ngCellEx
|
|
|
23288
23288
|
|
|
23289
23289
|
if (level < nextLevel) {
|
|
23290
23290
|
if (this.#isExpand) {
|
|
23291
|
-
ninegrid
|
|
23291
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-down");
|
|
23292
23292
|
} else {
|
|
23293
|
-
ninegrid
|
|
23293
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-none");
|
|
23294
23294
|
}
|
|
23295
23295
|
} else {
|
|
23296
|
-
ninegrid
|
|
23296
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-none");
|
|
23297
23297
|
}
|
|
23298
23298
|
|
|
23299
23299
|
};
|
|
@@ -23303,7 +23303,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23303
23303
|
};
|
|
23304
23304
|
#expand = (b) => {
|
|
23305
23305
|
|
|
23306
|
-
this.data.__ng._[ninegrid
|
|
23306
|
+
this.data.__ng._[ninegrid.ROW.EXPAND] = b;
|
|
23307
23307
|
|
|
23308
23308
|
this.#setChildVisible(b);
|
|
23309
23309
|
|
|
@@ -23315,20 +23315,20 @@ class ngTreeItem extends ngCellEx
|
|
|
23315
23315
|
|
|
23316
23316
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23317
23317
|
|
|
23318
|
-
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid
|
|
23318
|
+
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23319
23319
|
if (idx < 0) return;
|
|
23320
23320
|
|
|
23321
23321
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
23322
23322
|
var lvl = this.value;
|
|
23323
23323
|
|
|
23324
23324
|
var prev = this.owner.data.getRow(this.row);
|
|
23325
|
-
var parentExpand = prev.__ng._[ninegrid
|
|
23325
|
+
var parentExpand = prev.__ng._[ninegrid.ROW.EXPAND];
|
|
23326
23326
|
for (var i = idx + 1; i < arrNF.length; i++) {
|
|
23327
23327
|
var lvl2 = arrNF[i].v[COL_IDX];
|
|
23328
23328
|
|
|
23329
23329
|
|
|
23330
23330
|
if (lvl2 > prev.v[COL_IDX]) {
|
|
23331
|
-
parentExpand = prev.__ng._[ninegrid
|
|
23331
|
+
parentExpand = prev.__ng._[ninegrid.ROW.EXPAND];
|
|
23332
23332
|
}
|
|
23333
23333
|
else if (lvl2 < prev.v[COL_IDX]) {
|
|
23334
23334
|
parentExpand = null;
|
|
@@ -23337,21 +23337,21 @@ class ngTreeItem extends ngCellEx
|
|
|
23337
23337
|
if (lvl2 <= lvl) break;
|
|
23338
23338
|
|
|
23339
23339
|
if (parentExpand == null) {
|
|
23340
|
-
arrNF[i].__ng._[ninegrid
|
|
23340
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = !b;
|
|
23341
23341
|
}
|
|
23342
23342
|
else {
|
|
23343
23343
|
|
|
23344
23344
|
if (parentExpand && b) {
|
|
23345
|
-
arrNF[i].__ng._[ninegrid
|
|
23345
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = false;//!b;
|
|
23346
23346
|
}
|
|
23347
23347
|
else if (parentExpand && !b) {
|
|
23348
|
-
arrNF[i].__ng._[ninegrid
|
|
23348
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23349
23349
|
}
|
|
23350
23350
|
else if (!parentExpand && b) {
|
|
23351
|
-
arrNF[i].__ng._[ninegrid
|
|
23351
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23352
23352
|
}
|
|
23353
23353
|
else if (!parentExpand && !b) {
|
|
23354
|
-
arrNF[i].__ng._[ninegrid
|
|
23354
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23355
23355
|
}
|
|
23356
23356
|
}
|
|
23357
23357
|
|
|
@@ -23363,7 +23363,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23363
23363
|
|
|
23364
23364
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23365
23365
|
|
|
23366
|
-
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid
|
|
23366
|
+
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23367
23367
|
if (idx < 0) return;
|
|
23368
23368
|
|
|
23369
23369
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
@@ -23374,7 +23374,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23374
23374
|
|
|
23375
23375
|
if (lvl2 <= lvl) break;
|
|
23376
23376
|
|
|
23377
|
-
arrNF[i].__ng._[ninegrid
|
|
23377
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = !b;
|
|
23378
23378
|
}
|
|
23379
23379
|
};
|
|
23380
23380
|
|
|
@@ -23397,7 +23397,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23397
23397
|
|
|
23398
23398
|
#isLast = (row) => {
|
|
23399
23399
|
|
|
23400
|
-
if (ninegrid
|
|
23400
|
+
if (ninegrid.isNull(row) || row < 0) throw `invalid row [${row}]`;
|
|
23401
23401
|
|
|
23402
23402
|
if (row + 1 >= this.owner.data.count()) return true;
|
|
23403
23403
|
|
|
@@ -23425,9 +23425,9 @@ class ngTreeItem extends ngCellEx
|
|
|
23425
23425
|
var arr = [];
|
|
23426
23426
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23427
23427
|
|
|
23428
|
-
var idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid
|
|
23428
|
+
var idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23429
23429
|
|
|
23430
|
-
if (idx < 0) throw `invalid row index [${this.data.__ng._[ninegrid
|
|
23430
|
+
if (idx < 0) throw `invalid row index [${this.data.__ng._[ninegrid.ROW.INDEX]}]`;
|
|
23431
23431
|
|
|
23432
23432
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
23433
23433
|
const lvl = arrNF[idx].v[COL_IDX];
|
|
@@ -23450,7 +23450,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23450
23450
|
|
|
23451
23451
|
#getLevel = (row) => {
|
|
23452
23452
|
|
|
23453
|
-
if (ninegrid
|
|
23453
|
+
if (ninegrid.isNull(row) || row < 0 || this.owner.data.count() >= 0) return -1;//throw `invalid row [${row}]`;
|
|
23454
23454
|
|
|
23455
23455
|
return this.owner.data.get(row, this.cell.dataset.bind);
|
|
23456
23456
|
};
|
|
@@ -23569,8 +23569,8 @@ class ngView
|
|
|
23569
23569
|
|
|
23570
23570
|
const displayRowCount = parseInt(this.#owner.getAttribute("display-row-count"));
|
|
23571
23571
|
|
|
23572
|
-
if (this.#owner.closest("dialog") && ninegrid
|
|
23573
|
-
if ([ninegrid
|
|
23572
|
+
if (this.#owner.closest("dialog") && ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) return 1;
|
|
23573
|
+
if ([ninegrid.PAGINGTYPE.CLIENT,ninegrid.PAGINGTYPE.SERVER].includes(this.#owner.paging.type)) return this.#owner.paging.linesPerPage;
|
|
23574
23574
|
if (!isNaN(displayRowCount)) {
|
|
23575
23575
|
|
|
23576
23576
|
/**
|
|
@@ -23710,7 +23710,7 @@ class ngView
|
|
|
23710
23710
|
//this.isLastPage = h > 0 ? true : false;
|
|
23711
23711
|
|
|
23712
23712
|
|
|
23713
|
-
if (this.#owner.closest("dialog") && ninegrid
|
|
23713
|
+
if (this.#owner.closest("dialog") && ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) {
|
|
23714
23714
|
$("tr.nodata", this.#owner.body).height(0);
|
|
23715
23715
|
|
|
23716
23716
|
var h = 47;//this.#getTrHeight();
|
|
@@ -23814,9 +23814,9 @@ class ngView
|
|
|
23814
23814
|
|
|
23815
23815
|
this.#owner.body.querySelector("ng-vscrollbar").refresh();
|
|
23816
23816
|
|
|
23817
|
-
ninegrid
|
|
23818
|
-
ninegrid
|
|
23819
|
-
ninegrid
|
|
23817
|
+
ninegrid.j.querySelectorAll(".ng-table tbody tr", this.#owner.body).removeClass("hover");
|
|
23818
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
23819
|
+
ninegrid.j.querySelectorAll("ng-filter-panel").removeClass("loading");
|
|
23820
23820
|
|
|
23821
23821
|
/**
|
|
23822
23822
|
this.#owner.body.querySelector(".ng-container-left").style.position = "sticky";
|
|
@@ -23988,7 +23988,7 @@ class ngView
|
|
|
23988
23988
|
selectRow = (oRow1, oRow2) => {
|
|
23989
23989
|
|
|
23990
23990
|
const row1 = this.#getRowIndex(oRow1);
|
|
23991
|
-
const row2 = ninegrid
|
|
23991
|
+
const row2 = ninegrid.isNull(oRow2) ? row1 : this.#getRowIndex(oRow2);
|
|
23992
23992
|
const matrixRow1= parseInt(row1 * this.#owner.template.length);
|
|
23993
23993
|
const matrixRow2= parseInt(row2 * this.#owner.template.length) + this.#owner.template.length - 1;
|
|
23994
23994
|
|
|
@@ -23999,7 +23999,7 @@ class ngView
|
|
|
23999
23999
|
|
|
24000
24000
|
selectCol = (oCol1, oCol2) => {
|
|
24001
24001
|
const col1 = this.#getColIndex(oCol1);
|
|
24002
|
-
const col2 = ninegrid
|
|
24002
|
+
const col2 = ninegrid.isNull(oCol2) ? col1 : this.#getColIndex(oCol2);
|
|
24003
24003
|
const matrixRow1= 0;
|
|
24004
24004
|
const matrixRow2= parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
24005
24005
|
|
|
@@ -24010,7 +24010,7 @@ class ngView
|
|
|
24010
24010
|
|
|
24011
24011
|
const row = this.#getRowIndex(oRow);
|
|
24012
24012
|
const col = this.#getColIndex(oCol);
|
|
24013
|
-
const matrixRow = parseInt(row * this.#owner.template.length) + ninegrid
|
|
24013
|
+
const matrixRow = parseInt(row * this.#owner.template.length) + ninegrid.nvl(subrow, 0);
|
|
24014
24014
|
|
|
24015
24015
|
this.#owner.row.at = row;
|
|
24016
24016
|
|
|
@@ -24070,7 +24070,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24070
24070
|
this.attachShadow({ mode: 'open' });
|
|
24071
24071
|
|
|
24072
24072
|
|
|
24073
|
-
ninegrid
|
|
24073
|
+
ninegrid.extendElementPrototype();
|
|
24074
24074
|
|
|
24075
24075
|
this.#layouts = [];
|
|
24076
24076
|
|
|
@@ -24106,7 +24106,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24106
24106
|
this.bindRows = [];
|
|
24107
24107
|
this.bindMatrixRows = [];
|
|
24108
24108
|
|
|
24109
|
-
ninegrid
|
|
24109
|
+
ninegrid.j.querySelectorAll(".ng-container tbody.bindable tr:not(.nodata)", this.body).elements.forEach(tr => {
|
|
24110
24110
|
this.bindRows .push(parseInt(tr.dataset.row));
|
|
24111
24111
|
this.bindMatrixRows .push(parseInt(tr.dataset.matrixRow));
|
|
24112
24112
|
});
|
|
@@ -24203,8 +24203,8 @@ class ninegridContainer extends HTMLElement
|
|
|
24203
24203
|
break;
|
|
24204
24204
|
|
|
24205
24205
|
case "col-indicator-type":
|
|
24206
|
-
ninegrid
|
|
24207
|
-
.removeClass(ninegrid
|
|
24206
|
+
ninegrid.j.querySelectorAll(".ng-table thead .col-indicator-rowgroup", this.body)
|
|
24207
|
+
.removeClass(ninegrid.COLINDICATORTYPE.EXPAND).removeClass(ninegrid.COLINDICATORTYPE.COLLAPSE)
|
|
24208
24208
|
.addClass(newValue);
|
|
24209
24209
|
this.#resetHeight();
|
|
24210
24210
|
break;
|
|
@@ -24214,7 +24214,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24214
24214
|
this.#resetHeight();
|
|
24215
24215
|
break;
|
|
24216
24216
|
case "enable-fixed-col":
|
|
24217
|
-
(newValue == "true") ? ninegrid
|
|
24217
|
+
(newValue == "true") ? ninegrid.j.querySelectorAll(this).addClass(name) : ninegrid.j.querySelectorAll(this).removeClass(name);
|
|
24218
24218
|
break;
|
|
24219
24219
|
|
|
24220
24220
|
case "select-type":
|
|
@@ -24229,20 +24229,20 @@ class ninegridContainer extends HTMLElement
|
|
|
24229
24229
|
|
|
24230
24230
|
case "show-menu-icon":
|
|
24231
24231
|
case "show-title-bar":
|
|
24232
|
-
const showBar = ninegrid
|
|
24233
|
-
const showIcon = ninegrid
|
|
24232
|
+
const showBar = ninegrid.j.querySelectorAll(this).attr("show-title-bar") == "true";
|
|
24233
|
+
const showIcon = ninegrid.j.querySelectorAll(this).attr("show-menu-icon") == "true";
|
|
24234
24234
|
const ngHead = this.shadowRoot.querySelector("ng-head");
|
|
24235
24235
|
if (!ngHead) break;
|
|
24236
24236
|
const ngMenu = ngHead.shadowRoot.querySelector("ng-menu");
|
|
24237
24237
|
|
|
24238
24238
|
if (showBar) {
|
|
24239
|
-
ninegrid
|
|
24239
|
+
ninegrid.j.querySelectorAll(ngHead).addClass('expand');
|
|
24240
24240
|
$(ngHead.shadowRoot).children().not("style").show();
|
|
24241
24241
|
|
|
24242
|
-
if (!showIcon) ninegrid
|
|
24242
|
+
if (!showIcon) ninegrid.j.querySelectorAll(ngMenu).hide();
|
|
24243
24243
|
}
|
|
24244
24244
|
else {
|
|
24245
|
-
(showIcon) ? ninegrid
|
|
24245
|
+
(showIcon) ? ninegrid.j.querySelectorAll(ngHead).removeClass('expand').show() : ninegrid.j.querySelectorAll(ngHead).hide();
|
|
24246
24246
|
}
|
|
24247
24247
|
|
|
24248
24248
|
this.#resetHeight();
|
|
@@ -24253,7 +24253,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24253
24253
|
this.#resetHeight();
|
|
24254
24254
|
break;
|
|
24255
24255
|
case "show-status-bar":
|
|
24256
|
-
(newValue == "true") ? ninegrid
|
|
24256
|
+
(newValue == "true") ? ninegrid.j.querySelectorAll("ng-foot", this.shadowRoot).addClass('expand') : ninegrid.j.querySelectorAll("ng-foot", this.shadowRoot).removeClass('expand');
|
|
24257
24257
|
this.#resetHeight();
|
|
24258
24258
|
break;
|
|
24259
24259
|
}
|
|
@@ -24279,7 +24279,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24279
24279
|
|
|
24280
24280
|
var arr = [];
|
|
24281
24281
|
$(".ng-container-body tbody.fixed tr", this.body).not(".nodata").each((i, tr) => {
|
|
24282
|
-
arr.push({ INDEX: tr.data.__ng._[ninegrid
|
|
24282
|
+
arr.push({ INDEX: tr.data.__ng._[ninegrid.ROW.INDEX], ROW: tr.dataset.row } );
|
|
24283
24283
|
});
|
|
24284
24284
|
|
|
24285
24285
|
arr.forEach(o => {
|
|
@@ -24412,7 +24412,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24412
24412
|
this.elements.bodyLeft.html(table.clone());
|
|
24413
24413
|
$("col,th,td", this.elements.bodyLeft).not("[fixed=left]").remove();
|
|
24414
24414
|
var w = 0;//this.elements.bodyLeft.find("th,td").length == 0 ? 0 : this.elements.bodyLeft.find("table > tbody.bindable").width();
|
|
24415
|
-
$("col", this.elements.bodyLeft).each((i,el) => { w += parseInt(ninegrid
|
|
24415
|
+
$("col", this.elements.bodyLeft).each((i,el) => { w += parseInt(ninegrid.j.querySelectorAll(el).attr("width")); });
|
|
24416
24416
|
this.elements.bodyLeft.css({
|
|
24417
24417
|
"width" : w,//this.elements.bodyLeft.find("table > tbody.bindable").width(),
|
|
24418
24418
|
"min-width" : w,//this.elements.bodyLeft.find("table > tbody.bindable").width(),
|
|
@@ -24421,7 +24421,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24421
24421
|
this.elements.bodyRight.html(table.clone());
|
|
24422
24422
|
$("col,th,td", this.elements.bodyRight).not("[fixed=right]").remove();
|
|
24423
24423
|
w = 0;//this.elements.bodyLeft.find("th,td").length == 0 ? 0 : this.elements.bodyLeft.find("table > tbody.bindable").width();
|
|
24424
|
-
$("col", this.elements.bodyRight).each((i,el) => { w += parseInt(ninegrid
|
|
24424
|
+
$("col", this.elements.bodyRight).each((i,el) => { w += parseInt(ninegrid.j.querySelectorAll(el).attr("width")); });
|
|
24425
24425
|
|
|
24426
24426
|
this.elements.bodyRight.css({
|
|
24427
24427
|
"width" : w,//this.elements.bodyRight.find("table > tbody").width(),
|
|
@@ -24502,7 +24502,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24502
24502
|
|
|
24503
24503
|
this.originFormat = this.outerHTML;
|
|
24504
24504
|
|
|
24505
|
-
this.uuid = ninegrid
|
|
24505
|
+
this.uuid = ninegrid.randomUUID(); //crypto.randomUUID();
|
|
24506
24506
|
if (!this.id) this.id = this.uuid;
|
|
24507
24507
|
|
|
24508
24508
|
|
|
@@ -24583,15 +24583,15 @@ class ninegridContainer extends HTMLElement
|
|
|
24583
24583
|
|
|
24584
24584
|
this.#layouts.push(tbl);
|
|
24585
24585
|
|
|
24586
|
-
if (!ninegrid
|
|
24586
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) {
|
|
24587
24587
|
this.#createDummy(tbl);
|
|
24588
24588
|
}
|
|
24589
24589
|
});
|
|
24590
24590
|
|
|
24591
24591
|
const tmpl = `
|
|
24592
24592
|
<style>
|
|
24593
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
24594
|
-
${ninegrid
|
|
24593
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
24594
|
+
${ninegrid.getCustomPath(this,"ninegrid.css")}
|
|
24595
24595
|
</style>
|
|
24596
24596
|
|
|
24597
24597
|
<ng-head></ng-head>
|
|
@@ -24624,12 +24624,12 @@ class ninegridContainer extends HTMLElement
|
|
|
24624
24624
|
const value = combo.getAttribute("codename") || "codename";
|
|
24625
24625
|
const multiSeparator = combo.getAttribute("multi-separator") || ",";
|
|
24626
24626
|
|
|
24627
|
-
return ninegrid
|
|
24627
|
+
return ninegrid.binarySearchValue(combo.dataSource, code, data[cell.dataset.bind], value, multiSeparator)
|
|
24628
24628
|
};
|
|
24629
24629
|
//$("tbody", this.#layouts[0]).before($("tbody", this.#layouts[0]).clone().addClass("fixed")).addClass("bindable");
|
|
24630
24630
|
|
|
24631
24631
|
for (const layout of this.#layouts) {
|
|
24632
|
-
$(ninegrid
|
|
24632
|
+
$(ninegrid.j.querySelectorAll("tbody", layout).addClass("bindable").elem()).before(`<tbody class="fixed"></tbody>`);
|
|
24633
24633
|
}
|
|
24634
24634
|
|
|
24635
24635
|
$(this.shadowRoot).append(tmpl);
|
|
@@ -24706,10 +24706,10 @@ class ninegridContainer extends HTMLElement
|
|
|
24706
24706
|
}
|
|
24707
24707
|
}
|
|
24708
24708
|
|
|
24709
|
-
if (!ninegrid
|
|
24709
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) {
|
|
24710
24710
|
this.filtering = new ngFiltering(this);
|
|
24711
24711
|
}
|
|
24712
|
-
if (!ninegrid
|
|
24712
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("combo") && !ninegrid.j.querySelectorAll(this).hasClass("filter")) {
|
|
24713
24713
|
$(this.shadowRoot).append($('<ng-combo-panel></ng-combo-panel').hide());
|
|
24714
24714
|
}
|
|
24715
24715
|
|
|
@@ -24719,7 +24719,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24719
24719
|
|
|
24720
24720
|
this.#colResizer = new ngColResizer(this);
|
|
24721
24721
|
this.#colMover = new ngColMover(this);
|
|
24722
|
-
if (!ninegrid
|
|
24722
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) this.#rowMover = new ngRowMover(this);
|
|
24723
24723
|
|
|
24724
24724
|
|
|
24725
24725
|
this.#initOption();
|
|
@@ -24748,7 +24748,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24748
24748
|
|
|
24749
24749
|
|
|
24750
24750
|
/** main, detail */
|
|
24751
|
-
if (!ninegrid
|
|
24751
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("filter") && !ninegrid.j.querySelectorAll(this).hasClass("combo")) {
|
|
24752
24752
|
|
|
24753
24753
|
/**
|
|
24754
24754
|
$(this).on("mousedown", e => {
|
|
@@ -24786,7 +24786,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24786
24786
|
} */
|
|
24787
24787
|
if (!this.classList.contains("simple")) {
|
|
24788
24788
|
setTimeout(() => {
|
|
24789
|
-
this.dispatchEvent(new CustomEvent(ninegrid
|
|
24789
|
+
this.dispatchEvent(new CustomEvent(ninegrid.EVENT.LOAD, { bubbles: true, detail: {} }));
|
|
24790
24790
|
}, 100);
|
|
24791
24791
|
}
|
|
24792
24792
|
|
|
@@ -24794,7 +24794,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24794
24794
|
if (head) {
|
|
24795
24795
|
head.shadowRoot.querySelectorAll("buttons button").forEach(el => {
|
|
24796
24796
|
el.addEventListener("click", e => {
|
|
24797
|
-
const ce = new CustomEvent(ninegrid
|
|
24797
|
+
const ce = new CustomEvent(ninegrid.EVENT.BUTTON_CLICK, { bubbles: true, detail: { target: el, } });
|
|
24798
24798
|
//ce.target = e.target;
|
|
24799
24799
|
this.dispatchEvent(ce);
|
|
24800
24800
|
});
|
|
@@ -24823,29 +24823,29 @@ class ninegridContainer extends HTMLElement
|
|
|
24823
24823
|
|
|
24824
24824
|
#initOption = () => {
|
|
24825
24825
|
|
|
24826
|
-
this.lastRowHidden = isNaN(parseInt(ninegrid
|
|
24826
|
+
this.lastRowHidden = isNaN(parseInt(ninegrid.j.querySelectorAll(this).attr("display-row-count")));
|
|
24827
24827
|
|
|
24828
24828
|
if (!this.paging) this.paging = {}; //row detail 팝청창 오픈시 오류
|
|
24829
24829
|
|
|
24830
|
-
ninegrid
|
|
24830
|
+
ninegrid.j.querySelectorAll(this).attr("col-indicator-type", ninegrid.j.querySelectorAll(this).attr("col-indicator-type") || ninegrid.COLINDICATORTYPE.COLLAPSE);
|
|
24831
24831
|
|
|
24832
|
-
ninegrid
|
|
24833
|
-
ninegrid
|
|
24834
|
-
ninegrid
|
|
24835
|
-
ninegrid
|
|
24832
|
+
ninegrid.j.querySelectorAll(this).attr("auto-fit-col", ninegrid.j.querySelectorAll(this).attr("auto-fit-col") || "false");
|
|
24833
|
+
ninegrid.j.querySelectorAll(this).attr("col-resizable", ninegrid.j.querySelectorAll(this).attr("col-resizable") || "true");
|
|
24834
|
+
ninegrid.j.querySelectorAll(this).attr("row-resizable", ninegrid.j.querySelectorAll(this).attr("row-resizable") || "false");
|
|
24835
|
+
ninegrid.j.querySelectorAll(this).attr("col-movable", ninegrid.j.querySelectorAll(this).attr("col-movable") || "false"); //web attribute
|
|
24836
24836
|
//ninegrid.j.querySelectorAll(this).attr("row-movable", ninegrid.j.querySelectorAll(this).attr("row-movable") || "false");
|
|
24837
|
-
ninegrid
|
|
24837
|
+
ninegrid.j.querySelectorAll(this).attr("enable-fixed-col", ninegrid.j.querySelectorAll(this).attr("enable-fixed-col") || "false");
|
|
24838
24838
|
|
|
24839
|
-
ninegrid
|
|
24840
|
-
ninegrid
|
|
24841
|
-
ninegrid
|
|
24839
|
+
ninegrid.j.querySelectorAll(this).attr("show-title-bar", ninegrid.j.querySelectorAll(this).attr("show-title-bar") || "false");
|
|
24840
|
+
ninegrid.j.querySelectorAll(this).attr("show-menu-icon", ninegrid.j.querySelectorAll(this).attr("show-menu-icon") || "false");
|
|
24841
|
+
ninegrid.j.querySelectorAll(this).attr("show-status-bar", ninegrid.j.querySelectorAll(this).attr("show-status-bar") || "false");
|
|
24842
24842
|
|
|
24843
|
-
ninegrid
|
|
24844
|
-
ninegrid
|
|
24843
|
+
ninegrid.j.querySelectorAll(this).attr("show-thead", ninegrid.j.querySelectorAll(this).attr("show-thead") || "true");
|
|
24844
|
+
ninegrid.j.querySelectorAll(this).attr("show-tfoot", ninegrid.j.querySelectorAll(this).attr("show-tfoot") || "true");
|
|
24845
24845
|
|
|
24846
|
-
ninegrid
|
|
24847
|
-
ninegrid
|
|
24848
|
-
ninegrid
|
|
24846
|
+
ninegrid.j.querySelectorAll(this).attr("select-type", ninegrid.j.querySelectorAll(this).attr("select-type") || ninegrid.SELECTTYPE.CELL);
|
|
24847
|
+
ninegrid.j.querySelectorAll(this).attr("paging-type", ninegrid.j.querySelectorAll(this).attr("paging-type") || ninegrid.PAGINGTYPE.NONE);
|
|
24848
|
+
ninegrid.j.querySelectorAll(this).attr("paging-count", ninegrid.j.querySelectorAll(this).attr("paging-count") || ninegrid.PAGINGCOUNT.AUTO);
|
|
24849
24849
|
};
|
|
24850
24850
|
|
|
24851
24851
|
#createObserver = () => {
|
|
@@ -24883,14 +24883,14 @@ class ninegridContainer extends HTMLElement
|
|
|
24883
24883
|
let prevWidth = [];
|
|
24884
24884
|
var totalWidth = 0;
|
|
24885
24885
|
|
|
24886
|
-
$(".ng-container-body col", this.body).each((i,el) => { prevWidth.push({ col: el, width: Number(ninegrid
|
|
24886
|
+
$(".ng-container-body col", this.body).each((i,el) => { prevWidth.push({ col: el, width: Number(ninegrid.j.querySelectorAll(el).attr("width")), }); });
|
|
24887
24887
|
prevWidth.forEach(o => { totalWidth += o.width; });
|
|
24888
24888
|
|
|
24889
24889
|
//$('.ng-container-body > table', this.body).css({ "width": "100%", "min-width": "100%", });
|
|
24890
24890
|
const tableWidth = $('.ng-container-body', this.body).width();
|
|
24891
24891
|
|
|
24892
24892
|
if (tableWidth != 0) {
|
|
24893
|
-
prevWidth.forEach(o => { var w = o.width * tableWidth / totalWidth; ninegrid
|
|
24893
|
+
prevWidth.forEach(o => { var w = o.width * tableWidth / totalWidth; ninegrid.j.querySelectorAll(o.col).attr("width", w); });
|
|
24894
24894
|
}
|
|
24895
24895
|
}
|
|
24896
24896
|
|
|
@@ -24927,7 +24927,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24927
24927
|
var cols = [];
|
|
24928
24928
|
$(".col-indicator", this.body).each((i,td) => {
|
|
24929
24929
|
cols.push({from: parseInt(td.dataset.col), to: i});
|
|
24930
|
-
td.innerHTML = `<div>${ninegrid
|
|
24930
|
+
td.innerHTML = `<div>${ninegrid.num2ExcelCol(i)}</div>`;
|
|
24931
24931
|
});
|
|
24932
24932
|
|
|
24933
24933
|
|
|
@@ -24949,15 +24949,15 @@ class ninegridContainer extends HTMLElement
|
|
|
24949
24949
|
});
|
|
24950
24950
|
|
|
24951
24951
|
$(".last", layout.currentTable).each((i,td) => {
|
|
24952
|
-
ninegrid
|
|
24952
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
24953
24953
|
});
|
|
24954
24954
|
}
|
|
24955
24955
|
|
|
24956
24956
|
this.template.find(".last").each((i,td) => {
|
|
24957
|
-
ninegrid
|
|
24957
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
24958
24958
|
});
|
|
24959
24959
|
$(".last", this.body).each((i,td) => {
|
|
24960
|
-
ninegrid
|
|
24960
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
24961
24961
|
});
|
|
24962
24962
|
};
|
|
24963
24963
|
|
|
@@ -25023,21 +25023,21 @@ class ninegridContainer extends HTMLElement
|
|
|
25023
25023
|
|
|
25024
25024
|
if (thead.querySelector(".col-indicator-rowgroup")) return;
|
|
25025
25025
|
|
|
25026
|
-
const tr = ninegrid
|
|
25026
|
+
const tr = ninegrid.j.querySelectorAll(thead.insertRow(0)).attr("role", "row").addClass("col-indicator-rowgroup").elem();
|
|
25027
25027
|
var cnt = 0;
|
|
25028
25028
|
|
|
25029
25029
|
$(".ng-container-body > table > tbody.bindable > tr", this.body).eq(0).find("th,td").each((index, td) => {
|
|
25030
25030
|
|
|
25031
|
-
if (!ninegrid
|
|
25031
|
+
if (!ninegrid.j.querySelectorAll(td).hasClass("dummy")) {
|
|
25032
25032
|
for (var i = 0; i < td.colSpan; i++) {
|
|
25033
|
-
$(tr).append(tdTmpl.replace("@col", cnt).replace("@text", ninegrid
|
|
25033
|
+
$(tr).append(tdTmpl.replace("@col", cnt).replace("@text", ninegrid.num2ExcelCol(cnt++)));
|
|
25034
25034
|
}
|
|
25035
25035
|
}
|
|
25036
25036
|
});
|
|
25037
25037
|
|
|
25038
25038
|
var t = [];
|
|
25039
|
-
$("colgroup col", this.body).each((i,el) => { t.push({ width: parseInt(ninegrid
|
|
25040
|
-
$("thead .col-indicator", this.body).each((i,el) => { if (!t[i]) return false; $(el).css({ "width": t[i].width, "min-width": t[i].width, "background-color": t[i].background, "border-top-color": t[i].background, }); ninegrid
|
|
25039
|
+
$("colgroup col", this.body).each((i,el) => { t.push({ width: parseInt(ninegrid.j.querySelectorAll(el).attr("width")), background: ninegrid.j.querySelectorAll(el).attr("background-color")} ); });
|
|
25040
|
+
$("thead .col-indicator", this.body).each((i,el) => { if (!t[i]) return false; $(el).css({ "width": t[i].width, "min-width": t[i].width, "background-color": t[i].background, "border-top-color": t[i].background, }); ninegrid.j.querySelectorAll(el).attr("background-color", t[i].background); });
|
|
25041
25041
|
}
|
|
25042
25042
|
|
|
25043
25043
|
#prepare = () => {
|
|
@@ -25094,13 +25094,13 @@ class ninegridContainer extends HTMLElement
|
|
|
25094
25094
|
|
|
25095
25095
|
if (thead.length <= 0) $('<thead></thead>').appendTo(table);
|
|
25096
25096
|
|
|
25097
|
-
ninegrid
|
|
25097
|
+
ninegrid.j.querySelectorAll(table).attr("role", "table") .addClass("ng-table");
|
|
25098
25098
|
|
|
25099
|
-
ninegrid
|
|
25100
|
-
ninegrid
|
|
25101
|
-
ninegrid
|
|
25102
|
-
ninegrid
|
|
25103
|
-
ninegrid
|
|
25099
|
+
ninegrid.j.querySelectorAll("tbody th,tbody td", table) .attr("tabindex", 0);
|
|
25100
|
+
ninegrid.j.querySelectorAll("thead,tbody,tfoot", table) .attr("role", "rowgroup");
|
|
25101
|
+
ninegrid.j.querySelectorAll("tr", table) .attr("role", "row");
|
|
25102
|
+
ninegrid.j.querySelectorAll("tbody > tr", table) .attr("role", "gridcell");
|
|
25103
|
+
ninegrid.j.querySelectorAll("th,td", table) .attr("scope", "col");
|
|
25104
25104
|
|
|
25105
25105
|
this.#resetColIndex($(table), "thead");
|
|
25106
25106
|
this.#resetColIndex($(table), "tbody.bindable");
|
|
@@ -25110,7 +25110,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25110
25110
|
this.#createColIndicator();
|
|
25111
25111
|
|
|
25112
25112
|
table.querySelectorAll("col").forEach((el,i) => {
|
|
25113
|
-
ninegrid
|
|
25113
|
+
ninegrid.j.querySelectorAll(`[data-col="${i}"]`, table).attr("fixed", ninegrid.j.querySelectorAll(el).attr("fixed"));
|
|
25114
25114
|
});
|
|
25115
25115
|
}
|
|
25116
25116
|
|
|
@@ -25192,7 +25192,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25192
25192
|
selectRow = (nRow1, nRow2) => {
|
|
25193
25193
|
|
|
25194
25194
|
const row1 = this.#getRowIndex(nRow1);
|
|
25195
|
-
const row2 = ninegrid
|
|
25195
|
+
const row2 = ninegrid.isNull(oRow2) ? row1 : this.#getRowIndex(nRow2);
|
|
25196
25196
|
const matrixRow1= parseInt(row1 * this.template.length);
|
|
25197
25197
|
const matrixRow2= parseInt(row2 * this.template.length) + this.template.length - 1;
|
|
25198
25198
|
|
|
@@ -25212,7 +25212,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25212
25212
|
*/
|
|
25213
25213
|
selectCol = (oCol1, oCol2) => {
|
|
25214
25214
|
const col1 = this.#getColIndex(oCol1);
|
|
25215
|
-
const col2 = ninegrid
|
|
25215
|
+
const col2 = ninegrid.isNull(oCol2) ? col1 : this.#getColIndex(oCol2);
|
|
25216
25216
|
const matrixRow1= 0;
|
|
25217
25217
|
const matrixRow2= parseInt(this.data.count() * this.template.length - 1);
|
|
25218
25218
|
|
|
@@ -25232,7 +25232,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25232
25232
|
|
|
25233
25233
|
const row = this.#getRowIndex(nRow);
|
|
25234
25234
|
const col = this.#getColIndex(oCol);
|
|
25235
|
-
const matrixRow = parseInt(row * this.template.length) + ninegrid
|
|
25235
|
+
const matrixRow = parseInt(row * this.template.length) + ninegrid.nvl(nSubrow, 0);
|
|
25236
25236
|
|
|
25237
25237
|
this.row.at = row;
|
|
25238
25238
|
|
|
@@ -25325,8 +25325,8 @@ class nxConfirmPopup extends HTMLElement
|
|
|
25325
25325
|
|
|
25326
25326
|
title = title || 'Confirm';
|
|
25327
25327
|
|
|
25328
|
-
for (const prop in ninegrid
|
|
25329
|
-
options[prop] = options[prop] || ninegrid
|
|
25328
|
+
for (const prop in ninegrid.options.confirm) {
|
|
25329
|
+
options[prop] = options[prop] || ninegrid.options.confirm[prop];
|
|
25330
25330
|
}
|
|
25331
25331
|
|
|
25332
25332
|
$('nx-confirm-popup', document.body).remove();
|
|
@@ -25378,8 +25378,8 @@ class nxAlertPopup extends HTMLElement
|
|
|
25378
25378
|
|
|
25379
25379
|
title = title || 'Alert';
|
|
25380
25380
|
|
|
25381
|
-
for (const prop in ninegrid
|
|
25382
|
-
options[prop] = options[prop] || ninegrid
|
|
25381
|
+
for (const prop in ninegrid.options.alert) {
|
|
25382
|
+
options[prop] = options[prop] || ninegrid.options.alert[prop];
|
|
25383
25383
|
}
|
|
25384
25384
|
|
|
25385
25385
|
$('nx-alert-popup', document.body).remove();
|
|
@@ -25415,15 +25415,15 @@ class nxDialog extends HTMLElement
|
|
|
25415
25415
|
|
|
25416
25416
|
const v = this.innerHTML;
|
|
25417
25417
|
const cssFile = this.getAttribute("css-file");
|
|
25418
|
-
const customFile1 = cssFile ? `@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
25419
|
-
const customFile2 = cssFile ? ninegrid
|
|
25418
|
+
const customFile1 = cssFile ? `@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/${cssFile}";`: "";
|
|
25419
|
+
const customFile2 = cssFile ? ninegrid.getCustomPath(this, cssFile) : "";
|
|
25420
25420
|
|
|
25421
25421
|
//console.log(ninegrid.getCustomPath(this,"nxDialog.css"));
|
|
25422
25422
|
|
|
25423
25423
|
this.innerHTML = `
|
|
25424
25424
|
<style>
|
|
25425
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
25426
|
-
${ninegrid
|
|
25425
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxDialog.css";
|
|
25426
|
+
${ninegrid.getCustomPath(this,"nxDialog.css") || ""}
|
|
25427
25427
|
${customFile1 || ""}
|
|
25428
25428
|
${customFile2 || ""}
|
|
25429
25429
|
</style>
|
|
@@ -25482,7 +25482,7 @@ class nxDialog extends HTMLElement
|
|
|
25482
25482
|
|
|
25483
25483
|
#init = () => {
|
|
25484
25484
|
$(".close,.close2", this).on("click", e => {
|
|
25485
|
-
ninegrid
|
|
25485
|
+
ninegrid.j.querySelectorAll('dialog', this).addClass("out");
|
|
25486
25486
|
setTimeout(() => { this.close(); }, 300);
|
|
25487
25487
|
});
|
|
25488
25488
|
|
|
@@ -25578,8 +25578,8 @@ class nxDiv extends HTMLElement {
|
|
|
25578
25578
|
const htmlTmpl = document.createElement("template");
|
|
25579
25579
|
htmlTmpl.innerHTML = `
|
|
25580
25580
|
<style>
|
|
25581
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
25582
|
-
${ninegrid
|
|
25581
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxDiv.css";
|
|
25582
|
+
${ninegrid.getCustomPath(this,"nxDiv.css")}
|
|
25583
25583
|
|
|
25584
25584
|
:host {
|
|
25585
25585
|
}
|
|
@@ -25641,9 +25641,9 @@ class nxI18nExt extends HTMLElement
|
|
|
25641
25641
|
|
|
25642
25642
|
this.#target.innerHTML = i18next.t(this.#i18n);
|
|
25643
25643
|
}
|
|
25644
|
-
else if (this.#dataSource.length > 0 && !ninegrid
|
|
25644
|
+
else if (this.#dataSource.length > 0 && !ninegrid.isNull(this.#value)) {
|
|
25645
25645
|
|
|
25646
|
-
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid
|
|
25646
|
+
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid.global.locale);
|
|
25647
25647
|
if (index < 0) index = 0;
|
|
25648
25648
|
|
|
25649
25649
|
this.#target.innerHTML = this.#dataSource[index][this.#value];
|
|
@@ -25724,10 +25724,10 @@ class nxI18nExt extends HTMLElement
|
|
|
25724
25724
|
return result;
|
|
25725
25725
|
},
|
|
25726
25726
|
updateContent : () => {
|
|
25727
|
-
ninegrid
|
|
25727
|
+
ninegrid.querySelectorAll("nx-i18n,nx-span").forEach(v => {
|
|
25728
25728
|
if (v.refresh) v.refresh();
|
|
25729
25729
|
});
|
|
25730
|
-
ninegrid
|
|
25730
|
+
ninegrid.querySelectorAll("nine-grid").forEach(v => {
|
|
25731
25731
|
if (v.refresh) v.refreshData();
|
|
25732
25732
|
});
|
|
25733
25733
|
},
|
|
@@ -25759,11 +25759,11 @@ class nxI18nExt extends HTMLElement
|
|
|
25759
25759
|
|
|
25760
25760
|
if (xhr.status === 200) {
|
|
25761
25761
|
var text = xhr.responseText;
|
|
25762
|
-
i18next.addResourceBundle(locale, 'translation', ninegrid
|
|
25762
|
+
i18next.addResourceBundle(locale, 'translation', ninegrid.i18n.convertArrayToJSON(text.split("\n")));
|
|
25763
25763
|
|
|
25764
25764
|
// 마지막 파일인 경우 화면갱신
|
|
25765
25765
|
if (--count == 0) {
|
|
25766
|
-
i18next.changeLanguage(ninegrid
|
|
25766
|
+
i18next.changeLanguage(ninegrid.global.locale);
|
|
25767
25767
|
}
|
|
25768
25768
|
}
|
|
25769
25769
|
|
|
@@ -25812,8 +25812,8 @@ class nxSidebar extends HTMLElement
|
|
|
25812
25812
|
//this.shadowRoot.innerHTML = `
|
|
25813
25813
|
template.innerHTML = `
|
|
25814
25814
|
<style>
|
|
25815
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
25816
|
-
${ninegrid
|
|
25815
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebar.css";
|
|
25816
|
+
${ninegrid.getCustomPath(this,"nxSidebar.css")}
|
|
25817
25817
|
|
|
25818
25818
|
:host {
|
|
25819
25819
|
--min-width: ${this.#minWidth}px;
|
|
@@ -26157,8 +26157,8 @@ class nxSidebarItem extends HTMLElement {
|
|
|
26157
26157
|
|
|
26158
26158
|
this.shadowRoot.innerHTML = `
|
|
26159
26159
|
<style>
|
|
26160
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26161
|
-
${ninegrid
|
|
26160
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebarItem.css";
|
|
26161
|
+
${ninegrid.getCustomPath(this,"nxSidebarItem.css")}
|
|
26162
26162
|
</style>
|
|
26163
26163
|
|
|
26164
26164
|
<li>
|
|
@@ -26203,8 +26203,8 @@ class nxSidebarMenuitem extends HTMLElement {
|
|
|
26203
26203
|
|
|
26204
26204
|
this.shadowRoot.innerHTML = `
|
|
26205
26205
|
<style>
|
|
26206
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26207
|
-
${ninegrid
|
|
26206
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebarMenuitem.css";
|
|
26207
|
+
${ninegrid.getCustomPath(this,"nxSidebarMenuitem.css")}
|
|
26208
26208
|
</style>
|
|
26209
26209
|
|
|
26210
26210
|
<li>
|
|
@@ -26234,7 +26234,7 @@ class nxSideMenu extends HTMLElement
|
|
|
26234
26234
|
};
|
|
26235
26235
|
|
|
26236
26236
|
connectedCallback() {
|
|
26237
|
-
ninegrid
|
|
26237
|
+
ninegrid.waitForInnerHTML(this)
|
|
26238
26238
|
.then(() => this.#init())
|
|
26239
26239
|
.catch(error => console.error(error));
|
|
26240
26240
|
};
|
|
@@ -26295,8 +26295,8 @@ class nxSideMenu extends HTMLElement
|
|
|
26295
26295
|
|
|
26296
26296
|
this.shadowRoot.innerHTML = `
|
|
26297
26297
|
<style>
|
|
26298
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26299
|
-
${ninegrid
|
|
26298
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenu.css";
|
|
26299
|
+
${ninegrid.getCustomPath(this,"nxSideMenu.css")}
|
|
26300
26300
|
|
|
26301
26301
|
:host {
|
|
26302
26302
|
--min-width: ${this.#minWidth}px;
|
|
@@ -26382,7 +26382,7 @@ class nxSideMenuHead extends HTMLElement
|
|
|
26382
26382
|
}
|
|
26383
26383
|
|
|
26384
26384
|
connectedCallback() {
|
|
26385
|
-
ninegrid
|
|
26385
|
+
ninegrid.waitForInnerHTML(this)
|
|
26386
26386
|
.then(() => this.#init())
|
|
26387
26387
|
.catch(error => console.error(error));
|
|
26388
26388
|
}
|
|
@@ -26412,8 +26412,8 @@ class nxSideMenuHead extends HTMLElement
|
|
|
26412
26412
|
|
|
26413
26413
|
this.shadowRoot.innerHTML = `
|
|
26414
26414
|
<style>
|
|
26415
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26416
|
-
${ninegrid
|
|
26415
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuHead.css";
|
|
26416
|
+
${ninegrid.getCustomPath(this,"nxSideMenuHead.css")}
|
|
26417
26417
|
|
|
26418
26418
|
:host {
|
|
26419
26419
|
--icon-color: ${iconColor};
|
|
@@ -26449,7 +26449,7 @@ class nxSideMenuFoot extends HTMLElement
|
|
|
26449
26449
|
}
|
|
26450
26450
|
|
|
26451
26451
|
connectedCallback() {
|
|
26452
|
-
ninegrid
|
|
26452
|
+
ninegrid.waitForInnerHTML(this)
|
|
26453
26453
|
.then(() => this.#init())
|
|
26454
26454
|
.catch(error => console.error(error));
|
|
26455
26455
|
}
|
|
@@ -26478,8 +26478,8 @@ class nxSideMenuFoot extends HTMLElement
|
|
|
26478
26478
|
|
|
26479
26479
|
this.shadowRoot.innerHTML = `
|
|
26480
26480
|
<style>
|
|
26481
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26482
|
-
${ninegrid
|
|
26481
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuFoot.css";
|
|
26482
|
+
${ninegrid.getCustomPath(this,"nxSideMenuFoot.css")}
|
|
26483
26483
|
|
|
26484
26484
|
:host {
|
|
26485
26485
|
--icon-color: ${iconColor};
|
|
@@ -26516,7 +26516,7 @@ class nxSideMenuBody extends HTMLElement
|
|
|
26516
26516
|
}
|
|
26517
26517
|
|
|
26518
26518
|
connectedCallback() {
|
|
26519
|
-
ninegrid
|
|
26519
|
+
ninegrid.waitForInnerHTML(this)
|
|
26520
26520
|
.then(() => this.#init())
|
|
26521
26521
|
.catch(error => console.error(error));
|
|
26522
26522
|
}
|
|
@@ -26565,11 +26565,11 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26565
26565
|
super();
|
|
26566
26566
|
this.attachShadow({ mode: 'open' });
|
|
26567
26567
|
|
|
26568
|
-
this.uuid = ninegrid
|
|
26568
|
+
this.uuid = ninegrid.randomUUID();
|
|
26569
26569
|
}
|
|
26570
26570
|
|
|
26571
26571
|
connectedCallback() {
|
|
26572
|
-
ninegrid
|
|
26572
|
+
ninegrid.waitForInnerHTML(this)
|
|
26573
26573
|
.then(() => this.#init())
|
|
26574
26574
|
.catch(error => console.error(error));
|
|
26575
26575
|
}
|
|
@@ -26581,7 +26581,7 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26581
26581
|
this.render();
|
|
26582
26582
|
|
|
26583
26583
|
|
|
26584
|
-
this.#owner = ninegrid
|
|
26584
|
+
this.#owner = ninegrid.closest("nx-side-menu", this);
|
|
26585
26585
|
|
|
26586
26586
|
this.classList.toggle("expand");
|
|
26587
26587
|
this.classList.add("collapse");
|
|
@@ -26591,13 +26591,13 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26591
26591
|
|
|
26592
26592
|
this.addEventListener('click', (e) => {
|
|
26593
26593
|
|
|
26594
|
-
ninegrid
|
|
26594
|
+
ninegrid.querySelectorAll("nx-side-menu-item", this.#owner).forEach(v => {
|
|
26595
26595
|
v.classList.remove("active");
|
|
26596
26596
|
});
|
|
26597
26597
|
|
|
26598
26598
|
e.target.classList.add("active");
|
|
26599
26599
|
|
|
26600
|
-
ninegrid
|
|
26600
|
+
ninegrid.closest("nx-side-menu", this).dispatchEvent(new CustomEvent('side-menu-click', {
|
|
26601
26601
|
detail: { target: this, },
|
|
26602
26602
|
bubbles: true,
|
|
26603
26603
|
composed: true
|
|
@@ -26619,7 +26619,7 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26619
26619
|
//const target = neUtils.closest("nx-side-menu-item", this);
|
|
26620
26620
|
//console.log(this.uuid);
|
|
26621
26621
|
|
|
26622
|
-
const nodeList = ninegrid
|
|
26622
|
+
const nodeList = ninegrid.querySelectorAll("nx-side-menu-item", this.#owner);
|
|
26623
26623
|
const firstNodeIndex = Array.from(nodeList).findIndex(node => node.uuid === this.uuid);
|
|
26624
26624
|
const childNode = [];
|
|
26625
26625
|
|
|
@@ -26664,8 +26664,8 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26664
26664
|
|
|
26665
26665
|
this.shadowRoot.innerHTML = `
|
|
26666
26666
|
<style>
|
|
26667
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26668
|
-
${ninegrid
|
|
26667
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuItem.css";
|
|
26668
|
+
${ninegrid.getCustomPath(this,"nxSideMenuItem.css")}
|
|
26669
26669
|
</style>
|
|
26670
26670
|
|
|
26671
26671
|
<li>
|
|
@@ -26703,7 +26703,7 @@ class nxSpan extends HTMLElement
|
|
|
26703
26703
|
};
|
|
26704
26704
|
|
|
26705
26705
|
connectedCallback() {
|
|
26706
|
-
if (ninegrid
|
|
26706
|
+
if (ninegrid.getLocale() == "ko") {
|
|
26707
26707
|
console.warn("nx-span 컴포넌트는 더 이상 사용되지 않을 예정입니다. nx-i18n 컴포넌트로 대체하세요.");
|
|
26708
26708
|
}
|
|
26709
26709
|
else {
|
|
@@ -26712,9 +26712,9 @@ class nxSpan extends HTMLElement
|
|
|
26712
26712
|
};
|
|
26713
26713
|
|
|
26714
26714
|
refresh = () => {
|
|
26715
|
-
if (this.#dataSource.length < 0 || ninegrid
|
|
26715
|
+
if (this.#dataSource.length < 0 || ninegrid.isNull(this.#value)) return;
|
|
26716
26716
|
|
|
26717
|
-
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid
|
|
26717
|
+
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid.global.locale);
|
|
26718
26718
|
if (index < 0) index = 0;
|
|
26719
26719
|
|
|
26720
26720
|
|
|
@@ -27110,12 +27110,12 @@ class nxTopMenu extends HTMLElement
|
|
|
27110
27110
|
</nav>
|
|
27111
27111
|
`;
|
|
27112
27112
|
|
|
27113
|
-
this.changeLocale(ninegrid
|
|
27113
|
+
this.changeLocale(ninegrid.getLocale());
|
|
27114
27114
|
};
|
|
27115
27115
|
|
|
27116
27116
|
changeLocale = (locale) => {
|
|
27117
|
-
ninegrid
|
|
27118
|
-
this.shadowRoot.querySelector("#locale").innerHTML = ninegrid
|
|
27117
|
+
ninegrid.setLocale(locale);
|
|
27118
|
+
this.shadowRoot.querySelector("#locale").innerHTML = ninegrid.decode(locale, "ko", "한국어", "English");
|
|
27119
27119
|
};
|
|
27120
27120
|
}
|
|
27121
27121
|
|
|
@@ -27280,8 +27280,6 @@ class aiSettings extends HTMLElement
|
|
|
27280
27280
|
|
|
27281
27281
|
customElements.define("nx-ai-settings", aiSettings);
|
|
27282
27282
|
|
|
27283
|
-
//import ninegrid from "../index.js";
|
|
27284
|
-
|
|
27285
27283
|
class aiMyMessage extends HTMLElement
|
|
27286
27284
|
{
|
|
27287
27285
|
constructor() {
|
|
@@ -27362,4 +27360,4 @@ window.jQuery = window.$ = $$1;
|
|
|
27362
27360
|
|
|
27363
27361
|
//export default new ninegrid();
|
|
27364
27362
|
|
|
27365
|
-
export { ninegrid
|
|
27363
|
+
export { ninegrid as default };
|