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.cjs.js
CHANGED
|
@@ -11578,11 +11578,11 @@ class ngCellEx extends HTMLElement
|
|
|
11578
11578
|
this.#showCheck = this.getAttribute("show-check") == "true" || this.cell.getAttribute("show-check") == "true";
|
|
11579
11579
|
this.#showButton = this.getAttribute("show-button") == "true" || this.cell.getAttribute("show-button") == "true";
|
|
11580
11580
|
|
|
11581
|
-
if (this.cell.dataset.bind)
|
|
11581
|
+
if (this.cell.dataset.bind) ninegrid.j.querySelectorAll(this).addClass(this.cell.dataset.bind);
|
|
11582
11582
|
|
|
11583
11583
|
const style = this.shadowRoot.querySelector("style");
|
|
11584
11584
|
const textAlign = this.getAttribute("text-align") || this.cell.getAttribute("text-align") || "left";
|
|
11585
|
-
|
|
11585
|
+
ninegrid.j.querySelectorAll(this).addClass(`ng-${textAlign}`);
|
|
11586
11586
|
|
|
11587
11587
|
if (this.#showIcon) {
|
|
11588
11588
|
const iconType = this.getAttribute("icon-type") || this.cell.getAttribute("icon-type") || "sphere";
|
|
@@ -11683,20 +11683,20 @@ class ngCellEx extends HTMLElement
|
|
|
11683
11683
|
const next = this.shadowRoot.querySelector("input[type=text],textarea").nextElementSibling;
|
|
11684
11684
|
|
|
11685
11685
|
if (prev.tagName == "NG-EXPAND-BUTTON") {
|
|
11686
|
-
|
|
11687
|
-
|
|
11686
|
+
ninegrid.j.querySelectorAll(this.shadowRoot.querySelector("input[type=text],textarea")).addClass("border-left-none");
|
|
11687
|
+
ninegrid.j.querySelectorAll(prev).addClass("border-right-none");
|
|
11688
11688
|
}
|
|
11689
11689
|
else if (next.tagName == "NG-EXPAND-BUTTON") {
|
|
11690
|
-
|
|
11691
|
-
|
|
11690
|
+
ninegrid.j.querySelectorAll(this.shadowRoot.querySelector("input[type=text],textarea")).addClass("border-right-none");
|
|
11691
|
+
ninegrid.j.querySelectorAll(next).addClass("border-left-none");
|
|
11692
11692
|
}
|
|
11693
11693
|
}
|
|
11694
11694
|
}
|
|
11695
11695
|
|
|
11696
11696
|
const expandleft = this.shadowRoot.querySelectorAll(".ng-left");
|
|
11697
|
-
if (expandleft.length > 0)
|
|
11697
|
+
if (expandleft.length > 0) ninegrid.j.querySelectorAll(expandleft[0]).addClass("ng-first");
|
|
11698
11698
|
const expandRight = this.shadowRoot.querySelectorAll(".ng-right");
|
|
11699
|
-
if (expandRight.length > 0)
|
|
11699
|
+
if (expandRight.length > 0) ninegrid.j.querySelectorAll(expandRight[expandRight.length-1]).addClass("ng-last");
|
|
11700
11700
|
|
|
11701
11701
|
|
|
11702
11702
|
|
|
@@ -11751,7 +11751,7 @@ class ngCellEx extends HTMLElement
|
|
|
11751
11751
|
}
|
|
11752
11752
|
}
|
|
11753
11753
|
|
|
11754
|
-
this.owner.dispatchEvent(new CustomEvent(
|
|
11754
|
+
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 }));
|
|
11755
11755
|
//var row = parseInt(this.cell.dataset.row);
|
|
11756
11756
|
//this.owner.exprFunction(this.cell.getAttribute("onButtonClick") || this.getAttribute("onButtonClick")).call(this, this.cell.closest("tr").data, row);
|
|
11757
11757
|
});
|
|
@@ -11764,7 +11764,7 @@ class ngCellEx extends HTMLElement
|
|
|
11764
11764
|
|
|
11765
11765
|
|
|
11766
11766
|
if (this.getAttribute("link") == "true") {
|
|
11767
|
-
|
|
11767
|
+
ninegrid.j.querySelectorAll(renderer).addClass("link");
|
|
11768
11768
|
|
|
11769
11769
|
renderer.addEventListener("click", e => {
|
|
11770
11770
|
|
|
@@ -11779,7 +11779,7 @@ class ngCellEx extends HTMLElement
|
|
|
11779
11779
|
}
|
|
11780
11780
|
}
|
|
11781
11781
|
|
|
11782
|
-
this.owner.dispatchEvent(new CustomEvent(
|
|
11782
|
+
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 }));
|
|
11783
11783
|
});
|
|
11784
11784
|
}
|
|
11785
11785
|
|
|
@@ -11830,7 +11830,7 @@ class ngCellEx extends HTMLElement
|
|
|
11830
11830
|
|
|
11831
11831
|
if (!rowData) return "";
|
|
11832
11832
|
|
|
11833
|
-
if (!
|
|
11833
|
+
if (!ninegrid.isNull(this.cell.dataset.expr)) {
|
|
11834
11834
|
try {
|
|
11835
11835
|
//console.log(this.cell.dataset.expr);
|
|
11836
11836
|
|
|
@@ -11846,11 +11846,11 @@ class ngCellEx extends HTMLElement
|
|
|
11846
11846
|
console.error(this.cell.dataset.expr, rowData, this.cell.dataset.row);
|
|
11847
11847
|
}
|
|
11848
11848
|
}
|
|
11849
|
-
else if (!
|
|
11850
|
-
return rowData[this.cell.dataset.bind] ||
|
|
11849
|
+
else if (!ninegrid.isNull(this.cell.dataset.bind)) {
|
|
11850
|
+
return rowData[this.cell.dataset.bind] || ninegrid.nvl(defaultValue, "");
|
|
11851
11851
|
}
|
|
11852
11852
|
|
|
11853
|
-
return
|
|
11853
|
+
return ninegrid.nvl(defaultValue, "");
|
|
11854
11854
|
}
|
|
11855
11855
|
else {
|
|
11856
11856
|
try {
|
|
@@ -11875,11 +11875,11 @@ class ngCellEx extends HTMLElement
|
|
|
11875
11875
|
}
|
|
11876
11876
|
|
|
11877
11877
|
if (this.cell.dataset.bind && this.shadowRoot.querySelector("input,textarea,button")) {
|
|
11878
|
-
|
|
11878
|
+
ninegrid.j.querySelectorAll(this.cell).removeClass("ng-changed");
|
|
11879
11879
|
|
|
11880
11880
|
if (data.__ng.o.hasOwnProperty(this.cell.dataset.bind)) {
|
|
11881
11881
|
if (data[this.cell.dataset.bind] != data.__ng.o[this.cell.dataset.bind]) {
|
|
11882
|
-
|
|
11882
|
+
ninegrid.j.querySelectorAll(this.cell).addClass("ng-changed");
|
|
11883
11883
|
}
|
|
11884
11884
|
}
|
|
11885
11885
|
}
|
|
@@ -11950,26 +11950,26 @@ class ngCellEx extends HTMLElement
|
|
|
11950
11950
|
|
|
11951
11951
|
var expr = this.getAttribute('visible') || this.cell.getAttribute('visible');
|
|
11952
11952
|
if (expr) {
|
|
11953
|
-
this.getExprValue(expr, data, row) ?
|
|
11953
|
+
this.getExprValue(expr, data, row) ? ninegrid.j.querySelectorAll(this.cell).removeClass('hidden') : ninegrid.j.querySelectorAll(this.cell).addClass('hidden');
|
|
11954
11954
|
}
|
|
11955
11955
|
else {
|
|
11956
|
-
|
|
11956
|
+
ninegrid.j.querySelectorAll(this.cell).removeClass('hidden');
|
|
11957
11957
|
}
|
|
11958
11958
|
|
|
11959
11959
|
var expr = this.getAttribute('enable') || this.cell.getAttribute('enable');
|
|
11960
11960
|
if (expr) {
|
|
11961
|
-
|
|
11961
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("disabled", !this.getExprValue(expr, data, row));
|
|
11962
11962
|
}
|
|
11963
11963
|
else {
|
|
11964
|
-
|
|
11964
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("disabled", false);
|
|
11965
11965
|
}
|
|
11966
11966
|
|
|
11967
11967
|
var expr = this.getAttribute('readonly') || this.cell.getAttribute('readonly');
|
|
11968
11968
|
if (expr) {
|
|
11969
|
-
|
|
11969
|
+
ninegrid.j.querySelectorAll("input,textarea", this.shadowRoot).attr("readonly", this.getExprValue(expr, data, row));
|
|
11970
11970
|
}
|
|
11971
11971
|
else {
|
|
11972
|
-
|
|
11972
|
+
ninegrid.j.querySelectorAll("input,textarea,button", this.shadowRoot).attr("readonly", false);
|
|
11973
11973
|
}
|
|
11974
11974
|
|
|
11975
11975
|
|
|
@@ -11987,7 +11987,7 @@ class ngCellEx extends HTMLElement
|
|
|
11987
11987
|
$(this.cell).children().each((i,el) => {
|
|
11988
11988
|
var tooltipFn = el.getAttribute('tooltip');
|
|
11989
11989
|
if (tooltipFn) {
|
|
11990
|
-
|
|
11990
|
+
ninegrid.j.querySelectorAll(el).attr("title", this.owner.exprFunction(tooltipFn).call(this, this.cell.closest("tr").data, row));
|
|
11991
11991
|
}
|
|
11992
11992
|
});
|
|
11993
11993
|
|
|
@@ -11998,7 +11998,7 @@ class ngCellEx extends HTMLElement
|
|
|
11998
11998
|
|
|
11999
11999
|
if (!this.owner || !this.owner.template || !this.cell.closest("tbody.bindable")) return;
|
|
12000
12000
|
|
|
12001
|
-
var suppress =
|
|
12001
|
+
var suppress = ninegrid.j.querySelectorAll(this.cell).attr('suppress');
|
|
12002
12002
|
if (suppress) suppress = parseInt(suppress);
|
|
12003
12003
|
|
|
12004
12004
|
if (suppress && !isNaN(suppress)) {
|
|
@@ -12007,7 +12007,7 @@ class ngCellEx extends HTMLElement
|
|
|
12007
12007
|
var arrSuppress = [];
|
|
12008
12008
|
|
|
12009
12009
|
$("th,td", tr).each((i,el) => {
|
|
12010
|
-
var otherSuppress =
|
|
12010
|
+
var otherSuppress = ninegrid.j.querySelectorAll(el).attr('suppress');
|
|
12011
12011
|
if (otherSuppress && el.dataset.row) {
|
|
12012
12012
|
otherSuppress = parseInt(otherSuppress);
|
|
12013
12013
|
|
|
@@ -12044,23 +12044,23 @@ class ngCellEx extends HTMLElement
|
|
|
12044
12044
|
bSuppress = true;
|
|
12045
12045
|
}
|
|
12046
12046
|
|
|
12047
|
-
(bSuppress) ?
|
|
12048
|
-
if (!
|
|
12049
|
-
(bSuppress) ?
|
|
12047
|
+
(bSuppress) ? ninegrid.j.querySelectorAll(this.cell).removeClass('suppress') : ninegrid.j.querySelectorAll(this.cell).addClass('suppress');
|
|
12048
|
+
if (!ninegrid.j.querySelectorAll(this.cell).hasClass("hidden")) {
|
|
12049
|
+
(bSuppress) ? ninegrid.j.querySelectorAll(this.cell).removeClass('hidden') : ninegrid.j.querySelectorAll(this.cell).addClass('hidden');
|
|
12050
12050
|
}
|
|
12051
12051
|
|
|
12052
12052
|
var currMatrixRow = parseInt(this.cell.dataset.matrixRow);
|
|
12053
12053
|
var prevMatrixRow = currMatrixRow - 1;//this.owner.template.length;
|
|
12054
12054
|
var prevCell = this.owner.body.querySelector(`tbody.bindable [data-col="${this.cell.dataset.col}"][data-matrix-row="${prevMatrixRow}"]`);
|
|
12055
12055
|
|
|
12056
|
-
if ($(prevCell).hasClass('suppress') && !
|
|
12057
|
-
|
|
12056
|
+
if ($(prevCell).hasClass('suppress') && !ninegrid.j.querySelectorAll(this.cell).hasClass('suppress')) {
|
|
12057
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-none-suppress').addClass('last-suppress');
|
|
12058
12058
|
}
|
|
12059
|
-
else if (!$(prevCell).hasClass('suppress') &&
|
|
12060
|
-
|
|
12059
|
+
else if (!$(prevCell).hasClass('suppress') && ninegrid.j.querySelectorAll(this.cell).hasClass('suppress')) {
|
|
12060
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-suppress').addClass('last-none-suppress');
|
|
12061
12061
|
}
|
|
12062
12062
|
else {
|
|
12063
|
-
|
|
12063
|
+
ninegrid.j.querySelectorAll(prevCell).removeClass('last-none-suppress').removeClass('last-suppress');
|
|
12064
12064
|
}
|
|
12065
12065
|
}
|
|
12066
12066
|
};
|
|
@@ -12123,13 +12123,13 @@ class ngEditableEx extends ngCellEx
|
|
|
12123
12123
|
if (maxbyte) {
|
|
12124
12124
|
maxbyte = parseInt(maxbyte);
|
|
12125
12125
|
|
|
12126
|
-
if (
|
|
12126
|
+
if (ninegrid.getByteLength(event.target.value) >= maxbyte) {
|
|
12127
12127
|
|
|
12128
|
-
event.target.value =
|
|
12128
|
+
event.target.value = ninegrid.cut(event.target.value, maxbyte);
|
|
12129
12129
|
}
|
|
12130
12130
|
}
|
|
12131
12131
|
var v = $(event.target).val();
|
|
12132
|
-
this.value =
|
|
12132
|
+
this.value = ninegrid.j.querySelectorAll(this).attr("type") == "number" ? (isNaN(v) ? "" : Number(v)) : v;
|
|
12133
12133
|
|
|
12134
12134
|
break;
|
|
12135
12135
|
}
|
|
@@ -12270,11 +12270,11 @@ class ngCellCopyPasteKeyHandler
|
|
|
12270
12270
|
.then(() => {
|
|
12271
12271
|
//ninegrid.j.querySelectorAll(".copied", this.#owner.body).removeClass("copied");
|
|
12272
12272
|
setTimeout(() => {
|
|
12273
|
-
|
|
12273
|
+
ninegrid.j.querySelectorAll(".selected", this.#owner.body).addClass("copied");
|
|
12274
12274
|
});
|
|
12275
12275
|
|
|
12276
12276
|
setTimeout(() => {
|
|
12277
|
-
|
|
12277
|
+
ninegrid.j.querySelectorAll(".copied", this.#owner.body).removeClass("copied");
|
|
12278
12278
|
}, 1000);
|
|
12279
12279
|
})
|
|
12280
12280
|
.catch(err => {
|
|
@@ -12396,7 +12396,7 @@ class ngCellManager
|
|
|
12396
12396
|
const oldCellIndex = this.#oldCellIndex;
|
|
12397
12397
|
|
|
12398
12398
|
if (row != oldrow || subrow != oldsubrow || col != oldcol) {
|
|
12399
|
-
const customEvent = new CustomEvent(
|
|
12399
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.CELL_POS_CHANGED, { bubbles: true, detail: {} });
|
|
12400
12400
|
customEvent.col = col;
|
|
12401
12401
|
customEvent.cellIndex = cellIndex;
|
|
12402
12402
|
customEvent.row = row;
|
|
@@ -12415,7 +12415,7 @@ class ngCellManager
|
|
|
12415
12415
|
}
|
|
12416
12416
|
|
|
12417
12417
|
if (row != oldrow) {
|
|
12418
|
-
const customEvent = new CustomEvent(
|
|
12418
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.ROW_POS_CHANGED, { bubbles: true, detail: {} });
|
|
12419
12419
|
customEvent.col = col;
|
|
12420
12420
|
customEvent.cellIndex = cellIndex;
|
|
12421
12421
|
customEvent.row = row;
|
|
@@ -12551,7 +12551,7 @@ class ngCellManager
|
|
|
12551
12551
|
$(`tbody tr[data-matrix-row=${matrixRow}]`, this.#owner.body).find("th,td").each((i,el) => {
|
|
12552
12552
|
var elCol = parseInt(el.dataset.col);
|
|
12553
12553
|
if ((col - 1) >= elCol && (col - 1) <= elCol + el.colSpan - 1) {
|
|
12554
|
-
previousCol =
|
|
12554
|
+
previousCol = ninegrid.j.querySelectorAll(el).hasClass("dummy") ? this.#getPreviousCol(matrixRow, el.dataset.col) : el.dataset.col;
|
|
12555
12555
|
return false;
|
|
12556
12556
|
}
|
|
12557
12557
|
});
|
|
@@ -12560,7 +12560,7 @@ class ngCellManager
|
|
|
12560
12560
|
$(`tbody tr[data-row=${row}]`, this.#owner.body).find("th,td").each((i,el) => {
|
|
12561
12561
|
var elCol = parseInt(el.dataset.col);
|
|
12562
12562
|
if ((col - 1) >= elCol && (col - 1) <= elCol + el.colSpan - 1) {
|
|
12563
|
-
previousCol =
|
|
12563
|
+
previousCol = ninegrid.j.querySelectorAll(el).hasClass("dummy") ? this.#getPreviousCol(matrixRow, el.dataset.col) : el.dataset.col;
|
|
12564
12564
|
return false;
|
|
12565
12565
|
}
|
|
12566
12566
|
});
|
|
@@ -12574,7 +12574,7 @@ class ngCellManager
|
|
|
12574
12574
|
|
|
12575
12575
|
var nextCol = col + (td.colSpan || 1);
|
|
12576
12576
|
var nextTd = this.#owner.body.querySelector(`tbody [data-matrix-row="${matrixRow}"][data-col="${nextCol}"]`);
|
|
12577
|
-
if (
|
|
12577
|
+
if (ninegrid.j.querySelectorAll(nextTd).hasClass("dummy")) {
|
|
12578
12578
|
nextCol = this.#getNextCol(matrixRow, nextCol);
|
|
12579
12579
|
}
|
|
12580
12580
|
|
|
@@ -12618,10 +12618,10 @@ class ngCellManager
|
|
|
12618
12618
|
|
|
12619
12619
|
if (e.ctrlKey || e.altKey) return;
|
|
12620
12620
|
|
|
12621
|
-
if (e.target.tagName == "NG-ROW-INDICATOR" && [
|
|
12621
|
+
if (e.target.tagName == "NG-ROW-INDICATOR" && [ninegrid.SELECTTYPE.CELL,ninegrid.SELECTTYPE.AREA].includes(this.#owner.selection.type)) return;
|
|
12622
12622
|
|
|
12623
12623
|
if (e.shiftKey) {
|
|
12624
|
-
if ([
|
|
12624
|
+
if ([ninegrid.SELECTTYPE.COLS,ninegrid.SELECTTYPE.ROWS,ninegrid.SELECTTYPE.AREA].includes(this.#owner.selection.type)) {
|
|
12625
12625
|
var fromTD = this.#owner.selection.getActiveCell();
|
|
12626
12626
|
if (fromTD) {
|
|
12627
12627
|
var fromTR = fromTD.closest("tr");
|
|
@@ -12739,7 +12739,7 @@ class ngCellSelection
|
|
|
12739
12739
|
clear :
|
|
12740
12740
|
() => {
|
|
12741
12741
|
this.selected.startRow = this.selected.endRow = this.selected.startCol = this.selected.endCol = -1;
|
|
12742
|
-
|
|
12742
|
+
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");
|
|
12743
12743
|
},
|
|
12744
12744
|
};
|
|
12745
12745
|
|
|
@@ -12752,10 +12752,10 @@ class ngCellSelection
|
|
|
12752
12752
|
return this.#owner.getAttribute("select-type");
|
|
12753
12753
|
};
|
|
12754
12754
|
set type(v) {
|
|
12755
|
-
if (!Object.values(
|
|
12755
|
+
if (!Object.values(ninegrid.SELECTTYPE).includes(v)) throw `invalid select type : ${v}`;
|
|
12756
12756
|
|
|
12757
|
-
Object.values(
|
|
12758
|
-
|
|
12757
|
+
Object.values(ninegrid.SELECTTYPE).forEach(m => { ninegrid.j.querySelectorAll(".ng-table", this.#owner.body).removeClass(`select-type-${m}`); });
|
|
12758
|
+
ninegrid.j.querySelectorAll(".ng-table", this.#owner.body).addClass(`select-type-${v}`);
|
|
12759
12759
|
this.#owner.cell.refresh();
|
|
12760
12760
|
};
|
|
12761
12761
|
|
|
@@ -12774,20 +12774,20 @@ class ngCellSelection
|
|
|
12774
12774
|
refresh = () => {
|
|
12775
12775
|
|
|
12776
12776
|
switch (this.type) {
|
|
12777
|
-
case
|
|
12777
|
+
case ninegrid.SELECTTYPE.ROW:
|
|
12778
12778
|
|
|
12779
12779
|
this.selected.startRow = parseInt(this.#owner.row.at * this.#owner.template.length);
|
|
12780
12780
|
this.selected.endRow = this.selected.startRow + this.#owner.template.length - 1;
|
|
12781
12781
|
|
|
12782
12782
|
var cols = [];
|
|
12783
|
-
$(`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(
|
|
12783
|
+
$(`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)); });
|
|
12784
12784
|
|
|
12785
12785
|
this.selected.startCol = (cols.length > 0) ? Math.min.apply(null, cols) : -1;
|
|
12786
12786
|
this.selected.endCol = (cols.length > 0) ? Math.max.apply(null, cols) : -1;
|
|
12787
12787
|
|
|
12788
12788
|
break;
|
|
12789
12789
|
|
|
12790
|
-
case
|
|
12790
|
+
case ninegrid.SELECTTYPE.ROWS:
|
|
12791
12791
|
this.selected.startRow = parseInt(this.selected.startRow / this.#owner.template.length) * this.#owner.template.length;
|
|
12792
12792
|
this.selected.endRow = parseInt(this.selected.endRow / this.#owner.template.length) * this.#owner.template.length - 1 + this.#owner.template.length;
|
|
12793
12793
|
|
|
@@ -12795,7 +12795,7 @@ class ngCellSelection
|
|
|
12795
12795
|
this.selected.endCol = this.#owner.lastCol;//Math.max.apply(null, cols);
|
|
12796
12796
|
break;
|
|
12797
12797
|
|
|
12798
|
-
case
|
|
12798
|
+
case ninegrid.SELECTTYPE.COL:
|
|
12799
12799
|
this.selected.startRow = 0;
|
|
12800
12800
|
this.selected.endRow = parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
12801
12801
|
this.selected.endCol = this.selected.startCol;
|
|
@@ -12823,7 +12823,7 @@ class ngCellSelection
|
|
|
12823
12823
|
|
|
12824
12824
|
break;
|
|
12825
12825
|
|
|
12826
|
-
case
|
|
12826
|
+
case ninegrid.SELECTTYPE.COLS:
|
|
12827
12827
|
|
|
12828
12828
|
this.selected.startRow = 0;
|
|
12829
12829
|
this.selected.endRow = parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
@@ -12852,31 +12852,31 @@ class ngCellSelection
|
|
|
12852
12852
|
|
|
12853
12853
|
break;
|
|
12854
12854
|
|
|
12855
|
-
case
|
|
12855
|
+
case ninegrid.SELECTTYPE.CELL:
|
|
12856
12856
|
this.selected.endRow = this.selected.startRow;
|
|
12857
12857
|
this.selected.endCol = this.selected.startCol;
|
|
12858
12858
|
break;
|
|
12859
12859
|
|
|
12860
|
-
case
|
|
12860
|
+
case ninegrid.SELECTTYPE.AREA:
|
|
12861
12861
|
break;
|
|
12862
12862
|
|
|
12863
|
-
case
|
|
12863
|
+
case ninegrid.SELECTTYPE.NONE:
|
|
12864
12864
|
this.selected.startRow = this.selected.endRow = this.selected.startCol = this.selected.endCol = -1;
|
|
12865
12865
|
break;
|
|
12866
12866
|
}
|
|
12867
12867
|
|
|
12868
12868
|
|
|
12869
|
-
|
|
12869
|
+
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");
|
|
12870
12870
|
|
|
12871
|
-
|
|
12872
|
-
|
|
12871
|
+
ninegrid.j.querySelectorAll(".selected-current", this.#owner.body).removeClass("selected-current");
|
|
12872
|
+
ninegrid.j.querySelectorAll(`tr[data-row="${this.selected.currentRow}"] ng-row-indicator`, this.#owner.body).addClass("selected-current");
|
|
12873
12873
|
|
|
12874
12874
|
//var row = parseInt(this.selected.currentRow / this.#owner.template.length);
|
|
12875
|
-
|
|
12875
|
+
ninegrid.j.querySelectorAll(`.col-indicator[data-col="${this.selected.currentCol}"]`, this.#owner.body).addClass("selected-current");
|
|
12876
12876
|
$(`tr[data-row="${this.selected.currentRow}"] ng-row-indicator`, this.#owner.body).closest("th,td").addClass("selected-current");
|
|
12877
12877
|
|
|
12878
12878
|
var activeCell = this.getActiveCell();
|
|
12879
|
-
if (activeCell)
|
|
12879
|
+
if (activeCell) ninegrid.j.querySelectorAll(activeCell).addClass("active");
|
|
12880
12880
|
|
|
12881
12881
|
$("tbody th,tbody td", this.#owner.body).each((index, td) => {
|
|
12882
12882
|
var tdCol = parseInt(td.dataset.col);
|
|
@@ -12886,17 +12886,17 @@ class ngCellSelection
|
|
|
12886
12886
|
|
|
12887
12887
|
if (row + td.rowSpan - 1 >= this.selected.startRow && row <= this.selected.endRow && tdCol+td.colSpan-1 >= this.selected.startCol && tdCol <= this.selected.endCol) {
|
|
12888
12888
|
|
|
12889
|
-
|
|
12889
|
+
ninegrid.j.querySelectorAll(td).addClass("selected");//.addClass("selected-area");
|
|
12890
12890
|
|
|
12891
12891
|
if (this.selected.startRow == this.selected.endRow && this.selected.startCol == this.selected.endCol) {
|
|
12892
|
-
|
|
12892
|
+
ninegrid.j.querySelectorAll(td).addClass("selected-top").addClass("selected-bottom").addClass("selected-left").addClass("selected-right");
|
|
12893
12893
|
}
|
|
12894
12894
|
else {
|
|
12895
|
-
if (row == this.selected.startRow)
|
|
12896
|
-
if (row+td.rowSpan-1 == this.selected.endRow)
|
|
12897
|
-
if (tdCol == this.selected.startCol)
|
|
12898
|
-
if (tdCol+td.colSpan-1 == this.selected.endCol)
|
|
12899
|
-
|
|
12895
|
+
if (row == this.selected.startRow) ninegrid.j.querySelectorAll(td).addClass("selected-top");
|
|
12896
|
+
if (row+td.rowSpan-1 == this.selected.endRow) ninegrid.j.querySelectorAll(td).addClass("selected-bottom");
|
|
12897
|
+
if (tdCol == this.selected.startCol) ninegrid.j.querySelectorAll(td).addClass("selected-left");
|
|
12898
|
+
if (tdCol+td.colSpan-1 == this.selected.endCol) ninegrid.j.querySelectorAll(td).addClass("selected-right");
|
|
12899
|
+
ninegrid.j.querySelectorAll(td).addClass("multi-selected");
|
|
12900
12900
|
}
|
|
12901
12901
|
}
|
|
12902
12902
|
});
|
|
@@ -12911,7 +12911,7 @@ class ngCellSelection
|
|
|
12911
12911
|
for (var i = 0; i < td.rowSpan; i++) {
|
|
12912
12912
|
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;
|
|
12913
12913
|
if (row >= this.selected.startRow && row <= this.selected.endRow) {
|
|
12914
|
-
|
|
12914
|
+
ninegrid.j.querySelectorAll(td).addClass("selected-area");
|
|
12915
12915
|
}
|
|
12916
12916
|
}
|
|
12917
12917
|
}
|
|
@@ -12919,7 +12919,7 @@ class ngCellSelection
|
|
|
12919
12919
|
|
|
12920
12920
|
|
|
12921
12921
|
for (var i = this.selected.startCol; i <= this.selected.endCol; i++) {
|
|
12922
|
-
|
|
12922
|
+
ninegrid.j.querySelectorAll(`.col-indicator[data-col="${i}"]`, this.#owner.body).addClass("selected-area");
|
|
12923
12923
|
}
|
|
12924
12924
|
|
|
12925
12925
|
if (this.selected.oldStartRow != this.selected.startRow || this.selected.oldEndRow != this.selected.endRow ||
|
|
@@ -13112,7 +13112,7 @@ class ngCellSelection
|
|
|
13112
13112
|
}
|
|
13113
13113
|
};
|
|
13114
13114
|
|
|
13115
|
-
if ([
|
|
13115
|
+
if ([ninegrid.SELECTTYPE.AREA,ninegrid.SELECTTYPE.ROWS,ninegrid.SELECTTYPE.COLS].includes(this.type)) {
|
|
13116
13116
|
$(".ng-table tbody.bindable", this.#owner.body).on("mousemove", onMouseMove);
|
|
13117
13117
|
$(".ng-table tbody.bindable", this.#owner.body).on("mouseenter", onMouseEnter);
|
|
13118
13118
|
$(".ng-table tbody.bindable", this.#owner.body).on("mouseleave", onMouseLeave);
|
|
@@ -13780,8 +13780,8 @@ class ngCheckBox extends ngEditableEx
|
|
|
13780
13780
|
|
|
13781
13781
|
this.shadowRoot.innerHTML = `
|
|
13782
13782
|
<style>
|
|
13783
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
13784
|
-
${
|
|
13783
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngCheckBox.css";
|
|
13784
|
+
${ninegrid.getCustomPath(this,"ngCheckBox.css")}
|
|
13785
13785
|
|
|
13786
13786
|
:host {
|
|
13787
13787
|
justify-content: ${this.closest("th,td").getAttribute("text-align") || "center"};
|
|
@@ -13841,11 +13841,11 @@ class ngCheckBox extends ngEditableEx
|
|
|
13841
13841
|
|
|
13842
13842
|
if (!this.closest("tbody")) return;
|
|
13843
13843
|
|
|
13844
|
-
if (
|
|
13845
|
-
|
|
13844
|
+
if (ninegrid.isNull(this.value) || this.value == this.trueValue || this.value == this.falseValue) {
|
|
13845
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
13846
13846
|
}
|
|
13847
13847
|
else {
|
|
13848
|
-
|
|
13848
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
13849
13849
|
}
|
|
13850
13850
|
|
|
13851
13851
|
$(this.#target).prop("checked", this.value == this.trueValue);
|
|
@@ -13899,15 +13899,15 @@ class ngColExpand extends HTMLElement
|
|
|
13899
13899
|
|
|
13900
13900
|
this.shadowRoot.innerHTML = `
|
|
13901
13901
|
<style>
|
|
13902
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
13903
|
-
${
|
|
13902
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngColExpand.css";
|
|
13903
|
+
${ninegrid.getCustomPath(this,"ngColExpand.css")}
|
|
13904
13904
|
</style>
|
|
13905
13905
|
`;
|
|
13906
13906
|
|
|
13907
13907
|
this.#owner = this.getRootNode().host;
|
|
13908
13908
|
this.#cell = this.closest("th,td");
|
|
13909
13909
|
|
|
13910
|
-
|
|
13910
|
+
ninegrid.j.querySelectorAll(this).addClass("expand");
|
|
13911
13911
|
|
|
13912
13912
|
$(this).off("click", this.#onClick);
|
|
13913
13913
|
$(this).on("click", this.#onClick);
|
|
@@ -13918,7 +13918,7 @@ class ngColExpand extends HTMLElement
|
|
|
13918
13918
|
e.preventDefault();
|
|
13919
13919
|
e.stopPropagation();
|
|
13920
13920
|
|
|
13921
|
-
if (
|
|
13921
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) {
|
|
13922
13922
|
this.#collapse();
|
|
13923
13923
|
}
|
|
13924
13924
|
else {
|
|
@@ -13927,7 +13927,7 @@ class ngColExpand extends HTMLElement
|
|
|
13927
13927
|
};
|
|
13928
13928
|
|
|
13929
13929
|
expand = () => {
|
|
13930
|
-
if (
|
|
13930
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) return;
|
|
13931
13931
|
|
|
13932
13932
|
$(this).addClass("expand");
|
|
13933
13933
|
this.#cell.style.color = this.#orgColor;
|
|
@@ -13940,7 +13940,7 @@ class ngColExpand extends HTMLElement
|
|
|
13940
13940
|
};
|
|
13941
13941
|
|
|
13942
13942
|
#collapse = () => {
|
|
13943
|
-
if (!
|
|
13943
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("expand")) return;
|
|
13944
13944
|
|
|
13945
13945
|
$(this).removeClass("expand");
|
|
13946
13946
|
this.#orgColor = this.#cell.style.color;
|
|
@@ -14226,7 +14226,7 @@ class ngColMover
|
|
|
14226
14226
|
|
|
14227
14227
|
#onPrevMouseDown = e => {
|
|
14228
14228
|
|
|
14229
|
-
if (
|
|
14229
|
+
if (ninegrid.j.querySelectorAll(this.#owner).attr("col-movable") != "true") return;
|
|
14230
14230
|
if (e.target.tagName == "NG-FILTER-BUTTON") return;
|
|
14231
14231
|
|
|
14232
14232
|
this.#ready = true;
|
|
@@ -14625,7 +14625,7 @@ class ngColResizer
|
|
|
14625
14625
|
|
|
14626
14626
|
var prev = this.#owner.tableUtils.prev(td);
|
|
14627
14627
|
var next = this.#owner.tableUtils.next(td);
|
|
14628
|
-
var target = this.#owner.getBand(td.dataset.col) ==
|
|
14628
|
+
var target = this.#owner.getBand(td.dataset.col) == ninegrid.BAND.RIGHT ? ((e.offsetX <= 2) ? $(td) : next) : ((e.offsetX <= 2) ? prev : $(td));
|
|
14629
14629
|
|
|
14630
14630
|
this.#owner.setColumnWidthFit(target[0].dataset.col);
|
|
14631
14631
|
}
|
|
@@ -14789,7 +14789,7 @@ class ngColumns
|
|
|
14789
14789
|
for (var v of [source.thead.cells, source.tfoot.cells, source.tbody.cells, source.fixed.cells]) {
|
|
14790
14790
|
for (var fromCell of v) {
|
|
14791
14791
|
|
|
14792
|
-
|
|
14792
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14793
14793
|
|
|
14794
14794
|
const rowIndex = fromCell.closest("tr").rowIndex;
|
|
14795
14795
|
const targetTr = targetTable.querySelectorAll("tr")[rowIndex];
|
|
@@ -14809,7 +14809,7 @@ class ngColumns
|
|
|
14809
14809
|
for (var v of [source.org.thead.cells, source.org.tfoot.cells, source.org.tbody.cells, source.org.fixed.cells]) {
|
|
14810
14810
|
for (var fromCell of v) {
|
|
14811
14811
|
|
|
14812
|
-
|
|
14812
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14813
14813
|
|
|
14814
14814
|
const targetTable = fromCell.closest("table");
|
|
14815
14815
|
const rowIndex = fromCell.closest("tr").rowIndex;
|
|
@@ -14829,7 +14829,7 @@ class ngColumns
|
|
|
14829
14829
|
|
|
14830
14830
|
for (var fromCell of source.template.cells) {
|
|
14831
14831
|
|
|
14832
|
-
|
|
14832
|
+
ninegrid.j.querySelectorAll(fromCell).addClass("tmp");
|
|
14833
14833
|
|
|
14834
14834
|
//const rowIndex = fromCell.closest("tr").rowIndex;
|
|
14835
14835
|
const targetTr = fromCell.closest("tr");
|
|
@@ -14879,18 +14879,18 @@ class ngColumns
|
|
|
14879
14879
|
|
|
14880
14880
|
for (var v of [source.thead.cells, source.tfoot.cells, source.tbody.cells, source.fixed.cells]) {
|
|
14881
14881
|
for (var fromCell of v) {
|
|
14882
|
-
|
|
14882
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14883
14883
|
}
|
|
14884
14884
|
}
|
|
14885
14885
|
|
|
14886
14886
|
for (var v of [source.org.thead.cells, source.org.tfoot.cells, source.org.tbody.cells, source.org.fixed.cells]) {
|
|
14887
14887
|
for (var fromCell of v) {
|
|
14888
|
-
|
|
14888
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14889
14889
|
}
|
|
14890
14890
|
}
|
|
14891
14891
|
|
|
14892
14892
|
for (var fromCell of source.template.cells) {
|
|
14893
|
-
|
|
14893
|
+
ninegrid.j.querySelectorAll(fromCell).removeClass("tmp");
|
|
14894
14894
|
}
|
|
14895
14895
|
|
|
14896
14896
|
|
|
@@ -15073,8 +15073,8 @@ class ngCombo extends ngEditableEx
|
|
|
15073
15073
|
|
|
15074
15074
|
this.shadowRoot.innerHTML = `
|
|
15075
15075
|
<style>
|
|
15076
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
15077
|
-
${
|
|
15076
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngCombo.css";
|
|
15077
|
+
${ninegrid.getCustomPath(this,"ngCombo.css")}
|
|
15078
15078
|
</style>
|
|
15079
15079
|
|
|
15080
15080
|
<button class="btn1" type="button" data-bs-toggle="dropdown" aria-expanded="false" tabindex="-1"></button>
|
|
@@ -15137,7 +15137,7 @@ class ngCombo extends ngEditableEx
|
|
|
15137
15137
|
dataRefresh = (v) => {
|
|
15138
15138
|
|
|
15139
15139
|
if (this.#dataSource) {
|
|
15140
|
-
this.#isValid() ?
|
|
15140
|
+
this.#isValid() ? ninegrid.j.querySelectorAll(this).removeClass("invalid") : ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
15141
15141
|
}
|
|
15142
15142
|
|
|
15143
15143
|
this.#target.innerHTML = this.getDisplayText() || "Select";
|
|
@@ -15151,7 +15151,7 @@ class ngCombo extends ngEditableEx
|
|
|
15151
15151
|
|
|
15152
15152
|
#isValid = () => {
|
|
15153
15153
|
|
|
15154
|
-
if (
|
|
15154
|
+
if (ninegrid.isNull(this.value)) return true;
|
|
15155
15155
|
|
|
15156
15156
|
var list = (this.multi) ? this.value.split(this.multiSeparator) : [this.value];
|
|
15157
15157
|
|
|
@@ -15197,8 +15197,8 @@ class ngCombo extends ngEditableEx
|
|
|
15197
15197
|
this.#panel.col = this.cell.dataset.col;
|
|
15198
15198
|
this.#panel.row = this.cell.closest("tr").sectionRowIndex;
|
|
15199
15199
|
|
|
15200
|
-
this.#dataSource.length > this.#EXPAND_ROWS ?
|
|
15201
|
-
this.multi ?
|
|
15200
|
+
this.#dataSource.length > this.#EXPAND_ROWS ? ninegrid.j.querySelectorAll(this.#panel).addClass("expand") : ninegrid.j.querySelectorAll(this.#panel).removeClass("expand");
|
|
15201
|
+
this.multi ? ninegrid.j.querySelectorAll(this.#panel).addClass("multi") : ninegrid.j.querySelectorAll(this.#panel).removeClass("multi");
|
|
15202
15202
|
|
|
15203
15203
|
this.#panel.refresh(this, this.#dataSource, this.#code, this.#items);
|
|
15204
15204
|
|
|
@@ -15212,7 +15212,7 @@ class ngCombo extends ngEditableEx
|
|
|
15212
15212
|
|
|
15213
15213
|
|
|
15214
15214
|
if (this.multi) {
|
|
15215
|
-
if (
|
|
15215
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15216
15216
|
h += 12; //위아래 padding
|
|
15217
15217
|
h += 3; //margin
|
|
15218
15218
|
h += 24; // input box
|
|
@@ -15223,7 +15223,7 @@ class ngCombo extends ngEditableEx
|
|
|
15223
15223
|
h += 25; // bottom
|
|
15224
15224
|
}
|
|
15225
15225
|
else {
|
|
15226
|
-
if (
|
|
15226
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15227
15227
|
h += 12; //위아래 padding
|
|
15228
15228
|
h += 3; //margin
|
|
15229
15229
|
h += 24; // input box
|
|
@@ -15254,7 +15254,7 @@ class ngCombo extends ngEditableEx
|
|
|
15254
15254
|
"min-height": h,
|
|
15255
15255
|
}).show();
|
|
15256
15256
|
|
|
15257
|
-
if (
|
|
15257
|
+
if (ninegrid.j.querySelectorAll(this.#panel).hasClass("expand")) {
|
|
15258
15258
|
$("div", this.#panel).eq(0).find("input").focus().val("");
|
|
15259
15259
|
}
|
|
15260
15260
|
};
|
|
@@ -15294,8 +15294,8 @@ class ngComboPanel extends HTMLElement
|
|
|
15294
15294
|
|
|
15295
15295
|
this.shadowRoot.innerHTML = `
|
|
15296
15296
|
<style>
|
|
15297
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
15298
|
-
${
|
|
15297
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngComboPanel.css";
|
|
15298
|
+
${ninegrid.getCustomPath(this,"ngComboPanel.css")}
|
|
15299
15299
|
</style>
|
|
15300
15300
|
|
|
15301
15301
|
<div class="head">
|
|
@@ -15431,7 +15431,7 @@ class ngComboPanel extends HTMLElement
|
|
|
15431
15431
|
#onInput = e => {
|
|
15432
15432
|
var grd = this.shadowRoot.querySelector("nine-grid");
|
|
15433
15433
|
|
|
15434
|
-
|
|
15434
|
+
ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
15435
15435
|
|
|
15436
15436
|
var data = grd.data.getValidDataNF();
|
|
15437
15437
|
data.map(m => { m.__ng.filtered = false; });
|
|
@@ -15449,7 +15449,7 @@ class ngComboPanel extends HTMLElement
|
|
|
15449
15449
|
|
|
15450
15450
|
grd.data.resetRecords();
|
|
15451
15451
|
|
|
15452
|
-
if (grd.data.count() == 0)
|
|
15452
|
+
if (grd.data.count() == 0) ninegrid.j.querySelectorAll(grd).removeClass("loading");
|
|
15453
15453
|
|
|
15454
15454
|
if (this.#timer) {
|
|
15455
15455
|
clearTimeout(this.#timer);
|
|
@@ -15565,9 +15565,9 @@ class ngComboPanel extends HTMLElement
|
|
|
15565
15565
|
}
|
|
15566
15566
|
*/
|
|
15567
15567
|
|
|
15568
|
-
var w = 16 + (
|
|
15568
|
+
var w = 16 + (ninegrid.j.querySelectorAll(this).hasClass("expand") ? 0 : 0) + 20;
|
|
15569
15569
|
|
|
15570
|
-
if (
|
|
15570
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("multi")) {
|
|
15571
15571
|
$("col", grd.body).each((i,el) => { w += parseInt(el.getAttribute("width")); });
|
|
15572
15572
|
}
|
|
15573
15573
|
else {
|
|
@@ -15611,7 +15611,7 @@ class ngContextMenu
|
|
|
15611
15611
|
var font = $(this.#panel).css("font");
|
|
15612
15612
|
var w = 150;
|
|
15613
15613
|
for (const item of this.#items) {
|
|
15614
|
-
w = Math.max(w,
|
|
15614
|
+
w = Math.max(w, ninegrid.measureTextSize(item.name, font).width + 60);
|
|
15615
15615
|
}
|
|
15616
15616
|
|
|
15617
15617
|
$(this.#panel).css({
|
|
@@ -15698,7 +15698,7 @@ class ngContextMenuPanel extends HTMLElement
|
|
|
15698
15698
|
//$("li", this).on("touchmove", this.#onMouseOver);
|
|
15699
15699
|
$("li", this).on("mouseover", this.#onMouseOver);
|
|
15700
15700
|
|
|
15701
|
-
$("li", this).on("mouseout", e => {
|
|
15701
|
+
$("li", this).on("mouseout", e => { ninegrid.j.querySelectorAll(e.currentTarget).removeClass("visible"); });
|
|
15702
15702
|
};
|
|
15703
15703
|
|
|
15704
15704
|
open = () => {
|
|
@@ -15724,12 +15724,12 @@ class ngContextMenuPanel extends HTMLElement
|
|
|
15724
15724
|
|
|
15725
15725
|
#onMouseOver = e => {
|
|
15726
15726
|
|
|
15727
|
-
|
|
15727
|
+
ninegrid.j.querySelectorAll(e.currentTarget).addClass("visible");
|
|
15728
15728
|
|
|
15729
15729
|
var font = $(this).css("font");
|
|
15730
15730
|
var w = 150;
|
|
15731
15731
|
$("ul > li:visible > span", e.currentTarget).each((i,el) => {
|
|
15732
|
-
w = Math.max(w,
|
|
15732
|
+
w = Math.max(w, ninegrid.measureTextSize($(el).text(), font).width + 60);
|
|
15733
15733
|
});
|
|
15734
15734
|
|
|
15735
15735
|
$("ul", e.currentTarget).eq(0).css({
|
|
@@ -15762,7 +15762,7 @@ class ngCustomEvent
|
|
|
15762
15762
|
|
|
15763
15763
|
this.#resetEvent();
|
|
15764
15764
|
|
|
15765
|
-
this.#owner.addEventListener(
|
|
15765
|
+
this.#owner.addEventListener(ninegrid.EVENT.LAYOUT_CHANGED, e => {
|
|
15766
15766
|
this.#resetEvent();
|
|
15767
15767
|
});
|
|
15768
15768
|
}
|
|
@@ -15783,7 +15783,7 @@ class ngCustomEvent
|
|
|
15783
15783
|
|
|
15784
15784
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15785
15785
|
const cell = e.target.closest("th,td");
|
|
15786
|
-
const eventType = e.detail == 1 ?
|
|
15786
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.CELL_CLICK : ninegrid.EVENT.CELL_DBL_CLICK;
|
|
15787
15787
|
|
|
15788
15788
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15789
15789
|
customEvent.col = cell.dataset.col;
|
|
@@ -15791,7 +15791,7 @@ class ngCustomEvent
|
|
|
15791
15791
|
customEvent.subrow = parseInt(cell.dataset.matrixRow) % parseInt(cell.dataset.row);
|
|
15792
15792
|
customEvent.bind = cell.dataset.bind;
|
|
15793
15793
|
|
|
15794
|
-
|
|
15794
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15795
15795
|
|
|
15796
15796
|
this.#owner.dispatchEvent(customEvent);
|
|
15797
15797
|
};
|
|
@@ -15802,12 +15802,12 @@ class ngCustomEvent
|
|
|
15802
15802
|
|
|
15803
15803
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15804
15804
|
const cell = e.target.closest("th,td");
|
|
15805
|
-
const eventType = e.detail == 1 ?
|
|
15805
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.HEADCELL_CLICK : ninegrid.EVENT.HEADCELL_DBL_CLICK;
|
|
15806
15806
|
|
|
15807
15807
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15808
15808
|
customEvent.col = cell.dataset.col;
|
|
15809
15809
|
|
|
15810
|
-
|
|
15810
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15811
15811
|
|
|
15812
15812
|
this.#owner.dispatchEvent(customEvent);
|
|
15813
15813
|
};
|
|
@@ -15818,12 +15818,12 @@ class ngCustomEvent
|
|
|
15818
15818
|
|
|
15819
15819
|
const properties = ["altKey","ctrlKey","shiftKey","clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","button","buttons","whitch"];
|
|
15820
15820
|
const cell = e.target.closest("th,td");
|
|
15821
|
-
const eventType = e.detail == 1 ?
|
|
15821
|
+
const eventType = e.detail == 1 ? ninegrid.EVENT.FOOTCELL_CLICK : ninegrid.EVENT.FOOTCELL_DBL_CLICK;
|
|
15822
15822
|
|
|
15823
15823
|
const customEvent = new CustomEvent(eventType, { bubbles: true, composed: true, detail: { target: cell } });
|
|
15824
15824
|
customEvent.col = cell.dataset.col;
|
|
15825
15825
|
|
|
15826
|
-
|
|
15826
|
+
ninegrid.copyProperty(customEvent, e, properties);
|
|
15827
15827
|
|
|
15828
15828
|
this.#owner.dispatchEvent(customEvent);
|
|
15829
15829
|
};
|
|
@@ -15971,7 +15971,7 @@ class ngData
|
|
|
15971
15971
|
this.source = v;
|
|
15972
15972
|
|
|
15973
15973
|
for (var i = 0; i < v.length; i++) {
|
|
15974
|
-
this.#records[i].__ng._[
|
|
15974
|
+
this.#records[i].__ng._[ninegrid.ROW.ID] = v[i].__ng._[ninegrid.ROW.ID];
|
|
15975
15975
|
//this.#records[i].__ninegrid.rowState = v[i].__ng.rowState;
|
|
15976
15976
|
|
|
15977
15977
|
this.#nextId = Math.max(this.#nextId, v[i].__ng.rowid);
|
|
@@ -15984,14 +15984,14 @@ class ngData
|
|
|
15984
15984
|
|
|
15985
15985
|
getId = (o) => {
|
|
15986
15986
|
|
|
15987
|
-
return o.__ng._[
|
|
15987
|
+
return o.__ng._[ninegrid.ROW.ID];
|
|
15988
15988
|
}
|
|
15989
15989
|
|
|
15990
15990
|
get default() {
|
|
15991
15991
|
|
|
15992
15992
|
return {
|
|
15993
15993
|
//rowid : this.nextId,//nextId + index,
|
|
15994
|
-
rowState:
|
|
15994
|
+
rowState: ninegrid.ROW_STATE.EMPTY,
|
|
15995
15995
|
deleted : false,
|
|
15996
15996
|
filtered: false,
|
|
15997
15997
|
pin : false,
|
|
@@ -16006,7 +16006,7 @@ class ngData
|
|
|
16006
16006
|
0, // INDEX
|
|
16007
16007
|
0, // ORDER
|
|
16008
16008
|
0, // VISIBLE_ROW
|
|
16009
|
-
|
|
16009
|
+
ninegrid.ROW_STATE.EMPTY, // STATE
|
|
16010
16010
|
false, // FILTER
|
|
16011
16011
|
false, // PIN
|
|
16012
16012
|
true, // EXPAND
|
|
@@ -16127,7 +16127,7 @@ class ngData
|
|
|
16127
16127
|
}
|
|
16128
16128
|
//var colnms = filterData.map(item => item.colnm);
|
|
16129
16129
|
|
|
16130
|
-
|
|
16130
|
+
ninegrid.querySelectorAll("ng-filter-button").forEach(v => {
|
|
16131
16131
|
v.filterData = null;
|
|
16132
16132
|
});
|
|
16133
16133
|
|
|
@@ -16136,7 +16136,7 @@ class ngData
|
|
|
16136
16136
|
this.#parent.owner.fields.indexOf(key);
|
|
16137
16137
|
|
|
16138
16138
|
//console.log(filterData);
|
|
16139
|
-
|
|
16139
|
+
ninegrid.querySelectorAll("ng-filter-button").forEach(v => {
|
|
16140
16140
|
//v.filterData = null;
|
|
16141
16141
|
//console.log(v);
|
|
16142
16142
|
//var b = v.colnms;
|
|
@@ -16167,14 +16167,14 @@ class ngData
|
|
|
16167
16167
|
#indexOf = (rec1, row, rec2) => {
|
|
16168
16168
|
const rowData = rec1[row];
|
|
16169
16169
|
|
|
16170
|
-
return rec2.findIndex(m => { return m.__ng._[
|
|
16170
|
+
return rec2.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == rowData.__ng._[ninegrid.ROW.ID]; });
|
|
16171
16171
|
};
|
|
16172
16172
|
|
|
16173
16173
|
moveRow = (row1, row2) => {
|
|
16174
16174
|
|
|
16175
16175
|
if (row1 == row2) return;
|
|
16176
16176
|
|
|
16177
|
-
|
|
16177
|
+
ninegrid.move(this.#parent.rawRecords, this.total.indexOf(row1), this.total.indexOf(row2));
|
|
16178
16178
|
this.resetRecords();
|
|
16179
16179
|
|
|
16180
16180
|
this.#parent.owner.dataManager.viewRecords.reset();
|
|
@@ -16218,7 +16218,7 @@ class ngData
|
|
|
16218
16218
|
if (td.length <= 0) return;
|
|
16219
16219
|
const col = td.eq(0)[0].dataset.col;
|
|
16220
16220
|
//var th = $(`thead th[data-col=${col}]`, this.#parent.owner.body).not(".col-indicator");
|
|
16221
|
-
const th =
|
|
16221
|
+
const th = ninegrid.j.querySelectorAll(`thead th[data-col="${col}"]:not(.col-indicator)`, this.#parent.owner.body);
|
|
16222
16222
|
|
|
16223
16223
|
th.removeClass("deleted").removeClass("added").removeClass("updated");
|
|
16224
16224
|
if (updateData.delete.length > 0) th.addClass("deleted");
|
|
@@ -16235,9 +16235,9 @@ class ngData
|
|
|
16235
16235
|
arr.forEach((o,i) => {
|
|
16236
16236
|
o.__ng = this.default;
|
|
16237
16237
|
o.__ng.rowid = this.nextId;
|
|
16238
|
-
o.__ng.rowState =
|
|
16238
|
+
o.__ng.rowState = ninegrid.ROW_STATE.INSERT;
|
|
16239
16239
|
|
|
16240
|
-
o.__ng._[
|
|
16240
|
+
o.__ng._[ninegrid.ROW.ID] = o.__ng.rowid;
|
|
16241
16241
|
});
|
|
16242
16242
|
|
|
16243
16243
|
this.onRowStateChanged();
|
|
@@ -16259,13 +16259,13 @@ class ngData
|
|
|
16259
16259
|
//this.#recordsNF.forEach((o,i) => { o.__ng._[ninegrid.ROW.INDEX] = i; });
|
|
16260
16260
|
//this.#recordsNF.filter(m => { return !m.__ng.deleted && !m.__ng.filtered && m.__ng.visible; } ).forEach((o,i) => { o.__ng._[ninegrid.ROW.ORDER] = i + 1; });
|
|
16261
16261
|
|
|
16262
|
-
this.#parent.rawRecords.forEach((o,i) => { o.__ng._[
|
|
16263
|
-
this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng.filtered && m.__ng.visible; } ).forEach((o,i) => { o.__ng._[
|
|
16262
|
+
this.#parent.rawRecords.forEach((o,i) => { o.__ng._[ninegrid.ROW.INDEX] = i; });
|
|
16263
|
+
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; });
|
|
16264
16264
|
|
|
16265
|
-
const arr = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && m.__ng._[
|
|
16266
|
-
arr.forEach((o,i) => { o.__ng._[
|
|
16265
|
+
const arr = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && m.__ng._[ninegrid.ROW.PIN]; } );
|
|
16266
|
+
arr.forEach((o,i) => { o.__ng._[ninegrid.ROW.VISIBLE_ROW] = (arr.length - i) * -1; });
|
|
16267
16267
|
|
|
16268
|
-
this.#records.forEach((o,i) => { o.__ng._[
|
|
16268
|
+
this.#records.forEach((o,i) => { o.__ng._[ninegrid.ROW.VISIBLE_ROW] = i; });
|
|
16269
16269
|
//!m.__ng.deleted && !m.__ng.pin && !m.__ng._[ninegrid.ROW.PIN] && !m.__ng.filtered && m.__ng.visible && m.__ng.paging;
|
|
16270
16270
|
|
|
16271
16271
|
};
|
|
@@ -16304,7 +16304,7 @@ class ngData
|
|
|
16304
16304
|
resetRecords = () => {
|
|
16305
16305
|
|
|
16306
16306
|
this.#recordsNF = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted } );
|
|
16307
|
-
this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[
|
|
16307
|
+
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; } );
|
|
16308
16308
|
//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; } );
|
|
16309
16309
|
|
|
16310
16310
|
this.resetIndex();
|
|
@@ -16320,7 +16320,7 @@ class ngData
|
|
|
16320
16320
|
};
|
|
16321
16321
|
|
|
16322
16322
|
for (const colnm of this.#owner.fields.get()) {
|
|
16323
|
-
o.v.push(
|
|
16323
|
+
o.v.push(ninegrid.nvl(json[colnm], "")); /** checklist: 숫자형식 체크해서 0으로 변경해야함 */
|
|
16324
16324
|
}
|
|
16325
16325
|
arr.push(o);
|
|
16326
16326
|
});
|
|
@@ -16356,7 +16356,7 @@ class ngData
|
|
|
16356
16356
|
|
|
16357
16357
|
getValidData = () => {
|
|
16358
16358
|
//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; } );
|
|
16359
|
-
if (this.#records.length == 0) this.#records = this.#parent.rawRecords.filter(m => { return !m.__ng.deleted && !m.__ng._[
|
|
16359
|
+
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; } );
|
|
16360
16360
|
return this.#records;
|
|
16361
16361
|
}
|
|
16362
16362
|
getValidDataNF = () => {
|
|
@@ -16369,7 +16369,7 @@ class ngData
|
|
|
16369
16369
|
|
|
16370
16370
|
|
|
16371
16371
|
conv = (arr) => {
|
|
16372
|
-
if (
|
|
16372
|
+
if (ninegrid.isNull(arr)) return arr;
|
|
16373
16373
|
|
|
16374
16374
|
if (Array.isArray(arr)) {
|
|
16375
16375
|
var r = [];
|
|
@@ -16400,7 +16400,7 @@ class ngData
|
|
|
16400
16400
|
}
|
|
16401
16401
|
}
|
|
16402
16402
|
conv2 = (arr) => {
|
|
16403
|
-
if (
|
|
16403
|
+
if (ninegrid.isNull(arr)) return arr;
|
|
16404
16404
|
|
|
16405
16405
|
if (Array.isArray(arr)) {
|
|
16406
16406
|
var r = [];
|
|
@@ -16451,11 +16451,11 @@ class ngData
|
|
|
16451
16451
|
*/
|
|
16452
16452
|
changeRowState = (state, fromIndex, toIndex) => {
|
|
16453
16453
|
const to = (v) => {
|
|
16454
|
-
if ([
|
|
16454
|
+
if ([ninegrid.ROW_STATE.EMPTY, ninegrid.ROW_STATE.NORMAL].includes(state)) v.__ng.o = {};
|
|
16455
16455
|
v.__ng.rowState = state;
|
|
16456
16456
|
};
|
|
16457
16457
|
|
|
16458
|
-
if (!state) state =
|
|
16458
|
+
if (!state) state = ninegrid.ROW_STATE.EMPTY;
|
|
16459
16459
|
if (!fromIndex && !toIndex) { fromIndex = 0; toIndex = this.count() - 1; }
|
|
16460
16460
|
if (!fromIndex) fromIndex = 0;
|
|
16461
16461
|
if (!toIndex) toIndex = fromIndex;//this.count() - 1;
|
|
@@ -16499,7 +16499,7 @@ class ngData
|
|
|
16499
16499
|
#dataChanged = (row, bind, oldValue, newValue) => {
|
|
16500
16500
|
if (oldValue == newValue) return;
|
|
16501
16501
|
|
|
16502
|
-
const customEvent = new CustomEvent(
|
|
16502
|
+
const customEvent = new CustomEvent(ninegrid.EVENT.DATA_CHANGED, { bubbles: true, detail: {} });
|
|
16503
16503
|
customEvent.row = row;
|
|
16504
16504
|
customEvent.bind = bind;
|
|
16505
16505
|
customEvent.oldvalue = oldValue;
|
|
@@ -16545,15 +16545,15 @@ class ngData
|
|
|
16545
16545
|
|
|
16546
16546
|
this.#parent.rawRecords = this.#parent.rawRecords.concat(this.#defaultInsert(arr));
|
|
16547
16547
|
|
|
16548
|
-
const arr2 = this.#parent.rawRecords.map(m => { return m.__ng._[
|
|
16548
|
+
const arr2 = this.#parent.rawRecords.map(m => { return m.__ng._[ninegrid.ROW.ORIGIN_ORDER]; });
|
|
16549
16549
|
if (arr2.length > 0) {
|
|
16550
16550
|
const maxOrder = arr2.reduce( function (a, b) {
|
|
16551
16551
|
return a > b ? a : b;
|
|
16552
16552
|
});
|
|
16553
16553
|
|
|
16554
16554
|
this.#parent.rawRecords.forEach((o,i) => {
|
|
16555
|
-
if (o.__ng._[
|
|
16556
|
-
o.__ng._[
|
|
16555
|
+
if (o.__ng._[ninegrid.ROW.ORIGIN_ORDER] < 0) {
|
|
16556
|
+
o.__ng._[ninegrid.ROW.ORIGIN_ORDER] = maxOrder + 1 + i;
|
|
16557
16557
|
}
|
|
16558
16558
|
});
|
|
16559
16559
|
}
|
|
@@ -16561,7 +16561,7 @@ class ngData
|
|
|
16561
16561
|
this.resetRecords();
|
|
16562
16562
|
|
|
16563
16563
|
const row = this.count() - 1;
|
|
16564
|
-
if (!updateState) this.changeRowState(
|
|
16564
|
+
if (!updateState) this.changeRowState(ninegrid.ROW_STATE.EMPTY, row - arr.length + 1, row);
|
|
16565
16565
|
//this.#parent.owner.refresh();
|
|
16566
16566
|
this.#parent.viewRecords.reset();
|
|
16567
16567
|
|
|
@@ -16587,8 +16587,8 @@ class ngData
|
|
|
16587
16587
|
var arr = this.#json2Array(dataSource);
|
|
16588
16588
|
|
|
16589
16589
|
/** 후방 원순서 증가 */
|
|
16590
|
-
const originOrder = this.#parent.rawRecords[at].__ng._[
|
|
16591
|
-
this.#parent.rawRecords.filter(m => {return m.__ng._[
|
|
16590
|
+
const originOrder = this.#parent.rawRecords[at].__ng._[ninegrid.ROW.ORIGIN_ORDER];
|
|
16591
|
+
this.#parent.rawRecords.filter(m => {return m.__ng._[ninegrid.ROW.ORIGIN_ORDER] >= originOrder}).forEach(v => { v.__ng._[ninegrid.ROW.ORIGIN_ORDER] += arr.length; });
|
|
16592
16592
|
/**
|
|
16593
16593
|
this.#parent.rawRecords.forEach((o,i) => {
|
|
16594
16594
|
if (i >= at) {
|
|
@@ -16598,7 +16598,7 @@ class ngData
|
|
|
16598
16598
|
|
|
16599
16599
|
arr = this.#defaultInsert(arr);
|
|
16600
16600
|
arr.forEach((o,i) => {
|
|
16601
|
-
o.__ng._[
|
|
16601
|
+
o.__ng._[ninegrid.ROW.ORIGIN_ORDER] = originOrder + i;
|
|
16602
16602
|
});
|
|
16603
16603
|
|
|
16604
16604
|
this.#parent.rawRecords.splice(at, 0, ...arr);
|
|
@@ -16606,7 +16606,7 @@ class ngData
|
|
|
16606
16606
|
|
|
16607
16607
|
this.resetRecords();
|
|
16608
16608
|
|
|
16609
|
-
if (!updateState) this.changeRowState(
|
|
16609
|
+
if (!updateState) this.changeRowState(ninegrid.ROW_STATE.EMPTY, at, at + arr.length - 1);
|
|
16610
16610
|
|
|
16611
16611
|
//this.#parent.owner.refresh();
|
|
16612
16612
|
this.#parent.viewRecords.reset();
|
|
@@ -16618,11 +16618,11 @@ class ngData
|
|
|
16618
16618
|
|
|
16619
16619
|
var changed = false;
|
|
16620
16620
|
arr.sort((a,b) => {return b-a}).forEach(rowidx => {
|
|
16621
|
-
if (this.#records[rowidx].__ng.rowState ==
|
|
16622
|
-
|
|
16621
|
+
if (this.#records[rowidx].__ng.rowState == ninegrid.ROW_STATE.INSERT) {
|
|
16622
|
+
ninegrid.removeIf(this.#parent.rawRecords, item => { return item.__ng.rowid == this.#records[rowidx].__ng.rowid; } );
|
|
16623
16623
|
}
|
|
16624
16624
|
else {
|
|
16625
|
-
this.#parent.rawRecords.filter(item => { return item.__ng.rowid == this.#records[rowidx].__ng.rowid; } ).map(item => { item.__ng.deleted = true; item.__ng.rowState =
|
|
16625
|
+
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; });
|
|
16626
16626
|
changed = true;
|
|
16627
16627
|
}
|
|
16628
16628
|
});
|
|
@@ -16662,8 +16662,8 @@ class ngData
|
|
|
16662
16662
|
arr = [at];
|
|
16663
16663
|
}*/
|
|
16664
16664
|
else if (typeof at === "object") {
|
|
16665
|
-
const index = this.#records.findIndex(m => { return m.__ng._[
|
|
16666
|
-
if (index < 0) throw new Error(`${at.__ng._[
|
|
16665
|
+
const index = this.#records.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == at.__ng._[ninegrid.ROW.ID]; });
|
|
16666
|
+
if (index < 0) throw new Error(`${at.__ng._[ninegrid.ROW.ID]} not found.`);
|
|
16667
16667
|
arr = [index];
|
|
16668
16668
|
}
|
|
16669
16669
|
else {
|
|
@@ -16684,7 +16684,7 @@ class ngData
|
|
|
16684
16684
|
deleteFromId = (rowId) => {
|
|
16685
16685
|
|
|
16686
16686
|
var rec = this.records();
|
|
16687
|
-
const at = rec.findIndex(m => { return m.__ng._[
|
|
16687
|
+
const at = rec.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == rowId; });
|
|
16688
16688
|
|
|
16689
16689
|
if (at < 0) throw new Error(`${rowId} not found.`);
|
|
16690
16690
|
|
|
@@ -16695,7 +16695,7 @@ class ngData
|
|
|
16695
16695
|
#update = (rec, o, at) => {
|
|
16696
16696
|
|
|
16697
16697
|
if (typeof at === "undefined") {
|
|
16698
|
-
at = rec.findIndex(m => { return m.__ng._[
|
|
16698
|
+
at = rec.findIndex(m => { return m.__ng._[ninegrid.ROW.ID] == o.__ng._[ninegrid.ROW.ID]; });
|
|
16699
16699
|
}
|
|
16700
16700
|
else if (typeof at === "number" || typeof at === "string") {
|
|
16701
16701
|
at = parseInt(at);
|
|
@@ -16723,7 +16723,7 @@ class ngData
|
|
|
16723
16723
|
rowData.v[COL_IDX] = newValue;
|
|
16724
16724
|
|
|
16725
16725
|
if (oldValue != newValue){
|
|
16726
|
-
rowData.__ng.rowState =
|
|
16726
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16727
16727
|
changed = true;
|
|
16728
16728
|
|
|
16729
16729
|
this.#dataChanged(at, colnm, oldValue, newValue);
|
|
@@ -16773,12 +16773,12 @@ class ngData
|
|
|
16773
16773
|
//var rowData = records(index);
|
|
16774
16774
|
var oldValue = rowData.v[COL_IDX];
|
|
16775
16775
|
|
|
16776
|
-
if (rowData.v[COL_IDX] != value && rowData.__ng.rowState !=
|
|
16776
|
+
if (rowData.v[COL_IDX] != value && rowData.__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
16777
16777
|
//if (!rowData.__ng.org) rowData.__ng.org = {};
|
|
16778
16778
|
if (!rowData.__ng.o.hasOwnProperty(colnm)) rowData.__ng.o[colnm] = oldValue;
|
|
16779
16779
|
|
|
16780
16780
|
if (updateRowState) {
|
|
16781
|
-
rowData.__ng.rowState =
|
|
16781
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16782
16782
|
this.onRowStateChanged(); // thead row-state marking
|
|
16783
16783
|
}
|
|
16784
16784
|
}
|
|
@@ -16815,11 +16815,11 @@ class ngData
|
|
|
16815
16815
|
//var rowData = records(index);
|
|
16816
16816
|
rowData.v[colIndex];
|
|
16817
16817
|
|
|
16818
|
-
if (rowData.v[colIndex] != value && rowData.__ng.rowState !=
|
|
16818
|
+
if (rowData.v[colIndex] != value && rowData.__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
16819
16819
|
//if (!rowData.__ng.o.hasOwnProperty(colnm)) rowData.__ng.o[colnm] = oldValue;
|
|
16820
16820
|
|
|
16821
16821
|
if (updateRowState) {
|
|
16822
|
-
rowData.__ng.rowState =
|
|
16822
|
+
rowData.__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
16823
16823
|
}
|
|
16824
16824
|
}
|
|
16825
16825
|
|
|
@@ -16840,14 +16840,14 @@ class ngData
|
|
|
16840
16840
|
}
|
|
16841
16841
|
else {
|
|
16842
16842
|
return {
|
|
16843
|
-
insert: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState ==
|
|
16844
|
-
update: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState ==
|
|
16845
|
-
delete: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState ==
|
|
16843
|
+
insert: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.INSERT; } ) ),
|
|
16844
|
+
update: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.UPDATE; } ) ),
|
|
16845
|
+
delete: this.conv2( this.#parent.rawRecords.filter(m => { return m.__ng.rowState == ninegrid.ROW_STATE.DELETE; } ) ),
|
|
16846
16846
|
};
|
|
16847
16847
|
}
|
|
16848
16848
|
};
|
|
16849
16849
|
isChanged = () => {
|
|
16850
|
-
const arr = this.#parent.rawRecords.filter(m => { return m.__ng.rowState ==
|
|
16850
|
+
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; } );
|
|
16851
16851
|
return arr.length > 0;
|
|
16852
16852
|
}
|
|
16853
16853
|
|
|
@@ -16866,7 +16866,7 @@ class ngData
|
|
|
16866
16866
|
|
|
16867
16867
|
if (!records || records.length <= 0) return;
|
|
16868
16868
|
|
|
16869
|
-
if (
|
|
16869
|
+
if (ninegrid.isNull(at)) {
|
|
16870
16870
|
return this.conv2(records);
|
|
16871
16871
|
}
|
|
16872
16872
|
|
|
@@ -16897,10 +16897,10 @@ class ngData
|
|
|
16897
16897
|
* return : 모든 행의 데이타 값을 Array 배열로 반환
|
|
16898
16898
|
*/
|
|
16899
16899
|
records = (at) => {
|
|
16900
|
-
return (
|
|
16900
|
+
return (ninegrid.isNull(at)) ? this.getValidData() : this.getValidData(at);
|
|
16901
16901
|
}
|
|
16902
16902
|
recordsNF = (at) => {
|
|
16903
|
-
return (
|
|
16903
|
+
return (ninegrid.isNull(at)) ? this.getValidDataNF() : this.getValidDataNF(at);
|
|
16904
16904
|
}
|
|
16905
16905
|
|
|
16906
16906
|
/**
|
|
@@ -16967,11 +16967,11 @@ class ngData
|
|
|
16967
16967
|
|
|
16968
16968
|
mid = parseInt((start+end)/2);
|
|
16969
16969
|
|
|
16970
|
-
if (target === arr[mid].__ng._[
|
|
16970
|
+
if (target === arr[mid].__ng._[ninegrid.ROW.INDEX]) {
|
|
16971
16971
|
return mid;
|
|
16972
16972
|
}
|
|
16973
16973
|
else {
|
|
16974
|
-
if (target < arr[mid].__ng._[
|
|
16974
|
+
if (target < arr[mid].__ng._[ninegrid.ROW.INDEX]){
|
|
16975
16975
|
end = mid - 1;
|
|
16976
16976
|
}
|
|
16977
16977
|
else {
|
|
@@ -17156,8 +17156,8 @@ class ngDataManager
|
|
|
17156
17156
|
this.getColumn = (rowidx,colnm) => { return this.data.get(rowidx, colnm); };
|
|
17157
17157
|
this.setColumn = (rowidx,colnm,v) => {
|
|
17158
17158
|
rowidx = parseInt(rowidx);
|
|
17159
|
-
if (this.data.get(rowidx)[colnm] != v && this.data.get(rowidx).__ng.rowState !=
|
|
17160
|
-
this.data.get(rowidx).__ng.rowState =
|
|
17159
|
+
if (this.data.get(rowidx)[colnm] != v && this.data.get(rowidx).__ng.rowState != ninegrid.ROW_STATE.INSERT) {
|
|
17160
|
+
this.data.get(rowidx).__ng.rowState = ninegrid.ROW_STATE.UPDATE;
|
|
17161
17161
|
this.data.onRowStateChanged();
|
|
17162
17162
|
}
|
|
17163
17163
|
this.setColumnSilent(rowidx,colnm,v);
|
|
@@ -17241,8 +17241,8 @@ class ngExpandIcon extends HTMLElement
|
|
|
17241
17241
|
|
|
17242
17242
|
this.shadowRoot.innerHTML = `
|
|
17243
17243
|
<style>
|
|
17244
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
17245
|
-
${
|
|
17244
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandIcon.css";
|
|
17245
|
+
${ninegrid.getCustomPath(this,"ngExpandIcon.css")}
|
|
17246
17246
|
|
|
17247
17247
|
:host {
|
|
17248
17248
|
width: ${width};
|
|
@@ -17270,7 +17270,7 @@ class ngExpandIcon extends HTMLElement
|
|
|
17270
17270
|
case "rect":
|
|
17271
17271
|
case "check":
|
|
17272
17272
|
case "svg":
|
|
17273
|
-
|
|
17273
|
+
ninegrid.j.querySelectorAll("circle,rect,svg", this.shadowRoot).attr("fill", this.getAttribute(entry.attributeName));
|
|
17274
17274
|
break;
|
|
17275
17275
|
}
|
|
17276
17276
|
break;
|
|
@@ -17281,7 +17281,7 @@ class ngExpandIcon extends HTMLElement
|
|
|
17281
17281
|
this.shadowRoot.querySelector("div").innerHTML = this.getAttribute(entry.attributeName);
|
|
17282
17282
|
break;
|
|
17283
17283
|
case "img":
|
|
17284
|
-
|
|
17284
|
+
ninegrid.j.querySelectorAll("img", this.shadowRoot).attr("src", this.getAttribute(entry.attributeName));
|
|
17285
17285
|
break;
|
|
17286
17286
|
}
|
|
17287
17287
|
break;
|
|
@@ -17307,8 +17307,8 @@ class ngExpandCheck extends HTMLElement
|
|
|
17307
17307
|
|
|
17308
17308
|
this.shadowRoot.innerHTML = `
|
|
17309
17309
|
<style>
|
|
17310
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
17311
|
-
${
|
|
17310
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandCheck.css";
|
|
17311
|
+
${ninegrid.getCustomPath(this,"ngExpandCheck.css")}
|
|
17312
17312
|
</style>
|
|
17313
17313
|
|
|
17314
17314
|
<input type="checkbox" />
|
|
@@ -17328,8 +17328,8 @@ class ngExpandButton extends HTMLElement
|
|
|
17328
17328
|
|
|
17329
17329
|
this.shadowRoot.innerHTML = `
|
|
17330
17330
|
<style>
|
|
17331
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
17332
|
-
${
|
|
17331
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngExpandButton.css";
|
|
17332
|
+
${ninegrid.getCustomPath(this,"ngExpandButton.css")}
|
|
17333
17333
|
</style>
|
|
17334
17334
|
|
|
17335
17335
|
<button>...</button>
|
|
@@ -17363,7 +17363,7 @@ class ngExportExcel
|
|
|
17363
17363
|
afterFunc : () => {},
|
|
17364
17364
|
};
|
|
17365
17365
|
|
|
17366
|
-
var fileName =
|
|
17366
|
+
var fileName = ninegrid.nvl(_option.fileName, "temp");
|
|
17367
17367
|
|
|
17368
17368
|
const _download = async (workbook, fileName) => {
|
|
17369
17369
|
|
|
@@ -17439,7 +17439,7 @@ class ngExportExcel
|
|
|
17439
17439
|
|
|
17440
17440
|
var v = "";
|
|
17441
17441
|
|
|
17442
|
-
if (!
|
|
17442
|
+
if (!ninegrid.isNull(td.dataset.expr)) {
|
|
17443
17443
|
try {
|
|
17444
17444
|
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17445
17445
|
v = this.#owner.exprFunction(td.dataset.expr).call(this, rowData, rowIndex);
|
|
@@ -17448,7 +17448,7 @@ class ngExportExcel
|
|
|
17448
17448
|
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17449
17449
|
}
|
|
17450
17450
|
}
|
|
17451
|
-
else if (!
|
|
17451
|
+
else if (!ninegrid.isNull(td.dataset.bind)) {
|
|
17452
17452
|
//const COL_IDX = this.#owner.fields.indexOf(td.dataset.bind);
|
|
17453
17453
|
//v = rowData.v[COL_IDX] || "";
|
|
17454
17454
|
v = rowData[td.dataset.bind] || "";
|
|
@@ -17943,14 +17943,14 @@ class ngFiltering
|
|
|
17943
17943
|
}
|
|
17944
17944
|
//var colnms = filterData.map(item => item.colnm);
|
|
17945
17945
|
|
|
17946
|
-
|
|
17946
|
+
ninegrid.querySelectorAll("ng-filter-button").forEach(v => {
|
|
17947
17947
|
v.filterData = null;
|
|
17948
17948
|
});
|
|
17949
17949
|
|
|
17950
17950
|
for (let key in jsonOption) {
|
|
17951
17951
|
const arr = jsonOption[key];
|
|
17952
17952
|
|
|
17953
|
-
|
|
17953
|
+
ninegrid.querySelectorAll("ng-filter-button").forEach(v => {
|
|
17954
17954
|
//console.log(v.colnms);
|
|
17955
17955
|
|
|
17956
17956
|
v.colnms.forEach(colnm => {
|
|
@@ -17997,7 +17997,7 @@ class ngFilterButton extends HTMLElement
|
|
|
17997
17997
|
};
|
|
17998
17998
|
set filterData(v) {
|
|
17999
17999
|
this.#filterData = v;
|
|
18000
|
-
v && v.length > 0 ?
|
|
18000
|
+
v && v.length > 0 ? ninegrid.j.querySelectorAll(this).addClass('filtered') : ninegrid.j.querySelectorAll(this).removeClass('filtered');
|
|
18001
18001
|
};
|
|
18002
18002
|
|
|
18003
18003
|
#onClick = (e) => {
|
|
@@ -18042,8 +18042,8 @@ class ngFilterPanel extends HTMLElement
|
|
|
18042
18042
|
|
|
18043
18043
|
this.shadowRoot.innerHTML = `
|
|
18044
18044
|
<style>
|
|
18045
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18046
|
-
${
|
|
18045
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngFilterPanel.css";
|
|
18046
|
+
${ninegrid.getCustomPath(this,"ngFilterPanel.css")}
|
|
18047
18047
|
</style>
|
|
18048
18048
|
|
|
18049
18049
|
<div class="head">
|
|
@@ -18089,7 +18089,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18089
18089
|
var grd = this.shadowRoot.querySelector("nine-grid");
|
|
18090
18090
|
|
|
18091
18091
|
//ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
18092
|
-
|
|
18092
|
+
ninegrid.j.querySelectorAll(this.#target.owner).addClass("loading");
|
|
18093
18093
|
|
|
18094
18094
|
|
|
18095
18095
|
setTimeout(() => {
|
|
@@ -18180,7 +18180,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18180
18180
|
|
|
18181
18181
|
//this.#target.owner.paging.reset();
|
|
18182
18182
|
|
|
18183
|
-
|
|
18183
|
+
ninegrid.j.querySelectorAll(this.#target.owner).removeClass("loading");
|
|
18184
18184
|
|
|
18185
18185
|
});
|
|
18186
18186
|
|
|
@@ -18207,7 +18207,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18207
18207
|
var grd = this.shadowRoot.querySelector("nine-grid");
|
|
18208
18208
|
|
|
18209
18209
|
|
|
18210
|
-
|
|
18210
|
+
ninegrid.j.querySelectorAll(grd).addClass("loading");
|
|
18211
18211
|
|
|
18212
18212
|
|
|
18213
18213
|
var data = grd.dataManager.rawRecords;
|
|
@@ -18255,7 +18255,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18255
18255
|
|
|
18256
18256
|
$(this).show();
|
|
18257
18257
|
|
|
18258
|
-
|
|
18258
|
+
ninegrid.j.querySelectorAll(this).addClass("loading");
|
|
18259
18259
|
|
|
18260
18260
|
$(this.shadowRoot).find("input[type=text]").val("");
|
|
18261
18261
|
|
|
@@ -18317,7 +18317,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18317
18317
|
var exprFunc = (expr) ? owner.exprFunction(expr) : null;
|
|
18318
18318
|
*/
|
|
18319
18319
|
|
|
18320
|
-
const cell =
|
|
18320
|
+
const cell = ninegrid.j.querySelectorAll(`[data-col="${col}"][data-bind="${colnm}"]`, owner.tmpl).elem();
|
|
18321
18321
|
const expr = cell.getAttribute("data-expr");
|
|
18322
18322
|
const exprFunc = (expr) ? owner.exprFunction(expr) : null;
|
|
18323
18323
|
|
|
@@ -18355,7 +18355,7 @@ class ngFilterPanel extends HTMLElement
|
|
|
18355
18355
|
|
|
18356
18356
|
this.shadowRoot.querySelector("input").focus();
|
|
18357
18357
|
|
|
18358
|
-
|
|
18358
|
+
ninegrid.j.querySelectorAll(this).removeClass("loading");
|
|
18359
18359
|
});
|
|
18360
18360
|
};
|
|
18361
18361
|
}
|
|
@@ -18380,8 +18380,8 @@ class ngFoot extends HTMLElement
|
|
|
18380
18380
|
|
|
18381
18381
|
this.shadowRoot.innerHTML = `
|
|
18382
18382
|
<style>
|
|
18383
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18384
|
-
${
|
|
18383
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngFoot.css";
|
|
18384
|
+
${ninegrid.getCustomPath(this,"ngFoot.css")}
|
|
18385
18385
|
</style>
|
|
18386
18386
|
|
|
18387
18387
|
<ng-layout></ng-layout>
|
|
@@ -18428,7 +18428,7 @@ class ngLayout extends HTMLElement
|
|
|
18428
18428
|
if (this.#tables.length <= 1) $(this.#wrap).hide();
|
|
18429
18429
|
|
|
18430
18430
|
//$("button", this.#wrap).eq(0).addClass("ng-active");
|
|
18431
|
-
|
|
18431
|
+
ninegrid.j.querySelectorAll(this.#wrap.querySelector("button")).addClass("ng-active");
|
|
18432
18432
|
|
|
18433
18433
|
$("button", this.#wrap).on("click", this.#onClick);
|
|
18434
18434
|
};
|
|
@@ -18451,7 +18451,7 @@ class ngLayout extends HTMLElement
|
|
|
18451
18451
|
|
|
18452
18452
|
#onClick = e => {
|
|
18453
18453
|
|
|
18454
|
-
if (
|
|
18454
|
+
if (ninegrid.j.querySelectorAll(e.currentTarget).hasClass("ng-active")) return;
|
|
18455
18455
|
|
|
18456
18456
|
const oldIndex = this.#at;
|
|
18457
18457
|
|
|
@@ -18459,10 +18459,10 @@ class ngLayout extends HTMLElement
|
|
|
18459
18459
|
|
|
18460
18460
|
this.#owner.changeRayout(this.#at);
|
|
18461
18461
|
|
|
18462
|
-
|
|
18463
|
-
|
|
18462
|
+
ninegrid.j.querySelectorAll("button", this.#wrap).removeClass("ng-active");
|
|
18463
|
+
ninegrid.j.querySelectorAll(e.currentTarget).addClass("ng-active");
|
|
18464
18464
|
|
|
18465
|
-
var customEvent = new CustomEvent(
|
|
18465
|
+
var customEvent = new CustomEvent(ninegrid.EVENT.LAYOUT_CHANGED, { bubbles: true, detail: {} });
|
|
18466
18466
|
customEvent.oldIndex = oldIndex;
|
|
18467
18467
|
customEvent.newIndex = this.#at;
|
|
18468
18468
|
|
|
@@ -18487,12 +18487,12 @@ class ngHead extends HTMLElement
|
|
|
18487
18487
|
|
|
18488
18488
|
this.#owner = this.getRootNode().host;
|
|
18489
18489
|
|
|
18490
|
-
if (
|
|
18490
|
+
if (ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) return;
|
|
18491
18491
|
|
|
18492
18492
|
this.shadowRoot.innerHTML = `
|
|
18493
18493
|
<style>
|
|
18494
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18495
|
-
${
|
|
18494
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngHead.css";
|
|
18495
|
+
${ninegrid.getCustomPath(this,"ngHead.css")}
|
|
18496
18496
|
</style>
|
|
18497
18497
|
|
|
18498
18498
|
<ng-menu></ng-menu>
|
|
@@ -18732,8 +18732,8 @@ class ngImg extends ngCellEx
|
|
|
18732
18732
|
|
|
18733
18733
|
this.shadowRoot.innerHTML = `
|
|
18734
18734
|
<style>
|
|
18735
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18736
|
-
${
|
|
18735
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngImg.css";
|
|
18736
|
+
${ninegrid.getCustomPath(this,"ngImg.css")}
|
|
18737
18737
|
|
|
18738
18738
|
img {
|
|
18739
18739
|
border: ${border};
|
|
@@ -18798,8 +18798,8 @@ class ngSvg extends ngCellEx
|
|
|
18798
18798
|
|
|
18799
18799
|
this.shadowRoot.innerHTML = `
|
|
18800
18800
|
<style>
|
|
18801
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18802
|
-
${
|
|
18801
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngSvg.css";
|
|
18802
|
+
${ninegrid.getCustomPath(this,"ngSvg.css")}
|
|
18803
18803
|
|
|
18804
18804
|
div {
|
|
18805
18805
|
border: ${border};
|
|
@@ -18936,8 +18936,8 @@ class ngInfo extends HTMLElement
|
|
|
18936
18936
|
|
|
18937
18937
|
this.shadowRoot.innerHTML = `
|
|
18938
18938
|
<style>
|
|
18939
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
18940
|
-
${
|
|
18939
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInfo.css";
|
|
18940
|
+
${ninegrid.getCustomPath(this,"ngInfo.css")}
|
|
18941
18941
|
</style>
|
|
18942
18942
|
|
|
18943
18943
|
<svg class="icon" xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 16 16">
|
|
@@ -19003,8 +19003,8 @@ class ngInputColor extends ngEditableEx
|
|
|
19003
19003
|
|
|
19004
19004
|
this.shadowRoot.innerHTML = `
|
|
19005
19005
|
<style>
|
|
19006
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
19007
|
-
${
|
|
19006
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputColor.css";
|
|
19007
|
+
${ninegrid.getCustomPath(this,"ngInputColor.css")}
|
|
19008
19008
|
</style>
|
|
19009
19009
|
|
|
19010
19010
|
<input type="color" required />
|
|
@@ -19044,12 +19044,12 @@ class ngInputColor extends ngEditableEx
|
|
|
19044
19044
|
dataRefresh = (v) => {
|
|
19045
19045
|
|
|
19046
19046
|
if (this.#isValidColor(this.value)) {
|
|
19047
|
-
this.#target.value =
|
|
19048
|
-
|
|
19047
|
+
this.#target.value = ninegrid.nvl(this.value, "#ffffff");
|
|
19048
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
19049
19049
|
}
|
|
19050
19050
|
else {
|
|
19051
19051
|
this.#target.value = "#ffffff";
|
|
19052
|
-
|
|
19052
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
19053
19053
|
}
|
|
19054
19054
|
|
|
19055
19055
|
this.#target.setAttribute("title", this.value);
|
|
@@ -19059,7 +19059,7 @@ class ngInputColor extends ngEditableEx
|
|
|
19059
19059
|
|
|
19060
19060
|
#isValidColor = (v) => {
|
|
19061
19061
|
|
|
19062
|
-
if (
|
|
19062
|
+
if (ninegrid.isNull(v)) return true;
|
|
19063
19063
|
|
|
19064
19064
|
if (typeof v !== "string" || v.length != 7 || !v.startsWith("#")) return false;
|
|
19065
19065
|
|
|
@@ -19098,8 +19098,8 @@ class ngInputDate extends ngEditableEx
|
|
|
19098
19098
|
|
|
19099
19099
|
this.shadowRoot.innerHTML = `
|
|
19100
19100
|
<style>
|
|
19101
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
19102
|
-
${
|
|
19101
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputDate.css";
|
|
19102
|
+
${ninegrid.getCustomPath(this,"ngInputDate.css")}
|
|
19103
19103
|
|
|
19104
19104
|
input {
|
|
19105
19105
|
--height: ${height}px;
|
|
@@ -19176,10 +19176,10 @@ class ngInputDate extends ngEditableEx
|
|
|
19176
19176
|
this.#target.value = v;
|
|
19177
19177
|
|
|
19178
19178
|
if (this.#isValidDate(v)) {
|
|
19179
|
-
|
|
19179
|
+
ninegrid.j.querySelectorAll(this).removeClass("invalid");
|
|
19180
19180
|
}
|
|
19181
19181
|
else {
|
|
19182
|
-
|
|
19182
|
+
ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
19183
19183
|
}
|
|
19184
19184
|
|
|
19185
19185
|
if (!a) this.reset();
|
|
@@ -19187,7 +19187,7 @@ class ngInputDate extends ngEditableEx
|
|
|
19187
19187
|
|
|
19188
19188
|
#isValidDate = (v) => {
|
|
19189
19189
|
|
|
19190
|
-
if (
|
|
19190
|
+
if (ninegrid.isNull(v)) return true;
|
|
19191
19191
|
|
|
19192
19192
|
if (typeof v !== "string") return false;
|
|
19193
19193
|
|
|
@@ -19307,8 +19307,8 @@ class ngInputText extends ngEditableEx
|
|
|
19307
19307
|
|
|
19308
19308
|
this.shadowRoot.innerHTML = `
|
|
19309
19309
|
<style>
|
|
19310
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
19311
|
-
${
|
|
19310
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngInputText.css";
|
|
19311
|
+
${ninegrid.getCustomPath(this,"ngInputText.css")}
|
|
19312
19312
|
</style>
|
|
19313
19313
|
|
|
19314
19314
|
<input type="text"
|
|
@@ -19339,9 +19339,9 @@ class ngInputText extends ngEditableEx
|
|
|
19339
19339
|
if (e.target.selectionStart == e.target.selectionEnd) {
|
|
19340
19340
|
if (this.#maxbyte) {
|
|
19341
19341
|
|
|
19342
|
-
if (
|
|
19342
|
+
if (ninegrid.getByteLength(e.target.value) >= Number(this.#maxbyte)) {
|
|
19343
19343
|
|
|
19344
|
-
e.target.value =
|
|
19344
|
+
e.target.value = ninegrid.cut(e.target.value, Number(this.#maxbyte));
|
|
19345
19345
|
|
|
19346
19346
|
this.value = e.target.value;
|
|
19347
19347
|
}
|
|
@@ -19380,7 +19380,7 @@ class ngInputText extends ngEditableEx
|
|
|
19380
19380
|
this.#target.value = this.value;
|
|
19381
19381
|
|
|
19382
19382
|
|
|
19383
|
-
|
|
19383
|
+
ninegrid.j.querySelectorAll(this.#target).removeClass("invalid");
|
|
19384
19384
|
|
|
19385
19385
|
if (this.#type == "number") {
|
|
19386
19386
|
|
|
@@ -19388,18 +19388,18 @@ class ngInputText extends ngEditableEx
|
|
|
19388
19388
|
this.#max && Number(this.#target.value) > Number(this.#max) ||
|
|
19389
19389
|
this.#min && Number(this.#target.value) < Number(this.#min)
|
|
19390
19390
|
) {
|
|
19391
|
-
|
|
19391
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19392
19392
|
}
|
|
19393
19393
|
else if (this.#scale) {
|
|
19394
19394
|
if (this.#target.value.indexOf('.') >= 0 && this.#target.value.substring(this.#target.value.indexOf('.')+1).length > Number(this.#scale) ) {
|
|
19395
|
-
|
|
19395
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19396
19396
|
}
|
|
19397
19397
|
}
|
|
19398
19398
|
}
|
|
19399
19399
|
|
|
19400
19400
|
|
|
19401
|
-
if (this.#maxbyte &&
|
|
19402
|
-
|
|
19401
|
+
if (this.#maxbyte && ninegrid.getByteLength(this.value) > Number(this.#maxbyte)) {
|
|
19402
|
+
ninegrid.j.querySelectorAll(this.#target).addClass("invalid");
|
|
19403
19403
|
}
|
|
19404
19404
|
|
|
19405
19405
|
if (!v) this.reset();
|
|
@@ -19441,7 +19441,7 @@ class ngInputText extends ngEditableEx
|
|
|
19441
19441
|
}
|
|
19442
19442
|
|
|
19443
19443
|
|
|
19444
|
-
if (this.#maxbyte &&
|
|
19444
|
+
if (this.#maxbyte && ninegrid.getByteLength(e.target.value) >= Number(this.#maxbyte) && e.target.selectionStart == e.target.selectionEnd) e.preventDefault();
|
|
19445
19445
|
}
|
|
19446
19446
|
}
|
|
19447
19447
|
|
|
@@ -19535,7 +19535,7 @@ class ngMatrixManager
|
|
|
19535
19535
|
var subrow = matrixRow % this.#owner.template.length;
|
|
19536
19536
|
//matrixRow += this.#owner.dataManager.viewRecords.rawIndex * this.#owner.template.length;
|
|
19537
19537
|
|
|
19538
|
-
var rows =
|
|
19538
|
+
var rows = ninegrid.decode(group, "head", this.#headRows, "foot", this.#footRows, this.#bodyRows);
|
|
19539
19539
|
var idx = rows.findIndex(o => o.rowid == rowid && o.subrow == subrow);
|
|
19540
19540
|
|
|
19541
19541
|
|
|
@@ -19577,7 +19577,7 @@ class ngMatrixManager
|
|
|
19577
19577
|
//matrixRow += this.#owner.dataManager.viewRecords.rawIndex * this.#owner.template.length;
|
|
19578
19578
|
|
|
19579
19579
|
|
|
19580
|
-
var rows =
|
|
19580
|
+
var rows = ninegrid.decode(group, "head", this.#headRows, "foot", this.#footRows, this.#bodyRows);
|
|
19581
19581
|
var idx = rows.findIndex(o => o.rowid == rowid && o.subrow == subrow);
|
|
19582
19582
|
|
|
19583
19583
|
|
|
@@ -19627,7 +19627,7 @@ class ngMaxPopup extends HTMLElement
|
|
|
19627
19627
|
|
|
19628
19628
|
this.shadowRoot.innerHTML = `
|
|
19629
19629
|
<style>
|
|
19630
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
19630
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
19631
19631
|
:host {
|
|
19632
19632
|
}
|
|
19633
19633
|
nine-grid {
|
|
@@ -19673,7 +19673,7 @@ class ngMaxPopup extends HTMLElement
|
|
|
19673
19673
|
|
|
19674
19674
|
e.stopImmediatePropagation();
|
|
19675
19675
|
|
|
19676
|
-
|
|
19676
|
+
ninegrid.confirm("There is changed data.\nDo you want to save it?", "SAVE", {"class": "rgb", "true-text": "Yes", "false-text": "No", }).then(result => {
|
|
19677
19677
|
|
|
19678
19678
|
if (result) {
|
|
19679
19679
|
$(".apply", this.shadowRoot).trigger("click");
|
|
@@ -19777,34 +19777,34 @@ class ngMenu extends HTMLElement
|
|
|
19777
19777
|
"select-type": {
|
|
19778
19778
|
name: 'select type',
|
|
19779
19779
|
items: {
|
|
19780
|
-
[`select-type-${
|
|
19781
|
-
[`select-type-${
|
|
19782
|
-
[`select-type-${
|
|
19783
|
-
[`select-type-${
|
|
19784
|
-
[`select-type-${
|
|
19785
|
-
[`select-type-${
|
|
19786
|
-
[`select-type-${
|
|
19780
|
+
[`select-type-${ninegrid.SELECTTYPE.ROW}`] : { name: "row", className: `select-type select-type-${ninegrid.SELECTTYPE.ROW}` },
|
|
19781
|
+
[`select-type-${ninegrid.SELECTTYPE.ROWS}`]: { name: "multi row", className: `select-type select-type-${ninegrid.SELECTTYPE.ROWS}`},
|
|
19782
|
+
[`select-type-${ninegrid.SELECTTYPE.COL}`] : { name: "column", className: `select-type select-type-${ninegrid.SELECTTYPE.COL}` },
|
|
19783
|
+
[`select-type-${ninegrid.SELECTTYPE.COLS}`]: { name: "multi column", className: `select-type select-type-${ninegrid.SELECTTYPE.COLS}`},
|
|
19784
|
+
[`select-type-${ninegrid.SELECTTYPE.CELL}`]: { name: "cell", className: `select-type select-type-${ninegrid.SELECTTYPE.CELL}`},
|
|
19785
|
+
[`select-type-${ninegrid.SELECTTYPE.AREA}`]: { name: "area", className: `select-type select-type-${ninegrid.SELECTTYPE.AREA}`},
|
|
19786
|
+
[`select-type-${ninegrid.SELECTTYPE.NONE}`]: { name: "none", className: `select-type select-type-${ninegrid.SELECTTYPE.NONE}`},
|
|
19787
19787
|
},
|
|
19788
19788
|
},
|
|
19789
19789
|
"paging-type": {
|
|
19790
19790
|
name: 'paging type',
|
|
19791
19791
|
items: {
|
|
19792
|
-
[`paging-type-${
|
|
19793
|
-
[`paging-type-${
|
|
19794
|
-
[`paging-type-${
|
|
19792
|
+
[`paging-type-${ninegrid.PAGINGTYPE.NONE}`] : { name: "none", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.NONE}` },
|
|
19793
|
+
[`paging-type-${ninegrid.PAGINGTYPE.CLIENT}`] : { name: "client", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.CLIENT}` },
|
|
19794
|
+
[`paging-type-${ninegrid.PAGINGTYPE.SERVER}`] : { name: "server", className: `paging-type paging-type-${ninegrid.PAGINGTYPE.SERVER}` },
|
|
19795
19795
|
"paging-count": {
|
|
19796
19796
|
name: "entries per page",
|
|
19797
19797
|
items: {
|
|
19798
|
-
[`paging-count-${
|
|
19799
|
-
[`paging-count-${
|
|
19800
|
-
[`paging-count-${
|
|
19801
|
-
[`paging-count-${
|
|
19802
|
-
[`paging-count-${
|
|
19803
|
-
[`paging-count-${
|
|
19804
|
-
[`paging-count-${
|
|
19805
|
-
[`paging-count-${
|
|
19806
|
-
[`paging-count-${
|
|
19807
|
-
[`paging-count-${
|
|
19798
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.AUTO}`] : { name: "auto", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.AUTO}` },
|
|
19799
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_1}`] : { name: "1", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_1}` },
|
|
19800
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_5}`] : { name: "5", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_5}` },
|
|
19801
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_10}`] : { name: "10", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_10}` },
|
|
19802
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_20}`] : { name: "20", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_20}` },
|
|
19803
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_30}`] : { name: "30", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_30}` },
|
|
19804
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_50}`] : { name: "50", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_50}` },
|
|
19805
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_100}`] : { name: "100", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_100}` },
|
|
19806
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}`] : { name: "1000", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}` },
|
|
19807
|
+
[`paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`] : { name: "10000", className: `paging-count paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`},
|
|
19808
19808
|
},
|
|
19809
19809
|
},
|
|
19810
19810
|
},
|
|
@@ -19848,13 +19848,13 @@ class ngMenu extends HTMLElement
|
|
|
19848
19848
|
this.#owner.filtering.isFiltering() ? this.#owner.filtering.off() : this.#owner.filtering.on();
|
|
19849
19849
|
break;
|
|
19850
19850
|
|
|
19851
|
-
case `select-type-${
|
|
19852
|
-
case `select-type-${
|
|
19853
|
-
case `select-type-${
|
|
19854
|
-
case `select-type-${
|
|
19855
|
-
case `select-type-${
|
|
19856
|
-
case `select-type-${
|
|
19857
|
-
case `select-type-${
|
|
19851
|
+
case `select-type-${ninegrid.SELECTTYPE.ROW}`:
|
|
19852
|
+
case `select-type-${ninegrid.SELECTTYPE.ROWS}`:
|
|
19853
|
+
case `select-type-${ninegrid.SELECTTYPE.COL}`:
|
|
19854
|
+
case `select-type-${ninegrid.SELECTTYPE.COLS}`:
|
|
19855
|
+
case `select-type-${ninegrid.SELECTTYPE.CELL}`:
|
|
19856
|
+
case `select-type-${ninegrid.SELECTTYPE.AREA}`:
|
|
19857
|
+
case `select-type-${ninegrid.SELECTTYPE.NONE}`:
|
|
19858
19858
|
this.#owner.setAttribute("select-type", e.menuId.replace("select-type-", ""));
|
|
19859
19859
|
break;
|
|
19860
19860
|
|
|
@@ -19869,25 +19869,25 @@ class ngMenu extends HTMLElement
|
|
|
19869
19869
|
this.#owner.setAttribute("show-status-bar", this.#owner.getAttribute("show-status-bar") == "true" ? "false" : "true");
|
|
19870
19870
|
break;
|
|
19871
19871
|
|
|
19872
|
-
case `paging-type-${
|
|
19873
|
-
case `paging-type-${
|
|
19874
|
-
case `paging-type-${
|
|
19872
|
+
case `paging-type-${ninegrid.PAGINGTYPE.NONE}`:
|
|
19873
|
+
case `paging-type-${ninegrid.PAGINGTYPE.CLIENT}`:
|
|
19874
|
+
case `paging-type-${ninegrid.PAGINGTYPE.SERVER}`:
|
|
19875
19875
|
this.#owner.setAttribute("paging-type", e.menuId.replace("paging-type-", ""));
|
|
19876
19876
|
break;
|
|
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-${
|
|
19885
|
-
case `paging-count-${
|
|
19886
|
-
case `paging-count-${
|
|
19877
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.AUTO}`:
|
|
19878
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_1}`:
|
|
19879
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_5}`:
|
|
19880
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_10}`:
|
|
19881
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_20}`:
|
|
19882
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_30}`:
|
|
19883
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_50}`:
|
|
19884
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_100}`:
|
|
19885
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_1000}`:
|
|
19886
|
+
case `paging-count-${ninegrid.PAGINGCOUNT.NUM_10000}`:
|
|
19887
19887
|
this.#owner.setAttribute("paging-count", e.menuId.replace("paging-count-", ""));
|
|
19888
19888
|
break;
|
|
19889
19889
|
case "col-indicator-type":
|
|
19890
|
-
this.#owner.setAttribute("col-indicator-type", this.#owner.getAttribute("col-indicator-type") ==
|
|
19890
|
+
this.#owner.setAttribute("col-indicator-type", this.#owner.getAttribute("col-indicator-type") == ninegrid.COLINDICATORTYPE.EXPAND ? ninegrid.COLINDICATORTYPE.COLLAPSE : ninegrid.COLINDICATORTYPE.EXPAND);
|
|
19891
19891
|
break;
|
|
19892
19892
|
case "auto-fit-col":
|
|
19893
19893
|
this.#owner.setAttribute("auto-fit-col", this.#owner.getAttribute("auto-fit-col") == "true" ? "false" : "true");
|
|
@@ -19901,29 +19901,29 @@ class ngMenu extends HTMLElement
|
|
|
19901
19901
|
},
|
|
19902
19902
|
events : {
|
|
19903
19903
|
show : e => {
|
|
19904
|
-
|
|
19904
|
+
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");
|
|
19905
19905
|
|
|
19906
|
-
this.#owner.getAttribute("show-title-bar") == "true" ?
|
|
19907
|
-
this.#owner.getAttribute("show-menu-icon") == "true" ?
|
|
19908
|
-
this.#owner.getAttribute("show-status-bar") == "true" ?
|
|
19906
|
+
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");
|
|
19907
|
+
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");
|
|
19908
|
+
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");
|
|
19909
19909
|
|
|
19910
|
-
|
|
19911
|
-
|
|
19910
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .select-type", this.#owner.shadowRoot).removeClass("on");
|
|
19911
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .select-type-${this.#owner.getAttribute("select-type")}`, this.#owner.shadowRoot).addClass("on");
|
|
19912
19912
|
|
|
19913
|
-
|
|
19914
|
-
|
|
19913
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .paging-type", this.#owner.shadowRoot).removeClass("on");
|
|
19914
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .paging-type-${this.#owner.getAttribute("paging-type")}`, this.#owner.shadowRoot).addClass("on");
|
|
19915
19915
|
|
|
19916
|
-
|
|
19917
|
-
|
|
19916
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .paging-count", this.#owner.shadowRoot).removeClass("on");
|
|
19917
|
+
ninegrid.j.querySelectorAll(`ng-context-menu-panel .paging-count-${this.#owner.getAttribute("paging-count")}`, this.#owner.shadowRoot).addClass("on");
|
|
19918
19918
|
|
|
19919
|
-
this.#owner.filtering.isFiltering() ?
|
|
19919
|
+
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");
|
|
19920
19920
|
|
|
19921
|
-
this.#owner.getAttribute("auto-fit-col") == "true" ?
|
|
19921
|
+
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");
|
|
19922
19922
|
|
|
19923
|
-
this.#owner.getAttribute("col-indicator-type") ==
|
|
19923
|
+
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");
|
|
19924
19924
|
|
|
19925
19925
|
const tfoot = this.#owner.body.querySelector(".ng-table tfoot");
|
|
19926
|
-
const tfootMenu =
|
|
19926
|
+
const tfootMenu = ninegrid.j.querySelectorAll("ng-context-menu-panel .show-tfoot", this.#owner.shadowRoot);
|
|
19927
19927
|
|
|
19928
19928
|
if (tfoot) {
|
|
19929
19929
|
tfootMenu.removeClass("disabled");
|
|
@@ -19934,12 +19934,12 @@ class ngMenu extends HTMLElement
|
|
|
19934
19934
|
}
|
|
19935
19935
|
|
|
19936
19936
|
if (typeof ExcelJS == "undefined") {
|
|
19937
|
-
|
|
19937
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .import,ng-context-menu-panel .export-excel", this.#owner.shadowRoot).addClass("disabled");
|
|
19938
19938
|
}
|
|
19939
19939
|
|
|
19940
|
-
|
|
19940
|
+
ninegrid.j.querySelectorAll("ng-context-menu-panel .import,ng-context-menu-panel .export-pdf", this.#owner.shadowRoot).addClass("disabled");
|
|
19941
19941
|
|
|
19942
|
-
this.#owner.closest("dialog") ?
|
|
19942
|
+
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");
|
|
19943
19943
|
},
|
|
19944
19944
|
hide : () => {
|
|
19945
19945
|
},
|
|
@@ -19998,22 +19998,22 @@ class ngPaging extends HTMLElement
|
|
|
19998
19998
|
return this.#owner.getAttribute("paging-type");
|
|
19999
19999
|
};
|
|
20000
20000
|
set type(v) {
|
|
20001
|
-
if (!Object.values(
|
|
20001
|
+
if (!Object.values(ninegrid.PAGINGTYPE).includes(v)) throw `invalid page type : ${v}`;
|
|
20002
20002
|
|
|
20003
20003
|
//this.#owner.setAttribute("paging-type", v);
|
|
20004
20004
|
|
|
20005
20005
|
switch (v) {
|
|
20006
|
-
case
|
|
20006
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
20007
20007
|
|
|
20008
20008
|
$(this).children().show();
|
|
20009
20009
|
$(this).children().not("span:last-child").hide();
|
|
20010
20010
|
break;
|
|
20011
20011
|
|
|
20012
|
-
case
|
|
20012
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
20013
20013
|
$(this).children().show();
|
|
20014
20014
|
break;
|
|
20015
20015
|
|
|
20016
|
-
case
|
|
20016
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
20017
20017
|
$(this).children().show();
|
|
20018
20018
|
break;
|
|
20019
20019
|
}
|
|
@@ -20025,7 +20025,7 @@ class ngPaging extends HTMLElement
|
|
|
20025
20025
|
return this.#currentPage;
|
|
20026
20026
|
};
|
|
20027
20027
|
set currentPage(v) {
|
|
20028
|
-
if (this.type !=
|
|
20028
|
+
if (this.type != ninegrid.PAGINGTYPE.SERVER) throw `"currentPage" is only allowed when the paging type is server.`;
|
|
20029
20029
|
|
|
20030
20030
|
this.#currentPage = v;
|
|
20031
20031
|
};
|
|
@@ -20059,7 +20059,7 @@ class ngPaging extends HTMLElement
|
|
|
20059
20059
|
setTimeout(() => {/** paging-type : none -> client 변경시 height 오류 */
|
|
20060
20060
|
this.#count = v;
|
|
20061
20061
|
|
|
20062
|
-
if (v ==
|
|
20062
|
+
if (v == ninegrid.PAGINGCOUNT.AUTO) {
|
|
20063
20063
|
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);
|
|
20064
20064
|
var tmplHeight = 0;
|
|
20065
20065
|
$(this.#owner.template).each((i,el) => tmplHeight += $(el).height());
|
|
@@ -20073,15 +20073,15 @@ class ngPaging extends HTMLElement
|
|
|
20073
20073
|
|
|
20074
20074
|
|
|
20075
20075
|
switch (this.type) {
|
|
20076
|
-
case
|
|
20076
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
20077
20077
|
this.refresh();
|
|
20078
20078
|
break;
|
|
20079
20079
|
|
|
20080
|
-
case
|
|
20080
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
20081
20081
|
this.refresh();
|
|
20082
20082
|
break;
|
|
20083
20083
|
|
|
20084
|
-
case
|
|
20084
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
20085
20085
|
this.movePage(1);
|
|
20086
20086
|
break;
|
|
20087
20087
|
}
|
|
@@ -20108,13 +20108,13 @@ class ngPaging extends HTMLElement
|
|
|
20108
20108
|
#refresh = () => {
|
|
20109
20109
|
|
|
20110
20110
|
|
|
20111
|
-
if (this.type ==
|
|
20111
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
20112
20112
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#owner.data.countNF().toLocaleString()}`);
|
|
20113
20113
|
}
|
|
20114
|
-
else if (this.type ==
|
|
20114
|
+
else if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
20115
20115
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#totalCount.toLocaleString()}`);
|
|
20116
20116
|
}
|
|
20117
|
-
else if (this.type ==
|
|
20117
|
+
else if (this.type == ninegrid.PAGINGTYPE.NONE) {
|
|
20118
20118
|
$('span', this).eq(1).html(`<b>Total</b> : ${this.#totalCount.toLocaleString()}`);
|
|
20119
20119
|
}
|
|
20120
20120
|
|
|
@@ -20125,21 +20125,21 @@ class ngPaging extends HTMLElement
|
|
|
20125
20125
|
$('span', this).eq(0).html(`${this.#currentPage.toLocaleString()} <i>of</i> ${this.#totalPage.toLocaleString()}`);
|
|
20126
20126
|
}
|
|
20127
20127
|
|
|
20128
|
-
|
|
20129
|
-
|
|
20130
|
-
|
|
20131
|
-
|
|
20128
|
+
ninegrid.j.querySelectorAll('.ng-paging-first', this).attr("disabled", (this.#currentPage == 1 || this.#totalPage < 1) ? true : false);
|
|
20129
|
+
ninegrid.j.querySelectorAll('.ng-paging-prev', this).attr("disabled", (this.#currentPage == 1 || this.#totalPage < 1) ? true : false);
|
|
20130
|
+
ninegrid.j.querySelectorAll('.ng-paging-next', this).attr("disabled", (this.#currentPage == this.#totalPage || this.#totalPage < 1) ? true : false);
|
|
20131
|
+
ninegrid.j.querySelectorAll('.ng-paging-last', this).attr("disabled", (this.#currentPage == this.#totalPage || this.#totalPage < 1) ? true : false);
|
|
20132
20132
|
};
|
|
20133
20133
|
|
|
20134
20134
|
|
|
20135
20135
|
#moveLast = () => {
|
|
20136
20136
|
//this.#clearPaging();
|
|
20137
20137
|
|
|
20138
|
-
if (this.type ==
|
|
20138
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
20139
20139
|
|
|
20140
20140
|
this.movePage(Math.ceil(this.#owner.data.countNF() / this.#linesPerPage));
|
|
20141
20141
|
}
|
|
20142
|
-
else if (this.type ==
|
|
20142
|
+
else if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
20143
20143
|
this.movePage(Math.ceil(this.#totalCount / this.#linesPerPage));
|
|
20144
20144
|
}
|
|
20145
20145
|
};
|
|
@@ -20149,11 +20149,11 @@ class ngPaging extends HTMLElement
|
|
|
20149
20149
|
//if (!this.#owner || !this.#owner.data || isNaN(page) || this.#totalPage == 0) return;
|
|
20150
20150
|
if (!this.#owner || !this.#owner.data || isNaN(page)) return;
|
|
20151
20151
|
|
|
20152
|
-
if (this.type ==
|
|
20153
|
-
|
|
20154
|
-
|
|
20155
|
-
|
|
20156
|
-
|
|
20152
|
+
if (this.type == ninegrid.PAGINGTYPE.SERVER) {
|
|
20153
|
+
ninegrid.j.querySelectorAll('.ng-paging-first', this).attr("disabled", true);
|
|
20154
|
+
ninegrid.j.querySelectorAll('.ng-paging-prev', this).attr("disabled", true);
|
|
20155
|
+
ninegrid.j.querySelectorAll('.ng-paging-next', this).attr("disabled", true);
|
|
20156
|
+
ninegrid.j.querySelectorAll('.ng-paging-last', this).attr("disabled", true);
|
|
20157
20157
|
}
|
|
20158
20158
|
|
|
20159
20159
|
//this.#clearPaging();
|
|
@@ -20161,7 +20161,7 @@ class ngPaging extends HTMLElement
|
|
|
20161
20161
|
this.#oldPage = this.#currentPage;
|
|
20162
20162
|
this.#currentPage = page;
|
|
20163
20163
|
|
|
20164
|
-
if (this.type ==
|
|
20164
|
+
if (this.type == ninegrid.PAGINGTYPE.CLIENT) {
|
|
20165
20165
|
|
|
20166
20166
|
var data = this.#owner.data.getValidDataNF();
|
|
20167
20167
|
|
|
@@ -20187,7 +20187,7 @@ class ngPaging extends HTMLElement
|
|
|
20187
20187
|
this.#owner.scrollTo_V1(0);
|
|
20188
20188
|
}
|
|
20189
20189
|
|
|
20190
|
-
if (this.type ==
|
|
20190
|
+
if (this.type == ninegrid.PAGINGTYPE.SERVER && this.#oldPage != this.#currentPage){
|
|
20191
20191
|
this.onpagechanged.pageIndex= this.#currentPage;
|
|
20192
20192
|
this.onpagechanged.pageCnt = this.#linesPerPage;
|
|
20193
20193
|
|
|
@@ -20202,18 +20202,18 @@ class ngPaging extends HTMLElement
|
|
|
20202
20202
|
refresh = () => {
|
|
20203
20203
|
|
|
20204
20204
|
switch (this.type) {
|
|
20205
|
-
case
|
|
20205
|
+
case ninegrid.PAGINGTYPE.NONE:
|
|
20206
20206
|
this.#clearPaging();
|
|
20207
20207
|
$(".ng-container tbody tr.bindable:not(.nodata)", this.#owner.body).remove();
|
|
20208
20208
|
this.#owner.scrollTo_V1(0);
|
|
20209
20209
|
break;
|
|
20210
20210
|
|
|
20211
|
-
case
|
|
20211
|
+
case ninegrid.PAGINGTYPE.CLIENT:
|
|
20212
20212
|
this.movePage(1);
|
|
20213
20213
|
this.#owner.refresh();
|
|
20214
20214
|
break;
|
|
20215
20215
|
|
|
20216
|
-
case
|
|
20216
|
+
case ninegrid.PAGINGTYPE.SERVER:
|
|
20217
20217
|
break;
|
|
20218
20218
|
}
|
|
20219
20219
|
|
|
@@ -20246,8 +20246,8 @@ class ngProgress extends ngCellEx
|
|
|
20246
20246
|
|
|
20247
20247
|
this.shadowRoot.innerHTML = `
|
|
20248
20248
|
<style>
|
|
20249
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20250
|
-
${
|
|
20249
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngProgress.css";
|
|
20250
|
+
${ninegrid.getCustomPath(this,"ngProgress.css")}
|
|
20251
20251
|
|
|
20252
20252
|
progress::-webkit-progress-bar {
|
|
20253
20253
|
background: ${backColor};
|
|
@@ -20353,8 +20353,8 @@ class ngRadio extends ngEditableEx
|
|
|
20353
20353
|
|
|
20354
20354
|
this.shadowRoot.innerHTML = `
|
|
20355
20355
|
<style>
|
|
20356
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20357
|
-
${
|
|
20356
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRadio.css";
|
|
20357
|
+
${ninegrid.getCustomPath(this,"ngRadio.css")}
|
|
20358
20358
|
|
|
20359
20359
|
div.ng-wrap {
|
|
20360
20360
|
justify-content: ${justifyContent};
|
|
@@ -20396,7 +20396,7 @@ class ngRadio extends ngEditableEx
|
|
|
20396
20396
|
dataRefresh = (v) => {
|
|
20397
20397
|
|
|
20398
20398
|
if (this.#dataSource) {
|
|
20399
|
-
this.#isValid() ?
|
|
20399
|
+
this.#isValid() ? ninegrid.j.querySelectorAll(this).removeClass("invalid") : ninegrid.j.querySelectorAll(this).addClass("invalid");
|
|
20400
20400
|
}
|
|
20401
20401
|
|
|
20402
20402
|
$(this.#target).each((i,el) => {
|
|
@@ -20410,7 +20410,7 @@ class ngRadio extends ngEditableEx
|
|
|
20410
20410
|
|
|
20411
20411
|
//console.log(this.value, ninegrid.isNull(this.value));
|
|
20412
20412
|
|
|
20413
|
-
if (
|
|
20413
|
+
if (ninegrid.isNull(this.value)) return true;
|
|
20414
20414
|
|
|
20415
20415
|
var idx = this.#dataSource.findIndex(m => { return this.value == m[this.#code]; });
|
|
20416
20416
|
if (idx < 0) return false;
|
|
@@ -20455,8 +20455,8 @@ class ngRenderer extends ngCellEx
|
|
|
20455
20455
|
|
|
20456
20456
|
this.shadowRoot.innerHTML =`
|
|
20457
20457
|
<style>
|
|
20458
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20459
|
-
${
|
|
20458
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRenderer.css";
|
|
20459
|
+
${ninegrid.getCustomPath(this,"ngRenderer.css")}
|
|
20460
20460
|
|
|
20461
20461
|
span {
|
|
20462
20462
|
color: ${color};
|
|
@@ -20515,8 +20515,8 @@ class ngRowDetail extends ngCellEx
|
|
|
20515
20515
|
|
|
20516
20516
|
this.shadowRoot.innerHTML = `
|
|
20517
20517
|
<style>
|
|
20518
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20519
|
-
${
|
|
20518
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowDetail.css";
|
|
20519
|
+
${ninegrid.getCustomPath(this,"ngRowDetail.css")}
|
|
20520
20520
|
</style>
|
|
20521
20521
|
|
|
20522
20522
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="dtl" focusable="false" aria-hidden="true">
|
|
@@ -20568,7 +20568,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20568
20568
|
|
|
20569
20569
|
this.shadowRoot.innerHTML = `
|
|
20570
20570
|
<style>
|
|
20571
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20571
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
20572
20572
|
nine-grid {
|
|
20573
20573
|
border: 1px solid #ccc;
|
|
20574
20574
|
}
|
|
@@ -20620,7 +20620,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20620
20620
|
|
|
20621
20621
|
e.stopImmediatePropagation();
|
|
20622
20622
|
|
|
20623
|
-
|
|
20623
|
+
ninegrid.confirm("There is changed data.\nDo you want to save it?", "SAVE", {"class": "rgb", "true-text": "Yes", "false-text": "No", }).then(result => {
|
|
20624
20624
|
|
|
20625
20625
|
if (result) {
|
|
20626
20626
|
$(".apply", this.shadowRoot).trigger("click");
|
|
@@ -20636,7 +20636,7 @@ class ngRowDetailPopup extends HTMLElement
|
|
|
20636
20636
|
|
|
20637
20637
|
var data = this.#owner.body.querySelector(`tr[data-row="${row}"]`).data;
|
|
20638
20638
|
|
|
20639
|
-
this.#rowIndex = data.__ng._[
|
|
20639
|
+
this.#rowIndex = data.__ng._[ninegrid.ROW.INDEX];
|
|
20640
20640
|
|
|
20641
20641
|
$(".title", this.shadowRoot).html(this.#owner.getAttribute("caption") || "Details");
|
|
20642
20642
|
$(".sub-title", this.shadowRoot).html(`(${(Number(row)+1).toLocaleString()} of ${this.#owner.data.count().toLocaleString()})`);
|
|
@@ -20766,8 +20766,8 @@ class ngRowDrag extends ngCellEx
|
|
|
20766
20766
|
connectedCallback() {
|
|
20767
20767
|
this.shadowRoot.innerHTML = `
|
|
20768
20768
|
<style>
|
|
20769
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
20770
|
-
${
|
|
20769
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowDrag.css";
|
|
20770
|
+
${ninegrid.getCustomPath(this,"ngRowDrag.css")}
|
|
20771
20771
|
</style>
|
|
20772
20772
|
`;
|
|
20773
20773
|
|
|
@@ -20847,7 +20847,7 @@ class ngRowMover
|
|
|
20847
20847
|
#borderTop = (row) => {
|
|
20848
20848
|
[".ng-container-left",".ng-container-body",".ng-container-right"].forEach(group => {
|
|
20849
20849
|
const trs = this.#owner.body.querySelectorAll(`${group} tr[data-row="${row}"]`);
|
|
20850
|
-
|
|
20850
|
+
ninegrid.j.querySelectorAll("th,td", trs[0]).addClass("ng-dragover-up");
|
|
20851
20851
|
});
|
|
20852
20852
|
};
|
|
20853
20853
|
|
|
@@ -20855,7 +20855,7 @@ class ngRowMover
|
|
|
20855
20855
|
[".ng-container-left",".ng-container-body",".ng-container-right"].forEach(group => {
|
|
20856
20856
|
this.#owner.body.querySelectorAll(`${group} tr[data-row="${row}"]`).forEach((tr,i) => {
|
|
20857
20857
|
tr.querySelectorAll("th,td").forEach(cell => {
|
|
20858
|
-
if ((i + (cell.rowSpan || 1)) == this.#owner.template.length)
|
|
20858
|
+
if ((i + (cell.rowSpan || 1)) == this.#owner.template.length) ninegrid.j.querySelectorAll(cell).addClass("ng-dragover-down");
|
|
20859
20859
|
});
|
|
20860
20860
|
});
|
|
20861
20861
|
});
|
|
@@ -20873,8 +20873,8 @@ class ngRowMover
|
|
|
20873
20873
|
const targetRow = parseInt(e.target.closest("th,td").dataset.row);
|
|
20874
20874
|
|
|
20875
20875
|
|
|
20876
|
-
|
|
20877
|
-
|
|
20876
|
+
ninegrid.j.querySelectorAll("th,td", sourceGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20877
|
+
ninegrid.j.querySelectorAll("th,td", targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20878
20878
|
//ninegrid.j.querySelectorAll(`tr`, targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20879
20879
|
|
|
20880
20880
|
if (sourceGrid.id == targetGrid.id) {
|
|
@@ -20942,7 +20942,7 @@ class ngRowMover
|
|
|
20942
20942
|
//const sourceGrid= document.getElementById(e.dataTransfer.getData("id"));
|
|
20943
20943
|
//const sourceRow = parseInt(e.dataTransfer.getData("row"));
|
|
20944
20944
|
//const sourceBind= e.dataTransfer.getData("bind");
|
|
20945
|
-
const sourceGrid=
|
|
20945
|
+
const sourceGrid= ninegrid.nvl(document.getElementById(ngRowDrag.dragData.id), this.#owner); /** Max Popup 화면에서 document.getElementById(ngRowDrag.dragData.id) == null */
|
|
20946
20946
|
const sourceRow = ngRowDrag.dragData.row;
|
|
20947
20947
|
const sourceBind= ngRowDrag.dragData.bind;
|
|
20948
20948
|
|
|
@@ -20953,12 +20953,12 @@ class ngRowMover
|
|
|
20953
20953
|
const targetRow = parseInt(targetTr.dataset.row);
|
|
20954
20954
|
const targetBind= targetGrid.body.querySelector("ng-row-drag") ? targetGrid.body.querySelector("ng-row-drag").cell.dataset.bind : null;
|
|
20955
20955
|
|
|
20956
|
-
|
|
20957
|
-
|
|
20956
|
+
ninegrid.j.querySelectorAll("th,td", sourceGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20957
|
+
ninegrid.j.querySelectorAll("th,td", targetGrid.body).removeClass("ng-dragover-up").removeClass("ng-dragover-down");
|
|
20958
20958
|
|
|
20959
20959
|
if (sourceGrid.id == targetGrid.id && sourceRow == targetRow) return;
|
|
20960
20960
|
|
|
20961
|
-
const canEvent = new CustomEvent(
|
|
20961
|
+
const canEvent = new CustomEvent(ninegrid.EVENT.CAN_ROW_MOVE, { bubbles: true, cancelable: true, detail: {} });
|
|
20962
20962
|
canEvent.sourceGrid = sourceGrid;
|
|
20963
20963
|
canEvent.targetGrid = targetGrid;
|
|
20964
20964
|
canEvent.sourceRow = sourceRow;
|
|
@@ -20996,7 +20996,7 @@ class ngRowMover
|
|
|
20996
20996
|
|
|
20997
20997
|
this.#owner.dataManager.viewRecords.reset();
|
|
20998
20998
|
|
|
20999
|
-
const doneEvent = new CustomEvent(
|
|
20999
|
+
const doneEvent = new CustomEvent(ninegrid.EVENT.ROW_MOVED, { bubbles: true, detail: {} });
|
|
21000
21000
|
doneEvent.sourceGrid= sourceGrid;
|
|
21001
21001
|
doneEvent.targetGrid= targetGrid;
|
|
21002
21002
|
doneEvent.sourceRow = sourceRow;
|
|
@@ -21029,8 +21029,8 @@ class ngRowExpand extends HTMLElement
|
|
|
21029
21029
|
|
|
21030
21030
|
this.shadowRoot.innerHTML = `
|
|
21031
21031
|
<style>
|
|
21032
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21033
|
-
${
|
|
21032
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowExpand.css";
|
|
21033
|
+
${ninegrid.getCustomPath(this,"ngRowExpand.css")}
|
|
21034
21034
|
</style>
|
|
21035
21035
|
`;
|
|
21036
21036
|
|
|
@@ -21040,17 +21040,17 @@ class ngRowExpand extends HTMLElement
|
|
|
21040
21040
|
if (!this.#owner || !this.#cell) return;
|
|
21041
21041
|
|
|
21042
21042
|
//this.#originExpr= $(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.template).attr("data-expr");
|
|
21043
|
-
this.#originExpr=
|
|
21043
|
+
this.#originExpr= ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr");
|
|
21044
21044
|
|
|
21045
21045
|
if (this.#cell.querySelector("ng-col-expand")) {
|
|
21046
|
-
|
|
21046
|
+
ninegrid.j.querySelectorAll(this).addClass("padding");
|
|
21047
21047
|
}
|
|
21048
21048
|
|
|
21049
21049
|
$(this).on("click", e => {
|
|
21050
21050
|
e.preventDefault();
|
|
21051
21051
|
e.stopPropagation();
|
|
21052
21052
|
|
|
21053
|
-
if (
|
|
21053
|
+
if (ninegrid.j.querySelectorAll(this).hasClass("expand")) {
|
|
21054
21054
|
this.#collapse();
|
|
21055
21055
|
}
|
|
21056
21056
|
else {
|
|
@@ -21062,28 +21062,28 @@ class ngRowExpand extends HTMLElement
|
|
|
21062
21062
|
};
|
|
21063
21063
|
|
|
21064
21064
|
#expand = () => {
|
|
21065
|
-
const bind =
|
|
21065
|
+
const bind = ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-bind");
|
|
21066
21066
|
const expr = `data.${bind}.replaceAll("\\n", "<br>")`;
|
|
21067
21067
|
|
|
21068
|
-
|
|
21068
|
+
ninegrid.j.querySelectorAll(this).addClass("expand");
|
|
21069
21069
|
|
|
21070
|
-
|
|
21071
|
-
|
|
21070
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr", expr);
|
|
21071
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).attr("data-expr", expr);
|
|
21072
21072
|
|
|
21073
21073
|
this.#setRowHeightFit();
|
|
21074
21074
|
};
|
|
21075
21075
|
|
|
21076
21076
|
#collapse = () => {
|
|
21077
21077
|
|
|
21078
|
-
|
|
21078
|
+
ninegrid.j.querySelectorAll(this).removeClass("expand");
|
|
21079
21079
|
|
|
21080
21080
|
if (this.#originExpr) {
|
|
21081
|
-
|
|
21082
|
-
|
|
21081
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).attr("data-expr", this.#originExpr);
|
|
21082
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).attr("data-expr", this.#originExpr);
|
|
21083
21083
|
}
|
|
21084
21084
|
else {
|
|
21085
|
-
|
|
21086
|
-
|
|
21085
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.tmpl).removeAttr("data-expr");
|
|
21086
|
+
ninegrid.j.querySelectorAll(`[data-col="${this.#cell.dataset.col}"]`, this.#owner.body).removeAttr("data-expr");
|
|
21087
21087
|
}
|
|
21088
21088
|
|
|
21089
21089
|
this.#setRowHeightFit();
|
|
@@ -21119,8 +21119,8 @@ class ngRowIndicator extends ngCellEx
|
|
|
21119
21119
|
|
|
21120
21120
|
this.shadowRoot.innerHTML = `
|
|
21121
21121
|
<style>
|
|
21122
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21123
|
-
${
|
|
21122
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowIndicator.css";
|
|
21123
|
+
${ninegrid.getCustomPath(this,"ngRowIndicator.css")}
|
|
21124
21124
|
|
|
21125
21125
|
svg.dtl {
|
|
21126
21126
|
display: ${"none"};
|
|
@@ -21155,7 +21155,7 @@ class ngRowIndicator extends ngCellEx
|
|
|
21155
21155
|
|
|
21156
21156
|
//this.cell.dataset.expr = ninegrid.nvl(this.cell.dataset.expr, "data.__ng._[ninegrid.ROW.PIN] ? '*' : data.__ng._[ninegrid.ROW.ORDER]");
|
|
21157
21157
|
//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]");
|
|
21158
|
-
this.cell.dataset.expr =
|
|
21158
|
+
this.cell.dataset.expr = ninegrid.nvl(this.cell.dataset.expr, "data.__ng._[ninegrid.ROW.ORDER]");
|
|
21159
21159
|
|
|
21160
21160
|
this.cell.setAttribute("text-align", "center");
|
|
21161
21161
|
|
|
@@ -21183,14 +21183,14 @@ class ngRowIndicator extends ngCellEx
|
|
|
21183
21183
|
var row = parseInt(this.cell.dataset.row);
|
|
21184
21184
|
|
|
21185
21185
|
switch (this.data.__ng.rowState) {
|
|
21186
|
-
case
|
|
21187
|
-
|
|
21186
|
+
case ninegrid.ROW_STATE.INSERT:
|
|
21187
|
+
ninegrid.j.querySelectorAll(this).addClass('added').removeClass('updated');
|
|
21188
21188
|
break;
|
|
21189
|
-
case
|
|
21190
|
-
|
|
21189
|
+
case ninegrid.ROW_STATE.UPDATE:
|
|
21190
|
+
ninegrid.j.querySelectorAll(this).addClass('updated');
|
|
21191
21191
|
break;
|
|
21192
21192
|
default:
|
|
21193
|
-
|
|
21193
|
+
ninegrid.j.querySelectorAll(this).removeClass('added').removeClass('updated');
|
|
21194
21194
|
break;
|
|
21195
21195
|
}
|
|
21196
21196
|
|
|
@@ -21200,7 +21200,7 @@ class ngRowIndicator extends ngCellEx
|
|
|
21200
21200
|
};
|
|
21201
21201
|
|
|
21202
21202
|
#init = () => {
|
|
21203
|
-
if (!
|
|
21203
|
+
if (!ninegrid.j.querySelectorAll(this.closest("tbody")).hasClass("fixed")) {
|
|
21204
21204
|
var rowSpan = this.cell.rowSpan;
|
|
21205
21205
|
var tr = this.closest("tr");
|
|
21206
21206
|
for (var i = 0; i < rowSpan; i++) {
|
|
@@ -21287,12 +21287,12 @@ class ngRowResizer extends HTMLElement
|
|
|
21287
21287
|
|
|
21288
21288
|
$(this).on("mousedown", e => {
|
|
21289
21289
|
|
|
21290
|
-
if (
|
|
21290
|
+
if (ninegrid.j.querySelectorAll(this.#cell.closest("tbody")).hasClass('fixed')) return;
|
|
21291
21291
|
|
|
21292
21292
|
this.#timer = setTimeout(() => { this.#onMouseDown(e); }, 500);
|
|
21293
21293
|
})
|
|
21294
21294
|
.on("dblclick", e => {
|
|
21295
|
-
if (
|
|
21295
|
+
if (ninegrid.j.querySelectorAll(this.#cell.closest("tbody")).hasClass('fixed')) return;
|
|
21296
21296
|
|
|
21297
21297
|
this.#onDblClick(e);
|
|
21298
21298
|
});
|
|
@@ -21403,8 +21403,8 @@ class ngRowPin extends ngCellEx
|
|
|
21403
21403
|
|
|
21404
21404
|
this.shadowRoot.innerHTML = `
|
|
21405
21405
|
<style>
|
|
21406
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21407
|
-
${
|
|
21406
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowPin.css";
|
|
21407
|
+
${ninegrid.getCustomPath(this,"ngRowPin.css")}
|
|
21408
21408
|
</style>
|
|
21409
21409
|
|
|
21410
21410
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" focusable="false" aria-hidden="true">
|
|
@@ -21420,7 +21420,7 @@ class ngRowPin extends ngCellEx
|
|
|
21420
21420
|
dataRefresh = (v) => {
|
|
21421
21421
|
if (!this.owner || !this.cell || !this.data) return;
|
|
21422
21422
|
|
|
21423
|
-
this.cell.closest("tbody.fixed") ?
|
|
21423
|
+
this.cell.closest("tbody.fixed") ? ninegrid.j.querySelectorAll(this).addClass("pin") : ninegrid.j.querySelectorAll(this).removeClass("pin");
|
|
21424
21424
|
|
|
21425
21425
|
if (!v) this.reset();
|
|
21426
21426
|
};
|
|
@@ -21428,12 +21428,12 @@ class ngRowPin extends ngCellEx
|
|
|
21428
21428
|
#init = () => {
|
|
21429
21429
|
|
|
21430
21430
|
/** Mobile에서 Row Pin 기능 방지 */
|
|
21431
|
-
if (!
|
|
21431
|
+
if (!ninegrid.isMobile()) {
|
|
21432
21432
|
this.shadowRoot.querySelector("svg").addEventListener("click", e => {
|
|
21433
21433
|
|
|
21434
21434
|
const row = this.cell.closest("tr").dataset.row;
|
|
21435
21435
|
|
|
21436
|
-
this.cell.closest("tbody.fixed") ? this.owner.pin.remove(row) : this.owner.pin.add(this.data.__ng._[
|
|
21436
|
+
this.cell.closest("tbody.fixed") ? this.owner.pin.remove(row) : this.owner.pin.add(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
21437
21437
|
});
|
|
21438
21438
|
}
|
|
21439
21439
|
}
|
|
@@ -21455,7 +21455,7 @@ class ngPinManager
|
|
|
21455
21455
|
* 1. grid attr == filter : on();
|
|
21456
21456
|
*/
|
|
21457
21457
|
this.#records.forEach(v => {
|
|
21458
|
-
v.__ng._[
|
|
21458
|
+
v.__ng._[ninegrid.ROW.PIN] = false;
|
|
21459
21459
|
});
|
|
21460
21460
|
|
|
21461
21461
|
this.#records = [];
|
|
@@ -21467,7 +21467,7 @@ class ngPinManager
|
|
|
21467
21467
|
|
|
21468
21468
|
//var data = this.#owner.data.getRow(i);
|
|
21469
21469
|
var data = this.#owner.data.getNF(index);
|
|
21470
|
-
data.__ng._[
|
|
21470
|
+
data.__ng._[ninegrid.ROW.PIN] = true;
|
|
21471
21471
|
|
|
21472
21472
|
this.#records.push(data);
|
|
21473
21473
|
|
|
@@ -21487,7 +21487,7 @@ class ngPinManager
|
|
|
21487
21487
|
bodyTmpl .each((i,tr) => { $(".ng-container-body tbody.fixed", this.#owner.body).append(tr.outerHTML); });
|
|
21488
21488
|
|
|
21489
21489
|
$("tbody.fixed tr:not([data-index])", this.#owner.body).each((i,tr) => {
|
|
21490
|
-
tr.dataset.index = data.__ng._[
|
|
21490
|
+
tr.dataset.index = data.__ng._[ninegrid.ROW.INDEX];
|
|
21491
21491
|
tr.data = data;
|
|
21492
21492
|
});
|
|
21493
21493
|
|
|
@@ -21498,9 +21498,9 @@ class ngPinManager
|
|
|
21498
21498
|
|
|
21499
21499
|
$("tbody.fixed tr", this.#owner.body).each((i,tr) => {
|
|
21500
21500
|
tr.dataset.matrixRow = parseInt(tr.dataset.row) * this.#owner.template.length + (parseInt(tr.sectionRowIndex % this.#owner.template.length));
|
|
21501
|
-
|
|
21502
|
-
|
|
21503
|
-
|
|
21501
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-index", tr.dataset.index);
|
|
21502
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-row", tr.dataset.row);
|
|
21503
|
+
ninegrid.j.querySelectorAll("th,td", tr).attr("data-matrix-row", tr.dataset.matrixRow);
|
|
21504
21504
|
});
|
|
21505
21505
|
|
|
21506
21506
|
this.#owner.data.resetRecords();
|
|
@@ -21517,7 +21517,7 @@ class ngPinManager
|
|
|
21517
21517
|
$(`.ng-container-right tbody.fixed tr[data-row=${row}]`, this.#owner.body).remove();
|
|
21518
21518
|
$(`.ng-container-body tbody.fixed tr[data-row=${row}]`, this.#owner.body).remove();
|
|
21519
21519
|
|
|
21520
|
-
this.#records[index].__ng._[
|
|
21520
|
+
this.#records[index].__ng._[ninegrid.ROW.PIN] = false;
|
|
21521
21521
|
|
|
21522
21522
|
this.#records.splice(index, 1);
|
|
21523
21523
|
}
|
|
@@ -21553,8 +21553,8 @@ class ngRowState extends ngCellEx
|
|
|
21553
21553
|
connectedCallback() {
|
|
21554
21554
|
this.shadowRoot.innerHTML = `
|
|
21555
21555
|
<style>
|
|
21556
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21557
|
-
${
|
|
21556
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngRowState.css";
|
|
21557
|
+
${ninegrid.getCustomPath(this,"ngRowState.css")}
|
|
21558
21558
|
</style>
|
|
21559
21559
|
`;
|
|
21560
21560
|
|
|
@@ -21568,14 +21568,14 @@ class ngRowState extends ngCellEx
|
|
|
21568
21568
|
//var row = parseInt(this.cell.dataset.row);
|
|
21569
21569
|
|
|
21570
21570
|
switch (this.data.__ng.rowState) {
|
|
21571
|
-
case
|
|
21572
|
-
|
|
21571
|
+
case ninegrid.ROW_STATE.INSERT:
|
|
21572
|
+
ninegrid.j.querySelectorAll(this).addClass('added').removeClass('updated');
|
|
21573
21573
|
break;
|
|
21574
|
-
case
|
|
21575
|
-
|
|
21574
|
+
case ninegrid.ROW_STATE.UPDATE:
|
|
21575
|
+
ninegrid.j.querySelectorAll(this).addClass('updated');
|
|
21576
21576
|
break;
|
|
21577
21577
|
default:
|
|
21578
|
-
|
|
21578
|
+
ninegrid.j.querySelectorAll(this).removeClass('added').removeClass('updated');
|
|
21579
21579
|
break;
|
|
21580
21580
|
}
|
|
21581
21581
|
|
|
@@ -21607,8 +21607,8 @@ class ngVScrollBar extends HTMLElement
|
|
|
21607
21607
|
|
|
21608
21608
|
this.shadowRoot.innerHTML = `
|
|
21609
21609
|
<style>
|
|
21610
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21611
|
-
${
|
|
21610
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngVScrollBar.css";
|
|
21611
|
+
${ninegrid.getCustomPath(this,"ngVScrollBar.css")}
|
|
21612
21612
|
</style>
|
|
21613
21613
|
|
|
21614
21614
|
<button class='ng-scroll-top' disabled><div class='ng-scroll-icon'></div></button>
|
|
@@ -21933,7 +21933,7 @@ class ngVScrollBar extends HTMLElement
|
|
|
21933
21933
|
e.preventDefault();
|
|
21934
21934
|
|
|
21935
21935
|
if (this.#firstThumbMove) {
|
|
21936
|
-
|
|
21936
|
+
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");
|
|
21937
21937
|
this.#firstThumbMove = false;
|
|
21938
21938
|
}
|
|
21939
21939
|
|
|
@@ -21977,8 +21977,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
21977
21977
|
|
|
21978
21978
|
this.shadowRoot.innerHTML = `
|
|
21979
21979
|
<style>
|
|
21980
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
21981
|
-
${
|
|
21980
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngHScrollBar.css";
|
|
21981
|
+
${ninegrid.getCustomPath(this,"ngHScrollBar.css")}
|
|
21982
21982
|
</style>
|
|
21983
21983
|
|
|
21984
21984
|
<button class='ng-scroll-left' disabled><div class='ng-scroll-icon'></div></button>
|
|
@@ -22026,8 +22026,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
22026
22026
|
thumb.css({left : l});
|
|
22027
22027
|
|
|
22028
22028
|
// enable
|
|
22029
|
-
|
|
22030
|
-
|
|
22029
|
+
ninegrid.j.querySelectorAll(".ng-scroll-left", this.shadowRoot).attr("disabled", l == 0 ? true : false);
|
|
22030
|
+
ninegrid.j.querySelectorAll(".ng-scroll-right", this.shadowRoot).attr("disabled", (l == track.width() - thumb.width()) ? true : false);
|
|
22031
22031
|
|
|
22032
22032
|
// edge show
|
|
22033
22033
|
var vbar = this.#owner.body.querySelector("ng-vscrollbar");
|
|
@@ -22091,8 +22091,8 @@ class ngHScrollBar extends HTMLElement
|
|
|
22091
22091
|
|
|
22092
22092
|
thumb.css({left : l});
|
|
22093
22093
|
|
|
22094
|
-
|
|
22095
|
-
|
|
22094
|
+
ninegrid.j.querySelectorAll(".ng-scroll-left", this.shadowRoot).attr("disabled", l == 0 ? true : false);
|
|
22095
|
+
ninegrid.j.querySelectorAll(".ng-scroll-right", this.shadowRoot).attr("disabled", (l == track.width() - thumb.width()) ? true : false);
|
|
22096
22096
|
}
|
|
22097
22097
|
|
|
22098
22098
|
#init = () => {
|
|
@@ -22318,7 +22318,7 @@ class ngSorting
|
|
|
22318
22318
|
* 정렬상태 초기화
|
|
22319
22319
|
*/
|
|
22320
22320
|
#restore = () => {
|
|
22321
|
-
this.#owner.data.sort((a,b) => { return a.__ng._[
|
|
22321
|
+
this.#owner.data.sort((a,b) => { return a.__ng._[ninegrid.ROW.ORIGIN_ORDER] - b.__ng._[ninegrid.ROW.ORIGIN_ORDER]; });
|
|
22322
22322
|
}
|
|
22323
22323
|
|
|
22324
22324
|
#onClick = (e) => {
|
|
@@ -22333,11 +22333,11 @@ class ngSorting
|
|
|
22333
22333
|
|
|
22334
22334
|
switch (e.detail) {
|
|
22335
22335
|
case 1:
|
|
22336
|
-
|
|
22336
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22337
22337
|
|
|
22338
22338
|
setTimeout(() => {
|
|
22339
22339
|
this.#sort(e);
|
|
22340
|
-
|
|
22340
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22341
22341
|
}); // should match OS multi-click speed
|
|
22342
22342
|
break;
|
|
22343
22343
|
case 2:
|
|
@@ -22374,36 +22374,36 @@ class ngSorting
|
|
|
22374
22374
|
if (!e.ctrlKey && !e.shiftKey) {
|
|
22375
22375
|
//remove all class
|
|
22376
22376
|
//$("thead th,thead td", this.#owner.body).not(`[data-col="${col}"]`).removeClass("asc").removeClass("desc");
|
|
22377
|
-
|
|
22377
|
+
ninegrid.j.querySelectorAll(`thead th:not([data-col="${col}"],thead td:not([data-col="${col}"])`, this.#owner.body).removeClass("asc").removeClass("desc");
|
|
22378
22378
|
|
|
22379
22379
|
this.#columns.splice(0, this.#columns.length);
|
|
22380
22380
|
}
|
|
22381
22381
|
|
|
22382
|
-
|
|
22382
|
+
ninegrid.removeIf(this.#columns, m => { return m.colnm == colnm; });
|
|
22383
22383
|
|
|
22384
|
-
if (!
|
|
22385
|
-
|
|
22384
|
+
if (!ninegrid.j.querySelectorAll(td).hasClass("asc") && !ninegrid.j.querySelectorAll(td).hasClass("desc")) {
|
|
22385
|
+
ninegrid.j.querySelectorAll(td).removeClass("desc").addClass("asc");
|
|
22386
22386
|
|
|
22387
22387
|
this.#columns.push({"colnm": colnm, "asc": true, "expr-func": exprFunc, });
|
|
22388
22388
|
}
|
|
22389
|
-
else if (
|
|
22390
|
-
|
|
22389
|
+
else if (ninegrid.j.querySelectorAll(td).hasClass("asc")) {
|
|
22390
|
+
ninegrid.j.querySelectorAll(td).removeClass("asc").addClass("desc");
|
|
22391
22391
|
this.#columns.push({"colnm": colnm, "asc": false, "expr-func": exprFunc, });
|
|
22392
22392
|
}
|
|
22393
22393
|
else {
|
|
22394
|
-
|
|
22394
|
+
ninegrid.j.querySelectorAll(td).removeClass("asc").removeClass("desc");
|
|
22395
22395
|
}
|
|
22396
22396
|
|
|
22397
22397
|
//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"));
|
|
22398
22398
|
|
|
22399
|
-
if (!
|
|
22399
|
+
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")) {
|
|
22400
22400
|
this.#restore();
|
|
22401
22401
|
}
|
|
22402
22402
|
else {
|
|
22403
22403
|
this.#owner.data.sort((a,b) => { return this.#compareFn(a,b); });
|
|
22404
22404
|
}
|
|
22405
22405
|
|
|
22406
|
-
(this.#owner.paging.type ==
|
|
22406
|
+
(this.#owner.paging.type == ninegrid.PAGINGTYPE.CLIENT) ? this.#owner.paging.movePage(1) : this.#owner.view.redraw();
|
|
22407
22407
|
}
|
|
22408
22408
|
|
|
22409
22409
|
#compareFn = (a, b) => {
|
|
@@ -22415,10 +22415,10 @@ class ngSorting
|
|
|
22415
22415
|
const aa = this.#owner.data.conv(a);
|
|
22416
22416
|
const bb = this.#owner.data.conv(b);
|
|
22417
22417
|
|
|
22418
|
-
if (column["expr-func"](aa,aa.__ng._[
|
|
22418
|
+
if (column["expr-func"](aa,aa.__ng._[ninegrid.ROW.INDEX]) > column["expr-func"](bb,bb.__ng._[ninegrid.ROW.INDEX])) {
|
|
22419
22419
|
return column.asc ? 1 : -1;
|
|
22420
22420
|
}
|
|
22421
|
-
else if (column["expr-func"](aa,aa.__ng._[
|
|
22421
|
+
else if (column["expr-func"](aa,aa.__ng._[ninegrid.ROW.INDEX]) < column["expr-func"](bb,bb.__ng._[ninegrid.ROW.INDEX])) {
|
|
22422
22422
|
return column.asc ? -1 : 1;
|
|
22423
22423
|
}
|
|
22424
22424
|
}
|
|
@@ -22478,13 +22478,13 @@ class ngTableManager
|
|
|
22478
22478
|
const target = $(`.col-indicator[data-col=${col}]`, this.#owner.body);
|
|
22479
22479
|
|
|
22480
22480
|
if (target.closest(".ng-container-body").length > 0) {
|
|
22481
|
-
return
|
|
22481
|
+
return ninegrid.BAND.BODY;
|
|
22482
22482
|
}
|
|
22483
22483
|
else if (target.closest(".ng-container-left").length > 0) {
|
|
22484
|
-
return
|
|
22484
|
+
return ninegrid.BAND.LEFT;
|
|
22485
22485
|
}
|
|
22486
22486
|
else if (target.closest(".ng-container-right").length > 0) {
|
|
22487
|
-
return
|
|
22487
|
+
return ninegrid.BAND.RIGHT;
|
|
22488
22488
|
}
|
|
22489
22489
|
};
|
|
22490
22490
|
|
|
@@ -22496,7 +22496,7 @@ class ngTableManager
|
|
|
22496
22496
|
|
|
22497
22497
|
this.#owner.body.querySelector(`colgroup [data-col="${col}"]:not(.cdummy)`).setAttribute("width", w);
|
|
22498
22498
|
|
|
22499
|
-
if (band !=
|
|
22499
|
+
if (band != ninegrid.BAND.BODY) {
|
|
22500
22500
|
var w = 0;
|
|
22501
22501
|
$(`.ng-container-${band} col`, this.#owner.body).each((i,el) => { w += parseInt(el.getAttribute("width")); });
|
|
22502
22502
|
$(`.ng-container-${band}`, this.#owner.body).css({ "width": w, "min-width" : w, });
|
|
@@ -22506,7 +22506,7 @@ class ngTableManager
|
|
|
22506
22506
|
};
|
|
22507
22507
|
|
|
22508
22508
|
this.getExprFunc = (col, colnm) => {
|
|
22509
|
-
const cell =
|
|
22509
|
+
const cell = ninegrid.j.querySelectorAll(colnm ? `[data-col="${col}"][data-bind="${colnm}"]` : `[data-col="${col}"]`, this.#owner.tmpl).elem();
|
|
22510
22510
|
const expr = cell ? cell.getAttribute("data-expr") : null;
|
|
22511
22511
|
|
|
22512
22512
|
return (expr) ? this.#owner.exprFunction(expr) : null;
|
|
@@ -22519,14 +22519,14 @@ class ngTableManager
|
|
|
22519
22519
|
if (async == undefined) async = true;
|
|
22520
22520
|
|
|
22521
22521
|
if (async) {
|
|
22522
|
-
|
|
22522
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22523
22523
|
|
|
22524
22524
|
setTimeout(() => {
|
|
22525
22525
|
var w = this.#getColumnTextWidth(col);
|
|
22526
22526
|
//if (w != 0) this.setColumnWidth(col, minWidth ? Math.max(w, minWidth) : w);
|
|
22527
22527
|
this.setColumnWidth(col, minWidth ? Math.max(w, minWidth) : w);
|
|
22528
22528
|
|
|
22529
|
-
|
|
22529
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22530
22530
|
});
|
|
22531
22531
|
}
|
|
22532
22532
|
else {
|
|
@@ -22555,7 +22555,7 @@ class ngTableManager
|
|
|
22555
22555
|
const th = document.createElement('th');
|
|
22556
22556
|
th.setAttribute("scope", "col");
|
|
22557
22557
|
|
|
22558
|
-
|
|
22558
|
+
ninegrid.j.querySelectorAll(th).addClass("col-indicator");
|
|
22559
22559
|
|
|
22560
22560
|
$(th).html('<div></div>').insertBefore(toTH).css({ "width" : w, "min-width" : w, });
|
|
22561
22561
|
});
|
|
@@ -22750,7 +22750,7 @@ class ngTableManager
|
|
|
22750
22750
|
|
|
22751
22751
|
case "NG-RADIO":
|
|
22752
22752
|
o.value = rowData[colnm];
|
|
22753
|
-
if (o.value != null && o.value != "" && !
|
|
22753
|
+
if (o.value != null && o.value != "" && !ninegrid.isNull(comp.dataSource)) {
|
|
22754
22754
|
o.code = comp.dataSource.map(m => { return m[comp.getAttribute("key") || "key"]; }).includes(o.value) ? 0 : -1;
|
|
22755
22755
|
}
|
|
22756
22756
|
break;
|
|
@@ -22793,7 +22793,7 @@ class ngTableManager
|
|
|
22793
22793
|
}
|
|
22794
22794
|
|
|
22795
22795
|
if (matrixRow == null) {
|
|
22796
|
-
|
|
22796
|
+
ninegrid.j.querySelectorAll(this.#owner).addClass("loading");
|
|
22797
22797
|
|
|
22798
22798
|
setTimeout(() => {
|
|
22799
22799
|
for (var i = 0; i < this.#owner.data.count(); i++) {
|
|
@@ -22812,7 +22812,7 @@ class ngTableManager
|
|
|
22812
22812
|
|
|
22813
22813
|
this.#owner.view.redraw();
|
|
22814
22814
|
|
|
22815
|
-
|
|
22815
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
22816
22816
|
});
|
|
22817
22817
|
}
|
|
22818
22818
|
else {
|
|
@@ -22843,7 +22843,7 @@ class ngTableManager
|
|
|
22843
22843
|
const v = String(rowData.v[COL_IDX]);
|
|
22844
22844
|
|
|
22845
22845
|
if (bind && v.includes("\n")) {
|
|
22846
|
-
h = Math.max(h,
|
|
22846
|
+
h = Math.max(h, ninegrid.measureTextSize(v, fonts[i]).height);
|
|
22847
22847
|
}
|
|
22848
22848
|
});
|
|
22849
22849
|
|
|
@@ -22876,7 +22876,7 @@ class ngTableManager
|
|
|
22876
22876
|
if (!v) continue;
|
|
22877
22877
|
|
|
22878
22878
|
|
|
22879
|
-
w = Math.max(w,
|
|
22879
|
+
w = Math.max(w, ninegrid.measureTextSize(v, font).width);// + (comp.length > 0 ? 40 : 0);
|
|
22880
22880
|
}
|
|
22881
22881
|
});
|
|
22882
22882
|
|
|
@@ -22930,7 +22930,7 @@ class ngTableWrapper
|
|
|
22930
22930
|
const th = document.createElement('th');
|
|
22931
22931
|
th.setAttribute("scope", "col");
|
|
22932
22932
|
|
|
22933
|
-
|
|
22933
|
+
ninegrid.j.querySelectorAll(th).addClass("col-indicator");
|
|
22934
22934
|
|
|
22935
22935
|
$(th).html('<div></div>').insertBefore(toTH).css({ "width" : w, "min-width" : w, });
|
|
22936
22936
|
});
|
|
@@ -23173,8 +23173,8 @@ class ngTextArea extends ngEditableEx
|
|
|
23173
23173
|
connectedCallback() {
|
|
23174
23174
|
this.shadowRoot.innerHTML = `
|
|
23175
23175
|
<style>
|
|
23176
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
23177
|
-
${
|
|
23176
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngTextArea.css";
|
|
23177
|
+
${ninegrid.getCustomPath(this,"ngTextArea.css")}
|
|
23178
23178
|
</style>
|
|
23179
23179
|
|
|
23180
23180
|
<textarea ondragstart="return false"></textarea>
|
|
@@ -23311,8 +23311,8 @@ class ngTreeItem extends ngCellEx
|
|
|
23311
23311
|
|
|
23312
23312
|
this.shadowRoot.innerHTML = `
|
|
23313
23313
|
<style>
|
|
23314
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
23315
|
-
${
|
|
23314
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ngTreeItem.css";
|
|
23315
|
+
${ninegrid.getCustomPath(this,"ngTreeItem.css")}
|
|
23316
23316
|
</style>
|
|
23317
23317
|
|
|
23318
23318
|
<div class="ng-pad"></div>
|
|
@@ -23358,8 +23358,8 @@ class ngTreeItem extends ngCellEx
|
|
|
23358
23358
|
#onClick = e => {
|
|
23359
23359
|
|
|
23360
23360
|
this.#toggle();
|
|
23361
|
-
|
|
23362
|
-
|
|
23361
|
+
ninegrid.j.querySelectorAll(e.target).removeClass("ng-expand-on").removeClass("ng-expand-off");
|
|
23362
|
+
ninegrid.j.querySelectorAll(e.target).addClass(this.#isExpand ? "ng-expand-on" : "ng-expand-off");
|
|
23363
23363
|
};
|
|
23364
23364
|
|
|
23365
23365
|
get prevLevel() {
|
|
@@ -23374,7 +23374,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23374
23374
|
else {
|
|
23375
23375
|
for (var i = parseInt(this.cell.dataset.row) - 1; i >= 0; i--) {
|
|
23376
23376
|
var data = this.owner.data.get(i);
|
|
23377
|
-
if (!data.__ng._[
|
|
23377
|
+
if (!data.__ng._[ninegrid.ROW.EXPAND]) return data[this.cell.dataset.bind];
|
|
23378
23378
|
}
|
|
23379
23379
|
}
|
|
23380
23380
|
|
|
@@ -23383,7 +23383,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23383
23383
|
|
|
23384
23384
|
|
|
23385
23385
|
get #isExpand() {
|
|
23386
|
-
return this.data.__ng._[
|
|
23386
|
+
return this.data.__ng._[ninegrid.ROW.EXPAND];
|
|
23387
23387
|
};
|
|
23388
23388
|
|
|
23389
23389
|
#resetTree = () => {
|
|
@@ -23403,11 +23403,11 @@ class ngTreeItem extends ngCellEx
|
|
|
23403
23403
|
|
|
23404
23404
|
|
|
23405
23405
|
|
|
23406
|
-
|
|
23406
|
+
ninegrid.j.querySelectorAll(".ng-icon", this.shadowRoot)
|
|
23407
23407
|
.removeClass("ng-expand-on").removeClass("ng-expand-off").removeClass("ng-node").removeClass("ng-icon-up").removeClass("ng-icon-down").removeClass("ng-icon-none")
|
|
23408
23408
|
.addClass(hasChildren ? (this.#isExpand ? "ng-expand-on" : "ng-expand-off") : "ng-node");
|
|
23409
23409
|
|
|
23410
|
-
const icon =
|
|
23410
|
+
const icon = ninegrid.j.querySelectorAll(".ng-icon", this.shadowRoot);
|
|
23411
23411
|
if (row == 0) {
|
|
23412
23412
|
if (isLast) {
|
|
23413
23413
|
icon.addClass("ng-icon-none");
|
|
@@ -23437,12 +23437,12 @@ class ngTreeItem extends ngCellEx
|
|
|
23437
23437
|
|
|
23438
23438
|
if (level < nextLevel) {
|
|
23439
23439
|
if (this.#isExpand) {
|
|
23440
|
-
|
|
23440
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-down");
|
|
23441
23441
|
} else {
|
|
23442
|
-
|
|
23442
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-none");
|
|
23443
23443
|
}
|
|
23444
23444
|
} else {
|
|
23445
|
-
|
|
23445
|
+
ninegrid.j.querySelectorAll(".ng-line", this.shadowRoot).addClass("ng-line-none");
|
|
23446
23446
|
}
|
|
23447
23447
|
|
|
23448
23448
|
};
|
|
@@ -23452,7 +23452,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23452
23452
|
};
|
|
23453
23453
|
#expand = (b) => {
|
|
23454
23454
|
|
|
23455
|
-
this.data.__ng._[
|
|
23455
|
+
this.data.__ng._[ninegrid.ROW.EXPAND] = b;
|
|
23456
23456
|
|
|
23457
23457
|
this.#setChildVisible(b);
|
|
23458
23458
|
|
|
@@ -23464,20 +23464,20 @@ class ngTreeItem extends ngCellEx
|
|
|
23464
23464
|
|
|
23465
23465
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23466
23466
|
|
|
23467
|
-
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[
|
|
23467
|
+
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23468
23468
|
if (idx < 0) return;
|
|
23469
23469
|
|
|
23470
23470
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
23471
23471
|
var lvl = this.value;
|
|
23472
23472
|
|
|
23473
23473
|
var prev = this.owner.data.getRow(this.row);
|
|
23474
|
-
var parentExpand = prev.__ng._[
|
|
23474
|
+
var parentExpand = prev.__ng._[ninegrid.ROW.EXPAND];
|
|
23475
23475
|
for (var i = idx + 1; i < arrNF.length; i++) {
|
|
23476
23476
|
var lvl2 = arrNF[i].v[COL_IDX];
|
|
23477
23477
|
|
|
23478
23478
|
|
|
23479
23479
|
if (lvl2 > prev.v[COL_IDX]) {
|
|
23480
|
-
parentExpand = prev.__ng._[
|
|
23480
|
+
parentExpand = prev.__ng._[ninegrid.ROW.EXPAND];
|
|
23481
23481
|
}
|
|
23482
23482
|
else if (lvl2 < prev.v[COL_IDX]) {
|
|
23483
23483
|
parentExpand = null;
|
|
@@ -23486,21 +23486,21 @@ class ngTreeItem extends ngCellEx
|
|
|
23486
23486
|
if (lvl2 <= lvl) break;
|
|
23487
23487
|
|
|
23488
23488
|
if (parentExpand == null) {
|
|
23489
|
-
arrNF[i].__ng._[
|
|
23489
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = !b;
|
|
23490
23490
|
}
|
|
23491
23491
|
else {
|
|
23492
23492
|
|
|
23493
23493
|
if (parentExpand && b) {
|
|
23494
|
-
arrNF[i].__ng._[
|
|
23494
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = false;//!b;
|
|
23495
23495
|
}
|
|
23496
23496
|
else if (parentExpand && !b) {
|
|
23497
|
-
arrNF[i].__ng._[
|
|
23497
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23498
23498
|
}
|
|
23499
23499
|
else if (!parentExpand && b) {
|
|
23500
|
-
arrNF[i].__ng._[
|
|
23500
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23501
23501
|
}
|
|
23502
23502
|
else if (!parentExpand && !b) {
|
|
23503
|
-
arrNF[i].__ng._[
|
|
23503
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = true;//!b;
|
|
23504
23504
|
}
|
|
23505
23505
|
}
|
|
23506
23506
|
|
|
@@ -23512,7 +23512,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23512
23512
|
|
|
23513
23513
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23514
23514
|
|
|
23515
|
-
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[
|
|
23515
|
+
const idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23516
23516
|
if (idx < 0) return;
|
|
23517
23517
|
|
|
23518
23518
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
@@ -23523,7 +23523,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23523
23523
|
|
|
23524
23524
|
if (lvl2 <= lvl) break;
|
|
23525
23525
|
|
|
23526
|
-
arrNF[i].__ng._[
|
|
23526
|
+
arrNF[i].__ng._[ninegrid.ROW.COLLAPSE] = !b;
|
|
23527
23527
|
}
|
|
23528
23528
|
};
|
|
23529
23529
|
|
|
@@ -23546,7 +23546,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23546
23546
|
|
|
23547
23547
|
#isLast = (row) => {
|
|
23548
23548
|
|
|
23549
|
-
if (
|
|
23549
|
+
if (ninegrid.isNull(row) || row < 0) throw `invalid row [${row}]`;
|
|
23550
23550
|
|
|
23551
23551
|
if (row + 1 >= this.owner.data.count()) return true;
|
|
23552
23552
|
|
|
@@ -23574,9 +23574,9 @@ class ngTreeItem extends ngCellEx
|
|
|
23574
23574
|
var arr = [];
|
|
23575
23575
|
var arrNF = this.owner.data.getValidDataNF();
|
|
23576
23576
|
|
|
23577
|
-
var idx = this.owner.data.findIndexNF_1(this.data.__ng._[
|
|
23577
|
+
var idx = this.owner.data.findIndexNF_1(this.data.__ng._[ninegrid.ROW.INDEX]);
|
|
23578
23578
|
|
|
23579
|
-
if (idx < 0) throw `invalid row index [${this.data.__ng._[
|
|
23579
|
+
if (idx < 0) throw `invalid row index [${this.data.__ng._[ninegrid.ROW.INDEX]}]`;
|
|
23580
23580
|
|
|
23581
23581
|
var COL_IDX = this.owner.fields.indexOf(this.cell.dataset.bind);
|
|
23582
23582
|
const lvl = arrNF[idx].v[COL_IDX];
|
|
@@ -23599,7 +23599,7 @@ class ngTreeItem extends ngCellEx
|
|
|
23599
23599
|
|
|
23600
23600
|
#getLevel = (row) => {
|
|
23601
23601
|
|
|
23602
|
-
if (
|
|
23602
|
+
if (ninegrid.isNull(row) || row < 0 || this.owner.data.count() >= 0) return -1;//throw `invalid row [${row}]`;
|
|
23603
23603
|
|
|
23604
23604
|
return this.owner.data.get(row, this.cell.dataset.bind);
|
|
23605
23605
|
};
|
|
@@ -23718,8 +23718,8 @@ class ngView
|
|
|
23718
23718
|
|
|
23719
23719
|
const displayRowCount = parseInt(this.#owner.getAttribute("display-row-count"));
|
|
23720
23720
|
|
|
23721
|
-
if (this.#owner.closest("dialog") &&
|
|
23722
|
-
if ([
|
|
23721
|
+
if (this.#owner.closest("dialog") && ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) return 1;
|
|
23722
|
+
if ([ninegrid.PAGINGTYPE.CLIENT,ninegrid.PAGINGTYPE.SERVER].includes(this.#owner.paging.type)) return this.#owner.paging.linesPerPage;
|
|
23723
23723
|
if (!isNaN(displayRowCount)) {
|
|
23724
23724
|
|
|
23725
23725
|
/**
|
|
@@ -23859,7 +23859,7 @@ class ngView
|
|
|
23859
23859
|
//this.isLastPage = h > 0 ? true : false;
|
|
23860
23860
|
|
|
23861
23861
|
|
|
23862
|
-
if (this.#owner.closest("dialog") &&
|
|
23862
|
+
if (this.#owner.closest("dialog") && ninegrid.j.querySelectorAll(this.#owner).hasClass("simple")) {
|
|
23863
23863
|
$("tr.nodata", this.#owner.body).height(0);
|
|
23864
23864
|
|
|
23865
23865
|
var h = 47;//this.#getTrHeight();
|
|
@@ -23963,9 +23963,9 @@ class ngView
|
|
|
23963
23963
|
|
|
23964
23964
|
this.#owner.body.querySelector("ng-vscrollbar").refresh();
|
|
23965
23965
|
|
|
23966
|
-
|
|
23967
|
-
|
|
23968
|
-
|
|
23966
|
+
ninegrid.j.querySelectorAll(".ng-table tbody tr", this.#owner.body).removeClass("hover");
|
|
23967
|
+
ninegrid.j.querySelectorAll(this.#owner).removeClass("loading");
|
|
23968
|
+
ninegrid.j.querySelectorAll("ng-filter-panel").removeClass("loading");
|
|
23969
23969
|
|
|
23970
23970
|
/**
|
|
23971
23971
|
this.#owner.body.querySelector(".ng-container-left").style.position = "sticky";
|
|
@@ -24137,7 +24137,7 @@ class ngView
|
|
|
24137
24137
|
selectRow = (oRow1, oRow2) => {
|
|
24138
24138
|
|
|
24139
24139
|
const row1 = this.#getRowIndex(oRow1);
|
|
24140
|
-
const row2 =
|
|
24140
|
+
const row2 = ninegrid.isNull(oRow2) ? row1 : this.#getRowIndex(oRow2);
|
|
24141
24141
|
const matrixRow1= parseInt(row1 * this.#owner.template.length);
|
|
24142
24142
|
const matrixRow2= parseInt(row2 * this.#owner.template.length) + this.#owner.template.length - 1;
|
|
24143
24143
|
|
|
@@ -24148,7 +24148,7 @@ class ngView
|
|
|
24148
24148
|
|
|
24149
24149
|
selectCol = (oCol1, oCol2) => {
|
|
24150
24150
|
const col1 = this.#getColIndex(oCol1);
|
|
24151
|
-
const col2 =
|
|
24151
|
+
const col2 = ninegrid.isNull(oCol2) ? col1 : this.#getColIndex(oCol2);
|
|
24152
24152
|
const matrixRow1= 0;
|
|
24153
24153
|
const matrixRow2= parseInt(this.#owner.data.count() * this.#owner.template.length - 1);
|
|
24154
24154
|
|
|
@@ -24159,7 +24159,7 @@ class ngView
|
|
|
24159
24159
|
|
|
24160
24160
|
const row = this.#getRowIndex(oRow);
|
|
24161
24161
|
const col = this.#getColIndex(oCol);
|
|
24162
|
-
const matrixRow = parseInt(row * this.#owner.template.length) +
|
|
24162
|
+
const matrixRow = parseInt(row * this.#owner.template.length) + ninegrid.nvl(subrow, 0);
|
|
24163
24163
|
|
|
24164
24164
|
this.#owner.row.at = row;
|
|
24165
24165
|
|
|
@@ -24250,7 +24250,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24250
24250
|
this.bindRows = [];
|
|
24251
24251
|
this.bindMatrixRows = [];
|
|
24252
24252
|
|
|
24253
|
-
|
|
24253
|
+
ninegrid.j.querySelectorAll(".ng-container tbody.bindable tr:not(.nodata)", this.body).elements.forEach(tr => {
|
|
24254
24254
|
this.bindRows .push(parseInt(tr.dataset.row));
|
|
24255
24255
|
this.bindMatrixRows .push(parseInt(tr.dataset.matrixRow));
|
|
24256
24256
|
});
|
|
@@ -24347,8 +24347,8 @@ class ninegridContainer extends HTMLElement
|
|
|
24347
24347
|
break;
|
|
24348
24348
|
|
|
24349
24349
|
case "col-indicator-type":
|
|
24350
|
-
|
|
24351
|
-
.removeClass(
|
|
24350
|
+
ninegrid.j.querySelectorAll(".ng-table thead .col-indicator-rowgroup", this.body)
|
|
24351
|
+
.removeClass(ninegrid.COLINDICATORTYPE.EXPAND).removeClass(ninegrid.COLINDICATORTYPE.COLLAPSE)
|
|
24352
24352
|
.addClass(newValue);
|
|
24353
24353
|
this.#resetHeight();
|
|
24354
24354
|
break;
|
|
@@ -24358,7 +24358,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24358
24358
|
this.#resetHeight();
|
|
24359
24359
|
break;
|
|
24360
24360
|
case "enable-fixed-col":
|
|
24361
|
-
(newValue == "true") ?
|
|
24361
|
+
(newValue == "true") ? ninegrid.j.querySelectorAll(this).addClass(name) : ninegrid.j.querySelectorAll(this).removeClass(name);
|
|
24362
24362
|
break;
|
|
24363
24363
|
|
|
24364
24364
|
case "select-type":
|
|
@@ -24373,20 +24373,20 @@ class ninegridContainer extends HTMLElement
|
|
|
24373
24373
|
|
|
24374
24374
|
case "show-menu-icon":
|
|
24375
24375
|
case "show-title-bar":
|
|
24376
|
-
const showBar =
|
|
24377
|
-
const showIcon =
|
|
24376
|
+
const showBar = ninegrid.j.querySelectorAll(this).attr("show-title-bar") == "true";
|
|
24377
|
+
const showIcon = ninegrid.j.querySelectorAll(this).attr("show-menu-icon") == "true";
|
|
24378
24378
|
const ngHead = this.shadowRoot.querySelector("ng-head");
|
|
24379
24379
|
if (!ngHead) break;
|
|
24380
24380
|
const ngMenu = ngHead.shadowRoot.querySelector("ng-menu");
|
|
24381
24381
|
|
|
24382
24382
|
if (showBar) {
|
|
24383
|
-
|
|
24383
|
+
ninegrid.j.querySelectorAll(ngHead).addClass('expand');
|
|
24384
24384
|
$(ngHead.shadowRoot).children().not("style").show();
|
|
24385
24385
|
|
|
24386
|
-
if (!showIcon)
|
|
24386
|
+
if (!showIcon) ninegrid.j.querySelectorAll(ngMenu).hide();
|
|
24387
24387
|
}
|
|
24388
24388
|
else {
|
|
24389
|
-
(showIcon) ?
|
|
24389
|
+
(showIcon) ? ninegrid.j.querySelectorAll(ngHead).removeClass('expand').show() : ninegrid.j.querySelectorAll(ngHead).hide();
|
|
24390
24390
|
}
|
|
24391
24391
|
|
|
24392
24392
|
this.#resetHeight();
|
|
@@ -24397,7 +24397,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24397
24397
|
this.#resetHeight();
|
|
24398
24398
|
break;
|
|
24399
24399
|
case "show-status-bar":
|
|
24400
|
-
(newValue == "true") ?
|
|
24400
|
+
(newValue == "true") ? ninegrid.j.querySelectorAll("ng-foot", this.shadowRoot).addClass('expand') : ninegrid.j.querySelectorAll("ng-foot", this.shadowRoot).removeClass('expand');
|
|
24401
24401
|
this.#resetHeight();
|
|
24402
24402
|
break;
|
|
24403
24403
|
}
|
|
@@ -24423,7 +24423,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24423
24423
|
|
|
24424
24424
|
var arr = [];
|
|
24425
24425
|
$(".ng-container-body tbody.fixed tr", this.body).not(".nodata").each((i, tr) => {
|
|
24426
|
-
arr.push({ INDEX: tr.data.__ng._[
|
|
24426
|
+
arr.push({ INDEX: tr.data.__ng._[ninegrid.ROW.INDEX], ROW: tr.dataset.row } );
|
|
24427
24427
|
});
|
|
24428
24428
|
|
|
24429
24429
|
arr.forEach(o => {
|
|
@@ -24556,7 +24556,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24556
24556
|
this.elements.bodyLeft.html(table.clone());
|
|
24557
24557
|
$("col,th,td", this.elements.bodyLeft).not("[fixed=left]").remove();
|
|
24558
24558
|
var w = 0;//this.elements.bodyLeft.find("th,td").length == 0 ? 0 : this.elements.bodyLeft.find("table > tbody.bindable").width();
|
|
24559
|
-
$("col", this.elements.bodyLeft).each((i,el) => { w += parseInt(
|
|
24559
|
+
$("col", this.elements.bodyLeft).each((i,el) => { w += parseInt(ninegrid.j.querySelectorAll(el).attr("width")); });
|
|
24560
24560
|
this.elements.bodyLeft.css({
|
|
24561
24561
|
"width" : w,//this.elements.bodyLeft.find("table > tbody.bindable").width(),
|
|
24562
24562
|
"min-width" : w,//this.elements.bodyLeft.find("table > tbody.bindable").width(),
|
|
@@ -24565,7 +24565,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24565
24565
|
this.elements.bodyRight.html(table.clone());
|
|
24566
24566
|
$("col,th,td", this.elements.bodyRight).not("[fixed=right]").remove();
|
|
24567
24567
|
w = 0;//this.elements.bodyLeft.find("th,td").length == 0 ? 0 : this.elements.bodyLeft.find("table > tbody.bindable").width();
|
|
24568
|
-
$("col", this.elements.bodyRight).each((i,el) => { w += parseInt(
|
|
24568
|
+
$("col", this.elements.bodyRight).each((i,el) => { w += parseInt(ninegrid.j.querySelectorAll(el).attr("width")); });
|
|
24569
24569
|
|
|
24570
24570
|
this.elements.bodyRight.css({
|
|
24571
24571
|
"width" : w,//this.elements.bodyRight.find("table > tbody").width(),
|
|
@@ -24646,7 +24646,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24646
24646
|
|
|
24647
24647
|
this.originFormat = this.outerHTML;
|
|
24648
24648
|
|
|
24649
|
-
this.uuid =
|
|
24649
|
+
this.uuid = ninegrid.randomUUID(); //crypto.randomUUID();
|
|
24650
24650
|
if (!this.id) this.id = this.uuid;
|
|
24651
24651
|
|
|
24652
24652
|
|
|
@@ -24727,15 +24727,15 @@ class ninegridContainer extends HTMLElement
|
|
|
24727
24727
|
|
|
24728
24728
|
this.#layouts.push(tbl);
|
|
24729
24729
|
|
|
24730
|
-
if (!
|
|
24730
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) {
|
|
24731
24731
|
this.#createDummy(tbl);
|
|
24732
24732
|
}
|
|
24733
24733
|
});
|
|
24734
24734
|
|
|
24735
24735
|
const tmpl = `
|
|
24736
24736
|
<style>
|
|
24737
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
24738
|
-
${
|
|
24737
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/ninegrid.css";
|
|
24738
|
+
${ninegrid.getCustomPath(this,"ninegrid.css")}
|
|
24739
24739
|
</style>
|
|
24740
24740
|
|
|
24741
24741
|
<ng-head></ng-head>
|
|
@@ -24768,12 +24768,12 @@ class ninegridContainer extends HTMLElement
|
|
|
24768
24768
|
const value = combo.getAttribute("codename") || "codename";
|
|
24769
24769
|
const multiSeparator = combo.getAttribute("multi-separator") || ",";
|
|
24770
24770
|
|
|
24771
|
-
return
|
|
24771
|
+
return ninegrid.binarySearchValue(combo.dataSource, code, data[cell.dataset.bind], value, multiSeparator)
|
|
24772
24772
|
};
|
|
24773
24773
|
//$("tbody", this.#layouts[0]).before($("tbody", this.#layouts[0]).clone().addClass("fixed")).addClass("bindable");
|
|
24774
24774
|
|
|
24775
24775
|
for (const layout of this.#layouts) {
|
|
24776
|
-
$(
|
|
24776
|
+
$(ninegrid.j.querySelectorAll("tbody", layout).addClass("bindable").elem()).before(`<tbody class="fixed"></tbody>`);
|
|
24777
24777
|
}
|
|
24778
24778
|
|
|
24779
24779
|
$(this.shadowRoot).append(tmpl);
|
|
@@ -24850,10 +24850,10 @@ class ninegridContainer extends HTMLElement
|
|
|
24850
24850
|
}
|
|
24851
24851
|
}
|
|
24852
24852
|
|
|
24853
|
-
if (!
|
|
24853
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) {
|
|
24854
24854
|
this.filtering = new ngFiltering(this);
|
|
24855
24855
|
}
|
|
24856
|
-
if (!
|
|
24856
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("combo") && !ninegrid.j.querySelectorAll(this).hasClass("filter")) {
|
|
24857
24857
|
$(this.shadowRoot).append($('<ng-combo-panel></ng-combo-panel').hide());
|
|
24858
24858
|
}
|
|
24859
24859
|
|
|
@@ -24863,7 +24863,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24863
24863
|
|
|
24864
24864
|
this.#colResizer = new ngColResizer(this);
|
|
24865
24865
|
this.#colMover = new ngColMover(this);
|
|
24866
|
-
if (!
|
|
24866
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("simple")) this.#rowMover = new ngRowMover(this);
|
|
24867
24867
|
|
|
24868
24868
|
|
|
24869
24869
|
this.#initOption();
|
|
@@ -24892,7 +24892,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24892
24892
|
|
|
24893
24893
|
|
|
24894
24894
|
/** main, detail */
|
|
24895
|
-
if (!
|
|
24895
|
+
if (!ninegrid.j.querySelectorAll(this).hasClass("filter") && !ninegrid.j.querySelectorAll(this).hasClass("combo")) {
|
|
24896
24896
|
|
|
24897
24897
|
/**
|
|
24898
24898
|
$(this).on("mousedown", e => {
|
|
@@ -24930,7 +24930,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24930
24930
|
} */
|
|
24931
24931
|
if (!this.classList.contains("simple")) {
|
|
24932
24932
|
setTimeout(() => {
|
|
24933
|
-
this.dispatchEvent(new CustomEvent(
|
|
24933
|
+
this.dispatchEvent(new CustomEvent(ninegrid.EVENT.LOAD, { bubbles: true, detail: {} }));
|
|
24934
24934
|
}, 100);
|
|
24935
24935
|
}
|
|
24936
24936
|
|
|
@@ -24938,7 +24938,7 @@ class ninegridContainer extends HTMLElement
|
|
|
24938
24938
|
if (head) {
|
|
24939
24939
|
head.shadowRoot.querySelectorAll("buttons button").forEach(el => {
|
|
24940
24940
|
el.addEventListener("click", e => {
|
|
24941
|
-
const ce = new CustomEvent(
|
|
24941
|
+
const ce = new CustomEvent(ninegrid.EVENT.BUTTON_CLICK, { bubbles: true, detail: { target: el, } });
|
|
24942
24942
|
//ce.target = e.target;
|
|
24943
24943
|
this.dispatchEvent(ce);
|
|
24944
24944
|
});
|
|
@@ -24967,29 +24967,29 @@ class ninegridContainer extends HTMLElement
|
|
|
24967
24967
|
|
|
24968
24968
|
#initOption = () => {
|
|
24969
24969
|
|
|
24970
|
-
this.lastRowHidden = isNaN(parseInt(
|
|
24970
|
+
this.lastRowHidden = isNaN(parseInt(ninegrid.j.querySelectorAll(this).attr("display-row-count")));
|
|
24971
24971
|
|
|
24972
24972
|
if (!this.paging) this.paging = {}; //row detail 팝청창 오픈시 오류
|
|
24973
24973
|
|
|
24974
|
-
|
|
24974
|
+
ninegrid.j.querySelectorAll(this).attr("col-indicator-type", ninegrid.j.querySelectorAll(this).attr("col-indicator-type") || ninegrid.COLINDICATORTYPE.COLLAPSE);
|
|
24975
24975
|
|
|
24976
|
-
|
|
24977
|
-
|
|
24978
|
-
|
|
24979
|
-
|
|
24976
|
+
ninegrid.j.querySelectorAll(this).attr("auto-fit-col", ninegrid.j.querySelectorAll(this).attr("auto-fit-col") || "false");
|
|
24977
|
+
ninegrid.j.querySelectorAll(this).attr("col-resizable", ninegrid.j.querySelectorAll(this).attr("col-resizable") || "true");
|
|
24978
|
+
ninegrid.j.querySelectorAll(this).attr("row-resizable", ninegrid.j.querySelectorAll(this).attr("row-resizable") || "false");
|
|
24979
|
+
ninegrid.j.querySelectorAll(this).attr("col-movable", ninegrid.j.querySelectorAll(this).attr("col-movable") || "false"); //web attribute
|
|
24980
24980
|
//ninegrid.j.querySelectorAll(this).attr("row-movable", ninegrid.j.querySelectorAll(this).attr("row-movable") || "false");
|
|
24981
|
-
|
|
24981
|
+
ninegrid.j.querySelectorAll(this).attr("enable-fixed-col", ninegrid.j.querySelectorAll(this).attr("enable-fixed-col") || "false");
|
|
24982
24982
|
|
|
24983
|
-
|
|
24984
|
-
|
|
24985
|
-
|
|
24983
|
+
ninegrid.j.querySelectorAll(this).attr("show-title-bar", ninegrid.j.querySelectorAll(this).attr("show-title-bar") || "false");
|
|
24984
|
+
ninegrid.j.querySelectorAll(this).attr("show-menu-icon", ninegrid.j.querySelectorAll(this).attr("show-menu-icon") || "false");
|
|
24985
|
+
ninegrid.j.querySelectorAll(this).attr("show-status-bar", ninegrid.j.querySelectorAll(this).attr("show-status-bar") || "false");
|
|
24986
24986
|
|
|
24987
|
-
|
|
24988
|
-
|
|
24987
|
+
ninegrid.j.querySelectorAll(this).attr("show-thead", ninegrid.j.querySelectorAll(this).attr("show-thead") || "true");
|
|
24988
|
+
ninegrid.j.querySelectorAll(this).attr("show-tfoot", ninegrid.j.querySelectorAll(this).attr("show-tfoot") || "true");
|
|
24989
24989
|
|
|
24990
|
-
|
|
24991
|
-
|
|
24992
|
-
|
|
24990
|
+
ninegrid.j.querySelectorAll(this).attr("select-type", ninegrid.j.querySelectorAll(this).attr("select-type") || ninegrid.SELECTTYPE.CELL);
|
|
24991
|
+
ninegrid.j.querySelectorAll(this).attr("paging-type", ninegrid.j.querySelectorAll(this).attr("paging-type") || ninegrid.PAGINGTYPE.NONE);
|
|
24992
|
+
ninegrid.j.querySelectorAll(this).attr("paging-count", ninegrid.j.querySelectorAll(this).attr("paging-count") || ninegrid.PAGINGCOUNT.AUTO);
|
|
24993
24993
|
};
|
|
24994
24994
|
|
|
24995
24995
|
#createObserver = () => {
|
|
@@ -25027,14 +25027,14 @@ class ninegridContainer extends HTMLElement
|
|
|
25027
25027
|
let prevWidth = [];
|
|
25028
25028
|
var totalWidth = 0;
|
|
25029
25029
|
|
|
25030
|
-
$(".ng-container-body col", this.body).each((i,el) => { prevWidth.push({ col: el, width: Number(
|
|
25030
|
+
$(".ng-container-body col", this.body).each((i,el) => { prevWidth.push({ col: el, width: Number(ninegrid.j.querySelectorAll(el).attr("width")), }); });
|
|
25031
25031
|
prevWidth.forEach(o => { totalWidth += o.width; });
|
|
25032
25032
|
|
|
25033
25033
|
//$('.ng-container-body > table', this.body).css({ "width": "100%", "min-width": "100%", });
|
|
25034
25034
|
const tableWidth = $('.ng-container-body', this.body).width();
|
|
25035
25035
|
|
|
25036
25036
|
if (tableWidth != 0) {
|
|
25037
|
-
prevWidth.forEach(o => { var w = o.width * tableWidth / totalWidth;
|
|
25037
|
+
prevWidth.forEach(o => { var w = o.width * tableWidth / totalWidth; ninegrid.j.querySelectorAll(o.col).attr("width", w); });
|
|
25038
25038
|
}
|
|
25039
25039
|
}
|
|
25040
25040
|
|
|
@@ -25070,7 +25070,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25070
25070
|
var cols = [];
|
|
25071
25071
|
$(".col-indicator", this.body).each((i,td) => {
|
|
25072
25072
|
cols.push({from: parseInt(td.dataset.col), to: i});
|
|
25073
|
-
td.innerHTML = `<div>${
|
|
25073
|
+
td.innerHTML = `<div>${ninegrid.num2ExcelCol(i)}</div>`;
|
|
25074
25074
|
});
|
|
25075
25075
|
|
|
25076
25076
|
|
|
@@ -25092,15 +25092,15 @@ class ninegridContainer extends HTMLElement
|
|
|
25092
25092
|
});
|
|
25093
25093
|
|
|
25094
25094
|
$(".last", layout.currentTable).each((i,td) => {
|
|
25095
|
-
|
|
25095
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
25096
25096
|
});
|
|
25097
25097
|
}
|
|
25098
25098
|
|
|
25099
25099
|
this.template.find(".last").each((i,td) => {
|
|
25100
|
-
|
|
25100
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
25101
25101
|
});
|
|
25102
25102
|
$(".last", this.body).each((i,td) => {
|
|
25103
|
-
|
|
25103
|
+
ninegrid.j.querySelectorAll(td).addClass("dummy");
|
|
25104
25104
|
});
|
|
25105
25105
|
};
|
|
25106
25106
|
|
|
@@ -25166,21 +25166,21 @@ class ninegridContainer extends HTMLElement
|
|
|
25166
25166
|
|
|
25167
25167
|
if (thead.querySelector(".col-indicator-rowgroup")) return;
|
|
25168
25168
|
|
|
25169
|
-
const tr =
|
|
25169
|
+
const tr = ninegrid.j.querySelectorAll(thead.insertRow(0)).attr("role", "row").addClass("col-indicator-rowgroup").elem();
|
|
25170
25170
|
var cnt = 0;
|
|
25171
25171
|
|
|
25172
25172
|
$(".ng-container-body > table > tbody.bindable > tr", this.body).eq(0).find("th,td").each((index, td) => {
|
|
25173
25173
|
|
|
25174
|
-
if (!
|
|
25174
|
+
if (!ninegrid.j.querySelectorAll(td).hasClass("dummy")) {
|
|
25175
25175
|
for (var i = 0; i < td.colSpan; i++) {
|
|
25176
|
-
$(tr).append(tdTmpl.replace("@col", cnt).replace("@text",
|
|
25176
|
+
$(tr).append(tdTmpl.replace("@col", cnt).replace("@text", ninegrid.num2ExcelCol(cnt++)));
|
|
25177
25177
|
}
|
|
25178
25178
|
}
|
|
25179
25179
|
});
|
|
25180
25180
|
|
|
25181
25181
|
var t = [];
|
|
25182
|
-
$("colgroup col", this.body).each((i,el) => { t.push({ width: parseInt(
|
|
25183
|
-
$("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, });
|
|
25182
|
+
$("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")} ); });
|
|
25183
|
+
$("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); });
|
|
25184
25184
|
}
|
|
25185
25185
|
|
|
25186
25186
|
#prepare = () => {
|
|
@@ -25237,13 +25237,13 @@ class ninegridContainer extends HTMLElement
|
|
|
25237
25237
|
|
|
25238
25238
|
if (thead.length <= 0) $('<thead></thead>').appendTo(table);
|
|
25239
25239
|
|
|
25240
|
-
|
|
25240
|
+
ninegrid.j.querySelectorAll(table).attr("role", "table") .addClass("ng-table");
|
|
25241
25241
|
|
|
25242
|
-
|
|
25243
|
-
|
|
25244
|
-
|
|
25245
|
-
|
|
25246
|
-
|
|
25242
|
+
ninegrid.j.querySelectorAll("tbody th,tbody td", table) .attr("tabindex", 0);
|
|
25243
|
+
ninegrid.j.querySelectorAll("thead,tbody,tfoot", table) .attr("role", "rowgroup");
|
|
25244
|
+
ninegrid.j.querySelectorAll("tr", table) .attr("role", "row");
|
|
25245
|
+
ninegrid.j.querySelectorAll("tbody > tr", table) .attr("role", "gridcell");
|
|
25246
|
+
ninegrid.j.querySelectorAll("th,td", table) .attr("scope", "col");
|
|
25247
25247
|
|
|
25248
25248
|
this.#resetColIndex($(table), "thead");
|
|
25249
25249
|
this.#resetColIndex($(table), "tbody.bindable");
|
|
@@ -25253,7 +25253,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25253
25253
|
this.#createColIndicator();
|
|
25254
25254
|
|
|
25255
25255
|
table.querySelectorAll("col").forEach((el,i) => {
|
|
25256
|
-
|
|
25256
|
+
ninegrid.j.querySelectorAll(`[data-col="${i}"]`, table).attr("fixed", ninegrid.j.querySelectorAll(el).attr("fixed"));
|
|
25257
25257
|
});
|
|
25258
25258
|
}
|
|
25259
25259
|
|
|
@@ -25335,7 +25335,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25335
25335
|
selectRow = (nRow1, nRow2) => {
|
|
25336
25336
|
|
|
25337
25337
|
const row1 = this.#getRowIndex(nRow1);
|
|
25338
|
-
const row2 =
|
|
25338
|
+
const row2 = ninegrid.isNull(oRow2) ? row1 : this.#getRowIndex(nRow2);
|
|
25339
25339
|
const matrixRow1= parseInt(row1 * this.template.length);
|
|
25340
25340
|
const matrixRow2= parseInt(row2 * this.template.length) + this.template.length - 1;
|
|
25341
25341
|
|
|
@@ -25355,7 +25355,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25355
25355
|
*/
|
|
25356
25356
|
selectCol = (oCol1, oCol2) => {
|
|
25357
25357
|
const col1 = this.#getColIndex(oCol1);
|
|
25358
|
-
const col2 =
|
|
25358
|
+
const col2 = ninegrid.isNull(oCol2) ? col1 : this.#getColIndex(oCol2);
|
|
25359
25359
|
const matrixRow1= 0;
|
|
25360
25360
|
const matrixRow2= parseInt(this.data.count() * this.template.length - 1);
|
|
25361
25361
|
|
|
@@ -25375,7 +25375,7 @@ class ninegridContainer extends HTMLElement
|
|
|
25375
25375
|
|
|
25376
25376
|
const row = this.#getRowIndex(nRow);
|
|
25377
25377
|
const col = this.#getColIndex(oCol);
|
|
25378
|
-
const matrixRow = parseInt(row * this.template.length) +
|
|
25378
|
+
const matrixRow = parseInt(row * this.template.length) + ninegrid.nvl(nSubrow, 0);
|
|
25379
25379
|
|
|
25380
25380
|
this.row.at = row;
|
|
25381
25381
|
|
|
@@ -25468,8 +25468,8 @@ class nxConfirmPopup extends HTMLElement
|
|
|
25468
25468
|
|
|
25469
25469
|
title = title || 'Confirm';
|
|
25470
25470
|
|
|
25471
|
-
for (const prop in
|
|
25472
|
-
options[prop] = options[prop] ||
|
|
25471
|
+
for (const prop in ninegrid.options.confirm) {
|
|
25472
|
+
options[prop] = options[prop] || ninegrid.options.confirm[prop];
|
|
25473
25473
|
}
|
|
25474
25474
|
|
|
25475
25475
|
$('nx-confirm-popup', document.body).remove();
|
|
@@ -25521,8 +25521,8 @@ class nxAlertPopup extends HTMLElement
|
|
|
25521
25521
|
|
|
25522
25522
|
title = title || 'Alert';
|
|
25523
25523
|
|
|
25524
|
-
for (const prop in
|
|
25525
|
-
options[prop] = options[prop] ||
|
|
25524
|
+
for (const prop in ninegrid.options.alert) {
|
|
25525
|
+
options[prop] = options[prop] || ninegrid.options.alert[prop];
|
|
25526
25526
|
}
|
|
25527
25527
|
|
|
25528
25528
|
$('nx-alert-popup', document.body).remove();
|
|
@@ -25558,15 +25558,15 @@ class nxDialog extends HTMLElement
|
|
|
25558
25558
|
|
|
25559
25559
|
const v = this.innerHTML;
|
|
25560
25560
|
const cssFile = this.getAttribute("css-file");
|
|
25561
|
-
const customFile1 = cssFile ? `@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
25562
|
-
const customFile2 = cssFile ?
|
|
25561
|
+
const customFile1 = cssFile ? `@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/${cssFile}";`: "";
|
|
25562
|
+
const customFile2 = cssFile ? ninegrid.getCustomPath(this, cssFile) : "";
|
|
25563
25563
|
|
|
25564
25564
|
//console.log(ninegrid.getCustomPath(this,"nxDialog.css"));
|
|
25565
25565
|
|
|
25566
25566
|
this.innerHTML = `
|
|
25567
25567
|
<style>
|
|
25568
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
25569
|
-
${
|
|
25568
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxDialog.css";
|
|
25569
|
+
${ninegrid.getCustomPath(this,"nxDialog.css") || ""}
|
|
25570
25570
|
${customFile1 || ""}
|
|
25571
25571
|
${customFile2 || ""}
|
|
25572
25572
|
</style>
|
|
@@ -25625,7 +25625,7 @@ class nxDialog extends HTMLElement
|
|
|
25625
25625
|
|
|
25626
25626
|
#init = () => {
|
|
25627
25627
|
$(".close,.close2", this).on("click", e => {
|
|
25628
|
-
|
|
25628
|
+
ninegrid.j.querySelectorAll('dialog', this).addClass("out");
|
|
25629
25629
|
setTimeout(() => { this.close(); }, 300);
|
|
25630
25630
|
});
|
|
25631
25631
|
|
|
@@ -25721,8 +25721,8 @@ class nxDiv extends HTMLElement {
|
|
|
25721
25721
|
const htmlTmpl = document.createElement("template");
|
|
25722
25722
|
htmlTmpl.innerHTML = `
|
|
25723
25723
|
<style>
|
|
25724
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
25725
|
-
${
|
|
25724
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxDiv.css";
|
|
25725
|
+
${ninegrid.getCustomPath(this,"nxDiv.css")}
|
|
25726
25726
|
|
|
25727
25727
|
:host {
|
|
25728
25728
|
}
|
|
@@ -25784,9 +25784,9 @@ class nxI18nExt extends HTMLElement
|
|
|
25784
25784
|
|
|
25785
25785
|
this.#target.innerHTML = i18next.t(this.#i18n);
|
|
25786
25786
|
}
|
|
25787
|
-
else if (this.#dataSource.length > 0 && !
|
|
25787
|
+
else if (this.#dataSource.length > 0 && !ninegrid.isNull(this.#value)) {
|
|
25788
25788
|
|
|
25789
|
-
var index = this.#dataSource.findIndex(m => m[this.#key] ==
|
|
25789
|
+
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid.global.locale);
|
|
25790
25790
|
if (index < 0) index = 0;
|
|
25791
25791
|
|
|
25792
25792
|
this.#target.innerHTML = this.#dataSource[index][this.#value];
|
|
@@ -25867,10 +25867,10 @@ class nxI18nExt extends HTMLElement
|
|
|
25867
25867
|
return result;
|
|
25868
25868
|
},
|
|
25869
25869
|
updateContent : () => {
|
|
25870
|
-
|
|
25870
|
+
ninegrid.querySelectorAll("nx-i18n,nx-span").forEach(v => {
|
|
25871
25871
|
if (v.refresh) v.refresh();
|
|
25872
25872
|
});
|
|
25873
|
-
|
|
25873
|
+
ninegrid.querySelectorAll("nine-grid").forEach(v => {
|
|
25874
25874
|
if (v.refresh) v.refreshData();
|
|
25875
25875
|
});
|
|
25876
25876
|
},
|
|
@@ -25902,11 +25902,11 @@ class nxI18nExt extends HTMLElement
|
|
|
25902
25902
|
|
|
25903
25903
|
if (xhr.status === 200) {
|
|
25904
25904
|
var text = xhr.responseText;
|
|
25905
|
-
i18next.addResourceBundle(locale, 'translation',
|
|
25905
|
+
i18next.addResourceBundle(locale, 'translation', ninegrid.i18n.convertArrayToJSON(text.split("\n")));
|
|
25906
25906
|
|
|
25907
25907
|
// 마지막 파일인 경우 화면갱신
|
|
25908
25908
|
if (--count == 0) {
|
|
25909
|
-
i18next.changeLanguage(
|
|
25909
|
+
i18next.changeLanguage(ninegrid.global.locale);
|
|
25910
25910
|
}
|
|
25911
25911
|
}
|
|
25912
25912
|
|
|
@@ -25955,8 +25955,8 @@ class nxSidebar extends HTMLElement
|
|
|
25955
25955
|
//this.shadowRoot.innerHTML = `
|
|
25956
25956
|
template.innerHTML = `
|
|
25957
25957
|
<style>
|
|
25958
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
25959
|
-
${
|
|
25958
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebar.css";
|
|
25959
|
+
${ninegrid.getCustomPath(this,"nxSidebar.css")}
|
|
25960
25960
|
|
|
25961
25961
|
:host {
|
|
25962
25962
|
--min-width: ${this.#minWidth}px;
|
|
@@ -26300,8 +26300,8 @@ class nxSidebarItem extends HTMLElement {
|
|
|
26300
26300
|
|
|
26301
26301
|
this.shadowRoot.innerHTML = `
|
|
26302
26302
|
<style>
|
|
26303
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26304
|
-
${
|
|
26303
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebarItem.css";
|
|
26304
|
+
${ninegrid.getCustomPath(this,"nxSidebarItem.css")}
|
|
26305
26305
|
</style>
|
|
26306
26306
|
|
|
26307
26307
|
<li>
|
|
@@ -26346,8 +26346,8 @@ class nxSidebarMenuitem extends HTMLElement {
|
|
|
26346
26346
|
|
|
26347
26347
|
this.shadowRoot.innerHTML = `
|
|
26348
26348
|
<style>
|
|
26349
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26350
|
-
${
|
|
26349
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSidebarMenuitem.css";
|
|
26350
|
+
${ninegrid.getCustomPath(this,"nxSidebarMenuitem.css")}
|
|
26351
26351
|
</style>
|
|
26352
26352
|
|
|
26353
26353
|
<li>
|
|
@@ -26377,7 +26377,7 @@ class nxSideMenu extends HTMLElement
|
|
|
26377
26377
|
};
|
|
26378
26378
|
|
|
26379
26379
|
connectedCallback() {
|
|
26380
|
-
|
|
26380
|
+
ninegrid.waitForInnerHTML(this)
|
|
26381
26381
|
.then(() => this.#init())
|
|
26382
26382
|
.catch(error => console.error(error));
|
|
26383
26383
|
};
|
|
@@ -26438,8 +26438,8 @@ class nxSideMenu extends HTMLElement
|
|
|
26438
26438
|
|
|
26439
26439
|
this.shadowRoot.innerHTML = `
|
|
26440
26440
|
<style>
|
|
26441
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26442
|
-
${
|
|
26441
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenu.css";
|
|
26442
|
+
${ninegrid.getCustomPath(this,"nxSideMenu.css")}
|
|
26443
26443
|
|
|
26444
26444
|
:host {
|
|
26445
26445
|
--min-width: ${this.#minWidth}px;
|
|
@@ -26525,7 +26525,7 @@ class nxSideMenuHead extends HTMLElement
|
|
|
26525
26525
|
}
|
|
26526
26526
|
|
|
26527
26527
|
connectedCallback() {
|
|
26528
|
-
|
|
26528
|
+
ninegrid.waitForInnerHTML(this)
|
|
26529
26529
|
.then(() => this.#init())
|
|
26530
26530
|
.catch(error => console.error(error));
|
|
26531
26531
|
}
|
|
@@ -26555,8 +26555,8 @@ class nxSideMenuHead extends HTMLElement
|
|
|
26555
26555
|
|
|
26556
26556
|
this.shadowRoot.innerHTML = `
|
|
26557
26557
|
<style>
|
|
26558
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26559
|
-
${
|
|
26558
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuHead.css";
|
|
26559
|
+
${ninegrid.getCustomPath(this,"nxSideMenuHead.css")}
|
|
26560
26560
|
|
|
26561
26561
|
:host {
|
|
26562
26562
|
--icon-color: ${iconColor};
|
|
@@ -26592,7 +26592,7 @@ class nxSideMenuFoot extends HTMLElement
|
|
|
26592
26592
|
}
|
|
26593
26593
|
|
|
26594
26594
|
connectedCallback() {
|
|
26595
|
-
|
|
26595
|
+
ninegrid.waitForInnerHTML(this)
|
|
26596
26596
|
.then(() => this.#init())
|
|
26597
26597
|
.catch(error => console.error(error));
|
|
26598
26598
|
}
|
|
@@ -26621,8 +26621,8 @@ class nxSideMenuFoot extends HTMLElement
|
|
|
26621
26621
|
|
|
26622
26622
|
this.shadowRoot.innerHTML = `
|
|
26623
26623
|
<style>
|
|
26624
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26625
|
-
${
|
|
26624
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuFoot.css";
|
|
26625
|
+
${ninegrid.getCustomPath(this,"nxSideMenuFoot.css")}
|
|
26626
26626
|
|
|
26627
26627
|
:host {
|
|
26628
26628
|
--icon-color: ${iconColor};
|
|
@@ -26659,7 +26659,7 @@ class nxSideMenuBody extends HTMLElement
|
|
|
26659
26659
|
}
|
|
26660
26660
|
|
|
26661
26661
|
connectedCallback() {
|
|
26662
|
-
|
|
26662
|
+
ninegrid.waitForInnerHTML(this)
|
|
26663
26663
|
.then(() => this.#init())
|
|
26664
26664
|
.catch(error => console.error(error));
|
|
26665
26665
|
}
|
|
@@ -26708,11 +26708,11 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26708
26708
|
super();
|
|
26709
26709
|
this.attachShadow({ mode: 'open' });
|
|
26710
26710
|
|
|
26711
|
-
this.uuid =
|
|
26711
|
+
this.uuid = ninegrid.randomUUID();
|
|
26712
26712
|
}
|
|
26713
26713
|
|
|
26714
26714
|
connectedCallback() {
|
|
26715
|
-
|
|
26715
|
+
ninegrid.waitForInnerHTML(this)
|
|
26716
26716
|
.then(() => this.#init())
|
|
26717
26717
|
.catch(error => console.error(error));
|
|
26718
26718
|
}
|
|
@@ -26724,7 +26724,7 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26724
26724
|
this.render();
|
|
26725
26725
|
|
|
26726
26726
|
|
|
26727
|
-
this.#owner =
|
|
26727
|
+
this.#owner = ninegrid.closest("nx-side-menu", this);
|
|
26728
26728
|
|
|
26729
26729
|
this.classList.toggle("expand");
|
|
26730
26730
|
this.classList.add("collapse");
|
|
@@ -26734,13 +26734,13 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26734
26734
|
|
|
26735
26735
|
this.addEventListener('click', (e) => {
|
|
26736
26736
|
|
|
26737
|
-
|
|
26737
|
+
ninegrid.querySelectorAll("nx-side-menu-item", this.#owner).forEach(v => {
|
|
26738
26738
|
v.classList.remove("active");
|
|
26739
26739
|
});
|
|
26740
26740
|
|
|
26741
26741
|
e.target.classList.add("active");
|
|
26742
26742
|
|
|
26743
|
-
|
|
26743
|
+
ninegrid.closest("nx-side-menu", this).dispatchEvent(new CustomEvent('side-menu-click', {
|
|
26744
26744
|
detail: { target: this, },
|
|
26745
26745
|
bubbles: true,
|
|
26746
26746
|
composed: true
|
|
@@ -26762,7 +26762,7 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26762
26762
|
//const target = neUtils.closest("nx-side-menu-item", this);
|
|
26763
26763
|
//console.log(this.uuid);
|
|
26764
26764
|
|
|
26765
|
-
const nodeList =
|
|
26765
|
+
const nodeList = ninegrid.querySelectorAll("nx-side-menu-item", this.#owner);
|
|
26766
26766
|
const firstNodeIndex = Array.from(nodeList).findIndex(node => node.uuid === this.uuid);
|
|
26767
26767
|
const childNode = [];
|
|
26768
26768
|
|
|
@@ -26807,8 +26807,8 @@ class nxSideMenuItem extends HTMLElement
|
|
|
26807
26807
|
|
|
26808
26808
|
this.shadowRoot.innerHTML = `
|
|
26809
26809
|
<style>
|
|
26810
|
-
@import "https://cdn.jsdelivr.net/npm/ninegrid@${
|
|
26811
|
-
${
|
|
26810
|
+
@import "https://cdn.jsdelivr.net/npm/ninegrid@${ninegrid.version}/dist/css/nxSideMenuItem.css";
|
|
26811
|
+
${ninegrid.getCustomPath(this,"nxSideMenuItem.css")}
|
|
26812
26812
|
</style>
|
|
26813
26813
|
|
|
26814
26814
|
<li>
|
|
@@ -26846,7 +26846,7 @@ class nxSpan extends HTMLElement
|
|
|
26846
26846
|
};
|
|
26847
26847
|
|
|
26848
26848
|
connectedCallback() {
|
|
26849
|
-
if (
|
|
26849
|
+
if (ninegrid.getLocale() == "ko") {
|
|
26850
26850
|
console.warn("nx-span 컴포넌트는 더 이상 사용되지 않을 예정입니다. nx-i18n 컴포넌트로 대체하세요.");
|
|
26851
26851
|
}
|
|
26852
26852
|
else {
|
|
@@ -26855,9 +26855,9 @@ class nxSpan extends HTMLElement
|
|
|
26855
26855
|
};
|
|
26856
26856
|
|
|
26857
26857
|
refresh = () => {
|
|
26858
|
-
if (this.#dataSource.length < 0 ||
|
|
26858
|
+
if (this.#dataSource.length < 0 || ninegrid.isNull(this.#value)) return;
|
|
26859
26859
|
|
|
26860
|
-
var index = this.#dataSource.findIndex(m => m[this.#key] ==
|
|
26860
|
+
var index = this.#dataSource.findIndex(m => m[this.#key] == ninegrid.global.locale);
|
|
26861
26861
|
if (index < 0) index = 0;
|
|
26862
26862
|
|
|
26863
26863
|
|
|
@@ -27253,12 +27253,12 @@ class nxTopMenu extends HTMLElement
|
|
|
27253
27253
|
</nav>
|
|
27254
27254
|
`;
|
|
27255
27255
|
|
|
27256
|
-
this.changeLocale(
|
|
27256
|
+
this.changeLocale(ninegrid.getLocale());
|
|
27257
27257
|
};
|
|
27258
27258
|
|
|
27259
27259
|
changeLocale = (locale) => {
|
|
27260
|
-
|
|
27261
|
-
this.shadowRoot.querySelector("#locale").innerHTML =
|
|
27260
|
+
ninegrid.setLocale(locale);
|
|
27261
|
+
this.shadowRoot.querySelector("#locale").innerHTML = ninegrid.decode(locale, "ko", "한국어", "English");
|
|
27262
27262
|
};
|
|
27263
27263
|
}
|
|
27264
27264
|
|
|
@@ -27272,4 +27272,4 @@ window.jQuery = window.$ = $$1;
|
|
|
27272
27272
|
|
|
27273
27273
|
//export default new ninegrid();
|
|
27274
27274
|
|
|
27275
|
-
exports
|
|
27275
|
+
module.exports = ninegrid;
|