happy-dom 9.9.1 → 9.10.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 (59) hide show
  1. package/lib/css/declaration/utilities/CSSStyleDeclarationElementStyle.js +1 -1
  2. package/lib/css/declaration/utilities/CSSStyleDeclarationElementStyle.js.map +1 -1
  3. package/lib/nodes/document/Document.d.ts.map +1 -1
  4. package/lib/nodes/document/Document.js +3 -0
  5. package/lib/nodes/document/Document.js.map +1 -1
  6. package/lib/nodes/document-fragment/DocumentFragment.d.ts.map +1 -1
  7. package/lib/nodes/document-fragment/DocumentFragment.js +3 -0
  8. package/lib/nodes/document-fragment/DocumentFragment.js.map +1 -1
  9. package/lib/nodes/element/Element.d.ts.map +1 -1
  10. package/lib/nodes/element/Element.js +5 -15
  11. package/lib/nodes/element/Element.js.map +1 -1
  12. package/lib/nodes/element/ElementUtility.d.ts.map +1 -1
  13. package/lib/nodes/element/ElementUtility.js +18 -22
  14. package/lib/nodes/element/ElementUtility.js.map +1 -1
  15. package/lib/nodes/node/Node.d.ts +0 -8
  16. package/lib/nodes/node/Node.d.ts.map +1 -1
  17. package/lib/nodes/node/Node.js +4 -23
  18. package/lib/nodes/node/Node.js.map +1 -1
  19. package/lib/nodes/node/NodeUtility.d.ts.map +1 -1
  20. package/lib/nodes/node/NodeUtility.js +3 -4
  21. package/lib/nodes/node/NodeUtility.js.map +1 -1
  22. package/lib/query-selector/ISelectorAttribute.d.ts +6 -0
  23. package/lib/query-selector/ISelectorAttribute.d.ts.map +1 -0
  24. package/lib/query-selector/ISelectorAttribute.js +3 -0
  25. package/lib/query-selector/ISelectorAttribute.js.map +1 -0
  26. package/lib/query-selector/ISelectorMatch.d.ts +4 -0
  27. package/lib/query-selector/ISelectorMatch.d.ts.map +1 -0
  28. package/lib/query-selector/ISelectorMatch.js +3 -0
  29. package/lib/query-selector/ISelectorMatch.js.map +1 -0
  30. package/lib/query-selector/QuerySelector.d.ts +21 -31
  31. package/lib/query-selector/QuerySelector.d.ts.map +1 -1
  32. package/lib/query-selector/QuerySelector.js +123 -131
  33. package/lib/query-selector/QuerySelector.js.map +1 -1
  34. package/lib/query-selector/SelectorCombinatorEnum.d.ts +7 -0
  35. package/lib/query-selector/SelectorCombinatorEnum.d.ts.map +1 -0
  36. package/lib/query-selector/SelectorCombinatorEnum.js +10 -0
  37. package/lib/query-selector/SelectorCombinatorEnum.js.map +1 -0
  38. package/lib/query-selector/SelectorItem.d.ts +41 -56
  39. package/lib/query-selector/SelectorItem.d.ts.map +1 -1
  40. package/lib/query-selector/SelectorItem.js +194 -220
  41. package/lib/query-selector/SelectorItem.js.map +1 -1
  42. package/lib/query-selector/SelectorParser.d.ts +21 -0
  43. package/lib/query-selector/SelectorParser.d.ts.map +1 -0
  44. package/lib/query-selector/SelectorParser.js +154 -0
  45. package/lib/query-selector/SelectorParser.js.map +1 -0
  46. package/package.json +1 -1
  47. package/src/css/declaration/utilities/CSSStyleDeclarationElementStyle.ts +2 -2
  48. package/src/nodes/document/Document.ts +6 -0
  49. package/src/nodes/document-fragment/DocumentFragment.ts +6 -0
  50. package/src/nodes/element/Element.ts +9 -17
  51. package/src/nodes/element/ElementUtility.ts +20 -25
  52. package/src/nodes/node/Node.ts +6 -25
  53. package/src/nodes/node/NodeUtility.ts +3 -8
  54. package/src/query-selector/ISelectorAttribute.ts +5 -0
  55. package/src/query-selector/ISelectorMatch.ts +3 -0
  56. package/src/query-selector/QuerySelector.ts +187 -170
  57. package/src/query-selector/SelectorCombinatorEnum.ts +7 -0
  58. package/src/query-selector/SelectorItem.ts +238 -264
  59. package/src/query-selector/SelectorParser.ts +148 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Node.js","sourceRoot":"","sources":["../../../src/nodes/node/Node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Node.js","sourceRoot":"","sources":["../../../src/nodes/node/Node.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"NodeUtility.d.ts","sourceRoot":"","sources":["../../../src/nodes/node/NodeUtility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,eAAe,CAAC;AAElC,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAW3C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,WAAW;IAC/B;;;;;;;;OAQG;WACW,WAAW,CACxB,YAAY,EAAE,KAAK,EACnB,IAAI,EAAE,KAAK,EACX,OAAO,CAAC,EAAE;QAAE,yBAAyB,CAAC,EAAE,OAAO,CAAA;KAAE,GAC/C,KAAK;IA2DR;;;;;;OAMG;WACW,WAAW,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK;IAiClE;;;;;;;;;OASG;WACW,YAAY,CACzB,YAAY,EAAE,KAAK,EACnB,OAAO,EAAE,KAAK,EACd,aAAa,EAAE,KAAK,GAAG,IAAI,EAC3B,OAAO,CAAC,EAAE;QAAE,yBAAyB,CAAC,EAAE,OAAO,CAAA;KAAE,GAC/C,KAAK;IAyER;;;;;OAKG;WACW,UAAU,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI,IAAI,KAAK;IAI3D;;;;;;;;;;;OAWG;WACW,mBAAmB,CAChC,YAAY,EAAE,KAAK,EACnB,aAAa,EAAE,KAAK,EACpB,kBAAkB,UAAQ,GACxB,OAAO;IA0CV;;;;;;;;;;OAUG;WACW,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO;IAkB9D;;;;;;;;;OASG;WACW,aAAa,CAAC,IAAI,EAAE,KAAK,GAAG,MAAM;IAehD;;;;;;;;;OASG;WACW,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,KAAK,GAAG,KAAK;IA0BzD;;;;;OAKG;WACW,kBAAkB,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK;IAYpD;;;;;OAKG;WACW,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO;IA+BlF;;;;;;OAMG;WACW,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO;CAwF9D"}
1
+ {"version":3,"file":"NodeUtility.d.ts","sourceRoot":"","sources":["../../../src/nodes/node/NodeUtility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,eAAe,CAAC;AAElC,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAW3C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,WAAW;IAC/B;;;;;;;;OAQG;WACW,WAAW,CACxB,YAAY,EAAE,KAAK,EACnB,IAAI,EAAE,KAAK,EACX,OAAO,CAAC,EAAE;QAAE,yBAAyB,CAAC,EAAE,OAAO,CAAA;KAAE,GAC/C,KAAK;IA2DR;;;;;;OAMG;WACW,WAAW,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK;IAiClE;;;;;;;;;OASG;WACW,YAAY,CACzB,YAAY,EAAE,KAAK,EACnB,OAAO,EAAE,KAAK,EACd,aAAa,EAAE,KAAK,GAAG,IAAI,EAC3B,OAAO,CAAC,EAAE;QAAE,yBAAyB,CAAC,EAAE,OAAO,CAAA;KAAE,GAC/C,KAAK;IAoER;;;;;OAKG;WACW,UAAU,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI,IAAI,KAAK;IAI3D;;;;;;;;;;;OAWG;WACW,mBAAmB,CAChC,YAAY,EAAE,KAAK,EACnB,aAAa,EAAE,KAAK,EACpB,kBAAkB,UAAQ,GACxB,OAAO;IA0CV;;;;;;;;;;OAUG;WACW,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO;IAkB9D;;;;;;;;;OASG;WACW,aAAa,CAAC,IAAI,EAAE,KAAK,GAAG,MAAM;IAehD;;;;;;;;;OASG;WACW,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,KAAK,GAAG,KAAK;IA0BzD;;;;;OAKG;WACW,kBAAkB,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK;IAYpD;;;;;OAKG;WACW,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO;IA+BlF;;;;;;OAMG;WACW,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO;CAwF9D"}
@@ -121,13 +121,12 @@ class NodeUtility {
121
121
  }
122
122
  return newNode;
123
123
  }
124
- if (referenceNode === null) {
124
+ // If the referenceNode is null or undefined, then the newNode should be appended to the ancestorNode.
125
+ // According to spec only null is valid, but browsers support undefined as well.
126
+ if (!referenceNode) {
125
127
  ancestorNode.appendChild(newNode);
126
128
  return newNode;
127
129
  }
128
- if (!referenceNode) {
129
- throw new DOMException_1.default("Failed to execute 'insertBefore' on 'Node': 2 arguments required, but only 1 present.", 'TypeError');
130
- }
131
130
  if (ancestorNode.childNodes.indexOf(referenceNode) === -1) {
132
131
  throw new DOMException_1.default("Failed to execute 'insertBefore' on 'Node': The node before which the new node is to be inserted is not a child of this node.");
133
132
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NodeUtility.js","sourceRoot":"","sources":["../../../src/nodes/node/NodeUtility.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeUtility.js","sourceRoot":"","sources":["../../../src/nodes/node/NodeUtility.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export default interface ISelectorAttribute {
2
+ name: string;
3
+ operator: string | null;
4
+ value: string | null;
5
+ }
6
+ //# sourceMappingURL=ISelectorAttribute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISelectorAttribute.d.ts","sourceRoot":"","sources":["../../src/query-selector/ISelectorAttribute.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,WAAW,kBAAkB;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ISelectorAttribute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISelectorAttribute.js","sourceRoot":"","sources":["../../src/query-selector/ISelectorAttribute.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export default interface ISelectorMatch {
2
+ priorityWeight: number;
3
+ }
4
+ //# sourceMappingURL=ISelectorMatch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISelectorMatch.d.ts","sourceRoot":"","sources":["../../src/query-selector/ISelectorMatch.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,WAAW,cAAc;IACtC,cAAc,EAAE,MAAM,CAAC;CACvB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ISelectorMatch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISelectorMatch.js","sourceRoot":"","sources":["../../src/query-selector/ISelectorMatch.ts"],"names":[],"mappings":""}
@@ -1,6 +1,8 @@
1
1
  import IElement from '../nodes/element/IElement';
2
- import INode from '../nodes/node/INode';
3
2
  import INodeList from '../nodes/node/INodeList';
3
+ import IDocument from '../nodes/document/IDocument';
4
+ import IDocumentFragment from '../nodes/document-fragment/IDocumentFragment';
5
+ import ISelectorMatch from './ISelectorMatch';
4
6
  /**
5
7
  * Utility for query selection in an HTML element.
6
8
  *
@@ -14,7 +16,7 @@ export default class QuerySelector {
14
16
  * @param selector Selector.
15
17
  * @returns HTML elements.
16
18
  */
17
- static querySelectorAll(node: INode, selector: string): INodeList<IElement>;
19
+ static querySelectorAll(node: IElement | IDocument | IDocumentFragment, selector: string): INodeList<IElement>;
18
20
  /**
19
21
  * Finds an element based on a query selector.
20
22
  *
@@ -22,55 +24,43 @@ export default class QuerySelector {
22
24
  * @param selector Selector.
23
25
  * @returns HTML element.
24
26
  */
25
- static querySelector(node: INode, selector: string): IElement;
27
+ static querySelector(node: IElement | IDocument | IDocumentFragment, selector: string): IElement;
26
28
  /**
27
- * Checks if a node matches a selector and returns priority weight.
29
+ * Checks if an element matches a selector and returns priority weight.
28
30
  *
29
- * @param node Node to search in.
30
- * @param selector Selector.
31
+ * @param element Element to match.
32
+ * @param selector Selector to match with.
31
33
  * @returns Result.
32
34
  */
33
- static match(node: INode, selector: string): {
34
- priorityWeight: number;
35
- matches: boolean;
36
- };
35
+ static match(element: IElement, selector: string): ISelectorMatch | null;
37
36
  /**
38
37
  * Checks if a node matches a selector.
39
38
  *
40
- * @param targetNode Target node.
41
- * @param currentNode Current node.
42
- * @param selectorParts Selector parts.
39
+ * @param targetElement Target element.
40
+ * @param currentElement Current element.
41
+ * @param selectorItems Selector items.
43
42
  * @param [priorityWeight] Priority weight.
44
43
  * @returns Result.
45
44
  */
46
- private static matchesSelector;
45
+ private static matchSelector;
47
46
  /**
48
47
  * Finds elements based on a query selector for a part of a list of selectors separated with comma.
49
48
  *
50
- * @param rootNode Root node.
51
- * @param nodes Nodes.
52
- * @param selectorParts Selector parts.
53
- * @param [selectorItem] Selector item.
54
- * @returns HTML elements.
49
+ * @param rootElement Root element.
50
+ * @param children Child elements.
51
+ * @param selectorItems Selector items.
52
+ * @param [documentPosition] Document position of the element.
53
+ * @returns Document position and element map.
55
54
  */
56
55
  private static findAll;
57
56
  /**
58
57
  * Finds an element based on a query selector for a part of a list of selectors separated with comma.
59
58
  *
60
- * @param rootNode
61
- * @param nodes Nodes.
62
- * @param selector Selector.
63
- * @param selectorParts
64
- * @param [selectorItem] Selector item.
59
+ * @param rootElement Root element.
60
+ * @param children Child elements.
61
+ * @param selectorItems Selector items.
65
62
  * @returns HTML element.
66
63
  */
67
64
  private static findFirst;
68
- /**
69
- * Splits a selector string into groups and parts.
70
- *
71
- * @param selector Selector.
72
- * @returns HTML element.
73
- */
74
- private static getSelectorParts;
75
65
  }
76
66
  //# sourceMappingURL=QuerySelector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"QuerySelector.d.ts","sourceRoot":"","sources":["../../src/query-selector/QuerySelector.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,2BAA2B,CAAC;AACjD,OAAO,KAAK,MAAM,qBAAqB,CAAC;AAExC,OAAO,SAAS,MAAM,yBAAyB,CAAC;AAMhD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,aAAa;IACjC;;;;;;OAMG;WACW,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC;IAsBlF;;;;;;OAMG;WACW,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ;IAoBpE;;;;;;OAMG;WACW,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE;IAYhG;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IA2C9B;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,OAAO;IAoCtB;;;;;;;;;OASG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;IA2CxB;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;CAuC/B"}
1
+ {"version":3,"file":"QuerySelector.d.ts","sourceRoot":"","sources":["../../src/query-selector/QuerySelector.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,2BAA2B,CAAC;AACjD,OAAO,SAAS,MAAM,yBAAyB,CAAC;AAKhD,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,iBAAiB,MAAM,8CAA8C,CAAC;AAE7E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,aAAa;IACjC;;;;;;OAMG;WACW,gBAAgB,CAC7B,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,iBAAiB,EAC9C,QAAQ,EAAE,MAAM,GACd,SAAS,CAAC,QAAQ,CAAC;IA6BtB;;;;;;OAMG;WACW,aAAa,CAC1B,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,iBAAiB,EAC9C,QAAQ,EAAE,MAAM,GACd,QAAQ;IAyBX;;;;;;OAMG;WACW,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI;IAY/E;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAgE5B;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,OAAO;IAqDtB;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;CAkDxB"}
@@ -3,10 +3,10 @@ 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
- const Node_1 = __importDefault(require("../nodes/node/Node"));
7
- const SelectorItem_1 = __importDefault(require("./SelectorItem"));
8
6
  const NodeList_1 = __importDefault(require("../nodes/node/NodeList"));
9
- const SELECTOR_PART_REGEXP = /(\[[^\]]+\]|[a-zA-Z0-9-_.#"*:()\]]+)|([ ,>]+)/g;
7
+ const NodeTypeEnum_1 = __importDefault(require("../nodes/node/NodeTypeEnum"));
8
+ const SelectorCombinatorEnum_1 = __importDefault(require("./SelectorCombinatorEnum"));
9
+ const SelectorParser_1 = __importDefault(require("./SelectorParser"));
10
10
  /**
11
11
  * Utility for query selection in an HTML element.
12
12
  *
@@ -21,21 +21,24 @@ class QuerySelector {
21
21
  * @returns HTML elements.
22
22
  */
23
23
  static querySelectorAll(node, selector) {
24
- const matches = new NodeList_1.default();
24
+ const nodeList = new NodeList_1.default();
25
+ const allMatches = {};
25
26
  if (selector === '') {
26
27
  throw new Error("Failed to execute 'querySelectorAll' on 'Element': The provided selector is empty.");
27
28
  }
28
29
  if (selector === null || selector === undefined) {
29
- return matches;
30
+ return nodeList;
30
31
  }
31
- for (const parts of this.getSelectorParts(selector)) {
32
- for (const element of this.findAll(node, [node], parts)) {
33
- if (!matches.includes(element)) {
34
- matches.push(element);
35
- }
36
- }
32
+ for (const items of SelectorParser_1.default.getSelectorGroups(selector)) {
33
+ const matches = node.nodeType === NodeTypeEnum_1.default.elementNode
34
+ ? this.findAll(node, [node], items)
35
+ : this.findAll(null, node.children, items);
36
+ Object.assign(allMatches, matches);
37
+ }
38
+ for (const key of Object.keys(allMatches).sort()) {
39
+ nodeList.push(allMatches[key]);
37
40
  }
38
- return matches;
41
+ return nodeList;
39
42
  }
40
43
  /**
41
44
  * Finds an element based on a query selector.
@@ -51,8 +54,10 @@ class QuerySelector {
51
54
  if (selector === null || selector === undefined) {
52
55
  return null;
53
56
  }
54
- for (const parts of this.getSelectorParts(selector)) {
55
- const match = this.findFirst(node, [node], parts);
57
+ for (const items of SelectorParser_1.default.getSelectorGroups(selector)) {
58
+ const match = node.nodeType === NodeTypeEnum_1.default.elementNode
59
+ ? this.findFirst(node, [node], items)
60
+ : this.findFirst(null, node.children, items);
56
61
  if (match) {
57
62
  return match;
58
63
  }
@@ -60,85 +65,104 @@ class QuerySelector {
60
65
  return null;
61
66
  }
62
67
  /**
63
- * Checks if a node matches a selector and returns priority weight.
68
+ * Checks if an element matches a selector and returns priority weight.
64
69
  *
65
- * @param node Node to search in.
66
- * @param selector Selector.
70
+ * @param element Element to match.
71
+ * @param selector Selector to match with.
67
72
  * @returns Result.
68
73
  */
69
- static match(node, selector) {
70
- for (const parts of this.getSelectorParts(selector)) {
71
- const result = this.matchesSelector(node, node, parts.reverse());
72
- if (result.matches) {
74
+ static match(element, selector) {
75
+ for (const items of SelectorParser_1.default.getSelectorGroups(selector)) {
76
+ const result = this.matchSelector(element, element, items.reverse());
77
+ if (result) {
73
78
  return result;
74
79
  }
75
80
  }
76
- return { priorityWeight: 0, matches: false };
81
+ return null;
77
82
  }
78
83
  /**
79
84
  * Checks if a node matches a selector.
80
85
  *
81
- * @param targetNode Target node.
82
- * @param currentNode Current node.
83
- * @param selectorParts Selector parts.
86
+ * @param targetElement Target element.
87
+ * @param currentElement Current element.
88
+ * @param selectorItems Selector items.
84
89
  * @param [priorityWeight] Priority weight.
85
90
  * @returns Result.
86
91
  */
87
- static matchesSelector(targetNode, currentNode, selectorParts, priorityWeight = 0) {
88
- const isDirectChild = selectorParts[0] === '>';
89
- if (isDirectChild) {
90
- selectorParts = selectorParts.slice(1);
91
- if (selectorParts.length === 0) {
92
- return { priorityWeight: 0, matches: false };
92
+ static matchSelector(targetElement, currentElement, selectorItems, priorityWeight = 0) {
93
+ const selectorItem = selectorItems[0];
94
+ const result = selectorItem.match(currentElement);
95
+ if (result) {
96
+ if (selectorItems.length === 1) {
97
+ return {
98
+ priorityWeight: priorityWeight + result.priorityWeight
99
+ };
100
+ }
101
+ switch (selectorItem.combinator) {
102
+ case SelectorCombinatorEnum_1.default.adjacentSibling:
103
+ if (currentElement.previousElementSibling) {
104
+ const match = this.matchSelector(targetElement, currentElement.previousElementSibling, selectorItems.slice(1), priorityWeight + result.priorityWeight);
105
+ if (match) {
106
+ return match;
107
+ }
108
+ }
109
+ break;
110
+ case SelectorCombinatorEnum_1.default.child:
111
+ case SelectorCombinatorEnum_1.default.descendant:
112
+ if (currentElement.parentElement) {
113
+ const match = this.matchSelector(targetElement, currentElement.parentElement, selectorItems.slice(1), priorityWeight + result.priorityWeight);
114
+ if (match) {
115
+ return match;
116
+ }
117
+ }
118
+ break;
93
119
  }
94
120
  }
95
- if (selectorParts.length === 0) {
96
- return { priorityWeight, matches: true };
97
- }
98
- const selector = new SelectorItem_1.default(selectorParts[0]);
99
- const result = selector.match(currentNode);
100
- if (result.matches && selectorParts.length === 1) {
101
- return {
102
- priorityWeight: priorityWeight + result.priorityWeight,
103
- matches: true
104
- };
105
- }
106
- if (!currentNode.parentElement || (targetNode === currentNode && !result.matches)) {
107
- return { priorityWeight: 0, matches: false };
121
+ if (selectorItem.combinator === SelectorCombinatorEnum_1.default.descendant &&
122
+ targetElement !== currentElement &&
123
+ currentElement.parentElement) {
124
+ return this.matchSelector(targetElement, currentElement.parentElement, selectorItems, priorityWeight);
108
125
  }
109
- return this.matchesSelector(isDirectChild ? currentNode.parentElement : targetNode, currentNode.parentElement, result.matches ? selectorParts.slice(1) : selectorParts, priorityWeight + result.priorityWeight);
126
+ return null;
110
127
  }
111
128
  /**
112
129
  * Finds elements based on a query selector for a part of a list of selectors separated with comma.
113
130
  *
114
- * @param rootNode Root node.
115
- * @param nodes Nodes.
116
- * @param selectorParts Selector parts.
117
- * @param [selectorItem] Selector item.
118
- * @returns HTML elements.
131
+ * @param rootElement Root element.
132
+ * @param children Child elements.
133
+ * @param selectorItems Selector items.
134
+ * @param [documentPosition] Document position of the element.
135
+ * @returns Document position and element map.
119
136
  */
120
- static findAll(rootNode, nodes, selectorParts, selectorItem) {
121
- const isDirectChild = selectorParts[0] === '>';
122
- if (isDirectChild) {
123
- selectorParts = selectorParts.slice(1);
124
- }
125
- const selector = selectorItem || new SelectorItem_1.default(selectorParts[0]);
126
- let matched = [];
127
- for (const node of nodes) {
128
- if (node.nodeType === Node_1.default.ELEMENT_NODE) {
129
- if (selector.match(node).matches) {
130
- if (selectorParts.length === 1) {
131
- if (rootNode !== node) {
132
- matched.push(node);
133
- }
137
+ static findAll(rootElement, children, selectorItems, documentPosition) {
138
+ const selectorItem = selectorItems[0];
139
+ const nextSelectorItem = selectorItems[1];
140
+ const matched = {};
141
+ for (let i = 0, max = children.length; i < max; i++) {
142
+ const child = children[i];
143
+ const position = (documentPosition ? documentPosition + '>' : '') + i;
144
+ if (selectorItem.match(child)) {
145
+ if (!nextSelectorItem) {
146
+ if (rootElement !== child) {
147
+ matched[position] = child;
134
148
  }
135
- else {
136
- matched = matched.concat(this.findAll(rootNode, node.children, selectorParts.slice(1), null));
149
+ }
150
+ else {
151
+ switch (nextSelectorItem.combinator) {
152
+ case SelectorCombinatorEnum_1.default.adjacentSibling:
153
+ if (child.nextElementSibling) {
154
+ Object.assign(matched, this.findAll(rootElement, [child.nextElementSibling], selectorItems.slice(1), position));
155
+ }
156
+ break;
157
+ case SelectorCombinatorEnum_1.default.descendant:
158
+ case SelectorCombinatorEnum_1.default.child:
159
+ Object.assign(matched, this.findAll(rootElement, child.children, selectorItems.slice(1), position));
160
+ break;
137
161
  }
138
162
  }
139
163
  }
140
- if (!isDirectChild && node['children']) {
141
- matched = matched.concat(this.findAll(rootNode, node['children'], selectorParts, selector));
164
+ if (selectorItem.combinator === SelectorCombinatorEnum_1.default.descendant && child.children.length) {
165
+ Object.assign(matched, this.findAll(rootElement, child.children, selectorItems, position));
142
166
  }
143
167
  }
144
168
  return matched;
@@ -146,82 +170,50 @@ class QuerySelector {
146
170
  /**
147
171
  * Finds an element based on a query selector for a part of a list of selectors separated with comma.
148
172
  *
149
- * @param rootNode
150
- * @param nodes Nodes.
151
- * @param selector Selector.
152
- * @param selectorParts
153
- * @param [selectorItem] Selector item.
173
+ * @param rootElement Root element.
174
+ * @param children Child elements.
175
+ * @param selectorItems Selector items.
154
176
  * @returns HTML element.
155
177
  */
156
- static findFirst(rootNode, nodes, selectorParts, selectorItem) {
157
- const isDirectChild = selectorParts[0] === '>';
158
- if (isDirectChild) {
159
- selectorParts = selectorParts.slice(1);
160
- }
161
- const selector = selectorItem || new SelectorItem_1.default(selectorParts[0]);
162
- for (const node of nodes) {
163
- if (node.nodeType === Node_1.default.ELEMENT_NODE && selector.match(node).matches) {
164
- if (selectorParts.length === 1) {
165
- if (rootNode !== node) {
166
- return node;
178
+ static findFirst(rootElement, children, selectorItems) {
179
+ const selectorItem = selectorItems[0];
180
+ const nextSelectorItem = selectorItems[1];
181
+ for (const child of children) {
182
+ if (selectorItem.match(child)) {
183
+ if (!nextSelectorItem) {
184
+ if (rootElement !== child) {
185
+ return child;
167
186
  }
168
187
  }
169
188
  else {
170
- const childSelector = this.findFirst(rootNode, node.children, selectorParts.slice(1), null);
171
- if (childSelector) {
172
- return childSelector;
189
+ switch (nextSelectorItem.combinator) {
190
+ case SelectorCombinatorEnum_1.default.adjacentSibling:
191
+ if (child.nextElementSibling) {
192
+ const match = this.findFirst(rootElement, [child.nextElementSibling], selectorItems.slice(1));
193
+ if (match) {
194
+ return match;
195
+ }
196
+ }
197
+ break;
198
+ case SelectorCombinatorEnum_1.default.descendant:
199
+ case SelectorCombinatorEnum_1.default.child:
200
+ const match = this.findFirst(rootElement, child.children, selectorItems.slice(1));
201
+ if (match) {
202
+ return match;
203
+ }
204
+ break;
173
205
  }
174
206
  }
175
207
  }
176
- if (!isDirectChild && node['children']) {
177
- const childSelector = this.findFirst(rootNode, node['children'], selectorParts, selector);
178
- if (childSelector) {
179
- return childSelector;
208
+ if (selectorItem.combinator === SelectorCombinatorEnum_1.default.descendant && child.children.length) {
209
+ const match = this.findFirst(rootElement, child.children, selectorItems);
210
+ if (match) {
211
+ return match;
180
212
  }
181
213
  }
182
214
  }
183
215
  return null;
184
216
  }
185
- /**
186
- * Splits a selector string into groups and parts.
187
- *
188
- * @param selector Selector.
189
- * @returns HTML element.
190
- */
191
- static getSelectorParts(selector) {
192
- if (selector === '*' || (!selector.includes(',') && !selector.includes(' '))) {
193
- return [[selector]];
194
- }
195
- const regexp = new RegExp(SELECTOR_PART_REGEXP);
196
- const groups = [];
197
- let currentSelector = '';
198
- let parts = [];
199
- let match;
200
- while ((match = regexp.exec(selector))) {
201
- if (match[2]) {
202
- const trimmed = match[2].trim();
203
- parts.push(currentSelector);
204
- currentSelector = '';
205
- if (trimmed === ',') {
206
- groups.push(parts);
207
- parts = [];
208
- }
209
- else if (trimmed === '>') {
210
- parts.push('>');
211
- }
212
- }
213
- else if (match[1]) {
214
- currentSelector += match[1];
215
- }
216
- }
217
- if (currentSelector !== '') {
218
- parts.push(currentSelector);
219
- }
220
- if (parts.length > 0) {
221
- groups.push(parts);
222
- }
223
- return groups;
224
- }
225
217
  }
226
218
  exports.default = QuerySelector;
227
219
  //# sourceMappingURL=QuerySelector.js.map