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

Commit 219d7d1

Browse files
committed
update to new default interop
1 parent dfbb3c4 commit 219d7d1

File tree

2 files changed

+24
-30
lines changed

2 files changed

+24
-30
lines changed

lib/builder.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
var Promise = require('bluebird');
2+
23
var System = require('systemjs');
34

45
var asp = require('bluebird').promisify;

templates/sfx-core.js

Lines changed: 23 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -13,30 +13,22 @@
1313
}
1414

1515
function createExternalModule (exports) {
16-
var esModule;
16+
// a real ES module or SystemJS ES Module
17+
if (typeof System !== 'undefined' && System.isModule ? System.isModule(exports) :
18+
Object.prototype.toString.call(exports) === '[object Module]') {
19+
return exports;
20+
}
21+
22+
var esModule = { default: exports, __useDefault: exports };
1723

1824
// CJS es module -> lift into namespace
1925
if (exports && exports.__esModule) {
20-
esModule = {};
2126
for (var p in exports) {
2227
if (Object.hasOwnProperty.call(exports, p))
2328
esModule[p] = exports[p];
2429
}
25-
if (esModule.__useDefault)
26-
delete esModule.__useDefault;
27-
esModule.__esModule = true;
28-
}
29-
30-
// a real ES module or SystemJS ES Module
31-
else if (Object.prototype.toString.call(exports) === '[object Module]' ||
32-
typeof System !== 'undefined' && System.isModule && System.isModule(exports)) {
33-
return exports;
34-
}
35-
36-
// use default representation only
37-
else {
38-
esModule = { default: exports, __useDefault: true };
3930
}
31+
4032
return new Module(esModule);
4133
}
4234

@@ -158,6 +150,7 @@
158150
};
159151

160152
function registerDynamic (key, deps, executingRequire, execute) {
153+
var exports = {};
161154
return registry[key] = {
162155
key: key,
163156
module: undefined,
@@ -169,8 +162,8 @@
169162
execute: execute,
170163
executingRequire: executingRequire,
171164
moduleObj: {
172-
default: {},
173-
__useDefault: true
165+
default: exports,
166+
__useDefault: exports
174167
},
175168
setters: undefined
176169
}
@@ -194,7 +187,7 @@
194187
else {
195188
module = depLoad.module;
196189
}
197-
return module.__useDefault ? module.default : module;
190+
return module.__useDefault || module;
198191
}
199192
};
200193
}
@@ -225,10 +218,10 @@
225218
Object.defineProperty(module, 'exports', {
226219
configurable: true,
227220
set: function (exports) {
228-
moduleObj.default = exports;
221+
moduleObj.default = moduleObj.__useDefault = exports;
229222
},
230223
get: function () {
231-
return moduleObj.default;
224+
return moduleObj.__useDefault;
232225
}
233226
});
234227
var require = makeDynamicRequire(link.deps, link.depLoads, seen);
@@ -238,17 +231,17 @@
238231
for (var i = 0; i < link.deps.length; i++)
239232
require(link.deps[i]);
240233

241-
var output = link.execute.call(global, require, moduleObj.default, module);
234+
var output = link.execute.call(global, require, moduleObj.__useDefault, module);
242235
if (output !== undefined)
243-
moduleObj.default = output;
244-
else if (module.exports !== moduleObj.default)
245-
moduleObj.default = module.exports;
236+
moduleObj.default = moduleObj.__useDefault = output;
237+
238+
var defaultExport = moduleObj.__useDefault;
246239

247240
// __esModule flag extension support
248-
if (moduleObj.default && moduleObj.default.__esModule)
249-
for (var p in moduleObj.default)
250-
if (Object.hasOwnProperty.call(moduleObj.default, p) && p !== 'default')
251-
moduleObj[p] = moduleObj.default[p];
241+
if (defaultExports && defaultExports.__esModule)
242+
for (var p in defaultExport)
243+
if (Object.hasOwnProperty.call(defaultExport, p))
244+
moduleObj[p] = defaultExport[p];
252245
}
253246

254247
var module = load.module = new Module(link.moduleObj);
@@ -308,7 +301,7 @@
308301
load(mains[i]);
309302

310303
if (exportDefault)
311-
return firstLoad.default;
304+
return firstLoad.__useDefault;
312305

313306
if (firstLoad instanceof Module)
314307
Object.defineProperty(firstLoad, '__esModule', {

0 commit comments

Comments
 (0)