mirror of
https://github.com/idanoo/GoScrobble
synced 2025-07-04 23:22:17 +00:00
0.2.0 - Mid migration
This commit is contained in:
parent
139e6a915e
commit
7e38fdbd7d
42393 changed files with 5358157 additions and 62 deletions
30
web/node_modules/postcss-selector-matches/dist/index.js
generated
vendored
Normal file
30
web/node_modules/postcss-selector-matches/dist/index.js
generated
vendored
Normal file
|
@ -0,0 +1,30 @@
|
|||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
||||
var _postcss = require("postcss");
|
||||
|
||||
var _postcss2 = _interopRequireDefault(_postcss);
|
||||
|
||||
var _replaceRuleSelector = require("./replaceRuleSelector");
|
||||
|
||||
var _replaceRuleSelector2 = _interopRequireDefault(_replaceRuleSelector);
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
function explodeSelectors() {
|
||||
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||
|
||||
return function (css) {
|
||||
css.walkRules(function (rule) {
|
||||
if (rule.selector && rule.selector.indexOf(":matches") > -1) {
|
||||
rule.selector = (0, _replaceRuleSelector2.default)(rule, options);
|
||||
}
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
exports.default = _postcss2.default.plugin("postcss-selector-matches", explodeSelectors);
|
||||
module.exports = exports.default;
|
88
web/node_modules/postcss-selector-matches/dist/replaceRuleSelector.js
generated
vendored
Normal file
88
web/node_modules/postcss-selector-matches/dist/replaceRuleSelector.js
generated
vendored
Normal file
|
@ -0,0 +1,88 @@
|
|||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = replaceRuleSelector;
|
||||
|
||||
var _list = require("postcss/lib/list");
|
||||
|
||||
var _list2 = _interopRequireDefault(_list);
|
||||
|
||||
var _balancedMatch = require("balanced-match");
|
||||
|
||||
var _balancedMatch2 = _interopRequireDefault(_balancedMatch);
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
|
||||
|
||||
var pseudoClass = ":matches";
|
||||
var selectorElementRE = /^[a-zA-Z]/;
|
||||
|
||||
function isElementSelector(selector) {
|
||||
var matches = selectorElementRE.exec(selector);
|
||||
// console.log({selector, matches})
|
||||
return matches;
|
||||
}
|
||||
|
||||
function normalizeSelector(selector, preWhitespace, pre) {
|
||||
if (isElementSelector(selector) && !isElementSelector(pre)) {
|
||||
return `${preWhitespace}${selector}${pre}`;
|
||||
}
|
||||
|
||||
return `${preWhitespace}${pre}${selector}`;
|
||||
}
|
||||
|
||||
function explodeSelector(selector, options) {
|
||||
if (selector && selector.indexOf(pseudoClass) > -1) {
|
||||
var newSelectors = [];
|
||||
var preWhitespaceMatches = selector.match(/^\s+/);
|
||||
var preWhitespace = preWhitespaceMatches ? preWhitespaceMatches[0] : "";
|
||||
var selectorPart = _list2.default.comma(selector);
|
||||
selectorPart.forEach(function (part) {
|
||||
var position = part.indexOf(pseudoClass);
|
||||
var pre = part.slice(0, position);
|
||||
var body = part.slice(position);
|
||||
var matches = (0, _balancedMatch2.default)("(", ")", body);
|
||||
|
||||
var bodySelectors = matches && matches.body ? _list2.default.comma(matches.body).reduce(function (acc, s) {
|
||||
return [].concat(_toConsumableArray(acc), _toConsumableArray(explodeSelector(s, options)));
|
||||
}, []) : [body];
|
||||
|
||||
var postSelectors = matches && matches.post ? explodeSelector(matches.post, options) : [];
|
||||
|
||||
var newParts = void 0;
|
||||
if (postSelectors.length === 0) {
|
||||
// the test below is a poor way to try we are facing a piece of a
|
||||
// selector...
|
||||
if (position === -1 || pre.indexOf(" ") > -1) {
|
||||
newParts = bodySelectors.map(function (s) {
|
||||
return preWhitespace + pre + s;
|
||||
});
|
||||
} else {
|
||||
newParts = bodySelectors.map(function (s) {
|
||||
return normalizeSelector(s, preWhitespace, pre);
|
||||
});
|
||||
}
|
||||
} else {
|
||||
newParts = [];
|
||||
postSelectors.forEach(function (postS) {
|
||||
bodySelectors.forEach(function (s) {
|
||||
newParts.push(preWhitespace + pre + s + postS);
|
||||
});
|
||||
});
|
||||
}
|
||||
newSelectors = [].concat(_toConsumableArray(newSelectors), _toConsumableArray(newParts));
|
||||
});
|
||||
|
||||
return newSelectors;
|
||||
}
|
||||
return [selector];
|
||||
}
|
||||
|
||||
function replaceRuleSelector(rule, options) {
|
||||
var indentation = rule.raws && rule.raws.before ? rule.raws.before.split("\n").pop() : "";
|
||||
return explodeSelector(rule.selector, options).join("," + (options.lineBreak ? "\n" + indentation : " "));
|
||||
}
|
||||
module.exports = exports.default;
|
Loading…
Add table
Add a link
Reference in a new issue