{"_id":"postcss-selector-minify","_rev":"2-7e5ebac8767b23b19608111ec6609d91","name":"postcss-selector-minify","dist-tags":{"latest":"2.0.0"},"versions":{"1.0.0":{"name":"postcss-selector-minify","version":"1.0.0","keywords":["css","minify","optimise","postcss","postcss-plugin","selectors"],"_id":"postcss-selector-minify@1.0.0","maintainers":[{"name":"emalmoduler","email":"emalsafi.heroverse@gmail.com"}],"dist":{"shasum":"34c014e5ba18610853ee25583ba57a3047f07aef","tarball":"https://registry.npmjs.org/postcss-selector-minify/-/postcss-selector-minify-1.0.0.tgz","fileCount":16,"integrity":"sha512-5ckfPnUijqDFV3oQ7XDFrrLY1HylO+F277AcccY5+5A+hdVs4nTXI5vzbyHxpRPWrMxP7eTigAtR3zl301nbOg==","signatures":[{"sig":"MEUCIEyXpcEHDFMp8F0WQNF5YqaKeaDaAHO1tB6XFHqpCEG6AiEApeT2LPobUsOv9iT1zNah6m5d9geG+97SUEWMPTKCheo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28659},"main":"src/index.js","types":"types/index.d.ts","engines":{"node":">=18.18.0"},"scripts":{"dev":"node test/dev.js","test":"node test/index.js && node test/foldToIs.test.js","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"emalmoduler","email":"emalsafi.heroverse@gmail.com"},"_npmVersion":"11.11.1","description":"A lightweight PostCSS plugin for optimizing and minifying CSS selectors.","directories":{},"_nodeVersion":"25.8.2","dependencies":{"cssesc":"^3.0.0","caniuse-api":"^3.0.0","browserslist":"^4.28.1","postcss-minify-selector-parser":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"postcss":"^8.5.14","typescript":"^5.8.2","@types/node":"^18.18.0","@types/cssesc":"^3.0.2","@types/caniuse-api":"^3.0.6","postcss-selector-parser":"^7.1.1"},"peerDependencies":{"postcss":"^8.5.14"},"_npmOperationalInternal":{"tmp":"tmp/postcss-selector-minify_1.0.0_1782706267522_0.561863546989009","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"postcss-selector-minify","version":"2.0.0","description":"A lightweight PostCSS plugin for optimizing and minifying CSS selectors.","main":"src/index.js","types":"types/index.d.ts","keywords":["css","minify","optimise","postcss","postcss-plugin","selectors"],"scripts":{"dev":"node test/dev.js","test":"node test/index.js && node test/foldToIs.test.js","typecheck":"tsc -p tsconfig.json --noEmit"},"dependencies":{"browserslist":"^4.28.1","caniuse-api":"^3.0.0","cssesc":"^3.0.0","layerd-unit-codec-parser":"^2.0.0"},"engines":{"node":">=18.18.0"},"devDependencies":{"@types/caniuse-api":"^3.0.6","@types/cssesc":"^3.0.2","@types/node":"^18.18.0","postcss":"^8.5.14","postcss-selector-parser":"^7.1.1","typescript":"^5.8.2"},"peerDependencies":{"postcss":"^8.5.14"},"_id":"postcss-selector-minify@2.0.0","_nodeVersion":"25.8.2","_npmVersion":"11.11.1","dist":{"integrity":"sha512-J5qvmnFs6yuF/otnXiGyu1Jmj8s6sEFrA07H4P+lMN9gN4E0oU5qtcdVPNgImZErIZhlsq70sDUir+jklHKmaw==","shasum":"8335df7c9e774806f61602c8284a35795f195386","tarball":"https://registry.npmjs.org/postcss-selector-minify/-/postcss-selector-minify-2.0.0.tgz","fileCount":16,"unpackedSize":28639,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDodIbuNPBI5sduhXBLqFUtJNqPcCO3fejNv69Yzl2EvgIgPut+t3lC9EIR0G0yFd0hSYqGrd23W3bXIpbFZ/ize84="}]},"_npmUser":{"name":"emalmoduler","email":"emalsafi.heroverse@gmail.com"},"directories":{},"maintainers":[{"name":"emalmoduler","email":"emalsafi.heroverse@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/postcss-selector-minify_2.0.0_1782737491926_0.9285628921158753"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-29T04:11:07.450Z","modified":"2026-06-29T12:51:32.163Z","1.0.0":"2026-06-29T04:11:07.671Z","2.0.0":"2026-06-29T12:51:32.052Z"},"keywords":["css","minify","optimise","postcss","postcss-plugin","selectors"],"description":"A lightweight PostCSS plugin for optimizing and minifying CSS selectors.","maintainers":[{"name":"emalmoduler","email":"emalsafi.heroverse@gmail.com"}],"readme":"# postcss-selector-minify\r\n\r\n> Minify selector with PostCSS.\r\n\r\n## Install\r\n\r\nWith [npm](https://www.npmjs.com/package/postcss-selector-minify) do:\r\n\r\n```\r\nnpm install postcss-selector-minify --save\r\n```\r\n\r\n## Example\r\n\r\n### Input\r\n\r\n```css\r\nh1 + p, h2, h3, h2{color:blue}\r\n```\r\n\r\n### Output\r\n\r\n```css\r\nh1+p,h2,h3{color:blue}\r\n```\r\n\r\n## Options\r\n\r\n### `sort`\r\n\r\nType: `boolean`  \r\nDefault: `true`\r\n\r\nAlphabetically sort selectors within a comma-separated list.\r\n\r\n### `convertToIs`\r\n\r\nType: `boolean`  \r\nDefault: `true`\r\n\r\nFactor a shared prefix and/or suffix in a comma-separated selector list into\r\na single `:is(...)` group when the result is strictly shorter and safe with\r\nrespect to the cascade. The rewrite only applies when every variable part\r\nhas the same CSS specificity (so the cascade isn't silently altered) and\r\ncontains no pseudo-elements. It is automatically skipped when the configured\r\n`browserslist` target doesn't support `:is()`.\r\n\r\n#### Input\r\n\r\n```css\r\nsection h1, article h1, aside h1, nav h1 { font-size: 25px }\r\n```\r\n\r\n#### Output\r\n\r\n```css\r\n:is(article,aside,nav,section) h1{font-size:25px}\r\n```\r\n\r\n### Browserslist\r\n\r\nThe plugin reads the `browserslist` configuration from the host project by\r\ndefault. You can override with `overrideBrowserslist`, `stats`, `env`, or\r\n`path` — the same options accepted by `autoprefixer` and `postcss-merge-rules`.\r\n","readmeFilename":"README.md"}