Skip to content

Commit

Permalink
Merge pull request #263 from azizhk/amd_auto
Browse files Browse the repository at this point in the history
Auto Bundles were not working in AMD Environment
  • Loading branch information
stefanpenner committed Mar 7, 2017
2 parents f1ebe35 + de375ce commit 3df3f7d
Show file tree
Hide file tree
Showing 6 changed files with 38 additions and 33 deletions.
54 changes: 28 additions & 26 deletions Brocfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,20 +33,25 @@ var es5 = new Babel(lib, {
blacklist: ['es6.modules']
});

function rollupConfig(entry) {
return new Rollup(es5, {
rollup: {
entry: 'lib/' + entry,
targets: [
{
format: 'umd',
moduleName: 'ES6Promise',
dest: entry,
sourceMap: 'inline'
}
]
}
});
}

// build RSVP itself
var es6Promise = new Rollup(es5, {
rollup: {
entry: 'lib/es6-promise.js',
targets: [
{
format: 'umd',
moduleName: 'ES6Promise',
dest: 'es6-promise.js',
sourceMap: 'inline'
}
]
}
});
var es6Promise = rollupConfig('es6-promise.js')
var es6PromiseAuto = rollupConfig('es6-promise.auto.js')

var testBundle = watchify(merge([
mv(es6Promise, 'test'),
Expand All @@ -59,45 +64,42 @@ var header = stew.map(find('config/versionTemplate.txt'), function(content) {
return content.replace(/VERSION_PLACEHOLDER_STRING/, version());
});

var dist = es6Promise;

function concatAs(tree, outputFile) {
function concatAs(outputFile) {
return merge([
concat(merge([tree, header]), {
concat(merge([es6Promise, header]), {
headerFiles: ['config/versionTemplate.txt'],
inputFiles: ['es6-promise.js'],
outputFile: outputFile
}),

concat(merge([tree, header]), {
concat(merge([es6PromiseAuto, header]), {
headerFiles: ['config/versionTemplate.txt'],
inputFiles: ['es6-promise.js'],
inputFiles: ['es6-promise.auto.js'],
outputFile: outputFile.replace('es6-promise', 'es6-promise.auto'),
footer: 'ES6Promise.polyfill();',
}),

]);
}

function production(dist, header) {
function production() {
var result;
env('production', function(){
result = uglify(concatAs(dist, 'es6-promise.min.js'), {
result = uglify(concatAs('es6-promise.min.js'), {
compress: true,
mangle: true,
});
})
return result;
}

function development(dist, header) {
return concatAs(dist, 'es6-promise.js');
function development() {
return concatAs('es6-promise.js');
}

module.exports = merge([
merge([
production(es6Promise, header),
development(es6Promise, header),
production(),
development(),
].filter(Boolean)),
// test stuff
testFiles,
Expand Down
8 changes: 4 additions & 4 deletions dist/es6-promise.auto.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dist/es6-promise.auto.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/es6-promise.auto.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dist/es6-promise.auto.min.map

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions lib/es6-promise.auto.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
import Promise from './es6-promise';
Promise.polyfill();
export default Promise;

0 comments on commit 3df3f7d

Please sign in to comment.