happy-dom 15.8.1 → 15.8.3

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.

Potentially problematic release.


This version of happy-dom might be problematic. Click here for more details.

@@ -29,6 +29,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
29
29
  const Event_js_1 = __importDefault(require("../../event/Event.cjs"));
30
30
  const HTMLElement_js_1 = __importDefault(require("../html-element/HTMLElement.cjs"));
31
31
  const PropertySymbol = __importStar(require("../../PropertySymbol.cjs"));
32
+ const EventPhaseEnum_js_1 = __importDefault(require("../../event/EventPhaseEnum.cjs"));
33
+ const MouseEvent_js_1 = __importDefault(require("../../event/events/MouseEvent.cjs"));
32
34
  /**
33
35
  * HTMLDetailsElement
34
36
  *
@@ -76,6 +78,20 @@ class HTMLDetailsElement extends HTMLElement_js_1.default {
76
78
  this.dispatchEvent(new Event_js_1.default('toggle'));
77
79
  }
78
80
  }
81
+ /**
82
+ * @override
83
+ */
84
+ dispatchEvent(event) {
85
+ const returnValue = super.dispatchEvent(event);
86
+ if (!event[PropertySymbol.defaultPrevented] &&
87
+ event[PropertySymbol.target]?.[PropertySymbol.localName] === 'summary' &&
88
+ event.type === 'click' &&
89
+ event.eventPhase === EventPhaseEnum_js_1.default.bubbling &&
90
+ event instanceof MouseEvent_js_1.default) {
91
+ this.open = !this.open;
92
+ }
93
+ return returnValue;
94
+ }
79
95
  }
80
96
  exports.default = HTMLDetailsElement;
81
97
  //# sourceMappingURL=HTMLDetailsElement.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"HTMLDetailsElement.cjs","sourceRoot":"","sources":["../../../src/nodes/html-details-element/HTMLDetailsElement.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAAyC;AACzC,oFAAyD;AACzD,wEAA0D;AAG1D;;;;GAIG;AACH,MAAqB,kBAAmB,SAAQ,wBAAW;IAC1D,SAAS;IACF,QAAQ,GAAkC,IAAI,CAAC;IAEtD;;OAEG;IACH,IAAW,IAAI;QACd,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAa;QAC5B,IAAI,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,cAAc,CAAC,CAC9C,SAAe,EACf,iBAA8B;QAE9B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACnE,IAAI,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC/C,IAAI,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,iBAAiB,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnF,IAAI,CAAC,aAAa,CAAC,IAAI,kBAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACzC,CAAC;QACF,CAAC;IACF,CAAC;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAsB;QACxE,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,CAAC,CAAC;QAC1D,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC1E,IAAI,CAAC,aAAa,CAAC,IAAI,kBAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;CACD;AAhDD,qCAgDC"}
1
+ {"version":3,"file":"HTMLDetailsElement.cjs","sourceRoot":"","sources":["../../../src/nodes/html-details-element/HTMLDetailsElement.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAAyC;AACzC,oFAAyD;AACzD,wEAA0D;AAE1D,sFAA2D;AAC3D,qFAA0D;AAE1D;;;;GAIG;AACH,MAAqB,kBAAmB,SAAQ,wBAAW;IAC1D,SAAS;IACF,QAAQ,GAAkC,IAAI,CAAC;IAEtD;;OAEG;IACH,IAAW,IAAI;QACd,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAa;QAC5B,IAAI,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,cAAc,CAAC,CAC9C,SAAe,EACf,iBAA8B;QAE9B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACnE,IAAI,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC/C,IAAI,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,iBAAiB,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnF,IAAI,CAAC,aAAa,CAAC,IAAI,kBAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACzC,CAAC;QACF,CAAC;IACF,CAAC;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAsB;QACxE,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,CAAC,CAAC;QAC1D,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC1E,IAAI,CAAC,aAAa,CAAC,IAAI,kBAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;IAED;;OAEG;IACa,aAAa,CAAC,KAAY;QACzC,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE/C,IACC,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC;YACvC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,SAAS;YACtE,KAAK,CAAC,IAAI,KAAK,OAAO;YACtB,KAAK,CAAC,UAAU,KAAK,2BAAc,CAAC,QAAQ;YAC5C,KAAK,YAAY,uBAAU,EAC1B,CAAC;YACF,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QACxB,CAAC;QAED,OAAO,WAAW,CAAC;IACpB,CAAC;CACD;AAnED,qCAmEC"}
@@ -27,5 +27,9 @@ export default class HTMLDetailsElement extends HTMLElement {
27
27
  * @override
28
28
  */
29
29
  [PropertySymbol.onRemoveAttribute](removedAttribute: Attr): void;
30
+ /**
31
+ * @override
32
+ */
33
+ dispatchEvent(event: Event): boolean;
30
34
  }
31
35
  //# sourceMappingURL=HTMLDetailsElement.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HTMLDetailsElement.d.ts","sourceRoot":"","sources":["../../../src/nodes/html-details-element/HTMLDetailsElement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAC1D,OAAO,IAAI,MAAM,iBAAiB,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,WAAW;IAEnD,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAQ;IAEtD;;OAEG;IACH,IAAW,IAAI,IAAI,OAAO,CAEzB;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAI,EAAE,OAAO,EAM5B;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,cAAc,CAAC,CAC9C,SAAS,EAAE,IAAI,EACf,iBAAiB,EAAE,IAAI,GAAG,IAAI,GAC5B,IAAI;IASP;;OAEG;IACa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,EAAE,IAAI,GAAG,IAAI;CAMhF"}
1
+ {"version":3,"file":"HTMLDetailsElement.d.ts","sourceRoot":"","sources":["../../../src/nodes/html-details-element/HTMLDetailsElement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAC1D,OAAO,IAAI,MAAM,iBAAiB,CAAC;AAInC;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,WAAW;IAEnD,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAQ;IAEtD;;OAEG;IACH,IAAW,IAAI,IAAI,OAAO,CAEzB;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAI,EAAE,OAAO,EAM5B;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,cAAc,CAAC,CAC9C,SAAS,EAAE,IAAI,EACf,iBAAiB,EAAE,IAAI,GAAG,IAAI,GAC5B,IAAI;IASP;;OAEG;IACa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,EAAE,IAAI,GAAG,IAAI;IAOhF;;OAEG;IACa,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;CAepD"}
@@ -27,5 +27,9 @@ export default class HTMLDetailsElement extends HTMLElement {
27
27
  * @override
28
28
  */
29
29
  [PropertySymbol.onRemoveAttribute](removedAttribute: Attr): void;
30
+ /**
31
+ * @override
32
+ */
33
+ dispatchEvent(event: Event): boolean;
30
34
  }
31
35
  //# sourceMappingURL=HTMLDetailsElement.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HTMLDetailsElement.d.ts","sourceRoot":"","sources":["../../../src/nodes/html-details-element/HTMLDetailsElement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAC1D,OAAO,IAAI,MAAM,iBAAiB,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,WAAW;IAEnD,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAQ;IAEtD;;OAEG;IACH,IAAW,IAAI,IAAI,OAAO,CAEzB;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAI,EAAE,OAAO,EAM5B;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,cAAc,CAAC,CAC9C,SAAS,EAAE,IAAI,EACf,iBAAiB,EAAE,IAAI,GAAG,IAAI,GAC5B,IAAI;IASP;;OAEG;IACa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,EAAE,IAAI,GAAG,IAAI;CAMhF"}
1
+ {"version":3,"file":"HTMLDetailsElement.d.ts","sourceRoot":"","sources":["../../../src/nodes/html-details-element/HTMLDetailsElement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAC1D,OAAO,IAAI,MAAM,iBAAiB,CAAC;AAInC;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,WAAW;IAEnD,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAQ;IAEtD;;OAEG;IACH,IAAW,IAAI,IAAI,OAAO,CAEzB;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAI,EAAE,OAAO,EAM5B;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,cAAc,CAAC,CAC9C,SAAS,EAAE,IAAI,EACf,iBAAiB,EAAE,IAAI,GAAG,IAAI,GAC5B,IAAI;IASP;;OAEG;IACa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,EAAE,IAAI,GAAG,IAAI;IAOhF;;OAEG;IACa,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;CAepD"}
@@ -1,6 +1,8 @@
1
1
  import Event from '../../event/Event.js';
2
2
  import HTMLElement from '../html-element/HTMLElement.js';
3
3
  import * as PropertySymbol from '../../PropertySymbol.js';
4
+ import EventPhaseEnum from '../../event/EventPhaseEnum.js';
5
+ import MouseEvent from '../../event/events/MouseEvent.js';
4
6
  /**
5
7
  * HTMLDetailsElement
6
8
  *
@@ -48,5 +50,19 @@ export default class HTMLDetailsElement extends HTMLElement {
48
50
  this.dispatchEvent(new Event('toggle'));
49
51
  }
50
52
  }
53
+ /**
54
+ * @override
55
+ */
56
+ dispatchEvent(event) {
57
+ const returnValue = super.dispatchEvent(event);
58
+ if (!event[PropertySymbol.defaultPrevented] &&
59
+ event[PropertySymbol.target]?.[PropertySymbol.localName] === 'summary' &&
60
+ event.type === 'click' &&
61
+ event.eventPhase === EventPhaseEnum.bubbling &&
62
+ event instanceof MouseEvent) {
63
+ this.open = !this.open;
64
+ }
65
+ return returnValue;
66
+ }
51
67
  }
52
68
  //# sourceMappingURL=HTMLDetailsElement.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HTMLDetailsElement.js","sourceRoot":"","sources":["../../../src/nodes/html-details-element/HTMLDetailsElement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAG1D;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,WAAW;IAC1D,SAAS;IACF,QAAQ,GAAkC,IAAI,CAAC;IAEtD;;OAEG;IACH,IAAW,IAAI;QACd,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAa;QAC5B,IAAI,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,cAAc,CAAC,CAC9C,SAAe,EACf,iBAA8B;QAE9B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACnE,IAAI,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC/C,IAAI,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,iBAAiB,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnF,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACzC,CAAC;QACF,CAAC;IACF,CAAC;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAsB;QACxE,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,CAAC,CAAC;QAC1D,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC1E,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;CACD"}
1
+ {"version":3,"file":"HTMLDetailsElement.js","sourceRoot":"","sources":["../../../src/nodes/html-details-element/HTMLDetailsElement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAE1D,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,UAAU,MAAM,kCAAkC,CAAC;AAE1D;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,WAAW;IAC1D,SAAS;IACF,QAAQ,GAAkC,IAAI,CAAC;IAEtD;;OAEG;IACH,IAAW,IAAI;QACd,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAa;QAC5B,IAAI,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,cAAc,CAAC,CAC9C,SAAe,EACf,iBAA8B;QAE9B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACnE,IAAI,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC/C,IAAI,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,iBAAiB,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnF,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACzC,CAAC;QACF,CAAC;IACF,CAAC;IAED;;OAEG;IACa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAsB;QACxE,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,CAAC,CAAC;QAC1D,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC1E,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;IAED;;OAEG;IACa,aAAa,CAAC,KAAY;QACzC,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE/C,IACC,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC;YACvC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,SAAS;YACtE,KAAK,CAAC,IAAI,KAAK,OAAO;YACtB,KAAK,CAAC,UAAU,KAAK,cAAc,CAAC,QAAQ;YAC5C,KAAK,YAAY,UAAU,EAC1B,CAAC;YACF,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QACxB,CAAC;QAED,OAAO,WAAW,CAAC;IACpB,CAAC;CACD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "happy-dom",
3
- "version": "15.8.1",
3
+ "version": "15.8.3",
4
4
  "license": "MIT",
5
5
  "homepage": "https://github.com/capricorn86/happy-dom",
6
6
  "repository": "https://github.com/capricorn86/happy-dom",
@@ -2,6 +2,8 @@ import Event from '../../event/Event.js';
2
2
  import HTMLElement from '../html-element/HTMLElement.js';
3
3
  import * as PropertySymbol from '../../PropertySymbol.js';
4
4
  import Attr from '../attr/Attr.js';
5
+ import EventPhaseEnum from '../../event/EventPhaseEnum.js';
6
+ import MouseEvent from '../../event/events/MouseEvent.js';
5
7
 
6
8
  /**
7
9
  * HTMLDetailsElement
@@ -56,4 +58,23 @@ export default class HTMLDetailsElement extends HTMLElement {
56
58
  this.dispatchEvent(new Event('toggle'));
57
59
  }
58
60
  }
61
+
62
+ /**
63
+ * @override
64
+ */
65
+ public override dispatchEvent(event: Event): boolean {
66
+ const returnValue = super.dispatchEvent(event);
67
+
68
+ if (
69
+ !event[PropertySymbol.defaultPrevented] &&
70
+ event[PropertySymbol.target]?.[PropertySymbol.localName] === 'summary' &&
71
+ event.type === 'click' &&
72
+ event.eventPhase === EventPhaseEnum.bubbling &&
73
+ event instanceof MouseEvent
74
+ ) {
75
+ this.open = !this.open;
76
+ }
77
+
78
+ return returnValue;
79
+ }
59
80
  }