Skip to content
This repository was archived by the owner on Feb 1, 2020. It is now read-only.

Commit bb88c7e

Browse files
committed
replace Object.keys with mapModules, thx @c0defre4k
- follow @c0defre4k tip to use mapModules instead of Object.keys in search file
1 parent 0c7bd7a commit bb88c7e

File tree

2 files changed

+25
-27
lines changed

2 files changed

+25
-27
lines changed

src/index.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ export default class PurgecssPlugin {
2121
// Go through chunks and purge as configured
2222
compilation.chunks.forEach(chunk => {
2323
const { name: chunkName, files } = chunk
24-
const modules = chunk.mapModules(mod => mod)
2524
const assetsToPurge = search
2625
.assets(compilation.assets, ['.css'])
2726
.filter(asset => files.indexOf(asset.name) >= 0)
@@ -31,7 +30,7 @@ export default class PurgecssPlugin {
3130
.entries(entryPaths, chunkName)
3231
.concat(
3332
search.files(
34-
modules,
33+
chunk,
3534
this.options.moduleExtensions || [],
3635
file => file.resource
3736
)

src/search.js

Lines changed: 24 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,28 @@
11
import path from 'path'
22

33
export const assets = (assets = [], extensions = []) =>
4-
Object.keys(assets)
5-
.map(name => {
6-
return (
7-
extensions.indexOf(
8-
path.extname(
9-
name.indexOf('?') >= 0
10-
? name.split('?').slice(0, -1).join('')
11-
: name
12-
)
13-
) >= 0 && { name, asset: assets[name] }
14-
)
15-
})
16-
.filter(a => a)
4+
Object.keys(assets)
5+
.map(name => {
6+
return (
7+
extensions.indexOf(
8+
path.extname(
9+
name.indexOf('?') >= 0
10+
? name
11+
.split('?')
12+
.slice(0, -1)
13+
.join('')
14+
: name
15+
)
16+
) >= 0 && { name, asset: assets[name] }
17+
)
18+
})
19+
.filter(a => a)
1720

18-
export const files = (modules = {}, extensions = [], getter = a => a) =>
19-
Object.keys(modules)
20-
.map(name => {
21-
const file = getter(modules[name])
22-
23-
if (!file) {
24-
return null
25-
}
26-
27-
return extensions.indexOf(path.extname(file)) >= 0 && file
28-
})
29-
.filter(a => a)
21+
export const files = (chunk, extensions = [], getter = a => a) =>
22+
chunk
23+
.mapModules(module => {
24+
const file = getter(module)
25+
if (!file) return null
26+
return extensions.indexOf(path.extname(file)) >= 0 && file
27+
})
28+
.filter(a => a)

0 commit comments

Comments
 (0)