Skip to content

Commit 9409a05

Browse files
authored
Merge pull request #2 from toddbc/common-export
Allow the commons chunk to export
2 parents f2687d5 + 97fb70d commit 9409a05

File tree

1 file changed

+18
-11
lines changed

1 file changed

+18
-11
lines changed

index.js

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,33 @@ function gatherRequireJsImports(modules) {
1010
for (var module of modules) {
1111
// If the requirejs-loader was used, then we need to wrap and import this module.
1212
// TODO: Clean up this check.
13-
if (module.request && module.request.indexOf('requirejs-loader') !== -1) {
13+
if (module.request && String(module.request).indexOf('requirejs-loader') !== -1) {
1414
needsImport.push(module.rawRequest);
1515
}
1616
}
1717

1818
return needsImport;
1919
}
2020

21+
function shouldExport(module) {
22+
// This ensures we don't export the import stubs for requirejs.
23+
// TODO: Clean up this check.
24+
if (!module.request || String(module.request).indexOf('requirejs-loader') !== -1) {
25+
return false;
26+
}
27+
28+
// Some internal modules have no rawRequest - don't export those either.
29+
if (!module.rawRequest) {
30+
return false;
31+
}
32+
33+
return true;
34+
}
35+
2136
function gatherRequireJsExports(modules) {
2237
let needsExport = [];
2338
for (var module of modules) {
24-
// If the requirejs-loader was used, then we need to wrap and import this module.
25-
// TODO: Clean up this check.
26-
if (module.request && module.request.indexOf('requirejs-loader') === -1) {
39+
if (shouldExport(module)) {
2740
// We use the raw request to define the same name, including loader.
2841
var name = module.rawRequest;
2942
// TODO: Maybe just strip everything but 'text!'?
@@ -78,14 +91,8 @@ RequireJsExportPlugin.prototype.apply = function(compiler) {
7891
compiler.plugin('compilation', function (compilation, data) {
7992
compilation.plugin('after-optimize-module-ids', function(modules) {
8093
for (let module of modules) {
81-
// This ensures we don't export the import stubs for requirejs.
82-
// TODO: Determine loader better.
83-
if (module.request && String(module.request).indexOf('requirejs-loader') !== -1) {
84-
continue;
85-
}
86-
8794
// TODO: Find a way around using _source.
88-
if (module.rawRequest && module._source) {
95+
if (shouldExport(module) && module._source) {
8996
var definition = '__webpack_exports__[' + JSON.stringify(module.id) + '] = module.exports;';
9097
module._source = new ConcatSource(module._source, '\n', definition);
9198
}

0 commit comments

Comments
 (0)