happy-dom 7.2.0 → 7.4.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.

Potentially problematic release.


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

Files changed (127) hide show
  1. package/lib/event/EventTarget.d.ts +14 -1
  2. package/lib/event/EventTarget.js +16 -1
  3. package/lib/event/EventTarget.js.map +1 -1
  4. package/lib/event/IEventTarget.d.ts +20 -0
  5. package/lib/event/NonImplementedEventTypes.js +2 -1
  6. package/lib/event/NonImplementedEventTypes.js.map +1 -1
  7. package/lib/fetch/IRequestInit.d.ts +1 -0
  8. package/lib/form-data/IFormData.d.ts +2 -0
  9. package/lib/index.d.ts +5 -1
  10. package/lib/index.js +5 -1
  11. package/lib/index.js.map +1 -1
  12. package/lib/nodes/attr/Attr.d.ts +1 -0
  13. package/lib/nodes/attr/Attr.js +1 -0
  14. package/lib/nodes/attr/Attr.js.map +1 -1
  15. package/lib/nodes/document/Document.d.ts +118 -1
  16. package/lib/nodes/document/Document.js +131 -1
  17. package/lib/nodes/document/Document.js.map +1 -1
  18. package/lib/nodes/document/IDocument.d.ts +118 -1
  19. package/lib/nodes/element/Element.d.ts +36 -0
  20. package/lib/nodes/element/Element.js +36 -0
  21. package/lib/nodes/element/Element.js.map +1 -1
  22. package/lib/nodes/element/IElement.d.ts +36 -0
  23. package/lib/nodes/html-dialog-element/HTMLDialogElement.d.ts +3 -0
  24. package/lib/nodes/html-dialog-element/HTMLDialogElement.js +3 -0
  25. package/lib/nodes/html-dialog-element/HTMLDialogElement.js.map +1 -1
  26. package/lib/nodes/html-dialog-element/IHTMLDialogElement.d.ts +3 -0
  27. package/lib/nodes/html-element/HTMLElement.d.ts +26 -0
  28. package/lib/nodes/html-element/HTMLElement.js +26 -0
  29. package/lib/nodes/html-element/HTMLElement.js.map +1 -1
  30. package/lib/nodes/html-element/IHTMLElement.d.ts +26 -0
  31. package/lib/nodes/html-form-element/HTMLFormElement.d.ts +4 -0
  32. package/lib/nodes/html-form-element/HTMLFormElement.js +7 -0
  33. package/lib/nodes/html-form-element/HTMLFormElement.js.map +1 -1
  34. package/lib/nodes/html-form-element/IHTMLFormElement.d.ts +4 -0
  35. package/lib/nodes/html-input-element/HTMLInputElement.d.ts +4 -0
  36. package/lib/nodes/html-input-element/HTMLInputElement.js +4 -0
  37. package/lib/nodes/html-input-element/HTMLInputElement.js.map +1 -1
  38. package/lib/nodes/html-input-element/IHTMLInputElement.d.ts +4 -0
  39. package/lib/nodes/html-media-element/HTMLMediaElement.d.ts +23 -8
  40. package/lib/nodes/html-media-element/HTMLMediaElement.js +15 -0
  41. package/lib/nodes/html-media-element/HTMLMediaElement.js.map +1 -1
  42. package/lib/nodes/html-media-element/IHTMLMediaElement.d.ts +24 -0
  43. package/lib/nodes/html-select-element/HTMLSelectElement.d.ts +3 -0
  44. package/lib/nodes/html-select-element/HTMLSelectElement.js +3 -0
  45. package/lib/nodes/html-select-element/HTMLSelectElement.js.map +1 -1
  46. package/lib/nodes/html-select-element/IHTMLSelectElement.d.ts +3 -0
  47. package/lib/nodes/html-slot-element/HTMLSlotElement.d.ts +2 -0
  48. package/lib/nodes/html-slot-element/HTMLSlotElement.js +5 -0
  49. package/lib/nodes/html-slot-element/HTMLSlotElement.js.map +1 -1
  50. package/lib/nodes/html-slot-element/IHTMLSlotElement.d.ts +2 -0
  51. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts +4 -1
  52. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js +4 -1
  53. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js.map +1 -1
  54. package/lib/nodes/html-text-area-element/IHTMLTextAreaElement.d.ts +3 -0
  55. package/lib/nodes/node/INode.d.ts +8 -0
  56. package/lib/nodes/node/Node.d.ts +20 -0
  57. package/lib/nodes/node/Node.js +154 -0
  58. package/lib/nodes/node/Node.js.map +1 -1
  59. package/lib/nodes/node/NodeDocumentPositionEnum.d.ts +9 -0
  60. package/lib/nodes/node/NodeDocumentPositionEnum.js +13 -0
  61. package/lib/nodes/node/NodeDocumentPositionEnum.js.map +1 -0
  62. package/lib/nodes/node/NodeUtility.d.ts +16 -0
  63. package/lib/nodes/node/NodeUtility.js +100 -0
  64. package/lib/nodes/node/NodeUtility.js.map +1 -1
  65. package/lib/nodes/processing-instruction/IProcessingInstruction.d.ts +4 -0
  66. package/lib/nodes/processing-instruction/IProcessingInstruction.js +3 -0
  67. package/lib/nodes/processing-instruction/IProcessingInstruction.js.map +1 -0
  68. package/lib/nodes/processing-instruction/ProcessingInstruction.d.ts +12 -0
  69. package/lib/nodes/processing-instruction/ProcessingInstruction.js +20 -0
  70. package/lib/nodes/processing-instruction/ProcessingInstruction.js.map +1 -0
  71. package/lib/nodes/shadow-root/IShadowRoot.d.ts +2 -0
  72. package/lib/nodes/shadow-root/ShadowRoot.d.ts +2 -0
  73. package/lib/nodes/shadow-root/ShadowRoot.js +2 -0
  74. package/lib/nodes/shadow-root/ShadowRoot.js.map +1 -1
  75. package/lib/nodes/svg-element/ISVGElement.d.ts +7 -0
  76. package/lib/nodes/svg-element/ISVGSVGElement.d.ts +19 -0
  77. package/lib/nodes/svg-element/SVGElement.d.ts +7 -0
  78. package/lib/nodes/svg-element/SVGElement.js +7 -0
  79. package/lib/nodes/svg-element/SVGElement.js.map +1 -1
  80. package/lib/nodes/svg-element/SVGSVGElement.d.ts +19 -0
  81. package/lib/nodes/svg-element/SVGSVGElement.js +22 -0
  82. package/lib/nodes/svg-element/SVGSVGElement.js.map +1 -1
  83. package/lib/window/GlobalWindow.d.ts +2 -0
  84. package/lib/window/IWindow.d.ts +6 -0
  85. package/lib/window/Window.d.ts +5 -0
  86. package/lib/window/Window.js +2 -0
  87. package/lib/window/Window.js.map +1 -1
  88. package/package.json +2 -2
  89. package/src/event/EventTarget.ts +17 -1
  90. package/src/event/IEventTarget.ts +22 -0
  91. package/src/event/NonImplementedEventTypes.ts +2 -1
  92. package/src/index.ts +9 -1
  93. package/src/nodes/attr/Attr.ts +1 -0
  94. package/src/nodes/document/Document.ts +139 -1
  95. package/src/nodes/document/IDocument.ts +121 -1
  96. package/src/nodes/element/Element.ts +38 -0
  97. package/src/nodes/element/IElement.ts +38 -0
  98. package/src/nodes/html-dialog-element/HTMLDialogElement.ts +4 -0
  99. package/src/nodes/html-dialog-element/IHTMLDialogElement.ts +5 -0
  100. package/src/nodes/html-element/HTMLElement.ts +28 -0
  101. package/src/nodes/html-element/IHTMLElement.ts +28 -0
  102. package/src/nodes/html-form-element/HTMLFormElement.ts +6 -0
  103. package/src/nodes/html-form-element/IHTMLFormElement.ts +6 -0
  104. package/src/nodes/html-input-element/HTMLInputElement.ts +5 -0
  105. package/src/nodes/html-input-element/IHTMLInputElement.ts +6 -0
  106. package/src/nodes/html-media-element/HTMLMediaElement.ts +23 -8
  107. package/src/nodes/html-media-element/IHTMLMediaElement.ts +26 -0
  108. package/src/nodes/html-select-element/HTMLSelectElement.ts +5 -0
  109. package/src/nodes/html-select-element/IHTMLSelectElement.ts +5 -0
  110. package/src/nodes/html-slot-element/HTMLSlotElement.ts +4 -0
  111. package/src/nodes/html-slot-element/IHTMLSlotElement.ts +4 -0
  112. package/src/nodes/html-text-area-element/HTMLTextAreaElement.ts +6 -1
  113. package/src/nodes/html-text-area-element/IHTMLTextAreaElement.ts +5 -0
  114. package/src/nodes/node/INode.ts +8 -0
  115. package/src/nodes/node/Node.ts +191 -1
  116. package/src/nodes/node/NodeDocumentPositionEnum.ts +10 -0
  117. package/src/nodes/node/NodeUtility.ts +137 -0
  118. package/src/nodes/processing-instruction/IProcessingInstruction.ts +5 -0
  119. package/src/nodes/processing-instruction/ProcessingInstruction.ts +13 -0
  120. package/src/nodes/shadow-root/IShadowRoot.ts +4 -0
  121. package/src/nodes/shadow-root/ShadowRoot.ts +4 -0
  122. package/src/nodes/svg-element/ISVGElement.ts +9 -0
  123. package/src/nodes/svg-element/ISVGSVGElement.ts +21 -0
  124. package/src/nodes/svg-element/SVGElement.ts +9 -0
  125. package/src/nodes/svg-element/SVGSVGElement.ts +21 -0
  126. package/src/window/IWindow.ts +2 -0
  127. package/src/window/Window.ts +2 -0
@@ -15,6 +15,28 @@ const SVGAnimatedRect_1 = __importDefault(require("./SVGAnimatedRect"));
15
15
  * SVGSVGElement.
16
16
  */
17
17
  class SVGSVGElement extends SVGGraphicsElement_1.default {
18
+ constructor() {
19
+ super(...arguments);
20
+ // Events
21
+ this.onafterprint = null;
22
+ this.onbeforeprint = null;
23
+ this.onbeforeunload = null;
24
+ this.ongamepadconnected = null;
25
+ this.ongamepaddisconnected = null;
26
+ this.onhashchange = null;
27
+ this.onlanguagechange = null;
28
+ this.onmessage = null;
29
+ this.onmessageerror = null;
30
+ this.onoffline = null;
31
+ this.ononline = null;
32
+ this.onpagehide = null;
33
+ this.onpageshow = null;
34
+ this.onpopstate = null;
35
+ this.onrejectionhandled = null;
36
+ this.onstorage = null;
37
+ this.onunhandledrejection = null;
38
+ this.onunload = null;
39
+ }
18
40
  /**
19
41
  * Returns preserveAspectRatio.
20
42
  *
@@ -1 +1 @@
1
- {"version":3,"file":"SVGSVGElement.js","sourceRoot":"","sources":["../../../src/nodes/svg-element/SVGSVGElement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SVGSVGElement.js","sourceRoot":"","sources":["../../../src/nodes/svg-element/SVGSVGElement.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /// <reference types="node" />
2
4
  import Window from './Window';
3
5
  /**
4
6
  * Browser window.
@@ -1,4 +1,8 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /// <reference types="node" />
4
+ /// <reference types="node" />
5
+ /// <reference types="node" />
2
6
  import CustomElementRegistry from '../custom-element/CustomElementRegistry';
3
7
  import Document from '../nodes/document/Document';
4
8
  import HTMLDocument from '../nodes/html-document/HTMLDocument';
@@ -99,6 +103,7 @@ import Attr from '../nodes/attr/Attr';
99
103
  import { URLSearchParams } from 'url';
100
104
  import { Performance } from 'perf_hooks';
101
105
  import IElement from '../nodes/element/IElement';
106
+ import ProcessingInstruction from '../nodes/processing-instruction/ProcessingInstruction';
102
107
  /**
103
108
  * Window without dependencies to server side specific packages.
104
109
  */
@@ -139,6 +144,7 @@ export default interface IWindow extends IEventTarget, NodeJS.Global {
139
144
  readonly Element: typeof Element;
140
145
  readonly DocumentFragment: typeof DocumentFragment;
141
146
  readonly CharacterData: typeof CharacterData;
147
+ readonly ProcessingInstruction: typeof ProcessingInstruction;
142
148
  readonly NodeFilter: typeof NodeFilter;
143
149
  readonly TreeWalker: typeof TreeWalker;
144
150
  readonly DOMParser: typeof DOMParser;
@@ -1,4 +1,7 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /// <reference types="node" />
4
+ /// <reference types="node" />
2
5
  import CustomElementRegistry from '../custom-element/CustomElementRegistry';
3
6
  import Document from '../nodes/document/Document';
4
7
  import HTMLDocument from '../nodes/html-document/HTMLDocument';
@@ -94,6 +97,7 @@ import DOMRect from '../nodes/element/DOMRect';
94
97
  import * as PerfHooks from 'perf_hooks';
95
98
  import Attr from '../nodes/attr/Attr';
96
99
  import IElement from '../nodes/element/IElement';
100
+ import ProcessingInstruction from '../nodes/processing-instruction/ProcessingInstruction';
97
101
  /**
98
102
  * Browser window.
99
103
  *
@@ -133,6 +137,7 @@ export default class Window extends EventTarget implements IWindow {
133
137
  readonly Text: typeof Text;
134
138
  readonly Comment: typeof Comment;
135
139
  readonly ShadowRoot: typeof ShadowRoot;
140
+ readonly ProcessingInstruction: typeof ProcessingInstruction;
136
141
  readonly Element: typeof Element;
137
142
  readonly DocumentFragment: typeof DocumentFragment;
138
143
  readonly CharacterData: typeof CharacterData;
@@ -127,6 +127,7 @@ const vm_1 = __importDefault(require("vm"));
127
127
  const buffer_1 = require("buffer");
128
128
  const Base64_1 = __importDefault(require("../base64/Base64"));
129
129
  const Attr_1 = __importDefault(require("../nodes/attr/Attr"));
130
+ const ProcessingInstruction_1 = __importDefault(require("../nodes/processing-instruction/ProcessingInstruction"));
130
131
  const ORIGINAL_SET_TIMEOUT = setTimeout;
131
132
  const ORIGINAL_CLEAR_TIMEOUT = clearTimeout;
132
133
  const ORIGINAL_SET_INTERVAL = setInterval;
@@ -204,6 +205,7 @@ class Window extends EventTarget_1.default {
204
205
  this.Text = Text_1.default;
205
206
  this.Comment = Comment_1.default;
206
207
  this.ShadowRoot = ShadowRoot_1.default;
208
+ this.ProcessingInstruction = ProcessingInstruction_1.default;
207
209
  this.Element = Element_1.default;
208
210
  this.DocumentFragment = DocumentFragment_1.default;
209
211
  this.CharacterData = CharacterData_1.default;
@@ -1 +1 @@
1
- {"version":3,"file":"Window.js","sourceRoot":"","sources":["../../src/window/Window.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Window.js","sourceRoot":"","sources":["../../src/window/Window.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "happy-dom",
3
- "version": "7.2.0",
3
+ "version": "7.4.0",
4
4
  "license": "MIT",
5
5
  "homepage": "https://github.com/capricorn86/happy-dom",
6
6
  "repository": "https://github.com/capricorn86/happy-dom",
@@ -75,5 +75,5 @@
75
75
  "ts-jest": "^27.1.3",
76
76
  "typescript": "^4.6.2"
77
77
  },
78
- "gitHead": "5ca063b2f745c250c433eeb66325613f1cbd2185"
78
+ "gitHead": "0ab37b11eb1ca51950761483fee664a5ea5052d2"
79
79
  }
@@ -77,12 +77,28 @@ export default abstract class EventTarget implements IEventTarget {
77
77
  /**
78
78
  * Adds an event listener.
79
79
  *
80
- * This is only supported by IE8- and Opera, but for some reason React uses it and calls it, so therefore we will keep support for it until they stop using it.
80
+ * TODO:
81
+ * Was used by with IE8- and Opera. React believed Happy DOM was a legacy browser and used them, but that is no longer the case, so we should remove this method after that this is verified.
81
82
  *
83
+ * @deprecated
82
84
  * @param type Event type.
83
85
  * @param listener Listener.
84
86
  */
85
87
  public attachEvent(type: string, listener: ((event: Event) => void) | IEventListener): void {
86
88
  this.addEventListener(type.replace('on', ''), listener);
87
89
  }
90
+
91
+ /**
92
+ * Removes an event listener.
93
+ *
94
+ * TODO:
95
+ * Was used by IE8- and Opera. React believed Happy DOM was a legacy browser and used them, but that is no longer the case, so we should remove this method after that this is verified.
96
+ *
97
+ * @deprecated
98
+ * @param type Event type.
99
+ * @param listener Listener.
100
+ */
101
+ public detachEvent(type: string, listener: ((event: Event) => void) | IEventListener): void {
102
+ this.removeEventListener(type.replace('on', ''), listener);
103
+ }
88
104
  }
@@ -28,4 +28,26 @@ export default interface IEventTarget {
28
28
  * @returns The return value is false if event is cancelable and at least one of the event handlers which handled this event called Event.preventDefault().
29
29
  */
30
30
  dispatchEvent(event: Event): boolean;
31
+
32
+ /**
33
+ * Adds an event listener.
34
+ *
35
+ * This is only supported by IE8- and Opera, but for some reason React uses it and calls it, so therefore we will keep support for it until they stop using it.
36
+ *
37
+ * @deprecated
38
+ * @param type Event type.
39
+ * @param listener Listener.
40
+ */
41
+ attachEvent(type: string, listener: ((event: Event) => void) | IEventListener): void;
42
+
43
+ /**
44
+ * Removes an event listener.
45
+ *
46
+ * This is only supported by IE8- and Opera, but for some reason React uses it and calls it, so therefore we will keep support for it until they stop using it.
47
+ *
48
+ * @deprecated
49
+ * @param type Event type.
50
+ * @param listener Listener.
51
+ */
52
+ detachEvent(type: string, listener: ((event: Event) => void) | IEventListener): void;
31
53
  }
@@ -40,5 +40,6 @@ export default [
40
40
  'TrackEvent',
41
41
  'TransitionEvent',
42
42
  'UserProximityEvent',
43
- 'WebGLContextEvent'
43
+ 'WebGLContextEvent',
44
+ 'TextEvent'
44
45
  ];
package/src/index.ts CHANGED
@@ -120,6 +120,10 @@ import Selection from './selection/Selection';
120
120
  import Range from './range/Range';
121
121
  import HTMLDialogElement from './nodes/html-dialog-element/HTMLDialogElement';
122
122
  import IHTMLDialogElement from './nodes/html-dialog-element/IHTMLDialogElement';
123
+ import Attr from './nodes/attr/Attr';
124
+ import IAttr from './nodes/attr/IAttr';
125
+ import ProcessingInstruction from './nodes/processing-instruction/ProcessingInstruction';
126
+ import IProcessingInstruction from './nodes/processing-instruction/IProcessingInstruction';
123
127
 
124
128
  export {
125
129
  GlobalWindow,
@@ -243,5 +247,9 @@ export {
243
247
  Selection,
244
248
  Range,
245
249
  HTMLDialogElement,
246
- IHTMLDialogElement
250
+ IHTMLDialogElement,
251
+ Attr,
252
+ IAttr,
253
+ ProcessingInstruction,
254
+ IProcessingInstruction
247
255
  };
@@ -8,6 +8,7 @@ import IAttr from './IAttr';
8
8
  * Reference: https://developer.mozilla.org/en-US/docs/Web/API/Attr.
9
9
  */
10
10
  export default class Attr extends Node implements IAttr {
11
+ public readonly nodeType = Node.ATTRIBUTE_NODE;
11
12
  public value: string = null;
12
13
  public name: string = null;
13
14
  public namespaceURI: string = null;
@@ -41,13 +41,16 @@ import IShadowRoot from '../shadow-root/IShadowRoot';
41
41
  import Range from '../../range/Range';
42
42
  import IHTMLBaseElement from '../html-base-element/IHTMLBaseElement';
43
43
  import IAttr from '../attr/IAttr';
44
+ import IProcessingInstruction from '../processing-instruction/IProcessingInstruction';
45
+ import ProcessingInstruction from '../processing-instruction/ProcessingInstruction';
46
+
47
+ const PROCESSING_INSTRUCTION_TARGET_REGEXP = /^[a-z][a-z0-9-]+$/;
44
48
 
45
49
  /**
46
50
  * Document.
47
51
  */
48
52
  export default class Document extends Node implements IDocument {
49
53
  public static _defaultView: IWindow = null;
50
- public onreadystatechange: (event: Event) => void = null;
51
54
  public nodeType = Node.DOCUMENT_NODE;
52
55
  public adoptedStyleSheets: CSSStyleSheet[] = [];
53
56
  public implementation: DOMImplementation;
@@ -62,6 +65,117 @@ export default class Document extends Node implements IDocument {
62
65
  private _cookie = '';
63
66
  private _selection: Selection = null;
64
67
 
68
+ // Events
69
+ public onreadystatechange: (event: Event) => void = null;
70
+ public onpointerlockchange: (event: Event) => void = null;
71
+ public onpointerlockerror: (event: Event) => void = null;
72
+ public onbeforecopy: (event: Event) => void = null;
73
+ public onbeforecut: (event: Event) => void = null;
74
+ public onbeforepaste: (event: Event) => void = null;
75
+ public onfreeze: (event: Event) => void = null;
76
+ public onresume: (event: Event) => void = null;
77
+ public onsearch: (event: Event) => void = null;
78
+ public onvisibilitychange: (event: Event) => void = null;
79
+ public onfullscreenchange: (event: Event) => void = null;
80
+ public onfullscreenerror: (event: Event) => void = null;
81
+ public onwebkitfullscreenchange: (event: Event) => void = null;
82
+ public onwebkitfullscreenerror: (event: Event) => void = null;
83
+ public onbeforexrselect: (event: Event) => void = null;
84
+ public onabort: (event: Event) => void = null;
85
+ public onbeforeinput: (event: Event) => void = null;
86
+ public onblur: (event: Event) => void = null;
87
+ public oncancel: (event: Event) => void = null;
88
+ public oncanplay: (event: Event) => void = null;
89
+ public oncanplaythrough: (event: Event) => void = null;
90
+ public onchange: (event: Event) => void = null;
91
+ public onclick: (event: Event) => void = null;
92
+ public onclose: (event: Event) => void = null;
93
+ public oncontextlost: (event: Event) => void = null;
94
+ public oncontextmenu: (event: Event) => void = null;
95
+ public oncontextrestored: (event: Event) => void = null;
96
+ public oncuechange: (event: Event) => void = null;
97
+ public ondblclick: (event: Event) => void = null;
98
+ public ondrag: (event: Event) => void = null;
99
+ public ondragend: (event: Event) => void = null;
100
+ public ondragenter: (event: Event) => void = null;
101
+ public ondragleave: (event: Event) => void = null;
102
+ public ondragover: (event: Event) => void = null;
103
+ public ondragstart: (event: Event) => void = null;
104
+ public ondrop: (event: Event) => void = null;
105
+ public ondurationchange: (event: Event) => void = null;
106
+ public onemptied: (event: Event) => void = null;
107
+ public onended: (event: Event) => void = null;
108
+ public onerror: (event: Event) => void = null;
109
+ public onfocus: (event: Event) => void = null;
110
+ public onformdata: (event: Event) => void = null;
111
+ public oninput: (event: Event) => void = null;
112
+ public oninvalid: (event: Event) => void = null;
113
+ public onkeydown: (event: Event) => void = null;
114
+ public onkeypress: (event: Event) => void = null;
115
+ public onkeyup: (event: Event) => void = null;
116
+ public onload: (event: Event) => void = null;
117
+ public onloadeddata: (event: Event) => void = null;
118
+ public onloadedmetadata: (event: Event) => void = null;
119
+ public onloadstart: (event: Event) => void = null;
120
+ public onmousedown: (event: Event) => void = null;
121
+ public onmouseenter: (event: Event) => void = null;
122
+ public onmouseleave: (event: Event) => void = null;
123
+ public onmousemove: (event: Event) => void = null;
124
+ public onmouseout: (event: Event) => void = null;
125
+ public onmouseover: (event: Event) => void = null;
126
+ public onmouseup: (event: Event) => void = null;
127
+ public onmousewheel: (event: Event) => void = null;
128
+ public onpause: (event: Event) => void = null;
129
+ public onplay: (event: Event) => void = null;
130
+ public onplaying: (event: Event) => void = null;
131
+ public onprogress: (event: Event) => void = null;
132
+ public onratechange: (event: Event) => void = null;
133
+ public onreset: (event: Event) => void = null;
134
+ public onresize: (event: Event) => void = null;
135
+ public onscroll: (event: Event) => void = null;
136
+ public onsecuritypolicyviolation: (event: Event) => void = null;
137
+ public onseeked: (event: Event) => void = null;
138
+ public onseeking: (event: Event) => void = null;
139
+ public onselect: (event: Event) => void = null;
140
+ public onslotchange: (event: Event) => void = null;
141
+ public onstalled: (event: Event) => void = null;
142
+ public onsubmit: (event: Event) => void = null;
143
+ public onsuspend: (event: Event) => void = null;
144
+ public ontimeupdate: (event: Event) => void = null;
145
+ public ontoggle: (event: Event) => void = null;
146
+ public onvolumechange: (event: Event) => void = null;
147
+ public onwaiting: (event: Event) => void = null;
148
+ public onwebkitanimationend: (event: Event) => void = null;
149
+ public onwebkitanimationiteration: (event: Event) => void = null;
150
+ public onwebkitanimationstart: (event: Event) => void = null;
151
+ public onwebkittransitionend: (event: Event) => void = null;
152
+ public onwheel: (event: Event) => void = null;
153
+ public onauxclick: (event: Event) => void = null;
154
+ public ongotpointercapture: (event: Event) => void = null;
155
+ public onlostpointercapture: (event: Event) => void = null;
156
+ public onpointerdown: (event: Event) => void = null;
157
+ public onpointermove: (event: Event) => void = null;
158
+ public onpointerrawupdate: (event: Event) => void = null;
159
+ public onpointerup: (event: Event) => void = null;
160
+ public onpointercancel: (event: Event) => void = null;
161
+ public onpointerover: (event: Event) => void = null;
162
+ public onpointerout: (event: Event) => void = null;
163
+ public onpointerenter: (event: Event) => void = null;
164
+ public onpointerleave: (event: Event) => void = null;
165
+ public onselectstart: (event: Event) => void = null;
166
+ public onselectionchange: (event: Event) => void = null;
167
+ public onanimationend: (event: Event) => void = null;
168
+ public onanimationiteration: (event: Event) => void = null;
169
+ public onanimationstart: (event: Event) => void = null;
170
+ public ontransitionrun: (event: Event) => void = null;
171
+ public ontransitionstart: (event: Event) => void = null;
172
+ public ontransitionend: (event: Event) => void = null;
173
+ public ontransitioncancel: (event: Event) => void = null;
174
+ public oncopy: (event: Event) => void = null;
175
+ public oncut: (event: Event) => void = null;
176
+ public onpaste: (event: Event) => void = null;
177
+ public onbeforematch: (event: Event) => void = null;
178
+
65
179
  /**
66
180
  * Creates an instance of Document.
67
181
  *
@@ -824,4 +938,28 @@ export default class Document extends Node implements IDocument {
824
938
  this.dispatchEvent(new Event('load', { bubbles: true }));
825
939
  });
826
940
  }
941
+
942
+ /**
943
+ * Creates a Processing Instruction node.
944
+ *
945
+ * @returns IProcessingInstruction.
946
+ * @param target
947
+ * @param data
948
+ */
949
+ public createProcessingInstruction(target: string, data: string): IProcessingInstruction {
950
+ if (!target || !PROCESSING_INSTRUCTION_TARGET_REGEXP.test(target)) {
951
+ throw new DOMException(
952
+ `Failed to execute 'createProcessingInstruction' on 'Document': The target provided ('${target}') is not a valid name.`
953
+ );
954
+ }
955
+ if (data.includes('?>')) {
956
+ throw new DOMException(
957
+ `Failed to execute 'createProcessingInstruction' on 'Document': The data provided ('?>') contains '?>'`
958
+ );
959
+ }
960
+ ProcessingInstruction._ownerDocument = this;
961
+ const processingInstruction = new ProcessingInstruction(data);
962
+ processingInstruction.target = target;
963
+ return processingInstruction;
964
+ }
827
965
  }
@@ -19,12 +19,12 @@ import Location from '../../location/Location';
19
19
  import DocumentReadyStateEnum from './DocumentReadyStateEnum';
20
20
  import INodeList from '../node/INodeList';
21
21
  import Range from '../../range/Range';
22
+ import IProcessingInstruction from '../processing-instruction/IProcessingInstruction';
22
23
 
23
24
  /**
24
25
  * Document.
25
26
  */
26
27
  export default interface IDocument extends IParentNode {
27
- onreadystatechange: (event: Event) => void;
28
28
  readonly defaultView: IWindow;
29
29
  readonly implementation: DOMImplementation;
30
30
  readonly documentElement: IHTMLElement;
@@ -41,6 +41,117 @@ export default interface IDocument extends IParentNode {
41
41
  readonly characterSet: string;
42
42
  cookie: string;
43
43
 
44
+ // Events
45
+ onreadystatechange: (event: Event) => void;
46
+ onpointerlockchange: (event: Event) => void;
47
+ onpointerlockerror: (event: Event) => void;
48
+ onbeforecopy: (event: Event) => void;
49
+ onbeforecut: (event: Event) => void;
50
+ onbeforepaste: (event: Event) => void;
51
+ onfreeze: (event: Event) => void;
52
+ onresume: (event: Event) => void;
53
+ onsearch: (event: Event) => void;
54
+ onvisibilitychange: (event: Event) => void;
55
+ onfullscreenchange: (event: Event) => void;
56
+ onfullscreenerror: (event: Event) => void;
57
+ onwebkitfullscreenchange: (event: Event) => void;
58
+ onwebkitfullscreenerror: (event: Event) => void;
59
+ onbeforexrselect: (event: Event) => void;
60
+ onabort: (event: Event) => void;
61
+ onbeforeinput: (event: Event) => void;
62
+ onblur: (event: Event) => void;
63
+ oncancel: (event: Event) => void;
64
+ oncanplay: (event: Event) => void;
65
+ oncanplaythrough: (event: Event) => void;
66
+ onchange: (event: Event) => void;
67
+ onclick: (event: Event) => void;
68
+ onclose: (event: Event) => void;
69
+ oncontextlost: (event: Event) => void;
70
+ oncontextmenu: (event: Event) => void;
71
+ oncontextrestored: (event: Event) => void;
72
+ oncuechange: (event: Event) => void;
73
+ ondblclick: (event: Event) => void;
74
+ ondrag: (event: Event) => void;
75
+ ondragend: (event: Event) => void;
76
+ ondragenter: (event: Event) => void;
77
+ ondragleave: (event: Event) => void;
78
+ ondragover: (event: Event) => void;
79
+ ondragstart: (event: Event) => void;
80
+ ondrop: (event: Event) => void;
81
+ ondurationchange: (event: Event) => void;
82
+ onemptied: (event: Event) => void;
83
+ onended: (event: Event) => void;
84
+ onerror: (event: Event) => void;
85
+ onfocus: (event: Event) => void;
86
+ onformdata: (event: Event) => void;
87
+ oninput: (event: Event) => void;
88
+ oninvalid: (event: Event) => void;
89
+ onkeydown: (event: Event) => void;
90
+ onkeypress: (event: Event) => void;
91
+ onkeyup: (event: Event) => void;
92
+ onload: (event: Event) => void;
93
+ onloadeddata: (event: Event) => void;
94
+ onloadedmetadata: (event: Event) => void;
95
+ onloadstart: (event: Event) => void;
96
+ onmousedown: (event: Event) => void;
97
+ onmouseenter: (event: Event) => void;
98
+ onmouseleave: (event: Event) => void;
99
+ onmousemove: (event: Event) => void;
100
+ onmouseout: (event: Event) => void;
101
+ onmouseover: (event: Event) => void;
102
+ onmouseup: (event: Event) => void;
103
+ onmousewheel: (event: Event) => void;
104
+ onpause: (event: Event) => void;
105
+ onplay: (event: Event) => void;
106
+ onplaying: (event: Event) => void;
107
+ onprogress: (event: Event) => void;
108
+ onratechange: (event: Event) => void;
109
+ onreset: (event: Event) => void;
110
+ onresize: (event: Event) => void;
111
+ onscroll: (event: Event) => void;
112
+ onsecuritypolicyviolation: (event: Event) => void;
113
+ onseeked: (event: Event) => void;
114
+ onseeking: (event: Event) => void;
115
+ onselect: (event: Event) => void;
116
+ onslotchange: (event: Event) => void;
117
+ onstalled: (event: Event) => void;
118
+ onsubmit: (event: Event) => void;
119
+ onsuspend: (event: Event) => void;
120
+ ontimeupdate: (event: Event) => void;
121
+ ontoggle: (event: Event) => void;
122
+ onvolumechange: (event: Event) => void;
123
+ onwaiting: (event: Event) => void;
124
+ onwebkitanimationend: (event: Event) => void;
125
+ onwebkitanimationiteration: (event: Event) => void;
126
+ onwebkitanimationstart: (event: Event) => void;
127
+ onwebkittransitionend: (event: Event) => void;
128
+ onwheel: (event: Event) => void;
129
+ onauxclick: (event: Event) => void;
130
+ ongotpointercapture: (event: Event) => void;
131
+ onlostpointercapture: (event: Event) => void;
132
+ onpointerdown: (event: Event) => void;
133
+ onpointermove: (event: Event) => void;
134
+ onpointerrawupdate: (event: Event) => void;
135
+ onpointerup: (event: Event) => void;
136
+ onpointercancel: (event: Event) => void;
137
+ onpointerover: (event: Event) => void;
138
+ onpointerout: (event: Event) => void;
139
+ onpointerenter: (event: Event) => void;
140
+ onpointerleave: (event: Event) => void;
141
+ onselectstart: (event: Event) => void;
142
+ onselectionchange: (event: Event) => void;
143
+ onanimationend: (event: Event) => void;
144
+ onanimationiteration: (event: Event) => void;
145
+ onanimationstart: (event: Event) => void;
146
+ ontransitionrun: (event: Event) => void;
147
+ ontransitionstart: (event: Event) => void;
148
+ ontransitionend: (event: Event) => void;
149
+ ontransitioncancel: (event: Event) => void;
150
+ oncopy: (event: Event) => void;
151
+ oncut: (event: Event) => void;
152
+ onpaste: (event: Event) => void;
153
+ onbeforematch: (event: Event) => void;
154
+
44
155
  /**
45
156
  * Replaces the document HTML with new HTML.
46
157
  *
@@ -197,4 +308,13 @@ export default interface IDocument extends IParentNode {
197
308
  * @returns "true" if the document has focus.
198
309
  */
199
310
  hasFocus(): boolean;
311
+
312
+ /**
313
+ * Creates a Processing Instruction node.
314
+ *
315
+ * @returns IProcessingInstruction.
316
+ * @param target
317
+ * @param data
318
+ */
319
+ createProcessingInstruction(target: string, data: string): IProcessingInstruction;
200
320
  }
@@ -27,6 +27,7 @@ import IText from '../text/IText';
27
27
  import IDOMRectList from './IDOMRectList';
28
28
  import DOMRectListFactory from './DOMRectListFactory';
29
29
  import IAttr from '../attr/IAttr';
30
+ import Event from '../../event/Event';
30
31
 
31
32
  /**
32
33
  * Element.
@@ -39,12 +40,49 @@ export default class Element extends Node implements IElement {
39
40
  public tagName: string = null;
40
41
  public nodeType = Node.ELEMENT_NODE;
41
42
  public shadowRoot: IShadowRoot = null;
43
+ public prefix: string = null;
42
44
 
43
45
  public scrollTop = 0;
44
46
  public scrollLeft = 0;
45
47
  public children: IHTMLCollection<IElement> = HTMLCollectionFactory.create();
46
48
  public readonly namespaceURI: string = null;
47
49
 
50
+ // Events
51
+ public oncancel: (event: Event) => void | null = null;
52
+ public onerror: (event: Event) => void | null = null;
53
+ public onscroll: (event: Event) => void | null = null;
54
+ public onselect: (event: Event) => void | null = null;
55
+ public onwheel: (event: Event) => void | null = null;
56
+ public oncopy: (event: Event) => void | null = null;
57
+ public oncut: (event: Event) => void | null = null;
58
+ public onpaste: (event: Event) => void | null = null;
59
+ public oncompositionend: (event: Event) => void | null = null;
60
+ public oncompositionstart: (event: Event) => void | null = null;
61
+ public oncompositionupdate: (event: Event) => void | null = null;
62
+ public onblur: (event: Event) => void | null = null;
63
+ public onfocus: (event: Event) => void | null = null;
64
+ public onfocusin: (event: Event) => void | null = null;
65
+ public onfocusout: (event: Event) => void | null = null;
66
+ public onfullscreenchange: (event: Event) => void | null = null;
67
+ public onfullscreenerror: (event: Event) => void | null = null;
68
+ public onkeydown: (event: Event) => void | null = null;
69
+ public onkeyup: (event: Event) => void | null = null;
70
+ public onauxclick: (event: Event) => void | null = null;
71
+ public onclick: (event: Event) => void | null = null;
72
+ public oncontextmenu: (event: Event) => void | null = null;
73
+ public ondblclick: (event: Event) => void | null = null;
74
+ public onmousedown: (event: Event) => void | null = null;
75
+ public onmouseenter: (event: Event) => void | null = null;
76
+ public onmouseleave: (event: Event) => void | null = null;
77
+ public onmousemove: (event: Event) => void | null = null;
78
+ public onmouseout: (event: Event) => void | null = null;
79
+ public onmouseover: (event: Event) => void | null = null;
80
+ public onmouseup: (event: Event) => void | null = null;
81
+ public ontouchcancel: (event: Event) => void | null = null;
82
+ public ontouchend: (event: Event) => void | null = null;
83
+ public ontouchmove: (event: Event) => void | null = null;
84
+ public ontouchstart: (event: Event) => void | null = null;
85
+
48
86
  // Used for being able to access closed shadow roots
49
87
  public _shadowRoot: IShadowRoot = null;
50
88
  public _attributes: { [k: string]: IAttr } = {};