Skip to content

Commit ecdce3b

Browse files
committed
chore: dependencies update + prettier (breaking change)
BREAKING CHANGE: Only works for Node >= 6
1 parent d38f417 commit ecdce3b

File tree

8 files changed

+852
-948
lines changed

8 files changed

+852
-948
lines changed

.eslintrc

Lines changed: 0 additions & 13 deletions
This file was deleted.

.eslintrc.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
module.exports = {
2+
env: {
3+
es6: true,
4+
node: true,
5+
mocha: true,
6+
},
7+
8+
plugins: ["standard", "import"],
9+
10+
extends: ["eslint-config-standard", "plugin:prettier/recommended"],
11+
};

.prettierrc

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"tabWidth": 2,
3+
"printWidth": 100,
4+
"arrowParens": "always",
5+
"semi": false,
6+
"bracketSpacing": false,
7+
"singleQuote": true,
8+
"jsxSingleQuote": false,
9+
"jsxBracketSameLine": false,
10+
"trailingComma": "es5"
11+
}

.travis.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
language: node_js
22
node_js:
3-
- "4"
4-
- "5"
53
- "6"
6-
- "7"
74
- "8"
8-
- "9"
5+
- "10"
6+
- "12"
7+
- "14"

lib/css-byebye.js

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22
* @module css-byebye
33
*/
44

5-
var postcss = require('postcss')
5+
const postcss = require('postcss')
66

77
/**
88
* Escape a string so that it can be turned into a regex
99
* @param {String} str String to transform
1010
* @return {String} Escaped string
1111
*/
12-
function escapeRegExp (str) {
12+
function escapeRegExp(str) {
1313
return str.replace(/[-[\]/{}()*+?.\\^$|]/g, '\\$&')
1414
}
1515

@@ -18,9 +18,9 @@ function escapeRegExp (str) {
1818
* @param {Mixed Array} rulesToRemove
1919
* @return {RegExp Array}
2020
*/
21-
function regexize (rulesToRemove) {
22-
var rulesRegexes = []
23-
for (var i = 0, l = rulesToRemove.length; i < l; i++) {
21+
function regexize(rulesToRemove) {
22+
const rulesRegexes = []
23+
for (let i = 0, l = rulesToRemove.length; i < l; i++) {
2424
if (typeof rulesToRemove[i] === 'string') {
2525
rulesRegexes.push(new RegExp('^\\s*' + escapeRegExp(rulesToRemove[i]) + '\\s*$'))
2626
} else {
@@ -35,11 +35,11 @@ function regexize (rulesToRemove) {
3535
* @param {RegExp Array} regexes
3636
* @return {RegExp} concatanated regexp
3737
*/
38-
function concatRegexes (regexes) {
39-
var rconcat = ''
38+
function concatRegexes(regexes) {
39+
let rconcat = ''
4040

4141
if (Array.isArray(regexes)) {
42-
for (var i = 0, l = regexes.length; i < l; i++) {
42+
for (let i = 0, l = regexes.length; i < l; i++) {
4343
rconcat += regexes[i].source + '|'
4444
}
4545

@@ -52,18 +52,18 @@ function concatRegexes (regexes) {
5252
/**
5353
* Return the actual postcss plugin to remove rules from the css
5454
*/
55-
var cssbyebye = postcss.plugin('css-byebye', function (options) {
56-
return function byebye (css) {
57-
var remregexes = regexize(options.rulesToRemove)
58-
var regex = concatRegexes(remregexes)
55+
const cssbyebye = postcss.plugin('css-byebye', function (options) {
56+
return function byebye(css) {
57+
const remregexes = regexize(options.rulesToRemove)
58+
const regex = concatRegexes(remregexes)
5959

6060
css.walkRules(filterRule)
6161

62-
function filterRule (rule) {
63-
var selectors = rule.selectors
64-
var filtered = []
62+
function filterRule(rule) {
63+
const selectors = rule.selectors
64+
const filtered = []
6565

66-
for (var j = 0, len = selectors.length; j < len; j++) {
66+
for (let j = 0, len = selectors.length; j < len; j++) {
6767
if (selectors[j].match(regex) === null) {
6868
filtered.push(selectors[j])
6969
}
@@ -80,8 +80,8 @@ var cssbyebye = postcss.plugin('css-byebye', function (options) {
8080

8181
css.walkAtRules(filterAtRule)
8282

83-
function filterAtRule (rule) {
84-
var ruleName = '@' + rule.name
83+
function filterAtRule(rule) {
84+
const ruleName = '@' + rule.name
8585

8686
if (ruleName.match(regex) !== null) {
8787
rule.remove()

lib/css-byebye.spec.js

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,66 @@
1-
var assert = require('assert')
2-
var cssbyebye = require('../lib/css-byebye')
3-
var postcss = require('postcss')
1+
const assert = require('assert')
2+
const cssbyebye = require('../lib/css-byebye')
3+
const postcss = require('postcss')
44

55
describe('cssbyebye', function () {
66
it('should remove ruleset(s) that matches any given selectors to remove ', function () {
7-
var css = 'a { font-size: 12px; } .hello .h1 { background: red } .world { color: blue }'
8-
var rulesToRemove = ['.hello .h1', '.world']
9-
var expected = 'a { font-size: 12px; }'
10-
var options = { rulesToRemove: rulesToRemove, map: false }
11-
var result = postcss(cssbyebye(options)).process(css)
7+
const css = 'a { font-size: 12px; } .hello .h1 { background: red } .world { color: blue }'
8+
const rulesToRemove = ['.hello .h1', '.world']
9+
const expected = 'a { font-size: 12px; }'
10+
const options = {rulesToRemove: rulesToRemove, map: false}
11+
const result = postcss(cssbyebye(options)).process(css)
1212

1313
assert.strictEqual(result.css, expected)
1414
})
1515

1616
it('should remove only the matching selector(s) from a group of selectors', function () {
17-
var css = '.hello .world, .title, #id { color: red }'
18-
var rulesToRemove = ['.hello .world']
19-
var expected = '.title, #id { color: red }'
20-
var options = { rulesToRemove: rulesToRemove, map: false }
21-
var result = postcss(cssbyebye(options)).process(css)
17+
const css = '.hello .world, .title, #id { color: red }'
18+
const rulesToRemove = ['.hello .world']
19+
const expected = '.title, #id { color: red }'
20+
const options = {rulesToRemove: rulesToRemove, map: false}
21+
const result = postcss(cssbyebye(options)).process(css)
2222

2323
assert.strictEqual(result.css, expected)
2424
})
2525

2626
it('should support regex matching', function () {
27-
var css = '.item {} .item .desc { background: red } .list .item {}'
28-
var rulesToRemove = [/^\.item/]
29-
var expected = '.list .item {}'
30-
var options = { rulesToRemove: rulesToRemove, map: false }
31-
var result = postcss(cssbyebye(options)).process(css)
27+
const css = '.item {} .item .desc { background: red } .list .item {}'
28+
const rulesToRemove = [/^\.item/]
29+
const expected = '.list .item {}'
30+
const options = {rulesToRemove: rulesToRemove, map: false}
31+
const result = postcss(cssbyebye(options)).process(css)
3232

3333
assert.strictEqual(result.css, expected)
3434
})
3535

3636
describe('regex metacharacters in input strings', function () {
3737
it('should handle "-" metacharacter properly', function () {
38-
var css = '.item-with-dash {} #other {}'
39-
var rulesToRemove = ['.item-with-dash']
40-
var expected = '#other {}'
41-
var options = { rulesToRemove: rulesToRemove, map: false }
42-
var result = postcss(cssbyebye(options)).process(css)
38+
const css = '.item-with-dash {} #other {}'
39+
const rulesToRemove = ['.item-with-dash']
40+
const expected = '#other {}'
41+
const options = {rulesToRemove: rulesToRemove, map: false}
42+
const result = postcss(cssbyebye(options)).process(css)
4343

4444
assert.strictEqual(result.css, expected)
4545
})
4646

4747
it('should not choke on other metacharacters (although not valid CSS)', function () {
48-
var css = '.item-with-dash {} #other {}'
49-
var rulesToRemove = ['.item-with-dash', '-[]/{}()*+?.\\^$|']
50-
var expected = '#other {}'
51-
var options = { rulesToRemove: rulesToRemove, map: false }
52-
var result = postcss(cssbyebye(options)).process(css)
48+
const css = '.item-with-dash {} #other {}'
49+
const rulesToRemove = ['.item-with-dash', '-[]/{}()*+?.\\^$|']
50+
const expected = '#other {}'
51+
const options = {rulesToRemove: rulesToRemove, map: false}
52+
const result = postcss(cssbyebye(options)).process(css)
5353

5454
assert.strictEqual(result.css, expected)
5555
})
5656
})
5757

5858
it('should remove at-rules', function () {
59-
var css = '@charset "UTF-8"; @font-face { font-family: "Font Name" } #id { color: red }'
60-
var rulesToRemove = ['@charset', '@font-face']
61-
var expected = '#id { color: red }'
62-
var options = { rulesToRemove: rulesToRemove, map: false }
63-
var result = postcss(cssbyebye(options)).process(css)
59+
const css = '@charset "UTF-8"; @font-face { font-family: "Font Name" } #id { color: red }'
60+
const rulesToRemove = ['@charset', '@font-face']
61+
const expected = '#id { color: red }'
62+
const options = {rulesToRemove: rulesToRemove, map: false}
63+
const result = postcss(cssbyebye(options)).process(css)
6464

6565
assert.strictEqual(result.css, expected)
6666
})

0 commit comments

Comments
 (0)