happy-dom
Version:
Happy DOM is a JavaScript implementation of a web browser without its graphical user interface. It includes many web standards from WHATWG DOM and HTML.
31 lines (27 loc) • 781 B
text/typescript
import CSSRuleTypeEnum from '../CSSRuleTypeEnum.js';
import CSSConditionRule from './CSSConditionRule.js';
import * as PropertySymbol from '../../PropertySymbol.js';
/**
* CSSRule interface.
*/
export default class CSSSupportsRule extends CSSConditionRule {
public [PropertySymbol.type] = CSSRuleTypeEnum.supportsRule;
public [PropertySymbol.rulePrefix] = '';
/**
* @override
*/
public override get type(): CSSRuleTypeEnum {
return CSSRuleTypeEnum.supportsRule;
}
/**
* @override
*/
public override get cssText(): string {
let cssText = '';
for (const cssRule of this[PropertySymbol.cssRules]) {
cssText += '\n ' + cssRule.cssText;
}
cssText += '\n';
return `@${this[PropertySymbol.rulePrefix]}supports ${this.conditionText} {${cssText}}`;
}
}