ninegrid2 6.241.0 → 6.243.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.
@@ -17978,18 +17978,19 @@ class ngFilterButton extends HTMLElement
17978
17978
  }
17979
17979
 
17980
17980
  #onClick = (e) => {
17981
-
17982
- e.preventDefault();
17983
- e.stopPropagation();
17984
-
17985
- const panel = this.#owner.shadowRoot.querySelector('ng-filter-panel');
17986
-
17987
- (panel.col === this.closest('th,td').dataset.col) ? panel.close() : panel.open(this);
17988
- };
17981
+ e.preventDefault();
17982
+ e.stopPropagation();
17983
+
17984
+ const panel = this.#owner.shadowRoot.querySelector("ng-filter-panel");
17985
+ const col = this.closest("th,td")?.dataset.col; // ✅ `?.` 활용하여 안전한 접근
17986
+
17987
+ panel.col === col ? panel.close() : panel.open(this);
17988
+ };
17989
17989
  }
17990
17990
 
17991
17991
  class ngFilterPanel extends HTMLElement
17992
17992
  {
17993
+ #owner;
17993
17994
  #target;
17994
17995
  #timer;
17995
17996
 
@@ -17999,6 +18000,10 @@ class ngFilterPanel extends HTMLElement
17999
18000
  }
18000
18001
 
18001
18002
  connectedCallback() {
18003
+
18004
+ this.#owner = this.getRootNode().host;
18005
+ console.log("========================", this.#owner);
18006
+
18002
18007
  const cssPath = this.getRootNode().host.closest("nine-grid").getAttribute("css-path") || "";
18003
18008
 
18004
18009
  this.shadowRoot.innerHTML = `
@@ -18061,7 +18066,7 @@ class ngFilterPanel extends HTMLElement
18061
18066
  const DATA_IDX = grd.fields.indexOf("DATA");
18062
18067
 
18063
18068
  const checked = grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] == "Y"; });
18064
- grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] != "Y"; });
18069
+ //const unchecked = grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] != "Y"; });
18065
18070
 
18066
18071
  var filterOptions = [];
18067
18072
  if (checked.length > 0) {
@@ -18074,31 +18079,8 @@ class ngFilterPanel extends HTMLElement
18074
18079
  });
18075
18080
  }
18076
18081
 
18077
- console.log(filterOptions);
18078
-
18079
- //console.log(this.#target);
18080
-
18081
- //console.log(this.#target, this.#target.button);
18082
-
18083
- //this.#target.button.filterData = filterData;//grd.data.getValidData().filter(item => { return item.CHK == "Y"; });//.map(item => { return item.DATA; });
18084
-
18085
-
18086
- /**
18087
- this.#target.owner.data.clearFilter();
18088
-
18089
- $("ng-filter-button", this.#target.owner.body).each((index,el) => {
18090
- if (!el.filterData) return true;
18091
- el.filterData.forEach(o => {
18092
- const idx = this.#target.owner.fields.indexOf(o.colnm);
18093
- this.#target.owner.data.getValidData().filter(m => { return o.data.nineBinarySearch(m.v[idx] || '') < 0; }).map(m => { m.__ng.filtered = true; });
18094
- //this.#target.owner.data.resetIndex();
18095
- });
18096
- });
18097
-
18098
- this.#target.owner.data.refreshFilter();
18099
- */
18100
-
18101
- console.log(this.#target, this.#target.button, filterOptions);
18082
+ //console.log(filterOptions);
18083
+ //console.log(this.#target, this.#target.button, filterOptions)
18102
18084
 
18103
18085
  this.#target.button.filterOptions = filterOptions;
18104
18086
 
@@ -17976,18 +17976,19 @@ class ngFilterButton extends HTMLElement
17976
17976
  }
17977
17977
 
17978
17978
  #onClick = (e) => {
17979
-
17980
- e.preventDefault();
17981
- e.stopPropagation();
17982
-
17983
- const panel = this.#owner.shadowRoot.querySelector('ng-filter-panel');
17984
-
17985
- (panel.col === this.closest('th,td').dataset.col) ? panel.close() : panel.open(this);
17986
- };
17979
+ e.preventDefault();
17980
+ e.stopPropagation();
17981
+
17982
+ const panel = this.#owner.shadowRoot.querySelector("ng-filter-panel");
17983
+ const col = this.closest("th,td")?.dataset.col; // ✅ `?.` 활용하여 안전한 접근
17984
+
17985
+ panel.col === col ? panel.close() : panel.open(this);
17986
+ };
17987
17987
  }
17988
17988
 
17989
17989
  class ngFilterPanel extends HTMLElement
17990
17990
  {
17991
+ #owner;
17991
17992
  #target;
17992
17993
  #timer;
17993
17994
 
@@ -17997,6 +17998,10 @@ class ngFilterPanel extends HTMLElement
17997
17998
  }
17998
17999
 
17999
18000
  connectedCallback() {
18001
+
18002
+ this.#owner = this.getRootNode().host;
18003
+ console.log("========================", this.#owner);
18004
+
18000
18005
  const cssPath = this.getRootNode().host.closest("nine-grid").getAttribute("css-path") || "";
18001
18006
 
18002
18007
  this.shadowRoot.innerHTML = `
@@ -18059,7 +18064,7 @@ class ngFilterPanel extends HTMLElement
18059
18064
  const DATA_IDX = grd.fields.indexOf("DATA");
18060
18065
 
18061
18066
  const checked = grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] == "Y"; });
18062
- grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] != "Y"; });
18067
+ //const unchecked = grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] != "Y"; });
18063
18068
 
18064
18069
  var filterOptions = [];
18065
18070
  if (checked.length > 0) {
@@ -18072,31 +18077,8 @@ class ngFilterPanel extends HTMLElement
18072
18077
  });
18073
18078
  }
18074
18079
 
18075
- console.log(filterOptions);
18076
-
18077
- //console.log(this.#target);
18078
-
18079
- //console.log(this.#target, this.#target.button);
18080
-
18081
- //this.#target.button.filterData = filterData;//grd.data.getValidData().filter(item => { return item.CHK == "Y"; });//.map(item => { return item.DATA; });
18082
-
18083
-
18084
- /**
18085
- this.#target.owner.data.clearFilter();
18086
-
18087
- $("ng-filter-button", this.#target.owner.body).each((index,el) => {
18088
- if (!el.filterData) return true;
18089
- el.filterData.forEach(o => {
18090
- const idx = this.#target.owner.fields.indexOf(o.colnm);
18091
- this.#target.owner.data.getValidData().filter(m => { return o.data.nineBinarySearch(m.v[idx] || '') < 0; }).map(m => { m.__ng.filtered = true; });
18092
- //this.#target.owner.data.resetIndex();
18093
- });
18094
- });
18095
-
18096
- this.#target.owner.data.refreshFilter();
18097
- */
18098
-
18099
- console.log(this.#target, this.#target.button, filterOptions);
18080
+ //console.log(filterOptions);
18081
+ //console.log(this.#target, this.#target.button, filterOptions)
18100
18082
 
18101
18083
  this.#target.button.filterOptions = filterOptions;
18102
18084
 
@@ -155,18 +155,19 @@ class ngFilterButton extends HTMLElement
155
155
  }
156
156
 
157
157
  #onClick = (e) => {
158
-
159
- e.preventDefault();
160
- e.stopPropagation();
161
-
162
- const panel = this.#owner.shadowRoot.querySelector('ng-filter-panel');
163
-
164
- (panel.col === this.closest('th,td').dataset.col) ? panel.close() : panel.open(this);
165
- };
158
+ e.preventDefault();
159
+ e.stopPropagation();
160
+
161
+ const panel = this.#owner.shadowRoot.querySelector("ng-filter-panel");
162
+ const col = this.closest("th,td")?.dataset.col; // ✅ `?.` 활용하여 안전한 접근
163
+
164
+ panel.col === col ? panel.close() : panel.open(this);
165
+ };
166
166
  }
167
167
 
168
168
  class ngFilterPanel extends HTMLElement
169
169
  {
170
+ #owner;
170
171
  #target;
171
172
  #timer;
172
173
 
@@ -176,6 +177,10 @@ class ngFilterPanel extends HTMLElement
176
177
  }
177
178
 
178
179
  connectedCallback() {
180
+
181
+ this.#owner = this.getRootNode().host;
182
+ console.log("========================", this.#owner)
183
+
179
184
  const cssPath = this.getRootNode().host.closest("nine-grid").getAttribute("css-path") || "";
180
185
 
181
186
  this.shadowRoot.innerHTML = `
@@ -238,7 +243,7 @@ class ngFilterPanel extends HTMLElement
238
243
  const DATA_IDX = grd.fields.indexOf("DATA");
239
244
 
240
245
  const checked = grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] == "Y"; });
241
- const unchecked = grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] != "Y"; });
246
+ //const unchecked = grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] != "Y"; });
242
247
 
243
248
  var filterOptions = [];
244
249
  if (checked.length > 0) {
@@ -251,31 +256,8 @@ class ngFilterPanel extends HTMLElement
251
256
  });
252
257
  }
253
258
 
254
- console.log(filterOptions);
255
-
256
- //console.log(this.#target);
257
-
258
- //console.log(this.#target, this.#target.button);
259
-
260
- //this.#target.button.filterData = filterData;//grd.data.getValidData().filter(item => { return item.CHK == "Y"; });//.map(item => { return item.DATA; });
261
-
262
-
263
- /**
264
- this.#target.owner.data.clearFilter();
265
-
266
- $("ng-filter-button", this.#target.owner.body).each((index,el) => {
267
- if (!el.filterData) return true;
268
- el.filterData.forEach(o => {
269
- const idx = this.#target.owner.fields.indexOf(o.colnm);
270
- this.#target.owner.data.getValidData().filter(m => { return o.data.nineBinarySearch(m.v[idx] || '') < 0; }).map(m => { m.__ng.filtered = true; });
271
- //this.#target.owner.data.resetIndex();
272
- });
273
- });
274
-
275
- this.#target.owner.data.refreshFilter();
276
- */
277
-
278
- console.log(this.#target, this.#target.button, filterOptions)
259
+ //console.log(filterOptions);
260
+ //console.log(this.#target, this.#target.button, filterOptions)
279
261
 
280
262
  this.#target.button.filterOptions = filterOptions;
281
263
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ninegrid2",
3
3
  "type": "module",
4
- "version": "6.241.0",
4
+ "version": "6.243.0",
5
5
  "main": "dist/index.js",
6
6
  "exports": {
7
7
  "import": "./dist/index.js",
@@ -155,18 +155,19 @@ class ngFilterButton extends HTMLElement
155
155
  }
156
156
 
157
157
  #onClick = (e) => {
158
-
159
- e.preventDefault();
160
- e.stopPropagation();
161
-
162
- const panel = this.#owner.shadowRoot.querySelector('ng-filter-panel');
163
-
164
- (panel.col === this.closest('th,td').dataset.col) ? panel.close() : panel.open(this);
165
- };
158
+ e.preventDefault();
159
+ e.stopPropagation();
160
+
161
+ const panel = this.#owner.shadowRoot.querySelector("ng-filter-panel");
162
+ const col = this.closest("th,td")?.dataset.col; // ✅ `?.` 활용하여 안전한 접근
163
+
164
+ panel.col === col ? panel.close() : panel.open(this);
165
+ };
166
166
  }
167
167
 
168
168
  class ngFilterPanel extends HTMLElement
169
169
  {
170
+ #owner;
170
171
  #target;
171
172
  #timer;
172
173
 
@@ -176,6 +177,10 @@ class ngFilterPanel extends HTMLElement
176
177
  }
177
178
 
178
179
  connectedCallback() {
180
+
181
+ this.#owner = this.getRootNode().host;
182
+ console.log("========================", this.#owner)
183
+
179
184
  const cssPath = this.getRootNode().host.closest("nine-grid").getAttribute("css-path") || "";
180
185
 
181
186
  this.shadowRoot.innerHTML = `
@@ -238,7 +243,7 @@ class ngFilterPanel extends HTMLElement
238
243
  const DATA_IDX = grd.fields.indexOf("DATA");
239
244
 
240
245
  const checked = grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] == "Y"; });
241
- const unchecked = grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] != "Y"; });
246
+ //const unchecked = grd.data.getValidDataNF().filter(m => { return m.v[LVL_IDX] == 2 && m.v[CHK_IDX] != "Y"; });
242
247
 
243
248
  var filterOptions = [];
244
249
  if (checked.length > 0) {
@@ -251,31 +256,8 @@ class ngFilterPanel extends HTMLElement
251
256
  });
252
257
  }
253
258
 
254
- console.log(filterOptions);
255
-
256
- //console.log(this.#target);
257
-
258
- //console.log(this.#target, this.#target.button);
259
-
260
- //this.#target.button.filterData = filterData;//grd.data.getValidData().filter(item => { return item.CHK == "Y"; });//.map(item => { return item.DATA; });
261
-
262
-
263
- /**
264
- this.#target.owner.data.clearFilter();
265
-
266
- $("ng-filter-button", this.#target.owner.body).each((index,el) => {
267
- if (!el.filterData) return true;
268
- el.filterData.forEach(o => {
269
- const idx = this.#target.owner.fields.indexOf(o.colnm);
270
- this.#target.owner.data.getValidData().filter(m => { return o.data.nineBinarySearch(m.v[idx] || '') < 0; }).map(m => { m.__ng.filtered = true; });
271
- //this.#target.owner.data.resetIndex();
272
- });
273
- });
274
-
275
- this.#target.owner.data.refreshFilter();
276
- */
277
-
278
- console.log(this.#target, this.#target.button, filterOptions)
259
+ //console.log(filterOptions);
260
+ //console.log(this.#target, this.#target.button, filterOptions)
279
261
 
280
262
  this.#target.button.filterOptions = filterOptions;
281
263