Skip to content
This repository was archived by the owner on Jun 6, 2022. It is now read-only.

Commit e439a3d

Browse files
authored
Merge pull request #16 from postcss/postcss-8
2 parents fefab08 + 3de1907 commit e439a3d

File tree

6 files changed

+3069
-29
lines changed

6 files changed

+3069
-29
lines changed

.babelrc

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
{
22
"presets": [
3-
["env", {
3+
["@babel/preset-env", {
44
"targets": {
5-
"node": 4
5+
"node": 10
66
}
77
}]
88
],
99
"plugins": [
10-
"add-module-exports"
1110
]
1211
}

.travis.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
language: node_js
44

55
node_js:
6-
- 6
6+
- 14
7+
- 12
8+
- 10
79

810
install:
911
- npm install --ignore-scripts

README.md

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,11 @@ http://dev.w3.org/csswg/selectors-4/#negation
99
## Installation
1010

1111
```console
12-
$ npm install postcss-selector-not
12+
$ npm install postcss postcss-selector-not
1313
```
1414

1515
## Usage
1616

17-
```js
18-
var postcss = require("postcss")
19-
20-
var output = postcss()
21-
.use(require("postcss-selector-not"))
22-
.process(require("fs").readFileSync("input.css", "utf8"))
23-
.css
24-
```
25-
2617
Using this `input.css`:
2718

2819
```css

package.json

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,22 +20,25 @@
2020
"dist"
2121
],
2222
"dependencies": {
23-
"balanced-match": "^1.0.0",
24-
"postcss": "^7.0.2"
23+
"balanced-match": "^1.0.0"
24+
},
25+
"peerDependencies": {
26+
"postcss": "^8.1.0"
2527
},
2628
"devDependencies": {
27-
"babel-cli": "^6.26.0",
28-
"babel-plugin-add-module-exports": "^1.0.0",
29-
"babel-preset-env": "^1.7.0",
30-
"babel-register": "^6.26.0",
31-
"eslint": "^5.6.0",
32-
"tape": "^4.9.1"
29+
"@babel/core": "^7.11.6",
30+
"@babel/cli": "^7.11.6",
31+
"@babel/preset-env": "^7.11.5",
32+
"@babel/register": "^7.11.5",
33+
"eslint": "^7.9.0",
34+
"postcss": "^8.1.0",
35+
"tape": "^5.0.1"
3336
},
3437
"scripts": {
3538
"lint": "eslint ./src/*.js ./test/*.js",
36-
"tape": "tape -r babel-register test/*.js",
39+
"tape": "tape -r @babel/register test/*.js",
3740
"test": "npm run lint && npm run babelify && npm run tape",
3841
"babelify": "babel src --out-dir dist",
39-
"prepublish": "npm run babelify"
42+
"prepublishOnly": "npm run babelify"
4043
}
4144
}

src/index.js

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import postcss from "postcss"
21
import list from "postcss/lib/list"
32

43
import balancedMatch from "balanced-match"
@@ -52,14 +51,18 @@ function locatePseudoClass(selector, pseudoClass) {
5251

5352
function explodeSelectors(pseudoClass) {
5453
return () => {
55-
return (css) => {
56-
css.walkRules(rule => {
54+
return {
55+
postcssPlugin: "postcss-selector-not",
56+
Rule: (rule) => {
5757
if (rule.selector && rule.selector.indexOf(pseudoClass) > -1) {
5858
rule.selector = explodeSelector(pseudoClass, rule.selector)
5959
}
60-
})
60+
},
6161
}
6262
}
6363
}
6464

65-
export default postcss.plugin("postcss-selector-not", explodeSelectors(":not"))
65+
const creator = explodeSelectors(":not")
66+
creator.postcss = true
67+
68+
export default creator

0 commit comments

Comments
 (0)