happy-dom 2.53.1 → 3.0.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 (303) hide show
  1. package/README.md +26 -6
  2. package/lib/async-task-manager/AsyncTaskManager.js +34 -78
  3. package/lib/async-task-manager/AsyncTaskManager.js.map +1 -1
  4. package/lib/attribute/Attr.js +19 -28
  5. package/lib/attribute/Attr.js.map +1 -1
  6. package/lib/config/ElementTag.d.ts +2 -1
  7. package/lib/config/ElementTag.js +16 -15
  8. package/lib/config/ElementTag.js.map +1 -1
  9. package/lib/config/NonImplemenetedElementClasses.js +0 -1
  10. package/lib/config/NonImplemenetedElementClasses.js.map +1 -1
  11. package/lib/cookie/CookieUtility.js +21 -26
  12. package/lib/cookie/CookieUtility.js.map +1 -1
  13. package/lib/css/CSS.js +12 -18
  14. package/lib/css/CSS.js.map +1 -1
  15. package/lib/css/CSSParser.js +29 -33
  16. package/lib/css/CSSParser.js.map +1 -1
  17. package/lib/css/CSSRule.js +24 -29
  18. package/lib/css/CSSRule.js.map +1 -1
  19. package/lib/css/CSSStyleDeclaration.js +4516 -6005
  20. package/lib/css/CSSStyleDeclaration.js.map +1 -1
  21. package/lib/css/CSSStyleSheet.js +17 -59
  22. package/lib/css/CSSStyleSheet.js.map +1 -1
  23. package/lib/css/CSSUnitValue.js +4 -5
  24. package/lib/css/CSSUnitValue.js.map +1 -1
  25. package/lib/css/MediaList.js +23 -28
  26. package/lib/css/MediaList.js.map +1 -1
  27. package/lib/css/rules/CSSFontFaceRule.js +6 -24
  28. package/lib/css/rules/CSSFontFaceRule.js.map +1 -1
  29. package/lib/css/rules/CSSKeyframeRule.js +14 -36
  30. package/lib/css/rules/CSSKeyframeRule.js.map +1 -1
  31. package/lib/css/rules/CSSKeyframesRule.js +31 -54
  32. package/lib/css/rules/CSSKeyframesRule.js.map +1 -1
  33. package/lib/css/rules/CSSMediaRule.js +29 -56
  34. package/lib/css/rules/CSSMediaRule.js.map +1 -1
  35. package/lib/css/rules/CSSStyleRule.js +16 -38
  36. package/lib/css/rules/CSSStyleRule.js.map +1 -1
  37. package/lib/custom-element/CustomElementRegistry.js +21 -24
  38. package/lib/custom-element/CustomElementRegistry.js.map +1 -1
  39. package/lib/dom-implementation/DOMImplementation.js +12 -13
  40. package/lib/dom-implementation/DOMImplementation.js.map +1 -1
  41. package/lib/dom-parser/DOMParser.js +29 -35
  42. package/lib/dom-parser/DOMParser.js.map +1 -1
  43. package/lib/dom-token-list/DOMTokenList.js +64 -79
  44. package/lib/dom-token-list/DOMTokenList.js.map +1 -1
  45. package/lib/event/DataTransfer.js +4 -5
  46. package/lib/event/DataTransfer.js.map +1 -1
  47. package/lib/event/DataTransferItem.js +7 -8
  48. package/lib/event/DataTransferItem.js.map +1 -1
  49. package/lib/event/DataTransferItemList.js +10 -11
  50. package/lib/event/DataTransferItemList.js.map +1 -1
  51. package/lib/event/Event.js +11 -15
  52. package/lib/event/Event.js.map +1 -1
  53. package/lib/event/EventTarget.js +14 -16
  54. package/lib/event/EventTarget.js.map +1 -1
  55. package/lib/event/IUIEventInit.d.ts +2 -2
  56. package/lib/event/UIEvent.d.ts +2 -2
  57. package/lib/event/UIEvent.js +25 -46
  58. package/lib/event/UIEvent.js.map +1 -1
  59. package/lib/event/events/AnimationEvent.js +11 -29
  60. package/lib/event/events/AnimationEvent.js.map +1 -1
  61. package/lib/event/events/CustomEvent.js +9 -31
  62. package/lib/event/events/CustomEvent.js.map +1 -1
  63. package/lib/event/events/ErrorEvent.js +15 -34
  64. package/lib/event/events/ErrorEvent.js.map +1 -1
  65. package/lib/event/events/FocusEvent.js +7 -26
  66. package/lib/event/events/FocusEvent.js.map +1 -1
  67. package/lib/event/events/InputEvent.js +13 -32
  68. package/lib/event/events/InputEvent.js.map +1 -1
  69. package/lib/event/events/KeyboardEvent.js +27 -46
  70. package/lib/event/events/KeyboardEvent.js.map +1 -1
  71. package/lib/event/events/MouseEvent.js +33 -52
  72. package/lib/event/events/MouseEvent.js.map +1 -1
  73. package/lib/event/events/PointerEvent.js +25 -44
  74. package/lib/event/events/PointerEvent.js.map +1 -1
  75. package/lib/event/events/ProgressEvent.js +11 -30
  76. package/lib/event/events/ProgressEvent.js.map +1 -1
  77. package/lib/event/events/StorageEvent.js +13 -32
  78. package/lib/event/events/StorageEvent.js.map +1 -1
  79. package/lib/event/events/WheelEvent.js +16 -35
  80. package/lib/event/events/WheelEvent.js.map +1 -1
  81. package/lib/exception/DOMException.js +5 -24
  82. package/lib/exception/DOMException.js.map +1 -1
  83. package/lib/fetch/FetchHandler.js +18 -22
  84. package/lib/fetch/FetchHandler.js.map +1 -1
  85. package/lib/fetch/Headers.js +3 -23
  86. package/lib/fetch/Headers.js.map +1 -1
  87. package/lib/fetch/Request.js +61 -81
  88. package/lib/fetch/Request.js.map +1 -1
  89. package/lib/fetch/ResourceFetchHandler.js +18 -67
  90. package/lib/fetch/ResourceFetchHandler.js.map +1 -1
  91. package/lib/fetch/Response.js +61 -81
  92. package/lib/fetch/Response.js.map +1 -1
  93. package/lib/file/Blob.js +29 -78
  94. package/lib/file/Blob.js.map +1 -1
  95. package/lib/file/File.js +9 -27
  96. package/lib/file/File.js.map +1 -1
  97. package/lib/file/FileReader.js +57 -78
  98. package/lib/file/FileReader.js.map +1 -1
  99. package/lib/history/History.js +32 -37
  100. package/lib/history/History.js.map +1 -1
  101. package/lib/index.d.ts +5 -3
  102. package/lib/index.js +71 -69
  103. package/lib/index.js.map +1 -1
  104. package/lib/location/Location.js +11 -28
  105. package/lib/location/Location.js.map +1 -1
  106. package/lib/location/RelativeURL.js +5 -8
  107. package/lib/location/RelativeURL.js.map +1 -1
  108. package/lib/location/URL.js +46 -59
  109. package/lib/location/URL.js.map +1 -1
  110. package/lib/match-media/MediaQueryList.js +28 -54
  111. package/lib/match-media/MediaQueryList.js.map +1 -1
  112. package/lib/mutation-observer/MutationListener.js +3 -4
  113. package/lib/mutation-observer/MutationListener.js.map +1 -1
  114. package/lib/mutation-observer/MutationObserver.js +12 -13
  115. package/lib/mutation-observer/MutationObserver.js.map +1 -1
  116. package/lib/mutation-observer/MutationRecord.js +3 -4
  117. package/lib/mutation-observer/MutationRecord.js.map +1 -1
  118. package/lib/navigator/MimeType.js +5 -6
  119. package/lib/navigator/MimeType.js.map +1 -1
  120. package/lib/navigator/MimeTypeArray.js +10 -11
  121. package/lib/navigator/MimeTypeArray.js.map +1 -1
  122. package/lib/navigator/Navigator.js +7 -8
  123. package/lib/navigator/Navigator.js.map +1 -1
  124. package/lib/navigator/Plugin.js +10 -11
  125. package/lib/navigator/Plugin.js.map +1 -1
  126. package/lib/navigator/PluginArray.js +12 -13
  127. package/lib/navigator/PluginArray.js.map +1 -1
  128. package/lib/nodes/character-data/CharacterData.js +119 -184
  129. package/lib/nodes/character-data/CharacterData.js.map +1 -1
  130. package/lib/nodes/character-data/CharacterDataUtility.js +12 -15
  131. package/lib/nodes/character-data/CharacterDataUtility.js.map +1 -1
  132. package/lib/nodes/child-node/ChildNodeUtility.js +24 -45
  133. package/lib/nodes/child-node/ChildNodeUtility.js.map +1 -1
  134. package/lib/nodes/child-node/NonDocumentChildNodeUtility.js +9 -12
  135. package/lib/nodes/child-node/NonDocumentChildNodeUtility.js.map +1 -1
  136. package/lib/nodes/comment/Comment.js +20 -43
  137. package/lib/nodes/comment/Comment.js.map +1 -1
  138. package/lib/nodes/document/Document.d.ts +3 -3
  139. package/lib/nodes/document/Document.js +334 -461
  140. package/lib/nodes/document/Document.js.map +1 -1
  141. package/lib/nodes/document/DocumentReadyStateManager.js +16 -19
  142. package/lib/nodes/document/DocumentReadyStateManager.js.map +1 -1
  143. package/lib/nodes/document/IDocument.d.ts +2 -2
  144. package/lib/nodes/document-fragment/DocumentFragment.js +93 -153
  145. package/lib/nodes/document-fragment/DocumentFragment.js.map +1 -1
  146. package/lib/nodes/document-type/DocumentType.js +22 -45
  147. package/lib/nodes/document-type/DocumentType.js.map +1 -1
  148. package/lib/nodes/element/DOMRect.js +3 -4
  149. package/lib/nodes/element/DOMRect.js.map +1 -1
  150. package/lib/nodes/element/Element.js +367 -496
  151. package/lib/nodes/element/Element.js.map +1 -1
  152. package/lib/nodes/element/HTMLCollection.js +4 -24
  153. package/lib/nodes/element/HTMLCollection.js.map +1 -1
  154. package/lib/nodes/element/HTMLCollectionFactory.js +6 -9
  155. package/lib/nodes/element/HTMLCollectionFactory.js.map +1 -1
  156. package/lib/nodes/element/Range.js +89 -114
  157. package/lib/nodes/element/Range.js.map +1 -1
  158. package/lib/nodes/html-base-element/HTMLBaseElement.d.ts +42 -0
  159. package/lib/nodes/html-base-element/HTMLBaseElement.js +62 -0
  160. package/lib/nodes/html-base-element/HTMLBaseElement.js.map +1 -0
  161. package/lib/nodes/html-base-element/IHTMLBaseElement.d.ts +19 -0
  162. package/lib/nodes/html-base-element/IHTMLBaseElement.js +3 -0
  163. package/lib/nodes/html-base-element/IHTMLBaseElement.js.map +1 -0
  164. package/lib/nodes/html-document/HTMLDocument.js +3 -23
  165. package/lib/nodes/html-document/HTMLDocument.js.map +1 -1
  166. package/lib/nodes/html-element/DatasetUtility.js +9 -12
  167. package/lib/nodes/html-element/DatasetUtility.js.map +1 -1
  168. package/lib/nodes/html-element/HTMLElement.js +232 -290
  169. package/lib/nodes/html-element/HTMLElement.js.map +1 -1
  170. package/lib/nodes/html-form-element/HTMLFormElement.js +170 -235
  171. package/lib/nodes/html-form-element/HTMLFormElement.js.map +1 -1
  172. package/lib/nodes/html-image-element/HTMLImageElement.js +178 -237
  173. package/lib/nodes/html-image-element/HTMLImageElement.js.map +1 -1
  174. package/lib/nodes/html-image-element/Image.js +7 -27
  175. package/lib/nodes/html-image-element/Image.js.map +1 -1
  176. package/lib/nodes/html-input-element/HTMLInputElement.d.ts +17 -6
  177. package/lib/nodes/html-input-element/HTMLInputElement.js +719 -866
  178. package/lib/nodes/html-input-element/HTMLInputElement.js.map +1 -1
  179. package/lib/nodes/html-input-element/HTMLInputElementValueSanitizer.js +9 -12
  180. package/lib/nodes/html-input-element/HTMLInputElementValueSanitizer.js.map +1 -1
  181. package/lib/nodes/html-input-element/HTMLInputElementValueStepping.js +5 -8
  182. package/lib/nodes/html-input-element/HTMLInputElementValueStepping.js.map +1 -1
  183. package/lib/nodes/html-input-element/IHTMLInputElement.d.ts +11 -1
  184. package/lib/nodes/html-input-element/ValidityState.js +47 -69
  185. package/lib/nodes/html-input-element/ValidityState.js.map +1 -1
  186. package/lib/nodes/html-label-element/HTMLLabelElement.js +53 -87
  187. package/lib/nodes/html-label-element/HTMLLabelElement.js.map +1 -1
  188. package/lib/nodes/html-link-element/HTMLLinkElement.js +197 -252
  189. package/lib/nodes/html-link-element/HTMLLinkElement.js.map +1 -1
  190. package/lib/nodes/html-meta-element/HTMLMetaElement.js +66 -102
  191. package/lib/nodes/html-meta-element/HTMLMetaElement.js.map +1 -1
  192. package/lib/nodes/html-script-element/HTMLScriptElement.js +145 -193
  193. package/lib/nodes/html-script-element/HTMLScriptElement.js.map +1 -1
  194. package/lib/nodes/html-script-element/ScriptUtility.js +58 -112
  195. package/lib/nodes/html-script-element/ScriptUtility.js.map +1 -1
  196. package/lib/nodes/html-slot-element/HTMLSlotElement.js +33 -65
  197. package/lib/nodes/html-slot-element/HTMLSlotElement.js.map +1 -1
  198. package/lib/nodes/html-style-element/HTMLStyleElement.js +75 -109
  199. package/lib/nodes/html-style-element/HTMLStyleElement.js.map +1 -1
  200. package/lib/nodes/html-template-element/HTMLTemplateElement.js +60 -99
  201. package/lib/nodes/html-template-element/HTMLTemplateElement.js.map +1 -1
  202. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js +349 -444
  203. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js.map +1 -1
  204. package/lib/nodes/html-unknown-element/HTMLUnknownElement.js +17 -37
  205. package/lib/nodes/html-unknown-element/HTMLUnknownElement.js.map +1 -1
  206. package/lib/nodes/node/INode.d.ts +1 -0
  207. package/lib/nodes/node/Node.d.ts +6 -0
  208. package/lib/nodes/node/Node.js +193 -244
  209. package/lib/nodes/node/Node.js.map +1 -1
  210. package/lib/nodes/node/NodeList.js +4 -24
  211. package/lib/nodes/node/NodeList.js.map +1 -1
  212. package/lib/nodes/node/NodeListFactory.js +6 -9
  213. package/lib/nodes/node/NodeListFactory.js.map +1 -1
  214. package/lib/nodes/parent-node/ParentNodeUtility.js +43 -78
  215. package/lib/nodes/parent-node/ParentNodeUtility.js.map +1 -1
  216. package/lib/nodes/shadow-root/ShadowRoot.js +53 -83
  217. package/lib/nodes/shadow-root/ShadowRoot.js.map +1 -1
  218. package/lib/nodes/svg-document/SVGDocument.js +3 -23
  219. package/lib/nodes/svg-document/SVGDocument.js.map +1 -1
  220. package/lib/nodes/svg-element/DOMMatrix.js +3 -4
  221. package/lib/nodes/svg-element/DOMMatrix.js.map +1 -1
  222. package/lib/nodes/svg-element/SVGAngle.js +10 -11
  223. package/lib/nodes/svg-element/SVGAngle.js.map +1 -1
  224. package/lib/nodes/svg-element/SVGAnimatedRect.js +4 -5
  225. package/lib/nodes/svg-element/SVGAnimatedRect.js.map +1 -1
  226. package/lib/nodes/svg-element/SVGElement.js +58 -93
  227. package/lib/nodes/svg-element/SVGElement.js.map +1 -1
  228. package/lib/nodes/svg-element/SVGGraphicsElement.js +14 -32
  229. package/lib/nodes/svg-element/SVGGraphicsElement.js.map +1 -1
  230. package/lib/nodes/svg-element/SVGLength.js +16 -17
  231. package/lib/nodes/svg-element/SVGLength.js.map +1 -1
  232. package/lib/nodes/svg-element/SVGNumber.js +3 -4
  233. package/lib/nodes/svg-element/SVGNumber.js.map +1 -1
  234. package/lib/nodes/svg-element/SVGPoint.js +3 -4
  235. package/lib/nodes/svg-element/SVGPoint.js.map +1 -1
  236. package/lib/nodes/svg-element/SVGRect.js +3 -4
  237. package/lib/nodes/svg-element/SVGRect.js.map +1 -1
  238. package/lib/nodes/svg-element/SVGSVGElement.js +187 -248
  239. package/lib/nodes/svg-element/SVGSVGElement.js.map +1 -1
  240. package/lib/nodes/svg-element/SVGTransform.js +16 -17
  241. package/lib/nodes/svg-element/SVGTransform.js.map +1 -1
  242. package/lib/nodes/text/Text.js +20 -43
  243. package/lib/nodes/text/Text.js.map +1 -1
  244. package/lib/nodes/xml-document/XMLDocument.js +3 -23
  245. package/lib/nodes/xml-document/XMLDocument.js.map +1 -1
  246. package/lib/query-selector/QuerySelector.js +36 -44
  247. package/lib/query-selector/QuerySelector.js.map +1 -1
  248. package/lib/query-selector/SelectorItem.js +62 -66
  249. package/lib/query-selector/SelectorItem.js.map +1 -1
  250. package/lib/resize-observer/ResizeObserver.js +8 -11
  251. package/lib/resize-observer/ResizeObserver.js.map +1 -1
  252. package/lib/screen/Screen.js +3 -4
  253. package/lib/screen/Screen.js.map +1 -1
  254. package/lib/selection/Selection.js +29 -30
  255. package/lib/selection/Selection.js.map +1 -1
  256. package/lib/storage/Storage.js +22 -27
  257. package/lib/storage/Storage.js.map +1 -1
  258. package/lib/tree-walker/NodeFilterMask.js +1 -1
  259. package/lib/tree-walker/NodeFilterMask.js.map +1 -1
  260. package/lib/tree-walker/TreeWalker.js +30 -33
  261. package/lib/tree-walker/TreeWalker.js.map +1 -1
  262. package/lib/window/GlobalWindow.d.ts +84 -0
  263. package/lib/window/GlobalWindow.js +90 -0
  264. package/lib/window/GlobalWindow.js.map +1 -0
  265. package/lib/window/IWindow.d.ts +31 -18
  266. package/lib/window/VMGlobalPropertyScript.d.ts +2 -0
  267. package/lib/window/VMGlobalPropertyScript.js +65 -0
  268. package/lib/window/VMGlobalPropertyScript.js.map +1 -0
  269. package/lib/window/Window.d.ts +72 -105
  270. package/lib/window/Window.js +269 -489
  271. package/lib/window/Window.js.map +1 -1
  272. package/lib/xml-parser/XMLParser.js +65 -71
  273. package/lib/xml-parser/XMLParser.js.map +1 -1
  274. package/lib/xml-serializer/XMLSerializer.js +30 -37
  275. package/lib/xml-serializer/XMLSerializer.js.map +1 -1
  276. package/package.json +6 -7
  277. package/src/config/ElementTag.ts +2 -1
  278. package/src/config/NonImplemenetedElementClasses.ts +0 -1
  279. package/src/dom-parser/DOMParser.ts +4 -5
  280. package/src/event/IUIEventInit.ts +2 -2
  281. package/src/event/UIEvent.ts +2 -2
  282. package/src/fetch/FetchHandler.ts +3 -3
  283. package/src/fetch/ResourceFetchHandler.ts +3 -3
  284. package/src/index.ts +7 -3
  285. package/src/nodes/document/Document.ts +4 -4
  286. package/src/nodes/document/IDocument.ts +2 -2
  287. package/src/nodes/html-base-element/HTMLBaseElement.ts +61 -0
  288. package/src/nodes/html-base-element/IHTMLBaseElement.ts +21 -0
  289. package/src/nodes/html-input-element/HTMLInputElement.ts +37 -12
  290. package/src/nodes/html-input-element/IHTMLInputElement.ts +13 -1
  291. package/src/nodes/html-link-element/HTMLLinkElement.ts +8 -2
  292. package/src/nodes/html-script-element/ScriptUtility.ts +4 -4
  293. package/src/nodes/node/INode.ts +1 -0
  294. package/src/nodes/node/Node.ts +14 -0
  295. package/src/window/GlobalWindow.ts +82 -0
  296. package/src/window/IWindow.ts +26 -12
  297. package/src/window/VMGlobalPropertyScript.ts +62 -0
  298. package/src/window/Window.ts +106 -173
  299. package/tsconfig.json +1 -1
  300. package/lib/window/AsyncWindow.d.ts +0 -10
  301. package/lib/window/AsyncWindow.js +0 -38
  302. package/lib/window/AsyncWindow.js.map +0 -1
  303. package/src/window/AsyncWindow.ts +0 -17
@@ -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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"}
@@ -3,22 +3,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- var SelfClosingElements_1 = __importDefault(require("../config/SelfClosingElements"));
7
- var UnnestableElements_1 = __importDefault(require("../config/UnnestableElements"));
8
- var ChildLessElements_1 = __importDefault(require("../config/ChildLessElements"));
9
- var he_1 = require("he");
10
- var NamespaceURI_1 = __importDefault(require("../config/NamespaceURI"));
11
- var MARKUP_REGEXP = /<(\/?)([a-z][-.0-9_a-z]*)\s*([^>]*?)(\/?)>/gi;
12
- var COMMENT_REGEXP = /<!--(.*?)-->|<([!?])([^>]*)>/gi;
13
- var DOCUMENT_TYPE_ATTRIBUTE_REGEXP = /"([^"]+)"/gm;
14
- var ATTRIBUTE_REGEXP = /([^\s=]+)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|(\S+)))/gms;
15
- var XMLNS_ATTRIBUTE_REGEXP = /xmlns[ ]*=[ ]*"([^"]+)"/;
6
+ const SelfClosingElements_1 = __importDefault(require("../config/SelfClosingElements"));
7
+ const UnnestableElements_1 = __importDefault(require("../config/UnnestableElements"));
8
+ const ChildLessElements_1 = __importDefault(require("../config/ChildLessElements"));
9
+ const he_1 = require("he");
10
+ const NamespaceURI_1 = __importDefault(require("../config/NamespaceURI"));
11
+ const MARKUP_REGEXP = /<(\/?)([a-z][-.0-9_a-z]*)\s*([^>]*?)(\/?)>/gi;
12
+ const COMMENT_REGEXP = /<!--(.*?)-->|<([!?])([^>]*)>/gi;
13
+ const DOCUMENT_TYPE_ATTRIBUTE_REGEXP = /"([^"]+)"/gm;
14
+ const ATTRIBUTE_REGEXP = /([^\s=]+)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|(\S+)))/gms;
15
+ const XMLNS_ATTRIBUTE_REGEXP = /xmlns[ ]*=[ ]*"([^"]+)"/;
16
16
  /**
17
17
  * XML parser.
18
18
  */
19
- var XMLParser = /** @class */ (function () {
20
- function XMLParser() {
21
- }
19
+ class XMLParser {
22
20
  /**
23
21
  * Parses XML/HTML and returns a root element.
24
22
  *
@@ -27,25 +25,24 @@ var XMLParser = /** @class */ (function () {
27
25
  * @param [evaluateScripts = false] Set to "true" to enable script execution.
28
26
  * @returns Root element.
29
27
  */
30
- XMLParser.parse = function (document, data, evaluateScripts) {
31
- if (evaluateScripts === void 0) { evaluateScripts = false; }
32
- var root = document.createElement('root');
33
- var stack = [root];
34
- var markupRegexp = new RegExp(MARKUP_REGEXP, 'gi');
35
- var parent = root;
36
- var parentUnnestableTagName = null;
37
- var lastTextIndex = 0;
38
- var match;
28
+ static parse(document, data, evaluateScripts = false) {
29
+ const root = document.createElement('root');
30
+ const stack = [root];
31
+ const markupRegexp = new RegExp(MARKUP_REGEXP, 'gi');
32
+ let parent = root;
33
+ let parentUnnestableTagName = null;
34
+ let lastTextIndex = 0;
35
+ let match;
39
36
  while ((match = markupRegexp.exec(data))) {
40
- var tagName = match[2].toLowerCase();
41
- var isStartTag = !match[1];
37
+ const tagName = match[2].toLowerCase();
38
+ const isStartTag = !match[1];
42
39
  if (parent && match.index !== lastTextIndex) {
43
- var text = data.substring(lastTextIndex, match.index);
40
+ const text = data.substring(lastTextIndex, match.index);
44
41
  this.appendTextAndCommentNodes(document, parent, text);
45
42
  }
46
43
  if (isStartTag) {
47
- var newElement = document.createElement(tagName);
48
- var xmlnsAttribute = this.getXmlnsAttribute(match[3]);
44
+ const newElement = document.createElement(tagName);
45
+ const xmlnsAttribute = this.getXmlnsAttribute(match[3]);
49
46
  // Scripts are not allowed to be executed when they are parsed using innerHTML, outerHTML, replaceWith() etc.
50
47
  // However, they are allowed to be executed when document.write() is used.
51
48
  // See: https://developer.mozilla.org/en-US/docs/Web/API/HTMLScriptElement
@@ -83,7 +80,7 @@ var XMLParser = /** @class */ (function () {
83
80
  // Tags which contain non-parsed content
84
81
  // For example: <script> JavaScript should not be parsed
85
82
  if (ChildLessElements_1.default.includes(tagName)) {
86
- var childLessMatch = null;
83
+ let childLessMatch = null;
87
84
  while ((childLessMatch = markupRegexp.exec(data))) {
88
85
  if (childLessMatch[2] === match[2] && childLessMatch[1]) {
89
86
  markupRegexp.lastIndex -= childLessMatch[0].length;
@@ -101,21 +98,21 @@ var XMLParser = /** @class */ (function () {
101
98
  }
102
99
  // Text after last element
103
100
  if ((!match && data.length > 0) || (match && lastTextIndex !== match.index)) {
104
- var text = data.substring(lastTextIndex);
101
+ const text = data.substring(lastTextIndex);
105
102
  this.appendTextAndCommentNodes(document, parent || root, text);
106
103
  }
107
104
  return root;
108
- };
105
+ }
109
106
  /**
110
107
  * Returns a tag name if element is unnestable.
111
108
  *
112
109
  * @param element Element.
113
110
  * @returns Tag name if element is unnestable.
114
111
  */
115
- XMLParser.getUnnestableTagName = function (element) {
116
- var tagName = element.tagName.toLowerCase();
112
+ static getUnnestableTagName(element) {
113
+ const tagName = element.tagName.toLowerCase();
117
114
  return tagName && UnnestableElements_1.default.includes(tagName) ? tagName : null;
118
- };
115
+ }
119
116
  /**
120
117
  * Appends text and comment nodes.
121
118
  *
@@ -123,12 +120,11 @@ var XMLParser = /** @class */ (function () {
123
120
  * @param node Node.
124
121
  * @param text Text to search in.
125
122
  */
126
- XMLParser.appendTextAndCommentNodes = function (document, node, text) {
127
- for (var _i = 0, _a = this.getTextAndCommentNodes(document, text); _i < _a.length; _i++) {
128
- var innerNode = _a[_i];
123
+ static appendTextAndCommentNodes(document, node, text) {
124
+ for (const innerNode of this.getTextAndCommentNodes(document, text)) {
129
125
  node.appendChild(innerNode);
130
126
  }
131
- };
127
+ }
132
128
  /**
133
129
  * Returns text and comment nodes from a text.
134
130
  *
@@ -136,57 +132,57 @@ var XMLParser = /** @class */ (function () {
136
132
  * @param text Text to search in.
137
133
  * @returns Nodes.
138
134
  */
139
- XMLParser.getTextAndCommentNodes = function (document, text) {
140
- var nodes = [];
141
- var commentRegExp = new RegExp(COMMENT_REGEXP, 'gms');
142
- var hasDocumentType = false;
143
- var lastIndex = 0;
144
- var match;
135
+ static getTextAndCommentNodes(document, text) {
136
+ const nodes = [];
137
+ const commentRegExp = new RegExp(COMMENT_REGEXP, 'gms');
138
+ let hasDocumentType = false;
139
+ let lastIndex = 0;
140
+ let match;
145
141
  while ((match = commentRegExp.exec(text))) {
146
142
  if (match.index > 0 && lastIndex !== match.index) {
147
- var textNode = document.createTextNode(text.substring(lastIndex, match.index));
143
+ const textNode = document.createTextNode(text.substring(lastIndex, match.index));
148
144
  nodes.push(textNode);
149
145
  }
150
146
  if (match[3] && match[3].toUpperCase().startsWith('DOCTYPE')) {
151
- var docTypeSplit = match[3].split(' ');
147
+ const docTypeSplit = match[3].split(' ');
152
148
  if (docTypeSplit.length > 1) {
153
- var docTypeString = docTypeSplit.slice(1).join(' ');
154
- var attributes = [];
155
- var attributeRegExp = new RegExp(DOCUMENT_TYPE_ATTRIBUTE_REGEXP, 'gm');
156
- var isPublic = docTypeString.includes('PUBLIC');
157
- var attributeMatch = void 0;
149
+ const docTypeString = docTypeSplit.slice(1).join(' ');
150
+ const attributes = [];
151
+ const attributeRegExp = new RegExp(DOCUMENT_TYPE_ATTRIBUTE_REGEXP, 'gm');
152
+ const isPublic = docTypeString.includes('PUBLIC');
153
+ let attributeMatch;
158
154
  while ((attributeMatch = attributeRegExp.exec(docTypeString))) {
159
155
  attributes.push(attributeMatch[1]);
160
156
  }
161
- var publicId = isPublic ? attributes[0] || '' : '';
162
- var systemId = isPublic ? attributes[1] || '' : attributes[0] || '';
163
- var documentTypeNode = document.implementation.createDocumentType(docTypeSplit[1], publicId, systemId);
157
+ const publicId = isPublic ? attributes[0] || '' : '';
158
+ const systemId = isPublic ? attributes[1] || '' : attributes[0] || '';
159
+ const documentTypeNode = document.implementation.createDocumentType(docTypeSplit[1], publicId, systemId);
164
160
  nodes.push(documentTypeNode);
165
161
  hasDocumentType = true;
166
162
  }
167
163
  }
168
164
  else {
169
- var comment = match[1] ? match[1] : match[2] === '?' ? '?' + match[3] : match[3];
170
- var commentNode = document.createComment(comment);
165
+ const comment = match[1] ? match[1] : match[2] === '?' ? '?' + match[3] : match[3];
166
+ const commentNode = document.createComment(comment);
171
167
  nodes.push(commentNode);
172
168
  lastIndex = match.index + match[0].length;
173
169
  }
174
170
  }
175
171
  if (!hasDocumentType && lastIndex < text.length) {
176
- var textNode = document.createTextNode(text.substring(lastIndex));
172
+ const textNode = document.createTextNode(text.substring(lastIndex));
177
173
  nodes.push(textNode);
178
174
  }
179
175
  return nodes;
180
- };
176
+ }
181
177
  /**
182
178
  * Returns XMLNS attribute.
183
179
  *
184
180
  * @param attributesString Raw attributes.
185
181
  */
186
- XMLParser.getXmlnsAttribute = function (attributesString) {
187
- var match = attributesString.match(XMLNS_ATTRIBUTE_REGEXP);
182
+ static getXmlnsAttribute(attributesString) {
183
+ const match = attributesString.match(XMLNS_ATTRIBUTE_REGEXP);
188
184
  return match ? match[1] : null;
189
- };
185
+ }
190
186
  /**
191
187
  * Sets raw attributes.
192
188
  *
@@ -194,11 +190,11 @@ var XMLParser = /** @class */ (function () {
194
190
  * @param namespaceURI Namespace URI.
195
191
  * @param attributesString Raw attributes.
196
192
  */
197
- XMLParser.setAttributes = function (element, namespaceURI, attributesString) {
198
- var attributes = attributesString.trim();
193
+ static setAttributes(element, namespaceURI, attributesString) {
194
+ const attributes = attributesString.trim();
199
195
  if (attributes) {
200
- var regExp = new RegExp(ATTRIBUTE_REGEXP, 'gi');
201
- var match = void 0;
196
+ const regExp = new RegExp(ATTRIBUTE_REGEXP, 'gi');
197
+ let match;
202
198
  // Attributes with value
203
199
  while ((match = regExp.exec(attributes))) {
204
200
  if (match[1]) {
@@ -206,14 +202,13 @@ var XMLParser = /** @class */ (function () {
206
202
  }
207
203
  }
208
204
  // Attributes with no value
209
- for (var _i = 0, _a = attributes.replace(ATTRIBUTE_REGEXP, '').trim().split(' '); _i < _a.length; _i++) {
210
- var name = _a[_i];
205
+ for (const name of attributes.replace(ATTRIBUTE_REGEXP, '').trim().split(' ')) {
211
206
  if (name) {
212
207
  element.setAttributeNS(null, this._getAttributeName(namespaceURI, name), '');
213
208
  }
214
209
  }
215
210
  }
216
- };
211
+ }
217
212
  /**
218
213
  * Returns attribute name.
219
214
  *
@@ -221,13 +216,12 @@ var XMLParser = /** @class */ (function () {
221
216
  * @param name Name.
222
217
  * @returns Attribute name based on namespace.
223
218
  */
224
- XMLParser._getAttributeName = function (namespaceURI, name) {
219
+ static _getAttributeName(namespaceURI, name) {
225
220
  if (namespaceURI === NamespaceURI_1.default.svg) {
226
221
  return name;
227
222
  }
228
223
  return name.toLowerCase();
229
- };
230
- return XMLParser;
231
- }());
224
+ }
225
+ }
232
226
  exports.default = XMLParser;
233
227
  //# sourceMappingURL=XMLParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"XMLParser.js","sourceRoot":"","sources":["../../src/xml-parser/XMLParser.ts"],"names":[],"mappings":";;;;;AAGA,sFAAgE;AAChE,oFAA8D;AAC9D,kFAA4D;AAC5D,yBAA4B;AAC5B,wEAAkD;AAMlD,IAAM,aAAa,GAAG,8CAA8C,CAAC;AACrE,IAAM,cAAc,GAAG,gCAAgC,CAAC;AACxD,IAAM,8BAA8B,GAAG,aAAa,CAAC;AACrD,IAAM,gBAAgB,GAAG,sDAAsD,CAAC;AAChF,IAAM,sBAAsB,GAAG,yBAAyB,CAAC;AAEzD;;GAEG;AACH;IAAA;IAmPA,CAAC;IAlPA;;;;;;;OAOG;IACW,eAAK,GAAnB,UAAoB,QAAmB,EAAE,IAAY,EAAE,eAAuB;QAAvB,gCAAA,EAAA,uBAAuB;QAC7E,IAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;QACrB,IAAM,YAAY,GAAG,IAAI,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACrD,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,IAAI,uBAAuB,GAAG,IAAI,CAAC;QACnC,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,KAAsB,CAAC;QAE3B,OAAO,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;YACzC,IAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YACvC,IAAM,UAAU,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAE7B,IAAI,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,aAAa,EAAE;gBAC5C,IAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBACxD,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;aACvD;YAED,IAAI,UAAU,EAAE;gBACf,IAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBACnD,IAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAExD,6GAA6G;gBAC7G,0EAA0E;gBAC1E,0EAA0E;gBAC1E,IAAI,OAAO,KAAK,QAAQ,EAAE;oBACL,UAAW,CAAC,eAAe,GAAG,eAAe,CAAC;iBAClE;gBAED,2FAA2F;gBAC3F,IAAI,OAAO,KAAK,MAAM,EAAE;oBACL,UAAW,CAAC,YAAY,GAAG,eAAe,CAAC;iBAC7D;gBAED,mEAAmE;gBACnE,8DAA8D;gBAC9D,IAAI,OAAO,KAAK,KAAK,IAAI,MAAM,CAAC,YAAY,KAAK,sBAAY,CAAC,IAAI,EAAE;oBAC1D,UAAU,CAAC,YAAa,GAAG,cAAc,IAAI,sBAAY,CAAC,GAAG,CAAC;iBACvE;qBAAM;oBACG,UAAU,CAAC,YAAa,GAAG,cAAc,IAAI,MAAM,CAAC,YAAY,CAAC;iBAC1E;gBAED,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAElE,IAAI,CAAC,6BAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oBAC3C,sFAAsF;oBACtF,wCAAwC;oBACxC,IAAI,uBAAuB,KAAK,OAAO,EAAE;wBACxC,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,MAAM,GAAY,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC;qBAC5C;oBAED,MAAM,GAAY,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;oBACjD,uBAAuB,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;oBAC5D,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBACnB;qBAAM;oBACN,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;iBAC/B;gBACD,aAAa,GAAG,YAAY,CAAC,SAAS,CAAC;gBAEvC,wCAAwC;gBACxC,wDAAwD;gBACxD,IAAI,2BAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oBACxC,IAAI,cAAc,GAAG,IAAI,CAAC;oBAC1B,OAAO,CAAC,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;wBAClD,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,EAAE;4BACxD,YAAY,CAAC,SAAS,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;4BACnD,MAAM;yBACN;qBACD;iBACD;aACD;iBAAM;gBACN,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;gBACzC,uBAAuB,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;gBAE5D,aAAa,GAAG,YAAY,CAAC,SAAS,CAAC;aACvC;SACD;QAED,0BAA0B;QAC1B,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,aAAa,KAAK,KAAK,CAAC,KAAK,CAAC,EAAE;YAC5E,IAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YAC3C,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC;SAC/D;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACY,8BAAoB,GAAnC,UAAoC,OAAiB;QACpD,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAC9C,OAAO,OAAO,IAAI,4BAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,CAAC;IAED;;;;;;OAMG;IACY,mCAAyB,GAAxC,UAAyC,QAAmB,EAAE,IAAW,EAAE,IAAY;QACtF,KAAwB,UAA2C,EAA3C,KAAA,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,IAAI,CAAC,EAA3C,cAA2C,EAA3C,IAA2C,EAAE;YAAhE,IAAM,SAAS,SAAA;YACnB,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;SAC5B;IACF,CAAC;IAED;;;;;;OAMG;IACY,gCAAsB,GAArC,UAAsC,QAAmB,EAAE,IAAY;QACtE,IAAM,KAAK,GAAG,EAAE,CAAC;QACjB,IAAM,aAAa,GAAG,IAAI,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QACxD,IAAI,eAAe,GAAG,KAAK,CAAC;QAC5B,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,KAAK,CAAC;QAEV,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;YAC1C,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,SAAS,KAAK,KAAK,CAAC,KAAK,EAAE;gBACjD,IAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjF,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACrB;YACD,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;gBAC7D,IAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAEzC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC5B,IAAM,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACtD,IAAM,UAAU,GAAG,EAAE,CAAC;oBACtB,IAAM,eAAe,GAAG,IAAI,MAAM,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAC;oBACzE,IAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBAClD,IAAI,cAAc,SAAA,CAAC;oBAEnB,OAAO,CAAC,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE;wBAC9D,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;qBACnC;oBAED,IAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrD,IAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAEtE,IAAM,gBAAgB,GAAG,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAClE,YAAY,CAAC,CAAC,CAAC,EACf,QAAQ,EACR,QAAQ,CACR,CAAC;oBAEF,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBAC7B,eAAe,GAAG,IAAI,CAAC;iBACvB;aACD;iBAAM;gBACN,IAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACnF,IAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBACpD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACxB,SAAS,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;aAC1C;SACD;QAED,IAAI,CAAC,eAAe,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE;YAChD,IAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;YACpE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACrB;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;OAIG;IACY,2BAAiB,GAAhC,UAAiC,gBAAwB;QACxD,IAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChC,CAAC;IAED;;;;;;OAMG;IACY,uBAAa,GAA5B,UACC,OAAiB,EACjB,YAAoB,EACpB,gBAAwB;QAExB,IAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAC3C,IAAI,UAAU,EAAE;YACf,IAAM,MAAM,GAAG,IAAI,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;YAClD,IAAI,KAAK,SAAiB,CAAC;YAE3B,wBAAwB;YACxB,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE;gBACzC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;oBACb,OAAO,CAAC,cAAc,CACrB,IAAI,EACJ,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAC9C,IAAA,WAAM,EAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAC9C,CAAC;iBACF;aACD;YAED,2BAA2B;YAC3B,KAAmB,UAA0D,EAA1D,KAAA,UAAU,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAA1D,cAA0D,EAA1D,IAA0D,EAAE;gBAA1E,IAAM,IAAI,SAAA;gBACd,IAAI,IAAI,EAAE;oBACT,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;iBAC7E;aACD;SACD;IACF,CAAC;IAED;;;;;;OAMG;IACY,2BAAiB,GAAhC,UAAiC,YAAoB,EAAE,IAAY;QAClE,IAAI,YAAY,KAAK,sBAAY,CAAC,GAAG,EAAE;YACtC,OAAO,IAAI,CAAC;SACZ;QACD,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC;IACF,gBAAC;AAAD,CAAC,AAnPD,IAmPC"}
1
+ {"version":3,"file":"XMLParser.js","sourceRoot":"","sources":["../../src/xml-parser/XMLParser.ts"],"names":[],"mappings":"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"}
@@ -3,16 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- var Node_1 = __importDefault(require("../nodes/node/Node"));
7
- var SelfClosingElements_1 = __importDefault(require("../config/SelfClosingElements"));
8
- var UnclosedElements_1 = __importDefault(require("../config/UnclosedElements"));
9
- var he_1 = require("he");
6
+ const Node_1 = __importDefault(require("../nodes/node/Node"));
7
+ const SelfClosingElements_1 = __importDefault(require("../config/SelfClosingElements"));
8
+ const UnclosedElements_1 = __importDefault(require("../config/UnclosedElements"));
9
+ const he_1 = require("he");
10
10
  /**
11
11
  * Utility for converting an element to string.
12
12
  */
13
- var XMLSerializer = /** @class */ (function () {
14
- function XMLSerializer() {
15
- }
13
+ class XMLSerializer {
16
14
  /**
17
15
  * Renders an element as HTML.
18
16
  *
@@ -21,69 +19,64 @@ var XMLSerializer = /** @class */ (function () {
21
19
  * @param [options.includeShadowRoots] Set to "true" to include shadow roots.
22
20
  * @returns Result.
23
21
  */
24
- XMLSerializer.prototype.serializeToString = function (root, options) {
22
+ serializeToString(root, options) {
25
23
  switch (root.nodeType) {
26
24
  case Node_1.default.ELEMENT_NODE:
27
- var element = root;
28
- var tagName = element.tagName.toLowerCase();
25
+ const element = root;
26
+ const tagName = element.tagName.toLowerCase();
29
27
  if (UnclosedElements_1.default.includes(tagName)) {
30
- return "<".concat(tagName).concat(this._getAttributes(element), ">");
28
+ return `<${tagName}${this._getAttributes(element)}>`;
31
29
  }
32
30
  else if (SelfClosingElements_1.default.includes(tagName)) {
33
- return "<".concat(tagName).concat(this._getAttributes(element), "/>");
31
+ return `<${tagName}${this._getAttributes(element)}/>`;
34
32
  }
35
- var innerHTML = '';
36
- for (var _i = 0, _a = root.childNodes; _i < _a.length; _i++) {
37
- var node = _a[_i];
33
+ let innerHTML = '';
34
+ for (const node of root.childNodes) {
38
35
  innerHTML += this.serializeToString(node, options);
39
36
  }
40
- if ((options === null || options === void 0 ? void 0 : options.includeShadowRoots) && element.shadowRoot) {
41
- innerHTML += "<template shadowroot=\"".concat(element.shadowRoot.mode, "\">");
42
- for (var _b = 0, _c = element.shadowRoot.childNodes; _b < _c.length; _b++) {
43
- var node = _c[_b];
37
+ if (options?.includeShadowRoots && element.shadowRoot) {
38
+ innerHTML += `<template shadowroot="${element.shadowRoot.mode}">`;
39
+ for (const node of element.shadowRoot.childNodes) {
44
40
  innerHTML += this.serializeToString(node, options);
45
41
  }
46
42
  innerHTML += '</template>';
47
43
  }
48
- return "<".concat(tagName).concat(this._getAttributes(element), ">").concat(innerHTML, "</").concat(tagName, ">");
44
+ return `<${tagName}${this._getAttributes(element)}>${innerHTML}</${tagName}>`;
49
45
  case Node_1.default.DOCUMENT_FRAGMENT_NODE:
50
46
  case Node_1.default.DOCUMENT_NODE:
51
- var html = '';
52
- for (var _d = 0, _e = root.childNodes; _d < _e.length; _d++) {
53
- var node = _e[_d];
47
+ let html = '';
48
+ for (const node of root.childNodes) {
54
49
  html += this.serializeToString(node, options);
55
50
  }
56
51
  return html;
57
52
  case Node_1.default.COMMENT_NODE:
58
- return "<!--".concat(root.textContent, "-->");
53
+ return `<!--${root.textContent}-->`;
59
54
  case Node_1.default.TEXT_NODE:
60
55
  return root['textContent'];
61
56
  case Node_1.default.DOCUMENT_TYPE_NODE:
62
- var doctype = root;
63
- var identifier = doctype.publicId ? ' PUBLIC' : doctype.systemId ? ' SYSTEM' : '';
64
- var publicId = doctype.publicId ? " \"".concat(doctype.publicId, "\"") : '';
65
- var systemId = doctype.systemId ? " \"".concat(doctype.systemId, "\"") : '';
66
- return "<!DOCTYPE ".concat(doctype.name).concat(identifier).concat(publicId).concat(systemId, ">");
57
+ const doctype = root;
58
+ const identifier = doctype.publicId ? ' PUBLIC' : doctype.systemId ? ' SYSTEM' : '';
59
+ const publicId = doctype.publicId ? ` "${doctype.publicId}"` : '';
60
+ const systemId = doctype.systemId ? ` "${doctype.systemId}"` : '';
61
+ return `<!DOCTYPE ${doctype.name}${identifier}${publicId}${systemId}>`;
67
62
  }
68
63
  return '';
69
- };
64
+ }
70
65
  /**
71
66
  * Returns attributes as a string.
72
67
  *
73
68
  * @param element Element.
74
69
  * @returns Attributes.
75
70
  */
76
- XMLSerializer.prototype._getAttributes = function (element) {
77
- var attributeString = '';
78
- for (var _i = 0, _a = Object.values(element._attributes); _i < _a.length; _i++) {
79
- var attribute = _a[_i];
71
+ _getAttributes(element) {
72
+ let attributeString = '';
73
+ for (const attribute of Object.values(element._attributes)) {
80
74
  if (attribute.value !== null) {
81
75
  attributeString += ' ' + attribute.name + '="' + (0, he_1.escape)(attribute.value) + '"';
82
76
  }
83
77
  }
84
78
  return attributeString;
85
- };
86
- return XMLSerializer;
87
- }());
79
+ }
80
+ }
88
81
  exports.default = XMLSerializer;
89
82
  //# sourceMappingURL=XMLSerializer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"XMLSerializer.js","sourceRoot":"","sources":["../../src/xml-serializer/XMLSerializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XMLSerializer.js","sourceRoot":"","sources":["../../src/xml-serializer/XMLSerializer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "happy-dom",
3
- "version": "2.53.1",
3
+ "version": "3.0.0",
4
4
  "license": "MIT",
5
5
  "homepage": "https://github.com/capricorn86/happy-dom",
6
6
  "repository": "https://github.com/capricorn86/happy-dom",
@@ -27,11 +27,10 @@
27
27
  "watch": "tsc -w --preserveWatchOutput",
28
28
  "lint": "eslint --ignore-path .gitignore --max-warnings 0 .",
29
29
  "lint:fix": "eslint --ignore-path .gitignore --max-warnings 0 --fix .",
30
- "test": "jest",
31
- "test:coverage": "jest --collectCoverage",
32
- "test:watch": "jest --watch",
33
- "test:update-snapshot": "jest --updateSnapshot",
34
- "test:debug": "node --inspect-brk ./node_modules/.bin/jest --runInBand"
30
+ "test": "jest --setupFilesAfterEnv ./test/setup.js",
31
+ "test:coverage": "jest --setupFilesAfterEnv ./test/setup.js --collectCoverage",
32
+ "test:watch": "jest --setupFilesAfterEnv ./test/setup.js --watch",
33
+ "test:debug": "node --inspect-brk ./node_modules/.bin/jest --setupFilesAfterEnv ./test/setup.js --runInBand"
35
34
  },
36
35
  "jest": {
37
36
  "transform": {
@@ -76,5 +75,5 @@
76
75
  "ts-jest": "^27.1.3",
77
76
  "typescript": "^4.6.2"
78
77
  },
79
- "gitHead": "e3ee61c351662abee181be4e10fed9875ce4e25d"
78
+ "gitHead": "8fff87a5f5379366c44e8f2b5e21f4dd6a6a4cc2"
80
79
  }
@@ -12,6 +12,7 @@ import HTMLStyleElement from '../nodes/html-style-element/HTMLStyleElement';
12
12
  import HTMLLabelElement from '../nodes/html-label-element/HTMLLabelElement';
13
13
  import HTMLSlotElement from '../nodes/html-slot-element/HTMLSlotElement';
14
14
  import HTMLMetaElement from '../nodes/html-meta-element/HTMLMetaElement';
15
+ import HTMLBaseElement from '../nodes/html-base-element/HTMLBaseElement';
15
16
 
16
17
  export default {
17
18
  A: HTMLElement,
@@ -22,7 +23,7 @@ export default {
22
23
  ASIDE: HTMLElement,
23
24
  AUDIO: HTMLElement,
24
25
  B: HTMLElement,
25
- BASE: HTMLElement,
26
+ BASE: HTMLBaseElement,
26
27
  BDI: HTMLElement,
27
28
  BDO: HTMLElement,
28
29
  BLOCKQUAOTE: HTMLElement,
@@ -1,7 +1,6 @@
1
1
  export default [
2
2
  'HTMLHeadElement',
3
3
  'HTMLTitleElement',
4
- 'HTMLBaseElement',
5
4
  'HTMLMetaElement',
6
5
  'HTMLBodyElement',
7
6
  'HTMLHeadingElement',
@@ -66,14 +66,13 @@ export default class DOMParser {
66
66
  const bodyElement = newDocument.createElement('body');
67
67
  const headElement = newDocument.createElement('head');
68
68
 
69
- for (const node of root.childNodes.slice()) {
70
- bodyElement.appendChild(node);
71
- }
72
-
73
69
  documentElement.appendChild(headElement);
74
70
  documentElement.appendChild(bodyElement);
75
-
76
71
  newDocument.appendChild(documentElement);
72
+
73
+ for (const node of root.childNodes.slice()) {
74
+ bodyElement.appendChild(node);
75
+ }
77
76
  }
78
77
 
79
78
  return newDocument;
@@ -1,7 +1,7 @@
1
- import Window from '../window/Window';
1
+ import IWindow from '../window/IWindow';
2
2
  import IEventInit from './IEventInit';
3
3
 
4
4
  export default interface IUIEventInit extends IEventInit {
5
5
  detail?: number;
6
- view?: Window;
6
+ view?: IWindow;
7
7
  }
@@ -1,4 +1,4 @@
1
- import Window from '../window/Window';
1
+ import IWindow from '../window/IWindow';
2
2
  import Event from './Event';
3
3
  import IUIEventInit from './IUIEventInit';
4
4
 
@@ -15,7 +15,7 @@ export default class UIEvent extends Event {
15
15
  public readonly layerY: number = 0;
16
16
  public readonly pageX: number = 0;
17
17
  public readonly pageY: number = 0;
18
- public readonly view: Window = null;
18
+ public readonly view: IWindow = null;
19
19
 
20
20
  /**
21
21
  * Constructor.
@@ -2,6 +2,8 @@ import RelativeURL from '../location/RelativeURL';
2
2
  import IRequestInit from './IRequestInit';
3
3
  import IDocument from '../nodes/document/IDocument';
4
4
  import IResponse from './IResponse';
5
+ import Response from './Response';
6
+ import NodeFetch from 'node-fetch';
5
7
 
6
8
  /**
7
9
  * Helper class for performing fetch.
@@ -17,14 +19,12 @@ export default class FetchHandler {
17
19
  */
18
20
  public static fetch(document: IDocument, url: string, init?: IRequestInit): Promise<IResponse> {
19
21
  // We want to only load NodeFetch when it is needed to improve performance and not have direct dependencies to server side packages.
20
- const nodeFetch = require('node-fetch');
21
- const Response = require('./Response').default;
22
22
  const taskManager = document.defaultView.happyDOM.asyncTaskManager;
23
23
 
24
24
  return new Promise((resolve, reject) => {
25
25
  const taskID = taskManager.startTask();
26
26
 
27
- nodeFetch(RelativeURL.getAbsoluteURL(document.defaultView.location, url), init)
27
+ NodeFetch(RelativeURL.getAbsoluteURL(document.defaultView.location, url), init)
28
28
  .then((response) => {
29
29
  if (taskManager.getTaskCount() === 0) {
30
30
  reject(new Error('Failed to complete fetch request. Task was canceled.'));