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.cjs.js
CHANGED
|
@@ -10706,7 +10706,7 @@ function requireJquery () {
|
|
|
10706
10706
|
var jqueryExports = requireJquery();
|
|
10707
10707
|
var $$1 = /*@__PURE__*/getDefaultExportFromCjs(jqueryExports);
|
|
10708
10708
|
|
|
10709
|
-
|
|
10709
|
+
class ninegrid {
|
|
10710
10710
|
|
|
10711
10711
|
|
|
10712
10712
|
constructor() {
|
|
@@ -11553,7 +11553,7 @@ let ninegrid$1 = class ninegrid {
|
|
|
11553
11553
|
}
|
|
11554
11554
|
},
|
|
11555
11555
|
}
|
|
11556
|
-
}
|
|
11556
|
+
}
|
|
11557
11557
|
|
|
11558
11558
|
Array.prototype.nineBinarySearch = function(target)
|
|
11559
11559
|
{
|
|
@@ -11659,11 +11659,11 @@ class ngCellEx extends HTMLElement
|
|
|
11659
11659
|
this.#showCheck = this.getAttribute("show-check") == "true" || this.cell.getAttribute("show-check") == "true";
|
|
11660
11660
|
this.#showButton = this.getAttribute("show-button") == "true" || this.cell.getAttribute("show-button") == "true";
|
|
11661
11661
|
|
|
11662
|
-
if (this.cell.dataset.bind) ninegrid
|
|
11662
|
+
if (this.cell.dataset.bind) ninegrid.j.querySelectorAll(this).addClass(this.cell.dataset.bind);
|
|
11663
11663
|
|
|
11664
11664
|
const style = this.shadowRoot.querySelector("style");
|
|
11665
11665
|
const textAlign = this.getAttribute("text-align") || this.cell.getAttribute("text-align") || "left";
|
|
11666
|
-
ninegrid
|
|
11666
|
+
ninegrid.j.querySelectorAll(this).addClass(`ng-${textAlign}`);
|
|
11667
11667
|
|
|
11668
11668
|
if (this.#showIcon) {
|
|
11669
11669
|
const iconType = this.getAttribute("icon-type") || this.cell.getAttribute("icon-type") || "sphere";
|
|
@@ -11764,20 +11764,20 @@ class ngCellEx extends HTMLElement
|
|
|
11764
11764
|
const next = this.shadowRoot.querySelector("input[type=text],textarea").nextElementSibling;
|
|
11765
11765
|
|
|
11766
11766
|
if (prev.tagName == "NG-EXPAND-BUTTON") {
|
|
11767
|
-
ninegrid
|
|
11768
|
-
ninegrid
|
|
11767
|
+
ninegrid.j.querySelectorAll(this.shadowRoot.querySelector("input[type=text],textarea")).addClass("border-left-none");
|
|
11768
|
+
ninegrid.j.querySelectorAll(prev).addClass("border-right-none");
|
|
11769
11769
|
}
|
|
11770
11770
|
else if (next.tagName == "NG-EXPAND-BUTTON") {
|
|
11771
|
-
ninegrid
|
|
11772
|
-
ninegrid
|
|
11771
|
+
ninegrid.j.querySelectorAll(this.shadowRoot.querySelector("input[type=text],textarea")).addClass("border-right-none");
|
|
11772
|
+
ninegrid.j.querySelectorAll(next).addClass("border-left-none");
|
|
11773
11773
|
}
|
|
11774
11774
|
}
|
|
11775
11775
|
}
|
|
11776
11776
|
|
|
11777
11777
|
const expandleft = this.shadowRoot.querySelectorAll(".ng-left");
|
|
11778
|
-
if (expandleft.length > 0) ninegrid
|
|
11778
|
+
if (expandleft.length > 0) ninegrid.j.querySelectorAll(expandleft[0]).addClass("ng-first");
|
|
11779
11779
|
const expandRight = this.shadowRoot.querySelectorAll(".ng-right");
|
|
11780
|
-
if (expandRight.length > 0) ninegrid
|
|
11780
|
+
if (expandRight.length > 0) ninegrid.j.querySelectorAll(expandRight[expandRight.length-1]).addClass("ng-last");
|
|
11781
11781
|
|
|
11782
11782
|
|
|
11783
11783
|
|
|
@@ -11832,7 +11832,7 @@ class ngCellEx extends HTMLElement
|
|
|
11832
11832
|
}
|
|
11833
11833
|
}
|
|
11834
11834
|
|
|
11835
|
-
this.owner.dispatchEvent(new CustomEvent(ninegrid
|
|
11835
|
+
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 }));
|
|
11836
11836
|
//var row = parseInt(this.cell.dataset.row);
|
|
11837
11837
|
//this.owner.exprFunction(this.cell.getAttribute("onButtonClick") || this.getAttribute("onButtonClick")).call(this, this.cell.closest("tr").data, row);
|
|
11838
11838
|
});
|
|
@@ -11845,7 +11845,7 @@ class ngCellEx extends HTMLElement
|
|
|
11845
11845
|
|
|
11846
11846
|
|
|
11847
11847
|
if (this.getAttribute("link") == "true") {
|
|
11848
|
-
ninegrid
|
|
11848
|
+
ninegrid.j.querySelectorAll(renderer).addClass("link");
|
|
11849
11849
|
|
|
11850
11850
|
renderer.addEventListener("click", e => {
|
|
11851
11851
|
|
|
@@ -11860,7 +11860,7 @@ class ngCellEx extends HTMLElement
|
|
|
11860
11860
|
}
|
|
11861
11861
|
}
|
|
11862
11862
|
|
|
11863
|
-
this.owner.dispatchEvent(new CustomEvent(ninegrid
|
|
11863
|
+
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 }));
|
|
11864
11864
|
});
|
|
11865
11865
|
}
|
|
11866
11866
|
|
|
@@ -11913,7 +11913,7 @@ class ngCellEx extends HTMLElement
|
|
|
11913
11913
|
|
|
11914
11914
|
//console.log(this.cell.dataset.expr, this.cell.dataset.bind, ninegrid.ROW.ORDER);
|
|
11915
11915
|
|
|
11916
|
-
if (!ninegrid
|
|
11916
|
+
if (!ninegrid.isNull(this.cell.dataset.expr)) {
|
|
11917
11917
|
|
|
11918
11918
|
try {
|
|
11919
11919
|
//console.log(this.cell.dataset.expr);
|
|
@@ -11930,11 +11930,11 @@ class ngCellEx extends HTMLElement
|
|
|
11930
11930
|
console.error(this.cell.dataset.expr, rowData, this.cell.dataset.row);
|
|
11931
11931
|
}
|
|
11932
11932
|
}
|
|
11933
|
-
else if (!ninegrid
|
|
11934
|
-
return rowData[this.cell.dataset.bind] || ninegrid
|
|
11933
|
+
else if (!ninegrid.isNull(this.cell.dataset.bind)) {
|
|
11934
|
+
return rowData[this.cell.dataset.bind] || ninegrid.nvl(defaultValue, "");
|
|
11935
11935
|
}
|
|
11936
11936
|
|
|
11937
|
-
return ninegrid
|
|
11937
|
+
return ninegrid.nvl(defaultValue, "");
|
|
11938
11938
|
}
|
|
11939
11939
|
else {
|
|
11940
11940
|
try {
|
|
@@ -11959,11 +11959,11 @@ class ngCellEx extends HTMLElement
|
|
|
11959
11959
|
}
|
|
11960
11960
|
|
|
11961
11961
|
if (this.cell.dataset.bind && this.shadowRoot.querySelector("input,textarea,button")) {
|
|
11962
|
-
ninegrid
|
|
11962
|
+
ninegrid.j.querySelectorAll(this.cell).removeClass("ng-changed");
|
|
11963
11963
|
|
|
11964
11964
|
if (data.__ng.o.hasOwnProperty(this.cell.dataset.bind)) {
|
|
11965
11965
|
if (data[this.cell.dataset.bind] != data.__ng.o[this.cell.dataset.bind]) {
|
|
11966
|
-
ninegrid
|
|
11966
|
+
ninegrid.j.querySelectorAll(this.cell).addClass("ng-changed");
|
|
11967
11967
|
}
|
|
11968
11968
|
}
|
|
11969
11969
|
}
|
|
@@ -12034,26 +12034,26 @@ class ngCellEx extends HTMLElement
|
|
|
12034
12034
|
|
|
12035
12035
|
var expr = this.getAttribute('visible') || this.cell.getAttribute('visible');
|
|
12036
12036
|
if (expr) {
|
|
12037
|
-
this.getExprValue(expr, data, row) ? ninegrid
|
|
12037
|
+
this.getExprValue(expr, data, row) ? ninegrid.j.querySelectorAll(this.cell).removeClass('hidden') : ninegrid.j.querySelectorAll(this.cell).addClass('hidden');
|
|
12038
12038
|
}
|
|
12039
12039
|
else {
|
|
12040
|
-
ninegrid
|
|
12040
|
+
ninegrid.j.querySelectorAll(this.cell).removeClass('hidden');
|
|
12041
12041
|
}
|
|
12042
12042
|
|
|
12043
12043
|
var expr = this.getAttribute('enable') || this.cell.getAttribute('enable');
|
|
12044
12044
|
if (expr) {
|
|
12045
|
-
ninegrid
|
|
12045
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("disabled", !this.getExprValue(expr, data, row));
|
|
12046
12046
|
}
|
|
12047
12047
|
else {
|
|
12048
|
-
ninegrid
|
|
12048
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("disabled", false);
|
|
12049
12049
|
}
|
|
12050
12050
|
|
|
12051
12051
|
var expr = this.getAttribute('readonly') || this.cell.getAttribute('readonly');
|
|
12052
12052
|
if (expr) {
|
|
12053
|
-
ninegrid
|
|
12053
|
+
ninegrid.j.querySelectorAll("input,textarea", this.shadowRoot).attr("readonly", this.getExprValue(expr, data, row));
|
|
12054
12054
|
}
|
|
12055
12055
|
else {
|
|
12056
|
-
ninegrid
|
|
12056
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("readonly", false);
|
|
12057
12057
|
}
|
|
12058
12058
|
|
|
12059
12059
|
|
|
@@ -12071,7 +12071,7 @@ class ngCellEx extends HTMLElement
|
|
|
12071
12071
|
$(this.cell).children().each((i,el) => {
|
|
12072
12072
|
var tooltipFn = el.getAttribute('tooltip');
|
|
12073
12073
|
if (tooltipFn) {
|
|
12074
|
-
ninegrid
|
|
12074
|
+
ninegrid.j.querySelectorAll(el).attr("title", this.owner.exprFunction(tooltipFn).call(this, this.cell.closest("tr").data, row));
|
|
12075
12075
|
}
|
|
12076
12076
|
});
|
|
12077
12077
|
|
|
@@ -12082,7 +12082,7 @@ class ngCellEx extends HTMLElement
|
|
|
12082
12082
|
|
|
12083
12083
|
if (!this.owner || !this.owner.template || !this.cell.closest("tbody.bindable")) return;
|
|
12084
12084
|
|
|
12085
|
-
var suppress = ninegrid
|
|
12085
|
+
var suppress = ninegrid.j.querySelectorAll(this.cell).attr('suppress');
|
|
12086
12086
|
if (suppress) suppress = parseInt(suppress);
|
|
12087
12087
|
|
|
12088
12088
|
if (suppress && !isNaN(suppress)) {
|
|
@@ -12091,7 +12091,7 @@ class ngCellEx extends HTMLElement
|
|
|
12091
12091
|
var arrSuppress = [];
|
|
12092
12092
|
|
|
12093
12093
|
$("th,td", tr).each((i,el) => {
|
|
12094
|
-
var otherSuppress = ninegrid
|
|
12094
|
+
var otherSuppress = ninegrid.j.querySelectorAll(el).attr('suppress');
|
|
12095
12095
|
if (otherSuppress && el.dataset.row) {
|
|
12096
12096
|
otherSuppress = parseInt(otherSuppress);
|
|
12097
12097
|
|
|
@@ -12128,23 +12128,23 @@ class ngCellEx extends HTMLElement
|
|
|
12128
12128
|
bSuppress = true;
|
|
12129
12129
|
}
|
|
12130
12130
|
|
|
12131
|
-
(bSuppress) ? ninegrid
|
|
12132
|
-
if (!ninegrid
|
|
12133
|
-
(bSuppress) ? ninegrid
|
|
12131
|
+
(bSuppress) ? ninegrid.j.querySelectorAll(this.cell).removeClass('suppress') : ninegrid.j.querySelectorAll(this.cell).addClass('suppress');
|
|
12132
|
+
if (!ninegrid.j.querySelectorAll(this.cell).hasClass("hidden")) {
|
|
12133
|
+
(bSuppress) ? ninegrid.j.querySelectorAll(this.cell).removeClass('hidden') : ninegrid.j.querySelectorAll(this.cell).addClass('hidden');
|
|
12134
12134
|
}
|
|
12135
12135
|
|
|
12136
12136
|
var currMatrixRow = parseInt(this.cell.dataset.matrixRow);
|
|
12137
12137
|
var prevMatrixRow = currMatrixRow - 1;//this.owner.template.length;
|
|
12138
12138
|
var prevCell = this.owner.body.querySelector(`tbody.bindable [data-col="${this.cell.dataset.col}"][data-matrix-row="${prevMatrixRow}"]`);
|
|
12139
12139
|
|
|
12140
|
-
if ($(prevCell).hasClass('suppress') && !ninegrid
|
|
12141
|
-
ninegrid
|
|
12140
|
+
if ($(prevCell).hasClass('suppress') && !ninegrid.j.querySelectorAll(this.cell).hasClass('suppress')) {
|
|
12141
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-none-suppress').addClass('last-suppress');
|
|
12142
12142
|
}
|
|
12143
|
-
else if (!$(prevCell).hasClass('suppress') && ninegrid
|
|
12144
|
-
ninegrid
|
|
12143
|
+
else if (!$(prevCell).hasClass('suppress') && ninegrid.j.querySelectorAll(this.cell).hasClass('suppress')) {
|
|
12144
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-suppress').addClass('last-none-suppress');
|
|
12145
12145
|
}
|
|
12146
12146
|
else {
|
|
12147
|
-
ninegrid
|
|
12147
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-none-suppress').removeClass('last-suppress');
|
|
12148
12148
|
}
|
|
12149
12149
|
}
|
|
12150
12150
|
};
|
|
@@ -12210,13 +12210,13 @@ class ngEditableEx extends ngCellEx
|
|
|
12210
12210
|
if (maxbyte) {
|
|
12211
12211
|
maxbyte = parseInt(maxbyte);
|
|
12212
12212
|
|
|
12213
|
-
if (ninegrid
|
|
12213
|
+
if (ninegrid.getByteLength(event.target.value) >= maxbyte) {
|
|
12214
12214
|
|
|
12215
|
-
event.target.value = ninegrid
|
|
12215
|
+
event.target.value = ninegrid.cut(event.target.value, maxbyte);
|
|
12216
12216
|
}
|
|
12217
12217
|
}
|
|
12218
12218
|
var v = $(event.target).val();
|
|
12219
|
-
this.value = ninegrid
|
|
12219
|
+
this.value = ninegrid.j.querySelectorAll(this).attr("type") == "number" ? (isNaN(v) ? "" : Number(v)) : v;
|
|
12220
12220
|
|
|
12221
12221
|
break;
|
|
12222
12222
|
}
|
|
@@ -12246,8 +12246,8 @@ class ngButton extends ngCellEx
|
|
|
12246
12246
|
*/
|
|
12247
12247
|
this.shadowRoot.innerHTML =`
|
|
12248
12248
|
<style>
|
|
12249
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
12250
|
-
${ninegrid
|
|
12249
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngButton.css";
|
|
12250
|
+
${ninegrid.getCustomPath(this,"ngButton.css")}
|
|
12251
12251
|
</style>
|
|
12252
12252
|
|
|
12253
12253
|
<button class="button" ${attr.join(" ")}>${this.getAttribute("text")}</button>
|
|
@@ -12357,11 +12357,11 @@ class ngCellCopyPasteKeyHandler
|
|
|
12357
12357
|
.then(() => {
|
|
12358
12358
|
//ninegrid.j.querySelectorAll(".copied", this.#owner.body).removeClass("copied");
|
|
12359
12359
|
setTimeout(() => {
|
|
12360
|
-
ninegrid
|
|
12360
|
+
ninegrid.j.querySelectorAll(".selected", this.#owner.body).addClass("copied");
|
|
12361
12361
|
});
|
|
12362
12362
|
|
|
12363
12363
|
setTimeout(() => {
|
|
12364
|
-
ninegrid
|
|
12364
|
+
ninegrid.j.querySelectorAll(".copied", this.#owner.body).removeClass("copied");
|
|
12365
12365
|
}, 1000);
|
|
12366
12366
|
})
|
|
12367
12367
|
.catch(err => {
|
|
@@ -12483,7 +12483,7 @@ class ngCellManager
|
|
|
12483
12483
|
const oldCellIndex = this.#oldCellIndex;
|
|
12484
12484
|
|
|
12485
12485
|
if (row != oldrow || subrow != oldsubrow || col != oldcol) {
|
|
12486
|
-
const customEvent = new CustomEvent(ninegrid
|
|
12486
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.CELL_POS_CHANGED, { bubbles: true, detail: {} });
|
|
12487
12487
|
customEvent.col = col;
|
|
12488
12488
|
customEvent.cellIndex = cellIndex;
|
|
12489
12489
|
customEvent.row = row;
|
|
@@ -12502,7 +12502,7 @@ class ngCellManager
|
|
|
12502
12502
|
}
|
|
12503
12503
|
|
|
12504
12504
|
if (row != oldrow) {
|
|
12505
|
-
const customEvent = new CustomEvent(ninegrid
|
|
12505
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.ROW_POS_CHANGED, { bubbles: true, detail: {} });
|
|
12506
12506
|
customEvent.col = col;
|
|
12507
12507
|
customEvent.cellIndex = cellIndex;
|
|
12508
12508
|
customEvent.row = row;
|
|
@@ -12638,7 +12638,7 @@ class ngCellManager
|
|
|
12638
12638
|
$(`tbody tr[data-matrix-row=${matrixRow}]`, this.#owner.body).find("th,td").each((i,el) => {
|
|
12639
12639
|
var elCol = parseInt(el.dataset.col);
|
|
12640
12640
|
if ((col - 1) >= elCol && (col - 1) <= elCol + el.colSpan - 1) {
|
|
12641
|
-
previousCol = ninegrid
|
|
12641
|
+
previousCol = ninegrid.j.querySelectorAll(el).hasClass("dummy") ? this.#getPreviousCol(matrixRow, el.dataset.col) : el.dataset.col;
|
|
12642
12642
|
return false;
|
|
12643
12643
|
}
|
|
12644
12644
|
});
|
|
@@ -12647,7 +12647,7 @@ class ngCellManager
|
|
|
12647
12647
|
$(`tbody tr[data-row=${row}]`, this.#owner.body).find("th,td").each((i,el) => {
|
|
12648
12648
|
var elCol = parseInt(el.dataset.col);
|
|
12649
12649
|
if ((col - 1) >= elCol && (col - 1) <= elCol + el.colSpan - 1) {
|
|
12650
|
-
previousCol = ninegrid
|
|
12650
|
+
previousCol = ninegrid.j.querySelectorAll(el).hasClass("dummy") ? this.#getPreviousCol(matrixRow, el.dataset.col) : el.dataset.col;
|
|
12651
12651
|
return false;
|
|
12652
12652
|
}
|
|
12653
12653
|
});
|
|
@@ -12661,7 +12661,7 @@ class ngCellManager
|
|
|
12661
12661
|
|
|
12662
12662
|
var nextCol = col + (td.colSpan || 1);
|
|
12663
12663
|
var nextTd = this.#owner.body.querySelector(`tbody [data-matrix-row="${matrixRow}"][data-col="${nextCol}"]`);
|
|
12664
|
-
if (ninegrid
|
|
12664
|
+
if (ninegrid.j.querySelectorAll(nextTd).hasClass("dummy")) {
|
|
12665
12665
|
nextCol = this.#getNextCol(matrixRow, nextCol);
|
|
12666
12666
|
}
|
|
12667
12667
|
|
|
@@ -12705,10 +12705,10 @@ class ngCellManager
|
|
|
12705
12705
|
|
|
12706
12706
|
if (e.ctrlKey || e.altKey) return;
|
|
12707
12707
|
|
|
12708
|
-
if (e.target.tagName == "NG-ROW-INDICATOR" && [ninegrid
|
|
12708
|
+
if (e.target.tagName == "NG-ROW-INDICATOR" && [ninegrid.SELECTTYPE.CELL,ninegrid.SELECTTYPE.AREA].includes(this.#owner.selection.type)) return;
|
|
12709
12709
|
|
|
12710
12710
|
if (e.shiftKey) {
|
|
12711
|
-
if ([ninegrid
|
|
12711
|
+
if ([ninegrid.SELECTTYPE.COLS,ninegrid.SELECTTYPE.ROWS,ninegrid.SELECTTYPE.AREA].includes(this.#owner.selection.type)) {
|
|
12712
12712
|
var fromTD = this.#owner.selection.getActiveCell();
|
|
12713
12713
|
if (fromTD) {
|
|
12714
12714
|
var fromTR = fromTD.closest("tr");
|
|
@@ -12826,7 +12826,7 @@ class ngCellSelection
|
|
|
12826
12826
|
clear :
|
|
12827
12827
|
() => {
|
|
12828
12828
|
this.selected.startRow = this.selected.endRow = this.selected.startCol = this.selected.endCol = -1;
|
|
12829
|
-
ninegrid
|
|
12829
|
+
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");
|
|
12830
12830
|
},
|
|
12831
12831
|
};
|
|
12832
12832
|
|
|
@@ -12839,10 +12839,10 @@ class ngCellSelection
|
|
|
12839
12839
|
return this.#owner.getAttribute("select-type");
|
|
12840
12840
|
};
|
|
12841
12841
|
set type(v) {
|
|
12842
|
-
if (!Object.values(ninegrid
|
|
12842
|
+
if (!Object.values(ninegrid.SELECTTYPE).includes(v)) throw `invalid select type : ${v}`;
|
|
12843
12843
|
|
|
12844
|
-
Object.values(ninegrid
|
|
12845
|
-
ninegrid
|
|
12844
|
+
Object.values(ninegrid.SELECTTYPE).forEach(m => { ninegrid.j.querySelectorAll(".ng-table", this.#owner.body).removeClass(`select-type-${m}`); });
|
|
12845
|
+
ninegrid.j.querySelectorAll(".ng-table", this.#owner.body).addClass(`select-type-${v}`);
|
|
12846
12846
|
this.#owner.cell.refresh();
|
|
12847
12847
|
};
|
|
12848
12848
|
|
|
@@ -12861,20 +12861,20 @@ class ngCellSelection
|
|
|
12861
12861
|
refresh = () => {
|
|
12862
12862
|
|
|
12863
12863
|
switch (this.type) {
|
|
12864
|
-
case ninegrid
|
|
12864
|
+
case ninegrid.SELECTTYPE.ROW:
|
|
12865
12865
|
|
|
12866
12866
|
this.selected.startRow = parseInt(this.#owner.row.at * this.#owner.template.length);
|
|
12867
12867
|
this.selected.endRow = this.selected.startRow + this.#owner.template.length - 1;
|
|
12868
12868
|
|
|
12869
12869
|
var cols = [];
|
|
12870
|
-
$(`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
|
|
12870
|
+
$(`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)); });
|
|
12871
12871
|
|
|
12872
12872
|
this.selected.startCol = (cols.length > 0) ? Math.min.apply(null, cols) : -1;
|
|
12873
12873
|
this.selected.endCol = (cols.length > 0) ? Math.max.apply(null, cols) : -1;
|
|
12874
12874
|
|
|
12875
12875
|
break;
|
|
12876
12876
|
|
|
12877
|
-
case ninegrid
|
|
12877
|
+
case ninegrid.SELECTTYPE.ROWS:
|
|
12878
12878
|
this.selected.startRow = parseInt(this.selected.startRow / this.#owner.template.length) * this.#owner.template.length;
|
|
12879
12879
|
this.selected.endRow = parseInt(this.selected.endRow / this.#owner.template.length) * this.#owner.template.length - 1 + this.#owner.template.length;
|
|
12880
12880
|
|
|
@@ -12882,7 +12882,7 @@ class ngCellSelection
|
|
|
12882
12882
|
this.selected.endCol = this.#owner.lastCol;//Math.max.apply(null, cols);
|
|
12883
12883
|
break;
|
|
12884
12884
|
|
|
12885
|
-
case ninegrid
|
|
12885
|
+
case ninegrid.SELECTTYPE.COL:
|
|
12886
12886
|
this.selected.startRow = 0;
|
|
12887
12887
|
this.selected.endRow = parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
12888
12888
|
this.selected.endCol = this.selected.startCol;
|
|
@@ -12910,7 +12910,7 @@ class ngCellSelection
|
|
|
12910
12910
|
|
|
12911
12911
|
break;
|
|
12912
12912
|
|
|
12913
|
-
case ninegrid
|
|
12913
|
+
case ninegrid.SELECTTYPE.COLS:
|
|
12914
12914
|
|
|
12915
12915
|
this.selected.startRow = 0;
|
|
12916
12916
|
this.selected.endRow = parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
@@ -12939,31 +12939,31 @@ class ngCellSelection
|
|
|
12939
12939
|
|
|
12940
12940
|
break;
|
|
12941
12941
|
|
|
12942
|
-
case ninegrid
|
|
12942
|
+
case ninegrid.SELECTTYPE.CELL:
|
|
12943
12943
|
this.selected.endRow = this.selected.startRow;
|
|
12944
12944
|
this.selected.endCol = this.selected.startCol;
|
|
12945
12945
|
break;
|
|
12946
12946
|
|
|
12947
|
-
case ninegrid
|
|
12947
|
+
case ninegrid.SELECTTYPE.AREA:
|
|
12948
12948
|
break;
|
|
12949
12949
|
|
|
12950
|
-
case ninegrid
|
|
12950
|
+
case ninegrid.SELECTTYPE.NONE:
|
|
12951
12951
|
this.selected.startRow = this.selected.endRow = this.selected.startCol = this.selected.endCol = -1;
|
|
12952
12952
|
break;
|
|
12953
12953
|
}
|
|
12954
12954
|
|
|
12955
12955
|
|
|
12956
|
-
ninegrid
|
|
12956
|
+
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");
|
|
12957
12957
|
|
|
12958
|
-
ninegrid
|
|
12959
|
-
ninegrid
|
|
12958
|
+
ninegrid.j.querySelectorAll(".selected-current", this.#owner.body).removeClass("selected-current");
|
|
12959
|
+
ninegrid.j.querySelectorAll(`tr[data-row="${this.selected.currentRow}"] ng-row-indicator`, this.#owner.body).addClass("selected-current");
|
|
12960
12960
|
|
|
12961
12961
|
//var row = parseInt(this.selected.currentRow / this.#owner.template.length);
|
|
12962
|
-
ninegrid
|
|
12962
|
+
ninegrid.j.querySelectorAll(`.col-indicator[data-col="${this.selected.currentCol}"]`, this.#owner.body).addClass("selected-current");
|
|
12963
12963
|
$(`tr[data-row="${this.selected.currentRow}"] ng-row-indicator`, this.#owner.body).closest("th,td").addClass("selected-current");
|
|
12964
12964
|
|
|
12965
12965
|
var activeCell = this.getActiveCell();
|
|
12966
|
-
if (activeCell) ninegrid
|
|
12966
|
+
if (activeCell) ninegrid.j.querySelectorAll(activeCell).addClass("active");
|
|
12967
12967
|
|
|
12968
12968
|
$("tbody th,tbody td", this.#owner.body).each((index, td) => {
|
|
12969
12969
|
var tdCol = parseInt(td.dataset.col);
|
|
@@ -12973,17 +12973,17 @@ class ngCellSelection
|
|
|
12973
12973
|
|
|
12974
12974
|
if (row + td.rowSpan - 1 >= this.selected.startRow && row <= this.selected.endRow && tdCol+td.colSpan-1 >= this.selected.startCol && tdCol <= this.selected.endCol) {
|
|
12975
12975
|
|
|
12976
|
-
ninegrid
|
|
12976
|
+
ninegrid.j.querySelectorAll(td).addClass("selected");//.addClass("selected-area");
|
|
12977
12977
|
|
|
12978
12978
|
if (this.selected.startRow == this.selected.endRow && this.selected.startCol == this.selected.endCol) {
|
|
12979
|
-
ninegrid
|
|
12979
|
+
ninegrid.j.querySelectorAll(td).addClass("selected-top").addClass("selected-bottom").addClass("selected-left").addClass("selected-right");
|
|
12980
12980
|
}
|
|
12981
12981
|
else {
|
|
12982
|
-
if (row == this.selected.startRow) ninegrid
|
|
12983
|
-
if (row+td.rowSpan-1 == this.selected.endRow) ninegrid
|
|
12984
|
-
if (tdCol == this.selected.startCol) ninegrid
|
|
12985
|
-
if (tdCol+td.colSpan-1 == this.selected.endCol) ninegrid
|
|
12986
|
-
ninegrid
|
|
12982
|
+
if (row == this.selected.startRow) ninegrid.j.querySelectorAll(td).addClass("selected-top");
|
|
12983
|
+
if (row+td.rowSpan-1 == this.selected.endRow) ninegrid.j.querySelectorAll(td).addClass("selected-bottom");
|
|
12984
|
+
if (tdCol == this.selected.startCol) ninegrid.j.querySelectorAll(td).addClass("selected-left");
|
|
12985
|
+
if (tdCol+td.colSpan-1 == this.selected.endCol) ninegrid.j.querySelectorAll(td).addClass("selected-right");
|
|
12986
|
+
ninegrid.j.querySelectorAll(td).addClass("multi-selected");
|
|
12987
12987
|
}
|
|
12988
12988
|
}
|
|
12989
12989
|
});
|
|
@@ -12998,7 +12998,7 @@ class ngCellSelection
|
|
|
12998
12998
|
for (var i = 0; i < td.rowSpan; i++) {
|
|
12999
12999
|
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;
|
|
13000
13000
|
if (row >= this.selected.startRow && row <= this.selected.endRow) {
|
|
13001
|
-
ninegrid
|
|
13001
|
+
ninegrid.j.querySelectorAll(td).addClass("selected-area");
|
|
13002
13002
|
}
|
|
13003
13003
|
}
|
|
13004
13004
|
}
|
|
@@ -13006,7 +13006,7 @@ class ngCellSelection
|
|
|
13006
13006
|
|
|
13007
13007
|
|
|
13008
13008
|
for (var i = this.selected.startCol; i <= this.selected.endCol; i++) {
|
|
13009
|
-
ninegrid
|
|
13009
|
+
ninegrid.j.querySelectorAll(`.col-indicator[data-col="${i}"]`, this.#owner.body).addClass("selected-area");
|
|
13010
13010
|
}
|
|
13011
13011
|
|
|
13012
13012
|
if (this.selected.oldStartRow != this.selected.startRow || this.selected.oldEndRow != this.selected.endRow ||
|
|
@@ -13199,7 +13199,7 @@ class ngCellSelection
|
|
|
13199
13199
|
}
|
|
13200
13200
|
};
|
|
13201
13201
|
|
|
13202
|
-
if ([ninegrid
|
|
13202
|
+
if ([ninegrid.SELECTTYPE.AREA,ninegrid.SELECTTYPE.ROWS,ninegrid.SELECTTYPE.COLS].includes(this.type)) {
|
|
13203
13203
|
$(".ng-table tbody.bindable", this.#owner.body).on("mousemove", onMouseMove);
|
|
13204
13204
|
$(".ng-table tbody.bindable", this.#owner.body).on("mouseenter", onMouseEnter);
|
|
13205
13205
|
$(".ng-table tbody.bindable", this.#owner.body).on("mouseleave", onMouseLeave);
|
|
@@ -13867,8 +13867,8 @@ class ngCheckBox extends ngEditableEx
|
|
|
13867
13867
|
|
|
13868
13868
|
this.shadowRoot.innerHTML = `
|
|
13869
13869
|
<style>
|
|
13870
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
13871
|
-
${ninegrid
|
|
13870
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngCheckBox.css";
|
|
13871
|
+
${ninegrid.getCustomPath(this,"ngCheckBox.css")}
|
|
13872
13872
|
|
|
13873
13873
|
:host {
|
|
13874
13874
|
justify-content: ${this.closest("th,td").getAttribute("text-align") || "center"};
|
|
@@ -13928,11 +13928,11 @@ class ngCheckBox extends ngEditableEx
|
|
|
13928
13928
|
|
|
13929
13929
|
if (!this.closest("tbody")) return;
|
|
13930
13930
|
|
|
13931
|
-
if (ninegrid
|
|
13932
|
-
ninegrid
|
|
13931
|
+
if (ninegrid.isNull(this.value) || this.value == this.trueValue || this.value == this.falseValue) {
|
|
13932
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
13933
13933
|
}
|
|
13934
13934
|
else {
|
|
13935
|
-
ninegrid
|
|
13935
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
13936
13936
|
}
|
|
13937
13937
|
|
|
13938
13938
|
$(this.#target).prop("checked", this.value == this.trueValue);
|
|
@@ -13986,15 +13986,15 @@ class ngColExpand extends HTMLElement
|
|
|
13986
13986
|
|
|
13987
13987
|
this.shadowRoot.innerHTML = `
|
|
13988
13988
|
<style>
|
|
13989
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
13990
|
-
${ninegrid
|
|
13989
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngColExpand.css";
|
|
13990
|
+
${ninegrid.getCustomPath(this,"ngColExpand.css")}
|
|
13991
13991
|
</style>
|
|
13992
13992
|
`;
|
|
13993
13993
|
|
|
13994
13994
|
this.#owner = this.getRootNode().host;
|
|
13995
13995
|
this.#cell = this.closest("th,td");
|
|
13996
13996
|
|
|
13997
|
-
ninegrid
|
|
13997
|
+
ninegrid.j.querySelectorAll(this).addClass("expand");
|
|
13998
13998
|
|
|
13999
13999
|
$(this).off("click", this.#onClick);
|
|
14000
14000
|
$(this).on("click", this.#onClick);
|
|
@@ -14005,7 +14005,7 @@ class ngColExpand extends HTMLElement
|
|
|
14005
14005
|
e.preventDefault();
|
|
14006
14006
|
e.stopPropagation();
|
|
14007
14007
|
|
|
14008
|
-
if (ninegrid
|
|
14008
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) {
|
|
14009
14009
|
this.#collapse();
|
|
14010
14010
|
}
|
|
14011
14011
|
else {
|
|
@@ -14014,7 +14014,7 @@ class ngColExpand extends HTMLElement
|
|
|
14014
14014
|
};
|
|
14015
14015
|
|
|
14016
14016
|
expand = () => {
|
|
14017
|
-
if (ninegrid
|
|
14017
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) return;
|
|
14018
14018
|
|
|
14019
14019
|
$(this).addClass("expand");
|
|
14020
14020
|
this.#cell.style.color = this.#orgColor;
|
|
@@ -14027,7 +14027,7 @@ class ngColExpand extends HTMLElement
|
|
|
14027
14027
|
};
|
|
14028
14028
|
|
|
14029
14029
|
#collapse = () => {
|
|
14030
|
-
if (!ninegrid
|
|
14030
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("expand")) return;
|
|
14031
14031
|
|
|
14032
14032
|
$(this).removeClass("expand");
|
|
14033
14033
|
this.#orgColor = this.#cell.style.color;
|
|
@@ -14313,7 +14313,7 @@ class ngColMover
|
|
|
14313
14313
|
|
|
14314
14314
|
#onPrevMouseDown = e => {
|
|
14315
14315
|
|
|
14316
|
-
if (ninegrid
|
|
14316
|
+
if (ninegrid.j.querySelectorAll(this.#owner).attr("col-movable") != "true") return;
|
|
14317
14317
|
if (e.target.tagName == "NG-FILTER-BUTTON") return;
|
|
14318
14318
|
|
|
14319
14319
|
this.#ready = true;
|
|
@@ -14712,7 +14712,7 @@ class ngColResizer
|
|
|
14712
14712
|
|
|
14713
14713
|
var prev = this.#owner.tableUtils.prev(td);
|
|
14714
14714
|
var next = this.#owner.tableUtils.next(td);
|
|
14715
|
-
var target = this.#owner.getBand(td.dataset.col) == ninegrid
|
|
14715
|
+
var target = this.#owner.getBand(td.dataset.col) == ninegrid.BAND.RIGHT ? ((e.offsetX <= 2) ? $(td) : next) : ((e.offsetX <= 2) ? prev : $(td));
|
|
14716
14716
|
|
|
14717
14717
|
this.#owner.setColumnWidthFit(target[0].dataset.col);
|
|
14718
14718
|
}
|
|
@@ -14876,7 +14876,7 @@ class ngColumns
|
|
|
14876
14876
|
for (var v of [source.thead.cells, source.tfoot.cells, source.tbody.cells, source.fixed.cells]) {
|
|
14877
14877
|
for (var fromCell of v) {
|
|
14878
14878
|
|
|
14879
|
-
ninegrid
|
|
14879
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14880
14880
|
|
|
14881
14881
|
const rowIndex = fromCell.closest("tr").rowIndex;
|
|
14882
14882
|
const targetTr = targetTable.querySelectorAll("tr")[rowIndex];
|
|
@@ -14896,7 +14896,7 @@ class ngColumns
|
|
|
14896
14896
|
for (var v of [source.org.thead.cells, source.org.tfoot.cells, source.org.tbody.cells, source.org.fixed.cells]) {
|
|
14897
14897
|
for (var fromCell of v) {
|
|
14898
14898
|
|
|
14899
|
-
ninegrid
|
|
14899
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14900
14900
|
|
|
14901
14901
|
const targetTable = fromCell.closest("table");
|
|
14902
14902
|
const rowIndex = fromCell.closest("tr").rowIndex;
|
|
@@ -14916,7 +14916,7 @@ class ngColumns
|
|
|
14916
14916
|
|
|
14917
14917
|
for (var fromCell of source.template.cells) {
|
|
14918
14918
|
|
|
14919
|
-
ninegrid
|
|
14919
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14920
14920
|
|
|
14921
14921
|
//const rowIndex = fromCell.closest("tr").rowIndex;
|
|
14922
14922
|
const targetTr = fromCell.closest("tr");
|
|
@@ -14966,18 +14966,18 @@ class ngColumns
|
|
|
14966
14966
|
|
|
14967
14967
|
for (var v of [source.thead.cells, source.tfoot.cells, source.tbody.cells, source.fixed.cells]) {
|
|
14968
14968
|
for (var fromCell of v) {
|
|
14969
|
-
ninegrid
|
|
14969
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14970
14970
|
}
|
|
14971
14971
|
}
|
|
14972
14972
|
|
|
14973
14973
|
for (var v of [source.org.thead.cells, source.org.tfoot.cells, source.org.tbody.cells, source.org.fixed.cells]) {
|
|
14974
14974
|
for (var fromCell of v) {
|
|
14975
|
-
ninegrid
|
|
14975
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14976
14976
|
}
|
|
14977
14977
|
}
|
|
14978
14978
|
|
|
14979
14979
|
for (var fromCell of source.template.cells) {
|
|
14980
|
-
ninegrid
|
|
14980
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14981
14981
|
}
|
|
14982
14982
|
|
|
14983
14983
|
|
|
@@ -15160,8 +15160,8 @@ class ngCombo extends ngEditableEx
|
|
|
15160
15160
|
|
|
15161
15161
|
this.shadowRoot.innerHTML = `
|
|
15162
15162
|
<style>
|
|
15163
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
15164
|
-
${ninegrid
|
|
15163
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngCombo.css";
|
|
15164
|
+
${ninegrid.getCustomPath(this,"ngCombo.css")}
|
|
15165
15165
|
</style>
|
|
15166
15166
|
|
|
15167
15167
|
<button class="btn1" type="button" data-bs-toggle="dropdown" aria-expanded="false" tabindex="-1"></button>
|
|
@@ -15224,7 +15224,7 @@ class ngCombo extends ngEditableEx
|
|
|
15224
15224
|
dataRefresh = (v) => {
|
|
15225
15225
|
|
|
15226
15226
|
if (this.#dataSource) {
|
|
15227
|
-
this.#isValid() ? ninegrid
|
|
15227
|
+
this.#isValid() ? ninegrid.j.querySelectorAll(this).removeClass("invalid") : ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
15228
15228
|
}
|
|
15229
15229
|
|
|
15230
15230
|
this.#target.innerHTML = this.getDisplayText() || "Select";
|
|
@@ -15238,7 +15238,7 @@ class ngCombo extends ngEditableEx
|
|
|
15238
15238
|
|
|
15239
15239
|
#isValid = () => {
|
|
15240
15240
|
|
|
15241
|
-
if (ninegrid
|
|
15241
|
+
if (ninegrid.isNull(this.value)) return true;
|
|
15242
15242
|
|
|
15243
15243
|
var list = (this.multi) ? this.value.split(this.multiSeparator) : [this.value];
|
|
15244
15244
|
|
|
@@ -15284,8 +15284,8 @@ class ngCombo extends ngEditableEx
|
|
|
15284
15284
|
this.#panel.col = this.cell.dataset.col;
|
|
15285
15285
|
this.#panel.row = this.cell.closest("tr").sectionRowIndex;
|
|
15286
15286
|
|
|
15287
|
-
this.#dataSource.length > this.#EXPAND_ROWS ? ninegrid
|
|
15288
|
-
this.multi ? ninegrid
|
|
15287
|
+
this.#dataSource.length > this.#EXPAND_ROWS ? ninegrid.j.querySelectorAll(this.#panel).addClass("expand") : ninegrid.j.querySelectorAll(this.#panel).removeClass("expand");
|
|
15288
|
+
this.multi ? ninegrid.j.querySelectorAll(this.#panel).addClass("multi") : ninegrid.j.querySelectorAll(this.#panel).removeClass("multi");
|
|
15289
15289
|
|
|
15290
15290
|
this.#panel.refresh(this, this.#dataSource, this.#code, this.#items);
|
|
15291
15291
|
|
|
@@ -15299,7 +15299,7 @@ class ngCombo extends ngEditableEx
|
|
|
15299
15299
|
|
|
15300
15300
|
|
|
15301
15301
|
if (this.multi) {
|
|
15302
|
-
if (ninegrid
|
|
15302
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15303
15303
|
h += 12; //위아래 padding
|
|
15304
15304
|
h += 3; //margin
|
|
15305
15305
|
h += 24; // input box
|
|
@@ -15310,7 +15310,7 @@ class ngCombo extends ngEditableEx
|
|
|
15310
15310
|
h += 25; // bottom
|
|
15311
15311
|
}
|
|
15312
15312
|
else {
|
|
15313
|
-
if (ninegrid
|
|
15313
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15314
15314
|
h += 12; //위아래 padding
|
|
15315
15315
|
h += 3; //margin
|
|
15316
15316
|
h += 24; // input box
|
|
@@ -15341,7 +15341,7 @@ class ngCombo extends ngEditableEx
|
|
|
15341
15341
|
"min-height": h,
|
|
15342
15342
|
}).show();
|
|
15343
15343
|
|
|
15344
|
-
if (ninegrid
|
|
15344
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15345
15345
|
$("div", this.#panel).eq(0).find("input").focus().val("");
|
|
15346
15346
|
}
|
|
15347
15347
|
};
|
|
@@ -15381,8 +15381,8 @@ class ngComboPanel extends HTMLElement
|
|
|
15381
15381
|
|
|
15382
15382
|
this.shadowRoot.innerHTML = `
|
|
15383
15383
|
<style>
|
|
15384
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
15385
|
-
${ninegrid
|
|
15384
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngComboPanel.css";
|
|
15385
|
+
${ninegrid.getCustomPath(this,"ngComboPanel.css")}
|
|
15386
15386
|
</style>
|
|
15387
15387
|
|
|
15388
15388
|
<div class="head">
|
|
@@ -15518,7 +15518,7 @@ class ngComboPanel extends HTMLElement
|
|
|
15518
15518
|
#onInput = e => {
|
|
15519
15519
|
var grd = this.shadowRoot.querySelector("nine-grid");
|
|
15520
15520
|
|
|
15521
|
-
ninegrid
|
|
15521
|
+
ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
15522
15522
|
|
|
15523
15523
|
var data = grd.data.getValidDataNF();
|
|
15524
15524
|
data.map(m => { m.__ng.filtered = false; });
|
|
@@ -15536,7 +15536,7 @@ class ngComboPanel extends HTMLElement
|
|
|
15536
15536
|
|
|
15537
15537
|
grd.data.resetRecords();
|
|
15538
15538
|
|
|
15539
|
-
if (grd.data.count() == 0) ninegrid
|
|
15539
|
+
if (grd.data.count() == 0) ninegrid.j.querySelectorAll(grd).removeClass("loading");
|
|
15540
15540
|
|
|
15541
15541
|
if (this.#timer) {
|
|
15542
15542
|
clearTimeout(this.#timer);
|
|
@@ -15652,9 +15652,9 @@ class ngComboPanel extends HTMLElement
|
|
|
15652
15652
|
}
|
|
15653
15653
|
*/
|
|
15654
15654
|
|
|
15655
|
-
var w = 16 + (ninegrid
|
|
15655
|
+
var w = 16 + (ninegrid.j.querySelectorAll(this).hasClass("expand") ? 0 : 0) + 20;
|
|
15656
15656
|
|
|
15657
|
-
if (ninegrid
|
|
15657
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("multi")) {
|
|
15658
15658
|
$("col", grd.body).each((i,el) => { w += parseInt(el.getAttribute("width")); });
|
|
15659
15659
|
}
|
|
15660
15660
|
else {
|
|
@@ -15698,7 +15698,7 @@ class ngContextMenu
|
|
|
15698
15698
|
var font = $(this.#panel).css("font");
|
|
15699
15699
|
var w = 150;
|
|
15700
15700
|
for (const item of this.#items) {
|
|
15701
|
-
w = Math.max(w, ninegrid
|
|
15701
|
+
w = Math.max(w, ninegrid.measureTextSize(item.name, font).width + 60);
|
|
15702
15702
|
}
|
|
15703
15703
|
|
|
15704
15704
|
$(this.#panel).css({
|
|
@@ -15785,7 +15785,7 @@ class ngContextMenuPanel extends HTMLElement
|
|
|
15785
15785
|
//$("li", this).on("touchmove", this.#onMouseOver);
|
|
15786
15786
|
$("li", this).on("mouseover", this.#onMouseOver);
|
|
15787
15787
|
|
|
15788
|
-
$("li", this).on("mouseout", e => { ninegrid
|
|
15788
|
+
$("li", this).on("mouseout", e => { ninegrid.j.querySelectorAll(e.currentTarget).removeClass("visible"); });
|
|
15789
15789
|
};
|
|
15790
15790
|
|
|
15791
15791
|
open = () => {
|
|
@@ -15811,12 +15811,12 @@ class ngContextMenuPanel extends HTMLElement
|
|
|
15811
15811
|
|
|
15812
15812
|
#onMouseOver = e => {
|
|
15813
15813
|
|
|
15814
|
-
ninegrid
|
|
15814
|
+
ninegrid.j.querySelectorAll(e.currentTarget).addClass("visible");
|
|
15815
15815
|
|
|
15816
15816
|
var font = $(this).css("font");
|
|
15817
15817
|
var w = 150;
|
|
15818
15818
|
$("ul > li:visible > span", e.currentTarget).each((i,el) => {
|
|
15819
|
-
w = Math.max(w, ninegrid
|
|
15819
|
+
w = Math.max(w, ninegrid.measureTextSize($(el).text(), font).width + 60);
|
|
15820
15820
|
});
|
|
15821
15821
|
|
|
15822
15822
|
$("ul", e.currentTarget).eq(0).css({
|
|
@@ -15849,7 +15849,7 @@ class ngCustomEvent
|
|
|
15849
15849
|
|
|
15850
15850
|
this.#resetEvent();
|
|
15851
15851
|
|
|
15852
|
-
this.#owner.addEventListener(ninegrid
|
|
15852
|
+
this.#owner.addEventListener(ninegrid.EVENT.LAYOUT_CHANGED, e => {
|
|
15853
15853
|
this.#resetEvent();
|
|
15854
15854
|
});
|
|
15855
15855
|
}
|
|
@@ -15870,7 +15870,7 @@ class ngCustomEvent
|
|
|
15870
15870
|
|
|
15871
15871
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15872
15872
|
const cell = e.target.closest("th,td");
|
|
15873
|
-
const eventType = e.detail == 1 ? ninegrid
|
|
15873
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.CELL_CLICK : ninegrid.EVENT.CELL_DBL_CLICK;
|
|
15874
15874
|
|
|
15875
15875
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15876
15876
|
customEvent.col = cell.dataset.col;
|
|
@@ -15878,7 +15878,7 @@ class ngCustomEvent
|
|
|
15878
15878
|
customEvent.subrow = parseInt(cell.dataset.matrixRow) % parseInt(cell.dataset.row);
|
|
15879
15879
|
customEvent.bind = cell.dataset.bind;
|
|
15880
15880
|
|
|
15881
|
-
ninegrid
|
|
15881
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15882
15882
|
|
|
15883
15883
|
this.#owner.dispatchEvent(customEvent);
|
|
15884
15884
|
};
|
|
@@ -15889,12 +15889,12 @@ class ngCustomEvent
|
|
|
15889
15889
|
|
|
15890
15890
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15891
15891
|
const cell = e.target.closest("th,td");
|
|
15892
|
-
const eventType = e.detail == 1 ? ninegrid
|
|
15892
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.HEADCELL_CLICK : ninegrid.EVENT.HEADCELL_DBL_CLICK;
|
|
15893
15893
|
|
|
15894
15894
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15895
15895
|
customEvent.col = cell.dataset.col;
|
|
15896
15896
|
|
|
15897
|
-
ninegrid
|
|
15897
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15898
15898
|
|
|
15899
15899
|
this.#owner.dispatchEvent(customEvent);
|
|
15900
15900
|
};
|
|
@@ -15905,12 +15905,12 @@ class ngCustomEvent
|
|
|
15905
15905
|
|
|
15906
15906
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15907
15907
|
const cell = e.target.closest("th,td");
|
|
15908
|
-
const eventType = e.detail == 1 ? ninegrid
|
|
15908
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.FOOTCELL_CLICK : ninegrid.EVENT.FOOTCELL_DBL_CLICK;
|
|
15909
15909
|
|
|
15910
15910
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15911
15911
|
customEvent.col = cell.dataset.col;
|
|
15912
15912
|
|
|
15913
|
-
ninegrid
|
|
15913
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15914
15914
|
|
|
15915
15915
|
this.#owner.dispatchEvent(customEvent);
|
|
15916
15916
|
};
|
|
@@ -16058,7 +16058,7 @@ class ngData
|
|
|
16058
16058
|
this.source = v;
|
|
16059
16059
|
|
|
16060
16060
|
for (var i = 0; i < v.length; i++) {
|
|
16061
|
-
this.#records[i].__ng._[ninegrid
|
|
16061
|
+
this.#records[i].__ng._[ninegrid.ROW.ID] = v[i].__ng._[ninegrid.ROW.ID];
|
|
16062
16062
|
//this.#records[i].__ninegrid.rowState = v[i].__ng.rowState;
|
|
16063
16063
|
|
|
16064
16064
|
this.#nextId = Math.max(this.#nextId, v[i].__ng.rowid);
|
|
@@ -16071,14 +16071,14 @@ class ngData
|
|
|
16071
16071
|
|
|
16072
16072
|
getId = (o) => {
|
|
16073
16073
|
|
|
16074
|
-
return o.__ng._[ninegrid
|
|
16074
|
+
return o.__ng._[ninegrid.ROW.ID];
|
|
16075
16075
|
}
|
|
16076
16076
|
|
|
16077
16077
|
get default() {
|
|
16078
16078
|
|
|
16079
16079
|
return {
|
|
16080
16080
|
//rowid : this.nextId,//nextId + index,
|
|
16081
|
-
rowState: ninegrid
|
|
16081
|
+
rowState: ninegrid.ROW_STATE.EMPTY,
|
|
16082
16082
|
deleted : false,
|
|
16083
16083
|
filtered: false,
|
|
16084
16084
|
pin : false,
|
|
@@ -16093,7 +16093,7 @@ class ngData
|
|
|
16093
16093
|
0, // INDEX
|
|
16094
16094
|
0, // ORDER
|
|
16095
16095
|
0, // VISIBLE_ROW
|
|
16096
|
-
ninegrid
|
|
16096
|
+
ninegrid.ROW_STATE.EMPTY, // STATE
|
|
16097
16097
|
false, // FILTER
|
|
16098
16098
|
false, // PIN
|
|
16099
16099
|
true, // EXPAND
|
|
@@ -16146,14 +16146,14 @@ class ngData
|
|
|
16146
16146
|
#indexOf = (rec1, row, rec2) => {
|
|
16147
16147
|
const rowData = rec1[row];
|
|
16148
16148
|
|
|
16149
|
-
return rec2.findIndex(m => { return m.__ng._[ninegrid
|
|
16149
|
+
return rec2.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == rowData.__ng._[ninegrid.ROW.ID]; });
|
|
16150
16150
|
};
|
|
16151
16151
|
|
|
16152
16152
|
moveRow = (row1, row2) => {
|
|
16153
16153
|
|
|
16154
16154
|
if (row1 == row2) return;
|
|
16155
16155
|
|
|
16156
|
-
ninegrid
|
|
16156
|
+
ninegrid.move(this.#parent.rawRecords, this.total.indexOf(row1), this.total.indexOf(row2));
|
|
16157
16157
|
this.resetRecords();
|
|
16158
16158
|
|
|
16159
16159
|
this.#parent.owner.dataManager.viewRecords.reset();
|
|
@@ -16196,7 +16196,7 @@ class ngData
|
|
|
16196
16196
|
if (td.length <= 0) return;
|
|
16197
16197
|
const col = td.eq(0)[0].dataset.col;
|
|
16198
16198
|
//var th = $(`thead th[data-col=${col}]`, this.#parent.owner.body).not(".col-indicator");
|
|
16199
|
-
const th = ninegrid
|
|
16199
|
+
const th = ninegrid.j.querySelectorAll(`thead th[data-col="${col}"]:not(.col-indicator)`, this.#parent.owner.body);
|
|
16200
16200
|
|
|
16201
16201
|
th.removeClass("deleted").removeClass("added").removeClass("updated");
|
|
16202
16202
|
if (updateData.delete.length > 0) th.addClass("deleted");
|
|
@@ -16213,9 +16213,9 @@ class ngData
|
|
|
16213
16213
|
arr.forEach((o,i) => {
|
|
16214
16214
|
o.__ng = this.default;
|
|
16215
16215
|
o.__ng.rowid = this.nextId;
|
|
16216
|
-
o.__ng.rowState = ninegrid
|
|
16216
|
+
o.__ng.rowState = ninegrid.ROW_STATE.INSERT;
|
|
16217
16217
|
|
|
16218
|
-
o.__ng._[ninegrid
|
|
16218
|
+
o.__ng._[ninegrid.ROW.ID] = o.__ng.rowid;
|
|
16219
16219
|
});
|
|
16220
16220
|
|
|
16221
16221
|
this.onRowStateChanged();
|
|
@@ -16237,13 +16237,13 @@ class ngData
|
|
|
16237
16237
|
//this.#recordsNF.forEach((o,i) => { o.__ng._[ninegrid.ROW.INDEX] = i; });
|
|
16238
16238
|
//this.#recordsNF.filter(m => { return !m.__ng.deleted && !m.__ng.filtered && m.__ng.visible; } ).forEach((o,i) => { o.__ng._[ninegrid.ROW.ORDER] = i + 1; });
|
|
16239
16239
|
|
|
16240
|
-
this.#parent.rawRecords.forEach((o,i) => { o.__ng._[ninegrid
|
|
16241
|
-
this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng.filtered && m.__ng.visible; } ).forEach((o,i) => { o.__ng._[ninegrid
|
|
16240
|
+
this.#parent.rawRecords.forEach((o,i) => { o.__ng._[ninegrid.ROW.INDEX] = i; });
|
|
16241
|
+
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; });
|
|
16242
16242
|
|
|
16243
|
-
const arr = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && m.__ng._[ninegrid
|
|
16244
|
-
arr.forEach((o,i) => { o.__ng._[ninegrid
|
|
16243
|
+
const arr = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && m.__ng._[ninegrid.ROW.PIN]; } );
|
|
16244
|
+
arr.forEach((o,i) => { o.__ng._[ninegrid.ROW.VISIBLE_ROW] = (arr.length - i) * -1; });
|
|
16245
16245
|
|
|
16246
|
-
this.#records.forEach((o,i) => { o.__ng._[ninegrid
|
|
16246
|
+
this.#records.forEach((o,i) => { o.__ng._[ninegrid.ROW.VISIBLE_ROW] = i; });
|
|
16247
16247
|
//!m.__ng.deleted && !m.__ng.pin && !m.__ng._[ninegrid.ROW.PIN] && !m.__ng.filtered && m.__ng.visible && m.__ng.paging;
|
|
16248
16248
|
|
|
16249
16249
|
};
|
|
@@ -16282,7 +16282,7 @@ class ngData
|
|
|
16282
16282
|
resetRecords = () => {
|
|
16283
16283
|
|
|
16284
16284
|
this.#recordsNF = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted } );
|
|
16285
|
-
this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[ninegrid
|
|
16285
|
+
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; } );
|
|
16286
16286
|
//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; } );
|
|
16287
16287
|
|
|
16288
16288
|
this.resetIndex();
|
|
@@ -16298,7 +16298,7 @@ class ngData
|
|
|
16298
16298
|
};
|
|
16299
16299
|
|
|
16300
16300
|
for (const colnm of this.#owner.fields.get()) {
|
|
16301
|
-
o.v.push(ninegrid
|
|
16301
|
+
o.v.push(ninegrid.nvl(json[colnm], "")); /** checklist: 숫자형식 체크해서 0으로 변경해야함 */
|
|
16302
16302
|
}
|
|
16303
16303
|
arr.push(o);
|
|
16304
16304
|
});
|
|
@@ -16334,7 +16334,7 @@ class ngData
|
|
|
16334
16334
|
|
|
16335
16335
|
getValidData = () => {
|
|
16336
16336
|
//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; } );
|
|
16337
|
-
if (this.#records.length == 0) this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[ninegrid
|
|
16337
|
+
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; } );
|
|
16338
16338
|
return this.#records;
|
|
16339
16339
|
}
|
|
16340
16340
|
getValidDataNF = () => {
|
|
@@ -16347,7 +16347,7 @@ class ngData
|
|
|
16347
16347
|
|
|
16348
16348
|
|
|
16349
16349
|
conv = (arr) => {
|
|
16350
|
-
if (ninegrid
|
|
16350
|
+
if (ninegrid.isNull(arr)) return arr;
|
|
16351
16351
|
|
|
16352
16352
|
if (Array.isArray(arr)) {
|
|
16353
16353
|
var r = [];
|
|
@@ -16378,7 +16378,7 @@ class ngData
|
|
|
16378
16378
|
}
|
|
16379
16379
|
}
|
|
16380
16380
|
conv2 = (arr) => {
|
|
16381
|
-
if (ninegrid
|
|
16381
|
+
if (ninegrid.isNull(arr)) return arr;
|
|
16382
16382
|
|
|
16383
16383
|
if (Array.isArray(arr)) {
|
|
16384
16384
|
var r = [];
|
|
@@ -16429,11 +16429,11 @@ class ngData
|
|
|
16429
16429
|
*/
|
|
16430
16430
|
changeRowState = (state, fromIndex, toIndex) => {
|
|
16431
16431
|
const to = (v) => {
|
|
16432
|
-
if ([ninegrid
|
|
16432
|
+
if ([ninegrid.ROW_STATE.EMPTY, ninegrid.ROW_STATE.NORMAL].includes(state)) v.__ng.o = {};
|
|
16433
16433
|
v.__ng.rowState = state;
|
|
16434
16434
|
};
|
|
16435
16435
|
|
|
16436
|
-
if (!state) state = ninegrid
|
|
16436
|
+
if (!state) state = ninegrid.ROW_STATE.EMPTY;
|
|
16437
16437
|
if (!fromIndex && !toIndex) { fromIndex = 0; toIndex = this.count() - 1; }
|
|
16438
16438
|
if (!fromIndex) fromIndex = 0;
|
|
16439
16439
|
if (!toIndex) toIndex = fromIndex;//this.count() - 1;
|
|
@@ -16477,7 +16477,7 @@ class ngData
|
|
|
16477
16477
|
#dataChanged = (row, bind, oldValue, newValue) => {
|
|
16478
16478
|
if (oldValue == newValue) return;
|
|
16479
16479
|
|
|
16480
|
-
const customEvent = new CustomEvent(ninegrid
|
|
16480
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.DATA_CHANGED, { bubbles: true, detail: {} });
|
|
16481
16481
|
customEvent.row = row;
|
|
16482
16482
|
customEvent.bind = bind;
|
|
16483
16483
|
customEvent.oldvalue = oldValue;
|
|
@@ -16523,15 +16523,15 @@ class ngData
|
|
|
16523
16523
|
|
|
16524
16524
|
this.#parent.rawRecords = this.#parent.rawRecords.concat(this.#defaultInsert(arr));
|
|
16525
16525
|
|
|
16526
|
-
const arr2 = this.#parent.rawRecords.map(m => { return m.__ng._[ninegrid
|
|
16526
|
+
const arr2 = this.#parent.rawRecords.map(m => { return m.__ng._[ninegrid.ROW.ORIGIN_ORDER]; });
|
|
16527
16527
|
if (arr2.length > 0) {
|
|
16528
16528
|
const maxOrder = arr2.reduce( function (a, b) {
|
|
16529
16529
|
return a > b ? a : b;
|
|
16530
16530
|
});
|
|
16531
16531
|
|
|
16532
16532
|
this.#parent.rawRecords.forEach((o,i) => {
|
|
16533
|
-
if (o.__ng._[ninegrid
|
|
16534
|
-
o.__ng._[ninegrid
|
|
16533
|
+
if (o.__ng._[ninegrid.ROW.ORIGIN_ORDER] < 0) {
|
|
16534
|
+
o.__ng._[ninegrid.ROW.ORIGIN_ORDER] = maxOrder + 1 + i;
|
|
16535
16535
|
}
|
|
16536
16536
|
});
|
|
16537
16537
|
}
|
|
@@ -16539,7 +16539,7 @@ class ngData
|
|
|
16539
16539
|
this.resetRecords();
|
|
16540
16540
|
|
|
16541
16541
|
const row = this.count() - 1;
|
|
16542
|
-
if (!updateState) this.changeRowState(ninegrid
|
|
16542
|
+
if (!updateState) this.changeRowState(ninegrid.ROW_STATE.EMPTY, row - arr.length + 1, row);
|
|
16543
16543
|
//this.#parent.owner.refresh();
|
|
16544
16544
|
this.#parent.viewRecords.reset();
|
|
16545
16545
|
|
|
@@ -16565,8 +16565,8 @@ class ngData
|
|
|
16565
16565
|
var arr = this.#json2Array(dataSource);
|
|
16566
16566
|
|
|
16567
16567
|
/** 후방 원순서 증가 */
|
|
16568
|
-
const originOrder = this.#parent.rawRecords[at].__ng._[ninegrid
|
|
16569
|
-
this.#parent.rawRecords.filter(m => {return m.__ng._[ninegrid
|
|
16568
|
+
const originOrder = this.#parent.rawRecords[at].__ng._[ninegrid.ROW.ORIGIN_ORDER];
|
|
16569
|
+
this.#parent.rawRecords.filter(m => {return m.__ng._[ninegrid.ROW.ORIGIN_ORDER] >= originOrder}).forEach(v => { v.__ng._[ninegrid.ROW.ORIGIN_ORDER] += arr.length; });
|
|
16570
16570
|
/**
|
|
16571
16571
|
this.#parent.rawRecords.forEach((o,i) => {
|
|
16572
16572
|
if (i >= at) {
|
|
@@ -16576,7 +16576,7 @@ class ngData
|
|
|
16576
16576
|
|
|
16577
16577
|
arr = this.#defaultInsert(arr);
|
|
16578
16578
|
arr.forEach((o,i) => {
|
|
16579
|
-
o.__ng._[ninegrid
|
|
16579
|
+
o.__ng._[ninegrid.ROW.ORIGIN_ORDER] = originOrder + i;
|
|
16580
16580
|
});
|
|
16581
16581
|
|
|
16582
16582
|
this.#parent.rawRecords.splice(at, 0, ...arr);
|
|
@@ -16584,7 +16584,7 @@ class ngData
|
|
|
16584
16584
|
|
|
16585
16585
|
this.resetRecords();
|
|
16586
16586
|
|
|
16587
|
-
if (!updateState) this.changeRowState(ninegrid
|
|
16587
|
+
if (!updateState) this.changeRowState(ninegrid.ROW_STATE.EMPTY, at, at + arr.length - 1);
|
|
16588
16588
|
|
|
16589
16589
|
//this.#parent.owner.refresh();
|
|
16590
16590
|
this.#parent.viewRecords.reset();
|
|
@@ -16596,11 +16596,11 @@ class ngData
|
|
|
16596
16596
|
|
|
16597
16597
|
var changed = false;
|
|
16598
16598
|
arr.sort((a,b) => {return b-a}).forEach(rowidx => {
|
|
16599
|
-
if (this.#records[rowidx].__ng.rowState == ninegrid
|
|
16600
|
-
ninegrid
|
|
16599
|
+
if (this.#records[rowidx].__ng.rowState == ninegrid.ROW_STATE.INSERT) {
|
|
16600
|
+
ninegrid.removeIf(this.#parent.rawRecords, item => { return item.__ng.rowid == this.#records[rowidx].__ng.rowid; } );
|
|
16601
16601
|
}
|
|
16602
16602
|
else {
|
|
16603
|
-
this.#parent.rawRecords.filter(item => { return item.__ng.rowid == this.#records[rowidx].__ng.rowid; } ).map(item => { item.__ng.deleted = true; item.__ng.rowState = ninegrid
|
|
16603
|
+
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; });
|
|
16604
16604
|
changed = true;
|
|
16605
16605
|
}
|
|
16606
16606
|
});
|
|
@@ -16640,8 +16640,8 @@ class ngData
|
|
|
16640
16640
|
arr = [at];
|
|
16641
16641
|
}*/
|
|
16642
16642
|
else if (typeof at === "object") {
|
|
16643
|
-
const index = this.#records.findIndex(m => { return m.__ng._[ninegrid
|
|
16644
|
-
if (index < 0) throw new Error(`${at.__ng._[ninegrid
|
|
16643
|
+
const index = this.#records.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == at.__ng._[ninegrid.ROW.ID]; });
|
|
16644
|
+
if (index < 0) throw new Error(`${at.__ng._[ninegrid.ROW.ID]} not found.`);
|
|
16645
16645
|
arr = [index];
|
|
16646
16646
|
}
|
|
16647
16647
|
else {
|
|
@@ -16662,7 +16662,7 @@ class ngData
|
|
|
16662
16662
|
deleteFromId = (rowId) => {
|
|
16663
16663
|
|
|
16664
16664
|
var rec = this.records();
|
|
16665
|
-
const at = rec.findIndex(m => { return m.__ng._[ninegrid
|
|
16665
|
+
const at = rec.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == rowId; });
|
|
16666
16666
|
|
|
16667
16667
|
if (at < 0) throw new Error(`${rowId} not found.`);
|
|
16668
16668
|
|
|
@@ -16673,7 +16673,7 @@ class ngData
|
|
|
16673
16673
|
#update = (rec, o, at) => {
|
|
16674
16674
|
|
|
16675
16675
|
if (typeof at === "undefined") {
|
|
16676
|
-
at = rec.findIndex(m => { return m.__ng._[ninegrid
|
|
16676
|
+
at = rec.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == o.__ng._[ninegrid.ROW.ID]; });
|
|
16677
16677
|
}
|
|
16678
16678
|
else if (typeof at === "number" || typeof at === "string") {
|
|
16679
16679
|
at = parseInt(at);
|
|
@@ -16701,7 +16701,7 @@ class ngData
|
|
|
16701
16701
|
rowData.v[COL_IDX] = newValue;
|
|
16702
16702
|
|
|
16703
16703
|
if (oldValue != newValue){
|
|
16704
|
-
rowData.__ng.rowState = ninegrid
|
|
16704
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16705
16705
|
changed = true;
|
|
16706
16706
|
|
|
16707
16707
|
this.#dataChanged(at, colnm, oldValue, newValue);
|
|
@@ -16751,12 +16751,12 @@ class ngData
|
|
|
16751
16751
|
//var rowData = records(index);
|
|
16752
16752
|
var oldValue = rowData.v[COL_IDX];
|
|
16753
16753
|
|
|
16754
|
-
if (rowData.v[COL_IDX] != value && rowData.__ng.rowState != ninegrid
|
|
16754
|
+
if (rowData.v[COL_IDX] != value && rowData.__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
16755
16755
|
//if (!rowData.__ng.org) rowData.__ng.org = {};
|
|
16756
16756
|
if (!rowData.__ng.o.hasOwnProperty(colnm)) rowData.__ng.o[colnm] = oldValue;
|
|
16757
16757
|
|
|
16758
16758
|
if (updateRowState) {
|
|
16759
|
-
rowData.__ng.rowState = ninegrid
|
|
16759
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16760
16760
|
this.onRowStateChanged(); // thead row-state marking
|
|
16761
16761
|
}
|
|
16762
16762
|
}
|
|
@@ -16793,11 +16793,11 @@ class ngData
|
|
|
16793
16793
|
//var rowData = records(index);
|
|
16794
16794
|
rowData.v[colIndex];
|
|
16795
16795
|
|
|
16796
|
-
if (rowData.v[colIndex] != value && rowData.__ng.rowState != ninegrid
|
|
16796
|
+
if (rowData.v[colIndex] != value && rowData.__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
16797
16797
|
//if (!rowData.__ng.o.hasOwnProperty(colnm)) rowData.__ng.o[colnm] = oldValue;
|
|
16798
16798
|
|
|
16799
16799
|
if (updateRowState) {
|
|
16800
|
-
rowData.__ng.rowState = ninegrid
|
|
16800
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16801
16801
|
}
|
|
16802
16802
|
}
|
|
16803
16803
|
|
|
@@ -16818,14 +16818,14 @@ class ngData
|
|
|
16818
16818
|
}
|
|
16819
16819
|
else {
|
|
16820
16820
|
return {
|
|
16821
|
-
insert: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid
|
|
16822
|
-
update: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid
|
|
16823
|
-
delete: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid
|
|
16821
|
+
insert: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.INSERT; } ) ),
|
|
16822
|
+
update: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.UPDATE; } ) ),
|
|
16823
|
+
delete: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.DELETE; } ) ),
|
|
16824
16824
|
};
|
|
16825
16825
|
}
|
|
16826
16826
|
};
|
|
16827
16827
|
isChanged = () => {
|
|
16828
|
-
const arr = this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid
|
|
16828
|
+
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; } );
|
|
16829
16829
|
return arr.length > 0;
|
|
16830
16830
|
}
|
|
16831
16831
|
|
|
@@ -16844,7 +16844,7 @@ class ngData
|
|
|
16844
16844
|
|
|
16845
16845
|
if (!records || records.length <= 0) return;
|
|
16846
16846
|
|
|
16847
|
-
if (ninegrid
|
|
16847
|
+
if (ninegrid.isNull(at)) {
|
|
16848
16848
|
return this.conv2(records);
|
|
16849
16849
|
}
|
|
16850
16850
|
|
|
@@ -16875,10 +16875,10 @@ class ngData
|
|
|
16875
16875
|
* return : 모든 행의 데이타 값을 Array 배열로 반환
|
|
16876
16876
|
*/
|
|
16877
16877
|
records = (at) => {
|
|
16878
|
-
return (ninegrid
|
|
16878
|
+
return (ninegrid.isNull(at)) ? this.getValidData() : this.getValidData(at);
|
|
16879
16879
|
}
|
|
16880
16880
|
recordsNF = (at) => {
|
|
16881
|
-
return (ninegrid
|
|
16881
|
+
return (ninegrid.isNull(at)) ? this.getValidDataNF() : this.getValidDataNF(at);
|
|
16882
16882
|
}
|
|
16883
16883
|
|
|
16884
16884
|
/**
|
|
@@ -16945,11 +16945,11 @@ class ngData
|
|
|
16945
16945
|
|
|
16946
16946
|
mid = parseInt((start+end)/2);
|
|
16947
16947
|
|
|
16948
|
-
if (target === arr[mid].__ng._[ninegrid
|
|
16948
|
+
if (target === arr[mid].__ng._[ninegrid.ROW.INDEX]) {
|
|
16949
16949
|
return mid;
|
|
16950
16950
|
}
|
|
16951
16951
|
else {
|
|
16952
|
-
if (target < arr[mid].__ng._[ninegrid
|
|
16952
|
+
if (target < arr[mid].__ng._[ninegrid.ROW.INDEX]){
|
|
16953
16953
|
end = mid - 1;
|
|
16954
16954
|
}
|
|
16955
16955
|
else {
|
|
@@ -17084,7 +17084,7 @@ class ngDataManager
|
|
|
17084
17084
|
|
|
17085
17085
|
this.exprFunction = (s) => {
|
|
17086
17086
|
|
|
17087
|
-
s = s.replaceAll("ninegrid.ROW.ORDER", ninegrid
|
|
17087
|
+
s = s.replaceAll("ninegrid.ROW.ORDER", ninegrid.ROW.ORDER);
|
|
17088
17088
|
|
|
17089
17089
|
let args = '...args';
|
|
17090
17090
|
let body = 'let [data, currow, all] = args; currow = Number(currow); return ' + s + ';';
|
|
@@ -17138,8 +17138,8 @@ class ngDataManager
|
|
|
17138
17138
|
this.getColumn = (rowidx,colnm) => { return this.data.get(rowidx, colnm); };
|
|
17139
17139
|
this.setColumn = (rowidx,colnm,v) => {
|
|
17140
17140
|
rowidx = parseInt(rowidx);
|
|
17141
|
-
if (this.data.get(rowidx)[colnm] != v && this.data.get(rowidx).__ng.rowState != ninegrid
|
|
17142
|
-
this.data.get(rowidx).__ng.rowState = ninegrid
|
|
17141
|
+
if (this.data.get(rowidx)[colnm] != v && this.data.get(rowidx).__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
17142
|
+
this.data.get(rowidx).__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
17143
17143
|
this.data.onRowStateChanged();
|
|
17144
17144
|
}
|
|
17145
17145
|
this.setColumnSilent(rowidx,colnm,v);
|
|
@@ -17223,8 +17223,8 @@ class ngExpandIcon extends HTMLElement
|
|
|
17223
17223
|
|
|
17224
17224
|
this.shadowRoot.innerHTML = `
|
|
17225
17225
|
<style>
|
|
17226
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
17227
|
-
${ninegrid
|
|
17226
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandIcon.css";
|
|
17227
|
+
${ninegrid.getCustomPath(this,"ngExpandIcon.css")}
|
|
17228
17228
|
|
|
17229
17229
|
:host {
|
|
17230
17230
|
width: ${width};
|
|
@@ -17252,7 +17252,7 @@ class ngExpandIcon extends HTMLElement
|
|
|
17252
17252
|
case "rect":
|
|
17253
17253
|
case "check":
|
|
17254
17254
|
case "svg":
|
|
17255
|
-
ninegrid
|
|
17255
|
+
ninegrid.j.querySelectorAll("circle,rect,svg", this.shadowRoot).attr("fill", this.getAttribute(entry.attributeName));
|
|
17256
17256
|
break;
|
|
17257
17257
|
}
|
|
17258
17258
|
break;
|
|
@@ -17263,7 +17263,7 @@ class ngExpandIcon extends HTMLElement
|
|
|
17263
17263
|
this.shadowRoot.querySelector("div").innerHTML = this.getAttribute(entry.attributeName);
|
|
17264
17264
|
break;
|
|
17265
17265
|
case "img":
|
|
17266
|
-
ninegrid
|
|
17266
|
+
ninegrid.j.querySelectorAll("img", this.shadowRoot).attr("src", this.getAttribute(entry.attributeName));
|
|
17267
17267
|
break;
|
|
17268
17268
|
}
|
|
17269
17269
|
break;
|
|
@@ -17289,8 +17289,8 @@ class ngExpandCheck extends HTMLElement
|
|
|
17289
17289
|
|
|
17290
17290
|
this.shadowRoot.innerHTML = `
|
|
17291
17291
|
<style>
|
|
17292
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
17293
|
-
${ninegrid
|
|
17292
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandCheck.css";
|
|
17293
|
+
${ninegrid.getCustomPath(this,"ngExpandCheck.css")}
|
|
17294
17294
|
</style>
|
|
17295
17295
|
|
|
17296
17296
|
<input type="checkbox" />
|
|
@@ -17310,8 +17310,8 @@ class ngExpandButton extends HTMLElement
|
|
|
17310
17310
|
|
|
17311
17311
|
this.shadowRoot.innerHTML = `
|
|
17312
17312
|
<style>
|
|
17313
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
17314
|
-
${ninegrid
|
|
17313
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandButton.css";
|
|
17314
|
+
${ninegrid.getCustomPath(this,"ngExpandButton.css")}
|
|
17315
17315
|
</style>
|
|
17316
17316
|
|
|
17317
17317
|
<button>...</button>
|
|
@@ -17345,7 +17345,7 @@ class ngExportExcel
|
|
|
17345
17345
|
afterFunc : () => {},
|
|
17346
17346
|
};
|
|
17347
17347
|
|
|
17348
|
-
var fileName = ninegrid
|
|
17348
|
+
var fileName = ninegrid.nvl(_option.fileName, "temp");
|
|
17349
17349
|
|
|
17350
17350
|
const _download = async (workbook, fileName) => {
|
|
17351
17351
|
|
|
@@ -17421,7 +17421,7 @@ class ngExportExcel
|
|
|
17421
17421
|
|
|
17422
17422
|
var v = "";
|
|
17423
17423
|
|
|
17424
|
-
if (!ninegrid
|
|
17424
|
+
if (!ninegrid.isNull(td.dataset.expr)) {
|
|
17425
17425
|
try {
|
|
17426
17426
|
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17427
17427
|
v = this.#owner.exprFunction(td.dataset.expr).call(this, rowData, rowIndex);
|
|
@@ -17430,7 +17430,7 @@ class ngExportExcel
|
|
|
17430
17430
|
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17431
17431
|
}
|
|
17432
17432
|
}
|
|
17433
|
-
else if (!ninegrid
|
|
17433
|
+
else if (!ninegrid.isNull(td.dataset.bind)) {
|
|
17434
17434
|
//const COL_IDX = this.#owner.fields.indexOf(td.dataset.bind);
|
|
17435
17435
|
//v = rowData.v[COL_IDX] || "";
|
|
17436
17436
|
v = rowData[td.dataset.bind] || "";
|
|
@@ -18021,8 +18021,8 @@ class ngFilterPanel extends HTMLElement
|
|
|
18021
18021
|
|
|
18022
18022
|
this.shadowRoot.innerHTML = `
|
|
18023
18023
|
<style>
|
|
18024
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18025
|
-
${ninegrid
|
|
18024
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngFilterPanel.css";
|
|
18025
|
+
${ninegrid.getCustomPath(this,"ngFilterPanel.css")}
|
|
18026
18026
|
</style>
|
|
18027
18027
|
|
|
18028
18028
|
<div class="head">
|
|
@@ -18227,8 +18227,8 @@ class ngFoot extends HTMLElement
|
|
|
18227
18227
|
|
|
18228
18228
|
this.shadowRoot.innerHTML = `
|
|
18229
18229
|
<style>
|
|
18230
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18231
|
-
${ninegrid
|
|
18230
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngFoot.css";
|
|
18231
|
+
${ninegrid.getCustomPath(this,"ngFoot.css")}
|
|
18232
18232
|
</style>
|
|
18233
18233
|
|
|
18234
18234
|
<ng-layout></ng-layout>
|
|
@@ -18275,7 +18275,7 @@ class ngLayout extends HTMLElement
|
|
|
18275
18275
|
if (this.#tables.length <= 1) $(this.#wrap).hide();
|
|
18276
18276
|
|
|
18277
18277
|
//$("button", this.#wrap).eq(0).addClass("ng-active");
|
|
18278
|
-
ninegrid
|
|
18278
|
+
ninegrid.j.querySelectorAll(this.#wrap.querySelector("button")).addClass("ng-active");
|
|
18279
18279
|
|
|
18280
18280
|
$("button", this.#wrap).on("click", this.#onClick);
|
|
18281
18281
|
};
|
|
@@ -18298,7 +18298,7 @@ class ngLayout extends HTMLElement
|
|
|
18298
18298
|
|
|
18299
18299
|
#onClick = e => {
|
|
18300
18300
|
|
|
18301
|
-
if (ninegrid
|
|
18301
|
+
if (ninegrid.j.querySelectorAll(e.currentTarget).hasClass("ng-active")) return;
|
|
18302
18302
|
|
|
18303
18303
|
const oldIndex = this.#at;
|
|
18304
18304
|
|
|
@@ -18306,10 +18306,10 @@ class ngLayout extends HTMLElement
|
|
|
18306
18306
|
|
|
18307
18307
|
this.#owner.changeRayout(this.#at);
|
|
18308
18308
|
|
|
18309
|
-
ninegrid
|
|
18310
|
-
ninegrid
|
|
18309
|
+
ninegrid.j.querySelectorAll("button", this.#wrap).removeClass("ng-active");
|
|
18310
|
+
ninegrid.j.querySelectorAll(e.currentTarget).addClass("ng-active");
|
|
18311
18311
|
|
|
18312
|
-
var customEvent = new CustomEvent(ninegrid
|
|
18312
|
+
var customEvent = new CustomEvent(ninegrid.EVENT.LAYOUT_CHANGED, { bubbles: true, detail: {} });
|
|
18313
18313
|
customEvent.oldIndex = oldIndex;
|
|
18314
18314
|
customEvent.newIndex = this.#at;
|
|
18315
18315
|
|
|
@@ -18334,12 +18334,12 @@ class ngHead extends HTMLElement
|
|
|
18334
18334
|
|
|
18335
18335
|
this.#owner = this.getRootNode().host;
|
|
18336
18336
|
|
|
18337
|
-
if (ninegrid
|
|
18337
|
+
if (ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) return;
|
|
18338
18338
|
|
|
18339
18339
|
this.shadowRoot.innerHTML = `
|
|
18340
18340
|
<style>
|
|
18341
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18342
|
-
${ninegrid
|
|
18341
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngHead.css";
|
|
18342
|
+
${ninegrid.getCustomPath(this,"ngHead.css")}
|
|
18343
18343
|
</style>
|
|
18344
18344
|
|
|
18345
18345
|
<ng-menu></ng-menu>
|
|
@@ -18579,8 +18579,8 @@ class ngImg extends ngCellEx
|
|
|
18579
18579
|
|
|
18580
18580
|
this.shadowRoot.innerHTML = `
|
|
18581
18581
|
<style>
|
|
18582
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18583
|
-
${ninegrid
|
|
18582
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngImg.css";
|
|
18583
|
+
${ninegrid.getCustomPath(this,"ngImg.css")}
|
|
18584
18584
|
|
|
18585
18585
|
img {
|
|
18586
18586
|
border: ${border};
|
|
@@ -18645,8 +18645,8 @@ class ngSvg extends ngCellEx
|
|
|
18645
18645
|
|
|
18646
18646
|
this.shadowRoot.innerHTML = `
|
|
18647
18647
|
<style>
|
|
18648
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18649
|
-
${ninegrid
|
|
18648
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngSvg.css";
|
|
18649
|
+
${ninegrid.getCustomPath(this,"ngSvg.css")}
|
|
18650
18650
|
|
|
18651
18651
|
div {
|
|
18652
18652
|
border: ${border};
|
|
@@ -18783,8 +18783,8 @@ class ngInfo extends HTMLElement
|
|
|
18783
18783
|
|
|
18784
18784
|
this.shadowRoot.innerHTML = `
|
|
18785
18785
|
<style>
|
|
18786
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18787
|
-
${ninegrid
|
|
18786
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInfo.css";
|
|
18787
|
+
${ninegrid.getCustomPath(this,"ngInfo.css")}
|
|
18788
18788
|
</style>
|
|
18789
18789
|
|
|
18790
18790
|
<svg class="icon" xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 16 16">
|
|
@@ -18850,8 +18850,8 @@ class ngInputColor extends ngEditableEx
|
|
|
18850
18850
|
|
|
18851
18851
|
this.shadowRoot.innerHTML = `
|
|
18852
18852
|
<style>
|
|
18853
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18854
|
-
${ninegrid
|
|
18853
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputColor.css";
|
|
18854
|
+
${ninegrid.getCustomPath(this,"ngInputColor.css")}
|
|
18855
18855
|
</style>
|
|
18856
18856
|
|
|
18857
18857
|
<input type="color" required />
|
|
@@ -18891,12 +18891,12 @@ class ngInputColor extends ngEditableEx
|
|
|
18891
18891
|
dataRefresh = (v) => {
|
|
18892
18892
|
|
|
18893
18893
|
if (this.#isValidColor(this.value)) {
|
|
18894
|
-
this.#target.value = ninegrid
|
|
18895
|
-
ninegrid
|
|
18894
|
+
this.#target.value = ninegrid.nvl(this.value, "#ffffff");
|
|
18895
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
18896
18896
|
}
|
|
18897
18897
|
else {
|
|
18898
18898
|
this.#target.value = "#ffffff";
|
|
18899
|
-
ninegrid
|
|
18899
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
18900
18900
|
}
|
|
18901
18901
|
|
|
18902
18902
|
this.#target.setAttribute("title", this.value);
|
|
@@ -18906,7 +18906,7 @@ class ngInputColor extends ngEditableEx
|
|
|
18906
18906
|
|
|
18907
18907
|
#isValidColor = (v) => {
|
|
18908
18908
|
|
|
18909
|
-
if (ninegrid
|
|
18909
|
+
if (ninegrid.isNull(v)) return true;
|
|
18910
18910
|
|
|
18911
18911
|
if (typeof v !== "string" || v.length != 7 || !v.startsWith("#")) return false;
|
|
18912
18912
|
|
|
@@ -18945,8 +18945,8 @@ class ngInputDate extends ngEditableEx
|
|
|
18945
18945
|
|
|
18946
18946
|
this.shadowRoot.innerHTML = `
|
|
18947
18947
|
<style>
|
|
18948
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
18949
|
-
${ninegrid
|
|
18948
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputDate.css";
|
|
18949
|
+
${ninegrid.getCustomPath(this,"ngInputDate.css")}
|
|
18950
18950
|
|
|
18951
18951
|
input {
|
|
18952
18952
|
--height: ${height}px;
|
|
@@ -19023,10 +19023,10 @@ class ngInputDate extends ngEditableEx
|
|
|
19023
19023
|
this.#target.value = v;
|
|
19024
19024
|
|
|
19025
19025
|
if (this.#isValidDate(v)) {
|
|
19026
|
-
ninegrid
|
|
19026
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
19027
19027
|
}
|
|
19028
19028
|
else {
|
|
19029
|
-
ninegrid
|
|
19029
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
19030
19030
|
}
|
|
19031
19031
|
|
|
19032
19032
|
if (!a) this.reset();
|
|
@@ -19034,7 +19034,7 @@ class ngInputDate extends ngEditableEx
|
|
|
19034
19034
|
|
|
19035
19035
|
#isValidDate = (v) => {
|
|
19036
19036
|
|
|
19037
|
-
if (ninegrid
|
|
19037
|
+
if (ninegrid.isNull(v)) return true;
|
|
19038
19038
|
|
|
19039
19039
|
if (typeof v !== "string") return false;
|
|
19040
19040
|
|
|
@@ -19154,8 +19154,8 @@ class ngInputText extends ngEditableEx
|
|
|
19154
19154
|
|
|
19155
19155
|
this.shadowRoot.innerHTML = `
|
|
19156
19156
|
<style>
|
|
19157
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
19158
|
-
${ninegrid
|
|
19157
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputText.css";
|
|
19158
|
+
${ninegrid.getCustomPath(this,"ngInputText.css")}
|
|
19159
19159
|
</style>
|
|
19160
19160
|
|
|
19161
19161
|
<input type="text"
|
|
@@ -19186,9 +19186,9 @@ class ngInputText extends ngEditableEx
|
|
|
19186
19186
|
if (e.target.selectionStart == e.target.selectionEnd) {
|
|
19187
19187
|
if (this.#maxbyte) {
|
|
19188
19188
|
|
|
19189
|
-
if (ninegrid
|
|
19189
|
+
if (ninegrid.getByteLength(e.target.value) >= Number(this.#maxbyte)) {
|
|
19190
19190
|
|
|
19191
|
-
e.target.value = ninegrid
|
|
19191
|
+
e.target.value = ninegrid.cut(e.target.value, Number(this.#maxbyte));
|
|
19192
19192
|
|
|
19193
19193
|
this.value = e.target.value;
|
|
19194
19194
|
}
|
|
@@ -19227,7 +19227,7 @@ class ngInputText extends ngEditableEx
|
|
|
19227
19227
|
this.#target.value = this.value;
|
|
19228
19228
|
|
|
19229
19229
|
|
|
19230
|
-
ninegrid
|
|
19230
|
+
ninegrid.j.querySelectorAll(this.#target).removeClass("invalid");
|
|
19231
19231
|
|
|
19232
19232
|
if (this.#type == "number") {
|
|
19233
19233
|
|
|
@@ -19235,18 +19235,18 @@ class ngInputText extends ngEditableEx
|
|
|
19235
19235
|
this.#max && Number(this.#target.value) > Number(this.#max) ||
|
|
19236
19236
|
this.#min && Number(this.#target.value) < Number(this.#min)
|
|
19237
19237
|
) {
|
|
19238
|
-
ninegrid
|
|
19238
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19239
19239
|
}
|
|
19240
19240
|
else if (this.#scale) {
|
|
19241
19241
|
if (this.#target.value.indexOf('.') >= 0 && this.#target.value.substring(this.#target.value.indexOf('.')+1).length > Number(this.#scale) ) {
|
|
19242
|
-
ninegrid
|
|
19242
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19243
19243
|
}
|
|
19244
19244
|
}
|
|
19245
19245
|
}
|
|
19246
19246
|
|
|
19247
19247
|
|
|
19248
|
-
if (this.#maxbyte && ninegrid
|
|
19249
|
-
ninegrid
|
|
19248
|
+
if (this.#maxbyte && ninegrid.getByteLength(this.value) > Number(this.#maxbyte)) {
|
|
19249
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19250
19250
|
}
|
|
19251
19251
|
|
|
19252
19252
|
if (!v) this.reset();
|
|
@@ -19288,7 +19288,7 @@ class ngInputText extends ngEditableEx
|
|
|
19288
19288
|
}
|
|
19289
19289
|
|
|
19290
19290
|
|
|
19291
|
-
if (this.#maxbyte && ninegrid
|
|
19291
|
+
if (this.#maxbyte && ninegrid.getByteLength(e.target.value) >= Number(this.#maxbyte) && e.target.selectionStart == e.target.selectionEnd) e.preventDefault();
|
|
19292
19292
|
}
|
|
19293
19293
|
}
|
|
19294
19294
|
|
|
@@ -19382,7 +19382,7 @@ class ngMatrixManager
|
|
|
19382
19382
|
var subrow = matrixRow % this.#owner.template.length;
|
|
19383
19383
|
//matrixRow += this.#owner.dataManager.viewRecords.rawIndex * this.#owner.template.length;
|
|
19384
19384
|
|
|
19385
|
-
var rows = ninegrid
|
|
19385
|
+
var rows = ninegrid.decode(group, "head", this.#headRows, "foot", this.#footRows, this.#bodyRows);
|
|
19386
19386
|
var idx = rows.findIndex(o => o.rowid == rowid && o.subrow == subrow);
|
|
19387
19387
|
|
|
19388
19388
|
|
|
@@ -19424,7 +19424,7 @@ class ngMatrixManager
|
|
|
19424
19424
|
//matrixRow += this.#owner.dataManager.viewRecords.rawIndex * this.#owner.template.length;
|
|
19425
19425
|
|
|
19426
19426
|
|
|
19427
|
-
var rows = ninegrid
|
|
19427
|
+
var rows = ninegrid.decode(group, "head", this.#headRows, "foot", this.#footRows, this.#bodyRows);
|
|
19428
19428
|
var idx = rows.findIndex(o => o.rowid == rowid && o.subrow == subrow);
|
|
19429
19429
|
|
|
19430
19430
|
|
|
@@ -19474,7 +19474,7 @@ class ngMaxPopup extends HTMLElement
|
|
|
19474
19474
|
|
|
19475
19475
|
this.shadowRoot.innerHTML = `
|
|
19476
19476
|
<style>
|
|
19477
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
19477
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
19478
19478
|
:host {
|
|
19479
19479
|
}
|
|
19480
19480
|
nine-grid {
|
|
@@ -19520,7 +19520,7 @@ class ngMaxPopup extends HTMLElement
|
|
|
19520
19520
|
|
|
19521
19521
|
e.stopImmediatePropagation();
|
|
19522
19522
|
|
|
19523
|
-
ninegrid
|
|
19523
|
+
ninegrid.confirm("There is changed data.\nDo you want to save it?", "SAVE", {"class": "rgb", "true-text": "Yes", "false-text": "No", }).then(result => {
|
|
19524
19524
|
|
|
19525
19525
|
if (result) {
|
|
19526
19526
|
$(".apply", this.shadowRoot).trigger("click");
|
|
@@ -19627,34 +19627,34 @@ class ngMenu extends HTMLElement
|
|
|
19627
19627
|
"select-type": {
|
|
19628
19628
|
name: 'select type',
|
|
19629
19629
|
items: {
|
|
19630
|
-
[`select-type-${ninegrid
|
|
19631
|
-
[`select-type-${ninegrid
|
|
19632
|
-
[`select-type-${ninegrid
|
|
19633
|
-
[`select-type-${ninegrid
|
|
19634
|
-
[`select-type-${ninegrid
|
|
19635
|
-
[`select-type-${ninegrid
|
|
19636
|
-
[`select-type-${ninegrid
|
|
19630
|
+
[`select-type-${ninegrid.SELECTTYPE.ROW}`] : { name: "row", className: `select-type select-type-${ninegrid.SELECTTYPE.ROW}` },
|
|
19631
|
+
[`select-type-${ninegrid.SELECTTYPE.ROWS}`]: { name: "multi row", className: `select-type select-type-${ninegrid.SELECTTYPE.ROWS}`},
|
|
19632
|
+
[`select-type-${ninegrid.SELECTTYPE.COL}`] : { name: "column", className: `select-type select-type-${ninegrid.SELECTTYPE.COL}` },
|
|
19633
|
+
[`select-type-${ninegrid.SELECTTYPE.COLS}`]: { name: "multi column", className: `select-type select-type-${ninegrid.SELECTTYPE.COLS}`},
|
|
19634
|
+
[`select-type-${ninegrid.SELECTTYPE.CELL}`]: { name: "cell", className: `select-type select-type-${ninegrid.SELECTTYPE.CELL}`},
|
|
19635
|
+
[`select-type-${ninegrid.SELECTTYPE.AREA}`]: { name: "area", className: `select-type select-type-${ninegrid.SELECTTYPE.AREA}`},
|
|
19636
|
+
[`select-type-${ninegrid.SELECTTYPE.NONE}`]: { name: "none", className: `select-type select-type-${ninegrid.SELECTTYPE.NONE}`},
|
|
19637
19637
|
},
|
|
19638
19638
|
},
|
|
19639
19639
|
"paging-type": {
|
|
19640
19640
|
name: 'paging type',
|
|
19641
19641
|
items: {
|
|
19642
|
-
[`paging-type-${ninegrid
|
|
19643
|
-
[`paging-type-${ninegrid
|
|
19644
|
-
[`paging-type-${ninegrid
|
|
19642
|
+
[`paging-type-${ninegrid.PAGINGTYPE.NONE}`] : { name: "none", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.NONE}` },
|
|
19643
|
+
[`paging-type-${ninegrid.PAGINGTYPE.CLIENT}`] : { name: "client", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.CLIENT}` },
|
|
19644
|
+
[`paging-type-${ninegrid.PAGINGTYPE.SERVER}`] : { name: "server", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.SERVER}` },
|
|
19645
19645
|
"paging-count": {
|
|
19646
19646
|
name: "entries per page",
|
|
19647
19647
|
items: {
|
|
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
|
|
19656
|
-
[`paging-count-${ninegrid
|
|
19657
|
-
[`paging-count-${ninegrid
|
|
19648
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.AUTO}`] : { name: "auto", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.AUTO}` },
|
|
19649
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_1}`] : { name: "1", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_1}` },
|
|
19650
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_5}`] : { name: "5", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_5}` },
|
|
19651
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_10}`] : { name: "10", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_10}` },
|
|
19652
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_20}`] : { name: "20", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_20}` },
|
|
19653
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_30}`] : { name: "30", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_30}` },
|
|
19654
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_50}`] : { name: "50", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_50}` },
|
|
19655
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_100}`] : { name: "100", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_100}` },
|
|
19656
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}`] : { name: "1000", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}` },
|
|
19657
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`] : { name: "10000", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`},
|
|
19658
19658
|
},
|
|
19659
19659
|
},
|
|
19660
19660
|
},
|
|
@@ -19701,13 +19701,13 @@ class ngMenu extends HTMLElement
|
|
|
19701
19701
|
this.#owner.filtering.isFiltering() ? this.#owner.filtering.off() : this.#owner.filtering.on();
|
|
19702
19702
|
break;
|
|
19703
19703
|
|
|
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
|
|
19709
|
-
case `select-type-${ninegrid
|
|
19710
|
-
case `select-type-${ninegrid
|
|
19704
|
+
case `select-type-${ninegrid.SELECTTYPE.ROW}`:
|
|
19705
|
+
case `select-type-${ninegrid.SELECTTYPE.ROWS}`:
|
|
19706
|
+
case `select-type-${ninegrid.SELECTTYPE.COL}`:
|
|
19707
|
+
case `select-type-${ninegrid.SELECTTYPE.COLS}`:
|
|
19708
|
+
case `select-type-${ninegrid.SELECTTYPE.CELL}`:
|
|
19709
|
+
case `select-type-${ninegrid.SELECTTYPE.AREA}`:
|
|
19710
|
+
case `select-type-${ninegrid.SELECTTYPE.NONE}`:
|
|
19711
19711
|
this.#owner.setAttribute("select-type", e.menuId.replace("select-type-", ""));
|
|
19712
19712
|
break;
|
|
19713
19713
|
|
|
@@ -19722,25 +19722,25 @@ class ngMenu extends HTMLElement
|
|
|
19722
19722
|
this.#owner.setAttribute("show-status-bar", this.#owner.getAttribute("show-status-bar") == "true" ? "false" : "true");
|
|
19723
19723
|
break;
|
|
19724
19724
|
|
|
19725
|
-
case `paging-type-${ninegrid
|
|
19726
|
-
case `paging-type-${ninegrid
|
|
19727
|
-
case `paging-type-${ninegrid
|
|
19725
|
+
case `paging-type-${ninegrid.PAGINGTYPE.NONE}`:
|
|
19726
|
+
case `paging-type-${ninegrid.PAGINGTYPE.CLIENT}`:
|
|
19727
|
+
case `paging-type-${ninegrid.PAGINGTYPE.SERVER}`:
|
|
19728
19728
|
this.#owner.setAttribute("paging-type", e.menuId.replace("paging-type-", ""));
|
|
19729
19729
|
break;
|
|
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
|
|
19738
|
-
case `paging-count-${ninegrid
|
|
19739
|
-
case `paging-count-${ninegrid
|
|
19730
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.AUTO}`:
|
|
19731
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_1}`:
|
|
19732
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_5}`:
|
|
19733
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_10}`:
|
|
19734
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_20}`:
|
|
19735
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_30}`:
|
|
19736
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_50}`:
|
|
19737
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_100}`:
|
|
19738
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}`:
|
|
19739
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`:
|
|
19740
19740
|
this.#owner.setAttribute("paging-count", e.menuId.replace("paging-count-", ""));
|
|
19741
19741
|
break;
|
|
19742
19742
|
case "col-indicator-type":
|
|
19743
|
-
this.#owner.setAttribute("col-indicator-type", this.#owner.getAttribute("col-indicator-type") == ninegrid
|
|
19743
|
+
this.#owner.setAttribute("col-indicator-type", this.#owner.getAttribute("col-indicator-type") == ninegrid.COLINDICATORTYPE.EXPAND ? ninegrid.COLINDICATORTYPE.COLLAPSE : ninegrid.COLINDICATORTYPE.EXPAND);
|
|
19744
19744
|
break;
|
|
19745
19745
|
case "auto-fit-col":
|
|
19746
19746
|
this.#owner.setAttribute("auto-fit-col", this.#owner.getAttribute("auto-fit-col") == "true" ? "false" : "true");
|
|
@@ -19754,29 +19754,29 @@ class ngMenu extends HTMLElement
|
|
|
19754
19754
|
},
|
|
19755
19755
|
events : {
|
|
19756
19756
|
show : e => {
|
|
19757
|
-
ninegrid
|
|
19757
|
+
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");
|
|
19758
19758
|
|
|
19759
|
-
this.#owner.getAttribute("show-title-bar") == "true" ? ninegrid
|
|
19760
|
-
this.#owner.getAttribute("show-menu-icon") == "true" ? ninegrid
|
|
19761
|
-
this.#owner.getAttribute("show-status-bar") == "true" ? ninegrid
|
|
19759
|
+
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");
|
|
19760
|
+
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");
|
|
19761
|
+
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");
|
|
19762
19762
|
|
|
19763
|
-
ninegrid
|
|
19764
|
-
ninegrid
|
|
19763
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .select-type", this.#owner.shadowRoot).removeClass("on");
|
|
19764
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .select-type-${this.#owner.getAttribute("select-type")}`, this.#owner.shadowRoot).addClass("on");
|
|
19765
19765
|
|
|
19766
|
-
ninegrid
|
|
19767
|
-
ninegrid
|
|
19766
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .paging-type", this.#owner.shadowRoot).removeClass("on");
|
|
19767
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .paging-type-${this.#owner.getAttribute("paging-type")}`, this.#owner.shadowRoot).addClass("on");
|
|
19768
19768
|
|
|
19769
|
-
ninegrid
|
|
19770
|
-
ninegrid
|
|
19769
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .paging-count", this.#owner.shadowRoot).removeClass("on");
|
|
19770
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .paging-count-${this.#owner.getAttribute("paging-count")}`, this.#owner.shadowRoot).addClass("on");
|
|
19771
19771
|
|
|
19772
|
-
this.#owner.filtering.isFiltering() ? ninegrid
|
|
19772
|
+
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");
|
|
19773
19773
|
|
|
19774
|
-
this.#owner.getAttribute("auto-fit-col") == "true" ? ninegrid
|
|
19774
|
+
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");
|
|
19775
19775
|
|
|
19776
|
-
this.#owner.getAttribute("col-indicator-type") == ninegrid
|
|
19776
|
+
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");
|
|
19777
19777
|
|
|
19778
19778
|
const tfoot = this.#owner.body.querySelector(".ng-table tfoot");
|
|
19779
|
-
const tfootMenu = ninegrid
|
|
19779
|
+
const tfootMenu = ninegrid.j.querySelectorAll("ng-context-menu-panel .show-tfoot", this.#owner.shadowRoot);
|
|
19780
19780
|
|
|
19781
19781
|
if (tfoot) {
|
|
19782
19782
|
tfootMenu.removeClass("disabled");
|
|
@@ -19787,12 +19787,12 @@ class ngMenu extends HTMLElement
|
|
|
19787
19787
|
}
|
|
19788
19788
|
|
|
19789
19789
|
if (typeof ExcelJS == "undefined") {
|
|
19790
|
-
ninegrid
|
|
19790
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .import,ng-context-menu-panel .export-excel", this.#owner.shadowRoot).addClass("disabled");
|
|
19791
19791
|
}
|
|
19792
19792
|
|
|
19793
|
-
ninegrid
|
|
19793
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .import,ng-context-menu-panel .export-pdf", this.#owner.shadowRoot).addClass("disabled");
|
|
19794
19794
|
|
|
19795
|
-
this.#owner.closest("dialog") ? ninegrid
|
|
19795
|
+
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");
|
|
19796
19796
|
},
|
|
19797
19797
|
hide : () => {
|
|
19798
19798
|
},
|
|
@@ -19851,22 +19851,22 @@ class ngPaging extends HTMLElement
|
|
|
19851
19851
|
return this.#owner.getAttribute("paging-type");
|
|
19852
19852
|
};
|
|
19853
19853
|
set type(v) {
|
|
19854
|
-
if (!Object.values(ninegrid
|
|
19854
|
+
if (!Object.values(ninegrid.PAGINGTYPE).includes(v)) throw `invalid page type : ${v}`;
|
|
19855
19855
|
|
|
19856
19856
|
//this.#owner.setAttribute("paging-type", v);
|
|
19857
19857
|
|
|
19858
19858
|
switch (v) {
|
|
19859
|
-
case ninegrid
|
|
19859
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
19860
19860
|
|
|
19861
19861
|
$(this).children().show();
|
|
19862
19862
|
$(this).children().not("span:last-child").hide();
|
|
19863
19863
|
break;
|
|
19864
19864
|
|
|
19865
|
-
case ninegrid
|
|
19865
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
19866
19866
|
$(this).children().show();
|
|
19867
19867
|
break;
|
|
19868
19868
|
|
|
19869
|
-
case ninegrid
|
|
19869
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
19870
19870
|
$(this).children().show();
|
|
19871
19871
|
break;
|
|
19872
19872
|
}
|
|
@@ -19878,7 +19878,7 @@ class ngPaging extends HTMLElement
|
|
|
19878
19878
|
return this.#currentPage;
|
|
19879
19879
|
};
|
|
19880
19880
|
set currentPage(v) {
|
|
19881
|
-
if (this.type != ninegrid
|
|
19881
|
+
if (this.type != ninegrid.PAGINGTYPE.SERVER) throw `"currentPage" is only allowed when the paging type is server.`;
|
|
19882
19882
|
|
|
19883
19883
|
this.#currentPage = v;
|
|
19884
19884
|
};
|
|
@@ -19912,7 +19912,7 @@ class ngPaging extends HTMLElement
|
|
|
19912
19912
|
setTimeout(() => {/** paging-type : none -> client 변경시 height 오류 */
|
|
19913
19913
|
this.#count = v;
|
|
19914
19914
|
|
|
19915
|
-
if (v == ninegrid
|
|
19915
|
+
if (v == ninegrid.PAGINGCOUNT.AUTO) {
|
|
19916
19916
|
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);
|
|
19917
19917
|
var tmplHeight = 0;
|
|
19918
19918
|
$(this.#owner.template).each((i,el) => tmplHeight += $(el).height());
|
|
@@ -19926,15 +19926,15 @@ class ngPaging extends HTMLElement
|
|
|
19926
19926
|
|
|
19927
19927
|
|
|
19928
19928
|
switch (this.type) {
|
|
19929
|
-
case ninegrid
|
|
19929
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
19930
19930
|
this.refresh();
|
|
19931
19931
|
break;
|
|
19932
19932
|
|
|
19933
|
-
case ninegrid
|
|
19933
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
19934
19934
|
this.refresh();
|
|
19935
19935
|
break;
|
|
19936
19936
|
|
|
19937
|
-
case ninegrid
|
|
19937
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
19938
19938
|
this.movePage(1);
|
|
19939
19939
|
break;
|
|
19940
19940
|
}
|
|
@@ -19961,13 +19961,13 @@ class ngPaging extends HTMLElement
|
|
|
19961
19961
|
#refresh = () => {
|
|
19962
19962
|
|
|
19963
19963
|
|
|
19964
|
-
if (this.type == ninegrid
|
|
19964
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
19965
19965
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#owner.data.countNF().toLocaleString()}`);
|
|
19966
19966
|
}
|
|
19967
|
-
else if (this.type == ninegrid
|
|
19967
|
+
else if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
19968
19968
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#totalCount.toLocaleString()}`);
|
|
19969
19969
|
}
|
|
19970
|
-
else if (this.type == ninegrid
|
|
19970
|
+
else if (this.type == ninegrid.PAGINGTYPE.NONE) {
|
|
19971
19971
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#totalCount.toLocaleString()}`);
|
|
19972
19972
|
}
|
|
19973
19973
|
|
|
@@ -19978,21 +19978,21 @@ class ngPaging extends HTMLElement
|
|
|
19978
19978
|
$('span', this).eq(0).html(`${this.#currentPage.toLocaleString()} <i>of</i> ${this.#totalPage.toLocaleString()}`);
|
|
19979
19979
|
}
|
|
19980
19980
|
|
|
19981
|
-
ninegrid
|
|
19982
|
-
ninegrid
|
|
19983
|
-
ninegrid
|
|
19984
|
-
ninegrid
|
|
19981
|
+
ninegrid.j.querySelectorAll('.ng-paging-first', this).attr("disabled", (this.#currentPage == 1 || this.#totalPage < 1) ? true : false);
|
|
19982
|
+
ninegrid.j.querySelectorAll('.ng-paging-prev', this).attr("disabled", (this.#currentPage == 1 || this.#totalPage < 1) ? true : false);
|
|
19983
|
+
ninegrid.j.querySelectorAll('.ng-paging-next', this).attr("disabled", (this.#currentPage == this.#totalPage || this.#totalPage < 1) ? true : false);
|
|
19984
|
+
ninegrid.j.querySelectorAll('.ng-paging-last', this).attr("disabled", (this.#currentPage == this.#totalPage || this.#totalPage < 1) ? true : false);
|
|
19985
19985
|
};
|
|
19986
19986
|
|
|
19987
19987
|
|
|
19988
19988
|
#moveLast = () => {
|
|
19989
19989
|
//this.#clearPaging();
|
|
19990
19990
|
|
|
19991
|
-
if (this.type == ninegrid
|
|
19991
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
19992
19992
|
|
|
19993
19993
|
this.movePage(Math.ceil(this.#owner.data.countNF() / this.#linesPerPage));
|
|
19994
19994
|
}
|
|
19995
|
-
else if (this.type == ninegrid
|
|
19995
|
+
else if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
19996
19996
|
this.movePage(Math.ceil(this.#totalCount / this.#linesPerPage));
|
|
19997
19997
|
}
|
|
19998
19998
|
};
|
|
@@ -20002,11 +20002,11 @@ class ngPaging extends HTMLElement
|
|
|
20002
20002
|
//if (!this.#owner || !this.#owner.data || isNaN(page) || this.#totalPage == 0) return;
|
|
20003
20003
|
if (!this.#owner || !this.#owner.data || isNaN(page)) return;
|
|
20004
20004
|
|
|
20005
|
-
if (this.type == ninegrid
|
|
20006
|
-
ninegrid
|
|
20007
|
-
ninegrid
|
|
20008
|
-
ninegrid
|
|
20009
|
-
ninegrid
|
|
20005
|
+
if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
20006
|
+
ninegrid.j.querySelectorAll('.ng-paging-first', this).attr("disabled", true);
|
|
20007
|
+
ninegrid.j.querySelectorAll('.ng-paging-prev', this).attr("disabled", true);
|
|
20008
|
+
ninegrid.j.querySelectorAll('.ng-paging-next', this).attr("disabled", true);
|
|
20009
|
+
ninegrid.j.querySelectorAll('.ng-paging-last', this).attr("disabled", true);
|
|
20010
20010
|
}
|
|
20011
20011
|
|
|
20012
20012
|
//this.#clearPaging();
|
|
@@ -20014,7 +20014,7 @@ class ngPaging extends HTMLElement
|
|
|
20014
20014
|
this.#oldPage = this.#currentPage;
|
|
20015
20015
|
this.#currentPage = page;
|
|
20016
20016
|
|
|
20017
|
-
if (this.type == ninegrid
|
|
20017
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
20018
20018
|
|
|
20019
20019
|
var data = this.#owner.data.getValidDataNF();
|
|
20020
20020
|
|
|
@@ -20040,7 +20040,7 @@ class ngPaging extends HTMLElement
|
|
|
20040
20040
|
this.#owner.scrollTo_V1(0);
|
|
20041
20041
|
}
|
|
20042
20042
|
|
|
20043
|
-
if (this.type == ninegrid
|
|
20043
|
+
if (this.type == ninegrid.PAGINGTYPE.SERVER && this.#oldPage != this.#currentPage){
|
|
20044
20044
|
this.onpagechanged.pageIndex= this.#currentPage;
|
|
20045
20045
|
this.onpagechanged.pageCnt = this.#linesPerPage;
|
|
20046
20046
|
|
|
@@ -20055,18 +20055,18 @@ class ngPaging extends HTMLElement
|
|
|
20055
20055
|
refresh = () => {
|
|
20056
20056
|
|
|
20057
20057
|
switch (this.type) {
|
|
20058
|
-
case ninegrid
|
|
20058
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
20059
20059
|
this.#clearPaging();
|
|
20060
20060
|
$(".ng-container tbody tr.bindable:not(.nodata)", this.#owner.body).remove();
|
|
20061
20061
|
this.#owner.scrollTo_V1(0);
|
|
20062
20062
|
break;
|
|
20063
20063
|
|
|
20064
|
-
case ninegrid
|
|
20064
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
20065
20065
|
this.movePage(1);
|
|
20066
20066
|
this.#owner.refresh();
|
|
20067
20067
|
break;
|
|
20068
20068
|
|
|
20069
|
-
case ninegrid
|
|
20069
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
20070
20070
|
break;
|
|
20071
20071
|
}
|
|
20072
20072
|
|
|
@@ -20099,8 +20099,8 @@ class ngProgress extends ngCellEx
|
|
|
20099
20099
|
|
|
20100
20100
|
this.shadowRoot.innerHTML = `
|
|
20101
20101
|
<style>
|
|
20102
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20103
|
-
${ninegrid
|
|
20102
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngProgress.css";
|
|
20103
|
+
${ninegrid.getCustomPath(this,"ngProgress.css")}
|
|
20104
20104
|
|
|
20105
20105
|
progress::-webkit-progress-bar {
|
|
20106
20106
|
background: ${backColor};
|
|
@@ -20206,8 +20206,8 @@ class ngRadio extends ngEditableEx
|
|
|
20206
20206
|
|
|
20207
20207
|
this.shadowRoot.innerHTML = `
|
|
20208
20208
|
<style>
|
|
20209
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20210
|
-
${ninegrid
|
|
20209
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRadio.css";
|
|
20210
|
+
${ninegrid.getCustomPath(this,"ngRadio.css")}
|
|
20211
20211
|
|
|
20212
20212
|
div.ng-wrap {
|
|
20213
20213
|
justify-content: ${justifyContent};
|
|
@@ -20249,7 +20249,7 @@ class ngRadio extends ngEditableEx
|
|
|
20249
20249
|
dataRefresh = (v) => {
|
|
20250
20250
|
|
|
20251
20251
|
if (this.#dataSource) {
|
|
20252
|
-
this.#isValid() ? ninegrid
|
|
20252
|
+
this.#isValid() ? ninegrid.j.querySelectorAll(this).removeClass("invalid") : ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
20253
20253
|
}
|
|
20254
20254
|
|
|
20255
20255
|
$(this.#target).each((i,el) => {
|
|
@@ -20263,7 +20263,7 @@ class ngRadio extends ngEditableEx
|
|
|
20263
20263
|
|
|
20264
20264
|
//console.log(this.value, ninegrid.isNull(this.value));
|
|
20265
20265
|
|
|
20266
|
-
if (ninegrid
|
|
20266
|
+
if (ninegrid.isNull(this.value)) return true;
|
|
20267
20267
|
|
|
20268
20268
|
var idx = this.#dataSource.findIndex(m => { return this.value == m[this.#code]; });
|
|
20269
20269
|
if (idx < 0) return false;
|
|
@@ -20308,8 +20308,8 @@ class ngRenderer extends ngCellEx
|
|
|
20308
20308
|
|
|
20309
20309
|
this.shadowRoot.innerHTML =`
|
|
20310
20310
|
<style>
|
|
20311
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20312
|
-
${ninegrid
|
|
20311
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRenderer.css";
|
|
20312
|
+
${ninegrid.getCustomPath(this,"ngRenderer.css")}
|
|
20313
20313
|
|
|
20314
20314
|
span {
|
|
20315
20315
|
color: ${color};
|
|
@@ -20368,8 +20368,8 @@ class ngRowDetail extends ngCellEx
|
|
|
20368
20368
|
|
|
20369
20369
|
this.shadowRoot.innerHTML = `
|
|
20370
20370
|
<style>
|
|
20371
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20372
|
-
${ninegrid
|
|
20371
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowDetail.css";
|
|
20372
|
+
${ninegrid.getCustomPath(this,"ngRowDetail.css")}
|
|
20373
20373
|
</style>
|
|
20374
20374
|
|
|
20375
20375
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="dtl" focusable="false" aria-hidden="true">
|
|
@@ -20421,7 +20421,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20421
20421
|
|
|
20422
20422
|
this.shadowRoot.innerHTML = `
|
|
20423
20423
|
<style>
|
|
20424
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20424
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
20425
20425
|
nine-grid {
|
|
20426
20426
|
border: 1px solid #ccc;
|
|
20427
20427
|
}
|
|
@@ -20473,7 +20473,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20473
20473
|
|
|
20474
20474
|
e.stopImmediatePropagation();
|
|
20475
20475
|
|
|
20476
|
-
ninegrid
|
|
20476
|
+
ninegrid.confirm("There is changed data.\nDo you want to save it?", "SAVE", {"class": "rgb", "true-text": "Yes", "false-text": "No", }).then(result => {
|
|
20477
20477
|
|
|
20478
20478
|
if (result) {
|
|
20479
20479
|
$(".apply", this.shadowRoot).trigger("click");
|
|
@@ -20489,7 +20489,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20489
20489
|
|
|
20490
20490
|
var data = this.#owner.body.querySelector(`tr[data-row="${row}"]`).data;
|
|
20491
20491
|
|
|
20492
|
-
this.#rowIndex = data.__ng._[ninegrid
|
|
20492
|
+
this.#rowIndex = data.__ng._[ninegrid.ROW.INDEX];
|
|
20493
20493
|
|
|
20494
20494
|
$(".title", this.shadowRoot).html(this.#owner.getAttribute("caption") || "Details");
|
|
20495
20495
|
$(".sub-title", this.shadowRoot).html(`(${(Number(row)+1).toLocaleString()} of ${this.#owner.data.count().toLocaleString()})`);
|
|
@@ -20619,8 +20619,8 @@ class ngRowDrag extends ngCellEx
|
|
|
20619
20619
|
connectedCallback() {
|
|
20620
20620
|
this.shadowRoot.innerHTML = `
|
|
20621
20621
|
<style>
|
|
20622
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20623
|
-
${ninegrid
|
|
20622
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowDrag.css";
|
|
20623
|
+
${ninegrid.getCustomPath(this,"ngRowDrag.css")}
|
|
20624
20624
|
</style>
|
|
20625
20625
|
`;
|
|
20626
20626
|
|
|
@@ -20700,7 +20700,7 @@ class ngRowMover
|
|
|
20700
20700
|
#borderTop = (row) => {
|
|
20701
20701
|
[".ng-container-left",".ng-container-body",".ng-container-right"].forEach(group => {
|
|
20702
20702
|
const trs = this.#owner.body.querySelectorAll(`${group} tr[data-row="${row}"]`);
|
|
20703
|
-
ninegrid
|
|
20703
|
+
ninegrid.j.querySelectorAll("th,td", trs[0]).addClass("ng-dragover-up");
|
|
20704
20704
|
});
|
|
20705
20705
|
};
|
|
20706
20706
|
|
|
@@ -20708,7 +20708,7 @@ class ngRowMover
|
|
|
20708
20708
|
[".ng-container-left",".ng-container-body",".ng-container-right"].forEach(group => {
|
|
20709
20709
|
this.#owner.body.querySelectorAll(`${group} tr[data-row="${row}"]`).forEach((tr,i) => {
|
|
20710
20710
|
tr.querySelectorAll("th,td").forEach(cell => {
|
|
20711
|
-
if ((i + (cell.rowSpan || 1)) == this.#owner.template.length) ninegrid
|
|
20711
|
+
if ((i + (cell.rowSpan || 1)) == this.#owner.template.length) ninegrid.j.querySelectorAll(cell).addClass("ng-dragover-down");
|
|
20712
20712
|
});
|
|
20713
20713
|
});
|
|
20714
20714
|
});
|
|
@@ -20726,8 +20726,8 @@ class ngRowMover
|
|
|
20726
20726
|
const targetRow = parseInt(e.target.closest("th,td").dataset.row);
|
|
20727
20727
|
|
|
20728
20728
|
|
|
20729
|
-
ninegrid
|
|
20730
|
-
ninegrid
|
|
20729
|
+
ninegrid.j.querySelectorAll("th,td", sourceGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20730
|
+
ninegrid.j.querySelectorAll("th,td", targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20731
20731
|
//ninegrid.j.querySelectorAll(`tr`, targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20732
20732
|
|
|
20733
20733
|
if (sourceGrid.id == targetGrid.id) {
|
|
@@ -20795,7 +20795,7 @@ class ngRowMover
|
|
|
20795
20795
|
//const sourceGrid= document.getElementById(e.dataTransfer.getData("id"));
|
|
20796
20796
|
//const sourceRow = parseInt(e.dataTransfer.getData("row"));
|
|
20797
20797
|
//const sourceBind= e.dataTransfer.getData("bind");
|
|
20798
|
-
const sourceGrid= ninegrid
|
|
20798
|
+
const sourceGrid= ninegrid.nvl(document.getElementById(ngRowDrag.dragData.id), this.#owner); /** Max Popup 화면에서 document.getElementById(ngRowDrag.dragData.id) == null */
|
|
20799
20799
|
const sourceRow = ngRowDrag.dragData.row;
|
|
20800
20800
|
const sourceBind= ngRowDrag.dragData.bind;
|
|
20801
20801
|
|
|
@@ -20806,12 +20806,12 @@ class ngRowMover
|
|
|
20806
20806
|
const targetRow = parseInt(targetTr.dataset.row);
|
|
20807
20807
|
const targetBind= targetGrid.body.querySelector("ng-row-drag") ? targetGrid.body.querySelector("ng-row-drag").cell.dataset.bind : null;
|
|
20808
20808
|
|
|
20809
|
-
ninegrid
|
|
20810
|
-
ninegrid
|
|
20809
|
+
ninegrid.j.querySelectorAll("th,td", sourceGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20810
|
+
ninegrid.j.querySelectorAll("th,td", targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20811
20811
|
|
|
20812
20812
|
if (sourceGrid.id == targetGrid.id && sourceRow == targetRow) return;
|
|
20813
20813
|
|
|
20814
|
-
const canEvent = new CustomEvent(ninegrid
|
|
20814
|
+
const canEvent = new CustomEvent(ninegrid.EVENT.CAN_ROW_MOVE, { bubbles: true, cancelable: true, detail: {} });
|
|
20815
20815
|
canEvent.sourceGrid = sourceGrid;
|
|
20816
20816
|
canEvent.targetGrid = targetGrid;
|
|
20817
20817
|
canEvent.sourceRow = sourceRow;
|
|
@@ -20849,7 +20849,7 @@ class ngRowMover
|
|
|
20849
20849
|
|
|
20850
20850
|
this.#owner.dataManager.viewRecords.reset();
|
|
20851
20851
|
|
|
20852
|
-
const doneEvent = new CustomEvent(ninegrid
|
|
20852
|
+
const doneEvent = new CustomEvent(ninegrid.EVENT.ROW_MOVED, { bubbles: true, detail: {} });
|
|
20853
20853
|
doneEvent.sourceGrid= sourceGrid;
|
|
20854
20854
|
doneEvent.targetGrid= targetGrid;
|
|
20855
20855
|
doneEvent.sourceRow = sourceRow;
|
|
@@ -20882,8 +20882,8 @@ class ngRowExpand extends HTMLElement
|
|
|
20882
20882
|
|
|
20883
20883
|
this.shadowRoot.innerHTML = `
|
|
20884
20884
|
<style>
|
|
20885
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20886
|
-
${ninegrid
|
|
20885
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowExpand.css";
|
|
20886
|
+
${ninegrid.getCustomPath(this,"ngRowExpand.css")}
|
|
20887
20887
|
</style>
|
|
20888
20888
|
`;
|
|
20889
20889
|
|
|
@@ -20893,17 +20893,17 @@ class ngRowExpand extends HTMLElement
|
|
|
20893
20893
|
if (!this.#owner || !this.#cell) return;
|
|
20894
20894
|
|
|
20895
20895
|
//this.#originExpr= $(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.template).attr("data-expr");
|
|
20896
|
-
this.#originExpr= ninegrid
|
|
20896
|
+
this.#originExpr= ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr");
|
|
20897
20897
|
|
|
20898
20898
|
if (this.#cell.querySelector("ng-col-expand")) {
|
|
20899
|
-
ninegrid
|
|
20899
|
+
ninegrid.j.querySelectorAll(this).addClass("padding");
|
|
20900
20900
|
}
|
|
20901
20901
|
|
|
20902
20902
|
$(this).on("click", e => {
|
|
20903
20903
|
e.preventDefault();
|
|
20904
20904
|
e.stopPropagation();
|
|
20905
20905
|
|
|
20906
|
-
if (ninegrid
|
|
20906
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) {
|
|
20907
20907
|
this.#collapse();
|
|
20908
20908
|
}
|
|
20909
20909
|
else {
|
|
@@ -20915,28 +20915,28 @@ class ngRowExpand extends HTMLElement
|
|
|
20915
20915
|
};
|
|
20916
20916
|
|
|
20917
20917
|
#expand = () => {
|
|
20918
|
-
const bind = ninegrid
|
|
20918
|
+
const bind = ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-bind");
|
|
20919
20919
|
const expr = `data.${bind}.replaceAll("\\n", "<br>")`;
|
|
20920
20920
|
|
|
20921
|
-
ninegrid
|
|
20921
|
+
ninegrid.j.querySelectorAll(this).addClass("expand");
|
|
20922
20922
|
|
|
20923
|
-
ninegrid
|
|
20924
|
-
ninegrid
|
|
20923
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr", expr);
|
|
20924
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).attr("data-expr", expr);
|
|
20925
20925
|
|
|
20926
20926
|
this.#setRowHeightFit();
|
|
20927
20927
|
};
|
|
20928
20928
|
|
|
20929
20929
|
#collapse = () => {
|
|
20930
20930
|
|
|
20931
|
-
ninegrid
|
|
20931
|
+
ninegrid.j.querySelectorAll(this).removeClass("expand");
|
|
20932
20932
|
|
|
20933
20933
|
if (this.#originExpr) {
|
|
20934
|
-
ninegrid
|
|
20935
|
-
ninegrid
|
|
20934
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr", this.#originExpr);
|
|
20935
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).attr("data-expr", this.#originExpr);
|
|
20936
20936
|
}
|
|
20937
20937
|
else {
|
|
20938
|
-
ninegrid
|
|
20939
|
-
ninegrid
|
|
20938
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).removeAttr("data-expr");
|
|
20939
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).removeAttr("data-expr");
|
|
20940
20940
|
}
|
|
20941
20941
|
|
|
20942
20942
|
this.#setRowHeightFit();
|
|
@@ -20972,8 +20972,8 @@ class ngRowIndicator extends ngCellEx
|
|
|
20972
20972
|
|
|
20973
20973
|
this.shadowRoot.innerHTML = `
|
|
20974
20974
|
<style>
|
|
20975
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
20976
|
-
${ninegrid
|
|
20975
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowIndicator.css";
|
|
20976
|
+
${ninegrid.getCustomPath(this,"ngRowIndicator.css")}
|
|
20977
20977
|
|
|
20978
20978
|
svg.dtl {
|
|
20979
20979
|
display: ${"none"};
|
|
@@ -21008,7 +21008,7 @@ class ngRowIndicator extends ngCellEx
|
|
|
21008
21008
|
|
|
21009
21009
|
//this.cell.dataset.expr = ninegrid.nvl(this.cell.dataset.expr, "data.__ng._[ninegrid.ROW.PIN] ? '*' : data.__ng._[ninegrid.ROW.ORDER]");
|
|
21010
21010
|
//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]");
|
|
21011
|
-
this.cell.dataset.expr = ninegrid
|
|
21011
|
+
this.cell.dataset.expr = ninegrid.nvl(this.cell.dataset.expr, "data.__ng._[ninegrid.ROW.ORDER]");
|
|
21012
21012
|
|
|
21013
21013
|
this.cell.setAttribute("text-align", "center");
|
|
21014
21014
|
|
|
@@ -21036,14 +21036,14 @@ class ngRowIndicator extends ngCellEx
|
|
|
21036
21036
|
var row = parseInt(this.cell.dataset.row);
|
|
21037
21037
|
|
|
21038
21038
|
switch (this.data.__ng.rowState) {
|
|
21039
|
-
case ninegrid
|
|
21040
|
-
ninegrid
|
|
21039
|
+
case ninegrid.ROW_STATE.INSERT:
|
|
21040
|
+
ninegrid.j.querySelectorAll(this).addClass('added').removeClass('updated');
|
|
21041
21041
|
break;
|
|
21042
|
-
case ninegrid
|
|
21043
|
-
ninegrid
|
|
21042
|
+
case ninegrid.ROW_STATE.UPDATE:
|
|
21043
|
+
ninegrid.j.querySelectorAll(this).addClass('updated');
|
|
21044
21044
|
break;
|
|
21045
21045
|
default:
|
|
21046
|
-
ninegrid
|
|
21046
|
+
ninegrid.j.querySelectorAll(this).removeClass('added').removeClass('updated');
|
|
21047
21047
|
break;
|
|
21048
21048
|
}
|
|
21049
21049
|
|
|
@@ -21053,7 +21053,7 @@ class ngRowIndicator extends ngCellEx
|
|
|
21053
21053
|
};
|
|
21054
21054
|
|
|
21055
21055
|
#init = () => {
|
|
21056
|
-
if (!ninegrid
|
|
21056
|
+
if (!ninegrid.j.querySelectorAll(this.closest("tbody")).hasClass("fixed")) {
|
|
21057
21057
|
var rowSpan = this.cell.rowSpan;
|
|
21058
21058
|
var tr = this.closest("tr");
|
|
21059
21059
|
for (var i = 0; i < rowSpan; i++) {
|
|
@@ -21140,12 +21140,12 @@ class ngRowResizer extends HTMLElement
|
|
|
21140
21140
|
|
|
21141
21141
|
$(this).on("mousedown", e => {
|
|
21142
21142
|
|
|
21143
|
-
if (ninegrid
|
|
21143
|
+
if (ninegrid.j.querySelectorAll(this.#cell.closest("tbody")).hasClass('fixed')) return;
|
|
21144
21144
|
|
|
21145
21145
|
this.#timer = setTimeout(() => { this.#onMouseDown(e); }, 500);
|
|
21146
21146
|
})
|
|
21147
21147
|
.on("dblclick", e => {
|
|
21148
|
-
if (ninegrid
|
|
21148
|
+
if (ninegrid.j.querySelectorAll(this.#cell.closest("tbody")).hasClass('fixed')) return;
|
|
21149
21149
|
|
|
21150
21150
|
this.#onDblClick(e);
|
|
21151
21151
|
});
|
|
@@ -21256,8 +21256,8 @@ class ngRowPin extends ngCellEx
|
|
|
21256
21256
|
|
|
21257
21257
|
this.shadowRoot.innerHTML = `
|
|
21258
21258
|
<style>
|
|
21259
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
21260
|
-
${ninegrid
|
|
21259
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowPin.css";
|
|
21260
|
+
${ninegrid.getCustomPath(this,"ngRowPin.css")}
|
|
21261
21261
|
</style>
|
|
21262
21262
|
|
|
21263
21263
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" focusable="false" aria-hidden="true">
|
|
@@ -21273,7 +21273,7 @@ class ngRowPin extends ngCellEx
|
|
|
21273
21273
|
dataRefresh = (v) => {
|
|
21274
21274
|
if (!this.owner || !this.cell || !this.data) return;
|
|
21275
21275
|
|
|
21276
|
-
this.cell.closest("tbody.fixed") ? ninegrid
|
|
21276
|
+
this.cell.closest("tbody.fixed") ? ninegrid.j.querySelectorAll(this).addClass("pin") : ninegrid.j.querySelectorAll(this).removeClass("pin");
|
|
21277
21277
|
|
|
21278
21278
|
if (!v) this.reset();
|
|
21279
21279
|
};
|
|
@@ -21281,12 +21281,12 @@ class ngRowPin extends ngCellEx
|
|
|
21281
21281
|
#init = () => {
|
|
21282
21282
|
|
|
21283
21283
|
/** Mobile에서 Row Pin 기능 방지 */
|
|
21284
|
-
if (!ninegrid
|
|
21284
|
+
if (!ninegrid.isMobile()) {
|
|
21285
21285
|
this.shadowRoot.querySelector("svg").addEventListener("click", e => {
|
|
21286
21286
|
|
|
21287
21287
|
const row = this.cell.closest("tr").dataset.row;
|
|
21288
21288
|
|
|
21289
|
-
this.cell.closest("tbody.fixed") ? this.owner.pin.remove(row) : this.owner.pin.add(this.data.__ng._[ninegrid
|
|
21289
|
+
this.cell.closest("tbody.fixed") ? this.owner.pin.remove(row) : this.owner.pin.add(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
21290
21290
|
});
|
|
21291
21291
|
}
|
|
21292
21292
|
}
|
|
@@ -21308,7 +21308,7 @@ class ngPinManager
|
|
|
21308
21308
|
* 1. grid attr == filter : on();
|
|
21309
21309
|
*/
|
|
21310
21310
|
this.#records.forEach(v => {
|
|
21311
|
-
v.__ng._[ninegrid
|
|
21311
|
+
v.__ng._[ninegrid.ROW.PIN] = false;
|
|
21312
21312
|
});
|
|
21313
21313
|
|
|
21314
21314
|
this.#records = [];
|
|
@@ -21320,7 +21320,7 @@ class ngPinManager
|
|
|
21320
21320
|
|
|
21321
21321
|
//var data = this.#owner.data.getRow(i);
|
|
21322
21322
|
var data = this.#owner.data.getNF(index);
|
|
21323
|
-
data.__ng._[ninegrid
|
|
21323
|
+
data.__ng._[ninegrid.ROW.PIN] = true;
|
|
21324
21324
|
|
|
21325
21325
|
this.#records.push(data);
|
|
21326
21326
|
|
|
@@ -21340,7 +21340,7 @@ class ngPinManager
|
|
|
21340
21340
|
bodyTmpl .each((i,tr) => { $(".ng-container-body tbody.fixed", this.#owner.body).append(tr.outerHTML); });
|
|
21341
21341
|
|
|
21342
21342
|
$("tbody.fixed tr:not([data-index])", this.#owner.body).each((i,tr) => {
|
|
21343
|
-
tr.dataset.index = data.__ng._[ninegrid
|
|
21343
|
+
tr.dataset.index = data.__ng._[ninegrid.ROW.INDEX];
|
|
21344
21344
|
tr.data = data;
|
|
21345
21345
|
});
|
|
21346
21346
|
|
|
@@ -21351,9 +21351,9 @@ class ngPinManager
|
|
|
21351
21351
|
|
|
21352
21352
|
$("tbody.fixed tr", this.#owner.body).each((i,tr) => {
|
|
21353
21353
|
tr.dataset.matrixRow = parseInt(tr.dataset.row) * this.#owner.template.length + (parseInt(tr.sectionRowIndex % this.#owner.template.length));
|
|
21354
|
-
ninegrid
|
|
21355
|
-
ninegrid
|
|
21356
|
-
ninegrid
|
|
21354
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-index", tr.dataset.index);
|
|
21355
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-row", tr.dataset.row);
|
|
21356
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-matrix-row", tr.dataset.matrixRow);
|
|
21357
21357
|
});
|
|
21358
21358
|
|
|
21359
21359
|
this.#owner.data.resetRecords();
|
|
@@ -21370,7 +21370,7 @@ class ngPinManager
|
|
|
21370
21370
|
$(`.ng-container-right tbody.fixed tr[data-row=${row}]`, this.#owner.body).remove();
|
|
21371
21371
|
$(`.ng-container-body tbody.fixed tr[data-row=${row}]`, this.#owner.body).remove();
|
|
21372
21372
|
|
|
21373
|
-
this.#records[index].__ng._[ninegrid
|
|
21373
|
+
this.#records[index].__ng._[ninegrid.ROW.PIN] = false;
|
|
21374
21374
|
|
|
21375
21375
|
this.#records.splice(index, 1);
|
|
21376
21376
|
}
|
|
@@ -21406,8 +21406,8 @@ class ngRowState extends ngCellEx
|
|
|
21406
21406
|
connectedCallback() {
|
|
21407
21407
|
this.shadowRoot.innerHTML = `
|
|
21408
21408
|
<style>
|
|
21409
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
21410
|
-
${ninegrid
|
|
21409
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowState.css";
|
|
21410
|
+
${ninegrid.getCustomPath(this,"ngRowState.css")}
|
|
21411
21411
|
</style>
|
|
21412
21412
|
`;
|
|
21413
21413
|
|
|
@@ -21421,14 +21421,14 @@ class ngRowState extends ngCellEx
|
|
|
21421
21421
|
//var row = parseInt(this.cell.dataset.row);
|
|
21422
21422
|
|
|
21423
21423
|
switch (this.data.__ng.rowState) {
|
|
21424
|
-
case ninegrid
|
|
21425
|
-
ninegrid
|
|
21424
|
+
case ninegrid.ROW_STATE.INSERT:
|
|
21425
|
+
ninegrid.j.querySelectorAll(this).addClass('added').removeClass('updated');
|
|
21426
21426
|
break;
|
|
21427
|
-
case ninegrid
|
|
21428
|
-
ninegrid
|
|
21427
|
+
case ninegrid.ROW_STATE.UPDATE:
|
|
21428
|
+
ninegrid.j.querySelectorAll(this).addClass('updated');
|
|
21429
21429
|
break;
|
|
21430
21430
|
default:
|
|
21431
|
-
ninegrid
|
|
21431
|
+
ninegrid.j.querySelectorAll(this).removeClass('added').removeClass('updated');
|
|
21432
21432
|
break;
|
|
21433
21433
|
}
|
|
21434
21434
|
|
|
@@ -21460,8 +21460,8 @@ class ngVScrollBar extends HTMLElement
|
|
|
21460
21460
|
|
|
21461
21461
|
this.shadowRoot.innerHTML = `
|
|
21462
21462
|
<style>
|
|
21463
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
21464
|
-
${ninegrid
|
|
21463
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngVScrollBar.css";
|
|
21464
|
+
${ninegrid.getCustomPath(this,"ngVScrollBar.css")}
|
|
21465
21465
|
</style>
|
|
21466
21466
|
|
|
21467
21467
|
<button class='ng-scroll-top' disabled><div class='ng-scroll-icon'></div></button>
|
|
@@ -21786,7 +21786,7 @@ class ngVScrollBar extends HTMLElement
|
|
|
21786
21786
|
e.preventDefault();
|
|
21787
21787
|
|
|
21788
21788
|
if (this.#firstThumbMove) {
|
|
21789
|
-
ninegrid
|
|
21789
|
+
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");
|
|
21790
21790
|
this.#firstThumbMove = false;
|
|
21791
21791
|
}
|
|
21792
21792
|
|
|
@@ -21830,8 +21830,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
21830
21830
|
|
|
21831
21831
|
this.shadowRoot.innerHTML = `
|
|
21832
21832
|
<style>
|
|
21833
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
21834
|
-
${ninegrid
|
|
21833
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngHScrollBar.css";
|
|
21834
|
+
${ninegrid.getCustomPath(this,"ngHScrollBar.css")}
|
|
21835
21835
|
</style>
|
|
21836
21836
|
|
|
21837
21837
|
<button class='ng-scroll-left' disabled><div class='ng-scroll-icon'></div></button>
|
|
@@ -21879,8 +21879,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
21879
21879
|
thumb.css({left : l});
|
|
21880
21880
|
|
|
21881
21881
|
// enable
|
|
21882
|
-
ninegrid
|
|
21883
|
-
ninegrid
|
|
21882
|
+
ninegrid.j.querySelectorAll(".ng-scroll-left", this.shadowRoot).attr("disabled", l == 0 ? true : false);
|
|
21883
|
+
ninegrid.j.querySelectorAll(".ng-scroll-right", this.shadowRoot).attr("disabled", (l == track.width() - thumb.width()) ? true : false);
|
|
21884
21884
|
|
|
21885
21885
|
// edge show
|
|
21886
21886
|
var vbar = this.#owner.body.querySelector("ng-vscrollbar");
|
|
@@ -21944,8 +21944,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
21944
21944
|
|
|
21945
21945
|
thumb.css({left : l});
|
|
21946
21946
|
|
|
21947
|
-
ninegrid
|
|
21948
|
-
ninegrid
|
|
21947
|
+
ninegrid.j.querySelectorAll(".ng-scroll-left", this.shadowRoot).attr("disabled", l == 0 ? true : false);
|
|
21948
|
+
ninegrid.j.querySelectorAll(".ng-scroll-right", this.shadowRoot).attr("disabled", (l == track.width() - thumb.width()) ? true : false);
|
|
21949
21949
|
}
|
|
21950
21950
|
|
|
21951
21951
|
#init = () => {
|
|
@@ -22171,7 +22171,7 @@ class ngSorting
|
|
|
22171
22171
|
* 정렬상태 초기화
|
|
22172
22172
|
*/
|
|
22173
22173
|
#restore = () => {
|
|
22174
|
-
this.#owner.data.sort((a,b) => { return a.__ng._[ninegrid
|
|
22174
|
+
this.#owner.data.sort((a,b) => { return a.__ng._[ninegrid.ROW.ORIGIN_ORDER] - b.__ng._[ninegrid.ROW.ORIGIN_ORDER]; });
|
|
22175
22175
|
}
|
|
22176
22176
|
|
|
22177
22177
|
#onClick = (e) => {
|
|
@@ -22186,11 +22186,11 @@ class ngSorting
|
|
|
22186
22186
|
|
|
22187
22187
|
switch (e.detail) {
|
|
22188
22188
|
case 1:
|
|
22189
|
-
ninegrid
|
|
22189
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22190
22190
|
|
|
22191
22191
|
setTimeout(() => {
|
|
22192
22192
|
this.#sort(e);
|
|
22193
|
-
ninegrid
|
|
22193
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22194
22194
|
}); // should match OS multi-click speed
|
|
22195
22195
|
break;
|
|
22196
22196
|
case 2:
|
|
@@ -22227,36 +22227,36 @@ class ngSorting
|
|
|
22227
22227
|
if (!e.ctrlKey && !e.shiftKey) {
|
|
22228
22228
|
//remove all class
|
|
22229
22229
|
//$("thead th,thead td", this.#owner.body).not(`[data-col="${col}"]`).removeClass("asc").removeClass("desc");
|
|
22230
|
-
ninegrid
|
|
22230
|
+
ninegrid.j.querySelectorAll(`thead th:not([data-col="${col}"],thead td:not([data-col="${col}"])`, this.#owner.body).removeClass("asc").removeClass("desc");
|
|
22231
22231
|
|
|
22232
22232
|
this.#columns.splice(0, this.#columns.length);
|
|
22233
22233
|
}
|
|
22234
22234
|
|
|
22235
|
-
ninegrid
|
|
22235
|
+
ninegrid.removeIf(this.#columns, m => { return m.colnm == colnm; });
|
|
22236
22236
|
|
|
22237
|
-
if (!ninegrid
|
|
22238
|
-
ninegrid
|
|
22237
|
+
if (!ninegrid.j.querySelectorAll(td).hasClass("asc") && !ninegrid.j.querySelectorAll(td).hasClass("desc")) {
|
|
22238
|
+
ninegrid.j.querySelectorAll(td).removeClass("desc").addClass("asc");
|
|
22239
22239
|
|
|
22240
22240
|
this.#columns.push({"colnm": colnm, "asc": true, "expr-func": exprFunc, });
|
|
22241
22241
|
}
|
|
22242
|
-
else if (ninegrid
|
|
22243
|
-
ninegrid
|
|
22242
|
+
else if (ninegrid.j.querySelectorAll(td).hasClass("asc")) {
|
|
22243
|
+
ninegrid.j.querySelectorAll(td).removeClass("asc").addClass("desc");
|
|
22244
22244
|
this.#columns.push({"colnm": colnm, "asc": false, "expr-func": exprFunc, });
|
|
22245
22245
|
}
|
|
22246
22246
|
else {
|
|
22247
|
-
ninegrid
|
|
22247
|
+
ninegrid.j.querySelectorAll(td).removeClass("asc").removeClass("desc");
|
|
22248
22248
|
}
|
|
22249
22249
|
|
|
22250
22250
|
//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"));
|
|
22251
22251
|
|
|
22252
|
-
if (!ninegrid
|
|
22252
|
+
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")) {
|
|
22253
22253
|
this.#restore();
|
|
22254
22254
|
}
|
|
22255
22255
|
else {
|
|
22256
22256
|
this.#owner.data.sort((a,b) => { return this.#compareFn(a,b); });
|
|
22257
22257
|
}
|
|
22258
22258
|
|
|
22259
|
-
(this.#owner.paging.type == ninegrid
|
|
22259
|
+
(this.#owner.paging.type == ninegrid.PAGINGTYPE.CLIENT) ? this.#owner.paging.movePage(1) : this.#owner.view.redraw();
|
|
22260
22260
|
}
|
|
22261
22261
|
|
|
22262
22262
|
#compareFn = (a, b) => {
|
|
@@ -22268,10 +22268,10 @@ class ngSorting
|
|
|
22268
22268
|
const aa = this.#owner.data.conv(a);
|
|
22269
22269
|
const bb = this.#owner.data.conv(b);
|
|
22270
22270
|
|
|
22271
|
-
if (column["expr-func"](aa,aa.__ng._[ninegrid
|
|
22271
|
+
if (column["expr-func"](aa,aa.__ng._[ninegrid.ROW.INDEX]) > column["expr-func"](bb,bb.__ng._[ninegrid.ROW.INDEX])) {
|
|
22272
22272
|
return column.asc ? 1 : -1;
|
|
22273
22273
|
}
|
|
22274
|
-
else if (column["expr-func"](aa,aa.__ng._[ninegrid
|
|
22274
|
+
else if (column["expr-func"](aa,aa.__ng._[ninegrid.ROW.INDEX]) < column["expr-func"](bb,bb.__ng._[ninegrid.ROW.INDEX])) {
|
|
22275
22275
|
return column.asc ? -1 : 1;
|
|
22276
22276
|
}
|
|
22277
22277
|
}
|
|
@@ -22331,13 +22331,13 @@ class ngTableManager
|
|
|
22331
22331
|
const target = $(`.col-indicator[data-col=${col}]`, this.#owner.body);
|
|
22332
22332
|
|
|
22333
22333
|
if (target.closest(".ng-container-body").length > 0) {
|
|
22334
|
-
return ninegrid
|
|
22334
|
+
return ninegrid.BAND.BODY;
|
|
22335
22335
|
}
|
|
22336
22336
|
else if (target.closest(".ng-container-left").length > 0) {
|
|
22337
|
-
return ninegrid
|
|
22337
|
+
return ninegrid.BAND.LEFT;
|
|
22338
22338
|
}
|
|
22339
22339
|
else if (target.closest(".ng-container-right").length > 0) {
|
|
22340
|
-
return ninegrid
|
|
22340
|
+
return ninegrid.BAND.RIGHT;
|
|
22341
22341
|
}
|
|
22342
22342
|
};
|
|
22343
22343
|
|
|
@@ -22349,7 +22349,7 @@ class ngTableManager
|
|
|
22349
22349
|
|
|
22350
22350
|
this.#owner.body.querySelector(`colgroup [data-col="${col}"]:not(.cdummy)`).setAttribute("width", w);
|
|
22351
22351
|
|
|
22352
|
-
if (band != ninegrid
|
|
22352
|
+
if (band != ninegrid.BAND.BODY) {
|
|
22353
22353
|
var w = 0;
|
|
22354
22354
|
$(`.ng-container-${band} col`, this.#owner.body).each((i,el) => { w += parseInt(el.getAttribute("width")); });
|
|
22355
22355
|
$(`.ng-container-${band}`, this.#owner.body).css({ "width": w, "min-width" : w, });
|
|
@@ -22359,7 +22359,7 @@ class ngTableManager
|
|
|
22359
22359
|
};
|
|
22360
22360
|
|
|
22361
22361
|
this.getExprFunc = (col, colnm) => {
|
|
22362
|
-
const cell = ninegrid
|
|
22362
|
+
const cell = ninegrid.j.querySelectorAll(colnm ? `[data-col="${col}"][data-bind="${colnm}"]` : `[data-col="${col}"]`, this.#owner.tmpl).elem();
|
|
22363
22363
|
const expr = cell ? cell.getAttribute("data-expr") : null;
|
|
22364
22364
|
|
|
22365
22365
|
return (expr) ? this.#owner.exprFunction(expr) : null;
|
|
@@ -22372,14 +22372,14 @@ class ngTableManager
|
|
|
22372
22372
|
if (async == undefined) async = true;
|
|
22373
22373
|
|
|
22374
22374
|
if (async) {
|
|
22375
|
-
ninegrid
|
|
22375
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22376
22376
|
|
|
22377
22377
|
setTimeout(() => {
|
|
22378
22378
|
var w = this.#getColumnTextWidth(col);
|
|
22379
22379
|
//if (w != 0) this.setColumnWidth(col, minWidth ? Math.max(w, minWidth) : w);
|
|
22380
22380
|
this.setColumnWidth(col, minWidth ? Math.max(w, minWidth) : w);
|
|
22381
22381
|
|
|
22382
|
-
ninegrid
|
|
22382
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22383
22383
|
});
|
|
22384
22384
|
}
|
|
22385
22385
|
else {
|
|
@@ -22408,7 +22408,7 @@ class ngTableManager
|
|
|
22408
22408
|
const th = document.createElement('th');
|
|
22409
22409
|
th.setAttribute("scope", "col");
|
|
22410
22410
|
|
|
22411
|
-
ninegrid
|
|
22411
|
+
ninegrid.j.querySelectorAll(th).addClass("col-indicator");
|
|
22412
22412
|
|
|
22413
22413
|
$(th).html('<div></div>').insertBefore(toTH).css({ "width" : w, "min-width" : w, });
|
|
22414
22414
|
});
|
|
@@ -22603,7 +22603,7 @@ class ngTableManager
|
|
|
22603
22603
|
|
|
22604
22604
|
case "NG-RADIO":
|
|
22605
22605
|
o.value = rowData[colnm];
|
|
22606
|
-
if (o.value != null && o.value != "" && !ninegrid
|
|
22606
|
+
if (o.value != null && o.value != "" && !ninegrid.isNull(comp.dataSource)) {
|
|
22607
22607
|
o.code = comp.dataSource.map(m => { return m[comp.getAttribute("key") || "key"]; }).includes(o.value) ? 0 : -1;
|
|
22608
22608
|
}
|
|
22609
22609
|
break;
|
|
@@ -22646,7 +22646,7 @@ class ngTableManager
|
|
|
22646
22646
|
}
|
|
22647
22647
|
|
|
22648
22648
|
if (matrixRow == null) {
|
|
22649
|
-
ninegrid
|
|
22649
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22650
22650
|
|
|
22651
22651
|
setTimeout(() => {
|
|
22652
22652
|
for (var i = 0; i < this.#owner.data.count(); i++) {
|
|
@@ -22665,7 +22665,7 @@ class ngTableManager
|
|
|
22665
22665
|
|
|
22666
22666
|
this.#owner.view.redraw();
|
|
22667
22667
|
|
|
22668
|
-
ninegrid
|
|
22668
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22669
22669
|
});
|
|
22670
22670
|
}
|
|
22671
22671
|
else {
|
|
@@ -22696,7 +22696,7 @@ class ngTableManager
|
|
|
22696
22696
|
const v = String(rowData.v[COL_IDX]);
|
|
22697
22697
|
|
|
22698
22698
|
if (bind && v.includes("\n")) {
|
|
22699
|
-
h = Math.max(h, ninegrid
|
|
22699
|
+
h = Math.max(h, ninegrid.measureTextSize(v, fonts[i]).height);
|
|
22700
22700
|
}
|
|
22701
22701
|
});
|
|
22702
22702
|
|
|
@@ -22729,7 +22729,7 @@ class ngTableManager
|
|
|
22729
22729
|
if (!v) continue;
|
|
22730
22730
|
|
|
22731
22731
|
|
|
22732
|
-
w = Math.max(w, ninegrid
|
|
22732
|
+
w = Math.max(w, ninegrid.measureTextSize(v, font).width);// + (comp.length > 0 ? 40 : 0);
|
|
22733
22733
|
}
|
|
22734
22734
|
});
|
|
22735
22735
|
|
|
@@ -22783,7 +22783,7 @@ class ngTableWrapper
|
|
|
22783
22783
|
const th = document.createElement('th');
|
|
22784
22784
|
th.setAttribute("scope", "col");
|
|
22785
22785
|
|
|
22786
|
-
ninegrid
|
|
22786
|
+
ninegrid.j.querySelectorAll(th).addClass("col-indicator");
|
|
22787
22787
|
|
|
22788
22788
|
$(th).html('<div></div>').insertBefore(toTH).css({ "width" : w, "min-width" : w, });
|
|
22789
22789
|
});
|
|
@@ -23026,8 +23026,8 @@ class ngTextArea extends ngEditableEx
|
|
|
23026
23026
|
connectedCallback() {
|
|
23027
23027
|
this.shadowRoot.innerHTML = `
|
|
23028
23028
|
<style>
|
|
23029
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
23030
|
-
${ninegrid
|
|
23029
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngTextArea.css";
|
|
23030
|
+
${ninegrid.getCustomPath(this,"ngTextArea.css")}
|
|
23031
23031
|
</style>
|
|
23032
23032
|
|
|
23033
23033
|
<textarea ondragstart="return false"></textarea>
|
|
@@ -23164,8 +23164,8 @@ class ngTreeItem extends ngCellEx
|
|
|
23164
23164
|
|
|
23165
23165
|
this.shadowRoot.innerHTML = `
|
|
23166
23166
|
<style>
|
|
23167
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
23168
|
-
${ninegrid
|
|
23167
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngTreeItem.css";
|
|
23168
|
+
${ninegrid.getCustomPath(this,"ngTreeItem.css")}
|
|
23169
23169
|
</style>
|
|
23170
23170
|
|
|
23171
23171
|
<div class="ng-pad"></div>
|
|
@@ -23211,8 +23211,8 @@ class ngTreeItem extends ngCellEx
|
|
|
23211
23211
|
#onClick = e => {
|
|
23212
23212
|
|
|
23213
23213
|
this.#toggle();
|
|
23214
|
-
ninegrid
|
|
23215
|
-
ninegrid
|
|
23214
|
+
ninegrid.j.querySelectorAll(e.target).removeClass("ng-expand-on").removeClass("ng-expand-off");
|
|
23215
|
+
ninegrid.j.querySelectorAll(e.target).addClass(this.#isExpand ? "ng-expand-on" : "ng-expand-off");
|
|
23216
23216
|
};
|
|
23217
23217
|
|
|
23218
23218
|
get prevLevel() {
|
|
@@ -23227,7 +23227,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23227
23227
|
else {
|
|
23228
23228
|
for (var i = parseInt(this.cell.dataset.row) - 1; i >= 0; i--) {
|
|
23229
23229
|
var data = this.owner.data.get(i);
|
|
23230
|
-
if (!data.__ng._[ninegrid
|
|
23230
|
+
if (!data.__ng._[ninegrid.ROW.EXPAND]) return data[this.cell.dataset.bind];
|
|
23231
23231
|
}
|
|
23232
23232
|
}
|
|
23233
23233
|
|
|
@@ -23236,7 +23236,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23236
23236
|
|
|
23237
23237
|
|
|
23238
23238
|
get #isExpand() {
|
|
23239
|
-
return this.data.__ng._[ninegrid
|
|
23239
|
+
return this.data.__ng._[ninegrid.ROW.EXPAND];
|
|
23240
23240
|
};
|
|
23241
23241
|
|
|
23242
23242
|
#resetTree = () => {
|
|
@@ -23256,11 +23256,11 @@ class ngTreeItem extends ngCellEx
|
|
|
23256
23256
|
|
|
23257
23257
|
|
|
23258
23258
|
|
|
23259
|
-
ninegrid
|
|
23259
|
+
ninegrid.j.querySelectorAll(".ng-icon", this.shadowRoot)
|
|
23260
23260
|
.removeClass("ng-expand-on").removeClass("ng-expand-off").removeClass("ng-node").removeClass("ng-icon-up").removeClass("ng-icon-down").removeClass("ng-icon-none")
|
|
23261
23261
|
.addClass(hasChildren ? (this.#isExpand ? "ng-expand-on" : "ng-expand-off") : "ng-node");
|
|
23262
23262
|
|
|
23263
|
-
const icon = ninegrid
|
|
23263
|
+
const icon = ninegrid.j.querySelectorAll(".ng-icon", this.shadowRoot);
|
|
23264
23264
|
if (row == 0) {
|
|
23265
23265
|
if (isLast) {
|
|
23266
23266
|
icon.addClass("ng-icon-none");
|
|
@@ -23290,12 +23290,12 @@ class ngTreeItem extends ngCellEx
|
|
|
23290
23290
|
|
|
23291
23291
|
if (level < nextLevel) {
|
|
23292
23292
|
if (this.#isExpand) {
|
|
23293
|
-
ninegrid
|
|
23293
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-down");
|
|
23294
23294
|
} else {
|
|
23295
|
-
ninegrid
|
|
23295
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-none");
|
|
23296
23296
|
}
|
|
23297
23297
|
} else {
|
|
23298
|
-
ninegrid
|
|
23298
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-none");
|
|
23299
23299
|
}
|
|
23300
23300
|
|
|
23301
23301
|
};
|
|
@@ -23305,7 +23305,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23305
23305
|
};
|
|
23306
23306
|
#expand = (b) => {
|
|
23307
23307
|
|
|
23308
|
-
this.data.__ng._[ninegrid
|
|
23308
|
+
this.data.__ng._[ninegrid.ROW.EXPAND] = b;
|
|
23309
23309
|
|
|
23310
23310
|
this.#setChildVisible(b);
|
|
23311
23311
|
|
|
@@ -23317,20 +23317,20 @@ class ngTreeItem extends ngCellEx
|
|
|
23317
23317
|
|
|
23318
23318
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23319
23319
|
|
|
23320
|
-
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid
|
|
23320
|
+
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23321
23321
|
if (idx < 0) return;
|
|
23322
23322
|
|
|
23323
23323
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
23324
23324
|
var lvl = this.value;
|
|
23325
23325
|
|
|
23326
23326
|
var prev = this.owner.data.getRow(this.row);
|
|
23327
|
-
var parentExpand = prev.__ng._[ninegrid
|
|
23327
|
+
var parentExpand = prev.__ng._[ninegrid.ROW.EXPAND];
|
|
23328
23328
|
for (var i = idx + 1; i < arrNF.length; i++) {
|
|
23329
23329
|
var lvl2 = arrNF[i].v[COL_IDX];
|
|
23330
23330
|
|
|
23331
23331
|
|
|
23332
23332
|
if (lvl2 > prev.v[COL_IDX]) {
|
|
23333
|
-
parentExpand = prev.__ng._[ninegrid
|
|
23333
|
+
parentExpand = prev.__ng._[ninegrid.ROW.EXPAND];
|
|
23334
23334
|
}
|
|
23335
23335
|
else if (lvl2 < prev.v[COL_IDX]) {
|
|
23336
23336
|
parentExpand = null;
|
|
@@ -23339,21 +23339,21 @@ class ngTreeItem extends ngCellEx
|
|
|
23339
23339
|
if (lvl2 <= lvl) break;
|
|
23340
23340
|
|
|
23341
23341
|
if (parentExpand == null) {
|
|
23342
|
-
arrNF[i].__ng._[ninegrid
|
|
23342
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = !b;
|
|
23343
23343
|
}
|
|
23344
23344
|
else {
|
|
23345
23345
|
|
|
23346
23346
|
if (parentExpand && b) {
|
|
23347
|
-
arrNF[i].__ng._[ninegrid
|
|
23347
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = false;//!b;
|
|
23348
23348
|
}
|
|
23349
23349
|
else if (parentExpand && !b) {
|
|
23350
|
-
arrNF[i].__ng._[ninegrid
|
|
23350
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23351
23351
|
}
|
|
23352
23352
|
else if (!parentExpand && b) {
|
|
23353
|
-
arrNF[i].__ng._[ninegrid
|
|
23353
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23354
23354
|
}
|
|
23355
23355
|
else if (!parentExpand && !b) {
|
|
23356
|
-
arrNF[i].__ng._[ninegrid
|
|
23356
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23357
23357
|
}
|
|
23358
23358
|
}
|
|
23359
23359
|
|
|
@@ -23365,7 +23365,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23365
23365
|
|
|
23366
23366
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23367
23367
|
|
|
23368
|
-
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid
|
|
23368
|
+
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23369
23369
|
if (idx < 0) return;
|
|
23370
23370
|
|
|
23371
23371
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
@@ -23376,7 +23376,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23376
23376
|
|
|
23377
23377
|
if (lvl2 <= lvl) break;
|
|
23378
23378
|
|
|
23379
|
-
arrNF[i].__ng._[ninegrid
|
|
23379
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = !b;
|
|
23380
23380
|
}
|
|
23381
23381
|
};
|
|
23382
23382
|
|
|
@@ -23399,7 +23399,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23399
23399
|
|
|
23400
23400
|
#isLast = (row) => {
|
|
23401
23401
|
|
|
23402
|
-
if (ninegrid
|
|
23402
|
+
if (ninegrid.isNull(row) || row < 0) throw `invalid row [${row}]`;
|
|
23403
23403
|
|
|
23404
23404
|
if (row + 1 >= this.owner.data.count()) return true;
|
|
23405
23405
|
|
|
@@ -23427,9 +23427,9 @@ class ngTreeItem extends ngCellEx
|
|
|
23427
23427
|
var arr = [];
|
|
23428
23428
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23429
23429
|
|
|
23430
|
-
var idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid
|
|
23430
|
+
var idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23431
23431
|
|
|
23432
|
-
if (idx < 0) throw `invalid row index [${this.data.__ng._[ninegrid
|
|
23432
|
+
if (idx < 0) throw `invalid row index [${this.data.__ng._[ninegrid.ROW.INDEX]}]`;
|
|
23433
23433
|
|
|
23434
23434
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
23435
23435
|
const lvl = arrNF[idx].v[COL_IDX];
|
|
@@ -23452,7 +23452,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23452
23452
|
|
|
23453
23453
|
#getLevel = (row) => {
|
|
23454
23454
|
|
|
23455
|
-
if (ninegrid
|
|
23455
|
+
if (ninegrid.isNull(row) || row < 0 || this.owner.data.count() >= 0) return -1;//throw `invalid row [${row}]`;
|
|
23456
23456
|
|
|
23457
23457
|
return this.owner.data.get(row, this.cell.dataset.bind);
|
|
23458
23458
|
};
|
|
@@ -23571,8 +23571,8 @@ class ngView
|
|
|
23571
23571
|
|
|
23572
23572
|
const displayRowCount = parseInt(this.#owner.getAttribute("display-row-count"));
|
|
23573
23573
|
|
|
23574
|
-
if (this.#owner.closest("dialog") && ninegrid
|
|
23575
|
-
if ([ninegrid
|
|
23574
|
+
if (this.#owner.closest("dialog") && ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) return 1;
|
|
23575
|
+
if ([ninegrid.PAGINGTYPE.CLIENT,ninegrid.PAGINGTYPE.SERVER].includes(this.#owner.paging.type)) return this.#owner.paging.linesPerPage;
|
|
23576
23576
|
if (!isNaN(displayRowCount)) {
|
|
23577
23577
|
|
|
23578
23578
|
/**
|
|
@@ -23712,7 +23712,7 @@ class ngView
|
|
|
23712
23712
|
//this.isLastPage = h > 0 ? true : false;
|
|
23713
23713
|
|
|
23714
23714
|
|
|
23715
|
-
if (this.#owner.closest("dialog") && ninegrid
|
|
23715
|
+
if (this.#owner.closest("dialog") && ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) {
|
|
23716
23716
|
$("tr.nodata", this.#owner.body).height(0);
|
|
23717
23717
|
|
|
23718
23718
|
var h = 47;//this.#getTrHeight();
|
|
@@ -23816,9 +23816,9 @@ class ngView
|
|
|
23816
23816
|
|
|
23817
23817
|
this.#owner.body.querySelector("ng-vscrollbar").refresh();
|
|
23818
23818
|
|
|
23819
|
-
ninegrid
|
|
23820
|
-
ninegrid
|
|
23821
|
-
ninegrid
|
|
23819
|
+
ninegrid.j.querySelectorAll(".ng-table tbody tr", this.#owner.body).removeClass("hover");
|
|
23820
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
23821
|
+
ninegrid.j.querySelectorAll("ng-filter-panel").removeClass("loading");
|
|
23822
23822
|
|
|
23823
23823
|
/**
|
|
23824
23824
|
this.#owner.body.querySelector(".ng-container-left").style.position = "sticky";
|
|
@@ -23990,7 +23990,7 @@ class ngView
|
|
|
23990
23990
|
selectRow = (oRow1, oRow2) => {
|
|
23991
23991
|
|
|
23992
23992
|
const row1 = this.#getRowIndex(oRow1);
|
|
23993
|
-
const row2 = ninegrid
|
|
23993
|
+
const row2 = ninegrid.isNull(oRow2) ? row1 : this.#getRowIndex(oRow2);
|
|
23994
23994
|
const matrixRow1= parseInt(row1 * this.#owner.template.length);
|
|
23995
23995
|
const matrixRow2= parseInt(row2 * this.#owner.template.length) + this.#owner.template.length - 1;
|
|
23996
23996
|
|
|
@@ -24001,7 +24001,7 @@ class ngView
|
|
|
24001
24001
|
|
|
24002
24002
|
selectCol = (oCol1, oCol2) => {
|
|
24003
24003
|
const col1 = this.#getColIndex(oCol1);
|
|
24004
|
-
const col2 = ninegrid
|
|
24004
|
+
const col2 = ninegrid.isNull(oCol2) ? col1 : this.#getColIndex(oCol2);
|
|
24005
24005
|
const matrixRow1= 0;
|
|
24006
24006
|
const matrixRow2= parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
24007
24007
|
|
|
@@ -24012,7 +24012,7 @@ class ngView
|
|
|
24012
24012
|
|
|
24013
24013
|
const row = this.#getRowIndex(oRow);
|
|
24014
24014
|
const col = this.#getColIndex(oCol);
|
|
24015
|
-
const matrixRow = parseInt(row * this.#owner.template.length) + ninegrid
|
|
24015
|
+
const matrixRow = parseInt(row * this.#owner.template.length) + ninegrid.nvl(subrow, 0);
|
|
24016
24016
|
|
|
24017
24017
|
this.#owner.row.at = row;
|
|
24018
24018
|
|
|
@@ -24072,7 +24072,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24072
24072
|
this.attachShadow({ mode: 'open' });
|
|
24073
24073
|
|
|
24074
24074
|
|
|
24075
|
-
ninegrid
|
|
24075
|
+
ninegrid.extendElementPrototype();
|
|
24076
24076
|
|
|
24077
24077
|
this.#layouts = [];
|
|
24078
24078
|
|
|
@@ -24108,7 +24108,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24108
24108
|
this.bindRows = [];
|
|
24109
24109
|
this.bindMatrixRows = [];
|
|
24110
24110
|
|
|
24111
|
-
ninegrid
|
|
24111
|
+
ninegrid.j.querySelectorAll(".ng-container tbody.bindable tr:not(.nodata)", this.body).elements.forEach(tr => {
|
|
24112
24112
|
this.bindRows .push(parseInt(tr.dataset.row));
|
|
24113
24113
|
this.bindMatrixRows .push(parseInt(tr.dataset.matrixRow));
|
|
24114
24114
|
});
|
|
@@ -24205,8 +24205,8 @@ class ninegridContainer extends HTMLElement
|
|
|
24205
24205
|
break;
|
|
24206
24206
|
|
|
24207
24207
|
case "col-indicator-type":
|
|
24208
|
-
ninegrid
|
|
24209
|
-
.removeClass(ninegrid
|
|
24208
|
+
ninegrid.j.querySelectorAll(".ng-table thead .col-indicator-rowgroup", this.body)
|
|
24209
|
+
.removeClass(ninegrid.COLINDICATORTYPE.EXPAND).removeClass(ninegrid.COLINDICATORTYPE.COLLAPSE)
|
|
24210
24210
|
.addClass(newValue);
|
|
24211
24211
|
this.#resetHeight();
|
|
24212
24212
|
break;
|
|
@@ -24216,7 +24216,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24216
24216
|
this.#resetHeight();
|
|
24217
24217
|
break;
|
|
24218
24218
|
case "enable-fixed-col":
|
|
24219
|
-
(newValue == "true") ? ninegrid
|
|
24219
|
+
(newValue == "true") ? ninegrid.j.querySelectorAll(this).addClass(name) : ninegrid.j.querySelectorAll(this).removeClass(name);
|
|
24220
24220
|
break;
|
|
24221
24221
|
|
|
24222
24222
|
case "select-type":
|
|
@@ -24231,20 +24231,20 @@ class ninegridContainer extends HTMLElement
|
|
|
24231
24231
|
|
|
24232
24232
|
case "show-menu-icon":
|
|
24233
24233
|
case "show-title-bar":
|
|
24234
|
-
const showBar = ninegrid
|
|
24235
|
-
const showIcon = ninegrid
|
|
24234
|
+
const showBar = ninegrid.j.querySelectorAll(this).attr("show-title-bar") == "true";
|
|
24235
|
+
const showIcon = ninegrid.j.querySelectorAll(this).attr("show-menu-icon") == "true";
|
|
24236
24236
|
const ngHead = this.shadowRoot.querySelector("ng-head");
|
|
24237
24237
|
if (!ngHead) break;
|
|
24238
24238
|
const ngMenu = ngHead.shadowRoot.querySelector("ng-menu");
|
|
24239
24239
|
|
|
24240
24240
|
if (showBar) {
|
|
24241
|
-
ninegrid
|
|
24241
|
+
ninegrid.j.querySelectorAll(ngHead).addClass('expand');
|
|
24242
24242
|
$(ngHead.shadowRoot).children().not("style").show();
|
|
24243
24243
|
|
|
24244
|
-
if (!showIcon) ninegrid
|
|
24244
|
+
if (!showIcon) ninegrid.j.querySelectorAll(ngMenu).hide();
|
|
24245
24245
|
}
|
|
24246
24246
|
else {
|
|
24247
|
-
(showIcon) ? ninegrid
|
|
24247
|
+
(showIcon) ? ninegrid.j.querySelectorAll(ngHead).removeClass('expand').show() : ninegrid.j.querySelectorAll(ngHead).hide();
|
|
24248
24248
|
}
|
|
24249
24249
|
|
|
24250
24250
|
this.#resetHeight();
|
|
@@ -24255,7 +24255,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24255
24255
|
this.#resetHeight();
|
|
24256
24256
|
break;
|
|
24257
24257
|
case "show-status-bar":
|
|
24258
|
-
(newValue == "true") ? ninegrid
|
|
24258
|
+
(newValue == "true") ? ninegrid.j.querySelectorAll("ng-foot", this.shadowRoot).addClass('expand') : ninegrid.j.querySelectorAll("ng-foot", this.shadowRoot).removeClass('expand');
|
|
24259
24259
|
this.#resetHeight();
|
|
24260
24260
|
break;
|
|
24261
24261
|
}
|
|
@@ -24281,7 +24281,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24281
24281
|
|
|
24282
24282
|
var arr = [];
|
|
24283
24283
|
$(".ng-container-body tbody.fixed tr", this.body).not(".nodata").each((i, tr) => {
|
|
24284
|
-
arr.push({ INDEX: tr.data.__ng._[ninegrid
|
|
24284
|
+
arr.push({ INDEX: tr.data.__ng._[ninegrid.ROW.INDEX], ROW: tr.dataset.row } );
|
|
24285
24285
|
});
|
|
24286
24286
|
|
|
24287
24287
|
arr.forEach(o => {
|
|
@@ -24414,7 +24414,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24414
24414
|
this.elements.bodyLeft.html(table.clone());
|
|
24415
24415
|
$("col,th,td", this.elements.bodyLeft).not("[fixed=left]").remove();
|
|
24416
24416
|
var w = 0;//this.elements.bodyLeft.find("th,td").length == 0 ? 0 : this.elements.bodyLeft.find("table > tbody.bindable").width();
|
|
24417
|
-
$("col", this.elements.bodyLeft).each((i,el) => { w += parseInt(ninegrid
|
|
24417
|
+
$("col", this.elements.bodyLeft).each((i,el) => { w += parseInt(ninegrid.j.querySelectorAll(el).attr("width")); });
|
|
24418
24418
|
this.elements.bodyLeft.css({
|
|
24419
24419
|
"width" : w,//this.elements.bodyLeft.find("table > tbody.bindable").width(),
|
|
24420
24420
|
"min-width" : w,//this.elements.bodyLeft.find("table > tbody.bindable").width(),
|
|
@@ -24423,7 +24423,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24423
24423
|
this.elements.bodyRight.html(table.clone());
|
|
24424
24424
|
$("col,th,td", this.elements.bodyRight).not("[fixed=right]").remove();
|
|
24425
24425
|
w = 0;//this.elements.bodyLeft.find("th,td").length == 0 ? 0 : this.elements.bodyLeft.find("table > tbody.bindable").width();
|
|
24426
|
-
$("col", this.elements.bodyRight).each((i,el) => { w += parseInt(ninegrid
|
|
24426
|
+
$("col", this.elements.bodyRight).each((i,el) => { w += parseInt(ninegrid.j.querySelectorAll(el).attr("width")); });
|
|
24427
24427
|
|
|
24428
24428
|
this.elements.bodyRight.css({
|
|
24429
24429
|
"width" : w,//this.elements.bodyRight.find("table > tbody").width(),
|
|
@@ -24504,7 +24504,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24504
24504
|
|
|
24505
24505
|
this.originFormat = this.outerHTML;
|
|
24506
24506
|
|
|
24507
|
-
this.uuid = ninegrid
|
|
24507
|
+
this.uuid = ninegrid.randomUUID(); //crypto.randomUUID();
|
|
24508
24508
|
if (!this.id) this.id = this.uuid;
|
|
24509
24509
|
|
|
24510
24510
|
|
|
@@ -24585,15 +24585,15 @@ class ninegridContainer extends HTMLElement
|
|
|
24585
24585
|
|
|
24586
24586
|
this.#layouts.push(tbl);
|
|
24587
24587
|
|
|
24588
|
-
if (!ninegrid
|
|
24588
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) {
|
|
24589
24589
|
this.#createDummy(tbl);
|
|
24590
24590
|
}
|
|
24591
24591
|
});
|
|
24592
24592
|
|
|
24593
24593
|
const tmpl = `
|
|
24594
24594
|
<style>
|
|
24595
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
24596
|
-
${ninegrid
|
|
24595
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
24596
|
+
${ninegrid.getCustomPath(this,"ninegrid.css")}
|
|
24597
24597
|
</style>
|
|
24598
24598
|
|
|
24599
24599
|
<ng-head></ng-head>
|
|
@@ -24626,12 +24626,12 @@ class ninegridContainer extends HTMLElement
|
|
|
24626
24626
|
const value = combo.getAttribute("codename") || "codename";
|
|
24627
24627
|
const multiSeparator = combo.getAttribute("multi-separator") || ",";
|
|
24628
24628
|
|
|
24629
|
-
return ninegrid
|
|
24629
|
+
return ninegrid.binarySearchValue(combo.dataSource, code, data[cell.dataset.bind], value, multiSeparator)
|
|
24630
24630
|
};
|
|
24631
24631
|
//$("tbody", this.#layouts[0]).before($("tbody", this.#layouts[0]).clone().addClass("fixed")).addClass("bindable");
|
|
24632
24632
|
|
|
24633
24633
|
for (const layout of this.#layouts) {
|
|
24634
|
-
$(ninegrid
|
|
24634
|
+
$(ninegrid.j.querySelectorAll("tbody", layout).addClass("bindable").elem()).before(`<tbody class="fixed"></tbody>`);
|
|
24635
24635
|
}
|
|
24636
24636
|
|
|
24637
24637
|
$(this.shadowRoot).append(tmpl);
|
|
@@ -24708,10 +24708,10 @@ class ninegridContainer extends HTMLElement
|
|
|
24708
24708
|
}
|
|
24709
24709
|
}
|
|
24710
24710
|
|
|
24711
|
-
if (!ninegrid
|
|
24711
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) {
|
|
24712
24712
|
this.filtering = new ngFiltering(this);
|
|
24713
24713
|
}
|
|
24714
|
-
if (!ninegrid
|
|
24714
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("combo") && !ninegrid.j.querySelectorAll(this).hasClass("filter")) {
|
|
24715
24715
|
$(this.shadowRoot).append($('<ng-combo-panel></ng-combo-panel').hide());
|
|
24716
24716
|
}
|
|
24717
24717
|
|
|
@@ -24721,7 +24721,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24721
24721
|
|
|
24722
24722
|
this.#colResizer = new ngColResizer(this);
|
|
24723
24723
|
this.#colMover = new ngColMover(this);
|
|
24724
|
-
if (!ninegrid
|
|
24724
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) this.#rowMover = new ngRowMover(this);
|
|
24725
24725
|
|
|
24726
24726
|
|
|
24727
24727
|
this.#initOption();
|
|
@@ -24750,7 +24750,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24750
24750
|
|
|
24751
24751
|
|
|
24752
24752
|
/** main, detail */
|
|
24753
|
-
if (!ninegrid
|
|
24753
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("filter") && !ninegrid.j.querySelectorAll(this).hasClass("combo")) {
|
|
24754
24754
|
|
|
24755
24755
|
/**
|
|
24756
24756
|
$(this).on("mousedown", e => {
|
|
@@ -24788,7 +24788,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24788
24788
|
} */
|
|
24789
24789
|
if (!this.classList.contains("simple")) {
|
|
24790
24790
|
setTimeout(() => {
|
|
24791
|
-
this.dispatchEvent(new CustomEvent(ninegrid
|
|
24791
|
+
this.dispatchEvent(new CustomEvent(ninegrid.EVENT.LOAD, { bubbles: true, detail: {} }));
|
|
24792
24792
|
}, 100);
|
|
24793
24793
|
}
|
|
24794
24794
|
|
|
@@ -24796,7 +24796,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24796
24796
|
if (head) {
|
|
24797
24797
|
head.shadowRoot.querySelectorAll("buttons button").forEach(el => {
|
|
24798
24798
|
el.addEventListener("click", e => {
|
|
24799
|
-
const ce = new CustomEvent(ninegrid
|
|
24799
|
+
const ce = new CustomEvent(ninegrid.EVENT.BUTTON_CLICK, { bubbles: true, detail: { target: el, } });
|
|
24800
24800
|
//ce.target = e.target;
|
|
24801
24801
|
this.dispatchEvent(ce);
|
|
24802
24802
|
});
|
|
@@ -24825,29 +24825,29 @@ class ninegridContainer extends HTMLElement
|
|
|
24825
24825
|
|
|
24826
24826
|
#initOption = () => {
|
|
24827
24827
|
|
|
24828
|
-
this.lastRowHidden = isNaN(parseInt(ninegrid
|
|
24828
|
+
this.lastRowHidden = isNaN(parseInt(ninegrid.j.querySelectorAll(this).attr("display-row-count")));
|
|
24829
24829
|
|
|
24830
24830
|
if (!this.paging) this.paging = {}; //row detail 팝청창 오픈시 오류
|
|
24831
24831
|
|
|
24832
|
-
ninegrid
|
|
24832
|
+
ninegrid.j.querySelectorAll(this).attr("col-indicator-type", ninegrid.j.querySelectorAll(this).attr("col-indicator-type") || ninegrid.COLINDICATORTYPE.COLLAPSE);
|
|
24833
24833
|
|
|
24834
|
-
ninegrid
|
|
24835
|
-
ninegrid
|
|
24836
|
-
ninegrid
|
|
24837
|
-
ninegrid
|
|
24834
|
+
ninegrid.j.querySelectorAll(this).attr("auto-fit-col", ninegrid.j.querySelectorAll(this).attr("auto-fit-col") || "false");
|
|
24835
|
+
ninegrid.j.querySelectorAll(this).attr("col-resizable", ninegrid.j.querySelectorAll(this).attr("col-resizable") || "true");
|
|
24836
|
+
ninegrid.j.querySelectorAll(this).attr("row-resizable", ninegrid.j.querySelectorAll(this).attr("row-resizable") || "false");
|
|
24837
|
+
ninegrid.j.querySelectorAll(this).attr("col-movable", ninegrid.j.querySelectorAll(this).attr("col-movable") || "false"); //web attribute
|
|
24838
24838
|
//ninegrid.j.querySelectorAll(this).attr("row-movable", ninegrid.j.querySelectorAll(this).attr("row-movable") || "false");
|
|
24839
|
-
ninegrid
|
|
24839
|
+
ninegrid.j.querySelectorAll(this).attr("enable-fixed-col", ninegrid.j.querySelectorAll(this).attr("enable-fixed-col") || "false");
|
|
24840
24840
|
|
|
24841
|
-
ninegrid
|
|
24842
|
-
ninegrid
|
|
24843
|
-
ninegrid
|
|
24841
|
+
ninegrid.j.querySelectorAll(this).attr("show-title-bar", ninegrid.j.querySelectorAll(this).attr("show-title-bar") || "false");
|
|
24842
|
+
ninegrid.j.querySelectorAll(this).attr("show-menu-icon", ninegrid.j.querySelectorAll(this).attr("show-menu-icon") || "false");
|
|
24843
|
+
ninegrid.j.querySelectorAll(this).attr("show-status-bar", ninegrid.j.querySelectorAll(this).attr("show-status-bar") || "false");
|
|
24844
24844
|
|
|
24845
|
-
ninegrid
|
|
24846
|
-
ninegrid
|
|
24845
|
+
ninegrid.j.querySelectorAll(this).attr("show-thead", ninegrid.j.querySelectorAll(this).attr("show-thead") || "true");
|
|
24846
|
+
ninegrid.j.querySelectorAll(this).attr("show-tfoot", ninegrid.j.querySelectorAll(this).attr("show-tfoot") || "true");
|
|
24847
24847
|
|
|
24848
|
-
ninegrid
|
|
24849
|
-
ninegrid
|
|
24850
|
-
ninegrid
|
|
24848
|
+
ninegrid.j.querySelectorAll(this).attr("select-type", ninegrid.j.querySelectorAll(this).attr("select-type") || ninegrid.SELECTTYPE.CELL);
|
|
24849
|
+
ninegrid.j.querySelectorAll(this).attr("paging-type", ninegrid.j.querySelectorAll(this).attr("paging-type") || ninegrid.PAGINGTYPE.NONE);
|
|
24850
|
+
ninegrid.j.querySelectorAll(this).attr("paging-count", ninegrid.j.querySelectorAll(this).attr("paging-count") || ninegrid.PAGINGCOUNT.AUTO);
|
|
24851
24851
|
};
|
|
24852
24852
|
|
|
24853
24853
|
#createObserver = () => {
|
|
@@ -24885,14 +24885,14 @@ class ninegridContainer extends HTMLElement
|
|
|
24885
24885
|
let prevWidth = [];
|
|
24886
24886
|
var totalWidth = 0;
|
|
24887
24887
|
|
|
24888
|
-
$(".ng-container-body col", this.body).each((i,el) => { prevWidth.push({ col: el, width: Number(ninegrid
|
|
24888
|
+
$(".ng-container-body col", this.body).each((i,el) => { prevWidth.push({ col: el, width: Number(ninegrid.j.querySelectorAll(el).attr("width")), }); });
|
|
24889
24889
|
prevWidth.forEach(o => { totalWidth += o.width; });
|
|
24890
24890
|
|
|
24891
24891
|
//$('.ng-container-body > table', this.body).css({ "width": "100%", "min-width": "100%", });
|
|
24892
24892
|
const tableWidth = $('.ng-container-body', this.body).width();
|
|
24893
24893
|
|
|
24894
24894
|
if (tableWidth != 0) {
|
|
24895
|
-
prevWidth.forEach(o => { var w = o.width * tableWidth / totalWidth; ninegrid
|
|
24895
|
+
prevWidth.forEach(o => { var w = o.width * tableWidth / totalWidth; ninegrid.j.querySelectorAll(o.col).attr("width", w); });
|
|
24896
24896
|
}
|
|
24897
24897
|
}
|
|
24898
24898
|
|
|
@@ -24929,7 +24929,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24929
24929
|
var cols = [];
|
|
24930
24930
|
$(".col-indicator", this.body).each((i,td) => {
|
|
24931
24931
|
cols.push({from: parseInt(td.dataset.col), to: i});
|
|
24932
|
-
td.innerHTML = `<div>${ninegrid
|
|
24932
|
+
td.innerHTML = `<div>${ninegrid.num2ExcelCol(i)}</div>`;
|
|
24933
24933
|
});
|
|
24934
24934
|
|
|
24935
24935
|
|
|
@@ -24951,15 +24951,15 @@ class ninegridContainer extends HTMLElement
|
|
|
24951
24951
|
});
|
|
24952
24952
|
|
|
24953
24953
|
$(".last", layout.currentTable).each((i,td) => {
|
|
24954
|
-
ninegrid
|
|
24954
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
24955
24955
|
});
|
|
24956
24956
|
}
|
|
24957
24957
|
|
|
24958
24958
|
this.template.find(".last").each((i,td) => {
|
|
24959
|
-
ninegrid
|
|
24959
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
24960
24960
|
});
|
|
24961
24961
|
$(".last", this.body).each((i,td) => {
|
|
24962
|
-
ninegrid
|
|
24962
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
24963
24963
|
});
|
|
24964
24964
|
};
|
|
24965
24965
|
|
|
@@ -25025,21 +25025,21 @@ class ninegridContainer extends HTMLElement
|
|
|
25025
25025
|
|
|
25026
25026
|
if (thead.querySelector(".col-indicator-rowgroup")) return;
|
|
25027
25027
|
|
|
25028
|
-
const tr = ninegrid
|
|
25028
|
+
const tr = ninegrid.j.querySelectorAll(thead.insertRow(0)).attr("role", "row").addClass("col-indicator-rowgroup").elem();
|
|
25029
25029
|
var cnt = 0;
|
|
25030
25030
|
|
|
25031
25031
|
$(".ng-container-body > table > tbody.bindable > tr", this.body).eq(0).find("th,td").each((index, td) => {
|
|
25032
25032
|
|
|
25033
|
-
if (!ninegrid
|
|
25033
|
+
if (!ninegrid.j.querySelectorAll(td).hasClass("dummy")) {
|
|
25034
25034
|
for (var i = 0; i < td.colSpan; i++) {
|
|
25035
|
-
$(tr).append(tdTmpl.replace("@col", cnt).replace("@text", ninegrid
|
|
25035
|
+
$(tr).append(tdTmpl.replace("@col", cnt).replace("@text", ninegrid.num2ExcelCol(cnt++)));
|
|
25036
25036
|
}
|
|
25037
25037
|
}
|
|
25038
25038
|
});
|
|
25039
25039
|
|
|
25040
25040
|
var t = [];
|
|
25041
|
-
$("colgroup col", this.body).each((i,el) => { t.push({ width: parseInt(ninegrid
|
|
25042
|
-
$("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
|
|
25041
|
+
$("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")} ); });
|
|
25042
|
+
$("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); });
|
|
25043
25043
|
}
|
|
25044
25044
|
|
|
25045
25045
|
#prepare = () => {
|
|
@@ -25096,13 +25096,13 @@ class ninegridContainer extends HTMLElement
|
|
|
25096
25096
|
|
|
25097
25097
|
if (thead.length <= 0) $('<thead></thead>').appendTo(table);
|
|
25098
25098
|
|
|
25099
|
-
ninegrid
|
|
25099
|
+
ninegrid.j.querySelectorAll(table).attr("role", "table") .addClass("ng-table");
|
|
25100
25100
|
|
|
25101
|
-
ninegrid
|
|
25102
|
-
ninegrid
|
|
25103
|
-
ninegrid
|
|
25104
|
-
ninegrid
|
|
25105
|
-
ninegrid
|
|
25101
|
+
ninegrid.j.querySelectorAll("tbody th,tbody td", table) .attr("tabindex", 0);
|
|
25102
|
+
ninegrid.j.querySelectorAll("thead,tbody,tfoot", table) .attr("role", "rowgroup");
|
|
25103
|
+
ninegrid.j.querySelectorAll("tr", table) .attr("role", "row");
|
|
25104
|
+
ninegrid.j.querySelectorAll("tbody > tr", table) .attr("role", "gridcell");
|
|
25105
|
+
ninegrid.j.querySelectorAll("th,td", table) .attr("scope", "col");
|
|
25106
25106
|
|
|
25107
25107
|
this.#resetColIndex($(table), "thead");
|
|
25108
25108
|
this.#resetColIndex($(table), "tbody.bindable");
|
|
@@ -25112,7 +25112,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25112
25112
|
this.#createColIndicator();
|
|
25113
25113
|
|
|
25114
25114
|
table.querySelectorAll("col").forEach((el,i) => {
|
|
25115
|
-
ninegrid
|
|
25115
|
+
ninegrid.j.querySelectorAll(`[data-col="${i}"]`, table).attr("fixed", ninegrid.j.querySelectorAll(el).attr("fixed"));
|
|
25116
25116
|
});
|
|
25117
25117
|
}
|
|
25118
25118
|
|
|
@@ -25194,7 +25194,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25194
25194
|
selectRow = (nRow1, nRow2) => {
|
|
25195
25195
|
|
|
25196
25196
|
const row1 = this.#getRowIndex(nRow1);
|
|
25197
|
-
const row2 = ninegrid
|
|
25197
|
+
const row2 = ninegrid.isNull(oRow2) ? row1 : this.#getRowIndex(nRow2);
|
|
25198
25198
|
const matrixRow1= parseInt(row1 * this.template.length);
|
|
25199
25199
|
const matrixRow2= parseInt(row2 * this.template.length) + this.template.length - 1;
|
|
25200
25200
|
|
|
@@ -25214,7 +25214,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25214
25214
|
*/
|
|
25215
25215
|
selectCol = (oCol1, oCol2) => {
|
|
25216
25216
|
const col1 = this.#getColIndex(oCol1);
|
|
25217
|
-
const col2 = ninegrid
|
|
25217
|
+
const col2 = ninegrid.isNull(oCol2) ? col1 : this.#getColIndex(oCol2);
|
|
25218
25218
|
const matrixRow1= 0;
|
|
25219
25219
|
const matrixRow2= parseInt(this.data.count() * this.template.length - 1);
|
|
25220
25220
|
|
|
@@ -25234,7 +25234,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25234
25234
|
|
|
25235
25235
|
const row = this.#getRowIndex(nRow);
|
|
25236
25236
|
const col = this.#getColIndex(oCol);
|
|
25237
|
-
const matrixRow = parseInt(row * this.template.length) + ninegrid
|
|
25237
|
+
const matrixRow = parseInt(row * this.template.length) + ninegrid.nvl(nSubrow, 0);
|
|
25238
25238
|
|
|
25239
25239
|
this.row.at = row;
|
|
25240
25240
|
|
|
@@ -25327,8 +25327,8 @@ class nxConfirmPopup extends HTMLElement
|
|
|
25327
25327
|
|
|
25328
25328
|
title = title || 'Confirm';
|
|
25329
25329
|
|
|
25330
|
-
for (const prop in ninegrid
|
|
25331
|
-
options[prop] = options[prop] || ninegrid
|
|
25330
|
+
for (const prop in ninegrid.options.confirm) {
|
|
25331
|
+
options[prop] = options[prop] || ninegrid.options.confirm[prop];
|
|
25332
25332
|
}
|
|
25333
25333
|
|
|
25334
25334
|
$('nx-confirm-popup', document.body).remove();
|
|
@@ -25380,8 +25380,8 @@ class nxAlertPopup extends HTMLElement
|
|
|
25380
25380
|
|
|
25381
25381
|
title = title || 'Alert';
|
|
25382
25382
|
|
|
25383
|
-
for (const prop in ninegrid
|
|
25384
|
-
options[prop] = options[prop] || ninegrid
|
|
25383
|
+
for (const prop in ninegrid.options.alert) {
|
|
25384
|
+
options[prop] = options[prop] || ninegrid.options.alert[prop];
|
|
25385
25385
|
}
|
|
25386
25386
|
|
|
25387
25387
|
$('nx-alert-popup', document.body).remove();
|
|
@@ -25417,15 +25417,15 @@ class nxDialog extends HTMLElement
|
|
|
25417
25417
|
|
|
25418
25418
|
const v = this.innerHTML;
|
|
25419
25419
|
const cssFile = this.getAttribute("css-file");
|
|
25420
|
-
const customFile1 = cssFile ? `@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
25421
|
-
const customFile2 = cssFile ? ninegrid
|
|
25420
|
+
const customFile1 = cssFile ? `@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/${cssFile}";`: "";
|
|
25421
|
+
const customFile2 = cssFile ? ninegrid.getCustomPath(this, cssFile) : "";
|
|
25422
25422
|
|
|
25423
25423
|
//console.log(ninegrid.getCustomPath(this,"nxDialog.css"));
|
|
25424
25424
|
|
|
25425
25425
|
this.innerHTML = `
|
|
25426
25426
|
<style>
|
|
25427
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
25428
|
-
${ninegrid
|
|
25427
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxDialog.css";
|
|
25428
|
+
${ninegrid.getCustomPath(this,"nxDialog.css") || ""}
|
|
25429
25429
|
${customFile1 || ""}
|
|
25430
25430
|
${customFile2 || ""}
|
|
25431
25431
|
</style>
|
|
@@ -25484,7 +25484,7 @@ class nxDialog extends HTMLElement
|
|
|
25484
25484
|
|
|
25485
25485
|
#init = () => {
|
|
25486
25486
|
$(".close,.close2", this).on("click", e => {
|
|
25487
|
-
ninegrid
|
|
25487
|
+
ninegrid.j.querySelectorAll('dialog', this).addClass("out");
|
|
25488
25488
|
setTimeout(() => { this.close(); }, 300);
|
|
25489
25489
|
});
|
|
25490
25490
|
|
|
@@ -25580,8 +25580,8 @@ class nxDiv extends HTMLElement {
|
|
|
25580
25580
|
const htmlTmpl = document.createElement("template");
|
|
25581
25581
|
htmlTmpl.innerHTML = `
|
|
25582
25582
|
<style>
|
|
25583
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
25584
|
-
${ninegrid
|
|
25583
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxDiv.css";
|
|
25584
|
+
${ninegrid.getCustomPath(this,"nxDiv.css")}
|
|
25585
25585
|
|
|
25586
25586
|
:host {
|
|
25587
25587
|
}
|
|
@@ -25643,9 +25643,9 @@ class nxI18nExt extends HTMLElement
|
|
|
25643
25643
|
|
|
25644
25644
|
this.#target.innerHTML = i18next.t(this.#i18n);
|
|
25645
25645
|
}
|
|
25646
|
-
else if (this.#dataSource.length > 0 && !ninegrid
|
|
25646
|
+
else if (this.#dataSource.length > 0 && !ninegrid.isNull(this.#value)) {
|
|
25647
25647
|
|
|
25648
|
-
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid
|
|
25648
|
+
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid.global.locale);
|
|
25649
25649
|
if (index < 0) index = 0;
|
|
25650
25650
|
|
|
25651
25651
|
this.#target.innerHTML = this.#dataSource[index][this.#value];
|
|
@@ -25726,10 +25726,10 @@ class nxI18nExt extends HTMLElement
|
|
|
25726
25726
|
return result;
|
|
25727
25727
|
},
|
|
25728
25728
|
updateContent : () => {
|
|
25729
|
-
ninegrid
|
|
25729
|
+
ninegrid.querySelectorAll("nx-i18n,nx-span").forEach(v => {
|
|
25730
25730
|
if (v.refresh) v.refresh();
|
|
25731
25731
|
});
|
|
25732
|
-
ninegrid
|
|
25732
|
+
ninegrid.querySelectorAll("nine-grid").forEach(v => {
|
|
25733
25733
|
if (v.refresh) v.refreshData();
|
|
25734
25734
|
});
|
|
25735
25735
|
},
|
|
@@ -25761,11 +25761,11 @@ class nxI18nExt extends HTMLElement
|
|
|
25761
25761
|
|
|
25762
25762
|
if (xhr.status === 200) {
|
|
25763
25763
|
var text = xhr.responseText;
|
|
25764
|
-
i18next.addResourceBundle(locale, 'translation', ninegrid
|
|
25764
|
+
i18next.addResourceBundle(locale, 'translation', ninegrid.i18n.convertArrayToJSON(text.split("\n")));
|
|
25765
25765
|
|
|
25766
25766
|
// 마지막 파일인 경우 화면갱신
|
|
25767
25767
|
if (--count == 0) {
|
|
25768
|
-
i18next.changeLanguage(ninegrid
|
|
25768
|
+
i18next.changeLanguage(ninegrid.global.locale);
|
|
25769
25769
|
}
|
|
25770
25770
|
}
|
|
25771
25771
|
|
|
@@ -25814,8 +25814,8 @@ class nxSidebar extends HTMLElement
|
|
|
25814
25814
|
//this.shadowRoot.innerHTML = `
|
|
25815
25815
|
template.innerHTML = `
|
|
25816
25816
|
<style>
|
|
25817
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
25818
|
-
${ninegrid
|
|
25817
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebar.css";
|
|
25818
|
+
${ninegrid.getCustomPath(this,"nxSidebar.css")}
|
|
25819
25819
|
|
|
25820
25820
|
:host {
|
|
25821
25821
|
--min-width: ${this.#minWidth}px;
|
|
@@ -26159,8 +26159,8 @@ class nxSidebarItem extends HTMLElement {
|
|
|
26159
26159
|
|
|
26160
26160
|
this.shadowRoot.innerHTML = `
|
|
26161
26161
|
<style>
|
|
26162
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26163
|
-
${ninegrid
|
|
26162
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebarItem.css";
|
|
26163
|
+
${ninegrid.getCustomPath(this,"nxSidebarItem.css")}
|
|
26164
26164
|
</style>
|
|
26165
26165
|
|
|
26166
26166
|
<li>
|
|
@@ -26205,8 +26205,8 @@ class nxSidebarMenuitem extends HTMLElement {
|
|
|
26205
26205
|
|
|
26206
26206
|
this.shadowRoot.innerHTML = `
|
|
26207
26207
|
<style>
|
|
26208
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26209
|
-
${ninegrid
|
|
26208
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebarMenuitem.css";
|
|
26209
|
+
${ninegrid.getCustomPath(this,"nxSidebarMenuitem.css")}
|
|
26210
26210
|
</style>
|
|
26211
26211
|
|
|
26212
26212
|
<li>
|
|
@@ -26236,7 +26236,7 @@ class nxSideMenu extends HTMLElement
|
|
|
26236
26236
|
};
|
|
26237
26237
|
|
|
26238
26238
|
connectedCallback() {
|
|
26239
|
-
ninegrid
|
|
26239
|
+
ninegrid.waitForInnerHTML(this)
|
|
26240
26240
|
.then(() => this.#init())
|
|
26241
26241
|
.catch(error => console.error(error));
|
|
26242
26242
|
};
|
|
@@ -26297,8 +26297,8 @@ class nxSideMenu extends HTMLElement
|
|
|
26297
26297
|
|
|
26298
26298
|
this.shadowRoot.innerHTML = `
|
|
26299
26299
|
<style>
|
|
26300
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26301
|
-
${ninegrid
|
|
26300
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenu.css";
|
|
26301
|
+
${ninegrid.getCustomPath(this,"nxSideMenu.css")}
|
|
26302
26302
|
|
|
26303
26303
|
:host {
|
|
26304
26304
|
--min-width: ${this.#minWidth}px;
|
|
@@ -26384,7 +26384,7 @@ class nxSideMenuHead extends HTMLElement
|
|
|
26384
26384
|
}
|
|
26385
26385
|
|
|
26386
26386
|
connectedCallback() {
|
|
26387
|
-
ninegrid
|
|
26387
|
+
ninegrid.waitForInnerHTML(this)
|
|
26388
26388
|
.then(() => this.#init())
|
|
26389
26389
|
.catch(error => console.error(error));
|
|
26390
26390
|
}
|
|
@@ -26414,8 +26414,8 @@ class nxSideMenuHead extends HTMLElement
|
|
|
26414
26414
|
|
|
26415
26415
|
this.shadowRoot.innerHTML = `
|
|
26416
26416
|
<style>
|
|
26417
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26418
|
-
${ninegrid
|
|
26417
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuHead.css";
|
|
26418
|
+
${ninegrid.getCustomPath(this,"nxSideMenuHead.css")}
|
|
26419
26419
|
|
|
26420
26420
|
:host {
|
|
26421
26421
|
--icon-color: ${iconColor};
|
|
@@ -26451,7 +26451,7 @@ class nxSideMenuFoot extends HTMLElement
|
|
|
26451
26451
|
}
|
|
26452
26452
|
|
|
26453
26453
|
connectedCallback() {
|
|
26454
|
-
ninegrid
|
|
26454
|
+
ninegrid.waitForInnerHTML(this)
|
|
26455
26455
|
.then(() => this.#init())
|
|
26456
26456
|
.catch(error => console.error(error));
|
|
26457
26457
|
}
|
|
@@ -26480,8 +26480,8 @@ class nxSideMenuFoot extends HTMLElement
|
|
|
26480
26480
|
|
|
26481
26481
|
this.shadowRoot.innerHTML = `
|
|
26482
26482
|
<style>
|
|
26483
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26484
|
-
${ninegrid
|
|
26483
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuFoot.css";
|
|
26484
|
+
${ninegrid.getCustomPath(this,"nxSideMenuFoot.css")}
|
|
26485
26485
|
|
|
26486
26486
|
:host {
|
|
26487
26487
|
--icon-color: ${iconColor};
|
|
@@ -26518,7 +26518,7 @@ class nxSideMenuBody extends HTMLElement
|
|
|
26518
26518
|
}
|
|
26519
26519
|
|
|
26520
26520
|
connectedCallback() {
|
|
26521
|
-
ninegrid
|
|
26521
|
+
ninegrid.waitForInnerHTML(this)
|
|
26522
26522
|
.then(() => this.#init())
|
|
26523
26523
|
.catch(error => console.error(error));
|
|
26524
26524
|
}
|
|
@@ -26567,11 +26567,11 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26567
26567
|
super();
|
|
26568
26568
|
this.attachShadow({ mode: 'open' });
|
|
26569
26569
|
|
|
26570
|
-
this.uuid = ninegrid
|
|
26570
|
+
this.uuid = ninegrid.randomUUID();
|
|
26571
26571
|
}
|
|
26572
26572
|
|
|
26573
26573
|
connectedCallback() {
|
|
26574
|
-
ninegrid
|
|
26574
|
+
ninegrid.waitForInnerHTML(this)
|
|
26575
26575
|
.then(() => this.#init())
|
|
26576
26576
|
.catch(error => console.error(error));
|
|
26577
26577
|
}
|
|
@@ -26583,7 +26583,7 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26583
26583
|
this.render();
|
|
26584
26584
|
|
|
26585
26585
|
|
|
26586
|
-
this.#owner = ninegrid
|
|
26586
|
+
this.#owner = ninegrid.closest("nx-side-menu", this);
|
|
26587
26587
|
|
|
26588
26588
|
this.classList.toggle("expand");
|
|
26589
26589
|
this.classList.add("collapse");
|
|
@@ -26593,13 +26593,13 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26593
26593
|
|
|
26594
26594
|
this.addEventListener('click', (e) => {
|
|
26595
26595
|
|
|
26596
|
-
ninegrid
|
|
26596
|
+
ninegrid.querySelectorAll("nx-side-menu-item", this.#owner).forEach(v => {
|
|
26597
26597
|
v.classList.remove("active");
|
|
26598
26598
|
});
|
|
26599
26599
|
|
|
26600
26600
|
e.target.classList.add("active");
|
|
26601
26601
|
|
|
26602
|
-
ninegrid
|
|
26602
|
+
ninegrid.closest("nx-side-menu", this).dispatchEvent(new CustomEvent('side-menu-click', {
|
|
26603
26603
|
detail: { target: this, },
|
|
26604
26604
|
bubbles: true,
|
|
26605
26605
|
composed: true
|
|
@@ -26621,7 +26621,7 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26621
26621
|
//const target = neUtils.closest("nx-side-menu-item", this);
|
|
26622
26622
|
//console.log(this.uuid);
|
|
26623
26623
|
|
|
26624
|
-
const nodeList = ninegrid
|
|
26624
|
+
const nodeList = ninegrid.querySelectorAll("nx-side-menu-item", this.#owner);
|
|
26625
26625
|
const firstNodeIndex = Array.from(nodeList).findIndex(node => node.uuid === this.uuid);
|
|
26626
26626
|
const childNode = [];
|
|
26627
26627
|
|
|
@@ -26666,8 +26666,8 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26666
26666
|
|
|
26667
26667
|
this.shadowRoot.innerHTML = `
|
|
26668
26668
|
<style>
|
|
26669
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid
|
|
26670
|
-
${ninegrid
|
|
26669
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuItem.css";
|
|
26670
|
+
${ninegrid.getCustomPath(this,"nxSideMenuItem.css")}
|
|
26671
26671
|
</style>
|
|
26672
26672
|
|
|
26673
26673
|
<li>
|
|
@@ -26705,7 +26705,7 @@ class nxSpan extends HTMLElement
|
|
|
26705
26705
|
};
|
|
26706
26706
|
|
|
26707
26707
|
connectedCallback() {
|
|
26708
|
-
if (ninegrid
|
|
26708
|
+
if (ninegrid.getLocale() == "ko") {
|
|
26709
26709
|
console.warn("nx-span 컴포넌트는 더 이상 사용되지 않을 예정입니다. nx-i18n 컴포넌트로 대체하세요.");
|
|
26710
26710
|
}
|
|
26711
26711
|
else {
|
|
@@ -26714,9 +26714,9 @@ class nxSpan extends HTMLElement
|
|
|
26714
26714
|
};
|
|
26715
26715
|
|
|
26716
26716
|
refresh = () => {
|
|
26717
|
-
if (this.#dataSource.length < 0 || ninegrid
|
|
26717
|
+
if (this.#dataSource.length < 0 || ninegrid.isNull(this.#value)) return;
|
|
26718
26718
|
|
|
26719
|
-
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid
|
|
26719
|
+
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid.global.locale);
|
|
26720
26720
|
if (index < 0) index = 0;
|
|
26721
26721
|
|
|
26722
26722
|
|
|
@@ -27112,12 +27112,12 @@ class nxTopMenu extends HTMLElement
|
|
|
27112
27112
|
</nav>
|
|
27113
27113
|
`;
|
|
27114
27114
|
|
|
27115
|
-
this.changeLocale(ninegrid
|
|
27115
|
+
this.changeLocale(ninegrid.getLocale());
|
|
27116
27116
|
};
|
|
27117
27117
|
|
|
27118
27118
|
changeLocale = (locale) => {
|
|
27119
|
-
ninegrid
|
|
27120
|
-
this.shadowRoot.querySelector("#locale").innerHTML = ninegrid
|
|
27119
|
+
ninegrid.setLocale(locale);
|
|
27120
|
+
this.shadowRoot.querySelector("#locale").innerHTML = ninegrid.decode(locale, "ko", "한국어", "English");
|
|
27121
27121
|
};
|
|
27122
27122
|
}
|
|
27123
27123
|
|
|
@@ -27282,8 +27282,6 @@ class aiSettings extends HTMLElement
|
|
|
27282
27282
|
|
|
27283
27283
|
customElements.define("nx-ai-settings", aiSettings);
|
|
27284
27284
|
|
|
27285
|
-
//import ninegrid from "../index.js";
|
|
27286
|
-
|
|
27287
27285
|
class aiMyMessage extends HTMLElement
|
|
27288
27286
|
{
|
|
27289
27287
|
constructor() {
|
|
@@ -27364,4 +27362,4 @@ window.jQuery = window.$ = $$1;
|
|
|
27364
27362
|
|
|
27365
27363
|
//export default new ninegrid();
|
|
27366
27364
|
|
|
27367
|
-
module.exports = ninegrid
|
|
27365
|
+
module.exports = ninegrid;
|