Skip to content

Commit fa86303

Browse files
authored
feat(extract): detect sheetify (#11)
* feat(extract): detect sheetify * feat(deps): bump
1 parent 4cc7669 commit fa86303

File tree

6 files changed

+28
-4
lines changed

6 files changed

+28
-4
lines changed

index.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ function cssExtract (bundle, opts) {
3232

3333
function write (chunk, enc, cb) {
3434
// Performance boost: don't do ast parsing unless we know it's needed
35-
if (String(chunk.source).indexOf('insert-css') === -1) {
35+
if (!/[insert\-css|sheetify\/insert]/.test(chunk.source)) {
3636
return cb(null, chunk)
3737
}
3838

@@ -41,6 +41,10 @@ function cssExtract (bundle, opts) {
4141
'insert-css': function (src) {
4242
writeStream.write(String(src) + '\n')
4343
return from2('null')
44+
},
45+
'sheetify/insert': function (src) {
46+
writeStream.write(String(src) + '\n')
47+
return from2('null')
4448
}
4549
})
4650

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@
2828
"devDependencies": {
2929
"browserify": "^13.0.0",
3030
"dependency-check": "^2.5.1",
31-
"insert-css": "^0.2.0",
31+
"insert-css": "^2.0.0",
3232
"istanbul": "^0.4.2",
33-
"sheetify": "^4.1.0",
33+
"sheetify": "^6.0.0",
3434
"standard": "^6.0.7",
3535
"tape": "^4.5.0",
3636
"tmp": "0.0.28"

test/expected-sf-static.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.foo {background: green}

test/expected.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
._32de081b h1 {
1+
h1 {
22
font-family: sans-serif;
33
}

test/index.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,22 @@ test('css-extract', function (t) {
7171
}
7272
})
7373

74+
t.test('should extract static sheetify/insert statements', function (t) {
75+
t.plan(2)
76+
browserify(path.join(__dirname, 'source-sf-static.js'))
77+
.plugin(cssExtract, { out: createWs })
78+
.bundle()
79+
80+
function createWs () {
81+
return bl(function (err, data) {
82+
t.ifError(err, 'no error')
83+
const exPath = path.join(__dirname, './expected-sf-static.css')
84+
const expected = fs.readFileSync(exPath, 'utf8').trim() + '\n'
85+
t.equal(String(data), expected, 'extracted all the CSS')
86+
})
87+
}
88+
})
89+
7490
t.test('should not extract dynamic insert-css statements', function (t) {
7591
t.plan(4)
7692
const sourcePath = path.join(__dirname, 'source-dynamic.js')

test/source-sf-static.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
var insertCss = require('sheetify/insert')
2+
3+
insertCss('.foo {background: green}')

0 commit comments

Comments
 (0)