ninegrid2 6.84.0 → 6.88.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle.cjs.js +573 -573
- package/dist/bundle.esm.js +573 -573
- package/dist/etc/___nxUtils.js +1 -1
- package/dist/etc/__ngUtils.js +1 -1
- package/dist/etc/_ngCell.js +1 -1
- package/dist/etc/ngButton.js +1 -1
- package/dist/etc/ngCellCopyPaste.js +1 -1
- package/dist/etc/ngCellManager.js +1 -1
- package/dist/etc/ngCellSelection.js +1 -1
- package/dist/etc/ngChart.js +1 -1
- package/dist/etc/ngCheckBox.js +1 -1
- package/dist/etc/ngColExpand.js +1 -1
- package/dist/etc/ngColMover.js +1 -1
- package/dist/etc/ngColResizer.js +1 -1
- package/dist/etc/ngColumns.js +1 -1
- package/dist/etc/ngCombo.js +1 -1
- package/dist/etc/ngContextMenu.js +1 -1
- package/dist/etc/ngCustomEvent.js +1 -1
- package/dist/etc/ngData.js +1 -1
- package/dist/etc/ngDataManager.js +1 -1
- package/dist/etc/ngExpandIcon.js +1 -1
- package/dist/etc/ngExport.js +1 -1
- package/dist/etc/ngFields.js +1 -1
- package/dist/etc/ngFiltering.js +1 -1
- package/dist/etc/ngFoot.js +1 -1
- package/dist/etc/ngHead.js +1 -1
- package/dist/etc/ngIcon.js +1 -1
- package/dist/etc/ngImage.js +1 -1
- package/dist/etc/ngImport.js +1 -1
- package/dist/etc/ngInfo.js +1 -1
- package/dist/etc/ngInputColor.js +1 -1
- package/dist/etc/ngInputDate.js +1 -1
- package/dist/etc/ngInputText.js +1 -1
- package/dist/etc/ngMatrixManager.js +1 -1
- package/dist/etc/ngMaximize.js +1 -1
- package/dist/etc/ngMenu.js +1 -1
- package/dist/etc/ngPaging.js +1 -1
- package/dist/etc/ngProgress.js +1 -1
- package/dist/etc/ngRadio.js +1 -1
- package/dist/etc/ngRenderer.js +1 -1
- package/dist/etc/ngRowDetail.js +1 -1
- package/dist/etc/ngRowDrag.js +1 -1
- package/dist/etc/ngRowExpand.js +1 -1
- package/dist/etc/ngRowIndicator.js +1 -1
- package/dist/etc/ngRowPin.js +1 -1
- package/dist/etc/ngRowState.js +1 -1
- package/dist/etc/ngScrollBar.js +1 -1
- package/dist/etc/ngSorting.js +1 -1
- package/dist/etc/ngTableManager.js +1 -1
- package/dist/etc/ngTableWrapper.js +1 -1
- package/dist/etc/ngTextArea.js +1 -1
- package/dist/etc/ngTree.js +1 -1
- package/dist/etc/ngView.js +1 -1
- package/dist/etc/ninegridContainer.js +1 -1
- package/dist/etc/nxConfirm.js +1 -1
- package/dist/etc/nxDialog.js +1 -1
- package/dist/etc/nxDiv.js +1 -1
- package/dist/etc/nxI18nExt.js +1 -1
- package/dist/etc/nxSideMenu.js +1 -1
- package/dist/etc/nxSidebar.js +1 -1
- package/dist/etc/nxSpan.js +1 -1
- package/dist/etc/nxTab.js +1 -1
- package/dist/etc/nxTopMenu.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/rollup.config.js +1 -1
- package/src/etc/___nxUtils.js +1 -1
- package/src/etc/__ngUtils.js +1 -1
- package/src/etc/_ngCell.js +1 -1
- package/src/etc/ngButton.js +1 -1
- package/src/etc/ngCellCopyPaste.js +1 -1
- package/src/etc/ngCellManager.js +1 -1
- package/src/etc/ngCellSelection.js +1 -1
- package/src/etc/ngChart.js +1 -1
- package/src/etc/ngCheckBox.js +1 -1
- package/src/etc/ngColExpand.js +1 -1
- package/src/etc/ngColMover.js +1 -1
- package/src/etc/ngColResizer.js +1 -1
- package/src/etc/ngColumns.js +1 -1
- package/src/etc/ngCombo.js +1 -1
- package/src/etc/ngContextMenu.js +1 -1
- package/src/etc/ngCustomEvent.js +1 -1
- package/src/etc/ngData.js +1 -1
- package/src/etc/ngDataManager.js +1 -1
- package/src/etc/ngExpandIcon.js +1 -1
- package/src/etc/ngExport.js +1 -1
- package/src/etc/ngFields.js +1 -1
- package/src/etc/ngFiltering.js +1 -1
- package/src/etc/ngFoot.js +1 -1
- package/src/etc/ngHead.js +1 -1
- package/src/etc/ngIcon.js +1 -1
- package/src/etc/ngImage.js +1 -1
- package/src/etc/ngImport.js +1 -1
- package/src/etc/ngInfo.js +1 -1
- package/src/etc/ngInputColor.js +1 -1
- package/src/etc/ngInputDate.js +1 -1
- package/src/etc/ngInputText.js +1 -1
- package/src/etc/ngMatrixManager.js +1 -1
- package/src/etc/ngMaximize.js +1 -1
- package/src/etc/ngMenu.js +1 -1
- package/src/etc/ngPaging.js +1 -1
- package/src/etc/ngProgress.js +1 -1
- package/src/etc/ngRadio.js +1 -1
- package/src/etc/ngRenderer.js +1 -1
- package/src/etc/ngRowDetail.js +1 -1
- package/src/etc/ngRowDrag.js +1 -1
- package/src/etc/ngRowExpand.js +1 -1
- package/src/etc/ngRowIndicator.js +1 -1
- package/src/etc/ngRowPin.js +1 -1
- package/src/etc/ngRowState.js +1 -1
- package/src/etc/ngScrollBar.js +1 -1
- package/src/etc/ngSorting.js +1 -1
- package/src/etc/ngTableManager.js +1 -1
- package/src/etc/ngTableWrapper.js +1 -1
- package/src/etc/ngTextArea.js +1 -1
- package/src/etc/ngTree.js +1 -1
- package/src/etc/ngView.js +1 -1
- package/src/etc/ninegridContainer.js +1 -1
- package/src/etc/nxConfirm.js +1 -1
- package/src/etc/nxDialog.js +1 -1
- package/src/etc/nxDiv.js +1 -1
- package/src/etc/nxI18nExt.js +1 -1
- package/src/etc/nxSideMenu.js +1 -1
- package/src/etc/nxSidebar.js +1 -1
- package/src/etc/nxSpan.js +1 -1
- package/src/etc/nxTab.js +1 -1
- package/src/etc/nxTopMenu.js +1 -1
- package/src/index.js +1 -1
package/dist/bundle.esm.js
CHANGED
|
@@ -11576,11 +11576,11 @@ class ngCellEx extends HTMLElement
|
|
|
11576
11576
|
this.#showCheck = this.getAttribute("show-check") == "true" || this.cell.getAttribute("show-check") == "true";
|
|
11577
11577
|
this.#showButton = this.getAttribute("show-button") == "true" || this.cell.getAttribute("show-button") == "true";
|
|
11578
11578
|
|
|
11579
|
-
if (this.cell.dataset.bind)
|
|
11579
|
+
if (this.cell.dataset.bind) ninegrid.j.querySelectorAll(this).addClass(this.cell.dataset.bind);
|
|
11580
11580
|
|
|
11581
11581
|
const style = this.shadowRoot.querySelector("style");
|
|
11582
11582
|
const textAlign = this.getAttribute("text-align") || this.cell.getAttribute("text-align") || "left";
|
|
11583
|
-
|
|
11583
|
+
ninegrid.j.querySelectorAll(this).addClass(`ng-${textAlign}`);
|
|
11584
11584
|
|
|
11585
11585
|
if (this.#showIcon) {
|
|
11586
11586
|
const iconType = this.getAttribute("icon-type") || this.cell.getAttribute("icon-type") || "sphere";
|
|
@@ -11681,20 +11681,20 @@ class ngCellEx extends HTMLElement
|
|
|
11681
11681
|
const next = this.shadowRoot.querySelector("input[type=text],textarea").nextElementSibling;
|
|
11682
11682
|
|
|
11683
11683
|
if (prev.tagName == "NG-EXPAND-BUTTON") {
|
|
11684
|
-
|
|
11685
|
-
|
|
11684
|
+
ninegrid.j.querySelectorAll(this.shadowRoot.querySelector("input[type=text],textarea")).addClass("border-left-none");
|
|
11685
|
+
ninegrid.j.querySelectorAll(prev).addClass("border-right-none");
|
|
11686
11686
|
}
|
|
11687
11687
|
else if (next.tagName == "NG-EXPAND-BUTTON") {
|
|
11688
|
-
|
|
11689
|
-
|
|
11688
|
+
ninegrid.j.querySelectorAll(this.shadowRoot.querySelector("input[type=text],textarea")).addClass("border-right-none");
|
|
11689
|
+
ninegrid.j.querySelectorAll(next).addClass("border-left-none");
|
|
11690
11690
|
}
|
|
11691
11691
|
}
|
|
11692
11692
|
}
|
|
11693
11693
|
|
|
11694
11694
|
const expandleft = this.shadowRoot.querySelectorAll(".ng-left");
|
|
11695
|
-
if (expandleft.length > 0)
|
|
11695
|
+
if (expandleft.length > 0) ninegrid.j.querySelectorAll(expandleft[0]).addClass("ng-first");
|
|
11696
11696
|
const expandRight = this.shadowRoot.querySelectorAll(".ng-right");
|
|
11697
|
-
if (expandRight.length > 0)
|
|
11697
|
+
if (expandRight.length > 0) ninegrid.j.querySelectorAll(expandRight[expandRight.length-1]).addClass("ng-last");
|
|
11698
11698
|
|
|
11699
11699
|
|
|
11700
11700
|
|
|
@@ -11749,7 +11749,7 @@ class ngCellEx extends HTMLElement
|
|
|
11749
11749
|
}
|
|
11750
11750
|
}
|
|
11751
11751
|
|
|
11752
|
-
this.owner.dispatchEvent(new CustomEvent(
|
|
11752
|
+
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 }));
|
|
11753
11753
|
//var row = parseInt(this.cell.dataset.row);
|
|
11754
11754
|
//this.owner.exprFunction(this.cell.getAttribute("onButtonClick") || this.getAttribute("onButtonClick")).call(this, this.cell.closest("tr").data, row);
|
|
11755
11755
|
});
|
|
@@ -11762,7 +11762,7 @@ class ngCellEx extends HTMLElement
|
|
|
11762
11762
|
|
|
11763
11763
|
|
|
11764
11764
|
if (this.getAttribute("link") == "true") {
|
|
11765
|
-
|
|
11765
|
+
ninegrid.j.querySelectorAll(renderer).addClass("link");
|
|
11766
11766
|
|
|
11767
11767
|
renderer.addEventListener("click", e => {
|
|
11768
11768
|
|
|
@@ -11777,7 +11777,7 @@ class ngCellEx extends HTMLElement
|
|
|
11777
11777
|
}
|
|
11778
11778
|
}
|
|
11779
11779
|
|
|
11780
|
-
this.owner.dispatchEvent(new CustomEvent(
|
|
11780
|
+
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 }));
|
|
11781
11781
|
});
|
|
11782
11782
|
}
|
|
11783
11783
|
|
|
@@ -11828,7 +11828,7 @@ class ngCellEx extends HTMLElement
|
|
|
11828
11828
|
|
|
11829
11829
|
if (!rowData) return "";
|
|
11830
11830
|
|
|
11831
|
-
if (!
|
|
11831
|
+
if (!ninegrid.isNull(this.cell.dataset.expr)) {
|
|
11832
11832
|
try {
|
|
11833
11833
|
//console.log(this.cell.dataset.expr);
|
|
11834
11834
|
|
|
@@ -11844,11 +11844,11 @@ class ngCellEx extends HTMLElement
|
|
|
11844
11844
|
console.error(this.cell.dataset.expr, rowData, this.cell.dataset.row);
|
|
11845
11845
|
}
|
|
11846
11846
|
}
|
|
11847
|
-
else if (!
|
|
11848
|
-
return rowData[this.cell.dataset.bind] ||
|
|
11847
|
+
else if (!ninegrid.isNull(this.cell.dataset.bind)) {
|
|
11848
|
+
return rowData[this.cell.dataset.bind] || ninegrid.nvl(defaultValue, "");
|
|
11849
11849
|
}
|
|
11850
11850
|
|
|
11851
|
-
return
|
|
11851
|
+
return ninegrid.nvl(defaultValue, "");
|
|
11852
11852
|
}
|
|
11853
11853
|
else {
|
|
11854
11854
|
try {
|
|
@@ -11873,11 +11873,11 @@ class ngCellEx extends HTMLElement
|
|
|
11873
11873
|
}
|
|
11874
11874
|
|
|
11875
11875
|
if (this.cell.dataset.bind && this.shadowRoot.querySelector("input,textarea,button")) {
|
|
11876
|
-
|
|
11876
|
+
ninegrid.j.querySelectorAll(this.cell).removeClass("ng-changed");
|
|
11877
11877
|
|
|
11878
11878
|
if (data.__ng.o.hasOwnProperty(this.cell.dataset.bind)) {
|
|
11879
11879
|
if (data[this.cell.dataset.bind] != data.__ng.o[this.cell.dataset.bind]) {
|
|
11880
|
-
|
|
11880
|
+
ninegrid.j.querySelectorAll(this.cell).addClass("ng-changed");
|
|
11881
11881
|
}
|
|
11882
11882
|
}
|
|
11883
11883
|
}
|
|
@@ -11948,26 +11948,26 @@ class ngCellEx extends HTMLElement
|
|
|
11948
11948
|
|
|
11949
11949
|
var expr = this.getAttribute('visible') || this.cell.getAttribute('visible');
|
|
11950
11950
|
if (expr) {
|
|
11951
|
-
this.getExprValue(expr, data, row) ?
|
|
11951
|
+
this.getExprValue(expr, data, row) ? ninegrid.j.querySelectorAll(this.cell).removeClass('hidden') : ninegrid.j.querySelectorAll(this.cell).addClass('hidden');
|
|
11952
11952
|
}
|
|
11953
11953
|
else {
|
|
11954
|
-
|
|
11954
|
+
ninegrid.j.querySelectorAll(this.cell).removeClass('hidden');
|
|
11955
11955
|
}
|
|
11956
11956
|
|
|
11957
11957
|
var expr = this.getAttribute('enable') || this.cell.getAttribute('enable');
|
|
11958
11958
|
if (expr) {
|
|
11959
|
-
|
|
11959
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("disabled", !this.getExprValue(expr, data, row));
|
|
11960
11960
|
}
|
|
11961
11961
|
else {
|
|
11962
|
-
|
|
11962
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("disabled", false);
|
|
11963
11963
|
}
|
|
11964
11964
|
|
|
11965
11965
|
var expr = this.getAttribute('readonly') || this.cell.getAttribute('readonly');
|
|
11966
11966
|
if (expr) {
|
|
11967
|
-
|
|
11967
|
+
ninegrid.j.querySelectorAll("input,textarea", this.shadowRoot).attr("readonly", this.getExprValue(expr, data, row));
|
|
11968
11968
|
}
|
|
11969
11969
|
else {
|
|
11970
|
-
|
|
11970
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("readonly", false);
|
|
11971
11971
|
}
|
|
11972
11972
|
|
|
11973
11973
|
|
|
@@ -11985,7 +11985,7 @@ class ngCellEx extends HTMLElement
|
|
|
11985
11985
|
$(this.cell).children().each((i,el) => {
|
|
11986
11986
|
var tooltipFn = el.getAttribute('tooltip');
|
|
11987
11987
|
if (tooltipFn) {
|
|
11988
|
-
|
|
11988
|
+
ninegrid.j.querySelectorAll(el).attr("title", this.owner.exprFunction(tooltipFn).call(this, this.cell.closest("tr").data, row));
|
|
11989
11989
|
}
|
|
11990
11990
|
});
|
|
11991
11991
|
|
|
@@ -11996,7 +11996,7 @@ class ngCellEx extends HTMLElement
|
|
|
11996
11996
|
|
|
11997
11997
|
if (!this.owner || !this.owner.template || !this.cell.closest("tbody.bindable")) return;
|
|
11998
11998
|
|
|
11999
|
-
var suppress =
|
|
11999
|
+
var suppress = ninegrid.j.querySelectorAll(this.cell).attr('suppress');
|
|
12000
12000
|
if (suppress) suppress = parseInt(suppress);
|
|
12001
12001
|
|
|
12002
12002
|
if (suppress && !isNaN(suppress)) {
|
|
@@ -12005,7 +12005,7 @@ class ngCellEx extends HTMLElement
|
|
|
12005
12005
|
var arrSuppress = [];
|
|
12006
12006
|
|
|
12007
12007
|
$("th,td", tr).each((i,el) => {
|
|
12008
|
-
var otherSuppress =
|
|
12008
|
+
var otherSuppress = ninegrid.j.querySelectorAll(el).attr('suppress');
|
|
12009
12009
|
if (otherSuppress && el.dataset.row) {
|
|
12010
12010
|
otherSuppress = parseInt(otherSuppress);
|
|
12011
12011
|
|
|
@@ -12042,23 +12042,23 @@ class ngCellEx extends HTMLElement
|
|
|
12042
12042
|
bSuppress = true;
|
|
12043
12043
|
}
|
|
12044
12044
|
|
|
12045
|
-
(bSuppress) ?
|
|
12046
|
-
if (!
|
|
12047
|
-
(bSuppress) ?
|
|
12045
|
+
(bSuppress) ? ninegrid.j.querySelectorAll(this.cell).removeClass('suppress') : ninegrid.j.querySelectorAll(this.cell).addClass('suppress');
|
|
12046
|
+
if (!ninegrid.j.querySelectorAll(this.cell).hasClass("hidden")) {
|
|
12047
|
+
(bSuppress) ? ninegrid.j.querySelectorAll(this.cell).removeClass('hidden') : ninegrid.j.querySelectorAll(this.cell).addClass('hidden');
|
|
12048
12048
|
}
|
|
12049
12049
|
|
|
12050
12050
|
var currMatrixRow = parseInt(this.cell.dataset.matrixRow);
|
|
12051
12051
|
var prevMatrixRow = currMatrixRow - 1;//this.owner.template.length;
|
|
12052
12052
|
var prevCell = this.owner.body.querySelector(`tbody.bindable [data-col="${this.cell.dataset.col}"][data-matrix-row="${prevMatrixRow}"]`);
|
|
12053
12053
|
|
|
12054
|
-
if ($(prevCell).hasClass('suppress') && !
|
|
12055
|
-
|
|
12054
|
+
if ($(prevCell).hasClass('suppress') && !ninegrid.j.querySelectorAll(this.cell).hasClass('suppress')) {
|
|
12055
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-none-suppress').addClass('last-suppress');
|
|
12056
12056
|
}
|
|
12057
|
-
else if (!$(prevCell).hasClass('suppress') &&
|
|
12058
|
-
|
|
12057
|
+
else if (!$(prevCell).hasClass('suppress') && ninegrid.j.querySelectorAll(this.cell).hasClass('suppress')) {
|
|
12058
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-suppress').addClass('last-none-suppress');
|
|
12059
12059
|
}
|
|
12060
12060
|
else {
|
|
12061
|
-
|
|
12061
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-none-suppress').removeClass('last-suppress');
|
|
12062
12062
|
}
|
|
12063
12063
|
}
|
|
12064
12064
|
};
|
|
@@ -12121,13 +12121,13 @@ class ngEditableEx extends ngCellEx
|
|
|
12121
12121
|
if (maxbyte) {
|
|
12122
12122
|
maxbyte = parseInt(maxbyte);
|
|
12123
12123
|
|
|
12124
|
-
if (
|
|
12124
|
+
if (ninegrid.getByteLength(event.target.value) >= maxbyte) {
|
|
12125
12125
|
|
|
12126
|
-
event.target.value =
|
|
12126
|
+
event.target.value = ninegrid.cut(event.target.value, maxbyte);
|
|
12127
12127
|
}
|
|
12128
12128
|
}
|
|
12129
12129
|
var v = $(event.target).val();
|
|
12130
|
-
this.value =
|
|
12130
|
+
this.value = ninegrid.j.querySelectorAll(this).attr("type") == "number" ? (isNaN(v) ? "" : Number(v)) : v;
|
|
12131
12131
|
|
|
12132
12132
|
break;
|
|
12133
12133
|
}
|
|
@@ -12268,11 +12268,11 @@ class ngCellCopyPasteKeyHandler
|
|
|
12268
12268
|
.then(() => {
|
|
12269
12269
|
//ninegrid.j.querySelectorAll(".copied", this.#owner.body).removeClass("copied");
|
|
12270
12270
|
setTimeout(() => {
|
|
12271
|
-
|
|
12271
|
+
ninegrid.j.querySelectorAll(".selected", this.#owner.body).addClass("copied");
|
|
12272
12272
|
});
|
|
12273
12273
|
|
|
12274
12274
|
setTimeout(() => {
|
|
12275
|
-
|
|
12275
|
+
ninegrid.j.querySelectorAll(".copied", this.#owner.body).removeClass("copied");
|
|
12276
12276
|
}, 1000);
|
|
12277
12277
|
})
|
|
12278
12278
|
.catch(err => {
|
|
@@ -12394,7 +12394,7 @@ class ngCellManager
|
|
|
12394
12394
|
const oldCellIndex = this.#oldCellIndex;
|
|
12395
12395
|
|
|
12396
12396
|
if (row != oldrow || subrow != oldsubrow || col != oldcol) {
|
|
12397
|
-
const customEvent = new CustomEvent(
|
|
12397
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.CELL_POS_CHANGED, { bubbles: true, detail: {} });
|
|
12398
12398
|
customEvent.col = col;
|
|
12399
12399
|
customEvent.cellIndex = cellIndex;
|
|
12400
12400
|
customEvent.row = row;
|
|
@@ -12413,7 +12413,7 @@ class ngCellManager
|
|
|
12413
12413
|
}
|
|
12414
12414
|
|
|
12415
12415
|
if (row != oldrow) {
|
|
12416
|
-
const customEvent = new CustomEvent(
|
|
12416
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.ROW_POS_CHANGED, { bubbles: true, detail: {} });
|
|
12417
12417
|
customEvent.col = col;
|
|
12418
12418
|
customEvent.cellIndex = cellIndex;
|
|
12419
12419
|
customEvent.row = row;
|
|
@@ -12549,7 +12549,7 @@ class ngCellManager
|
|
|
12549
12549
|
$(`tbody tr[data-matrix-row=${matrixRow}]`, this.#owner.body).find("th,td").each((i,el) => {
|
|
12550
12550
|
var elCol = parseInt(el.dataset.col);
|
|
12551
12551
|
if ((col - 1) >= elCol && (col - 1) <= elCol + el.colSpan - 1) {
|
|
12552
|
-
previousCol =
|
|
12552
|
+
previousCol = ninegrid.j.querySelectorAll(el).hasClass("dummy") ? this.#getPreviousCol(matrixRow, el.dataset.col) : el.dataset.col;
|
|
12553
12553
|
return false;
|
|
12554
12554
|
}
|
|
12555
12555
|
});
|
|
@@ -12558,7 +12558,7 @@ class ngCellManager
|
|
|
12558
12558
|
$(`tbody tr[data-row=${row}]`, this.#owner.body).find("th,td").each((i,el) => {
|
|
12559
12559
|
var elCol = parseInt(el.dataset.col);
|
|
12560
12560
|
if ((col - 1) >= elCol && (col - 1) <= elCol + el.colSpan - 1) {
|
|
12561
|
-
previousCol =
|
|
12561
|
+
previousCol = ninegrid.j.querySelectorAll(el).hasClass("dummy") ? this.#getPreviousCol(matrixRow, el.dataset.col) : el.dataset.col;
|
|
12562
12562
|
return false;
|
|
12563
12563
|
}
|
|
12564
12564
|
});
|
|
@@ -12572,7 +12572,7 @@ class ngCellManager
|
|
|
12572
12572
|
|
|
12573
12573
|
var nextCol = col + (td.colSpan || 1);
|
|
12574
12574
|
var nextTd = this.#owner.body.querySelector(`tbody [data-matrix-row="${matrixRow}"][data-col="${nextCol}"]`);
|
|
12575
|
-
if (
|
|
12575
|
+
if (ninegrid.j.querySelectorAll(nextTd).hasClass("dummy")) {
|
|
12576
12576
|
nextCol = this.#getNextCol(matrixRow, nextCol);
|
|
12577
12577
|
}
|
|
12578
12578
|
|
|
@@ -12616,10 +12616,10 @@ class ngCellManager
|
|
|
12616
12616
|
|
|
12617
12617
|
if (e.ctrlKey || e.altKey) return;
|
|
12618
12618
|
|
|
12619
|
-
if (e.target.tagName == "NG-ROW-INDICATOR" && [
|
|
12619
|
+
if (e.target.tagName == "NG-ROW-INDICATOR" && [ninegrid.SELECTTYPE.CELL,ninegrid.SELECTTYPE.AREA].includes(this.#owner.selection.type)) return;
|
|
12620
12620
|
|
|
12621
12621
|
if (e.shiftKey) {
|
|
12622
|
-
if ([
|
|
12622
|
+
if ([ninegrid.SELECTTYPE.COLS,ninegrid.SELECTTYPE.ROWS,ninegrid.SELECTTYPE.AREA].includes(this.#owner.selection.type)) {
|
|
12623
12623
|
var fromTD = this.#owner.selection.getActiveCell();
|
|
12624
12624
|
if (fromTD) {
|
|
12625
12625
|
var fromTR = fromTD.closest("tr");
|
|
@@ -12737,7 +12737,7 @@ class ngCellSelection
|
|
|
12737
12737
|
clear :
|
|
12738
12738
|
() => {
|
|
12739
12739
|
this.selected.startRow = this.selected.endRow = this.selected.startCol = this.selected.endCol = -1;
|
|
12740
|
-
|
|
12740
|
+
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");
|
|
12741
12741
|
},
|
|
12742
12742
|
};
|
|
12743
12743
|
|
|
@@ -12750,10 +12750,10 @@ class ngCellSelection
|
|
|
12750
12750
|
return this.#owner.getAttribute("select-type");
|
|
12751
12751
|
};
|
|
12752
12752
|
set type(v) {
|
|
12753
|
-
if (!Object.values(
|
|
12753
|
+
if (!Object.values(ninegrid.SELECTTYPE).includes(v)) throw `invalid select type : ${v}`;
|
|
12754
12754
|
|
|
12755
|
-
Object.values(
|
|
12756
|
-
|
|
12755
|
+
Object.values(ninegrid.SELECTTYPE).forEach(m => { ninegrid.j.querySelectorAll(".ng-table", this.#owner.body).removeClass(`select-type-${m}`); });
|
|
12756
|
+
ninegrid.j.querySelectorAll(".ng-table", this.#owner.body).addClass(`select-type-${v}`);
|
|
12757
12757
|
this.#owner.cell.refresh();
|
|
12758
12758
|
};
|
|
12759
12759
|
|
|
@@ -12772,20 +12772,20 @@ class ngCellSelection
|
|
|
12772
12772
|
refresh = () => {
|
|
12773
12773
|
|
|
12774
12774
|
switch (this.type) {
|
|
12775
|
-
case
|
|
12775
|
+
case ninegrid.SELECTTYPE.ROW:
|
|
12776
12776
|
|
|
12777
12777
|
this.selected.startRow = parseInt(this.#owner.row.at * this.#owner.template.length);
|
|
12778
12778
|
this.selected.endRow = this.selected.startRow + this.#owner.template.length - 1;
|
|
12779
12779
|
|
|
12780
12780
|
var cols = [];
|
|
12781
|
-
$(`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(
|
|
12781
|
+
$(`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)); });
|
|
12782
12782
|
|
|
12783
12783
|
this.selected.startCol = (cols.length > 0) ? Math.min.apply(null, cols) : -1;
|
|
12784
12784
|
this.selected.endCol = (cols.length > 0) ? Math.max.apply(null, cols) : -1;
|
|
12785
12785
|
|
|
12786
12786
|
break;
|
|
12787
12787
|
|
|
12788
|
-
case
|
|
12788
|
+
case ninegrid.SELECTTYPE.ROWS:
|
|
12789
12789
|
this.selected.startRow = parseInt(this.selected.startRow / this.#owner.template.length) * this.#owner.template.length;
|
|
12790
12790
|
this.selected.endRow = parseInt(this.selected.endRow / this.#owner.template.length) * this.#owner.template.length - 1 + this.#owner.template.length;
|
|
12791
12791
|
|
|
@@ -12793,7 +12793,7 @@ class ngCellSelection
|
|
|
12793
12793
|
this.selected.endCol = this.#owner.lastCol;//Math.max.apply(null, cols);
|
|
12794
12794
|
break;
|
|
12795
12795
|
|
|
12796
|
-
case
|
|
12796
|
+
case ninegrid.SELECTTYPE.COL:
|
|
12797
12797
|
this.selected.startRow = 0;
|
|
12798
12798
|
this.selected.endRow = parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
12799
12799
|
this.selected.endCol = this.selected.startCol;
|
|
@@ -12821,7 +12821,7 @@ class ngCellSelection
|
|
|
12821
12821
|
|
|
12822
12822
|
break;
|
|
12823
12823
|
|
|
12824
|
-
case
|
|
12824
|
+
case ninegrid.SELECTTYPE.COLS:
|
|
12825
12825
|
|
|
12826
12826
|
this.selected.startRow = 0;
|
|
12827
12827
|
this.selected.endRow = parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
@@ -12850,31 +12850,31 @@ class ngCellSelection
|
|
|
12850
12850
|
|
|
12851
12851
|
break;
|
|
12852
12852
|
|
|
12853
|
-
case
|
|
12853
|
+
case ninegrid.SELECTTYPE.CELL:
|
|
12854
12854
|
this.selected.endRow = this.selected.startRow;
|
|
12855
12855
|
this.selected.endCol = this.selected.startCol;
|
|
12856
12856
|
break;
|
|
12857
12857
|
|
|
12858
|
-
case
|
|
12858
|
+
case ninegrid.SELECTTYPE.AREA:
|
|
12859
12859
|
break;
|
|
12860
12860
|
|
|
12861
|
-
case
|
|
12861
|
+
case ninegrid.SELECTTYPE.NONE:
|
|
12862
12862
|
this.selected.startRow = this.selected.endRow = this.selected.startCol = this.selected.endCol = -1;
|
|
12863
12863
|
break;
|
|
12864
12864
|
}
|
|
12865
12865
|
|
|
12866
12866
|
|
|
12867
|
-
|
|
12867
|
+
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");
|
|
12868
12868
|
|
|
12869
|
-
|
|
12870
|
-
|
|
12869
|
+
ninegrid.j.querySelectorAll(".selected-current", this.#owner.body).removeClass("selected-current");
|
|
12870
|
+
ninegrid.j.querySelectorAll(`tr[data-row="${this.selected.currentRow}"] ng-row-indicator`, this.#owner.body).addClass("selected-current");
|
|
12871
12871
|
|
|
12872
12872
|
//var row = parseInt(this.selected.currentRow / this.#owner.template.length);
|
|
12873
|
-
|
|
12873
|
+
ninegrid.j.querySelectorAll(`.col-indicator[data-col="${this.selected.currentCol}"]`, this.#owner.body).addClass("selected-current");
|
|
12874
12874
|
$(`tr[data-row="${this.selected.currentRow}"] ng-row-indicator`, this.#owner.body).closest("th,td").addClass("selected-current");
|
|
12875
12875
|
|
|
12876
12876
|
var activeCell = this.getActiveCell();
|
|
12877
|
-
if (activeCell)
|
|
12877
|
+
if (activeCell) ninegrid.j.querySelectorAll(activeCell).addClass("active");
|
|
12878
12878
|
|
|
12879
12879
|
$("tbody th,tbody td", this.#owner.body).each((index, td) => {
|
|
12880
12880
|
var tdCol = parseInt(td.dataset.col);
|
|
@@ -12884,17 +12884,17 @@ class ngCellSelection
|
|
|
12884
12884
|
|
|
12885
12885
|
if (row + td.rowSpan - 1 >= this.selected.startRow && row <= this.selected.endRow && tdCol+td.colSpan-1 >= this.selected.startCol && tdCol <= this.selected.endCol) {
|
|
12886
12886
|
|
|
12887
|
-
|
|
12887
|
+
ninegrid.j.querySelectorAll(td).addClass("selected");//.addClass("selected-area");
|
|
12888
12888
|
|
|
12889
12889
|
if (this.selected.startRow == this.selected.endRow && this.selected.startCol == this.selected.endCol) {
|
|
12890
|
-
|
|
12890
|
+
ninegrid.j.querySelectorAll(td).addClass("selected-top").addClass("selected-bottom").addClass("selected-left").addClass("selected-right");
|
|
12891
12891
|
}
|
|
12892
12892
|
else {
|
|
12893
|
-
if (row == this.selected.startRow)
|
|
12894
|
-
if (row+td.rowSpan-1 == this.selected.endRow)
|
|
12895
|
-
if (tdCol == this.selected.startCol)
|
|
12896
|
-
if (tdCol+td.colSpan-1 == this.selected.endCol)
|
|
12897
|
-
|
|
12893
|
+
if (row == this.selected.startRow) ninegrid.j.querySelectorAll(td).addClass("selected-top");
|
|
12894
|
+
if (row+td.rowSpan-1 == this.selected.endRow) ninegrid.j.querySelectorAll(td).addClass("selected-bottom");
|
|
12895
|
+
if (tdCol == this.selected.startCol) ninegrid.j.querySelectorAll(td).addClass("selected-left");
|
|
12896
|
+
if (tdCol+td.colSpan-1 == this.selected.endCol) ninegrid.j.querySelectorAll(td).addClass("selected-right");
|
|
12897
|
+
ninegrid.j.querySelectorAll(td).addClass("multi-selected");
|
|
12898
12898
|
}
|
|
12899
12899
|
}
|
|
12900
12900
|
});
|
|
@@ -12909,7 +12909,7 @@ class ngCellSelection
|
|
|
12909
12909
|
for (var i = 0; i < td.rowSpan; i++) {
|
|
12910
12910
|
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;
|
|
12911
12911
|
if (row >= this.selected.startRow && row <= this.selected.endRow) {
|
|
12912
|
-
|
|
12912
|
+
ninegrid.j.querySelectorAll(td).addClass("selected-area");
|
|
12913
12913
|
}
|
|
12914
12914
|
}
|
|
12915
12915
|
}
|
|
@@ -12917,7 +12917,7 @@ class ngCellSelection
|
|
|
12917
12917
|
|
|
12918
12918
|
|
|
12919
12919
|
for (var i = this.selected.startCol; i <= this.selected.endCol; i++) {
|
|
12920
|
-
|
|
12920
|
+
ninegrid.j.querySelectorAll(`.col-indicator[data-col="${i}"]`, this.#owner.body).addClass("selected-area");
|
|
12921
12921
|
}
|
|
12922
12922
|
|
|
12923
12923
|
if (this.selected.oldStartRow != this.selected.startRow || this.selected.oldEndRow != this.selected.endRow ||
|
|
@@ -13110,7 +13110,7 @@ class ngCellSelection
|
|
|
13110
13110
|
}
|
|
13111
13111
|
};
|
|
13112
13112
|
|
|
13113
|
-
if ([
|
|
13113
|
+
if ([ninegrid.SELECTTYPE.AREA,ninegrid.SELECTTYPE.ROWS,ninegrid.SELECTTYPE.COLS].includes(this.type)) {
|
|
13114
13114
|
$(".ng-table tbody.bindable", this.#owner.body).on("mousemove", onMouseMove);
|
|
13115
13115
|
$(".ng-table tbody.bindable", this.#owner.body).on("mouseenter", onMouseEnter);
|
|
13116
13116
|
$(".ng-table tbody.bindable", this.#owner.body).on("mouseleave", onMouseLeave);
|
|
@@ -13778,8 +13778,8 @@ class ngCheckBox extends ngEditableEx
|
|
|
13778
13778
|
|
|
13779
13779
|
this.shadowRoot.innerHTML = `
|
|
13780
13780
|
<style>
|
|
13781
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
13782
|
-
${
|
|
13781
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngCheckBox.css";
|
|
13782
|
+
${ninegrid.getCustomPath(this,"ngCheckBox.css")}
|
|
13783
13783
|
|
|
13784
13784
|
:host {
|
|
13785
13785
|
justify-content: ${this.closest("th,td").getAttribute("text-align") || "center"};
|
|
@@ -13839,11 +13839,11 @@ class ngCheckBox extends ngEditableEx
|
|
|
13839
13839
|
|
|
13840
13840
|
if (!this.closest("tbody")) return;
|
|
13841
13841
|
|
|
13842
|
-
if (
|
|
13843
|
-
|
|
13842
|
+
if (ninegrid.isNull(this.value) || this.value == this.trueValue || this.value == this.falseValue) {
|
|
13843
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
13844
13844
|
}
|
|
13845
13845
|
else {
|
|
13846
|
-
|
|
13846
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
13847
13847
|
}
|
|
13848
13848
|
|
|
13849
13849
|
$(this.#target).prop("checked", this.value == this.trueValue);
|
|
@@ -13897,15 +13897,15 @@ class ngColExpand extends HTMLElement
|
|
|
13897
13897
|
|
|
13898
13898
|
this.shadowRoot.innerHTML = `
|
|
13899
13899
|
<style>
|
|
13900
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
13901
|
-
${
|
|
13900
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngColExpand.css";
|
|
13901
|
+
${ninegrid.getCustomPath(this,"ngColExpand.css")}
|
|
13902
13902
|
</style>
|
|
13903
13903
|
`;
|
|
13904
13904
|
|
|
13905
13905
|
this.#owner = this.getRootNode().host;
|
|
13906
13906
|
this.#cell = this.closest("th,td");
|
|
13907
13907
|
|
|
13908
|
-
|
|
13908
|
+
ninegrid.j.querySelectorAll(this).addClass("expand");
|
|
13909
13909
|
|
|
13910
13910
|
$(this).off("click", this.#onClick);
|
|
13911
13911
|
$(this).on("click", this.#onClick);
|
|
@@ -13916,7 +13916,7 @@ class ngColExpand extends HTMLElement
|
|
|
13916
13916
|
e.preventDefault();
|
|
13917
13917
|
e.stopPropagation();
|
|
13918
13918
|
|
|
13919
|
-
if (
|
|
13919
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) {
|
|
13920
13920
|
this.#collapse();
|
|
13921
13921
|
}
|
|
13922
13922
|
else {
|
|
@@ -13925,7 +13925,7 @@ class ngColExpand extends HTMLElement
|
|
|
13925
13925
|
};
|
|
13926
13926
|
|
|
13927
13927
|
expand = () => {
|
|
13928
|
-
if (
|
|
13928
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) return;
|
|
13929
13929
|
|
|
13930
13930
|
$(this).addClass("expand");
|
|
13931
13931
|
this.#cell.style.color = this.#orgColor;
|
|
@@ -13938,7 +13938,7 @@ class ngColExpand extends HTMLElement
|
|
|
13938
13938
|
};
|
|
13939
13939
|
|
|
13940
13940
|
#collapse = () => {
|
|
13941
|
-
if (!
|
|
13941
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("expand")) return;
|
|
13942
13942
|
|
|
13943
13943
|
$(this).removeClass("expand");
|
|
13944
13944
|
this.#orgColor = this.#cell.style.color;
|
|
@@ -14224,7 +14224,7 @@ class ngColMover
|
|
|
14224
14224
|
|
|
14225
14225
|
#onPrevMouseDown = e => {
|
|
14226
14226
|
|
|
14227
|
-
if (
|
|
14227
|
+
if (ninegrid.j.querySelectorAll(this.#owner).attr("col-movable") != "true") return;
|
|
14228
14228
|
if (e.target.tagName == "NG-FILTER-BUTTON") return;
|
|
14229
14229
|
|
|
14230
14230
|
this.#ready = true;
|
|
@@ -14623,7 +14623,7 @@ class ngColResizer
|
|
|
14623
14623
|
|
|
14624
14624
|
var prev = this.#owner.tableUtils.prev(td);
|
|
14625
14625
|
var next = this.#owner.tableUtils.next(td);
|
|
14626
|
-
var target = this.#owner.getBand(td.dataset.col) ==
|
|
14626
|
+
var target = this.#owner.getBand(td.dataset.col) == ninegrid.BAND.RIGHT ? ((e.offsetX <= 2) ? $(td) : next) : ((e.offsetX <= 2) ? prev : $(td));
|
|
14627
14627
|
|
|
14628
14628
|
this.#owner.setColumnWidthFit(target[0].dataset.col);
|
|
14629
14629
|
}
|
|
@@ -14787,7 +14787,7 @@ class ngColumns
|
|
|
14787
14787
|
for (var v of [source.thead.cells, source.tfoot.cells, source.tbody.cells, source.fixed.cells]) {
|
|
14788
14788
|
for (var fromCell of v) {
|
|
14789
14789
|
|
|
14790
|
-
|
|
14790
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14791
14791
|
|
|
14792
14792
|
const rowIndex = fromCell.closest("tr").rowIndex;
|
|
14793
14793
|
const targetTr = targetTable.querySelectorAll("tr")[rowIndex];
|
|
@@ -14807,7 +14807,7 @@ class ngColumns
|
|
|
14807
14807
|
for (var v of [source.org.thead.cells, source.org.tfoot.cells, source.org.tbody.cells, source.org.fixed.cells]) {
|
|
14808
14808
|
for (var fromCell of v) {
|
|
14809
14809
|
|
|
14810
|
-
|
|
14810
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14811
14811
|
|
|
14812
14812
|
const targetTable = fromCell.closest("table");
|
|
14813
14813
|
const rowIndex = fromCell.closest("tr").rowIndex;
|
|
@@ -14827,7 +14827,7 @@ class ngColumns
|
|
|
14827
14827
|
|
|
14828
14828
|
for (var fromCell of source.template.cells) {
|
|
14829
14829
|
|
|
14830
|
-
|
|
14830
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14831
14831
|
|
|
14832
14832
|
//const rowIndex = fromCell.closest("tr").rowIndex;
|
|
14833
14833
|
const targetTr = fromCell.closest("tr");
|
|
@@ -14877,18 +14877,18 @@ class ngColumns
|
|
|
14877
14877
|
|
|
14878
14878
|
for (var v of [source.thead.cells, source.tfoot.cells, source.tbody.cells, source.fixed.cells]) {
|
|
14879
14879
|
for (var fromCell of v) {
|
|
14880
|
-
|
|
14880
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14881
14881
|
}
|
|
14882
14882
|
}
|
|
14883
14883
|
|
|
14884
14884
|
for (var v of [source.org.thead.cells, source.org.tfoot.cells, source.org.tbody.cells, source.org.fixed.cells]) {
|
|
14885
14885
|
for (var fromCell of v) {
|
|
14886
|
-
|
|
14886
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14887
14887
|
}
|
|
14888
14888
|
}
|
|
14889
14889
|
|
|
14890
14890
|
for (var fromCell of source.template.cells) {
|
|
14891
|
-
|
|
14891
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14892
14892
|
}
|
|
14893
14893
|
|
|
14894
14894
|
|
|
@@ -15071,8 +15071,8 @@ class ngCombo extends ngEditableEx
|
|
|
15071
15071
|
|
|
15072
15072
|
this.shadowRoot.innerHTML = `
|
|
15073
15073
|
<style>
|
|
15074
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
15075
|
-
${
|
|
15074
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngCombo.css";
|
|
15075
|
+
${ninegrid.getCustomPath(this,"ngCombo.css")}
|
|
15076
15076
|
</style>
|
|
15077
15077
|
|
|
15078
15078
|
<button class="btn1" type="button" data-bs-toggle="dropdown" aria-expanded="false" tabindex="-1"></button>
|
|
@@ -15135,7 +15135,7 @@ class ngCombo extends ngEditableEx
|
|
|
15135
15135
|
dataRefresh = (v) => {
|
|
15136
15136
|
|
|
15137
15137
|
if (this.#dataSource) {
|
|
15138
|
-
this.#isValid() ?
|
|
15138
|
+
this.#isValid() ? ninegrid.j.querySelectorAll(this).removeClass("invalid") : ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
15139
15139
|
}
|
|
15140
15140
|
|
|
15141
15141
|
this.#target.innerHTML = this.getDisplayText() || "Select";
|
|
@@ -15149,7 +15149,7 @@ class ngCombo extends ngEditableEx
|
|
|
15149
15149
|
|
|
15150
15150
|
#isValid = () => {
|
|
15151
15151
|
|
|
15152
|
-
if (
|
|
15152
|
+
if (ninegrid.isNull(this.value)) return true;
|
|
15153
15153
|
|
|
15154
15154
|
var list = (this.multi) ? this.value.split(this.multiSeparator) : [this.value];
|
|
15155
15155
|
|
|
@@ -15195,8 +15195,8 @@ class ngCombo extends ngEditableEx
|
|
|
15195
15195
|
this.#panel.col = this.cell.dataset.col;
|
|
15196
15196
|
this.#panel.row = this.cell.closest("tr").sectionRowIndex;
|
|
15197
15197
|
|
|
15198
|
-
this.#dataSource.length > this.#EXPAND_ROWS ?
|
|
15199
|
-
this.multi ?
|
|
15198
|
+
this.#dataSource.length > this.#EXPAND_ROWS ? ninegrid.j.querySelectorAll(this.#panel).addClass("expand") : ninegrid.j.querySelectorAll(this.#panel).removeClass("expand");
|
|
15199
|
+
this.multi ? ninegrid.j.querySelectorAll(this.#panel).addClass("multi") : ninegrid.j.querySelectorAll(this.#panel).removeClass("multi");
|
|
15200
15200
|
|
|
15201
15201
|
this.#panel.refresh(this, this.#dataSource, this.#code, this.#items);
|
|
15202
15202
|
|
|
@@ -15210,7 +15210,7 @@ class ngCombo extends ngEditableEx
|
|
|
15210
15210
|
|
|
15211
15211
|
|
|
15212
15212
|
if (this.multi) {
|
|
15213
|
-
if (
|
|
15213
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15214
15214
|
h += 12; //위아래 padding
|
|
15215
15215
|
h += 3; //margin
|
|
15216
15216
|
h += 24; // input box
|
|
@@ -15221,7 +15221,7 @@ class ngCombo extends ngEditableEx
|
|
|
15221
15221
|
h += 25; // bottom
|
|
15222
15222
|
}
|
|
15223
15223
|
else {
|
|
15224
|
-
if (
|
|
15224
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15225
15225
|
h += 12; //위아래 padding
|
|
15226
15226
|
h += 3; //margin
|
|
15227
15227
|
h += 24; // input box
|
|
@@ -15252,7 +15252,7 @@ class ngCombo extends ngEditableEx
|
|
|
15252
15252
|
"min-height": h,
|
|
15253
15253
|
}).show();
|
|
15254
15254
|
|
|
15255
|
-
if (
|
|
15255
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15256
15256
|
$("div", this.#panel).eq(0).find("input").focus().val("");
|
|
15257
15257
|
}
|
|
15258
15258
|
};
|
|
@@ -15292,8 +15292,8 @@ class ngComboPanel extends HTMLElement
|
|
|
15292
15292
|
|
|
15293
15293
|
this.shadowRoot.innerHTML = `
|
|
15294
15294
|
<style>
|
|
15295
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
15296
|
-
${
|
|
15295
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngComboPanel.css";
|
|
15296
|
+
${ninegrid.getCustomPath(this,"ngComboPanel.css")}
|
|
15297
15297
|
</style>
|
|
15298
15298
|
|
|
15299
15299
|
<div class="head">
|
|
@@ -15429,7 +15429,7 @@ class ngComboPanel extends HTMLElement
|
|
|
15429
15429
|
#onInput = e => {
|
|
15430
15430
|
var grd = this.shadowRoot.querySelector("nine-grid");
|
|
15431
15431
|
|
|
15432
|
-
|
|
15432
|
+
ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
15433
15433
|
|
|
15434
15434
|
var data = grd.data.getValidDataNF();
|
|
15435
15435
|
data.map(m => { m.__ng.filtered = false; });
|
|
@@ -15447,7 +15447,7 @@ class ngComboPanel extends HTMLElement
|
|
|
15447
15447
|
|
|
15448
15448
|
grd.data.resetRecords();
|
|
15449
15449
|
|
|
15450
|
-
if (grd.data.count() == 0)
|
|
15450
|
+
if (grd.data.count() == 0) ninegrid.j.querySelectorAll(grd).removeClass("loading");
|
|
15451
15451
|
|
|
15452
15452
|
if (this.#timer) {
|
|
15453
15453
|
clearTimeout(this.#timer);
|
|
@@ -15563,9 +15563,9 @@ class ngComboPanel extends HTMLElement
|
|
|
15563
15563
|
}
|
|
15564
15564
|
*/
|
|
15565
15565
|
|
|
15566
|
-
var w = 16 + (
|
|
15566
|
+
var w = 16 + (ninegrid.j.querySelectorAll(this).hasClass("expand") ? 0 : 0) + 20;
|
|
15567
15567
|
|
|
15568
|
-
if (
|
|
15568
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("multi")) {
|
|
15569
15569
|
$("col", grd.body).each((i,el) => { w += parseInt(el.getAttribute("width")); });
|
|
15570
15570
|
}
|
|
15571
15571
|
else {
|
|
@@ -15609,7 +15609,7 @@ class ngContextMenu
|
|
|
15609
15609
|
var font = $(this.#panel).css("font");
|
|
15610
15610
|
var w = 150;
|
|
15611
15611
|
for (const item of this.#items) {
|
|
15612
|
-
w = Math.max(w,
|
|
15612
|
+
w = Math.max(w, ninegrid.measureTextSize(item.name, font).width + 60);
|
|
15613
15613
|
}
|
|
15614
15614
|
|
|
15615
15615
|
$(this.#panel).css({
|
|
@@ -15696,7 +15696,7 @@ class ngContextMenuPanel extends HTMLElement
|
|
|
15696
15696
|
//$("li", this).on("touchmove", this.#onMouseOver);
|
|
15697
15697
|
$("li", this).on("mouseover", this.#onMouseOver);
|
|
15698
15698
|
|
|
15699
|
-
$("li", this).on("mouseout", e => {
|
|
15699
|
+
$("li", this).on("mouseout", e => { ninegrid.j.querySelectorAll(e.currentTarget).removeClass("visible"); });
|
|
15700
15700
|
};
|
|
15701
15701
|
|
|
15702
15702
|
open = () => {
|
|
@@ -15722,12 +15722,12 @@ class ngContextMenuPanel extends HTMLElement
|
|
|
15722
15722
|
|
|
15723
15723
|
#onMouseOver = e => {
|
|
15724
15724
|
|
|
15725
|
-
|
|
15725
|
+
ninegrid.j.querySelectorAll(e.currentTarget).addClass("visible");
|
|
15726
15726
|
|
|
15727
15727
|
var font = $(this).css("font");
|
|
15728
15728
|
var w = 150;
|
|
15729
15729
|
$("ul > li:visible > span", e.currentTarget).each((i,el) => {
|
|
15730
|
-
w = Math.max(w,
|
|
15730
|
+
w = Math.max(w, ninegrid.measureTextSize($(el).text(), font).width + 60);
|
|
15731
15731
|
});
|
|
15732
15732
|
|
|
15733
15733
|
$("ul", e.currentTarget).eq(0).css({
|
|
@@ -15760,7 +15760,7 @@ class ngCustomEvent
|
|
|
15760
15760
|
|
|
15761
15761
|
this.#resetEvent();
|
|
15762
15762
|
|
|
15763
|
-
this.#owner.addEventListener(
|
|
15763
|
+
this.#owner.addEventListener(ninegrid.EVENT.LAYOUT_CHANGED, e => {
|
|
15764
15764
|
this.#resetEvent();
|
|
15765
15765
|
});
|
|
15766
15766
|
}
|
|
@@ -15781,7 +15781,7 @@ class ngCustomEvent
|
|
|
15781
15781
|
|
|
15782
15782
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15783
15783
|
const cell = e.target.closest("th,td");
|
|
15784
|
-
const eventType = e.detail == 1 ?
|
|
15784
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.CELL_CLICK : ninegrid.EVENT.CELL_DBL_CLICK;
|
|
15785
15785
|
|
|
15786
15786
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15787
15787
|
customEvent.col = cell.dataset.col;
|
|
@@ -15789,7 +15789,7 @@ class ngCustomEvent
|
|
|
15789
15789
|
customEvent.subrow = parseInt(cell.dataset.matrixRow) % parseInt(cell.dataset.row);
|
|
15790
15790
|
customEvent.bind = cell.dataset.bind;
|
|
15791
15791
|
|
|
15792
|
-
|
|
15792
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15793
15793
|
|
|
15794
15794
|
this.#owner.dispatchEvent(customEvent);
|
|
15795
15795
|
};
|
|
@@ -15800,12 +15800,12 @@ class ngCustomEvent
|
|
|
15800
15800
|
|
|
15801
15801
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15802
15802
|
const cell = e.target.closest("th,td");
|
|
15803
|
-
const eventType = e.detail == 1 ?
|
|
15803
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.HEADCELL_CLICK : ninegrid.EVENT.HEADCELL_DBL_CLICK;
|
|
15804
15804
|
|
|
15805
15805
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15806
15806
|
customEvent.col = cell.dataset.col;
|
|
15807
15807
|
|
|
15808
|
-
|
|
15808
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15809
15809
|
|
|
15810
15810
|
this.#owner.dispatchEvent(customEvent);
|
|
15811
15811
|
};
|
|
@@ -15816,12 +15816,12 @@ class ngCustomEvent
|
|
|
15816
15816
|
|
|
15817
15817
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15818
15818
|
const cell = e.target.closest("th,td");
|
|
15819
|
-
const eventType = e.detail == 1 ?
|
|
15819
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.FOOTCELL_CLICK : ninegrid.EVENT.FOOTCELL_DBL_CLICK;
|
|
15820
15820
|
|
|
15821
15821
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15822
15822
|
customEvent.col = cell.dataset.col;
|
|
15823
15823
|
|
|
15824
|
-
|
|
15824
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15825
15825
|
|
|
15826
15826
|
this.#owner.dispatchEvent(customEvent);
|
|
15827
15827
|
};
|
|
@@ -15969,7 +15969,7 @@ class ngData
|
|
|
15969
15969
|
this.source = v;
|
|
15970
15970
|
|
|
15971
15971
|
for (var i = 0; i < v.length; i++) {
|
|
15972
|
-
this.#records[i].__ng._[
|
|
15972
|
+
this.#records[i].__ng._[ninegrid.ROW.ID] = v[i].__ng._[ninegrid.ROW.ID];
|
|
15973
15973
|
//this.#records[i].__ninegrid.rowState = v[i].__ng.rowState;
|
|
15974
15974
|
|
|
15975
15975
|
this.#nextId = Math.max(this.#nextId, v[i].__ng.rowid);
|
|
@@ -15982,14 +15982,14 @@ class ngData
|
|
|
15982
15982
|
|
|
15983
15983
|
getId = (o) => {
|
|
15984
15984
|
|
|
15985
|
-
return o.__ng._[
|
|
15985
|
+
return o.__ng._[ninegrid.ROW.ID];
|
|
15986
15986
|
}
|
|
15987
15987
|
|
|
15988
15988
|
get default() {
|
|
15989
15989
|
|
|
15990
15990
|
return {
|
|
15991
15991
|
//rowid : this.nextId,//nextId + index,
|
|
15992
|
-
rowState:
|
|
15992
|
+
rowState: ninegrid.ROW_STATE.EMPTY,
|
|
15993
15993
|
deleted : false,
|
|
15994
15994
|
filtered: false,
|
|
15995
15995
|
pin : false,
|
|
@@ -16004,7 +16004,7 @@ class ngData
|
|
|
16004
16004
|
0, // INDEX
|
|
16005
16005
|
0, // ORDER
|
|
16006
16006
|
0, // VISIBLE_ROW
|
|
16007
|
-
|
|
16007
|
+
ninegrid.ROW_STATE.EMPTY, // STATE
|
|
16008
16008
|
false, // FILTER
|
|
16009
16009
|
false, // PIN
|
|
16010
16010
|
true, // EXPAND
|
|
@@ -16125,7 +16125,7 @@ class ngData
|
|
|
16125
16125
|
}
|
|
16126
16126
|
//var colnms = filterData.map(item => item.colnm);
|
|
16127
16127
|
|
|
16128
|
-
|
|
16128
|
+
ninegrid.querySelectorAll("ng-filter-button").forEach(v => {
|
|
16129
16129
|
v.filterData = null;
|
|
16130
16130
|
});
|
|
16131
16131
|
|
|
@@ -16134,7 +16134,7 @@ class ngData
|
|
|
16134
16134
|
this.#parent.owner.fields.indexOf(key);
|
|
16135
16135
|
|
|
16136
16136
|
//console.log(filterData);
|
|
16137
|
-
|
|
16137
|
+
ninegrid.querySelectorAll("ng-filter-button").forEach(v => {
|
|
16138
16138
|
//v.filterData = null;
|
|
16139
16139
|
//console.log(v);
|
|
16140
16140
|
//var b = v.colnms;
|
|
@@ -16165,14 +16165,14 @@ class ngData
|
|
|
16165
16165
|
#indexOf = (rec1, row, rec2) => {
|
|
16166
16166
|
const rowData = rec1[row];
|
|
16167
16167
|
|
|
16168
|
-
return rec2.findIndex(m => { return m.__ng._[
|
|
16168
|
+
return rec2.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == rowData.__ng._[ninegrid.ROW.ID]; });
|
|
16169
16169
|
};
|
|
16170
16170
|
|
|
16171
16171
|
moveRow = (row1, row2) => {
|
|
16172
16172
|
|
|
16173
16173
|
if (row1 == row2) return;
|
|
16174
16174
|
|
|
16175
|
-
|
|
16175
|
+
ninegrid.move(this.#parent.rawRecords, this.total.indexOf(row1), this.total.indexOf(row2));
|
|
16176
16176
|
this.resetRecords();
|
|
16177
16177
|
|
|
16178
16178
|
this.#parent.owner.dataManager.viewRecords.reset();
|
|
@@ -16216,7 +16216,7 @@ class ngData
|
|
|
16216
16216
|
if (td.length <= 0) return;
|
|
16217
16217
|
const col = td.eq(0)[0].dataset.col;
|
|
16218
16218
|
//var th = $(`thead th[data-col=${col}]`, this.#parent.owner.body).not(".col-indicator");
|
|
16219
|
-
const th =
|
|
16219
|
+
const th = ninegrid.j.querySelectorAll(`thead th[data-col="${col}"]:not(.col-indicator)`, this.#parent.owner.body);
|
|
16220
16220
|
|
|
16221
16221
|
th.removeClass("deleted").removeClass("added").removeClass("updated");
|
|
16222
16222
|
if (updateData.delete.length > 0) th.addClass("deleted");
|
|
@@ -16233,9 +16233,9 @@ class ngData
|
|
|
16233
16233
|
arr.forEach((o,i) => {
|
|
16234
16234
|
o.__ng = this.default;
|
|
16235
16235
|
o.__ng.rowid = this.nextId;
|
|
16236
|
-
o.__ng.rowState =
|
|
16236
|
+
o.__ng.rowState = ninegrid.ROW_STATE.INSERT;
|
|
16237
16237
|
|
|
16238
|
-
o.__ng._[
|
|
16238
|
+
o.__ng._[ninegrid.ROW.ID] = o.__ng.rowid;
|
|
16239
16239
|
});
|
|
16240
16240
|
|
|
16241
16241
|
this.onRowStateChanged();
|
|
@@ -16257,13 +16257,13 @@ class ngData
|
|
|
16257
16257
|
//this.#recordsNF.forEach((o,i) => { o.__ng._[ninegrid.ROW.INDEX] = i; });
|
|
16258
16258
|
//this.#recordsNF.filter(m => { return !m.__ng.deleted && !m.__ng.filtered && m.__ng.visible; } ).forEach((o,i) => { o.__ng._[ninegrid.ROW.ORDER] = i + 1; });
|
|
16259
16259
|
|
|
16260
|
-
this.#parent.rawRecords.forEach((o,i) => { o.__ng._[
|
|
16261
|
-
this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng.filtered && m.__ng.visible; } ).forEach((o,i) => { o.__ng._[
|
|
16260
|
+
this.#parent.rawRecords.forEach((o,i) => { o.__ng._[ninegrid.ROW.INDEX] = i; });
|
|
16261
|
+
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; });
|
|
16262
16262
|
|
|
16263
|
-
const arr = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && m.__ng._[
|
|
16264
|
-
arr.forEach((o,i) => { o.__ng._[
|
|
16263
|
+
const arr = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && m.__ng._[ninegrid.ROW.PIN]; } );
|
|
16264
|
+
arr.forEach((o,i) => { o.__ng._[ninegrid.ROW.VISIBLE_ROW] = (arr.length - i) * -1; });
|
|
16265
16265
|
|
|
16266
|
-
this.#records.forEach((o,i) => { o.__ng._[
|
|
16266
|
+
this.#records.forEach((o,i) => { o.__ng._[ninegrid.ROW.VISIBLE_ROW] = i; });
|
|
16267
16267
|
//!m.__ng.deleted && !m.__ng.pin && !m.__ng._[ninegrid.ROW.PIN] && !m.__ng.filtered && m.__ng.visible && m.__ng.paging;
|
|
16268
16268
|
|
|
16269
16269
|
};
|
|
@@ -16302,7 +16302,7 @@ class ngData
|
|
|
16302
16302
|
resetRecords = () => {
|
|
16303
16303
|
|
|
16304
16304
|
this.#recordsNF = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted } );
|
|
16305
|
-
this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[
|
|
16305
|
+
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; } );
|
|
16306
16306
|
//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; } );
|
|
16307
16307
|
|
|
16308
16308
|
this.resetIndex();
|
|
@@ -16318,7 +16318,7 @@ class ngData
|
|
|
16318
16318
|
};
|
|
16319
16319
|
|
|
16320
16320
|
for (const colnm of this.#owner.fields.get()) {
|
|
16321
|
-
o.v.push(
|
|
16321
|
+
o.v.push(ninegrid.nvl(json[colnm], "")); /** checklist: 숫자형식 체크해서 0으로 변경해야함 */
|
|
16322
16322
|
}
|
|
16323
16323
|
arr.push(o);
|
|
16324
16324
|
});
|
|
@@ -16354,7 +16354,7 @@ class ngData
|
|
|
16354
16354
|
|
|
16355
16355
|
getValidData = () => {
|
|
16356
16356
|
//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; } );
|
|
16357
|
-
if (this.#records.length == 0) this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[
|
|
16357
|
+
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; } );
|
|
16358
16358
|
return this.#records;
|
|
16359
16359
|
}
|
|
16360
16360
|
getValidDataNF = () => {
|
|
@@ -16367,7 +16367,7 @@ class ngData
|
|
|
16367
16367
|
|
|
16368
16368
|
|
|
16369
16369
|
conv = (arr) => {
|
|
16370
|
-
if (
|
|
16370
|
+
if (ninegrid.isNull(arr)) return arr;
|
|
16371
16371
|
|
|
16372
16372
|
if (Array.isArray(arr)) {
|
|
16373
16373
|
var r = [];
|
|
@@ -16398,7 +16398,7 @@ class ngData
|
|
|
16398
16398
|
}
|
|
16399
16399
|
}
|
|
16400
16400
|
conv2 = (arr) => {
|
|
16401
|
-
if (
|
|
16401
|
+
if (ninegrid.isNull(arr)) return arr;
|
|
16402
16402
|
|
|
16403
16403
|
if (Array.isArray(arr)) {
|
|
16404
16404
|
var r = [];
|
|
@@ -16449,11 +16449,11 @@ class ngData
|
|
|
16449
16449
|
*/
|
|
16450
16450
|
changeRowState = (state, fromIndex, toIndex) => {
|
|
16451
16451
|
const to = (v) => {
|
|
16452
|
-
if ([
|
|
16452
|
+
if ([ninegrid.ROW_STATE.EMPTY, ninegrid.ROW_STATE.NORMAL].includes(state)) v.__ng.o = {};
|
|
16453
16453
|
v.__ng.rowState = state;
|
|
16454
16454
|
};
|
|
16455
16455
|
|
|
16456
|
-
if (!state) state =
|
|
16456
|
+
if (!state) state = ninegrid.ROW_STATE.EMPTY;
|
|
16457
16457
|
if (!fromIndex && !toIndex) { fromIndex = 0; toIndex = this.count() - 1; }
|
|
16458
16458
|
if (!fromIndex) fromIndex = 0;
|
|
16459
16459
|
if (!toIndex) toIndex = fromIndex;//this.count() - 1;
|
|
@@ -16497,7 +16497,7 @@ class ngData
|
|
|
16497
16497
|
#dataChanged = (row, bind, oldValue, newValue) => {
|
|
16498
16498
|
if (oldValue == newValue) return;
|
|
16499
16499
|
|
|
16500
|
-
const customEvent = new CustomEvent(
|
|
16500
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.DATA_CHANGED, { bubbles: true, detail: {} });
|
|
16501
16501
|
customEvent.row = row;
|
|
16502
16502
|
customEvent.bind = bind;
|
|
16503
16503
|
customEvent.oldvalue = oldValue;
|
|
@@ -16543,15 +16543,15 @@ class ngData
|
|
|
16543
16543
|
|
|
16544
16544
|
this.#parent.rawRecords = this.#parent.rawRecords.concat(this.#defaultInsert(arr));
|
|
16545
16545
|
|
|
16546
|
-
const arr2 = this.#parent.rawRecords.map(m => { return m.__ng._[
|
|
16546
|
+
const arr2 = this.#parent.rawRecords.map(m => { return m.__ng._[ninegrid.ROW.ORIGIN_ORDER]; });
|
|
16547
16547
|
if (arr2.length > 0) {
|
|
16548
16548
|
const maxOrder = arr2.reduce( function (a, b) {
|
|
16549
16549
|
return a > b ? a : b;
|
|
16550
16550
|
});
|
|
16551
16551
|
|
|
16552
16552
|
this.#parent.rawRecords.forEach((o,i) => {
|
|
16553
|
-
if (o.__ng._[
|
|
16554
|
-
o.__ng._[
|
|
16553
|
+
if (o.__ng._[ninegrid.ROW.ORIGIN_ORDER] < 0) {
|
|
16554
|
+
o.__ng._[ninegrid.ROW.ORIGIN_ORDER] = maxOrder + 1 + i;
|
|
16555
16555
|
}
|
|
16556
16556
|
});
|
|
16557
16557
|
}
|
|
@@ -16559,7 +16559,7 @@ class ngData
|
|
|
16559
16559
|
this.resetRecords();
|
|
16560
16560
|
|
|
16561
16561
|
const row = this.count() - 1;
|
|
16562
|
-
if (!updateState) this.changeRowState(
|
|
16562
|
+
if (!updateState) this.changeRowState(ninegrid.ROW_STATE.EMPTY, row - arr.length + 1, row);
|
|
16563
16563
|
//this.#parent.owner.refresh();
|
|
16564
16564
|
this.#parent.viewRecords.reset();
|
|
16565
16565
|
|
|
@@ -16585,8 +16585,8 @@ class ngData
|
|
|
16585
16585
|
var arr = this.#json2Array(dataSource);
|
|
16586
16586
|
|
|
16587
16587
|
/** 후방 원순서 증가 */
|
|
16588
|
-
const originOrder = this.#parent.rawRecords[at].__ng._[
|
|
16589
|
-
this.#parent.rawRecords.filter(m => {return m.__ng._[
|
|
16588
|
+
const originOrder = this.#parent.rawRecords[at].__ng._[ninegrid.ROW.ORIGIN_ORDER];
|
|
16589
|
+
this.#parent.rawRecords.filter(m => {return m.__ng._[ninegrid.ROW.ORIGIN_ORDER] >= originOrder}).forEach(v => { v.__ng._[ninegrid.ROW.ORIGIN_ORDER] += arr.length; });
|
|
16590
16590
|
/**
|
|
16591
16591
|
this.#parent.rawRecords.forEach((o,i) => {
|
|
16592
16592
|
if (i >= at) {
|
|
@@ -16596,7 +16596,7 @@ class ngData
|
|
|
16596
16596
|
|
|
16597
16597
|
arr = this.#defaultInsert(arr);
|
|
16598
16598
|
arr.forEach((o,i) => {
|
|
16599
|
-
o.__ng._[
|
|
16599
|
+
o.__ng._[ninegrid.ROW.ORIGIN_ORDER] = originOrder + i;
|
|
16600
16600
|
});
|
|
16601
16601
|
|
|
16602
16602
|
this.#parent.rawRecords.splice(at, 0, ...arr);
|
|
@@ -16604,7 +16604,7 @@ class ngData
|
|
|
16604
16604
|
|
|
16605
16605
|
this.resetRecords();
|
|
16606
16606
|
|
|
16607
|
-
if (!updateState) this.changeRowState(
|
|
16607
|
+
if (!updateState) this.changeRowState(ninegrid.ROW_STATE.EMPTY, at, at + arr.length - 1);
|
|
16608
16608
|
|
|
16609
16609
|
//this.#parent.owner.refresh();
|
|
16610
16610
|
this.#parent.viewRecords.reset();
|
|
@@ -16616,11 +16616,11 @@ class ngData
|
|
|
16616
16616
|
|
|
16617
16617
|
var changed = false;
|
|
16618
16618
|
arr.sort((a,b) => {return b-a}).forEach(rowidx => {
|
|
16619
|
-
if (this.#records[rowidx].__ng.rowState ==
|
|
16620
|
-
|
|
16619
|
+
if (this.#records[rowidx].__ng.rowState == ninegrid.ROW_STATE.INSERT) {
|
|
16620
|
+
ninegrid.removeIf(this.#parent.rawRecords, item => { return item.__ng.rowid == this.#records[rowidx].__ng.rowid; } );
|
|
16621
16621
|
}
|
|
16622
16622
|
else {
|
|
16623
|
-
this.#parent.rawRecords.filter(item => { return item.__ng.rowid == this.#records[rowidx].__ng.rowid; } ).map(item => { item.__ng.deleted = true; item.__ng.rowState =
|
|
16623
|
+
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; });
|
|
16624
16624
|
changed = true;
|
|
16625
16625
|
}
|
|
16626
16626
|
});
|
|
@@ -16660,8 +16660,8 @@ class ngData
|
|
|
16660
16660
|
arr = [at];
|
|
16661
16661
|
}*/
|
|
16662
16662
|
else if (typeof at === "object") {
|
|
16663
|
-
const index = this.#records.findIndex(m => { return m.__ng._[
|
|
16664
|
-
if (index < 0) throw new Error(`${at.__ng._[
|
|
16663
|
+
const index = this.#records.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == at.__ng._[ninegrid.ROW.ID]; });
|
|
16664
|
+
if (index < 0) throw new Error(`${at.__ng._[ninegrid.ROW.ID]} not found.`);
|
|
16665
16665
|
arr = [index];
|
|
16666
16666
|
}
|
|
16667
16667
|
else {
|
|
@@ -16682,7 +16682,7 @@ class ngData
|
|
|
16682
16682
|
deleteFromId = (rowId) => {
|
|
16683
16683
|
|
|
16684
16684
|
var rec = this.records();
|
|
16685
|
-
const at = rec.findIndex(m => { return m.__ng._[
|
|
16685
|
+
const at = rec.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == rowId; });
|
|
16686
16686
|
|
|
16687
16687
|
if (at < 0) throw new Error(`${rowId} not found.`);
|
|
16688
16688
|
|
|
@@ -16693,7 +16693,7 @@ class ngData
|
|
|
16693
16693
|
#update = (rec, o, at) => {
|
|
16694
16694
|
|
|
16695
16695
|
if (typeof at === "undefined") {
|
|
16696
|
-
at = rec.findIndex(m => { return m.__ng._[
|
|
16696
|
+
at = rec.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == o.__ng._[ninegrid.ROW.ID]; });
|
|
16697
16697
|
}
|
|
16698
16698
|
else if (typeof at === "number" || typeof at === "string") {
|
|
16699
16699
|
at = parseInt(at);
|
|
@@ -16721,7 +16721,7 @@ class ngData
|
|
|
16721
16721
|
rowData.v[COL_IDX] = newValue;
|
|
16722
16722
|
|
|
16723
16723
|
if (oldValue != newValue){
|
|
16724
|
-
rowData.__ng.rowState =
|
|
16724
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16725
16725
|
changed = true;
|
|
16726
16726
|
|
|
16727
16727
|
this.#dataChanged(at, colnm, oldValue, newValue);
|
|
@@ -16771,12 +16771,12 @@ class ngData
|
|
|
16771
16771
|
//var rowData = records(index);
|
|
16772
16772
|
var oldValue = rowData.v[COL_IDX];
|
|
16773
16773
|
|
|
16774
|
-
if (rowData.v[COL_IDX] != value && rowData.__ng.rowState !=
|
|
16774
|
+
if (rowData.v[COL_IDX] != value && rowData.__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
16775
16775
|
//if (!rowData.__ng.org) rowData.__ng.org = {};
|
|
16776
16776
|
if (!rowData.__ng.o.hasOwnProperty(colnm)) rowData.__ng.o[colnm] = oldValue;
|
|
16777
16777
|
|
|
16778
16778
|
if (updateRowState) {
|
|
16779
|
-
rowData.__ng.rowState =
|
|
16779
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16780
16780
|
this.onRowStateChanged(); // thead row-state marking
|
|
16781
16781
|
}
|
|
16782
16782
|
}
|
|
@@ -16813,11 +16813,11 @@ class ngData
|
|
|
16813
16813
|
//var rowData = records(index);
|
|
16814
16814
|
rowData.v[colIndex];
|
|
16815
16815
|
|
|
16816
|
-
if (rowData.v[colIndex] != value && rowData.__ng.rowState !=
|
|
16816
|
+
if (rowData.v[colIndex] != value && rowData.__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
16817
16817
|
//if (!rowData.__ng.o.hasOwnProperty(colnm)) rowData.__ng.o[colnm] = oldValue;
|
|
16818
16818
|
|
|
16819
16819
|
if (updateRowState) {
|
|
16820
|
-
rowData.__ng.rowState =
|
|
16820
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16821
16821
|
}
|
|
16822
16822
|
}
|
|
16823
16823
|
|
|
@@ -16838,14 +16838,14 @@ class ngData
|
|
|
16838
16838
|
}
|
|
16839
16839
|
else {
|
|
16840
16840
|
return {
|
|
16841
|
-
insert: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState ==
|
|
16842
|
-
update: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState ==
|
|
16843
|
-
delete: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState ==
|
|
16841
|
+
insert: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.INSERT; } ) ),
|
|
16842
|
+
update: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.UPDATE; } ) ),
|
|
16843
|
+
delete: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.DELETE; } ) ),
|
|
16844
16844
|
};
|
|
16845
16845
|
}
|
|
16846
16846
|
};
|
|
16847
16847
|
isChanged = () => {
|
|
16848
|
-
const arr = this.#parent.rawRecords.filter(m => { return m.__ng.rowState ==
|
|
16848
|
+
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; } );
|
|
16849
16849
|
return arr.length > 0;
|
|
16850
16850
|
}
|
|
16851
16851
|
|
|
@@ -16864,7 +16864,7 @@ class ngData
|
|
|
16864
16864
|
|
|
16865
16865
|
if (!records || records.length <= 0) return;
|
|
16866
16866
|
|
|
16867
|
-
if (
|
|
16867
|
+
if (ninegrid.isNull(at)) {
|
|
16868
16868
|
return this.conv2(records);
|
|
16869
16869
|
}
|
|
16870
16870
|
|
|
@@ -16895,10 +16895,10 @@ class ngData
|
|
|
16895
16895
|
* return : 모든 행의 데이타 값을 Array 배열로 반환
|
|
16896
16896
|
*/
|
|
16897
16897
|
records = (at) => {
|
|
16898
|
-
return (
|
|
16898
|
+
return (ninegrid.isNull(at)) ? this.getValidData() : this.getValidData(at);
|
|
16899
16899
|
}
|
|
16900
16900
|
recordsNF = (at) => {
|
|
16901
|
-
return (
|
|
16901
|
+
return (ninegrid.isNull(at)) ? this.getValidDataNF() : this.getValidDataNF(at);
|
|
16902
16902
|
}
|
|
16903
16903
|
|
|
16904
16904
|
/**
|
|
@@ -16965,11 +16965,11 @@ class ngData
|
|
|
16965
16965
|
|
|
16966
16966
|
mid = parseInt((start+end)/2);
|
|
16967
16967
|
|
|
16968
|
-
if (target === arr[mid].__ng._[
|
|
16968
|
+
if (target === arr[mid].__ng._[ninegrid.ROW.INDEX]) {
|
|
16969
16969
|
return mid;
|
|
16970
16970
|
}
|
|
16971
16971
|
else {
|
|
16972
|
-
if (target < arr[mid].__ng._[
|
|
16972
|
+
if (target < arr[mid].__ng._[ninegrid.ROW.INDEX]){
|
|
16973
16973
|
end = mid - 1;
|
|
16974
16974
|
}
|
|
16975
16975
|
else {
|
|
@@ -17154,8 +17154,8 @@ class ngDataManager
|
|
|
17154
17154
|
this.getColumn = (rowidx,colnm) => { return this.data.get(rowidx, colnm); };
|
|
17155
17155
|
this.setColumn = (rowidx,colnm,v) => {
|
|
17156
17156
|
rowidx = parseInt(rowidx);
|
|
17157
|
-
if (this.data.get(rowidx)[colnm] != v && this.data.get(rowidx).__ng.rowState !=
|
|
17158
|
-
this.data.get(rowidx).__ng.rowState =
|
|
17157
|
+
if (this.data.get(rowidx)[colnm] != v && this.data.get(rowidx).__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
17158
|
+
this.data.get(rowidx).__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
17159
17159
|
this.data.onRowStateChanged();
|
|
17160
17160
|
}
|
|
17161
17161
|
this.setColumnSilent(rowidx,colnm,v);
|
|
@@ -17239,8 +17239,8 @@ class ngExpandIcon extends HTMLElement
|
|
|
17239
17239
|
|
|
17240
17240
|
this.shadowRoot.innerHTML = `
|
|
17241
17241
|
<style>
|
|
17242
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
17243
|
-
${
|
|
17242
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandIcon.css";
|
|
17243
|
+
${ninegrid.getCustomPath(this,"ngExpandIcon.css")}
|
|
17244
17244
|
|
|
17245
17245
|
:host {
|
|
17246
17246
|
width: ${width};
|
|
@@ -17268,7 +17268,7 @@ class ngExpandIcon extends HTMLElement
|
|
|
17268
17268
|
case "rect":
|
|
17269
17269
|
case "check":
|
|
17270
17270
|
case "svg":
|
|
17271
|
-
|
|
17271
|
+
ninegrid.j.querySelectorAll("circle,rect,svg", this.shadowRoot).attr("fill", this.getAttribute(entry.attributeName));
|
|
17272
17272
|
break;
|
|
17273
17273
|
}
|
|
17274
17274
|
break;
|
|
@@ -17279,7 +17279,7 @@ class ngExpandIcon extends HTMLElement
|
|
|
17279
17279
|
this.shadowRoot.querySelector("div").innerHTML = this.getAttribute(entry.attributeName);
|
|
17280
17280
|
break;
|
|
17281
17281
|
case "img":
|
|
17282
|
-
|
|
17282
|
+
ninegrid.j.querySelectorAll("img", this.shadowRoot).attr("src", this.getAttribute(entry.attributeName));
|
|
17283
17283
|
break;
|
|
17284
17284
|
}
|
|
17285
17285
|
break;
|
|
@@ -17305,8 +17305,8 @@ class ngExpandCheck extends HTMLElement
|
|
|
17305
17305
|
|
|
17306
17306
|
this.shadowRoot.innerHTML = `
|
|
17307
17307
|
<style>
|
|
17308
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
17309
|
-
${
|
|
17308
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandCheck.css";
|
|
17309
|
+
${ninegrid.getCustomPath(this,"ngExpandCheck.css")}
|
|
17310
17310
|
</style>
|
|
17311
17311
|
|
|
17312
17312
|
<input type="checkbox" />
|
|
@@ -17326,8 +17326,8 @@ class ngExpandButton extends HTMLElement
|
|
|
17326
17326
|
|
|
17327
17327
|
this.shadowRoot.innerHTML = `
|
|
17328
17328
|
<style>
|
|
17329
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
17330
|
-
${
|
|
17329
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandButton.css";
|
|
17330
|
+
${ninegrid.getCustomPath(this,"ngExpandButton.css")}
|
|
17331
17331
|
</style>
|
|
17332
17332
|
|
|
17333
17333
|
<button>...</button>
|
|
@@ -17361,7 +17361,7 @@ class ngExportExcel
|
|
|
17361
17361
|
afterFunc : () => {},
|
|
17362
17362
|
};
|
|
17363
17363
|
|
|
17364
|
-
var fileName =
|
|
17364
|
+
var fileName = ninegrid.nvl(_option.fileName, "temp");
|
|
17365
17365
|
|
|
17366
17366
|
const _download = async (workbook, fileName) => {
|
|
17367
17367
|
|
|
@@ -17437,7 +17437,7 @@ class ngExportExcel
|
|
|
17437
17437
|
|
|
17438
17438
|
var v = "";
|
|
17439
17439
|
|
|
17440
|
-
if (!
|
|
17440
|
+
if (!ninegrid.isNull(td.dataset.expr)) {
|
|
17441
17441
|
try {
|
|
17442
17442
|
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17443
17443
|
v = this.#owner.exprFunction(td.dataset.expr).call(this, rowData, rowIndex);
|
|
@@ -17446,7 +17446,7 @@ class ngExportExcel
|
|
|
17446
17446
|
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17447
17447
|
}
|
|
17448
17448
|
}
|
|
17449
|
-
else if (!
|
|
17449
|
+
else if (!ninegrid.isNull(td.dataset.bind)) {
|
|
17450
17450
|
//const COL_IDX = this.#owner.fields.indexOf(td.dataset.bind);
|
|
17451
17451
|
//v = rowData.v[COL_IDX] || "";
|
|
17452
17452
|
v = rowData[td.dataset.bind] || "";
|
|
@@ -17941,14 +17941,14 @@ class ngFiltering
|
|
|
17941
17941
|
}
|
|
17942
17942
|
//var colnms = filterData.map(item => item.colnm);
|
|
17943
17943
|
|
|
17944
|
-
|
|
17944
|
+
ninegrid.querySelectorAll("ng-filter-button").forEach(v => {
|
|
17945
17945
|
v.filterData = null;
|
|
17946
17946
|
});
|
|
17947
17947
|
|
|
17948
17948
|
for (let key in jsonOption) {
|
|
17949
17949
|
const arr = jsonOption[key];
|
|
17950
17950
|
|
|
17951
|
-
|
|
17951
|
+
ninegrid.querySelectorAll("ng-filter-button").forEach(v => {
|
|
17952
17952
|
//console.log(v.colnms);
|
|
17953
17953
|
|
|
17954
17954
|
v.colnms.forEach(colnm => {
|
|
@@ -17995,7 +17995,7 @@ class ngFilterButton extends HTMLElement
|
|
|
17995
17995
|
};
|
|
17996
17996
|
set filterData(v) {
|
|
17997
17997
|
this.#filterData = v;
|
|
17998
|
-
v && v.length > 0 ?
|
|
17998
|
+
v && v.length > 0 ? ninegrid.j.querySelectorAll(this).addClass('filtered') : ninegrid.j.querySelectorAll(this).removeClass('filtered');
|
|
17999
17999
|
};
|
|
18000
18000
|
|
|
18001
18001
|
#onClick = (e) => {
|
|
@@ -18040,8 +18040,8 @@ class ngFilterPanel extends HTMLElement
|
|
|
18040
18040
|
|
|
18041
18041
|
this.shadowRoot.innerHTML = `
|
|
18042
18042
|
<style>
|
|
18043
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18044
|
-
${
|
|
18043
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngFilterPanel.css";
|
|
18044
|
+
${ninegrid.getCustomPath(this,"ngFilterPanel.css")}
|
|
18045
18045
|
</style>
|
|
18046
18046
|
|
|
18047
18047
|
<div class="head">
|
|
@@ -18087,7 +18087,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18087
18087
|
var grd = this.shadowRoot.querySelector("nine-grid");
|
|
18088
18088
|
|
|
18089
18089
|
//ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
18090
|
-
|
|
18090
|
+
ninegrid.j.querySelectorAll(this.#target.owner).addClass("loading");
|
|
18091
18091
|
|
|
18092
18092
|
|
|
18093
18093
|
setTimeout(() => {
|
|
@@ -18178,7 +18178,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18178
18178
|
|
|
18179
18179
|
//this.#target.owner.paging.reset();
|
|
18180
18180
|
|
|
18181
|
-
|
|
18181
|
+
ninegrid.j.querySelectorAll(this.#target.owner).removeClass("loading");
|
|
18182
18182
|
|
|
18183
18183
|
});
|
|
18184
18184
|
|
|
@@ -18205,7 +18205,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18205
18205
|
var grd = this.shadowRoot.querySelector("nine-grid");
|
|
18206
18206
|
|
|
18207
18207
|
|
|
18208
|
-
|
|
18208
|
+
ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
18209
18209
|
|
|
18210
18210
|
|
|
18211
18211
|
var data = grd.dataManager.rawRecords;
|
|
@@ -18253,7 +18253,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18253
18253
|
|
|
18254
18254
|
$(this).show();
|
|
18255
18255
|
|
|
18256
|
-
|
|
18256
|
+
ninegrid.j.querySelectorAll(this).addClass("loading");
|
|
18257
18257
|
|
|
18258
18258
|
$(this.shadowRoot).find("input[type=text]").val("");
|
|
18259
18259
|
|
|
@@ -18315,7 +18315,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18315
18315
|
var exprFunc = (expr) ? owner.exprFunction(expr) : null;
|
|
18316
18316
|
*/
|
|
18317
18317
|
|
|
18318
|
-
const cell =
|
|
18318
|
+
const cell = ninegrid.j.querySelectorAll(`[data-col="${col}"][data-bind="${colnm}"]`, owner.tmpl).elem();
|
|
18319
18319
|
const expr = cell.getAttribute("data-expr");
|
|
18320
18320
|
const exprFunc = (expr) ? owner.exprFunction(expr) : null;
|
|
18321
18321
|
|
|
@@ -18353,7 +18353,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18353
18353
|
|
|
18354
18354
|
this.shadowRoot.querySelector("input").focus();
|
|
18355
18355
|
|
|
18356
|
-
|
|
18356
|
+
ninegrid.j.querySelectorAll(this).removeClass("loading");
|
|
18357
18357
|
});
|
|
18358
18358
|
};
|
|
18359
18359
|
}
|
|
@@ -18378,8 +18378,8 @@ class ngFoot extends HTMLElement
|
|
|
18378
18378
|
|
|
18379
18379
|
this.shadowRoot.innerHTML = `
|
|
18380
18380
|
<style>
|
|
18381
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18382
|
-
${
|
|
18381
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngFoot.css";
|
|
18382
|
+
${ninegrid.getCustomPath(this,"ngFoot.css")}
|
|
18383
18383
|
</style>
|
|
18384
18384
|
|
|
18385
18385
|
<ng-layout></ng-layout>
|
|
@@ -18426,7 +18426,7 @@ class ngLayout extends HTMLElement
|
|
|
18426
18426
|
if (this.#tables.length <= 1) $(this.#wrap).hide();
|
|
18427
18427
|
|
|
18428
18428
|
//$("button", this.#wrap).eq(0).addClass("ng-active");
|
|
18429
|
-
|
|
18429
|
+
ninegrid.j.querySelectorAll(this.#wrap.querySelector("button")).addClass("ng-active");
|
|
18430
18430
|
|
|
18431
18431
|
$("button", this.#wrap).on("click", this.#onClick);
|
|
18432
18432
|
};
|
|
@@ -18449,7 +18449,7 @@ class ngLayout extends HTMLElement
|
|
|
18449
18449
|
|
|
18450
18450
|
#onClick = e => {
|
|
18451
18451
|
|
|
18452
|
-
if (
|
|
18452
|
+
if (ninegrid.j.querySelectorAll(e.currentTarget).hasClass("ng-active")) return;
|
|
18453
18453
|
|
|
18454
18454
|
const oldIndex = this.#at;
|
|
18455
18455
|
|
|
@@ -18457,10 +18457,10 @@ class ngLayout extends HTMLElement
|
|
|
18457
18457
|
|
|
18458
18458
|
this.#owner.changeRayout(this.#at);
|
|
18459
18459
|
|
|
18460
|
-
|
|
18461
|
-
|
|
18460
|
+
ninegrid.j.querySelectorAll("button", this.#wrap).removeClass("ng-active");
|
|
18461
|
+
ninegrid.j.querySelectorAll(e.currentTarget).addClass("ng-active");
|
|
18462
18462
|
|
|
18463
|
-
var customEvent = new CustomEvent(
|
|
18463
|
+
var customEvent = new CustomEvent(ninegrid.EVENT.LAYOUT_CHANGED, { bubbles: true, detail: {} });
|
|
18464
18464
|
customEvent.oldIndex = oldIndex;
|
|
18465
18465
|
customEvent.newIndex = this.#at;
|
|
18466
18466
|
|
|
@@ -18485,12 +18485,12 @@ class ngHead extends HTMLElement
|
|
|
18485
18485
|
|
|
18486
18486
|
this.#owner = this.getRootNode().host;
|
|
18487
18487
|
|
|
18488
|
-
if (
|
|
18488
|
+
if (ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) return;
|
|
18489
18489
|
|
|
18490
18490
|
this.shadowRoot.innerHTML = `
|
|
18491
18491
|
<style>
|
|
18492
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18493
|
-
${
|
|
18492
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngHead.css";
|
|
18493
|
+
${ninegrid.getCustomPath(this,"ngHead.css")}
|
|
18494
18494
|
</style>
|
|
18495
18495
|
|
|
18496
18496
|
<ng-menu></ng-menu>
|
|
@@ -18730,8 +18730,8 @@ class ngImg extends ngCellEx
|
|
|
18730
18730
|
|
|
18731
18731
|
this.shadowRoot.innerHTML = `
|
|
18732
18732
|
<style>
|
|
18733
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18734
|
-
${
|
|
18733
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngImg.css";
|
|
18734
|
+
${ninegrid.getCustomPath(this,"ngImg.css")}
|
|
18735
18735
|
|
|
18736
18736
|
img {
|
|
18737
18737
|
border: ${border};
|
|
@@ -18796,8 +18796,8 @@ class ngSvg extends ngCellEx
|
|
|
18796
18796
|
|
|
18797
18797
|
this.shadowRoot.innerHTML = `
|
|
18798
18798
|
<style>
|
|
18799
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18800
|
-
${
|
|
18799
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngSvg.css";
|
|
18800
|
+
${ninegrid.getCustomPath(this,"ngSvg.css")}
|
|
18801
18801
|
|
|
18802
18802
|
div {
|
|
18803
18803
|
border: ${border};
|
|
@@ -18934,8 +18934,8 @@ class ngInfo extends HTMLElement
|
|
|
18934
18934
|
|
|
18935
18935
|
this.shadowRoot.innerHTML = `
|
|
18936
18936
|
<style>
|
|
18937
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18938
|
-
${
|
|
18937
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInfo.css";
|
|
18938
|
+
${ninegrid.getCustomPath(this,"ngInfo.css")}
|
|
18939
18939
|
</style>
|
|
18940
18940
|
|
|
18941
18941
|
<svg class="icon" xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 16 16">
|
|
@@ -19001,8 +19001,8 @@ class ngInputColor extends ngEditableEx
|
|
|
19001
19001
|
|
|
19002
19002
|
this.shadowRoot.innerHTML = `
|
|
19003
19003
|
<style>
|
|
19004
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
19005
|
-
${
|
|
19004
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputColor.css";
|
|
19005
|
+
${ninegrid.getCustomPath(this,"ngInputColor.css")}
|
|
19006
19006
|
</style>
|
|
19007
19007
|
|
|
19008
19008
|
<input type="color" required />
|
|
@@ -19042,12 +19042,12 @@ class ngInputColor extends ngEditableEx
|
|
|
19042
19042
|
dataRefresh = (v) => {
|
|
19043
19043
|
|
|
19044
19044
|
if (this.#isValidColor(this.value)) {
|
|
19045
|
-
this.#target.value =
|
|
19046
|
-
|
|
19045
|
+
this.#target.value = ninegrid.nvl(this.value, "#ffffff");
|
|
19046
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
19047
19047
|
}
|
|
19048
19048
|
else {
|
|
19049
19049
|
this.#target.value = "#ffffff";
|
|
19050
|
-
|
|
19050
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
19051
19051
|
}
|
|
19052
19052
|
|
|
19053
19053
|
this.#target.setAttribute("title", this.value);
|
|
@@ -19057,7 +19057,7 @@ class ngInputColor extends ngEditableEx
|
|
|
19057
19057
|
|
|
19058
19058
|
#isValidColor = (v) => {
|
|
19059
19059
|
|
|
19060
|
-
if (
|
|
19060
|
+
if (ninegrid.isNull(v)) return true;
|
|
19061
19061
|
|
|
19062
19062
|
if (typeof v !== "string" || v.length != 7 || !v.startsWith("#")) return false;
|
|
19063
19063
|
|
|
@@ -19096,8 +19096,8 @@ class ngInputDate extends ngEditableEx
|
|
|
19096
19096
|
|
|
19097
19097
|
this.shadowRoot.innerHTML = `
|
|
19098
19098
|
<style>
|
|
19099
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
19100
|
-
${
|
|
19099
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputDate.css";
|
|
19100
|
+
${ninegrid.getCustomPath(this,"ngInputDate.css")}
|
|
19101
19101
|
|
|
19102
19102
|
input {
|
|
19103
19103
|
--height: ${height}px;
|
|
@@ -19174,10 +19174,10 @@ class ngInputDate extends ngEditableEx
|
|
|
19174
19174
|
this.#target.value = v;
|
|
19175
19175
|
|
|
19176
19176
|
if (this.#isValidDate(v)) {
|
|
19177
|
-
|
|
19177
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
19178
19178
|
}
|
|
19179
19179
|
else {
|
|
19180
|
-
|
|
19180
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
19181
19181
|
}
|
|
19182
19182
|
|
|
19183
19183
|
if (!a) this.reset();
|
|
@@ -19185,7 +19185,7 @@ class ngInputDate extends ngEditableEx
|
|
|
19185
19185
|
|
|
19186
19186
|
#isValidDate = (v) => {
|
|
19187
19187
|
|
|
19188
|
-
if (
|
|
19188
|
+
if (ninegrid.isNull(v)) return true;
|
|
19189
19189
|
|
|
19190
19190
|
if (typeof v !== "string") return false;
|
|
19191
19191
|
|
|
@@ -19305,8 +19305,8 @@ class ngInputText extends ngEditableEx
|
|
|
19305
19305
|
|
|
19306
19306
|
this.shadowRoot.innerHTML = `
|
|
19307
19307
|
<style>
|
|
19308
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
19309
|
-
${
|
|
19308
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputText.css";
|
|
19309
|
+
${ninegrid.getCustomPath(this,"ngInputText.css")}
|
|
19310
19310
|
</style>
|
|
19311
19311
|
|
|
19312
19312
|
<input type="text"
|
|
@@ -19337,9 +19337,9 @@ class ngInputText extends ngEditableEx
|
|
|
19337
19337
|
if (e.target.selectionStart == e.target.selectionEnd) {
|
|
19338
19338
|
if (this.#maxbyte) {
|
|
19339
19339
|
|
|
19340
|
-
if (
|
|
19340
|
+
if (ninegrid.getByteLength(e.target.value) >= Number(this.#maxbyte)) {
|
|
19341
19341
|
|
|
19342
|
-
e.target.value =
|
|
19342
|
+
e.target.value = ninegrid.cut(e.target.value, Number(this.#maxbyte));
|
|
19343
19343
|
|
|
19344
19344
|
this.value = e.target.value;
|
|
19345
19345
|
}
|
|
@@ -19378,7 +19378,7 @@ class ngInputText extends ngEditableEx
|
|
|
19378
19378
|
this.#target.value = this.value;
|
|
19379
19379
|
|
|
19380
19380
|
|
|
19381
|
-
|
|
19381
|
+
ninegrid.j.querySelectorAll(this.#target).removeClass("invalid");
|
|
19382
19382
|
|
|
19383
19383
|
if (this.#type == "number") {
|
|
19384
19384
|
|
|
@@ -19386,18 +19386,18 @@ class ngInputText extends ngEditableEx
|
|
|
19386
19386
|
this.#max && Number(this.#target.value) > Number(this.#max) ||
|
|
19387
19387
|
this.#min && Number(this.#target.value) < Number(this.#min)
|
|
19388
19388
|
) {
|
|
19389
|
-
|
|
19389
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19390
19390
|
}
|
|
19391
19391
|
else if (this.#scale) {
|
|
19392
19392
|
if (this.#target.value.indexOf('.') >= 0 && this.#target.value.substring(this.#target.value.indexOf('.')+1).length > Number(this.#scale) ) {
|
|
19393
|
-
|
|
19393
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19394
19394
|
}
|
|
19395
19395
|
}
|
|
19396
19396
|
}
|
|
19397
19397
|
|
|
19398
19398
|
|
|
19399
|
-
if (this.#maxbyte &&
|
|
19400
|
-
|
|
19399
|
+
if (this.#maxbyte && ninegrid.getByteLength(this.value) > Number(this.#maxbyte)) {
|
|
19400
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19401
19401
|
}
|
|
19402
19402
|
|
|
19403
19403
|
if (!v) this.reset();
|
|
@@ -19439,7 +19439,7 @@ class ngInputText extends ngEditableEx
|
|
|
19439
19439
|
}
|
|
19440
19440
|
|
|
19441
19441
|
|
|
19442
|
-
if (this.#maxbyte &&
|
|
19442
|
+
if (this.#maxbyte && ninegrid.getByteLength(e.target.value) >= Number(this.#maxbyte) && e.target.selectionStart == e.target.selectionEnd) e.preventDefault();
|
|
19443
19443
|
}
|
|
19444
19444
|
}
|
|
19445
19445
|
|
|
@@ -19533,7 +19533,7 @@ class ngMatrixManager
|
|
|
19533
19533
|
var subrow = matrixRow % this.#owner.template.length;
|
|
19534
19534
|
//matrixRow += this.#owner.dataManager.viewRecords.rawIndex * this.#owner.template.length;
|
|
19535
19535
|
|
|
19536
|
-
var rows =
|
|
19536
|
+
var rows = ninegrid.decode(group, "head", this.#headRows, "foot", this.#footRows, this.#bodyRows);
|
|
19537
19537
|
var idx = rows.findIndex(o => o.rowid == rowid && o.subrow == subrow);
|
|
19538
19538
|
|
|
19539
19539
|
|
|
@@ -19575,7 +19575,7 @@ class ngMatrixManager
|
|
|
19575
19575
|
//matrixRow += this.#owner.dataManager.viewRecords.rawIndex * this.#owner.template.length;
|
|
19576
19576
|
|
|
19577
19577
|
|
|
19578
|
-
var rows =
|
|
19578
|
+
var rows = ninegrid.decode(group, "head", this.#headRows, "foot", this.#footRows, this.#bodyRows);
|
|
19579
19579
|
var idx = rows.findIndex(o => o.rowid == rowid && o.subrow == subrow);
|
|
19580
19580
|
|
|
19581
19581
|
|
|
@@ -19625,7 +19625,7 @@ class ngMaxPopup extends HTMLElement
|
|
|
19625
19625
|
|
|
19626
19626
|
this.shadowRoot.innerHTML = `
|
|
19627
19627
|
<style>
|
|
19628
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
19628
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
19629
19629
|
:host {
|
|
19630
19630
|
}
|
|
19631
19631
|
nine-grid {
|
|
@@ -19671,7 +19671,7 @@ class ngMaxPopup extends HTMLElement
|
|
|
19671
19671
|
|
|
19672
19672
|
e.stopImmediatePropagation();
|
|
19673
19673
|
|
|
19674
|
-
|
|
19674
|
+
ninegrid.confirm("There is changed data.\nDo you want to save it?", "SAVE", {"class": "rgb", "true-text": "Yes", "false-text": "No", }).then(result => {
|
|
19675
19675
|
|
|
19676
19676
|
if (result) {
|
|
19677
19677
|
$(".apply", this.shadowRoot).trigger("click");
|
|
@@ -19775,34 +19775,34 @@ class ngMenu extends HTMLElement
|
|
|
19775
19775
|
"select-type": {
|
|
19776
19776
|
name: 'select type',
|
|
19777
19777
|
items: {
|
|
19778
|
-
[`select-type-${
|
|
19779
|
-
[`select-type-${
|
|
19780
|
-
[`select-type-${
|
|
19781
|
-
[`select-type-${
|
|
19782
|
-
[`select-type-${
|
|
19783
|
-
[`select-type-${
|
|
19784
|
-
[`select-type-${
|
|
19778
|
+
[`select-type-${ninegrid.SELECTTYPE.ROW}`] : { name: "row", className: `select-type select-type-${ninegrid.SELECTTYPE.ROW}` },
|
|
19779
|
+
[`select-type-${ninegrid.SELECTTYPE.ROWS}`]: { name: "multi row", className: `select-type select-type-${ninegrid.SELECTTYPE.ROWS}`},
|
|
19780
|
+
[`select-type-${ninegrid.SELECTTYPE.COL}`] : { name: "column", className: `select-type select-type-${ninegrid.SELECTTYPE.COL}` },
|
|
19781
|
+
[`select-type-${ninegrid.SELECTTYPE.COLS}`]: { name: "multi column", className: `select-type select-type-${ninegrid.SELECTTYPE.COLS}`},
|
|
19782
|
+
[`select-type-${ninegrid.SELECTTYPE.CELL}`]: { name: "cell", className: `select-type select-type-${ninegrid.SELECTTYPE.CELL}`},
|
|
19783
|
+
[`select-type-${ninegrid.SELECTTYPE.AREA}`]: { name: "area", className: `select-type select-type-${ninegrid.SELECTTYPE.AREA}`},
|
|
19784
|
+
[`select-type-${ninegrid.SELECTTYPE.NONE}`]: { name: "none", className: `select-type select-type-${ninegrid.SELECTTYPE.NONE}`},
|
|
19785
19785
|
},
|
|
19786
19786
|
},
|
|
19787
19787
|
"paging-type": {
|
|
19788
19788
|
name: 'paging type',
|
|
19789
19789
|
items: {
|
|
19790
|
-
[`paging-type-${
|
|
19791
|
-
[`paging-type-${
|
|
19792
|
-
[`paging-type-${
|
|
19790
|
+
[`paging-type-${ninegrid.PAGINGTYPE.NONE}`] : { name: "none", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.NONE}` },
|
|
19791
|
+
[`paging-type-${ninegrid.PAGINGTYPE.CLIENT}`] : { name: "client", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.CLIENT}` },
|
|
19792
|
+
[`paging-type-${ninegrid.PAGINGTYPE.SERVER}`] : { name: "server", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.SERVER}` },
|
|
19793
19793
|
"paging-count": {
|
|
19794
19794
|
name: "entries per page",
|
|
19795
19795
|
items: {
|
|
19796
|
-
[`paging-count-${
|
|
19797
|
-
[`paging-count-${
|
|
19798
|
-
[`paging-count-${
|
|
19799
|
-
[`paging-count-${
|
|
19800
|
-
[`paging-count-${
|
|
19801
|
-
[`paging-count-${
|
|
19802
|
-
[`paging-count-${
|
|
19803
|
-
[`paging-count-${
|
|
19804
|
-
[`paging-count-${
|
|
19805
|
-
[`paging-count-${
|
|
19796
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.AUTO}`] : { name: "auto", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.AUTO}` },
|
|
19797
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_1}`] : { name: "1", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_1}` },
|
|
19798
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_5}`] : { name: "5", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_5}` },
|
|
19799
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_10}`] : { name: "10", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_10}` },
|
|
19800
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_20}`] : { name: "20", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_20}` },
|
|
19801
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_30}`] : { name: "30", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_30}` },
|
|
19802
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_50}`] : { name: "50", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_50}` },
|
|
19803
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_100}`] : { name: "100", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_100}` },
|
|
19804
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}`] : { name: "1000", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}` },
|
|
19805
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`] : { name: "10000", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`},
|
|
19806
19806
|
},
|
|
19807
19807
|
},
|
|
19808
19808
|
},
|
|
@@ -19846,13 +19846,13 @@ class ngMenu extends HTMLElement
|
|
|
19846
19846
|
this.#owner.filtering.isFiltering() ? this.#owner.filtering.off() : this.#owner.filtering.on();
|
|
19847
19847
|
break;
|
|
19848
19848
|
|
|
19849
|
-
case `select-type-${
|
|
19850
|
-
case `select-type-${
|
|
19851
|
-
case `select-type-${
|
|
19852
|
-
case `select-type-${
|
|
19853
|
-
case `select-type-${
|
|
19854
|
-
case `select-type-${
|
|
19855
|
-
case `select-type-${
|
|
19849
|
+
case `select-type-${ninegrid.SELECTTYPE.ROW}`:
|
|
19850
|
+
case `select-type-${ninegrid.SELECTTYPE.ROWS}`:
|
|
19851
|
+
case `select-type-${ninegrid.SELECTTYPE.COL}`:
|
|
19852
|
+
case `select-type-${ninegrid.SELECTTYPE.COLS}`:
|
|
19853
|
+
case `select-type-${ninegrid.SELECTTYPE.CELL}`:
|
|
19854
|
+
case `select-type-${ninegrid.SELECTTYPE.AREA}`:
|
|
19855
|
+
case `select-type-${ninegrid.SELECTTYPE.NONE}`:
|
|
19856
19856
|
this.#owner.setAttribute("select-type", e.menuId.replace("select-type-", ""));
|
|
19857
19857
|
break;
|
|
19858
19858
|
|
|
@@ -19867,25 +19867,25 @@ class ngMenu extends HTMLElement
|
|
|
19867
19867
|
this.#owner.setAttribute("show-status-bar", this.#owner.getAttribute("show-status-bar") == "true" ? "false" : "true");
|
|
19868
19868
|
break;
|
|
19869
19869
|
|
|
19870
|
-
case `paging-type-${
|
|
19871
|
-
case `paging-type-${
|
|
19872
|
-
case `paging-type-${
|
|
19870
|
+
case `paging-type-${ninegrid.PAGINGTYPE.NONE}`:
|
|
19871
|
+
case `paging-type-${ninegrid.PAGINGTYPE.CLIENT}`:
|
|
19872
|
+
case `paging-type-${ninegrid.PAGINGTYPE.SERVER}`:
|
|
19873
19873
|
this.#owner.setAttribute("paging-type", e.menuId.replace("paging-type-", ""));
|
|
19874
19874
|
break;
|
|
19875
|
-
case `paging-count-${
|
|
19876
|
-
case `paging-count-${
|
|
19877
|
-
case `paging-count-${
|
|
19878
|
-
case `paging-count-${
|
|
19879
|
-
case `paging-count-${
|
|
19880
|
-
case `paging-count-${
|
|
19881
|
-
case `paging-count-${
|
|
19882
|
-
case `paging-count-${
|
|
19883
|
-
case `paging-count-${
|
|
19884
|
-
case `paging-count-${
|
|
19875
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.AUTO}`:
|
|
19876
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_1}`:
|
|
19877
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_5}`:
|
|
19878
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_10}`:
|
|
19879
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_20}`:
|
|
19880
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_30}`:
|
|
19881
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_50}`:
|
|
19882
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_100}`:
|
|
19883
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}`:
|
|
19884
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`:
|
|
19885
19885
|
this.#owner.setAttribute("paging-count", e.menuId.replace("paging-count-", ""));
|
|
19886
19886
|
break;
|
|
19887
19887
|
case "col-indicator-type":
|
|
19888
|
-
this.#owner.setAttribute("col-indicator-type", this.#owner.getAttribute("col-indicator-type") ==
|
|
19888
|
+
this.#owner.setAttribute("col-indicator-type", this.#owner.getAttribute("col-indicator-type") == ninegrid.COLINDICATORTYPE.EXPAND ? ninegrid.COLINDICATORTYPE.COLLAPSE : ninegrid.COLINDICATORTYPE.EXPAND);
|
|
19889
19889
|
break;
|
|
19890
19890
|
case "auto-fit-col":
|
|
19891
19891
|
this.#owner.setAttribute("auto-fit-col", this.#owner.getAttribute("auto-fit-col") == "true" ? "false" : "true");
|
|
@@ -19899,29 +19899,29 @@ class ngMenu extends HTMLElement
|
|
|
19899
19899
|
},
|
|
19900
19900
|
events : {
|
|
19901
19901
|
show : e => {
|
|
19902
|
-
|
|
19902
|
+
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");
|
|
19903
19903
|
|
|
19904
|
-
this.#owner.getAttribute("show-title-bar") == "true" ?
|
|
19905
|
-
this.#owner.getAttribute("show-menu-icon") == "true" ?
|
|
19906
|
-
this.#owner.getAttribute("show-status-bar") == "true" ?
|
|
19904
|
+
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");
|
|
19905
|
+
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");
|
|
19906
|
+
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");
|
|
19907
19907
|
|
|
19908
|
-
|
|
19909
|
-
|
|
19908
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .select-type", this.#owner.shadowRoot).removeClass("on");
|
|
19909
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .select-type-${this.#owner.getAttribute("select-type")}`, this.#owner.shadowRoot).addClass("on");
|
|
19910
19910
|
|
|
19911
|
-
|
|
19912
|
-
|
|
19911
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .paging-type", this.#owner.shadowRoot).removeClass("on");
|
|
19912
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .paging-type-${this.#owner.getAttribute("paging-type")}`, this.#owner.shadowRoot).addClass("on");
|
|
19913
19913
|
|
|
19914
|
-
|
|
19915
|
-
|
|
19914
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .paging-count", this.#owner.shadowRoot).removeClass("on");
|
|
19915
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .paging-count-${this.#owner.getAttribute("paging-count")}`, this.#owner.shadowRoot).addClass("on");
|
|
19916
19916
|
|
|
19917
|
-
this.#owner.filtering.isFiltering() ?
|
|
19917
|
+
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");
|
|
19918
19918
|
|
|
19919
|
-
this.#owner.getAttribute("auto-fit-col") == "true" ?
|
|
19919
|
+
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");
|
|
19920
19920
|
|
|
19921
|
-
this.#owner.getAttribute("col-indicator-type") ==
|
|
19921
|
+
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");
|
|
19922
19922
|
|
|
19923
19923
|
const tfoot = this.#owner.body.querySelector(".ng-table tfoot");
|
|
19924
|
-
const tfootMenu =
|
|
19924
|
+
const tfootMenu = ninegrid.j.querySelectorAll("ng-context-menu-panel .show-tfoot", this.#owner.shadowRoot);
|
|
19925
19925
|
|
|
19926
19926
|
if (tfoot) {
|
|
19927
19927
|
tfootMenu.removeClass("disabled");
|
|
@@ -19932,12 +19932,12 @@ class ngMenu extends HTMLElement
|
|
|
19932
19932
|
}
|
|
19933
19933
|
|
|
19934
19934
|
if (typeof ExcelJS == "undefined") {
|
|
19935
|
-
|
|
19935
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .import,ng-context-menu-panel .export-excel", this.#owner.shadowRoot).addClass("disabled");
|
|
19936
19936
|
}
|
|
19937
19937
|
|
|
19938
|
-
|
|
19938
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .import,ng-context-menu-panel .export-pdf", this.#owner.shadowRoot).addClass("disabled");
|
|
19939
19939
|
|
|
19940
|
-
this.#owner.closest("dialog") ?
|
|
19940
|
+
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");
|
|
19941
19941
|
},
|
|
19942
19942
|
hide : () => {
|
|
19943
19943
|
},
|
|
@@ -19996,22 +19996,22 @@ class ngPaging extends HTMLElement
|
|
|
19996
19996
|
return this.#owner.getAttribute("paging-type");
|
|
19997
19997
|
};
|
|
19998
19998
|
set type(v) {
|
|
19999
|
-
if (!Object.values(
|
|
19999
|
+
if (!Object.values(ninegrid.PAGINGTYPE).includes(v)) throw `invalid page type : ${v}`;
|
|
20000
20000
|
|
|
20001
20001
|
//this.#owner.setAttribute("paging-type", v);
|
|
20002
20002
|
|
|
20003
20003
|
switch (v) {
|
|
20004
|
-
case
|
|
20004
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
20005
20005
|
|
|
20006
20006
|
$(this).children().show();
|
|
20007
20007
|
$(this).children().not("span:last-child").hide();
|
|
20008
20008
|
break;
|
|
20009
20009
|
|
|
20010
|
-
case
|
|
20010
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
20011
20011
|
$(this).children().show();
|
|
20012
20012
|
break;
|
|
20013
20013
|
|
|
20014
|
-
case
|
|
20014
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
20015
20015
|
$(this).children().show();
|
|
20016
20016
|
break;
|
|
20017
20017
|
}
|
|
@@ -20023,7 +20023,7 @@ class ngPaging extends HTMLElement
|
|
|
20023
20023
|
return this.#currentPage;
|
|
20024
20024
|
};
|
|
20025
20025
|
set currentPage(v) {
|
|
20026
|
-
if (this.type !=
|
|
20026
|
+
if (this.type != ninegrid.PAGINGTYPE.SERVER) throw `"currentPage" is only allowed when the paging type is server.`;
|
|
20027
20027
|
|
|
20028
20028
|
this.#currentPage = v;
|
|
20029
20029
|
};
|
|
@@ -20057,7 +20057,7 @@ class ngPaging extends HTMLElement
|
|
|
20057
20057
|
setTimeout(() => {/** paging-type : none -> client 변경시 height 오류 */
|
|
20058
20058
|
this.#count = v;
|
|
20059
20059
|
|
|
20060
|
-
if (v ==
|
|
20060
|
+
if (v == ninegrid.PAGINGCOUNT.AUTO) {
|
|
20061
20061
|
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);
|
|
20062
20062
|
var tmplHeight = 0;
|
|
20063
20063
|
$(this.#owner.template).each((i,el) => tmplHeight += $(el).height());
|
|
@@ -20071,15 +20071,15 @@ class ngPaging extends HTMLElement
|
|
|
20071
20071
|
|
|
20072
20072
|
|
|
20073
20073
|
switch (this.type) {
|
|
20074
|
-
case
|
|
20074
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
20075
20075
|
this.refresh();
|
|
20076
20076
|
break;
|
|
20077
20077
|
|
|
20078
|
-
case
|
|
20078
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
20079
20079
|
this.refresh();
|
|
20080
20080
|
break;
|
|
20081
20081
|
|
|
20082
|
-
case
|
|
20082
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
20083
20083
|
this.movePage(1);
|
|
20084
20084
|
break;
|
|
20085
20085
|
}
|
|
@@ -20106,13 +20106,13 @@ class ngPaging extends HTMLElement
|
|
|
20106
20106
|
#refresh = () => {
|
|
20107
20107
|
|
|
20108
20108
|
|
|
20109
|
-
if (this.type ==
|
|
20109
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
20110
20110
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#owner.data.countNF().toLocaleString()}`);
|
|
20111
20111
|
}
|
|
20112
|
-
else if (this.type ==
|
|
20112
|
+
else if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
20113
20113
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#totalCount.toLocaleString()}`);
|
|
20114
20114
|
}
|
|
20115
|
-
else if (this.type ==
|
|
20115
|
+
else if (this.type == ninegrid.PAGINGTYPE.NONE) {
|
|
20116
20116
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#totalCount.toLocaleString()}`);
|
|
20117
20117
|
}
|
|
20118
20118
|
|
|
@@ -20123,21 +20123,21 @@ class ngPaging extends HTMLElement
|
|
|
20123
20123
|
$('span', this).eq(0).html(`${this.#currentPage.toLocaleString()} <i>of</i> ${this.#totalPage.toLocaleString()}`);
|
|
20124
20124
|
}
|
|
20125
20125
|
|
|
20126
|
-
|
|
20127
|
-
|
|
20128
|
-
|
|
20129
|
-
|
|
20126
|
+
ninegrid.j.querySelectorAll('.ng-paging-first', this).attr("disabled", (this.#currentPage == 1 || this.#totalPage < 1) ? true : false);
|
|
20127
|
+
ninegrid.j.querySelectorAll('.ng-paging-prev', this).attr("disabled", (this.#currentPage == 1 || this.#totalPage < 1) ? true : false);
|
|
20128
|
+
ninegrid.j.querySelectorAll('.ng-paging-next', this).attr("disabled", (this.#currentPage == this.#totalPage || this.#totalPage < 1) ? true : false);
|
|
20129
|
+
ninegrid.j.querySelectorAll('.ng-paging-last', this).attr("disabled", (this.#currentPage == this.#totalPage || this.#totalPage < 1) ? true : false);
|
|
20130
20130
|
};
|
|
20131
20131
|
|
|
20132
20132
|
|
|
20133
20133
|
#moveLast = () => {
|
|
20134
20134
|
//this.#clearPaging();
|
|
20135
20135
|
|
|
20136
|
-
if (this.type ==
|
|
20136
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
20137
20137
|
|
|
20138
20138
|
this.movePage(Math.ceil(this.#owner.data.countNF() / this.#linesPerPage));
|
|
20139
20139
|
}
|
|
20140
|
-
else if (this.type ==
|
|
20140
|
+
else if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
20141
20141
|
this.movePage(Math.ceil(this.#totalCount / this.#linesPerPage));
|
|
20142
20142
|
}
|
|
20143
20143
|
};
|
|
@@ -20147,11 +20147,11 @@ class ngPaging extends HTMLElement
|
|
|
20147
20147
|
//if (!this.#owner || !this.#owner.data || isNaN(page) || this.#totalPage == 0) return;
|
|
20148
20148
|
if (!this.#owner || !this.#owner.data || isNaN(page)) return;
|
|
20149
20149
|
|
|
20150
|
-
if (this.type ==
|
|
20151
|
-
|
|
20152
|
-
|
|
20153
|
-
|
|
20154
|
-
|
|
20150
|
+
if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
20151
|
+
ninegrid.j.querySelectorAll('.ng-paging-first', this).attr("disabled", true);
|
|
20152
|
+
ninegrid.j.querySelectorAll('.ng-paging-prev', this).attr("disabled", true);
|
|
20153
|
+
ninegrid.j.querySelectorAll('.ng-paging-next', this).attr("disabled", true);
|
|
20154
|
+
ninegrid.j.querySelectorAll('.ng-paging-last', this).attr("disabled", true);
|
|
20155
20155
|
}
|
|
20156
20156
|
|
|
20157
20157
|
//this.#clearPaging();
|
|
@@ -20159,7 +20159,7 @@ class ngPaging extends HTMLElement
|
|
|
20159
20159
|
this.#oldPage = this.#currentPage;
|
|
20160
20160
|
this.#currentPage = page;
|
|
20161
20161
|
|
|
20162
|
-
if (this.type ==
|
|
20162
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
20163
20163
|
|
|
20164
20164
|
var data = this.#owner.data.getValidDataNF();
|
|
20165
20165
|
|
|
@@ -20185,7 +20185,7 @@ class ngPaging extends HTMLElement
|
|
|
20185
20185
|
this.#owner.scrollTo_V1(0);
|
|
20186
20186
|
}
|
|
20187
20187
|
|
|
20188
|
-
if (this.type ==
|
|
20188
|
+
if (this.type == ninegrid.PAGINGTYPE.SERVER && this.#oldPage != this.#currentPage){
|
|
20189
20189
|
this.onpagechanged.pageIndex= this.#currentPage;
|
|
20190
20190
|
this.onpagechanged.pageCnt = this.#linesPerPage;
|
|
20191
20191
|
|
|
@@ -20200,18 +20200,18 @@ class ngPaging extends HTMLElement
|
|
|
20200
20200
|
refresh = () => {
|
|
20201
20201
|
|
|
20202
20202
|
switch (this.type) {
|
|
20203
|
-
case
|
|
20203
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
20204
20204
|
this.#clearPaging();
|
|
20205
20205
|
$(".ng-container tbody tr.bindable:not(.nodata)", this.#owner.body).remove();
|
|
20206
20206
|
this.#owner.scrollTo_V1(0);
|
|
20207
20207
|
break;
|
|
20208
20208
|
|
|
20209
|
-
case
|
|
20209
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
20210
20210
|
this.movePage(1);
|
|
20211
20211
|
this.#owner.refresh();
|
|
20212
20212
|
break;
|
|
20213
20213
|
|
|
20214
|
-
case
|
|
20214
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
20215
20215
|
break;
|
|
20216
20216
|
}
|
|
20217
20217
|
|
|
@@ -20244,8 +20244,8 @@ class ngProgress extends ngCellEx
|
|
|
20244
20244
|
|
|
20245
20245
|
this.shadowRoot.innerHTML = `
|
|
20246
20246
|
<style>
|
|
20247
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20248
|
-
${
|
|
20247
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngProgress.css";
|
|
20248
|
+
${ninegrid.getCustomPath(this,"ngProgress.css")}
|
|
20249
20249
|
|
|
20250
20250
|
progress::-webkit-progress-bar {
|
|
20251
20251
|
background: ${backColor};
|
|
@@ -20351,8 +20351,8 @@ class ngRadio extends ngEditableEx
|
|
|
20351
20351
|
|
|
20352
20352
|
this.shadowRoot.innerHTML = `
|
|
20353
20353
|
<style>
|
|
20354
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20355
|
-
${
|
|
20354
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRadio.css";
|
|
20355
|
+
${ninegrid.getCustomPath(this,"ngRadio.css")}
|
|
20356
20356
|
|
|
20357
20357
|
div.ng-wrap {
|
|
20358
20358
|
justify-content: ${justifyContent};
|
|
@@ -20394,7 +20394,7 @@ class ngRadio extends ngEditableEx
|
|
|
20394
20394
|
dataRefresh = (v) => {
|
|
20395
20395
|
|
|
20396
20396
|
if (this.#dataSource) {
|
|
20397
|
-
this.#isValid() ?
|
|
20397
|
+
this.#isValid() ? ninegrid.j.querySelectorAll(this).removeClass("invalid") : ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
20398
20398
|
}
|
|
20399
20399
|
|
|
20400
20400
|
$(this.#target).each((i,el) => {
|
|
@@ -20408,7 +20408,7 @@ class ngRadio extends ngEditableEx
|
|
|
20408
20408
|
|
|
20409
20409
|
//console.log(this.value, ninegrid.isNull(this.value));
|
|
20410
20410
|
|
|
20411
|
-
if (
|
|
20411
|
+
if (ninegrid.isNull(this.value)) return true;
|
|
20412
20412
|
|
|
20413
20413
|
var idx = this.#dataSource.findIndex(m => { return this.value == m[this.#code]; });
|
|
20414
20414
|
if (idx < 0) return false;
|
|
@@ -20453,8 +20453,8 @@ class ngRenderer extends ngCellEx
|
|
|
20453
20453
|
|
|
20454
20454
|
this.shadowRoot.innerHTML =`
|
|
20455
20455
|
<style>
|
|
20456
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20457
|
-
${
|
|
20456
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRenderer.css";
|
|
20457
|
+
${ninegrid.getCustomPath(this,"ngRenderer.css")}
|
|
20458
20458
|
|
|
20459
20459
|
span {
|
|
20460
20460
|
color: ${color};
|
|
@@ -20513,8 +20513,8 @@ class ngRowDetail extends ngCellEx
|
|
|
20513
20513
|
|
|
20514
20514
|
this.shadowRoot.innerHTML = `
|
|
20515
20515
|
<style>
|
|
20516
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20517
|
-
${
|
|
20516
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowDetail.css";
|
|
20517
|
+
${ninegrid.getCustomPath(this,"ngRowDetail.css")}
|
|
20518
20518
|
</style>
|
|
20519
20519
|
|
|
20520
20520
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="dtl" focusable="false" aria-hidden="true">
|
|
@@ -20566,7 +20566,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20566
20566
|
|
|
20567
20567
|
this.shadowRoot.innerHTML = `
|
|
20568
20568
|
<style>
|
|
20569
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20569
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
20570
20570
|
nine-grid {
|
|
20571
20571
|
border: 1px solid #ccc;
|
|
20572
20572
|
}
|
|
@@ -20618,7 +20618,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20618
20618
|
|
|
20619
20619
|
e.stopImmediatePropagation();
|
|
20620
20620
|
|
|
20621
|
-
|
|
20621
|
+
ninegrid.confirm("There is changed data.\nDo you want to save it?", "SAVE", {"class": "rgb", "true-text": "Yes", "false-text": "No", }).then(result => {
|
|
20622
20622
|
|
|
20623
20623
|
if (result) {
|
|
20624
20624
|
$(".apply", this.shadowRoot).trigger("click");
|
|
@@ -20634,7 +20634,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20634
20634
|
|
|
20635
20635
|
var data = this.#owner.body.querySelector(`tr[data-row="${row}"]`).data;
|
|
20636
20636
|
|
|
20637
|
-
this.#rowIndex = data.__ng._[
|
|
20637
|
+
this.#rowIndex = data.__ng._[ninegrid.ROW.INDEX];
|
|
20638
20638
|
|
|
20639
20639
|
$(".title", this.shadowRoot).html(this.#owner.getAttribute("caption") || "Details");
|
|
20640
20640
|
$(".sub-title", this.shadowRoot).html(`(${(Number(row)+1).toLocaleString()} of ${this.#owner.data.count().toLocaleString()})`);
|
|
@@ -20764,8 +20764,8 @@ class ngRowDrag extends ngCellEx
|
|
|
20764
20764
|
connectedCallback() {
|
|
20765
20765
|
this.shadowRoot.innerHTML = `
|
|
20766
20766
|
<style>
|
|
20767
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20768
|
-
${
|
|
20767
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowDrag.css";
|
|
20768
|
+
${ninegrid.getCustomPath(this,"ngRowDrag.css")}
|
|
20769
20769
|
</style>
|
|
20770
20770
|
`;
|
|
20771
20771
|
|
|
@@ -20845,7 +20845,7 @@ class ngRowMover
|
|
|
20845
20845
|
#borderTop = (row) => {
|
|
20846
20846
|
[".ng-container-left",".ng-container-body",".ng-container-right"].forEach(group => {
|
|
20847
20847
|
const trs = this.#owner.body.querySelectorAll(`${group} tr[data-row="${row}"]`);
|
|
20848
|
-
|
|
20848
|
+
ninegrid.j.querySelectorAll("th,td", trs[0]).addClass("ng-dragover-up");
|
|
20849
20849
|
});
|
|
20850
20850
|
};
|
|
20851
20851
|
|
|
@@ -20853,7 +20853,7 @@ class ngRowMover
|
|
|
20853
20853
|
[".ng-container-left",".ng-container-body",".ng-container-right"].forEach(group => {
|
|
20854
20854
|
this.#owner.body.querySelectorAll(`${group} tr[data-row="${row}"]`).forEach((tr,i) => {
|
|
20855
20855
|
tr.querySelectorAll("th,td").forEach(cell => {
|
|
20856
|
-
if ((i + (cell.rowSpan || 1)) == this.#owner.template.length)
|
|
20856
|
+
if ((i + (cell.rowSpan || 1)) == this.#owner.template.length) ninegrid.j.querySelectorAll(cell).addClass("ng-dragover-down");
|
|
20857
20857
|
});
|
|
20858
20858
|
});
|
|
20859
20859
|
});
|
|
@@ -20871,8 +20871,8 @@ class ngRowMover
|
|
|
20871
20871
|
const targetRow = parseInt(e.target.closest("th,td").dataset.row);
|
|
20872
20872
|
|
|
20873
20873
|
|
|
20874
|
-
|
|
20875
|
-
|
|
20874
|
+
ninegrid.j.querySelectorAll("th,td", sourceGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20875
|
+
ninegrid.j.querySelectorAll("th,td", targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20876
20876
|
//ninegrid.j.querySelectorAll(`tr`, targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20877
20877
|
|
|
20878
20878
|
if (sourceGrid.id == targetGrid.id) {
|
|
@@ -20940,7 +20940,7 @@ class ngRowMover
|
|
|
20940
20940
|
//const sourceGrid= document.getElementById(e.dataTransfer.getData("id"));
|
|
20941
20941
|
//const sourceRow = parseInt(e.dataTransfer.getData("row"));
|
|
20942
20942
|
//const sourceBind= e.dataTransfer.getData("bind");
|
|
20943
|
-
const sourceGrid=
|
|
20943
|
+
const sourceGrid= ninegrid.nvl(document.getElementById(ngRowDrag.dragData.id), this.#owner); /** Max Popup 화면에서 document.getElementById(ngRowDrag.dragData.id) == null */
|
|
20944
20944
|
const sourceRow = ngRowDrag.dragData.row;
|
|
20945
20945
|
const sourceBind= ngRowDrag.dragData.bind;
|
|
20946
20946
|
|
|
@@ -20951,12 +20951,12 @@ class ngRowMover
|
|
|
20951
20951
|
const targetRow = parseInt(targetTr.dataset.row);
|
|
20952
20952
|
const targetBind= targetGrid.body.querySelector("ng-row-drag") ? targetGrid.body.querySelector("ng-row-drag").cell.dataset.bind : null;
|
|
20953
20953
|
|
|
20954
|
-
|
|
20955
|
-
|
|
20954
|
+
ninegrid.j.querySelectorAll("th,td", sourceGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20955
|
+
ninegrid.j.querySelectorAll("th,td", targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20956
20956
|
|
|
20957
20957
|
if (sourceGrid.id == targetGrid.id && sourceRow == targetRow) return;
|
|
20958
20958
|
|
|
20959
|
-
const canEvent = new CustomEvent(
|
|
20959
|
+
const canEvent = new CustomEvent(ninegrid.EVENT.CAN_ROW_MOVE, { bubbles: true, cancelable: true, detail: {} });
|
|
20960
20960
|
canEvent.sourceGrid = sourceGrid;
|
|
20961
20961
|
canEvent.targetGrid = targetGrid;
|
|
20962
20962
|
canEvent.sourceRow = sourceRow;
|
|
@@ -20994,7 +20994,7 @@ class ngRowMover
|
|
|
20994
20994
|
|
|
20995
20995
|
this.#owner.dataManager.viewRecords.reset();
|
|
20996
20996
|
|
|
20997
|
-
const doneEvent = new CustomEvent(
|
|
20997
|
+
const doneEvent = new CustomEvent(ninegrid.EVENT.ROW_MOVED, { bubbles: true, detail: {} });
|
|
20998
20998
|
doneEvent.sourceGrid= sourceGrid;
|
|
20999
20999
|
doneEvent.targetGrid= targetGrid;
|
|
21000
21000
|
doneEvent.sourceRow = sourceRow;
|
|
@@ -21027,8 +21027,8 @@ class ngRowExpand extends HTMLElement
|
|
|
21027
21027
|
|
|
21028
21028
|
this.shadowRoot.innerHTML = `
|
|
21029
21029
|
<style>
|
|
21030
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21031
|
-
${
|
|
21030
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowExpand.css";
|
|
21031
|
+
${ninegrid.getCustomPath(this,"ngRowExpand.css")}
|
|
21032
21032
|
</style>
|
|
21033
21033
|
`;
|
|
21034
21034
|
|
|
@@ -21038,17 +21038,17 @@ class ngRowExpand extends HTMLElement
|
|
|
21038
21038
|
if (!this.#owner || !this.#cell) return;
|
|
21039
21039
|
|
|
21040
21040
|
//this.#originExpr= $(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.template).attr("data-expr");
|
|
21041
|
-
this.#originExpr=
|
|
21041
|
+
this.#originExpr= ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr");
|
|
21042
21042
|
|
|
21043
21043
|
if (this.#cell.querySelector("ng-col-expand")) {
|
|
21044
|
-
|
|
21044
|
+
ninegrid.j.querySelectorAll(this).addClass("padding");
|
|
21045
21045
|
}
|
|
21046
21046
|
|
|
21047
21047
|
$(this).on("click", e => {
|
|
21048
21048
|
e.preventDefault();
|
|
21049
21049
|
e.stopPropagation();
|
|
21050
21050
|
|
|
21051
|
-
if (
|
|
21051
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) {
|
|
21052
21052
|
this.#collapse();
|
|
21053
21053
|
}
|
|
21054
21054
|
else {
|
|
@@ -21060,28 +21060,28 @@ class ngRowExpand extends HTMLElement
|
|
|
21060
21060
|
};
|
|
21061
21061
|
|
|
21062
21062
|
#expand = () => {
|
|
21063
|
-
const bind =
|
|
21063
|
+
const bind = ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-bind");
|
|
21064
21064
|
const expr = `data.${bind}.replaceAll("\\n", "<br>")`;
|
|
21065
21065
|
|
|
21066
|
-
|
|
21066
|
+
ninegrid.j.querySelectorAll(this).addClass("expand");
|
|
21067
21067
|
|
|
21068
|
-
|
|
21069
|
-
|
|
21068
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr", expr);
|
|
21069
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).attr("data-expr", expr);
|
|
21070
21070
|
|
|
21071
21071
|
this.#setRowHeightFit();
|
|
21072
21072
|
};
|
|
21073
21073
|
|
|
21074
21074
|
#collapse = () => {
|
|
21075
21075
|
|
|
21076
|
-
|
|
21076
|
+
ninegrid.j.querySelectorAll(this).removeClass("expand");
|
|
21077
21077
|
|
|
21078
21078
|
if (this.#originExpr) {
|
|
21079
|
-
|
|
21080
|
-
|
|
21079
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr", this.#originExpr);
|
|
21080
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).attr("data-expr", this.#originExpr);
|
|
21081
21081
|
}
|
|
21082
21082
|
else {
|
|
21083
|
-
|
|
21084
|
-
|
|
21083
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).removeAttr("data-expr");
|
|
21084
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).removeAttr("data-expr");
|
|
21085
21085
|
}
|
|
21086
21086
|
|
|
21087
21087
|
this.#setRowHeightFit();
|
|
@@ -21117,8 +21117,8 @@ class ngRowIndicator extends ngCellEx
|
|
|
21117
21117
|
|
|
21118
21118
|
this.shadowRoot.innerHTML = `
|
|
21119
21119
|
<style>
|
|
21120
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21121
|
-
${
|
|
21120
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowIndicator.css";
|
|
21121
|
+
${ninegrid.getCustomPath(this,"ngRowIndicator.css")}
|
|
21122
21122
|
|
|
21123
21123
|
svg.dtl {
|
|
21124
21124
|
display: ${"none"};
|
|
@@ -21153,7 +21153,7 @@ class ngRowIndicator extends ngCellEx
|
|
|
21153
21153
|
|
|
21154
21154
|
//this.cell.dataset.expr = ninegrid.nvl(this.cell.dataset.expr, "data.__ng._[ninegrid.ROW.PIN] ? '*' : data.__ng._[ninegrid.ROW.ORDER]");
|
|
21155
21155
|
//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]");
|
|
21156
|
-
this.cell.dataset.expr =
|
|
21156
|
+
this.cell.dataset.expr = ninegrid.nvl(this.cell.dataset.expr, "data.__ng._[ninegrid.ROW.ORDER]");
|
|
21157
21157
|
|
|
21158
21158
|
this.cell.setAttribute("text-align", "center");
|
|
21159
21159
|
|
|
@@ -21181,14 +21181,14 @@ class ngRowIndicator extends ngCellEx
|
|
|
21181
21181
|
var row = parseInt(this.cell.dataset.row);
|
|
21182
21182
|
|
|
21183
21183
|
switch (this.data.__ng.rowState) {
|
|
21184
|
-
case
|
|
21185
|
-
|
|
21184
|
+
case ninegrid.ROW_STATE.INSERT:
|
|
21185
|
+
ninegrid.j.querySelectorAll(this).addClass('added').removeClass('updated');
|
|
21186
21186
|
break;
|
|
21187
|
-
case
|
|
21188
|
-
|
|
21187
|
+
case ninegrid.ROW_STATE.UPDATE:
|
|
21188
|
+
ninegrid.j.querySelectorAll(this).addClass('updated');
|
|
21189
21189
|
break;
|
|
21190
21190
|
default:
|
|
21191
|
-
|
|
21191
|
+
ninegrid.j.querySelectorAll(this).removeClass('added').removeClass('updated');
|
|
21192
21192
|
break;
|
|
21193
21193
|
}
|
|
21194
21194
|
|
|
@@ -21198,7 +21198,7 @@ class ngRowIndicator extends ngCellEx
|
|
|
21198
21198
|
};
|
|
21199
21199
|
|
|
21200
21200
|
#init = () => {
|
|
21201
|
-
if (!
|
|
21201
|
+
if (!ninegrid.j.querySelectorAll(this.closest("tbody")).hasClass("fixed")) {
|
|
21202
21202
|
var rowSpan = this.cell.rowSpan;
|
|
21203
21203
|
var tr = this.closest("tr");
|
|
21204
21204
|
for (var i = 0; i < rowSpan; i++) {
|
|
@@ -21285,12 +21285,12 @@ class ngRowResizer extends HTMLElement
|
|
|
21285
21285
|
|
|
21286
21286
|
$(this).on("mousedown", e => {
|
|
21287
21287
|
|
|
21288
|
-
if (
|
|
21288
|
+
if (ninegrid.j.querySelectorAll(this.#cell.closest("tbody")).hasClass('fixed')) return;
|
|
21289
21289
|
|
|
21290
21290
|
this.#timer = setTimeout(() => { this.#onMouseDown(e); }, 500);
|
|
21291
21291
|
})
|
|
21292
21292
|
.on("dblclick", e => {
|
|
21293
|
-
if (
|
|
21293
|
+
if (ninegrid.j.querySelectorAll(this.#cell.closest("tbody")).hasClass('fixed')) return;
|
|
21294
21294
|
|
|
21295
21295
|
this.#onDblClick(e);
|
|
21296
21296
|
});
|
|
@@ -21401,8 +21401,8 @@ class ngRowPin extends ngCellEx
|
|
|
21401
21401
|
|
|
21402
21402
|
this.shadowRoot.innerHTML = `
|
|
21403
21403
|
<style>
|
|
21404
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21405
|
-
${
|
|
21404
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowPin.css";
|
|
21405
|
+
${ninegrid.getCustomPath(this,"ngRowPin.css")}
|
|
21406
21406
|
</style>
|
|
21407
21407
|
|
|
21408
21408
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" focusable="false" aria-hidden="true">
|
|
@@ -21418,7 +21418,7 @@ class ngRowPin extends ngCellEx
|
|
|
21418
21418
|
dataRefresh = (v) => {
|
|
21419
21419
|
if (!this.owner || !this.cell || !this.data) return;
|
|
21420
21420
|
|
|
21421
|
-
this.cell.closest("tbody.fixed") ?
|
|
21421
|
+
this.cell.closest("tbody.fixed") ? ninegrid.j.querySelectorAll(this).addClass("pin") : ninegrid.j.querySelectorAll(this).removeClass("pin");
|
|
21422
21422
|
|
|
21423
21423
|
if (!v) this.reset();
|
|
21424
21424
|
};
|
|
@@ -21426,12 +21426,12 @@ class ngRowPin extends ngCellEx
|
|
|
21426
21426
|
#init = () => {
|
|
21427
21427
|
|
|
21428
21428
|
/** Mobile에서 Row Pin 기능 방지 */
|
|
21429
|
-
if (!
|
|
21429
|
+
if (!ninegrid.isMobile()) {
|
|
21430
21430
|
this.shadowRoot.querySelector("svg").addEventListener("click", e => {
|
|
21431
21431
|
|
|
21432
21432
|
const row = this.cell.closest("tr").dataset.row;
|
|
21433
21433
|
|
|
21434
|
-
this.cell.closest("tbody.fixed") ? this.owner.pin.remove(row) : this.owner.pin.add(this.data.__ng._[
|
|
21434
|
+
this.cell.closest("tbody.fixed") ? this.owner.pin.remove(row) : this.owner.pin.add(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
21435
21435
|
});
|
|
21436
21436
|
}
|
|
21437
21437
|
}
|
|
@@ -21453,7 +21453,7 @@ class ngPinManager
|
|
|
21453
21453
|
* 1. grid attr == filter : on();
|
|
21454
21454
|
*/
|
|
21455
21455
|
this.#records.forEach(v => {
|
|
21456
|
-
v.__ng._[
|
|
21456
|
+
v.__ng._[ninegrid.ROW.PIN] = false;
|
|
21457
21457
|
});
|
|
21458
21458
|
|
|
21459
21459
|
this.#records = [];
|
|
@@ -21465,7 +21465,7 @@ class ngPinManager
|
|
|
21465
21465
|
|
|
21466
21466
|
//var data = this.#owner.data.getRow(i);
|
|
21467
21467
|
var data = this.#owner.data.getNF(index);
|
|
21468
|
-
data.__ng._[
|
|
21468
|
+
data.__ng._[ninegrid.ROW.PIN] = true;
|
|
21469
21469
|
|
|
21470
21470
|
this.#records.push(data);
|
|
21471
21471
|
|
|
@@ -21485,7 +21485,7 @@ class ngPinManager
|
|
|
21485
21485
|
bodyTmpl .each((i,tr) => { $(".ng-container-body tbody.fixed", this.#owner.body).append(tr.outerHTML); });
|
|
21486
21486
|
|
|
21487
21487
|
$("tbody.fixed tr:not([data-index])", this.#owner.body).each((i,tr) => {
|
|
21488
|
-
tr.dataset.index = data.__ng._[
|
|
21488
|
+
tr.dataset.index = data.__ng._[ninegrid.ROW.INDEX];
|
|
21489
21489
|
tr.data = data;
|
|
21490
21490
|
});
|
|
21491
21491
|
|
|
@@ -21496,9 +21496,9 @@ class ngPinManager
|
|
|
21496
21496
|
|
|
21497
21497
|
$("tbody.fixed tr", this.#owner.body).each((i,tr) => {
|
|
21498
21498
|
tr.dataset.matrixRow = parseInt(tr.dataset.row) * this.#owner.template.length + (parseInt(tr.sectionRowIndex % this.#owner.template.length));
|
|
21499
|
-
|
|
21500
|
-
|
|
21501
|
-
|
|
21499
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-index", tr.dataset.index);
|
|
21500
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-row", tr.dataset.row);
|
|
21501
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-matrix-row", tr.dataset.matrixRow);
|
|
21502
21502
|
});
|
|
21503
21503
|
|
|
21504
21504
|
this.#owner.data.resetRecords();
|
|
@@ -21515,7 +21515,7 @@ class ngPinManager
|
|
|
21515
21515
|
$(`.ng-container-right tbody.fixed tr[data-row=${row}]`, this.#owner.body).remove();
|
|
21516
21516
|
$(`.ng-container-body tbody.fixed tr[data-row=${row}]`, this.#owner.body).remove();
|
|
21517
21517
|
|
|
21518
|
-
this.#records[index].__ng._[
|
|
21518
|
+
this.#records[index].__ng._[ninegrid.ROW.PIN] = false;
|
|
21519
21519
|
|
|
21520
21520
|
this.#records.splice(index, 1);
|
|
21521
21521
|
}
|
|
@@ -21551,8 +21551,8 @@ class ngRowState extends ngCellEx
|
|
|
21551
21551
|
connectedCallback() {
|
|
21552
21552
|
this.shadowRoot.innerHTML = `
|
|
21553
21553
|
<style>
|
|
21554
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21555
|
-
${
|
|
21554
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowState.css";
|
|
21555
|
+
${ninegrid.getCustomPath(this,"ngRowState.css")}
|
|
21556
21556
|
</style>
|
|
21557
21557
|
`;
|
|
21558
21558
|
|
|
@@ -21566,14 +21566,14 @@ class ngRowState extends ngCellEx
|
|
|
21566
21566
|
//var row = parseInt(this.cell.dataset.row);
|
|
21567
21567
|
|
|
21568
21568
|
switch (this.data.__ng.rowState) {
|
|
21569
|
-
case
|
|
21570
|
-
|
|
21569
|
+
case ninegrid.ROW_STATE.INSERT:
|
|
21570
|
+
ninegrid.j.querySelectorAll(this).addClass('added').removeClass('updated');
|
|
21571
21571
|
break;
|
|
21572
|
-
case
|
|
21573
|
-
|
|
21572
|
+
case ninegrid.ROW_STATE.UPDATE:
|
|
21573
|
+
ninegrid.j.querySelectorAll(this).addClass('updated');
|
|
21574
21574
|
break;
|
|
21575
21575
|
default:
|
|
21576
|
-
|
|
21576
|
+
ninegrid.j.querySelectorAll(this).removeClass('added').removeClass('updated');
|
|
21577
21577
|
break;
|
|
21578
21578
|
}
|
|
21579
21579
|
|
|
@@ -21605,8 +21605,8 @@ class ngVScrollBar extends HTMLElement
|
|
|
21605
21605
|
|
|
21606
21606
|
this.shadowRoot.innerHTML = `
|
|
21607
21607
|
<style>
|
|
21608
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21609
|
-
${
|
|
21608
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngVScrollBar.css";
|
|
21609
|
+
${ninegrid.getCustomPath(this,"ngVScrollBar.css")}
|
|
21610
21610
|
</style>
|
|
21611
21611
|
|
|
21612
21612
|
<button class='ng-scroll-top' disabled><div class='ng-scroll-icon'></div></button>
|
|
@@ -21931,7 +21931,7 @@ class ngVScrollBar extends HTMLElement
|
|
|
21931
21931
|
e.preventDefault();
|
|
21932
21932
|
|
|
21933
21933
|
if (this.#firstThumbMove) {
|
|
21934
|
-
|
|
21934
|
+
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");
|
|
21935
21935
|
this.#firstThumbMove = false;
|
|
21936
21936
|
}
|
|
21937
21937
|
|
|
@@ -21975,8 +21975,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
21975
21975
|
|
|
21976
21976
|
this.shadowRoot.innerHTML = `
|
|
21977
21977
|
<style>
|
|
21978
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21979
|
-
${
|
|
21978
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngHScrollBar.css";
|
|
21979
|
+
${ninegrid.getCustomPath(this,"ngHScrollBar.css")}
|
|
21980
21980
|
</style>
|
|
21981
21981
|
|
|
21982
21982
|
<button class='ng-scroll-left' disabled><div class='ng-scroll-icon'></div></button>
|
|
@@ -22024,8 +22024,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
22024
22024
|
thumb.css({left : l});
|
|
22025
22025
|
|
|
22026
22026
|
// enable
|
|
22027
|
-
|
|
22028
|
-
|
|
22027
|
+
ninegrid.j.querySelectorAll(".ng-scroll-left", this.shadowRoot).attr("disabled", l == 0 ? true : false);
|
|
22028
|
+
ninegrid.j.querySelectorAll(".ng-scroll-right", this.shadowRoot).attr("disabled", (l == track.width() - thumb.width()) ? true : false);
|
|
22029
22029
|
|
|
22030
22030
|
// edge show
|
|
22031
22031
|
var vbar = this.#owner.body.querySelector("ng-vscrollbar");
|
|
@@ -22089,8 +22089,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
22089
22089
|
|
|
22090
22090
|
thumb.css({left : l});
|
|
22091
22091
|
|
|
22092
|
-
|
|
22093
|
-
|
|
22092
|
+
ninegrid.j.querySelectorAll(".ng-scroll-left", this.shadowRoot).attr("disabled", l == 0 ? true : false);
|
|
22093
|
+
ninegrid.j.querySelectorAll(".ng-scroll-right", this.shadowRoot).attr("disabled", (l == track.width() - thumb.width()) ? true : false);
|
|
22094
22094
|
}
|
|
22095
22095
|
|
|
22096
22096
|
#init = () => {
|
|
@@ -22316,7 +22316,7 @@ class ngSorting
|
|
|
22316
22316
|
* 정렬상태 초기화
|
|
22317
22317
|
*/
|
|
22318
22318
|
#restore = () => {
|
|
22319
|
-
this.#owner.data.sort((a,b) => { return a.__ng._[
|
|
22319
|
+
this.#owner.data.sort((a,b) => { return a.__ng._[ninegrid.ROW.ORIGIN_ORDER] - b.__ng._[ninegrid.ROW.ORIGIN_ORDER]; });
|
|
22320
22320
|
}
|
|
22321
22321
|
|
|
22322
22322
|
#onClick = (e) => {
|
|
@@ -22331,11 +22331,11 @@ class ngSorting
|
|
|
22331
22331
|
|
|
22332
22332
|
switch (e.detail) {
|
|
22333
22333
|
case 1:
|
|
22334
|
-
|
|
22334
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22335
22335
|
|
|
22336
22336
|
setTimeout(() => {
|
|
22337
22337
|
this.#sort(e);
|
|
22338
|
-
|
|
22338
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22339
22339
|
}); // should match OS multi-click speed
|
|
22340
22340
|
break;
|
|
22341
22341
|
case 2:
|
|
@@ -22372,36 +22372,36 @@ class ngSorting
|
|
|
22372
22372
|
if (!e.ctrlKey && !e.shiftKey) {
|
|
22373
22373
|
//remove all class
|
|
22374
22374
|
//$("thead th,thead td", this.#owner.body).not(`[data-col="${col}"]`).removeClass("asc").removeClass("desc");
|
|
22375
|
-
|
|
22375
|
+
ninegrid.j.querySelectorAll(`thead th:not([data-col="${col}"],thead td:not([data-col="${col}"])`, this.#owner.body).removeClass("asc").removeClass("desc");
|
|
22376
22376
|
|
|
22377
22377
|
this.#columns.splice(0, this.#columns.length);
|
|
22378
22378
|
}
|
|
22379
22379
|
|
|
22380
|
-
|
|
22380
|
+
ninegrid.removeIf(this.#columns, m => { return m.colnm == colnm; });
|
|
22381
22381
|
|
|
22382
|
-
if (!
|
|
22383
|
-
|
|
22382
|
+
if (!ninegrid.j.querySelectorAll(td).hasClass("asc") && !ninegrid.j.querySelectorAll(td).hasClass("desc")) {
|
|
22383
|
+
ninegrid.j.querySelectorAll(td).removeClass("desc").addClass("asc");
|
|
22384
22384
|
|
|
22385
22385
|
this.#columns.push({"colnm": colnm, "asc": true, "expr-func": exprFunc, });
|
|
22386
22386
|
}
|
|
22387
|
-
else if (
|
|
22388
|
-
|
|
22387
|
+
else if (ninegrid.j.querySelectorAll(td).hasClass("asc")) {
|
|
22388
|
+
ninegrid.j.querySelectorAll(td).removeClass("asc").addClass("desc");
|
|
22389
22389
|
this.#columns.push({"colnm": colnm, "asc": false, "expr-func": exprFunc, });
|
|
22390
22390
|
}
|
|
22391
22391
|
else {
|
|
22392
|
-
|
|
22392
|
+
ninegrid.j.querySelectorAll(td).removeClass("asc").removeClass("desc");
|
|
22393
22393
|
}
|
|
22394
22394
|
|
|
22395
22395
|
//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"));
|
|
22396
22396
|
|
|
22397
|
-
if (!
|
|
22397
|
+
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")) {
|
|
22398
22398
|
this.#restore();
|
|
22399
22399
|
}
|
|
22400
22400
|
else {
|
|
22401
22401
|
this.#owner.data.sort((a,b) => { return this.#compareFn(a,b); });
|
|
22402
22402
|
}
|
|
22403
22403
|
|
|
22404
|
-
(this.#owner.paging.type ==
|
|
22404
|
+
(this.#owner.paging.type == ninegrid.PAGINGTYPE.CLIENT) ? this.#owner.paging.movePage(1) : this.#owner.view.redraw();
|
|
22405
22405
|
}
|
|
22406
22406
|
|
|
22407
22407
|
#compareFn = (a, b) => {
|
|
@@ -22413,10 +22413,10 @@ class ngSorting
|
|
|
22413
22413
|
const aa = this.#owner.data.conv(a);
|
|
22414
22414
|
const bb = this.#owner.data.conv(b);
|
|
22415
22415
|
|
|
22416
|
-
if (column["expr-func"](aa,aa.__ng._[
|
|
22416
|
+
if (column["expr-func"](aa,aa.__ng._[ninegrid.ROW.INDEX]) > column["expr-func"](bb,bb.__ng._[ninegrid.ROW.INDEX])) {
|
|
22417
22417
|
return column.asc ? 1 : -1;
|
|
22418
22418
|
}
|
|
22419
|
-
else if (column["expr-func"](aa,aa.__ng._[
|
|
22419
|
+
else if (column["expr-func"](aa,aa.__ng._[ninegrid.ROW.INDEX]) < column["expr-func"](bb,bb.__ng._[ninegrid.ROW.INDEX])) {
|
|
22420
22420
|
return column.asc ? -1 : 1;
|
|
22421
22421
|
}
|
|
22422
22422
|
}
|
|
@@ -22476,13 +22476,13 @@ class ngTableManager
|
|
|
22476
22476
|
const target = $(`.col-indicator[data-col=${col}]`, this.#owner.body);
|
|
22477
22477
|
|
|
22478
22478
|
if (target.closest(".ng-container-body").length > 0) {
|
|
22479
|
-
return
|
|
22479
|
+
return ninegrid.BAND.BODY;
|
|
22480
22480
|
}
|
|
22481
22481
|
else if (target.closest(".ng-container-left").length > 0) {
|
|
22482
|
-
return
|
|
22482
|
+
return ninegrid.BAND.LEFT;
|
|
22483
22483
|
}
|
|
22484
22484
|
else if (target.closest(".ng-container-right").length > 0) {
|
|
22485
|
-
return
|
|
22485
|
+
return ninegrid.BAND.RIGHT;
|
|
22486
22486
|
}
|
|
22487
22487
|
};
|
|
22488
22488
|
|
|
@@ -22494,7 +22494,7 @@ class ngTableManager
|
|
|
22494
22494
|
|
|
22495
22495
|
this.#owner.body.querySelector(`colgroup [data-col="${col}"]:not(.cdummy)`).setAttribute("width", w);
|
|
22496
22496
|
|
|
22497
|
-
if (band !=
|
|
22497
|
+
if (band != ninegrid.BAND.BODY) {
|
|
22498
22498
|
var w = 0;
|
|
22499
22499
|
$(`.ng-container-${band} col`, this.#owner.body).each((i,el) => { w += parseInt(el.getAttribute("width")); });
|
|
22500
22500
|
$(`.ng-container-${band}`, this.#owner.body).css({ "width": w, "min-width" : w, });
|
|
@@ -22504,7 +22504,7 @@ class ngTableManager
|
|
|
22504
22504
|
};
|
|
22505
22505
|
|
|
22506
22506
|
this.getExprFunc = (col, colnm) => {
|
|
22507
|
-
const cell =
|
|
22507
|
+
const cell = ninegrid.j.querySelectorAll(colnm ? `[data-col="${col}"][data-bind="${colnm}"]` : `[data-col="${col}"]`, this.#owner.tmpl).elem();
|
|
22508
22508
|
const expr = cell ? cell.getAttribute("data-expr") : null;
|
|
22509
22509
|
|
|
22510
22510
|
return (expr) ? this.#owner.exprFunction(expr) : null;
|
|
@@ -22517,14 +22517,14 @@ class ngTableManager
|
|
|
22517
22517
|
if (async == undefined) async = true;
|
|
22518
22518
|
|
|
22519
22519
|
if (async) {
|
|
22520
|
-
|
|
22520
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22521
22521
|
|
|
22522
22522
|
setTimeout(() => {
|
|
22523
22523
|
var w = this.#getColumnTextWidth(col);
|
|
22524
22524
|
//if (w != 0) this.setColumnWidth(col, minWidth ? Math.max(w, minWidth) : w);
|
|
22525
22525
|
this.setColumnWidth(col, minWidth ? Math.max(w, minWidth) : w);
|
|
22526
22526
|
|
|
22527
|
-
|
|
22527
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22528
22528
|
});
|
|
22529
22529
|
}
|
|
22530
22530
|
else {
|
|
@@ -22553,7 +22553,7 @@ class ngTableManager
|
|
|
22553
22553
|
const th = document.createElement('th');
|
|
22554
22554
|
th.setAttribute("scope", "col");
|
|
22555
22555
|
|
|
22556
|
-
|
|
22556
|
+
ninegrid.j.querySelectorAll(th).addClass("col-indicator");
|
|
22557
22557
|
|
|
22558
22558
|
$(th).html('<div></div>').insertBefore(toTH).css({ "width" : w, "min-width" : w, });
|
|
22559
22559
|
});
|
|
@@ -22748,7 +22748,7 @@ class ngTableManager
|
|
|
22748
22748
|
|
|
22749
22749
|
case "NG-RADIO":
|
|
22750
22750
|
o.value = rowData[colnm];
|
|
22751
|
-
if (o.value != null && o.value != "" && !
|
|
22751
|
+
if (o.value != null && o.value != "" && !ninegrid.isNull(comp.dataSource)) {
|
|
22752
22752
|
o.code = comp.dataSource.map(m => { return m[comp.getAttribute("key") || "key"]; }).includes(o.value) ? 0 : -1;
|
|
22753
22753
|
}
|
|
22754
22754
|
break;
|
|
@@ -22791,7 +22791,7 @@ class ngTableManager
|
|
|
22791
22791
|
}
|
|
22792
22792
|
|
|
22793
22793
|
if (matrixRow == null) {
|
|
22794
|
-
|
|
22794
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22795
22795
|
|
|
22796
22796
|
setTimeout(() => {
|
|
22797
22797
|
for (var i = 0; i < this.#owner.data.count(); i++) {
|
|
@@ -22810,7 +22810,7 @@ class ngTableManager
|
|
|
22810
22810
|
|
|
22811
22811
|
this.#owner.view.redraw();
|
|
22812
22812
|
|
|
22813
|
-
|
|
22813
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22814
22814
|
});
|
|
22815
22815
|
}
|
|
22816
22816
|
else {
|
|
@@ -22841,7 +22841,7 @@ class ngTableManager
|
|
|
22841
22841
|
const v = String(rowData.v[COL_IDX]);
|
|
22842
22842
|
|
|
22843
22843
|
if (bind && v.includes("\n")) {
|
|
22844
|
-
h = Math.max(h,
|
|
22844
|
+
h = Math.max(h, ninegrid.measureTextSize(v, fonts[i]).height);
|
|
22845
22845
|
}
|
|
22846
22846
|
});
|
|
22847
22847
|
|
|
@@ -22874,7 +22874,7 @@ class ngTableManager
|
|
|
22874
22874
|
if (!v) continue;
|
|
22875
22875
|
|
|
22876
22876
|
|
|
22877
|
-
w = Math.max(w,
|
|
22877
|
+
w = Math.max(w, ninegrid.measureTextSize(v, font).width);// + (comp.length > 0 ? 40 : 0);
|
|
22878
22878
|
}
|
|
22879
22879
|
});
|
|
22880
22880
|
|
|
@@ -22928,7 +22928,7 @@ class ngTableWrapper
|
|
|
22928
22928
|
const th = document.createElement('th');
|
|
22929
22929
|
th.setAttribute("scope", "col");
|
|
22930
22930
|
|
|
22931
|
-
|
|
22931
|
+
ninegrid.j.querySelectorAll(th).addClass("col-indicator");
|
|
22932
22932
|
|
|
22933
22933
|
$(th).html('<div></div>').insertBefore(toTH).css({ "width" : w, "min-width" : w, });
|
|
22934
22934
|
});
|
|
@@ -23171,8 +23171,8 @@ class ngTextArea extends ngEditableEx
|
|
|
23171
23171
|
connectedCallback() {
|
|
23172
23172
|
this.shadowRoot.innerHTML = `
|
|
23173
23173
|
<style>
|
|
23174
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
23175
|
-
${
|
|
23174
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngTextArea.css";
|
|
23175
|
+
${ninegrid.getCustomPath(this,"ngTextArea.css")}
|
|
23176
23176
|
</style>
|
|
23177
23177
|
|
|
23178
23178
|
<textarea ondragstart="return false"></textarea>
|
|
@@ -23309,8 +23309,8 @@ class ngTreeItem extends ngCellEx
|
|
|
23309
23309
|
|
|
23310
23310
|
this.shadowRoot.innerHTML = `
|
|
23311
23311
|
<style>
|
|
23312
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
23313
|
-
${
|
|
23312
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngTreeItem.css";
|
|
23313
|
+
${ninegrid.getCustomPath(this,"ngTreeItem.css")}
|
|
23314
23314
|
</style>
|
|
23315
23315
|
|
|
23316
23316
|
<div class="ng-pad"></div>
|
|
@@ -23356,8 +23356,8 @@ class ngTreeItem extends ngCellEx
|
|
|
23356
23356
|
#onClick = e => {
|
|
23357
23357
|
|
|
23358
23358
|
this.#toggle();
|
|
23359
|
-
|
|
23360
|
-
|
|
23359
|
+
ninegrid.j.querySelectorAll(e.target).removeClass("ng-expand-on").removeClass("ng-expand-off");
|
|
23360
|
+
ninegrid.j.querySelectorAll(e.target).addClass(this.#isExpand ? "ng-expand-on" : "ng-expand-off");
|
|
23361
23361
|
};
|
|
23362
23362
|
|
|
23363
23363
|
get prevLevel() {
|
|
@@ -23372,7 +23372,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23372
23372
|
else {
|
|
23373
23373
|
for (var i = parseInt(this.cell.dataset.row) - 1; i >= 0; i--) {
|
|
23374
23374
|
var data = this.owner.data.get(i);
|
|
23375
|
-
if (!data.__ng._[
|
|
23375
|
+
if (!data.__ng._[ninegrid.ROW.EXPAND]) return data[this.cell.dataset.bind];
|
|
23376
23376
|
}
|
|
23377
23377
|
}
|
|
23378
23378
|
|
|
@@ -23381,7 +23381,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23381
23381
|
|
|
23382
23382
|
|
|
23383
23383
|
get #isExpand() {
|
|
23384
|
-
return this.data.__ng._[
|
|
23384
|
+
return this.data.__ng._[ninegrid.ROW.EXPAND];
|
|
23385
23385
|
};
|
|
23386
23386
|
|
|
23387
23387
|
#resetTree = () => {
|
|
@@ -23401,11 +23401,11 @@ class ngTreeItem extends ngCellEx
|
|
|
23401
23401
|
|
|
23402
23402
|
|
|
23403
23403
|
|
|
23404
|
-
|
|
23404
|
+
ninegrid.j.querySelectorAll(".ng-icon", this.shadowRoot)
|
|
23405
23405
|
.removeClass("ng-expand-on").removeClass("ng-expand-off").removeClass("ng-node").removeClass("ng-icon-up").removeClass("ng-icon-down").removeClass("ng-icon-none")
|
|
23406
23406
|
.addClass(hasChildren ? (this.#isExpand ? "ng-expand-on" : "ng-expand-off") : "ng-node");
|
|
23407
23407
|
|
|
23408
|
-
const icon =
|
|
23408
|
+
const icon = ninegrid.j.querySelectorAll(".ng-icon", this.shadowRoot);
|
|
23409
23409
|
if (row == 0) {
|
|
23410
23410
|
if (isLast) {
|
|
23411
23411
|
icon.addClass("ng-icon-none");
|
|
@@ -23435,12 +23435,12 @@ class ngTreeItem extends ngCellEx
|
|
|
23435
23435
|
|
|
23436
23436
|
if (level < nextLevel) {
|
|
23437
23437
|
if (this.#isExpand) {
|
|
23438
|
-
|
|
23438
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-down");
|
|
23439
23439
|
} else {
|
|
23440
|
-
|
|
23440
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-none");
|
|
23441
23441
|
}
|
|
23442
23442
|
} else {
|
|
23443
|
-
|
|
23443
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-none");
|
|
23444
23444
|
}
|
|
23445
23445
|
|
|
23446
23446
|
};
|
|
@@ -23450,7 +23450,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23450
23450
|
};
|
|
23451
23451
|
#expand = (b) => {
|
|
23452
23452
|
|
|
23453
|
-
this.data.__ng._[
|
|
23453
|
+
this.data.__ng._[ninegrid.ROW.EXPAND] = b;
|
|
23454
23454
|
|
|
23455
23455
|
this.#setChildVisible(b);
|
|
23456
23456
|
|
|
@@ -23462,20 +23462,20 @@ class ngTreeItem extends ngCellEx
|
|
|
23462
23462
|
|
|
23463
23463
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23464
23464
|
|
|
23465
|
-
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[
|
|
23465
|
+
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23466
23466
|
if (idx < 0) return;
|
|
23467
23467
|
|
|
23468
23468
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
23469
23469
|
var lvl = this.value;
|
|
23470
23470
|
|
|
23471
23471
|
var prev = this.owner.data.getRow(this.row);
|
|
23472
|
-
var parentExpand = prev.__ng._[
|
|
23472
|
+
var parentExpand = prev.__ng._[ninegrid.ROW.EXPAND];
|
|
23473
23473
|
for (var i = idx + 1; i < arrNF.length; i++) {
|
|
23474
23474
|
var lvl2 = arrNF[i].v[COL_IDX];
|
|
23475
23475
|
|
|
23476
23476
|
|
|
23477
23477
|
if (lvl2 > prev.v[COL_IDX]) {
|
|
23478
|
-
parentExpand = prev.__ng._[
|
|
23478
|
+
parentExpand = prev.__ng._[ninegrid.ROW.EXPAND];
|
|
23479
23479
|
}
|
|
23480
23480
|
else if (lvl2 < prev.v[COL_IDX]) {
|
|
23481
23481
|
parentExpand = null;
|
|
@@ -23484,21 +23484,21 @@ class ngTreeItem extends ngCellEx
|
|
|
23484
23484
|
if (lvl2 <= lvl) break;
|
|
23485
23485
|
|
|
23486
23486
|
if (parentExpand == null) {
|
|
23487
|
-
arrNF[i].__ng._[
|
|
23487
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = !b;
|
|
23488
23488
|
}
|
|
23489
23489
|
else {
|
|
23490
23490
|
|
|
23491
23491
|
if (parentExpand && b) {
|
|
23492
|
-
arrNF[i].__ng._[
|
|
23492
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = false;//!b;
|
|
23493
23493
|
}
|
|
23494
23494
|
else if (parentExpand && !b) {
|
|
23495
|
-
arrNF[i].__ng._[
|
|
23495
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23496
23496
|
}
|
|
23497
23497
|
else if (!parentExpand && b) {
|
|
23498
|
-
arrNF[i].__ng._[
|
|
23498
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23499
23499
|
}
|
|
23500
23500
|
else if (!parentExpand && !b) {
|
|
23501
|
-
arrNF[i].__ng._[
|
|
23501
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23502
23502
|
}
|
|
23503
23503
|
}
|
|
23504
23504
|
|
|
@@ -23510,7 +23510,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23510
23510
|
|
|
23511
23511
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23512
23512
|
|
|
23513
|
-
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[
|
|
23513
|
+
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23514
23514
|
if (idx < 0) return;
|
|
23515
23515
|
|
|
23516
23516
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
@@ -23521,7 +23521,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23521
23521
|
|
|
23522
23522
|
if (lvl2 <= lvl) break;
|
|
23523
23523
|
|
|
23524
|
-
arrNF[i].__ng._[
|
|
23524
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = !b;
|
|
23525
23525
|
}
|
|
23526
23526
|
};
|
|
23527
23527
|
|
|
@@ -23544,7 +23544,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23544
23544
|
|
|
23545
23545
|
#isLast = (row) => {
|
|
23546
23546
|
|
|
23547
|
-
if (
|
|
23547
|
+
if (ninegrid.isNull(row) || row < 0) throw `invalid row [${row}]`;
|
|
23548
23548
|
|
|
23549
23549
|
if (row + 1 >= this.owner.data.count()) return true;
|
|
23550
23550
|
|
|
@@ -23572,9 +23572,9 @@ class ngTreeItem extends ngCellEx
|
|
|
23572
23572
|
var arr = [];
|
|
23573
23573
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23574
23574
|
|
|
23575
|
-
var idx = this.owner.data.findIndexNF_1(this.data.__ng._[
|
|
23575
|
+
var idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23576
23576
|
|
|
23577
|
-
if (idx < 0) throw `invalid row index [${this.data.__ng._[
|
|
23577
|
+
if (idx < 0) throw `invalid row index [${this.data.__ng._[ninegrid.ROW.INDEX]}]`;
|
|
23578
23578
|
|
|
23579
23579
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
23580
23580
|
const lvl = arrNF[idx].v[COL_IDX];
|
|
@@ -23597,7 +23597,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23597
23597
|
|
|
23598
23598
|
#getLevel = (row) => {
|
|
23599
23599
|
|
|
23600
|
-
if (
|
|
23600
|
+
if (ninegrid.isNull(row) || row < 0 || this.owner.data.count() >= 0) return -1;//throw `invalid row [${row}]`;
|
|
23601
23601
|
|
|
23602
23602
|
return this.owner.data.get(row, this.cell.dataset.bind);
|
|
23603
23603
|
};
|
|
@@ -23716,8 +23716,8 @@ class ngView
|
|
|
23716
23716
|
|
|
23717
23717
|
const displayRowCount = parseInt(this.#owner.getAttribute("display-row-count"));
|
|
23718
23718
|
|
|
23719
|
-
if (this.#owner.closest("dialog") &&
|
|
23720
|
-
if ([
|
|
23719
|
+
if (this.#owner.closest("dialog") && ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) return 1;
|
|
23720
|
+
if ([ninegrid.PAGINGTYPE.CLIENT,ninegrid.PAGINGTYPE.SERVER].includes(this.#owner.paging.type)) return this.#owner.paging.linesPerPage;
|
|
23721
23721
|
if (!isNaN(displayRowCount)) {
|
|
23722
23722
|
|
|
23723
23723
|
/**
|
|
@@ -23857,7 +23857,7 @@ class ngView
|
|
|
23857
23857
|
//this.isLastPage = h > 0 ? true : false;
|
|
23858
23858
|
|
|
23859
23859
|
|
|
23860
|
-
if (this.#owner.closest("dialog") &&
|
|
23860
|
+
if (this.#owner.closest("dialog") && ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) {
|
|
23861
23861
|
$("tr.nodata", this.#owner.body).height(0);
|
|
23862
23862
|
|
|
23863
23863
|
var h = 47;//this.#getTrHeight();
|
|
@@ -23961,9 +23961,9 @@ class ngView
|
|
|
23961
23961
|
|
|
23962
23962
|
this.#owner.body.querySelector("ng-vscrollbar").refresh();
|
|
23963
23963
|
|
|
23964
|
-
|
|
23965
|
-
|
|
23966
|
-
|
|
23964
|
+
ninegrid.j.querySelectorAll(".ng-table tbody tr", this.#owner.body).removeClass("hover");
|
|
23965
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
23966
|
+
ninegrid.j.querySelectorAll("ng-filter-panel").removeClass("loading");
|
|
23967
23967
|
|
|
23968
23968
|
/**
|
|
23969
23969
|
this.#owner.body.querySelector(".ng-container-left").style.position = "sticky";
|
|
@@ -24135,7 +24135,7 @@ class ngView
|
|
|
24135
24135
|
selectRow = (oRow1, oRow2) => {
|
|
24136
24136
|
|
|
24137
24137
|
const row1 = this.#getRowIndex(oRow1);
|
|
24138
|
-
const row2 =
|
|
24138
|
+
const row2 = ninegrid.isNull(oRow2) ? row1 : this.#getRowIndex(oRow2);
|
|
24139
24139
|
const matrixRow1= parseInt(row1 * this.#owner.template.length);
|
|
24140
24140
|
const matrixRow2= parseInt(row2 * this.#owner.template.length) + this.#owner.template.length - 1;
|
|
24141
24141
|
|
|
@@ -24146,7 +24146,7 @@ class ngView
|
|
|
24146
24146
|
|
|
24147
24147
|
selectCol = (oCol1, oCol2) => {
|
|
24148
24148
|
const col1 = this.#getColIndex(oCol1);
|
|
24149
|
-
const col2 =
|
|
24149
|
+
const col2 = ninegrid.isNull(oCol2) ? col1 : this.#getColIndex(oCol2);
|
|
24150
24150
|
const matrixRow1= 0;
|
|
24151
24151
|
const matrixRow2= parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
24152
24152
|
|
|
@@ -24157,7 +24157,7 @@ class ngView
|
|
|
24157
24157
|
|
|
24158
24158
|
const row = this.#getRowIndex(oRow);
|
|
24159
24159
|
const col = this.#getColIndex(oCol);
|
|
24160
|
-
const matrixRow = parseInt(row * this.#owner.template.length) +
|
|
24160
|
+
const matrixRow = parseInt(row * this.#owner.template.length) + ninegrid.nvl(subrow, 0);
|
|
24161
24161
|
|
|
24162
24162
|
this.#owner.row.at = row;
|
|
24163
24163
|
|
|
@@ -24248,7 +24248,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24248
24248
|
this.bindRows = [];
|
|
24249
24249
|
this.bindMatrixRows = [];
|
|
24250
24250
|
|
|
24251
|
-
|
|
24251
|
+
ninegrid.j.querySelectorAll(".ng-container tbody.bindable tr:not(.nodata)", this.body).elements.forEach(tr => {
|
|
24252
24252
|
this.bindRows .push(parseInt(tr.dataset.row));
|
|
24253
24253
|
this.bindMatrixRows .push(parseInt(tr.dataset.matrixRow));
|
|
24254
24254
|
});
|
|
@@ -24345,8 +24345,8 @@ class ninegridContainer extends HTMLElement
|
|
|
24345
24345
|
break;
|
|
24346
24346
|
|
|
24347
24347
|
case "col-indicator-type":
|
|
24348
|
-
|
|
24349
|
-
.removeClass(
|
|
24348
|
+
ninegrid.j.querySelectorAll(".ng-table thead .col-indicator-rowgroup", this.body)
|
|
24349
|
+
.removeClass(ninegrid.COLINDICATORTYPE.EXPAND).removeClass(ninegrid.COLINDICATORTYPE.COLLAPSE)
|
|
24350
24350
|
.addClass(newValue);
|
|
24351
24351
|
this.#resetHeight();
|
|
24352
24352
|
break;
|
|
@@ -24356,7 +24356,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24356
24356
|
this.#resetHeight();
|
|
24357
24357
|
break;
|
|
24358
24358
|
case "enable-fixed-col":
|
|
24359
|
-
(newValue == "true") ?
|
|
24359
|
+
(newValue == "true") ? ninegrid.j.querySelectorAll(this).addClass(name) : ninegrid.j.querySelectorAll(this).removeClass(name);
|
|
24360
24360
|
break;
|
|
24361
24361
|
|
|
24362
24362
|
case "select-type":
|
|
@@ -24371,20 +24371,20 @@ class ninegridContainer extends HTMLElement
|
|
|
24371
24371
|
|
|
24372
24372
|
case "show-menu-icon":
|
|
24373
24373
|
case "show-title-bar":
|
|
24374
|
-
const showBar =
|
|
24375
|
-
const showIcon =
|
|
24374
|
+
const showBar = ninegrid.j.querySelectorAll(this).attr("show-title-bar") == "true";
|
|
24375
|
+
const showIcon = ninegrid.j.querySelectorAll(this).attr("show-menu-icon") == "true";
|
|
24376
24376
|
const ngHead = this.shadowRoot.querySelector("ng-head");
|
|
24377
24377
|
if (!ngHead) break;
|
|
24378
24378
|
const ngMenu = ngHead.shadowRoot.querySelector("ng-menu");
|
|
24379
24379
|
|
|
24380
24380
|
if (showBar) {
|
|
24381
|
-
|
|
24381
|
+
ninegrid.j.querySelectorAll(ngHead).addClass('expand');
|
|
24382
24382
|
$(ngHead.shadowRoot).children().not("style").show();
|
|
24383
24383
|
|
|
24384
|
-
if (!showIcon)
|
|
24384
|
+
if (!showIcon) ninegrid.j.querySelectorAll(ngMenu).hide();
|
|
24385
24385
|
}
|
|
24386
24386
|
else {
|
|
24387
|
-
(showIcon) ?
|
|
24387
|
+
(showIcon) ? ninegrid.j.querySelectorAll(ngHead).removeClass('expand').show() : ninegrid.j.querySelectorAll(ngHead).hide();
|
|
24388
24388
|
}
|
|
24389
24389
|
|
|
24390
24390
|
this.#resetHeight();
|
|
@@ -24395,7 +24395,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24395
24395
|
this.#resetHeight();
|
|
24396
24396
|
break;
|
|
24397
24397
|
case "show-status-bar":
|
|
24398
|
-
(newValue == "true") ?
|
|
24398
|
+
(newValue == "true") ? ninegrid.j.querySelectorAll("ng-foot", this.shadowRoot).addClass('expand') : ninegrid.j.querySelectorAll("ng-foot", this.shadowRoot).removeClass('expand');
|
|
24399
24399
|
this.#resetHeight();
|
|
24400
24400
|
break;
|
|
24401
24401
|
}
|
|
@@ -24421,7 +24421,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24421
24421
|
|
|
24422
24422
|
var arr = [];
|
|
24423
24423
|
$(".ng-container-body tbody.fixed tr", this.body).not(".nodata").each((i, tr) => {
|
|
24424
|
-
arr.push({ INDEX: tr.data.__ng._[
|
|
24424
|
+
arr.push({ INDEX: tr.data.__ng._[ninegrid.ROW.INDEX], ROW: tr.dataset.row } );
|
|
24425
24425
|
});
|
|
24426
24426
|
|
|
24427
24427
|
arr.forEach(o => {
|
|
@@ -24554,7 +24554,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24554
24554
|
this.elements.bodyLeft.html(table.clone());
|
|
24555
24555
|
$("col,th,td", this.elements.bodyLeft).not("[fixed=left]").remove();
|
|
24556
24556
|
var w = 0;//this.elements.bodyLeft.find("th,td").length == 0 ? 0 : this.elements.bodyLeft.find("table > tbody.bindable").width();
|
|
24557
|
-
$("col", this.elements.bodyLeft).each((i,el) => { w += parseInt(
|
|
24557
|
+
$("col", this.elements.bodyLeft).each((i,el) => { w += parseInt(ninegrid.j.querySelectorAll(el).attr("width")); });
|
|
24558
24558
|
this.elements.bodyLeft.css({
|
|
24559
24559
|
"width" : w,//this.elements.bodyLeft.find("table > tbody.bindable").width(),
|
|
24560
24560
|
"min-width" : w,//this.elements.bodyLeft.find("table > tbody.bindable").width(),
|
|
@@ -24563,7 +24563,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24563
24563
|
this.elements.bodyRight.html(table.clone());
|
|
24564
24564
|
$("col,th,td", this.elements.bodyRight).not("[fixed=right]").remove();
|
|
24565
24565
|
w = 0;//this.elements.bodyLeft.find("th,td").length == 0 ? 0 : this.elements.bodyLeft.find("table > tbody.bindable").width();
|
|
24566
|
-
$("col", this.elements.bodyRight).each((i,el) => { w += parseInt(
|
|
24566
|
+
$("col", this.elements.bodyRight).each((i,el) => { w += parseInt(ninegrid.j.querySelectorAll(el).attr("width")); });
|
|
24567
24567
|
|
|
24568
24568
|
this.elements.bodyRight.css({
|
|
24569
24569
|
"width" : w,//this.elements.bodyRight.find("table > tbody").width(),
|
|
@@ -24644,7 +24644,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24644
24644
|
|
|
24645
24645
|
this.originFormat = this.outerHTML;
|
|
24646
24646
|
|
|
24647
|
-
this.uuid =
|
|
24647
|
+
this.uuid = ninegrid.randomUUID(); //crypto.randomUUID();
|
|
24648
24648
|
if (!this.id) this.id = this.uuid;
|
|
24649
24649
|
|
|
24650
24650
|
|
|
@@ -24725,15 +24725,15 @@ class ninegridContainer extends HTMLElement
|
|
|
24725
24725
|
|
|
24726
24726
|
this.#layouts.push(tbl);
|
|
24727
24727
|
|
|
24728
|
-
if (!
|
|
24728
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) {
|
|
24729
24729
|
this.#createDummy(tbl);
|
|
24730
24730
|
}
|
|
24731
24731
|
});
|
|
24732
24732
|
|
|
24733
24733
|
const tmpl = `
|
|
24734
24734
|
<style>
|
|
24735
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
24736
|
-
${
|
|
24735
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
24736
|
+
${ninegrid.getCustomPath(this,"ninegrid.css")}
|
|
24737
24737
|
</style>
|
|
24738
24738
|
|
|
24739
24739
|
<ng-head></ng-head>
|
|
@@ -24766,12 +24766,12 @@ class ninegridContainer extends HTMLElement
|
|
|
24766
24766
|
const value = combo.getAttribute("codename") || "codename";
|
|
24767
24767
|
const multiSeparator = combo.getAttribute("multi-separator") || ",";
|
|
24768
24768
|
|
|
24769
|
-
return
|
|
24769
|
+
return ninegrid.binarySearchValue(combo.dataSource, code, data[cell.dataset.bind], value, multiSeparator)
|
|
24770
24770
|
};
|
|
24771
24771
|
//$("tbody", this.#layouts[0]).before($("tbody", this.#layouts[0]).clone().addClass("fixed")).addClass("bindable");
|
|
24772
24772
|
|
|
24773
24773
|
for (const layout of this.#layouts) {
|
|
24774
|
-
$(
|
|
24774
|
+
$(ninegrid.j.querySelectorAll("tbody", layout).addClass("bindable").elem()).before(`<tbody class="fixed"></tbody>`);
|
|
24775
24775
|
}
|
|
24776
24776
|
|
|
24777
24777
|
$(this.shadowRoot).append(tmpl);
|
|
@@ -24848,10 +24848,10 @@ class ninegridContainer extends HTMLElement
|
|
|
24848
24848
|
}
|
|
24849
24849
|
}
|
|
24850
24850
|
|
|
24851
|
-
if (!
|
|
24851
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) {
|
|
24852
24852
|
this.filtering = new ngFiltering(this);
|
|
24853
24853
|
}
|
|
24854
|
-
if (!
|
|
24854
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("combo") && !ninegrid.j.querySelectorAll(this).hasClass("filter")) {
|
|
24855
24855
|
$(this.shadowRoot).append($('<ng-combo-panel></ng-combo-panel').hide());
|
|
24856
24856
|
}
|
|
24857
24857
|
|
|
@@ -24861,7 +24861,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24861
24861
|
|
|
24862
24862
|
this.#colResizer = new ngColResizer(this);
|
|
24863
24863
|
this.#colMover = new ngColMover(this);
|
|
24864
|
-
if (!
|
|
24864
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) this.#rowMover = new ngRowMover(this);
|
|
24865
24865
|
|
|
24866
24866
|
|
|
24867
24867
|
this.#initOption();
|
|
@@ -24890,7 +24890,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24890
24890
|
|
|
24891
24891
|
|
|
24892
24892
|
/** main, detail */
|
|
24893
|
-
if (!
|
|
24893
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("filter") && !ninegrid.j.querySelectorAll(this).hasClass("combo")) {
|
|
24894
24894
|
|
|
24895
24895
|
/**
|
|
24896
24896
|
$(this).on("mousedown", e => {
|
|
@@ -24928,7 +24928,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24928
24928
|
} */
|
|
24929
24929
|
if (!this.classList.contains("simple")) {
|
|
24930
24930
|
setTimeout(() => {
|
|
24931
|
-
this.dispatchEvent(new CustomEvent(
|
|
24931
|
+
this.dispatchEvent(new CustomEvent(ninegrid.EVENT.LOAD, { bubbles: true, detail: {} }));
|
|
24932
24932
|
}, 100);
|
|
24933
24933
|
}
|
|
24934
24934
|
|
|
@@ -24936,7 +24936,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24936
24936
|
if (head) {
|
|
24937
24937
|
head.shadowRoot.querySelectorAll("buttons button").forEach(el => {
|
|
24938
24938
|
el.addEventListener("click", e => {
|
|
24939
|
-
const ce = new CustomEvent(
|
|
24939
|
+
const ce = new CustomEvent(ninegrid.EVENT.BUTTON_CLICK, { bubbles: true, detail: { target: el, } });
|
|
24940
24940
|
//ce.target = e.target;
|
|
24941
24941
|
this.dispatchEvent(ce);
|
|
24942
24942
|
});
|
|
@@ -24965,29 +24965,29 @@ class ninegridContainer extends HTMLElement
|
|
|
24965
24965
|
|
|
24966
24966
|
#initOption = () => {
|
|
24967
24967
|
|
|
24968
|
-
this.lastRowHidden = isNaN(parseInt(
|
|
24968
|
+
this.lastRowHidden = isNaN(parseInt(ninegrid.j.querySelectorAll(this).attr("display-row-count")));
|
|
24969
24969
|
|
|
24970
24970
|
if (!this.paging) this.paging = {}; //row detail 팝청창 오픈시 오류
|
|
24971
24971
|
|
|
24972
|
-
|
|
24972
|
+
ninegrid.j.querySelectorAll(this).attr("col-indicator-type", ninegrid.j.querySelectorAll(this).attr("col-indicator-type") || ninegrid.COLINDICATORTYPE.COLLAPSE);
|
|
24973
24973
|
|
|
24974
|
-
|
|
24975
|
-
|
|
24976
|
-
|
|
24977
|
-
|
|
24974
|
+
ninegrid.j.querySelectorAll(this).attr("auto-fit-col", ninegrid.j.querySelectorAll(this).attr("auto-fit-col") || "false");
|
|
24975
|
+
ninegrid.j.querySelectorAll(this).attr("col-resizable", ninegrid.j.querySelectorAll(this).attr("col-resizable") || "true");
|
|
24976
|
+
ninegrid.j.querySelectorAll(this).attr("row-resizable", ninegrid.j.querySelectorAll(this).attr("row-resizable") || "false");
|
|
24977
|
+
ninegrid.j.querySelectorAll(this).attr("col-movable", ninegrid.j.querySelectorAll(this).attr("col-movable") || "false"); //web attribute
|
|
24978
24978
|
//ninegrid.j.querySelectorAll(this).attr("row-movable", ninegrid.j.querySelectorAll(this).attr("row-movable") || "false");
|
|
24979
|
-
|
|
24979
|
+
ninegrid.j.querySelectorAll(this).attr("enable-fixed-col", ninegrid.j.querySelectorAll(this).attr("enable-fixed-col") || "false");
|
|
24980
24980
|
|
|
24981
|
-
|
|
24982
|
-
|
|
24983
|
-
|
|
24981
|
+
ninegrid.j.querySelectorAll(this).attr("show-title-bar", ninegrid.j.querySelectorAll(this).attr("show-title-bar") || "false");
|
|
24982
|
+
ninegrid.j.querySelectorAll(this).attr("show-menu-icon", ninegrid.j.querySelectorAll(this).attr("show-menu-icon") || "false");
|
|
24983
|
+
ninegrid.j.querySelectorAll(this).attr("show-status-bar", ninegrid.j.querySelectorAll(this).attr("show-status-bar") || "false");
|
|
24984
24984
|
|
|
24985
|
-
|
|
24986
|
-
|
|
24985
|
+
ninegrid.j.querySelectorAll(this).attr("show-thead", ninegrid.j.querySelectorAll(this).attr("show-thead") || "true");
|
|
24986
|
+
ninegrid.j.querySelectorAll(this).attr("show-tfoot", ninegrid.j.querySelectorAll(this).attr("show-tfoot") || "true");
|
|
24987
24987
|
|
|
24988
|
-
|
|
24989
|
-
|
|
24990
|
-
|
|
24988
|
+
ninegrid.j.querySelectorAll(this).attr("select-type", ninegrid.j.querySelectorAll(this).attr("select-type") || ninegrid.SELECTTYPE.CELL);
|
|
24989
|
+
ninegrid.j.querySelectorAll(this).attr("paging-type", ninegrid.j.querySelectorAll(this).attr("paging-type") || ninegrid.PAGINGTYPE.NONE);
|
|
24990
|
+
ninegrid.j.querySelectorAll(this).attr("paging-count", ninegrid.j.querySelectorAll(this).attr("paging-count") || ninegrid.PAGINGCOUNT.AUTO);
|
|
24991
24991
|
};
|
|
24992
24992
|
|
|
24993
24993
|
#createObserver = () => {
|
|
@@ -25025,14 +25025,14 @@ class ninegridContainer extends HTMLElement
|
|
|
25025
25025
|
let prevWidth = [];
|
|
25026
25026
|
var totalWidth = 0;
|
|
25027
25027
|
|
|
25028
|
-
$(".ng-container-body col", this.body).each((i,el) => { prevWidth.push({ col: el, width: Number(
|
|
25028
|
+
$(".ng-container-body col", this.body).each((i,el) => { prevWidth.push({ col: el, width: Number(ninegrid.j.querySelectorAll(el).attr("width")), }); });
|
|
25029
25029
|
prevWidth.forEach(o => { totalWidth += o.width; });
|
|
25030
25030
|
|
|
25031
25031
|
//$('.ng-container-body > table', this.body).css({ "width": "100%", "min-width": "100%", });
|
|
25032
25032
|
const tableWidth = $('.ng-container-body', this.body).width();
|
|
25033
25033
|
|
|
25034
25034
|
if (tableWidth != 0) {
|
|
25035
|
-
prevWidth.forEach(o => { var w = o.width * tableWidth / totalWidth;
|
|
25035
|
+
prevWidth.forEach(o => { var w = o.width * tableWidth / totalWidth; ninegrid.j.querySelectorAll(o.col).attr("width", w); });
|
|
25036
25036
|
}
|
|
25037
25037
|
}
|
|
25038
25038
|
|
|
@@ -25068,7 +25068,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25068
25068
|
var cols = [];
|
|
25069
25069
|
$(".col-indicator", this.body).each((i,td) => {
|
|
25070
25070
|
cols.push({from: parseInt(td.dataset.col), to: i});
|
|
25071
|
-
td.innerHTML = `<div>${
|
|
25071
|
+
td.innerHTML = `<div>${ninegrid.num2ExcelCol(i)}</div>`;
|
|
25072
25072
|
});
|
|
25073
25073
|
|
|
25074
25074
|
|
|
@@ -25090,15 +25090,15 @@ class ninegridContainer extends HTMLElement
|
|
|
25090
25090
|
});
|
|
25091
25091
|
|
|
25092
25092
|
$(".last", layout.currentTable).each((i,td) => {
|
|
25093
|
-
|
|
25093
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
25094
25094
|
});
|
|
25095
25095
|
}
|
|
25096
25096
|
|
|
25097
25097
|
this.template.find(".last").each((i,td) => {
|
|
25098
|
-
|
|
25098
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
25099
25099
|
});
|
|
25100
25100
|
$(".last", this.body).each((i,td) => {
|
|
25101
|
-
|
|
25101
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
25102
25102
|
});
|
|
25103
25103
|
};
|
|
25104
25104
|
|
|
@@ -25164,21 +25164,21 @@ class ninegridContainer extends HTMLElement
|
|
|
25164
25164
|
|
|
25165
25165
|
if (thead.querySelector(".col-indicator-rowgroup")) return;
|
|
25166
25166
|
|
|
25167
|
-
const tr =
|
|
25167
|
+
const tr = ninegrid.j.querySelectorAll(thead.insertRow(0)).attr("role", "row").addClass("col-indicator-rowgroup").elem();
|
|
25168
25168
|
var cnt = 0;
|
|
25169
25169
|
|
|
25170
25170
|
$(".ng-container-body > table > tbody.bindable > tr", this.body).eq(0).find("th,td").each((index, td) => {
|
|
25171
25171
|
|
|
25172
|
-
if (!
|
|
25172
|
+
if (!ninegrid.j.querySelectorAll(td).hasClass("dummy")) {
|
|
25173
25173
|
for (var i = 0; i < td.colSpan; i++) {
|
|
25174
|
-
$(tr).append(tdTmpl.replace("@col", cnt).replace("@text",
|
|
25174
|
+
$(tr).append(tdTmpl.replace("@col", cnt).replace("@text", ninegrid.num2ExcelCol(cnt++)));
|
|
25175
25175
|
}
|
|
25176
25176
|
}
|
|
25177
25177
|
});
|
|
25178
25178
|
|
|
25179
25179
|
var t = [];
|
|
25180
|
-
$("colgroup col", this.body).each((i,el) => { t.push({ width: parseInt(
|
|
25181
|
-
$("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, });
|
|
25180
|
+
$("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")} ); });
|
|
25181
|
+
$("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); });
|
|
25182
25182
|
}
|
|
25183
25183
|
|
|
25184
25184
|
#prepare = () => {
|
|
@@ -25235,13 +25235,13 @@ class ninegridContainer extends HTMLElement
|
|
|
25235
25235
|
|
|
25236
25236
|
if (thead.length <= 0) $('<thead></thead>').appendTo(table);
|
|
25237
25237
|
|
|
25238
|
-
|
|
25238
|
+
ninegrid.j.querySelectorAll(table).attr("role", "table") .addClass("ng-table");
|
|
25239
25239
|
|
|
25240
|
-
|
|
25241
|
-
|
|
25242
|
-
|
|
25243
|
-
|
|
25244
|
-
|
|
25240
|
+
ninegrid.j.querySelectorAll("tbody th,tbody td", table) .attr("tabindex", 0);
|
|
25241
|
+
ninegrid.j.querySelectorAll("thead,tbody,tfoot", table) .attr("role", "rowgroup");
|
|
25242
|
+
ninegrid.j.querySelectorAll("tr", table) .attr("role", "row");
|
|
25243
|
+
ninegrid.j.querySelectorAll("tbody > tr", table) .attr("role", "gridcell");
|
|
25244
|
+
ninegrid.j.querySelectorAll("th,td", table) .attr("scope", "col");
|
|
25245
25245
|
|
|
25246
25246
|
this.#resetColIndex($(table), "thead");
|
|
25247
25247
|
this.#resetColIndex($(table), "tbody.bindable");
|
|
@@ -25251,7 +25251,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25251
25251
|
this.#createColIndicator();
|
|
25252
25252
|
|
|
25253
25253
|
table.querySelectorAll("col").forEach((el,i) => {
|
|
25254
|
-
|
|
25254
|
+
ninegrid.j.querySelectorAll(`[data-col="${i}"]`, table).attr("fixed", ninegrid.j.querySelectorAll(el).attr("fixed"));
|
|
25255
25255
|
});
|
|
25256
25256
|
}
|
|
25257
25257
|
|
|
@@ -25333,7 +25333,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25333
25333
|
selectRow = (nRow1, nRow2) => {
|
|
25334
25334
|
|
|
25335
25335
|
const row1 = this.#getRowIndex(nRow1);
|
|
25336
|
-
const row2 =
|
|
25336
|
+
const row2 = ninegrid.isNull(oRow2) ? row1 : this.#getRowIndex(nRow2);
|
|
25337
25337
|
const matrixRow1= parseInt(row1 * this.template.length);
|
|
25338
25338
|
const matrixRow2= parseInt(row2 * this.template.length) + this.template.length - 1;
|
|
25339
25339
|
|
|
@@ -25353,7 +25353,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25353
25353
|
*/
|
|
25354
25354
|
selectCol = (oCol1, oCol2) => {
|
|
25355
25355
|
const col1 = this.#getColIndex(oCol1);
|
|
25356
|
-
const col2 =
|
|
25356
|
+
const col2 = ninegrid.isNull(oCol2) ? col1 : this.#getColIndex(oCol2);
|
|
25357
25357
|
const matrixRow1= 0;
|
|
25358
25358
|
const matrixRow2= parseInt(this.data.count() * this.template.length - 1);
|
|
25359
25359
|
|
|
@@ -25373,7 +25373,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25373
25373
|
|
|
25374
25374
|
const row = this.#getRowIndex(nRow);
|
|
25375
25375
|
const col = this.#getColIndex(oCol);
|
|
25376
|
-
const matrixRow = parseInt(row * this.template.length) +
|
|
25376
|
+
const matrixRow = parseInt(row * this.template.length) + ninegrid.nvl(nSubrow, 0);
|
|
25377
25377
|
|
|
25378
25378
|
this.row.at = row;
|
|
25379
25379
|
|
|
@@ -25466,8 +25466,8 @@ class nxConfirmPopup extends HTMLElement
|
|
|
25466
25466
|
|
|
25467
25467
|
title = title || 'Confirm';
|
|
25468
25468
|
|
|
25469
|
-
for (const prop in
|
|
25470
|
-
options[prop] = options[prop] ||
|
|
25469
|
+
for (const prop in ninegrid.options.confirm) {
|
|
25470
|
+
options[prop] = options[prop] || ninegrid.options.confirm[prop];
|
|
25471
25471
|
}
|
|
25472
25472
|
|
|
25473
25473
|
$('nx-confirm-popup', document.body).remove();
|
|
@@ -25519,8 +25519,8 @@ class nxAlertPopup extends HTMLElement
|
|
|
25519
25519
|
|
|
25520
25520
|
title = title || 'Alert';
|
|
25521
25521
|
|
|
25522
|
-
for (const prop in
|
|
25523
|
-
options[prop] = options[prop] ||
|
|
25522
|
+
for (const prop in ninegrid.options.alert) {
|
|
25523
|
+
options[prop] = options[prop] || ninegrid.options.alert[prop];
|
|
25524
25524
|
}
|
|
25525
25525
|
|
|
25526
25526
|
$('nx-alert-popup', document.body).remove();
|
|
@@ -25556,15 +25556,15 @@ class nxDialog extends HTMLElement
|
|
|
25556
25556
|
|
|
25557
25557
|
const v = this.innerHTML;
|
|
25558
25558
|
const cssFile = this.getAttribute("css-file");
|
|
25559
|
-
const customFile1 = cssFile ? `@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
25560
|
-
const customFile2 = cssFile ?
|
|
25559
|
+
const customFile1 = cssFile ? `@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/${cssFile}";`: "";
|
|
25560
|
+
const customFile2 = cssFile ? ninegrid.getCustomPath(this, cssFile) : "";
|
|
25561
25561
|
|
|
25562
25562
|
//console.log(ninegrid.getCustomPath(this,"nxDialog.css"));
|
|
25563
25563
|
|
|
25564
25564
|
this.innerHTML = `
|
|
25565
25565
|
<style>
|
|
25566
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
25567
|
-
${
|
|
25566
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxDialog.css";
|
|
25567
|
+
${ninegrid.getCustomPath(this,"nxDialog.css") || ""}
|
|
25568
25568
|
${customFile1 || ""}
|
|
25569
25569
|
${customFile2 || ""}
|
|
25570
25570
|
</style>
|
|
@@ -25623,7 +25623,7 @@ class nxDialog extends HTMLElement
|
|
|
25623
25623
|
|
|
25624
25624
|
#init = () => {
|
|
25625
25625
|
$(".close,.close2", this).on("click", e => {
|
|
25626
|
-
|
|
25626
|
+
ninegrid.j.querySelectorAll('dialog', this).addClass("out");
|
|
25627
25627
|
setTimeout(() => { this.close(); }, 300);
|
|
25628
25628
|
});
|
|
25629
25629
|
|
|
@@ -25719,8 +25719,8 @@ class nxDiv extends HTMLElement {
|
|
|
25719
25719
|
const htmlTmpl = document.createElement("template");
|
|
25720
25720
|
htmlTmpl.innerHTML = `
|
|
25721
25721
|
<style>
|
|
25722
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
25723
|
-
${
|
|
25722
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxDiv.css";
|
|
25723
|
+
${ninegrid.getCustomPath(this,"nxDiv.css")}
|
|
25724
25724
|
|
|
25725
25725
|
:host {
|
|
25726
25726
|
}
|
|
@@ -25782,9 +25782,9 @@ class nxI18nExt extends HTMLElement
|
|
|
25782
25782
|
|
|
25783
25783
|
this.#target.innerHTML = i18next.t(this.#i18n);
|
|
25784
25784
|
}
|
|
25785
|
-
else if (this.#dataSource.length > 0 && !
|
|
25785
|
+
else if (this.#dataSource.length > 0 && !ninegrid.isNull(this.#value)) {
|
|
25786
25786
|
|
|
25787
|
-
var index = this.#dataSource.findIndex(m => m[this.#key] ==
|
|
25787
|
+
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid.global.locale);
|
|
25788
25788
|
if (index < 0) index = 0;
|
|
25789
25789
|
|
|
25790
25790
|
this.#target.innerHTML = this.#dataSource[index][this.#value];
|
|
@@ -25865,10 +25865,10 @@ class nxI18nExt extends HTMLElement
|
|
|
25865
25865
|
return result;
|
|
25866
25866
|
},
|
|
25867
25867
|
updateContent : () => {
|
|
25868
|
-
|
|
25868
|
+
ninegrid.querySelectorAll("nx-i18n,nx-span").forEach(v => {
|
|
25869
25869
|
if (v.refresh) v.refresh();
|
|
25870
25870
|
});
|
|
25871
|
-
|
|
25871
|
+
ninegrid.querySelectorAll("nine-grid").forEach(v => {
|
|
25872
25872
|
if (v.refresh) v.refreshData();
|
|
25873
25873
|
});
|
|
25874
25874
|
},
|
|
@@ -25900,11 +25900,11 @@ class nxI18nExt extends HTMLElement
|
|
|
25900
25900
|
|
|
25901
25901
|
if (xhr.status === 200) {
|
|
25902
25902
|
var text = xhr.responseText;
|
|
25903
|
-
i18next.addResourceBundle(locale, 'translation',
|
|
25903
|
+
i18next.addResourceBundle(locale, 'translation', ninegrid.i18n.convertArrayToJSON(text.split("\n")));
|
|
25904
25904
|
|
|
25905
25905
|
// 마지막 파일인 경우 화면갱신
|
|
25906
25906
|
if (--count == 0) {
|
|
25907
|
-
i18next.changeLanguage(
|
|
25907
|
+
i18next.changeLanguage(ninegrid.global.locale);
|
|
25908
25908
|
}
|
|
25909
25909
|
}
|
|
25910
25910
|
|
|
@@ -25953,8 +25953,8 @@ class nxSidebar extends HTMLElement
|
|
|
25953
25953
|
//this.shadowRoot.innerHTML = `
|
|
25954
25954
|
template.innerHTML = `
|
|
25955
25955
|
<style>
|
|
25956
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
25957
|
-
${
|
|
25956
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebar.css";
|
|
25957
|
+
${ninegrid.getCustomPath(this,"nxSidebar.css")}
|
|
25958
25958
|
|
|
25959
25959
|
:host {
|
|
25960
25960
|
--min-width: ${this.#minWidth}px;
|
|
@@ -26298,8 +26298,8 @@ class nxSidebarItem extends HTMLElement {
|
|
|
26298
26298
|
|
|
26299
26299
|
this.shadowRoot.innerHTML = `
|
|
26300
26300
|
<style>
|
|
26301
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26302
|
-
${
|
|
26301
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebarItem.css";
|
|
26302
|
+
${ninegrid.getCustomPath(this,"nxSidebarItem.css")}
|
|
26303
26303
|
</style>
|
|
26304
26304
|
|
|
26305
26305
|
<li>
|
|
@@ -26344,8 +26344,8 @@ class nxSidebarMenuitem extends HTMLElement {
|
|
|
26344
26344
|
|
|
26345
26345
|
this.shadowRoot.innerHTML = `
|
|
26346
26346
|
<style>
|
|
26347
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26348
|
-
${
|
|
26347
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebarMenuitem.css";
|
|
26348
|
+
${ninegrid.getCustomPath(this,"nxSidebarMenuitem.css")}
|
|
26349
26349
|
</style>
|
|
26350
26350
|
|
|
26351
26351
|
<li>
|
|
@@ -26375,7 +26375,7 @@ class nxSideMenu extends HTMLElement
|
|
|
26375
26375
|
};
|
|
26376
26376
|
|
|
26377
26377
|
connectedCallback() {
|
|
26378
|
-
|
|
26378
|
+
ninegrid.waitForInnerHTML(this)
|
|
26379
26379
|
.then(() => this.#init())
|
|
26380
26380
|
.catch(error => console.error(error));
|
|
26381
26381
|
};
|
|
@@ -26436,8 +26436,8 @@ class nxSideMenu extends HTMLElement
|
|
|
26436
26436
|
|
|
26437
26437
|
this.shadowRoot.innerHTML = `
|
|
26438
26438
|
<style>
|
|
26439
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26440
|
-
${
|
|
26439
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenu.css";
|
|
26440
|
+
${ninegrid.getCustomPath(this,"nxSideMenu.css")}
|
|
26441
26441
|
|
|
26442
26442
|
:host {
|
|
26443
26443
|
--min-width: ${this.#minWidth}px;
|
|
@@ -26523,7 +26523,7 @@ class nxSideMenuHead extends HTMLElement
|
|
|
26523
26523
|
}
|
|
26524
26524
|
|
|
26525
26525
|
connectedCallback() {
|
|
26526
|
-
|
|
26526
|
+
ninegrid.waitForInnerHTML(this)
|
|
26527
26527
|
.then(() => this.#init())
|
|
26528
26528
|
.catch(error => console.error(error));
|
|
26529
26529
|
}
|
|
@@ -26553,8 +26553,8 @@ class nxSideMenuHead extends HTMLElement
|
|
|
26553
26553
|
|
|
26554
26554
|
this.shadowRoot.innerHTML = `
|
|
26555
26555
|
<style>
|
|
26556
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26557
|
-
${
|
|
26556
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuHead.css";
|
|
26557
|
+
${ninegrid.getCustomPath(this,"nxSideMenuHead.css")}
|
|
26558
26558
|
|
|
26559
26559
|
:host {
|
|
26560
26560
|
--icon-color: ${iconColor};
|
|
@@ -26590,7 +26590,7 @@ class nxSideMenuFoot extends HTMLElement
|
|
|
26590
26590
|
}
|
|
26591
26591
|
|
|
26592
26592
|
connectedCallback() {
|
|
26593
|
-
|
|
26593
|
+
ninegrid.waitForInnerHTML(this)
|
|
26594
26594
|
.then(() => this.#init())
|
|
26595
26595
|
.catch(error => console.error(error));
|
|
26596
26596
|
}
|
|
@@ -26619,8 +26619,8 @@ class nxSideMenuFoot extends HTMLElement
|
|
|
26619
26619
|
|
|
26620
26620
|
this.shadowRoot.innerHTML = `
|
|
26621
26621
|
<style>
|
|
26622
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26623
|
-
${
|
|
26622
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuFoot.css";
|
|
26623
|
+
${ninegrid.getCustomPath(this,"nxSideMenuFoot.css")}
|
|
26624
26624
|
|
|
26625
26625
|
:host {
|
|
26626
26626
|
--icon-color: ${iconColor};
|
|
@@ -26657,7 +26657,7 @@ class nxSideMenuBody extends HTMLElement
|
|
|
26657
26657
|
}
|
|
26658
26658
|
|
|
26659
26659
|
connectedCallback() {
|
|
26660
|
-
|
|
26660
|
+
ninegrid.waitForInnerHTML(this)
|
|
26661
26661
|
.then(() => this.#init())
|
|
26662
26662
|
.catch(error => console.error(error));
|
|
26663
26663
|
}
|
|
@@ -26706,11 +26706,11 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26706
26706
|
super();
|
|
26707
26707
|
this.attachShadow({ mode: 'open' });
|
|
26708
26708
|
|
|
26709
|
-
this.uuid =
|
|
26709
|
+
this.uuid = ninegrid.randomUUID();
|
|
26710
26710
|
}
|
|
26711
26711
|
|
|
26712
26712
|
connectedCallback() {
|
|
26713
|
-
|
|
26713
|
+
ninegrid.waitForInnerHTML(this)
|
|
26714
26714
|
.then(() => this.#init())
|
|
26715
26715
|
.catch(error => console.error(error));
|
|
26716
26716
|
}
|
|
@@ -26722,7 +26722,7 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26722
26722
|
this.render();
|
|
26723
26723
|
|
|
26724
26724
|
|
|
26725
|
-
this.#owner =
|
|
26725
|
+
this.#owner = ninegrid.closest("nx-side-menu", this);
|
|
26726
26726
|
|
|
26727
26727
|
this.classList.toggle("expand");
|
|
26728
26728
|
this.classList.add("collapse");
|
|
@@ -26732,13 +26732,13 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26732
26732
|
|
|
26733
26733
|
this.addEventListener('click', (e) => {
|
|
26734
26734
|
|
|
26735
|
-
|
|
26735
|
+
ninegrid.querySelectorAll("nx-side-menu-item", this.#owner).forEach(v => {
|
|
26736
26736
|
v.classList.remove("active");
|
|
26737
26737
|
});
|
|
26738
26738
|
|
|
26739
26739
|
e.target.classList.add("active");
|
|
26740
26740
|
|
|
26741
|
-
|
|
26741
|
+
ninegrid.closest("nx-side-menu", this).dispatchEvent(new CustomEvent('side-menu-click', {
|
|
26742
26742
|
detail: { target: this, },
|
|
26743
26743
|
bubbles: true,
|
|
26744
26744
|
composed: true
|
|
@@ -26760,7 +26760,7 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26760
26760
|
//const target = neUtils.closest("nx-side-menu-item", this);
|
|
26761
26761
|
//console.log(this.uuid);
|
|
26762
26762
|
|
|
26763
|
-
const nodeList =
|
|
26763
|
+
const nodeList = ninegrid.querySelectorAll("nx-side-menu-item", this.#owner);
|
|
26764
26764
|
const firstNodeIndex = Array.from(nodeList).findIndex(node => node.uuid === this.uuid);
|
|
26765
26765
|
const childNode = [];
|
|
26766
26766
|
|
|
@@ -26805,8 +26805,8 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26805
26805
|
|
|
26806
26806
|
this.shadowRoot.innerHTML = `
|
|
26807
26807
|
<style>
|
|
26808
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26809
|
-
${
|
|
26808
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuItem.css";
|
|
26809
|
+
${ninegrid.getCustomPath(this,"nxSideMenuItem.css")}
|
|
26810
26810
|
</style>
|
|
26811
26811
|
|
|
26812
26812
|
<li>
|
|
@@ -26844,7 +26844,7 @@ class nxSpan extends HTMLElement
|
|
|
26844
26844
|
};
|
|
26845
26845
|
|
|
26846
26846
|
connectedCallback() {
|
|
26847
|
-
if (
|
|
26847
|
+
if (ninegrid.getLocale() == "ko") {
|
|
26848
26848
|
console.warn("nx-span 컴포넌트는 더 이상 사용되지 않을 예정입니다. nx-i18n 컴포넌트로 대체하세요.");
|
|
26849
26849
|
}
|
|
26850
26850
|
else {
|
|
@@ -26853,9 +26853,9 @@ class nxSpan extends HTMLElement
|
|
|
26853
26853
|
};
|
|
26854
26854
|
|
|
26855
26855
|
refresh = () => {
|
|
26856
|
-
if (this.#dataSource.length < 0 ||
|
|
26856
|
+
if (this.#dataSource.length < 0 || ninegrid.isNull(this.#value)) return;
|
|
26857
26857
|
|
|
26858
|
-
var index = this.#dataSource.findIndex(m => m[this.#key] ==
|
|
26858
|
+
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid.global.locale);
|
|
26859
26859
|
if (index < 0) index = 0;
|
|
26860
26860
|
|
|
26861
26861
|
|
|
@@ -27251,12 +27251,12 @@ class nxTopMenu extends HTMLElement
|
|
|
27251
27251
|
</nav>
|
|
27252
27252
|
`;
|
|
27253
27253
|
|
|
27254
|
-
this.changeLocale(
|
|
27254
|
+
this.changeLocale(ninegrid.getLocale());
|
|
27255
27255
|
};
|
|
27256
27256
|
|
|
27257
27257
|
changeLocale = (locale) => {
|
|
27258
|
-
|
|
27259
|
-
this.shadowRoot.querySelector("#locale").innerHTML =
|
|
27258
|
+
ninegrid.setLocale(locale);
|
|
27259
|
+
this.shadowRoot.querySelector("#locale").innerHTML = ninegrid.decode(locale, "ko", "한국어", "English");
|
|
27260
27260
|
};
|
|
27261
27261
|
}
|
|
27262
27262
|
|
|
@@ -27270,4 +27270,4 @@ window.jQuery = window.$ = $$1;
|
|
|
27270
27270
|
|
|
27271
27271
|
//export default new ninegrid();
|
|
27272
27272
|
|
|
27273
|
-
export { ninegrid };
|
|
27273
|
+
export { ninegrid as default };
|