Add stylelint dependency
This also adds CC-BY-4.0 to the list of accepted licenses.
DISABLE_THIRD_PARTY_CHECK=update dependencies
Bug: chromium:1083142
Change-Id: I8612de2fba52dae32eeb71af79d5aacfde52142b
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2220097
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
diff --git a/node_modules/postcss-resolve-nested-selector/index.js b/node_modules/postcss-resolve-nested-selector/index.js
new file mode 100644
index 0000000..8659841
--- /dev/null
+++ b/node_modules/postcss-resolve-nested-selector/index.js
@@ -0,0 +1,25 @@
+module.exports = function resolveNestedSelector(selector, node) {
+ var parent = node.parent;
+ var parentIsNestAtRule = parent.type === 'atrule' && parent.name === 'nest';
+
+ if (parent.type === 'root') return [selector];
+ if (parent.type !== 'rule' && !parentIsNestAtRule) return resolveNestedSelector(selector, parent);
+
+ var parentSelectors = (parentIsNestAtRule)
+ ? parent.params.split(',').map(function(s) { return s.trim(); })
+ : parent.selectors;
+
+ var resolvedSelectors = parentSelectors.reduce(function(result, parentSelector) {
+ if (selector.indexOf('&') !== -1) {
+ var newlyResolvedSelectors = resolveNestedSelector(parentSelector, parent).map(function(resolvedParentSelector) {
+ return selector.replace(/&/g, resolvedParentSelector);
+ });
+ return result.concat(newlyResolvedSelectors);
+ }
+
+ var combinedSelector = [ parentSelector, selector ].join(' ');
+ return result.concat(resolveNestedSelector(combinedSelector, parent));
+ }, []);
+
+ return resolvedSelectors;
+}