ninegrid2 6.1384.0 → 6.1385.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 +41 -28
- package/dist/bundle.esm.js +41 -28
- package/dist/nx/_nxDiv.js +41 -28
- package/package.json +1 -1
- package/src/nx/_nxDiv.js +41 -28
package/dist/bundle.cjs.js
CHANGED
|
@@ -28501,46 +28501,59 @@ class nxDiv extends HTMLElement {
|
|
|
28501
28501
|
return jsonData;
|
|
28502
28502
|
};
|
|
28503
28503
|
|
|
28504
|
-
|
|
28504
|
+
// [공통 로직 1] 특정 요소에 값을 쓰거나 초기화하는 핵심 함수
|
|
28505
|
+
#updateElement(el, value) {
|
|
28506
|
+
const tagName = el.tagName.toUpperCase();
|
|
28507
|
+
const type = el.type;
|
|
28508
|
+
let isChanged = false;
|
|
28509
|
+
|
|
28510
|
+
if (["INPUT", "TEXTAREA", "SELECT", "NX-EDITOR"].includes(tagName)) {
|
|
28511
|
+
if (type === "checkbox") {
|
|
28512
|
+
const t = el.getAttribute("true-value") || "Y";
|
|
28513
|
+
const isChecked = (String(t) === String(value));
|
|
28514
|
+
if (el.checked !== isChecked) isChanged = true;
|
|
28515
|
+
el.checked = isChecked;
|
|
28516
|
+
} else if (type === "radio") {
|
|
28517
|
+
const isChecked = (String(el.value) === String(value));
|
|
28518
|
+
if (el.checked !== isChecked) isChanged = true;
|
|
28519
|
+
el.checked = isChecked;
|
|
28520
|
+
} else {
|
|
28521
|
+
if (el.value !== value) isChanged = true;
|
|
28522
|
+
el.value = value;
|
|
28523
|
+
}
|
|
28524
|
+
} else {
|
|
28525
|
+
if (el.textContent !== value) isChanged = true;
|
|
28526
|
+
el.textContent = value;
|
|
28527
|
+
}
|
|
28528
|
+
return isChanged;
|
|
28529
|
+
}
|
|
28530
|
+
|
|
28531
|
+
// 파라미터가 있으면 해당 값으로, 없으면 전체 공백 초기화
|
|
28532
|
+
clearData = (jsonData = {}) => {
|
|
28533
|
+
this.#refreshListeners();
|
|
28505
28534
|
this.#getElements().forEach(el => {
|
|
28506
|
-
el.
|
|
28507
|
-
|
|
28535
|
+
const key = el.name;
|
|
28536
|
+
if (!key) return;
|
|
28537
|
+
const val = (jsonData && jsonData[key] !== undefined) ? jsonData[key] : "";
|
|
28538
|
+
this.#updateElement(el, val);
|
|
28508
28539
|
});
|
|
28540
|
+
this.#changed(false);
|
|
28541
|
+
};
|
|
28509
28542
|
|
|
28543
|
+
setData = (jsonData) => {
|
|
28510
28544
|
if (!jsonData || typeof jsonData !== 'object') return;
|
|
28545
|
+
this.#refreshListeners();
|
|
28511
28546
|
|
|
28512
28547
|
let bChanged = false;
|
|
28513
28548
|
this.#getElements().forEach(el => {
|
|
28514
28549
|
const key = el.name;
|
|
28515
|
-
//console.log(el.tagName, key, el.name);
|
|
28516
|
-
|
|
28517
28550
|
if (!key || !jsonData.hasOwnProperty(key)) return;
|
|
28518
28551
|
|
|
28519
|
-
|
|
28520
|
-
|
|
28521
|
-
|
|
28522
|
-
if (inputTags.includes(el.tagName)) {
|
|
28523
|
-
if (el.type === "checkbox") {
|
|
28524
|
-
let t = el.getAttribute("true-value") || "Y";
|
|
28525
|
-
el.getAttribute("false-value") || "N";
|
|
28526
|
-
const isChecked = (t === String(value));
|
|
28527
|
-
if (el.checked !== isChecked) bChanged = true;
|
|
28528
|
-
el.checked = isChecked;
|
|
28529
|
-
} else if (el.type === "radio") {
|
|
28530
|
-
const isChecked = (String(el.value) === String(value));
|
|
28531
|
-
if (el.checked !== isChecked) bChanged = true;
|
|
28532
|
-
// 라디오 버튼 그룹 내에서 값 일치 여부 확인
|
|
28533
|
-
el.checked = isChecked;
|
|
28534
|
-
} else {
|
|
28535
|
-
if (el.value !== value) bChanged = true;
|
|
28536
|
-
el.value = value;
|
|
28537
|
-
}
|
|
28538
|
-
} else {
|
|
28539
|
-
if (el.textContent !== value) bChanged = true;
|
|
28540
|
-
el.textContent = value;
|
|
28552
|
+
if (this.#updateElement(el, jsonData[key])) {
|
|
28553
|
+
bChanged = true;
|
|
28541
28554
|
}
|
|
28542
28555
|
});
|
|
28543
|
-
if (bChanged) this.#changed(
|
|
28556
|
+
if (bChanged) this.#changed(true);
|
|
28544
28557
|
};
|
|
28545
28558
|
|
|
28546
28559
|
initData = (jsonData) => {
|
package/dist/bundle.esm.js
CHANGED
|
@@ -28497,46 +28497,59 @@ class nxDiv extends HTMLElement {
|
|
|
28497
28497
|
return jsonData;
|
|
28498
28498
|
};
|
|
28499
28499
|
|
|
28500
|
-
|
|
28500
|
+
// [공통 로직 1] 특정 요소에 값을 쓰거나 초기화하는 핵심 함수
|
|
28501
|
+
#updateElement(el, value) {
|
|
28502
|
+
const tagName = el.tagName.toUpperCase();
|
|
28503
|
+
const type = el.type;
|
|
28504
|
+
let isChanged = false;
|
|
28505
|
+
|
|
28506
|
+
if (["INPUT", "TEXTAREA", "SELECT", "NX-EDITOR"].includes(tagName)) {
|
|
28507
|
+
if (type === "checkbox") {
|
|
28508
|
+
const t = el.getAttribute("true-value") || "Y";
|
|
28509
|
+
const isChecked = (String(t) === String(value));
|
|
28510
|
+
if (el.checked !== isChecked) isChanged = true;
|
|
28511
|
+
el.checked = isChecked;
|
|
28512
|
+
} else if (type === "radio") {
|
|
28513
|
+
const isChecked = (String(el.value) === String(value));
|
|
28514
|
+
if (el.checked !== isChecked) isChanged = true;
|
|
28515
|
+
el.checked = isChecked;
|
|
28516
|
+
} else {
|
|
28517
|
+
if (el.value !== value) isChanged = true;
|
|
28518
|
+
el.value = value;
|
|
28519
|
+
}
|
|
28520
|
+
} else {
|
|
28521
|
+
if (el.textContent !== value) isChanged = true;
|
|
28522
|
+
el.textContent = value;
|
|
28523
|
+
}
|
|
28524
|
+
return isChanged;
|
|
28525
|
+
}
|
|
28526
|
+
|
|
28527
|
+
// 파라미터가 있으면 해당 값으로, 없으면 전체 공백 초기화
|
|
28528
|
+
clearData = (jsonData = {}) => {
|
|
28529
|
+
this.#refreshListeners();
|
|
28501
28530
|
this.#getElements().forEach(el => {
|
|
28502
|
-
el.
|
|
28503
|
-
|
|
28531
|
+
const key = el.name;
|
|
28532
|
+
if (!key) return;
|
|
28533
|
+
const val = (jsonData && jsonData[key] !== undefined) ? jsonData[key] : "";
|
|
28534
|
+
this.#updateElement(el, val);
|
|
28504
28535
|
});
|
|
28536
|
+
this.#changed(false);
|
|
28537
|
+
};
|
|
28505
28538
|
|
|
28539
|
+
setData = (jsonData) => {
|
|
28506
28540
|
if (!jsonData || typeof jsonData !== 'object') return;
|
|
28541
|
+
this.#refreshListeners();
|
|
28507
28542
|
|
|
28508
28543
|
let bChanged = false;
|
|
28509
28544
|
this.#getElements().forEach(el => {
|
|
28510
28545
|
const key = el.name;
|
|
28511
|
-
//console.log(el.tagName, key, el.name);
|
|
28512
|
-
|
|
28513
28546
|
if (!key || !jsonData.hasOwnProperty(key)) return;
|
|
28514
28547
|
|
|
28515
|
-
|
|
28516
|
-
|
|
28517
|
-
|
|
28518
|
-
if (inputTags.includes(el.tagName)) {
|
|
28519
|
-
if (el.type === "checkbox") {
|
|
28520
|
-
let t = el.getAttribute("true-value") || "Y";
|
|
28521
|
-
el.getAttribute("false-value") || "N";
|
|
28522
|
-
const isChecked = (t === String(value));
|
|
28523
|
-
if (el.checked !== isChecked) bChanged = true;
|
|
28524
|
-
el.checked = isChecked;
|
|
28525
|
-
} else if (el.type === "radio") {
|
|
28526
|
-
const isChecked = (String(el.value) === String(value));
|
|
28527
|
-
if (el.checked !== isChecked) bChanged = true;
|
|
28528
|
-
// 라디오 버튼 그룹 내에서 값 일치 여부 확인
|
|
28529
|
-
el.checked = isChecked;
|
|
28530
|
-
} else {
|
|
28531
|
-
if (el.value !== value) bChanged = true;
|
|
28532
|
-
el.value = value;
|
|
28533
|
-
}
|
|
28534
|
-
} else {
|
|
28535
|
-
if (el.textContent !== value) bChanged = true;
|
|
28536
|
-
el.textContent = value;
|
|
28548
|
+
if (this.#updateElement(el, jsonData[key])) {
|
|
28549
|
+
bChanged = true;
|
|
28537
28550
|
}
|
|
28538
28551
|
});
|
|
28539
|
-
if (bChanged) this.#changed(
|
|
28552
|
+
if (bChanged) this.#changed(true);
|
|
28540
28553
|
};
|
|
28541
28554
|
|
|
28542
28555
|
initData = (jsonData) => {
|
package/dist/nx/_nxDiv.js
CHANGED
|
@@ -68,46 +68,59 @@ export class nxDiv extends HTMLElement {
|
|
|
68
68
|
return jsonData;
|
|
69
69
|
};
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
// [공통 로직 1] 특정 요소에 값을 쓰거나 초기화하는 핵심 함수
|
|
72
|
+
#updateElement(el, value) {
|
|
73
|
+
const tagName = el.tagName.toUpperCase();
|
|
74
|
+
const type = el.type;
|
|
75
|
+
let isChanged = false;
|
|
76
|
+
|
|
77
|
+
if (["INPUT", "TEXTAREA", "SELECT", "NX-EDITOR"].includes(tagName)) {
|
|
78
|
+
if (type === "checkbox") {
|
|
79
|
+
const t = el.getAttribute("true-value") || "Y";
|
|
80
|
+
const isChecked = (String(t) === String(value));
|
|
81
|
+
if (el.checked !== isChecked) isChanged = true;
|
|
82
|
+
el.checked = isChecked;
|
|
83
|
+
} else if (type === "radio") {
|
|
84
|
+
const isChecked = (String(el.value) === String(value));
|
|
85
|
+
if (el.checked !== isChecked) isChanged = true;
|
|
86
|
+
el.checked = isChecked;
|
|
87
|
+
} else {
|
|
88
|
+
if (el.value !== value) isChanged = true;
|
|
89
|
+
el.value = value;
|
|
90
|
+
}
|
|
91
|
+
} else {
|
|
92
|
+
if (el.textContent !== value) isChanged = true;
|
|
93
|
+
el.textContent = value;
|
|
94
|
+
}
|
|
95
|
+
return isChanged;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// 파라미터가 있으면 해당 값으로, 없으면 전체 공백 초기화
|
|
99
|
+
clearData = (jsonData = {}) => {
|
|
100
|
+
this.#refreshListeners();
|
|
72
101
|
this.#getElements().forEach(el => {
|
|
73
|
-
el.
|
|
74
|
-
|
|
102
|
+
const key = el.name;
|
|
103
|
+
if (!key) return;
|
|
104
|
+
const val = (jsonData && jsonData[key] !== undefined) ? jsonData[key] : "";
|
|
105
|
+
this.#updateElement(el, val);
|
|
75
106
|
});
|
|
107
|
+
this.#changed(false);
|
|
108
|
+
};
|
|
76
109
|
|
|
110
|
+
setData = (jsonData) => {
|
|
77
111
|
if (!jsonData || typeof jsonData !== 'object') return;
|
|
112
|
+
this.#refreshListeners();
|
|
78
113
|
|
|
79
114
|
let bChanged = false;
|
|
80
115
|
this.#getElements().forEach(el => {
|
|
81
116
|
const key = el.name;
|
|
82
|
-
//console.log(el.tagName, key, el.name);
|
|
83
|
-
|
|
84
117
|
if (!key || !jsonData.hasOwnProperty(key)) return;
|
|
85
118
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
if (inputTags.includes(el.tagName)) {
|
|
90
|
-
if (el.type === "checkbox") {
|
|
91
|
-
let t = el.getAttribute("true-value") || "Y";
|
|
92
|
-
let f = el.getAttribute("false-value") || "N";
|
|
93
|
-
const isChecked = (t === String(value));
|
|
94
|
-
if (el.checked !== isChecked) bChanged = true;
|
|
95
|
-
el.checked = isChecked;
|
|
96
|
-
} else if (el.type === "radio") {
|
|
97
|
-
const isChecked = (String(el.value) === String(value));
|
|
98
|
-
if (el.checked !== isChecked) bChanged = true;
|
|
99
|
-
// 라디오 버튼 그룹 내에서 값 일치 여부 확인
|
|
100
|
-
el.checked = isChecked;
|
|
101
|
-
} else {
|
|
102
|
-
if (el.value !== value) bChanged = true;
|
|
103
|
-
el.value = value;
|
|
104
|
-
}
|
|
105
|
-
} else {
|
|
106
|
-
if (el.textContent !== value) bChanged = true;
|
|
107
|
-
el.textContent = value;
|
|
119
|
+
if (this.#updateElement(el, jsonData[key])) {
|
|
120
|
+
bChanged = true;
|
|
108
121
|
}
|
|
109
122
|
});
|
|
110
|
-
if (bChanged) this.#changed(
|
|
123
|
+
if (bChanged) this.#changed(true);
|
|
111
124
|
};
|
|
112
125
|
|
|
113
126
|
initData = (jsonData) => {
|
package/package.json
CHANGED
package/src/nx/_nxDiv.js
CHANGED
|
@@ -68,46 +68,59 @@ export class nxDiv extends HTMLElement {
|
|
|
68
68
|
return jsonData;
|
|
69
69
|
};
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
// [공통 로직 1] 특정 요소에 값을 쓰거나 초기화하는 핵심 함수
|
|
72
|
+
#updateElement(el, value) {
|
|
73
|
+
const tagName = el.tagName.toUpperCase();
|
|
74
|
+
const type = el.type;
|
|
75
|
+
let isChanged = false;
|
|
76
|
+
|
|
77
|
+
if (["INPUT", "TEXTAREA", "SELECT", "NX-EDITOR"].includes(tagName)) {
|
|
78
|
+
if (type === "checkbox") {
|
|
79
|
+
const t = el.getAttribute("true-value") || "Y";
|
|
80
|
+
const isChecked = (String(t) === String(value));
|
|
81
|
+
if (el.checked !== isChecked) isChanged = true;
|
|
82
|
+
el.checked = isChecked;
|
|
83
|
+
} else if (type === "radio") {
|
|
84
|
+
const isChecked = (String(el.value) === String(value));
|
|
85
|
+
if (el.checked !== isChecked) isChanged = true;
|
|
86
|
+
el.checked = isChecked;
|
|
87
|
+
} else {
|
|
88
|
+
if (el.value !== value) isChanged = true;
|
|
89
|
+
el.value = value;
|
|
90
|
+
}
|
|
91
|
+
} else {
|
|
92
|
+
if (el.textContent !== value) isChanged = true;
|
|
93
|
+
el.textContent = value;
|
|
94
|
+
}
|
|
95
|
+
return isChanged;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// 파라미터가 있으면 해당 값으로, 없으면 전체 공백 초기화
|
|
99
|
+
clearData = (jsonData = {}) => {
|
|
100
|
+
this.#refreshListeners();
|
|
72
101
|
this.#getElements().forEach(el => {
|
|
73
|
-
el.
|
|
74
|
-
|
|
102
|
+
const key = el.name;
|
|
103
|
+
if (!key) return;
|
|
104
|
+
const val = (jsonData && jsonData[key] !== undefined) ? jsonData[key] : "";
|
|
105
|
+
this.#updateElement(el, val);
|
|
75
106
|
});
|
|
107
|
+
this.#changed(false);
|
|
108
|
+
};
|
|
76
109
|
|
|
110
|
+
setData = (jsonData) => {
|
|
77
111
|
if (!jsonData || typeof jsonData !== 'object') return;
|
|
112
|
+
this.#refreshListeners();
|
|
78
113
|
|
|
79
114
|
let bChanged = false;
|
|
80
115
|
this.#getElements().forEach(el => {
|
|
81
116
|
const key = el.name;
|
|
82
|
-
//console.log(el.tagName, key, el.name);
|
|
83
|
-
|
|
84
117
|
if (!key || !jsonData.hasOwnProperty(key)) return;
|
|
85
118
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
if (inputTags.includes(el.tagName)) {
|
|
90
|
-
if (el.type === "checkbox") {
|
|
91
|
-
let t = el.getAttribute("true-value") || "Y";
|
|
92
|
-
let f = el.getAttribute("false-value") || "N";
|
|
93
|
-
const isChecked = (t === String(value));
|
|
94
|
-
if (el.checked !== isChecked) bChanged = true;
|
|
95
|
-
el.checked = isChecked;
|
|
96
|
-
} else if (el.type === "radio") {
|
|
97
|
-
const isChecked = (String(el.value) === String(value));
|
|
98
|
-
if (el.checked !== isChecked) bChanged = true;
|
|
99
|
-
// 라디오 버튼 그룹 내에서 값 일치 여부 확인
|
|
100
|
-
el.checked = isChecked;
|
|
101
|
-
} else {
|
|
102
|
-
if (el.value !== value) bChanged = true;
|
|
103
|
-
el.value = value;
|
|
104
|
-
}
|
|
105
|
-
} else {
|
|
106
|
-
if (el.textContent !== value) bChanged = true;
|
|
107
|
-
el.textContent = value;
|
|
119
|
+
if (this.#updateElement(el, jsonData[key])) {
|
|
120
|
+
bChanged = true;
|
|
108
121
|
}
|
|
109
122
|
});
|
|
110
|
-
if (bChanged) this.#changed(
|
|
123
|
+
if (bChanged) this.#changed(true);
|
|
111
124
|
};
|
|
112
125
|
|
|
113
126
|
initData = (jsonData) => {
|