happy-dom 6.0.4 → 7.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.
- package/lib/css/CSSParser.js +12 -6
- package/lib/css/CSSParser.js.map +1 -1
- package/lib/css/CSSRule.d.ts +15 -13
- package/lib/css/CSSRule.js +18 -13
- package/lib/css/CSSRule.js.map +1 -1
- package/lib/css/CSSRuleTypeEnum.d.ts +17 -0
- package/lib/css/CSSRuleTypeEnum.js +21 -0
- package/lib/css/CSSRuleTypeEnum.js.map +1 -0
- package/lib/css/CSSStyleSheet.d.ts +6 -16
- package/lib/css/CSSStyleSheet.js +11 -19
- package/lib/css/CSSStyleSheet.js.map +1 -1
- package/lib/css/declaration/AbstractCSSStyleDeclaration.d.ts +76 -0
- package/lib/css/declaration/AbstractCSSStyleDeclaration.js +182 -0
- package/lib/css/declaration/AbstractCSSStyleDeclaration.js.map +1 -0
- package/lib/css/declaration/CSSStyleDeclaration.d.ts +1194 -0
- package/lib/css/declaration/CSSStyleDeclaration.js +3566 -0
- package/lib/css/declaration/CSSStyleDeclaration.js.map +1 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationCSSParser.d.ts +12 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationCSSParser.js +34 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationCSSParser.js.map +1 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationElementDefaultCSS.d.ts +131 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationElementDefaultCSS.js +133 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationElementDefaultCSS.js.map +1 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationElementInheritedProperties.d.ts +40 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationElementInheritedProperties.js +42 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationElementInheritedProperties.js.map +1 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationElementStyle.d.ts +49 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationElementStyle.js +244 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationElementStyle.js.map +1 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationPropertyGetParser.d.ts +167 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationPropertyGetParser.js +537 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationPropertyGetParser.js.map +1 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationPropertyManager.d.ts +65 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationPropertyManager.js +565 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationPropertyManager.js.map +1 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationPropertySetParser.d.ts +809 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationPropertySetParser.js +2303 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationPropertySetParser.js.map +1 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationValueParser.d.ts +127 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationValueParser.js +411 -0
- package/lib/css/declaration/utilities/CSSStyleDeclarationValueParser.js.map +1 -0
- package/lib/css/declaration/utilities/ICSSStyleDeclarationPropertyValue.d.ts +4 -0
- package/lib/css/declaration/utilities/ICSSStyleDeclarationPropertyValue.js +3 -0
- package/lib/css/declaration/utilities/ICSSStyleDeclarationPropertyValue.js.map +1 -0
- package/lib/css/rules/CSSContainerRule.d.ts +15 -0
- package/lib/css/rules/CSSContainerRule.js +31 -0
- package/lib/css/rules/CSSContainerRule.js.map +1 -0
- package/lib/css/rules/CSSFontFaceRule.d.ts +10 -3
- package/lib/css/rules/CSSFontFaceRule.js +16 -0
- package/lib/css/rules/CSSFontFaceRule.js.map +1 -1
- package/lib/css/rules/CSSKeyframeRule.d.ts +10 -3
- package/lib/css/rules/CSSKeyframeRule.js +16 -0
- package/lib/css/rules/CSSKeyframeRule.js.map +1 -1
- package/lib/css/rules/CSSKeyframesRule.d.ts +1 -1
- package/lib/css/rules/CSSKeyframesRule.js +1 -1
- package/lib/css/rules/CSSKeyframesRule.js.map +1 -1
- package/lib/css/rules/CSSMediaRule.d.ts +1 -1
- package/lib/css/rules/CSSStyleRule.d.ts +10 -3
- package/lib/css/rules/CSSStyleRule.js +16 -0
- package/lib/css/rules/CSSStyleRule.js.map +1 -1
- package/lib/event/Event.d.ts +2 -3
- package/lib/event/Event.js.map +1 -1
- package/lib/event/events/IMediaQueryListInit.d.ts +5 -0
- package/lib/event/events/IMediaQueryListInit.js +3 -0
- package/lib/event/events/IMediaQueryListInit.js.map +1 -0
- package/lib/event/events/MediaQueryListEvent.d.ts +16 -0
- package/lib/event/events/MediaQueryListEvent.js +28 -0
- package/lib/event/events/MediaQueryListEvent.js.map +1 -0
- package/lib/exception/DOMException.js +5 -3
- package/lib/exception/DOMException.js.map +1 -1
- package/lib/exception/DOMExceptionNameEnum.d.ts +2 -1
- package/lib/exception/DOMExceptionNameEnum.js +1 -0
- package/lib/exception/DOMExceptionNameEnum.js.map +1 -1
- package/lib/file/Blob.d.ts +9 -0
- package/lib/file/Blob.js +14 -0
- package/lib/file/Blob.js.map +1 -1
- package/lib/index.d.ts +9 -2
- package/lib/index.js +16 -2
- package/lib/index.js.map +1 -1
- package/lib/match-media/MediaQueryList.d.ts +19 -8
- package/lib/match-media/MediaQueryList.js +56 -13
- package/lib/match-media/MediaQueryList.js.map +1 -1
- package/lib/{attribute → nodes/attr}/Attr.d.ts +8 -7
- package/lib/{attribute → nodes/attr}/Attr.js +12 -5
- package/lib/nodes/attr/Attr.js.map +1 -0
- package/lib/nodes/attr/IAttr.d.ts +14 -0
- package/lib/nodes/attr/IAttr.js +3 -0
- package/lib/nodes/attr/IAttr.js.map +1 -0
- package/lib/nodes/child-node/ChildNodeUtility.js +2 -1
- package/lib/nodes/child-node/ChildNodeUtility.js.map +1 -1
- package/lib/nodes/document/Document.d.ts +4 -4
- package/lib/nodes/document/Document.js +5 -8
- package/lib/nodes/document/Document.js.map +1 -1
- package/lib/nodes/document/IDocument.d.ts +3 -3
- package/lib/nodes/element/Element.d.ts +11 -9
- package/lib/nodes/element/Element.js +2 -1
- package/lib/nodes/element/Element.js.map +1 -1
- package/lib/nodes/element/IElement.d.ts +10 -8
- package/lib/nodes/html-element/HTMLElement.d.ts +21 -5
- package/lib/nodes/html-element/HTMLElement.js +74 -11
- package/lib/nodes/html-element/HTMLElement.js.map +1 -1
- package/lib/nodes/html-element/IHTMLElement.d.ts +5 -1
- package/lib/nodes/html-link-element/HTMLLinkElement.d.ts +2 -2
- package/lib/nodes/html-link-element/HTMLLinkElement.js.map +1 -1
- package/lib/nodes/html-script-element/HTMLScriptElement.d.ts +2 -2
- package/lib/nodes/html-script-element/HTMLScriptElement.js.map +1 -1
- package/lib/nodes/html-select-element/HTMLSelectElement.js +1 -1
- package/lib/nodes/html-select-element/HTMLSelectElement.js.map +1 -1
- package/lib/nodes/html-style-element/HTMLStyleElement.js +1 -1
- package/lib/nodes/html-style-element/HTMLStyleElement.js.map +1 -1
- package/lib/nodes/node/INode.d.ts +2 -0
- package/lib/nodes/node/Node.d.ts +5 -1
- package/lib/nodes/node/Node.js +7 -1
- package/lib/nodes/node/Node.js.map +1 -1
- package/lib/nodes/node/NodeTypeEnum.d.ts +2 -0
- package/lib/nodes/node/NodeTypeEnum.js +2 -0
- package/lib/nodes/node/NodeTypeEnum.js.map +1 -1
- package/lib/nodes/svg-element/ISVGElement.d.ts +1 -1
- package/lib/nodes/svg-element/SVGElement.d.ts +4 -4
- package/lib/nodes/svg-element/SVGElement.js +2 -2
- package/lib/nodes/svg-element/SVGElement.js.map +1 -1
- package/lib/window/IWindow.d.ts +23 -3
- package/lib/window/Window.d.ts +35 -6
- package/lib/window/Window.js +58 -23
- package/lib/window/Window.js.map +1 -1
- package/package.json +2 -2
- package/src/css/CSSParser.ts +14 -6
- package/src/css/CSSRule.ts +15 -13
- package/src/css/CSSRuleTypeEnum.ts +18 -0
- package/src/css/CSSStyleSheet.ts +12 -22
- package/src/css/declaration/AbstractCSSStyleDeclaration.ts +202 -0
- package/src/css/declaration/CSSStyleDeclaration.ts +4743 -0
- package/src/css/declaration/utilities/CSSStyleDeclarationCSSParser.ts +35 -0
- package/src/css/declaration/utilities/CSSStyleDeclarationElementDefaultCSS.ts +130 -0
- package/src/css/declaration/utilities/CSSStyleDeclarationElementInheritedProperties.ts +39 -0
- package/src/css/declaration/utilities/CSSStyleDeclarationElementStyle.ts +282 -0
- package/src/css/declaration/utilities/CSSStyleDeclarationPropertyGetParser.ts +743 -0
- package/src/css/declaration/utilities/CSSStyleDeclarationPropertyManager.ts +592 -0
- package/src/css/declaration/utilities/CSSStyleDeclarationPropertySetParser.ts +3026 -0
- package/src/css/declaration/utilities/CSSStyleDeclarationValueParser.ts +437 -0
- package/src/css/declaration/utilities/ICSSStyleDeclarationPropertyValue.ts +4 -0
- package/src/css/rules/CSSContainerRule.ts +23 -0
- package/src/css/rules/CSSFontFaceRule.ts +17 -2
- package/src/css/rules/CSSKeyframeRule.ts +17 -2
- package/src/css/rules/CSSKeyframesRule.ts +1 -1
- package/src/css/rules/CSSStyleRule.ts +17 -2
- package/src/event/Event.ts +2 -3
- package/src/event/events/IMediaQueryListInit.ts +6 -0
- package/src/event/events/MediaQueryListEvent.ts +25 -0
- package/src/exception/DOMException.ts +3 -3
- package/src/exception/DOMExceptionNameEnum.ts +2 -1
- package/src/file/Blob.ts +16 -0
- package/src/index.ts +15 -1
- package/src/match-media/MediaQueryList.ts +63 -10
- package/src/{attribute → nodes/attr}/Attr.ts +11 -8
- package/src/nodes/attr/IAttr.ts +15 -0
- package/src/nodes/child-node/ChildNodeUtility.ts +2 -1
- package/src/nodes/document/Document.ts +8 -10
- package/src/nodes/document/IDocument.ts +3 -3
- package/src/nodes/element/Element.ts +13 -10
- package/src/nodes/element/IElement.ts +8 -8
- package/src/nodes/html-element/HTMLElement.ts +94 -16
- package/src/nodes/html-element/IHTMLElement.ts +3 -1
- package/src/nodes/html-link-element/HTMLLinkElement.ts +2 -2
- package/src/nodes/html-script-element/HTMLScriptElement.ts +2 -2
- package/src/nodes/html-select-element/HTMLSelectElement.ts +1 -1
- package/src/nodes/html-style-element/HTMLStyleElement.ts +1 -1
- package/src/nodes/node/INode.ts +2 -0
- package/src/nodes/node/Node.ts +7 -1
- package/src/nodes/node/NodeTypeEnum.ts +2 -0
- package/src/nodes/svg-element/ISVGElement.ts +1 -1
- package/src/nodes/svg-element/SVGElement.ts +5 -5
- package/src/window/IWindow.ts +23 -3
- package/src/window/Window.ts +51 -11
- package/lib/attribute/Attr.js.map +0 -1
- package/lib/css/CSSStyleDeclaration.d.ts +0 -3017
- package/lib/css/CSSStyleDeclaration.js +0 -4643
- package/lib/css/CSSStyleDeclaration.js.map +0 -1
- package/src/css/CSSStyleDeclaration.ts +0 -5026
@@ -0,0 +1,49 @@
|
|
1
|
+
import IElement from '../../../nodes/element/IElement';
|
2
|
+
import CSSStyleDeclarationPropertyManager from './CSSStyleDeclarationPropertyManager';
|
3
|
+
/**
|
4
|
+
* CSS Style Declaration utility
|
5
|
+
*/
|
6
|
+
export default class CSSStyleDeclarationElementStyle {
|
7
|
+
private cache;
|
8
|
+
private element;
|
9
|
+
private computed;
|
10
|
+
/**
|
11
|
+
* Constructor.
|
12
|
+
*
|
13
|
+
* @param element Element.
|
14
|
+
* @param [computed] Computed.
|
15
|
+
*/
|
16
|
+
constructor(element: IElement, computed?: boolean);
|
17
|
+
/**
|
18
|
+
* Returns element style properties.
|
19
|
+
*
|
20
|
+
* @returns Element style properties.
|
21
|
+
*/
|
22
|
+
getElementStyle(): CSSStyleDeclarationPropertyManager;
|
23
|
+
/**
|
24
|
+
* Returns style sheets.
|
25
|
+
*
|
26
|
+
* @param element Element.
|
27
|
+
* @returns Style sheets.
|
28
|
+
*/
|
29
|
+
private getComputedElementStyle;
|
30
|
+
/**
|
31
|
+
* Applies CSS text to elements.
|
32
|
+
*
|
33
|
+
* @param options Options.
|
34
|
+
* @param options.elements Elements.
|
35
|
+
* @param options.cssRules CSS rules.
|
36
|
+
* @param [options.hostElement] Host element.
|
37
|
+
* @param [options.hostElement.element] Element.
|
38
|
+
* @param [options.hostElement.cssText] CSS text.
|
39
|
+
*/
|
40
|
+
private parseCSSRules;
|
41
|
+
/**
|
42
|
+
* Returns CSS value.
|
43
|
+
*
|
44
|
+
* @param value Value.
|
45
|
+
* @param cssVariables CSS variables.
|
46
|
+
* @returns CSS value.
|
47
|
+
*/
|
48
|
+
private getCSSValue;
|
49
|
+
}
|
@@ -0,0 +1,244 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
const CSSStyleDeclarationPropertyManager_1 = __importDefault(require("./CSSStyleDeclarationPropertyManager"));
|
7
|
+
const NodeTypeEnum_1 = __importDefault(require("../../../nodes/node/NodeTypeEnum"));
|
8
|
+
const CSSRuleTypeEnum_1 = __importDefault(require("../../CSSRuleTypeEnum"));
|
9
|
+
const CSSStyleDeclarationElementDefaultCSS_1 = __importDefault(require("./CSSStyleDeclarationElementDefaultCSS"));
|
10
|
+
const CSSStyleDeclarationElementInheritedProperties_1 = __importDefault(require("./CSSStyleDeclarationElementInheritedProperties"));
|
11
|
+
const CSSStyleDeclarationCSSParser_1 = __importDefault(require("./CSSStyleDeclarationCSSParser"));
|
12
|
+
const CSS_VARIABLE_REGEXP = /var\( *(--[^) ]+)\)/g;
|
13
|
+
/**
|
14
|
+
* CSS Style Declaration utility
|
15
|
+
*/
|
16
|
+
class CSSStyleDeclarationElementStyle {
|
17
|
+
/**
|
18
|
+
* Constructor.
|
19
|
+
*
|
20
|
+
* @param element Element.
|
21
|
+
* @param [computed] Computed.
|
22
|
+
*/
|
23
|
+
constructor(element, computed = false) {
|
24
|
+
this.cache = {};
|
25
|
+
this.element = element;
|
26
|
+
this.computed = computed;
|
27
|
+
}
|
28
|
+
/**
|
29
|
+
* Returns element style properties.
|
30
|
+
*
|
31
|
+
* @returns Element style properties.
|
32
|
+
*/
|
33
|
+
getElementStyle() {
|
34
|
+
if (this.computed) {
|
35
|
+
return this.getComputedElementStyle();
|
36
|
+
}
|
37
|
+
const cssText = this.element['_attributes']['style']?.value;
|
38
|
+
if (cssText) {
|
39
|
+
if (this.cache[cssText]) {
|
40
|
+
return this.cache[cssText];
|
41
|
+
}
|
42
|
+
this.cache[cssText] = new CSSStyleDeclarationPropertyManager_1.default({ cssText });
|
43
|
+
return this.cache[cssText];
|
44
|
+
}
|
45
|
+
return new CSSStyleDeclarationPropertyManager_1.default();
|
46
|
+
}
|
47
|
+
/**
|
48
|
+
* Returns style sheets.
|
49
|
+
*
|
50
|
+
* @param element Element.
|
51
|
+
* @returns Style sheets.
|
52
|
+
*/
|
53
|
+
getComputedElementStyle() {
|
54
|
+
const documentElements = [];
|
55
|
+
const parentElements = [];
|
56
|
+
let styleAndElement = {
|
57
|
+
element: this.element,
|
58
|
+
cssText: ''
|
59
|
+
};
|
60
|
+
let shadowRootElements = [];
|
61
|
+
if (!this.element.isConnected) {
|
62
|
+
return new CSSStyleDeclarationPropertyManager_1.default();
|
63
|
+
}
|
64
|
+
// Walks through all parent elements and stores them in an array with element and matching CSS text.
|
65
|
+
while (styleAndElement.element) {
|
66
|
+
if (styleAndElement.element.nodeType === NodeTypeEnum_1.default.elementNode) {
|
67
|
+
const rootNode = styleAndElement.element.getRootNode();
|
68
|
+
if (rootNode.nodeType === NodeTypeEnum_1.default.documentNode) {
|
69
|
+
documentElements.unshift(styleAndElement);
|
70
|
+
}
|
71
|
+
else {
|
72
|
+
shadowRootElements.unshift(styleAndElement);
|
73
|
+
}
|
74
|
+
parentElements.unshift(styleAndElement);
|
75
|
+
}
|
76
|
+
if (styleAndElement.element === this.element.ownerDocument) {
|
77
|
+
const styleSheets = (this.element.ownerDocument.querySelectorAll('style,link[rel="stylesheet"]'));
|
78
|
+
for (const styleSheet of styleSheets) {
|
79
|
+
const sheet = styleSheet.sheet;
|
80
|
+
if (sheet) {
|
81
|
+
this.parseCSSRules({
|
82
|
+
elements: documentElements,
|
83
|
+
cssRules: sheet.cssRules
|
84
|
+
});
|
85
|
+
}
|
86
|
+
}
|
87
|
+
styleAndElement = { element: null, cssText: '' };
|
88
|
+
}
|
89
|
+
else if (styleAndElement.element.host) {
|
90
|
+
const styleSheets = (styleAndElement.element.querySelectorAll('style,link[rel="stylesheet"]'));
|
91
|
+
styleAndElement = {
|
92
|
+
element: styleAndElement.element.host,
|
93
|
+
cssText: ''
|
94
|
+
};
|
95
|
+
for (const styleSheet of styleSheets) {
|
96
|
+
const sheet = styleSheet.sheet;
|
97
|
+
if (sheet) {
|
98
|
+
this.parseCSSRules({
|
99
|
+
elements: shadowRootElements,
|
100
|
+
cssRules: sheet.cssRules,
|
101
|
+
hostElement: styleAndElement
|
102
|
+
});
|
103
|
+
}
|
104
|
+
}
|
105
|
+
shadowRootElements = [];
|
106
|
+
}
|
107
|
+
else {
|
108
|
+
styleAndElement = { element: styleAndElement.element.parentNode, cssText: '' };
|
109
|
+
}
|
110
|
+
}
|
111
|
+
// Concatenates all parent element CSS to one string.
|
112
|
+
const targetElement = parentElements[parentElements.length - 1];
|
113
|
+
let inheritedCSSText = CSSStyleDeclarationElementDefaultCSS_1.default.default;
|
114
|
+
for (const parentElement of parentElements) {
|
115
|
+
if (parentElement !== targetElement) {
|
116
|
+
inheritedCSSText +=
|
117
|
+
(CSSStyleDeclarationElementDefaultCSS_1.default[parentElement.element.tagName] || '') +
|
118
|
+
parentElement.cssText +
|
119
|
+
(parentElement.element['_attributes']['style']?.value || '');
|
120
|
+
}
|
121
|
+
}
|
122
|
+
const cssVariables = {};
|
123
|
+
const properties = {};
|
124
|
+
const targetCSSText = (CSSStyleDeclarationElementDefaultCSS_1.default[targetElement.element.tagName] || '') +
|
125
|
+
targetElement.cssText +
|
126
|
+
(targetElement.element['_attributes']['style']?.value || '');
|
127
|
+
const combinedCSSText = inheritedCSSText + targetCSSText;
|
128
|
+
if (this.cache[combinedCSSText]) {
|
129
|
+
return this.cache[combinedCSSText];
|
130
|
+
}
|
131
|
+
// Parses the parent element CSS and stores CSS variables and inherited properties.
|
132
|
+
CSSStyleDeclarationCSSParser_1.default.parse(inheritedCSSText, (name, value, important) => {
|
133
|
+
if (name.startsWith('--')) {
|
134
|
+
const cssValue = this.getCSSValue(value, cssVariables);
|
135
|
+
if (cssValue) {
|
136
|
+
cssVariables[name] = cssValue;
|
137
|
+
}
|
138
|
+
return;
|
139
|
+
}
|
140
|
+
if (CSSStyleDeclarationElementInheritedProperties_1.default[name]) {
|
141
|
+
const cssValue = this.getCSSValue(value, cssVariables);
|
142
|
+
if (cssValue && (!properties[name]?.important || important)) {
|
143
|
+
properties[name] = {
|
144
|
+
value: cssValue,
|
145
|
+
important
|
146
|
+
};
|
147
|
+
}
|
148
|
+
}
|
149
|
+
});
|
150
|
+
// Parses the target element CSS.
|
151
|
+
CSSStyleDeclarationCSSParser_1.default.parse(targetCSSText, (name, value, important) => {
|
152
|
+
if (name.startsWith('--')) {
|
153
|
+
const cssValue = this.getCSSValue(value, cssVariables);
|
154
|
+
if (cssValue && (!properties[name]?.important || important)) {
|
155
|
+
cssVariables[name] = cssValue;
|
156
|
+
properties[name] = {
|
157
|
+
value,
|
158
|
+
important
|
159
|
+
};
|
160
|
+
}
|
161
|
+
}
|
162
|
+
else {
|
163
|
+
const cssValue = this.getCSSValue(value, cssVariables);
|
164
|
+
if (cssValue && (!properties[name]?.important || important)) {
|
165
|
+
properties[name] = {
|
166
|
+
value: cssValue,
|
167
|
+
important
|
168
|
+
};
|
169
|
+
}
|
170
|
+
}
|
171
|
+
});
|
172
|
+
const propertyManager = new CSSStyleDeclarationPropertyManager_1.default();
|
173
|
+
for (const name of Object.keys(properties)) {
|
174
|
+
propertyManager.set(name, properties[name].value, properties[name].important);
|
175
|
+
}
|
176
|
+
this.cache[combinedCSSText] = propertyManager;
|
177
|
+
return propertyManager;
|
178
|
+
}
|
179
|
+
/**
|
180
|
+
* Applies CSS text to elements.
|
181
|
+
*
|
182
|
+
* @param options Options.
|
183
|
+
* @param options.elements Elements.
|
184
|
+
* @param options.cssRules CSS rules.
|
185
|
+
* @param [options.hostElement] Host element.
|
186
|
+
* @param [options.hostElement.element] Element.
|
187
|
+
* @param [options.hostElement.cssText] CSS text.
|
188
|
+
*/
|
189
|
+
parseCSSRules(options) {
|
190
|
+
if (!options.elements.length) {
|
191
|
+
return;
|
192
|
+
}
|
193
|
+
const defaultView = options.elements[0].element.ownerDocument.defaultView;
|
194
|
+
for (const rule of options.cssRules) {
|
195
|
+
if (rule.type === CSSRuleTypeEnum_1.default.styleRule) {
|
196
|
+
const selectorText = rule.selectorText;
|
197
|
+
if (selectorText) {
|
198
|
+
if (selectorText.startsWith(':host')) {
|
199
|
+
if (options.hostElement) {
|
200
|
+
options.hostElement.cssText += rule._cssText;
|
201
|
+
}
|
202
|
+
}
|
203
|
+
else {
|
204
|
+
for (const element of options.elements) {
|
205
|
+
if (element.element.matches(selectorText)) {
|
206
|
+
element.cssText += rule._cssText;
|
207
|
+
}
|
208
|
+
}
|
209
|
+
}
|
210
|
+
}
|
211
|
+
}
|
212
|
+
else if (rule.type === CSSRuleTypeEnum_1.default.mediaRule &&
|
213
|
+
defaultView.matchMedia(rule.conditionalText).matches) {
|
214
|
+
this.parseCSSRules({
|
215
|
+
elements: options.elements,
|
216
|
+
cssRules: rule.cssRules,
|
217
|
+
hostElement: options.hostElement
|
218
|
+
});
|
219
|
+
}
|
220
|
+
}
|
221
|
+
}
|
222
|
+
/**
|
223
|
+
* Returns CSS value.
|
224
|
+
*
|
225
|
+
* @param value Value.
|
226
|
+
* @param cssVariables CSS variables.
|
227
|
+
* @returns CSS value.
|
228
|
+
*/
|
229
|
+
getCSSValue(value, cssVariables) {
|
230
|
+
const regexp = new RegExp(CSS_VARIABLE_REGEXP);
|
231
|
+
let newValue = value;
|
232
|
+
let match;
|
233
|
+
while ((match = regexp.exec(value)) !== null) {
|
234
|
+
const cssVariableValue = cssVariables[match[1]];
|
235
|
+
if (!cssVariableValue) {
|
236
|
+
return null;
|
237
|
+
}
|
238
|
+
newValue = newValue.replace(match[0], cssVariableValue);
|
239
|
+
}
|
240
|
+
return newValue;
|
241
|
+
}
|
242
|
+
}
|
243
|
+
exports.default = CSSStyleDeclarationElementStyle;
|
244
|
+
//# sourceMappingURL=CSSStyleDeclarationElementStyle.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"CSSStyleDeclarationElementStyle.js","sourceRoot":"","sources":["../../../../src/css/declaration/utilities/CSSStyleDeclarationElementStyle.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,167 @@
|
|
1
|
+
import ICSSStyleDeclarationPropertyValue from './ICSSStyleDeclarationPropertyValue';
|
2
|
+
/**
|
3
|
+
* Computed style property parser.
|
4
|
+
*/
|
5
|
+
export default class CSSStyleDeclarationPropertyGetParser {
|
6
|
+
/**
|
7
|
+
* Returns margin.
|
8
|
+
*
|
9
|
+
* @param properties Properties.
|
10
|
+
* @returns Property value
|
11
|
+
*/
|
12
|
+
static getMargin(properties: {
|
13
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
14
|
+
}): ICSSStyleDeclarationPropertyValue;
|
15
|
+
/**
|
16
|
+
* Returns padding.
|
17
|
+
*
|
18
|
+
* @param properties Properties.
|
19
|
+
* @returns Property value
|
20
|
+
*/
|
21
|
+
static getPadding(properties: {
|
22
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
23
|
+
}): ICSSStyleDeclarationPropertyValue;
|
24
|
+
/**
|
25
|
+
* Returns border.
|
26
|
+
*
|
27
|
+
* @param properties Properties.
|
28
|
+
* @returns Property value
|
29
|
+
*/
|
30
|
+
static getBorder(properties: {
|
31
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
32
|
+
}): ICSSStyleDeclarationPropertyValue;
|
33
|
+
/**
|
34
|
+
* Returns border.
|
35
|
+
*
|
36
|
+
* @param properties Properties.
|
37
|
+
* @returns Property value
|
38
|
+
*/
|
39
|
+
static getBorderTop(properties: {
|
40
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
41
|
+
}): ICSSStyleDeclarationPropertyValue;
|
42
|
+
/**
|
43
|
+
* Returns border.
|
44
|
+
*
|
45
|
+
* @param properties Properties.
|
46
|
+
* @returns Property value
|
47
|
+
*/
|
48
|
+
static getBorderRight(properties: {
|
49
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
50
|
+
}): ICSSStyleDeclarationPropertyValue;
|
51
|
+
/**
|
52
|
+
* Returns border.
|
53
|
+
*
|
54
|
+
* @param properties Properties.
|
55
|
+
* @returns Property value
|
56
|
+
*/
|
57
|
+
static getBorderBottom(properties: {
|
58
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
59
|
+
}): ICSSStyleDeclarationPropertyValue;
|
60
|
+
/**
|
61
|
+
* Returns border.
|
62
|
+
*
|
63
|
+
* @param properties Properties.
|
64
|
+
* @returns Property value
|
65
|
+
*/
|
66
|
+
static getBorderLeft(properties: {
|
67
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
68
|
+
}): ICSSStyleDeclarationPropertyValue;
|
69
|
+
/**
|
70
|
+
* Returns border.
|
71
|
+
*
|
72
|
+
* @param properties Properties.
|
73
|
+
* @returns Property value
|
74
|
+
*/
|
75
|
+
static getBorderColor(properties: {
|
76
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
77
|
+
}): ICSSStyleDeclarationPropertyValue;
|
78
|
+
/**
|
79
|
+
* Returns border.
|
80
|
+
*
|
81
|
+
* @param properties Properties.
|
82
|
+
* @returns Property value
|
83
|
+
*/
|
84
|
+
static getBorderWidth(properties: {
|
85
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
86
|
+
}): ICSSStyleDeclarationPropertyValue;
|
87
|
+
/**
|
88
|
+
* Returns border.
|
89
|
+
*
|
90
|
+
* @param properties Properties.
|
91
|
+
* @returns Property value
|
92
|
+
*/
|
93
|
+
static getBorderStyle(properties: {
|
94
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
95
|
+
}): ICSSStyleDeclarationPropertyValue;
|
96
|
+
/**
|
97
|
+
* Returns border radius.
|
98
|
+
*
|
99
|
+
* @param properties Properties.
|
100
|
+
* @returns Property value
|
101
|
+
*/
|
102
|
+
static getBorderRadius(properties: {
|
103
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
104
|
+
}): ICSSStyleDeclarationPropertyValue;
|
105
|
+
/**
|
106
|
+
* Returns border image.
|
107
|
+
*
|
108
|
+
* @param properties Properties.
|
109
|
+
* @returns Property value
|
110
|
+
*/
|
111
|
+
static getBorderImage(properties: {
|
112
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
113
|
+
}): ICSSStyleDeclarationPropertyValue;
|
114
|
+
/**
|
115
|
+
* Returns background.
|
116
|
+
*
|
117
|
+
* @param properties Properties.
|
118
|
+
* @returns Property value
|
119
|
+
*/
|
120
|
+
static getBackground(properties: {
|
121
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
122
|
+
}): ICSSStyleDeclarationPropertyValue;
|
123
|
+
/**
|
124
|
+
* Returns background position.
|
125
|
+
*
|
126
|
+
* @param properties Properties.
|
127
|
+
* @returns Property value
|
128
|
+
*/
|
129
|
+
static getBackgroundPosition(properties: {
|
130
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
131
|
+
}): ICSSStyleDeclarationPropertyValue;
|
132
|
+
/**
|
133
|
+
* Returns flex.
|
134
|
+
*
|
135
|
+
* @param properties Properties.
|
136
|
+
* @returns Property value
|
137
|
+
*/
|
138
|
+
static getFlex(properties: {
|
139
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
140
|
+
}): ICSSStyleDeclarationPropertyValue;
|
141
|
+
/**
|
142
|
+
* Returns flex.
|
143
|
+
*
|
144
|
+
* @param properties Properties.
|
145
|
+
* @returns Property value
|
146
|
+
*/
|
147
|
+
static getFont(properties: {
|
148
|
+
[k: string]: ICSSStyleDeclarationPropertyValue;
|
149
|
+
}): ICSSStyleDeclarationPropertyValue;
|
150
|
+
/**
|
151
|
+
* Returns border.
|
152
|
+
*
|
153
|
+
* @param properties Properties.
|
154
|
+
* @param position
|
155
|
+
* @returns Property value
|
156
|
+
*/
|
157
|
+
private static getBorderTopRightBottomLeft;
|
158
|
+
/**
|
159
|
+
* Returns a padding like property.
|
160
|
+
*
|
161
|
+
* @param properties Properties.
|
162
|
+
* @param position
|
163
|
+
* @param propertyNames
|
164
|
+
* @returns Property value
|
165
|
+
*/
|
166
|
+
private static getPaddingLikeProperty;
|
167
|
+
}
|