ninegrid2 6.162.0 → 6.164.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.
@@ -10724,6 +10724,38 @@ class ninegrid {
10724
10724
  }
10725
10725
  });
10726
10726
  }
10727
+
10728
+ console.log("shadow" in Element.prototype);
10729
+
10730
+ if (!("shadow" in Element.prototype)) {
10731
+ Object.defineProperty(Element.prototype, "shadow", {
10732
+ get: function () {
10733
+ console.log("get");
10734
+ //const style = window.getComputedStyle(this);
10735
+ //console.log(this, style.display, style.visibility, style.opacity);
10736
+ return function (selector) {
10737
+ console.log(selector);
10738
+ return "xx";
10739
+ /**
10740
+ let currentElement = this;
10741
+
10742
+ while (currentElement) {
10743
+ if (currentElement.matches(selector)) return currentElement;
10744
+
10745
+ // ✅ Shadow Root를 가지고 있는 경우 내부에서 탐색
10746
+ if (currentElement.shadowRoot) {
10747
+ const found = currentElement.shadowRoot.querySelector(selector);
10748
+ if (found) return found;
10749
+ }
10750
+
10751
+ currentElement = currentElement.getRootNode()?.host || null; // ✅ Shadow DOM 내부 탐색
10752
+ }
10753
+
10754
+ return null; */
10755
+ };
10756
+ }
10757
+ });
10758
+ }
10727
10759
  }
10728
10760
 
10729
10761
  static LOG = {
@@ -18165,31 +18197,26 @@ class ngFilterButton extends HTMLElement
18165
18197
  console.log(panel.isHidden, panel.col, this.closest('th,td').dataset.col);
18166
18198
 
18167
18199
  if (panel.col === this.closest('th,td').dataset.col) {
18200
+ panel.col = null;
18168
18201
  panel.style.display = 'none';
18169
- return;
18202
+ panel.close();
18170
18203
  }
18204
+ else {
18205
+ var cell = e.target.closest("th,td");
18206
+
18207
+ var l = $(e.target).offset().left - $(this.#owner).offset().left;// - $(panel).width() + $(e.target).width() + 1;
18208
+ if (l < 0) l = 0;
18209
+ if (l + $(panel).width() > $(this.#owner).width()) l = $(this.#owner).width() - $(panel).width() - 5;
18210
+
18211
+
18171
18212
 
18172
- //return;
18173
-
18174
- /**
18175
- if (this.#owner.shadowRoot.querySelectorAll('ng-filter-panel').length > 1) throw "too many ng-filter-panel";
18176
- if (!panel) throw 'ng-filter-panel is null';
18177
- */
18178
-
18179
- var cell = e.target.closest("th,td");
18180
-
18181
- var l = $(e.target).offset().left - $(this.#owner).offset().left;// - $(panel).width() + $(e.target).width() + 1;
18182
- if (l < 0) l = 0;
18183
- if (l + $(panel).width() > $(this.#owner).width()) l = $(this.#owner).width() - $(panel).width() - 5;
18184
-
18185
-
18186
-
18187
- var t = $(cell).offset().top + $(cell).height()- $(this.#owner).offset().top;//$(e.target).offset().top + $(e.target).height() + 2;
18188
-
18189
- //$(panel).offset({left: l, top: t});
18190
- $(panel).css({left: l, top: t});
18213
+ var t = $(cell).offset().top + $(cell).height()- $(this.#owner).offset().top;//$(e.target).offset().top + $(e.target).height() + 2;
18214
+
18215
+ //$(panel).offset({left: l, top: t});
18216
+ $(panel).css({left: l, top: t});
18191
18217
 
18192
- panel.refresh(this.#owner, this);
18218
+ panel.open(this.#owner, this);
18219
+ }
18193
18220
  };
18194
18221
  }
18195
18222
 
@@ -18402,12 +18429,17 @@ class ngFilterPanel extends HTMLElement
18402
18429
  }, 200);
18403
18430
  };
18404
18431
 
18405
- refresh = (owner, filterButton) => {
18432
+ close = () => {
18433
+ this.col = null;
18434
+ this.style.display = 'none';
18435
+ };
18406
18436
 
18407
- var col = filterButton.closest('th,td').dataset.col;
18408
- this.col = col;
18437
+ open = (owner, filterButton) => {
18409
18438
 
18439
+
18410
18440
 
18441
+ var col = filterButton.closest('th,td').dataset.col;
18442
+ this.col = col;
18411
18443
 
18412
18444
  //if (this.#target && this.#target.uuid == owner.uuid && this.#target.col == col && $(this).is(':visible')) {
18413
18445
  if (this.#target && this.#target.col == col && $(this).is(':visible')) ;
@@ -10722,6 +10722,38 @@ class ninegrid {
10722
10722
  }
10723
10723
  });
10724
10724
  }
10725
+
10726
+ console.log("shadow" in Element.prototype);
10727
+
10728
+ if (!("shadow" in Element.prototype)) {
10729
+ Object.defineProperty(Element.prototype, "shadow", {
10730
+ get: function () {
10731
+ console.log("get");
10732
+ //const style = window.getComputedStyle(this);
10733
+ //console.log(this, style.display, style.visibility, style.opacity);
10734
+ return function (selector) {
10735
+ console.log(selector);
10736
+ return "xx";
10737
+ /**
10738
+ let currentElement = this;
10739
+
10740
+ while (currentElement) {
10741
+ if (currentElement.matches(selector)) return currentElement;
10742
+
10743
+ // ✅ Shadow Root를 가지고 있는 경우 내부에서 탐색
10744
+ if (currentElement.shadowRoot) {
10745
+ const found = currentElement.shadowRoot.querySelector(selector);
10746
+ if (found) return found;
10747
+ }
10748
+
10749
+ currentElement = currentElement.getRootNode()?.host || null; // ✅ Shadow DOM 내부 탐색
10750
+ }
10751
+
10752
+ return null; */
10753
+ };
10754
+ }
10755
+ });
10756
+ }
10725
10757
  }
10726
10758
 
10727
10759
  static LOG = {
@@ -18163,31 +18195,26 @@ class ngFilterButton extends HTMLElement
18163
18195
  console.log(panel.isHidden, panel.col, this.closest('th,td').dataset.col);
18164
18196
 
18165
18197
  if (panel.col === this.closest('th,td').dataset.col) {
18198
+ panel.col = null;
18166
18199
  panel.style.display = 'none';
18167
- return;
18200
+ panel.close();
18168
18201
  }
18202
+ else {
18203
+ var cell = e.target.closest("th,td");
18204
+
18205
+ var l = $(e.target).offset().left - $(this.#owner).offset().left;// - $(panel).width() + $(e.target).width() + 1;
18206
+ if (l < 0) l = 0;
18207
+ if (l + $(panel).width() > $(this.#owner).width()) l = $(this.#owner).width() - $(panel).width() - 5;
18208
+
18209
+
18169
18210
 
18170
- //return;
18171
-
18172
- /**
18173
- if (this.#owner.shadowRoot.querySelectorAll('ng-filter-panel').length > 1) throw "too many ng-filter-panel";
18174
- if (!panel) throw 'ng-filter-panel is null';
18175
- */
18176
-
18177
- var cell = e.target.closest("th,td");
18178
-
18179
- var l = $(e.target).offset().left - $(this.#owner).offset().left;// - $(panel).width() + $(e.target).width() + 1;
18180
- if (l < 0) l = 0;
18181
- if (l + $(panel).width() > $(this.#owner).width()) l = $(this.#owner).width() - $(panel).width() - 5;
18182
-
18183
-
18184
-
18185
- var t = $(cell).offset().top + $(cell).height()- $(this.#owner).offset().top;//$(e.target).offset().top + $(e.target).height() + 2;
18186
-
18187
- //$(panel).offset({left: l, top: t});
18188
- $(panel).css({left: l, top: t});
18211
+ var t = $(cell).offset().top + $(cell).height()- $(this.#owner).offset().top;//$(e.target).offset().top + $(e.target).height() + 2;
18212
+
18213
+ //$(panel).offset({left: l, top: t});
18214
+ $(panel).css({left: l, top: t});
18189
18215
 
18190
- panel.refresh(this.#owner, this);
18216
+ panel.open(this.#owner, this);
18217
+ }
18191
18218
  };
18192
18219
  }
18193
18220
 
@@ -18400,12 +18427,17 @@ class ngFilterPanel extends HTMLElement
18400
18427
  }, 200);
18401
18428
  };
18402
18429
 
18403
- refresh = (owner, filterButton) => {
18430
+ close = () => {
18431
+ this.col = null;
18432
+ this.style.display = 'none';
18433
+ };
18404
18434
 
18405
- var col = filterButton.closest('th,td').dataset.col;
18406
- this.col = col;
18435
+ open = (owner, filterButton) => {
18407
18436
 
18437
+
18408
18438
 
18439
+ var col = filterButton.closest('th,td').dataset.col;
18440
+ this.col = col;
18409
18441
 
18410
18442
  //if (this.#target && this.#target.uuid == owner.uuid && this.#target.col == col && $(this).is(':visible')) {
18411
18443
  if (this.#target && this.#target.col == col && $(this).is(':visible')) ;
@@ -289,31 +289,26 @@ class ngFilterButton extends HTMLElement
289
289
  console.log(panel.isHidden, panel.col, this.closest('th,td').dataset.col);
290
290
 
291
291
  if (panel.col === this.closest('th,td').dataset.col) {
292
+ panel.col = null;
292
293
  panel.style.display = 'none';
293
- return;
294
+ panel.close();
294
295
  }
296
+ else {
297
+ var cell = e.target.closest("th,td");
298
+
299
+ var l = $(e.target).offset().left - $(this.#owner).offset().left;// - $(panel).width() + $(e.target).width() + 1;
300
+ if (l < 0) l = 0;
301
+ if (l + $(panel).width() > $(this.#owner).width()) l = $(this.#owner).width() - $(panel).width() - 5;
302
+
303
+
295
304
 
296
- //return;
297
-
298
- /**
299
- if (this.#owner.shadowRoot.querySelectorAll('ng-filter-panel').length > 1) throw "too many ng-filter-panel";
300
- if (!panel) throw 'ng-filter-panel is null';
301
- */
302
-
303
- var cell = e.target.closest("th,td");
304
-
305
- var l = $(e.target).offset().left - $(this.#owner).offset().left;// - $(panel).width() + $(e.target).width() + 1;
306
- if (l < 0) l = 0;
307
- if (l + $(panel).width() > $(this.#owner).width()) l = $(this.#owner).width() - $(panel).width() - 5;
308
-
309
-
310
-
311
- var t = $(cell).offset().top + $(cell).height()- $(this.#owner).offset().top;//$(e.target).offset().top + $(e.target).height() + 2;
312
-
313
- //$(panel).offset({left: l, top: t});
314
- $(panel).css({left: l, top: t});
305
+ var t = $(cell).offset().top + $(cell).height()- $(this.#owner).offset().top;//$(e.target).offset().top + $(e.target).height() + 2;
306
+
307
+ //$(panel).offset({left: l, top: t});
308
+ $(panel).css({left: l, top: t});
315
309
 
316
- panel.refresh(this.#owner, this);
310
+ panel.open(this.#owner, this);
311
+ }
317
312
  };
318
313
  }
319
314
 
@@ -528,12 +523,17 @@ class ngFilterPanel extends HTMLElement
528
523
  }, 200)
529
524
  };
530
525
 
531
- refresh = (owner, filterButton) => {
526
+ close = () => {
527
+ this.col = null;
528
+ this.style.display = 'none';
529
+ };
532
530
 
533
- var col = filterButton.closest('th,td').dataset.col;
534
- this.col = col;
531
+ open = (owner, filterButton) => {
535
532
 
533
+
536
534
 
535
+ var col = filterButton.closest('th,td').dataset.col;
536
+ this.col = col;
537
537
 
538
538
  //if (this.#target && this.#target.uuid == owner.uuid && this.#target.col == col && $(this).is(':visible')) {
539
539
  if (this.#target && this.#target.col == col && $(this).is(':visible')) {
@@ -18,6 +18,38 @@ export class ninegrid {
18
18
  }
19
19
  });
20
20
  }
21
+
22
+ console.log("shadow" in Element.prototype);
23
+
24
+ if (!("shadow" in Element.prototype)) {
25
+ Object.defineProperty(Element.prototype, "shadow", {
26
+ get: function () {
27
+ console.log("get");
28
+ //const style = window.getComputedStyle(this);
29
+ //console.log(this, style.display, style.visibility, style.opacity);
30
+ return function (selector) {
31
+ console.log(selector);
32
+ return "xx";
33
+ /**
34
+ let currentElement = this;
35
+
36
+ while (currentElement) {
37
+ if (currentElement.matches(selector)) return currentElement;
38
+
39
+ // ✅ Shadow Root를 가지고 있는 경우 내부에서 탐색
40
+ if (currentElement.shadowRoot) {
41
+ const found = currentElement.shadowRoot.querySelector(selector);
42
+ if (found) return found;
43
+ }
44
+
45
+ currentElement = currentElement.getRootNode()?.host || null; // ✅ Shadow DOM 내부 탐색
46
+ }
47
+
48
+ return null; */
49
+ };
50
+ }
51
+ });
52
+ }
21
53
  }
22
54
 
23
55
  static LOG = {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ninegrid2",
3
3
  "type": "module",
4
- "version": "6.162.0",
4
+ "version": "6.164.0",
5
5
  "main": "dist/index.js",
6
6
  "exports": {
7
7
  "import": "./dist/index.js",
@@ -289,31 +289,26 @@ class ngFilterButton extends HTMLElement
289
289
  console.log(panel.isHidden, panel.col, this.closest('th,td').dataset.col);
290
290
 
291
291
  if (panel.col === this.closest('th,td').dataset.col) {
292
+ panel.col = null;
292
293
  panel.style.display = 'none';
293
- return;
294
+ panel.close();
294
295
  }
296
+ else {
297
+ var cell = e.target.closest("th,td");
298
+
299
+ var l = $(e.target).offset().left - $(this.#owner).offset().left;// - $(panel).width() + $(e.target).width() + 1;
300
+ if (l < 0) l = 0;
301
+ if (l + $(panel).width() > $(this.#owner).width()) l = $(this.#owner).width() - $(panel).width() - 5;
302
+
303
+
295
304
 
296
- //return;
297
-
298
- /**
299
- if (this.#owner.shadowRoot.querySelectorAll('ng-filter-panel').length > 1) throw "too many ng-filter-panel";
300
- if (!panel) throw 'ng-filter-panel is null';
301
- */
302
-
303
- var cell = e.target.closest("th,td");
304
-
305
- var l = $(e.target).offset().left - $(this.#owner).offset().left;// - $(panel).width() + $(e.target).width() + 1;
306
- if (l < 0) l = 0;
307
- if (l + $(panel).width() > $(this.#owner).width()) l = $(this.#owner).width() - $(panel).width() - 5;
308
-
309
-
310
-
311
- var t = $(cell).offset().top + $(cell).height()- $(this.#owner).offset().top;//$(e.target).offset().top + $(e.target).height() + 2;
312
-
313
- //$(panel).offset({left: l, top: t});
314
- $(panel).css({left: l, top: t});
305
+ var t = $(cell).offset().top + $(cell).height()- $(this.#owner).offset().top;//$(e.target).offset().top + $(e.target).height() + 2;
306
+
307
+ //$(panel).offset({left: l, top: t});
308
+ $(panel).css({left: l, top: t});
315
309
 
316
- panel.refresh(this.#owner, this);
310
+ panel.open(this.#owner, this);
311
+ }
317
312
  };
318
313
  }
319
314
 
@@ -528,12 +523,17 @@ class ngFilterPanel extends HTMLElement
528
523
  }, 200)
529
524
  };
530
525
 
531
- refresh = (owner, filterButton) => {
526
+ close = () => {
527
+ this.col = null;
528
+ this.style.display = 'none';
529
+ };
532
530
 
533
- var col = filterButton.closest('th,td').dataset.col;
534
- this.col = col;
531
+ open = (owner, filterButton) => {
535
532
 
533
+
536
534
 
535
+ var col = filterButton.closest('th,td').dataset.col;
536
+ this.col = col;
537
537
 
538
538
  //if (this.#target && this.#target.uuid == owner.uuid && this.#target.col == col && $(this).is(':visible')) {
539
539
  if (this.#target && this.#target.col == col && $(this).is(':visible')) {
@@ -18,6 +18,38 @@ export class ninegrid {
18
18
  }
19
19
  });
20
20
  }
21
+
22
+ console.log("shadow" in Element.prototype);
23
+
24
+ if (!("shadow" in Element.prototype)) {
25
+ Object.defineProperty(Element.prototype, "shadow", {
26
+ get: function () {
27
+ console.log("get");
28
+ //const style = window.getComputedStyle(this);
29
+ //console.log(this, style.display, style.visibility, style.opacity);
30
+ return function (selector) {
31
+ console.log(selector);
32
+ return "xx";
33
+ /**
34
+ let currentElement = this;
35
+
36
+ while (currentElement) {
37
+ if (currentElement.matches(selector)) return currentElement;
38
+
39
+ // ✅ Shadow Root를 가지고 있는 경우 내부에서 탐색
40
+ if (currentElement.shadowRoot) {
41
+ const found = currentElement.shadowRoot.querySelector(selector);
42
+ if (found) return found;
43
+ }
44
+
45
+ currentElement = currentElement.getRootNode()?.host || null; // ✅ Shadow DOM 내부 탐색
46
+ }
47
+
48
+ return null; */
49
+ };
50
+ }
51
+ });
52
+ }
21
53
  }
22
54
 
23
55
  static LOG = {