| 12345678910111213141516171819202122 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- Object.defineProperty(exports, "applyImportantSelector", {
- enumerable: true,
- get: ()=>applyImportantSelector
- });
- const _splitAtTopLevelOnly = require("./splitAtTopLevelOnly");
- function applyImportantSelector(selector, important) {
- let matches = /^(.*?)(:before|:after|::[\w-]+)(\)*)$/g.exec(selector);
- if (!matches) return `${important} ${wrapWithIs(selector)}`;
- let [, before, pseudo, brackets] = matches;
- return `${important} ${wrapWithIs(before + brackets)}${pseudo}`;
- }
- function wrapWithIs(selector) {
- let parts = (0, _splitAtTopLevelOnly.splitAtTopLevelOnly)(selector, " ");
- if (parts.length === 1 && parts[0].startsWith(":is(") && parts[0].endsWith(")")) {
- return selector;
- }
- return `:is(${selector})`;
- }
|