Skip to content

Commit df969a3

Browse files
committed
Fix bug based on origin dep
1 parent f459079 commit df969a3

File tree

2 files changed

+16
-6
lines changed

2 files changed

+16
-6
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "webpack-omit-js-for-css-plugin",
3-
"version": "4.0.0",
3+
"version": "3.0.0",
44
"description": "This plugin will omit bundled JS files for dependencies that are exclusively CSS, which become obsolete once extract-text-plugin extracts inlined CSS into its own .css file",
55
"main": "src/index.js",
66
"directories": {

src/index.js

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,22 +34,32 @@ OmitJSforCSSPlugin.prototype.omitFiles = function (omitted, compilation) {
3434
}
3535
};
3636

37+
/**
38+
* @function findOmissibleFiles
39+
* @param {Object} compilation
40+
*/
3741
/**
3842
* @function findOmissibleFiles
3943
* @param {Object} compilation
4044
*/
4145
OmitJSforCSSPlugin.prototype.findOmissibleFiles = function (compilation) {
4246
// Every chunk / entry point
4347
compilation.chunks.forEach(chunk => {
48+
let resourceOrigin = {};
4449
let assetTypeCount = { internal: 0, css: 0 };
4550

51+
if (chunk.entryModule) {
52+
resourceOrigin[chunk.entryModule.resource] = true;
53+
}
54+
4655
// Each entry point will have its own dependencies, based on the files inner deps or the array deps in entry
4756
Array.from(chunk.modulesIterable, module => {
48-
if (!Array.isArray(module.dependencies)) return;
49-
50-
module.dependencies.forEach(({ request }) => {
51-
if (!/ (\bnode_modules\b) /.test(request) && /\.(css|js)$/g.test(request)) {
52-
/\.(css)$/i.test(request) ? assetTypeCount.css++ : assetTypeCount.internal++;
57+
module.dependencies.forEach(({ module }) => {
58+
if (module) {
59+
const { resource } = module;
60+
if (resource && !resourceOrigin[resource] && !/ (\bnode_modules\b) /.test(resource) && /\.(css|js)$/g.test(resource)) {
61+
/\.(css)$/i.test(resource) ? assetTypeCount.css++ : assetTypeCount.internal++;
62+
}
5363
}
5464
});
5565
});

0 commit comments

Comments
 (0)