postcss-unique-selectors
Advanced tools
Comparing version
{ | ||
"name": "postcss-unique-selectors", | ||
"version": "5.0.4", | ||
"version": "5.1.0", | ||
"description": "Ensure CSS selectors are unique.", | ||
"main": "src/index.js", | ||
"types": "types/index.d.ts", | ||
"files": [ | ||
"LICENSE-MIT", | ||
"src" | ||
"src", | ||
"types" | ||
], | ||
@@ -10,0 +12,0 @@ "keywords": [ |
'use strict'; | ||
const selectorParser = require('postcss-selector-parser'); | ||
/** | ||
* @param {string} selectors | ||
* @param {selectorParser.SyncProcessor<void>} callback | ||
* @return {string} | ||
*/ | ||
function parseSelectors(selectors, callback) { | ||
@@ -8,2 +13,6 @@ return selectorParser(callback).processSync(selectors); | ||
/** | ||
* @param {import('postcss').Rule} rule | ||
* @return {void} | ||
*/ | ||
function unique(rule) { | ||
@@ -15,2 +24,6 @@ const selector = [...new Set(rule.selectors)]; | ||
/** | ||
* @type {import('postcss').PluginCreator<void>} | ||
* @return {import('postcss').Plugin} | ||
*/ | ||
function pluginCreator() { | ||
@@ -21,2 +34,3 @@ return { | ||
css.walkRules((nodes) => { | ||
/** @type {string[]} */ | ||
let comments = []; | ||
@@ -23,0 +37,0 @@ nodes.selector = parseSelectors(nodes.selector, (selNode) => { |
4886
13.73%5
25%58
65.71%