happy-dom 2.40.0 → 2.40.1

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.

@@ -0,0 +1,2 @@
1
+ declare const _default: string[];
2
+ export default _default;
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = ['style', 'script', 'template'];
4
+ //# sourceMappingURL=ChildLessElements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChildLessElements.js","sourceRoot":"","sources":["../../src/config/ChildLessElements.ts"],"names":[],"mappings":";;AAAA,kBAAe,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC"}
package/lib/index.d.ts CHANGED
@@ -102,7 +102,8 @@ import XMLSerializer from './xml-serializer/XMLSerializer';
102
102
  import ElementTag from './config/ElementTag';
103
103
  import SelfClosingElements from './config/SelfClosingElements';
104
104
  import UnclosedElements from './config/UnclosedElements';
105
+ import ChildLessElements from './config/ChildLessElements';
105
106
  import CSSStyleSheet from './css/CSSStyleSheet';
106
107
  import Storage from './storage/Storage';
107
108
  import URLSearchParams from './url-search-params/URLSearchParams';
108
- export { AsyncWindow, Window, IWindow, DataTransfer, DataTransferItem, DataTransferItemList, URL, Location, MutationObserver, ResizeObserver, Blob, File, FileReader, DOMException, History, CSSStyleDeclaration, Screen, AsyncTaskManager, IResponse, IFetchOptions, NodeFilter, Event, EventTarget, IEventInit, IEventListener, IUIEventInit, UIEvent, ErrorEvent, FocusEvent, AnimationEvent, IAnimationEventInit, ICustomEventInit, CustomEvent, IErrorEventInit, IFocusEventInit, IInputEventInit, IKeyboardEventInit, IMouseEventInit, IProgressEventInit, IWheelEventInit, InputEvent, KeyboardEvent, MouseEvent, ProgressEvent, WheelEvent, DOMParser, Document, IDocument, HTMLDocument, XMLDocument, SVGDocument, Element, IElement, IHTMLCollection, HTMLElement, IHTMLElement, HTMLTemplateElement, IHTMLTemplateElement, HTMLFormElement, IHTMLFormElement, HTMLInputElement, IHTMLInputElement, HTMLTextAreaElement, IHTMLTextAreaElement, HTMLImageElement, IHTMLImageElement, Image, HTMLScriptElement, HTMLLinkElement, IHTMLLinkElement, HTMLStyleElement, IHTMLStyleElement, HTMLSlotElement, IHTMLSlotElement, HTMLLabelElement, IHTMLLabelElement, HTMLMetaElement, IHTMLMetaElement, SVGElement, ISVGElement, SVGGraphicsElement, ISVGGraphicsElement, SVGSVGElement, ISVGSVGElement, DocumentFragment, IDocumentFragment, ShadowRoot, IShadowRoot, Node, INode, INodeList, Text, IText, Comment, IComment, DocumentType, IDocumentType, TreeWalker, CustomElementRegistry, XMLParser, XMLSerializer, ElementTag, SelfClosingElements, UnclosedElements, CSSStyleSheet, Storage, URLSearchParams };
109
+ export { AsyncWindow, Window, IWindow, DataTransfer, DataTransferItem, DataTransferItemList, URL, Location, MutationObserver, ResizeObserver, Blob, File, FileReader, DOMException, History, CSSStyleDeclaration, Screen, AsyncTaskManager, IResponse, IFetchOptions, NodeFilter, Event, EventTarget, IEventInit, IEventListener, IUIEventInit, UIEvent, ErrorEvent, FocusEvent, AnimationEvent, IAnimationEventInit, ICustomEventInit, CustomEvent, IErrorEventInit, IFocusEventInit, IInputEventInit, IKeyboardEventInit, IMouseEventInit, IProgressEventInit, IWheelEventInit, InputEvent, KeyboardEvent, MouseEvent, ProgressEvent, WheelEvent, DOMParser, Document, IDocument, HTMLDocument, XMLDocument, SVGDocument, Element, IElement, IHTMLCollection, HTMLElement, IHTMLElement, HTMLTemplateElement, IHTMLTemplateElement, HTMLFormElement, IHTMLFormElement, HTMLInputElement, IHTMLInputElement, HTMLTextAreaElement, IHTMLTextAreaElement, HTMLImageElement, IHTMLImageElement, Image, HTMLScriptElement, HTMLLinkElement, IHTMLLinkElement, HTMLStyleElement, IHTMLStyleElement, HTMLSlotElement, IHTMLSlotElement, HTMLLabelElement, IHTMLLabelElement, HTMLMetaElement, IHTMLMetaElement, SVGElement, ISVGElement, SVGGraphicsElement, ISVGGraphicsElement, SVGSVGElement, ISVGSVGElement, DocumentFragment, IDocumentFragment, ShadowRoot, IShadowRoot, Node, INode, INodeList, Text, IText, Comment, IComment, DocumentType, IDocumentType, TreeWalker, CustomElementRegistry, XMLParser, XMLSerializer, ElementTag, SelfClosingElements, UnclosedElements, ChildLessElements, CSSStyleSheet, Storage, URLSearchParams };
package/lib/index.js CHANGED
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.SVGElement = exports.HTMLMetaElement = exports.HTMLLabelElement = exports.HTMLSlotElement = exports.HTMLStyleElement = exports.HTMLLinkElement = exports.HTMLScriptElement = exports.Image = exports.HTMLImageElement = exports.HTMLTextAreaElement = exports.HTMLInputElement = exports.HTMLFormElement = exports.HTMLTemplateElement = exports.HTMLElement = exports.Element = exports.SVGDocument = exports.XMLDocument = exports.HTMLDocument = exports.Document = exports.DOMParser = exports.WheelEvent = exports.ProgressEvent = exports.MouseEvent = exports.KeyboardEvent = exports.InputEvent = exports.CustomEvent = exports.AnimationEvent = exports.FocusEvent = exports.ErrorEvent = exports.UIEvent = exports.EventTarget = exports.Event = exports.NodeFilter = exports.AsyncTaskManager = exports.Screen = exports.CSSStyleDeclaration = exports.History = exports.DOMException = exports.FileReader = exports.File = exports.Blob = exports.ResizeObserver = exports.MutationObserver = exports.Location = exports.URL = exports.DataTransferItemList = exports.DataTransferItem = exports.DataTransfer = exports.Window = exports.AsyncWindow = void 0;
7
- exports.URLSearchParams = exports.Storage = exports.CSSStyleSheet = exports.UnclosedElements = exports.SelfClosingElements = exports.ElementTag = exports.XMLSerializer = exports.XMLParser = exports.CustomElementRegistry = exports.TreeWalker = exports.DocumentType = exports.Comment = exports.Text = exports.Node = exports.ShadowRoot = exports.DocumentFragment = exports.SVGSVGElement = exports.SVGGraphicsElement = void 0;
7
+ exports.URLSearchParams = exports.Storage = exports.CSSStyleSheet = exports.ChildLessElements = exports.UnclosedElements = exports.SelfClosingElements = exports.ElementTag = exports.XMLSerializer = exports.XMLParser = exports.CustomElementRegistry = exports.TreeWalker = exports.DocumentType = exports.Comment = exports.Text = exports.Node = exports.ShadowRoot = exports.DocumentFragment = exports.SVGSVGElement = exports.SVGGraphicsElement = void 0;
8
8
  var Window_1 = __importDefault(require("./window/Window"));
9
9
  exports.Window = Window_1.default;
10
10
  var DataTransfer_1 = __importDefault(require("./event/DataTransfer"));
@@ -135,6 +135,8 @@ var SelfClosingElements_1 = __importDefault(require("./config/SelfClosingElement
135
135
  exports.SelfClosingElements = SelfClosingElements_1.default;
136
136
  var UnclosedElements_1 = __importDefault(require("./config/UnclosedElements"));
137
137
  exports.UnclosedElements = UnclosedElements_1.default;
138
+ var ChildLessElements_1 = __importDefault(require("./config/ChildLessElements"));
139
+ exports.ChildLessElements = ChildLessElements_1.default;
138
140
  var CSSStyleSheet_1 = __importDefault(require("./css/CSSStyleSheet"));
139
141
  exports.CSSStyleSheet = CSSStyleSheet_1.default;
140
142
  var Storage_1 = __importDefault(require("./storage/Storage"));
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  var SelfClosingElements_1 = __importDefault(require("../config/SelfClosingElements"));
7
7
  var UnnestableElements_1 = __importDefault(require("../config/UnnestableElements"));
8
+ var ChildLessElements_1 = __importDefault(require("../config/ChildLessElements"));
8
9
  var he_1 = require("he");
9
10
  var NamespaceURI_1 = __importDefault(require("../config/NamespaceURI"));
10
11
  var MARKUP_REGEXP = /<(\/?)([a-z][-.0-9_a-z]*)\s*([^>]*?)(\/?)>/gi;
@@ -35,6 +36,7 @@ var XMLParser = /** @class */ (function () {
35
36
  var parentUnnestableTagName = null;
36
37
  var lastTextIndex = 0;
37
38
  var match;
39
+ var childLessIndex = 0;
38
40
  while ((match = markupRegexp.exec(data))) {
39
41
  var tagName = match[2].toLowerCase();
40
42
  var isStartTag = !match[1];
@@ -78,7 +80,15 @@ var XMLParser = /** @class */ (function () {
78
80
  else {
79
81
  parent.appendChild(newElement);
80
82
  }
81
- lastTextIndex = markupRegexp.lastIndex;
83
+ lastTextIndex = childLessIndex = markupRegexp.lastIndex;
84
+ // Tags which contain non-parsed content
85
+ // For example: <script> JavaScript should not be parsed
86
+ if (ChildLessElements_1.default.includes(tagName)) {
87
+ while (markupRegexp.exec(data)[2].toLowerCase() != tagName) {
88
+ childLessIndex = markupRegexp.lastIndex;
89
+ }
90
+ markupRegexp.lastIndex = childLessIndex;
91
+ }
82
92
  }
83
93
  else {
84
94
  stack.pop();
@@ -1 +1 @@
1
- {"version":3,"file":"XMLParser.js","sourceRoot":"","sources":["../../src/xml-parser/XMLParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XMLParser.js","sourceRoot":"","sources":["../../src/xml-parser/XMLParser.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.40.0",
3
+ "version": "2.40.1",
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": "^26.5.6",
76
76
  "typescript": "^4.2.4"
77
77
  },
78
- "gitHead": "73a5aa41064f88dfc63c515c5838742ceba4e3c7"
78
+ "gitHead": "59a41bd7278690f87e10fc647950ae374ec9ade3"
79
79
  }
@@ -0,0 +1 @@
1
+ export default ['style', 'script', 'template'];
package/src/index.ts CHANGED
@@ -102,6 +102,7 @@ import XMLSerializer from './xml-serializer/XMLSerializer';
102
102
  import ElementTag from './config/ElementTag';
103
103
  import SelfClosingElements from './config/SelfClosingElements';
104
104
  import UnclosedElements from './config/UnclosedElements';
105
+ import ChildLessElements from './config/ChildLessElements';
105
106
  import CSSStyleSheet from './css/CSSStyleSheet';
106
107
  import Storage from './storage/Storage';
107
108
  import URLSearchParams from './url-search-params/URLSearchParams';
@@ -211,6 +212,7 @@ export {
211
212
  ElementTag,
212
213
  SelfClosingElements,
213
214
  UnclosedElements,
215
+ ChildLessElements,
214
216
  CSSStyleSheet,
215
217
  Storage,
216
218
  URLSearchParams
@@ -3,6 +3,7 @@ import Element from '../nodes/element/Element';
3
3
  import IDocument from '../nodes/document/IDocument';
4
4
  import SelfClosingElements from '../config/SelfClosingElements';
5
5
  import UnnestableElements from '../config/UnnestableElements';
6
+ import ChildLessElements from '../config/ChildLessElements';
6
7
  import { decode } from 'he';
7
8
  import NamespaceURI from '../config/NamespaceURI';
8
9
  import HTMLScriptElement from '../nodes/html-script-element/HTMLScriptElement';
@@ -36,6 +37,7 @@ export default class XMLParser {
36
37
  let parentUnnestableTagName = null;
37
38
  let lastTextIndex = 0;
38
39
  let match: RegExpExecArray;
40
+ let childLessIndex = 0;
39
41
 
40
42
  while ((match = markupRegexp.exec(data))) {
41
43
  const tagName = match[2].toLowerCase();
@@ -86,8 +88,16 @@ export default class XMLParser {
86
88
  } else {
87
89
  parent.appendChild(newElement);
88
90
  }
91
+ lastTextIndex = childLessIndex = markupRegexp.lastIndex;
89
92
 
90
- lastTextIndex = markupRegexp.lastIndex;
93
+ // Tags which contain non-parsed content
94
+ // For example: <script> JavaScript should not be parsed
95
+ if (ChildLessElements.includes(tagName)) {
96
+ while (markupRegexp.exec(data)[2].toLowerCase() != tagName) {
97
+ childLessIndex = markupRegexp.lastIndex;
98
+ }
99
+ markupRegexp.lastIndex = childLessIndex;
100
+ }
91
101
  } else {
92
102
  stack.pop();
93
103
  parent = stack[stack.length - 1] || root;