UNPKG

908 BJavaScriptView Raw
1const Dependency = require('webpack/lib/Dependency');
2
3class GoogBaseGlobalDependency extends Dependency {}
4
5class GoogBaseGlobalDependencyTemplate {
6 apply(dep, source) {
7 const sourceContent = source.source();
8 const content = `goog.ENABLE_DEBUG_LOADER = false;
9module.exports = goog;`;
10 source.insert(sourceContent.length, content);
11
12 const globalDefIndex = sourceContent.search(/\n\s*goog\.global\s*=\s*/);
13 let statementEndIndex = -1;
14 if (globalDefIndex >= 0) {
15 statementEndIndex = sourceContent.indexOf(';', globalDefIndex);
16 }
17 if (statementEndIndex) {
18 source.insert(
19 statementEndIndex + 1,
20 'goog.global = window; goog.global.CLOSURE_NO_DEPS = true;'
21 );
22 } else {
23 source.insert(0, 'this.CLOSURE_NO_DEPS = true;\n');
24 }
25 }
26}
27
28module.exports = GoogBaseGlobalDependency;
29module.exports.Template = GoogBaseGlobalDependencyTemplate;