html-combobox-element 0.0.2-beta.10 → 0.0.2-beta.11

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.
@@ -65,6 +65,9 @@ class HTMLComboboxElement extends HTMLElement {
65
65
  }
66
66
  return node;
67
67
  };
68
+ appendChild(node) {
69
+ return this.insertBefore(node, null);
70
+ }
68
71
  removeChild(child) {
69
72
  // console.log(child, 'removed')
70
73
  return child;
@@ -16,8 +16,8 @@ class HTMLComboboxTagElement extends HTMLElement {
16
16
  control?.addEventListener('focusout', HTMLComboboxTagElement.captureFocus);
17
17
  control?.addEventListener('click', HTMLComboboxTagElement.onClearTag);
18
18
  const root = this.getRootNode();
19
- if (root?.host.hasAttribute('multiple')) {
20
- if (!control) {
19
+ if (root instanceof ShadowRoot) {
20
+ if (root.host.hasAttribute('multiple') && !control) {
21
21
  throw new Error(`A <button> with part="clear-tag" is required for <combo-box> with multiple attribute`);
22
22
  }
23
23
  }
@@ -28,8 +28,8 @@ class HTMLComboboxTagElement extends HTMLElement {
28
28
  control?.removeEventListener('click', HTMLComboboxTagElement.onClearTag);
29
29
  }
30
30
  static onClearTag(event) {
31
- const target = event.target;
32
- target?.parentElement?.dispatchEvent(new Event('tagcleared', HTMLComboboxTagElement.EventInit));
31
+ const [target] = event.composedPath().filter(el => el instanceof HTMLComboboxTagElement);
32
+ target?.dispatchEvent(new Event('tagcleared', HTMLComboboxTagElement.EventInit));
33
33
  }
34
34
  static captureFocus(event) {
35
35
  event.stopPropagation();
@@ -61,6 +61,9 @@ export class HTMLComboboxElement extends HTMLElement {
61
61
  }
62
62
  return node;
63
63
  };
64
+ appendChild(node) {
65
+ return this.insertBefore(node, null);
66
+ }
64
67
  removeChild(child) {
65
68
  // console.log(child, 'removed')
66
69
  return child;
@@ -13,8 +13,8 @@ export class HTMLComboboxTagElement extends HTMLElement {
13
13
  control?.addEventListener('focusout', HTMLComboboxTagElement.captureFocus);
14
14
  control?.addEventListener('click', HTMLComboboxTagElement.onClearTag);
15
15
  const root = this.getRootNode();
16
- if (root?.host.hasAttribute('multiple')) {
17
- if (!control) {
16
+ if (root instanceof ShadowRoot) {
17
+ if (root.host.hasAttribute('multiple') && !control) {
18
18
  throw new Error(`A <button> with part="clear-tag" is required for <combo-box> with multiple attribute`);
19
19
  }
20
20
  }
@@ -25,8 +25,8 @@ export class HTMLComboboxTagElement extends HTMLElement {
25
25
  control?.removeEventListener('click', HTMLComboboxTagElement.onClearTag);
26
26
  }
27
27
  static onClearTag(event) {
28
- const target = event.target;
29
- target?.parentElement?.dispatchEvent(new Event('tagcleared', HTMLComboboxTagElement.EventInit));
28
+ const [target] = event.composedPath().filter(el => el instanceof HTMLComboboxTagElement);
29
+ target?.dispatchEvent(new Event('tagcleared', HTMLComboboxTagElement.EventInit));
30
30
  }
31
31
  static captureFocus(event) {
32
32
  event.stopPropagation();
@@ -11,6 +11,7 @@ export declare class HTMLComboboxElement extends HTMLElement {
11
11
  constructor();
12
12
  connectedCallback(): void;
13
13
  insertBefore: (node: Node, referenceNode: Node | null) => any;
14
+ appendChild(node: Node): any;
14
15
  removeChild<T extends Node>(child: T): T;
15
16
  get changed(): boolean;
16
17
  disconnectedCallback(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"HTML.combobox.element.d.ts","sourceRoot":"","sources":["../../../src/combobox/HTML.combobox.element.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAI9E,qBAAa,mBAAoB,SAAQ,WAAW;;IAClD,MAAM,CAAC,OAAO,cAA0H;IACxI,MAAM,CAAC,eAAe;;MAAuB;IAC7C,MAAM,CAAC,UAAU,kBAAuB;IACxC,MAAM,CAAC,cAAc,UAAQ;IAE7B,UAAU,EAAE,UAAU,CAAC;;IA8BvB,iBAAiB;IAqBjB,YAAY,GAAI,MAAM,IAAI,EAAE,eAAe,IAAI,GAAG,IAAI,KAWrC,GAAG,CACnB;IAED,WAAW,CAAC,CAAC,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;IAKxC,IAAI,OAAO,YAEV;IAED,oBAAoB;IAWpB,iBAAiB;IAMjB,oBAAoB;IASpB,IAAI,YAAY,aAEf;IAED,IAAI,KAAK,IAGQ,MAAM,CADtB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAMtB;IAED,IAAI,WAAW,WAEd;IACD,IAAI,WAAW,CAAC,KAAK,QAAA,EAKpB;IAED,IAAI,SAAS,YAEZ;IACD,IAAI,SAAS,CAAC,KAAK,SAAA,EAElB;IAED,IAAI,UAAU,YAEb;IACD,IAAI,UAAU,CAAC,KAAK,SAAA,EAEnB;IAED,IAAI,UAAU,YAEb;IACD,IAAI,UAAU,CAAC,KAAK,SAAA,EAEnB;IAGD,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,CAAC,KAAK,SAAA,EAKjB;IAED,IAAI,IAAI,oBAEP;IAED,IAAI,MAAM,aAET;IAED,IAAI,MAAM,WAET;IAED,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,CAAC,KAAK,SAAA,EAEjB;IAKD,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,CAAC,KAAK,SAAA,EAGjB;IAID,IAAI,eAAe,0CAElB;IAMD,IAAI,IAAI,qCAEP;IAED,IAAI,iBAAiB,WAEpB;IAED,IAAI,QAAQ,kBAEX;IAED,IAAI,YAAY,YAEf;IAED,IAAI,KAAK,IAGQ,MAAM,CADtB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAQtB;IAQD,aAAa;IAIb,IAAI,CAAC,KAAK,EAAE,MAAM;IASlB,cAAc;IAId,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAQjC,UAAU;IAKV,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQrC,eAAe,CAAC,IAAI,EAAE,MAAM;IA6L5B,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE;IAIrC,MAAM,CAAC,8BAA8B;CAoBtC"}
1
+ {"version":3,"file":"HTML.combobox.element.d.ts","sourceRoot":"","sources":["../../../src/combobox/HTML.combobox.element.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAI9E,qBAAa,mBAAoB,SAAQ,WAAW;;IAClD,MAAM,CAAC,OAAO,cAA0H;IACxI,MAAM,CAAC,eAAe;;MAAuB;IAC7C,MAAM,CAAC,UAAU,kBAAuB;IACxC,MAAM,CAAC,cAAc,UAAQ;IAE7B,UAAU,EAAE,UAAU,CAAC;;IA8BvB,iBAAiB;IAqBjB,YAAY,GAAI,MAAM,IAAI,EAAE,eAAe,IAAI,GAAG,IAAI,KAWrC,GAAG,CACnB;IAED,WAAW,CAAC,IAAI,EAAE,IAAI;IAItB,WAAW,CAAC,CAAC,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;IAKxC,IAAI,OAAO,YAEV;IAED,oBAAoB;IAWpB,iBAAiB;IAMjB,oBAAoB;IASpB,IAAI,YAAY,aAEf;IAED,IAAI,KAAK,IAGQ,MAAM,CADtB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAMtB;IAED,IAAI,WAAW,WAEd;IACD,IAAI,WAAW,CAAC,KAAK,QAAA,EAKpB;IAED,IAAI,SAAS,YAEZ;IACD,IAAI,SAAS,CAAC,KAAK,SAAA,EAElB;IAED,IAAI,UAAU,YAEb;IACD,IAAI,UAAU,CAAC,KAAK,SAAA,EAEnB;IAED,IAAI,UAAU,YAEb;IACD,IAAI,UAAU,CAAC,KAAK,SAAA,EAEnB;IAGD,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,CAAC,KAAK,SAAA,EAKjB;IAED,IAAI,IAAI,oBAEP;IAED,IAAI,MAAM,aAET;IAED,IAAI,MAAM,WAET;IAED,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,CAAC,KAAK,SAAA,EAEjB;IAKD,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,CAAC,KAAK,SAAA,EAGjB;IAID,IAAI,eAAe,0CAElB;IAMD,IAAI,IAAI,qCAEP;IAED,IAAI,iBAAiB,WAEpB;IAED,IAAI,QAAQ,kBAEX;IAED,IAAI,YAAY,YAEf;IAED,IAAI,KAAK,IAGQ,MAAM,CADtB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAQtB;IAQD,aAAa;IAIb,IAAI,CAAC,KAAK,EAAE,MAAM;IASlB,cAAc;IAId,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAQjC,UAAU;IAKV,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQrC,eAAe,CAAC,IAAI,EAAE,MAAM;IA6L5B,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE;IAIrC,MAAM,CAAC,8BAA8B;CAoBtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"HTML.combobox.tag.element.d.ts","sourceRoot":"","sources":["../../../src/combobox/HTML.combobox.tag.element.ts"],"names":[],"mappings":"AAAA,qBAAa,sBAAuB,SAAQ,WAAW;IACrD,MAAM,CAAC,SAAS;;;;MAAuD;IAEvE,IAAI,KAAK,WAER;IAED,iBAAiB;IAkBjB,oBAAoB;IAMpB,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK;IAK9B,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK;CAIjC"}
1
+ {"version":3,"file":"HTML.combobox.tag.element.d.ts","sourceRoot":"","sources":["../../../src/combobox/HTML.combobox.tag.element.ts"],"names":[],"mappings":"AAAA,qBAAa,sBAAuB,SAAQ,WAAW;IACrD,MAAM,CAAC,SAAS;;;;MAAuD;IAEvE,IAAI,KAAK,WAER;IAED,iBAAiB;IAmBjB,oBAAoB;IAMpB,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK;IAK9B,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK;CAIjC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "html-combobox-element",
3
- "version": "0.0.2-beta.10",
3
+ "version": "0.0.2-beta.11",
4
4
  "description": "The combo-box web-component & customizable select polyfill",
5
5
  "type": "module",
6
6
  "scripts": {