Commit e7991a9a authored by James Friend's avatar James Friend

generate commonjs/npm entrypoint module via grunt task

parent 689faaf1
......@@ -20,6 +20,7 @@ module.exports = function (grunt) {
var generateGlyphiconsData = require('./grunt/bs-glyphicons-data-generator.js');
var BsLessdocParser = require('./grunt/bs-lessdoc-parser.js');
var generateRawFiles = require('./grunt/bs-raw-files-generator.js');
var generateCommonJSModule = require('./grunt/bs-commonjs-generator.js');
var updateShrinkwrap = require('./grunt/shrinkwrap.js');
// Project configuration.
......@@ -459,6 +460,11 @@ module.exports = function (grunt) {
generateRawFiles(grunt, banner);
});
grunt.registerTask('build-commonjs', 'Build CommonJS entrypoint module for JS.', function () {
var files = grunt.config.get('concat.bootstrap.src');
generateCommonJSModule(grunt, files);
});
// Task for updating the npm packages used by the Travis build.
grunt.registerTask('update-shrinkwrap', ['exec:npmUpdate', 'exec:npmShrinkWrap', '_update-shrinkwrap']);
grunt.registerTask('_update-shrinkwrap', function () { updateShrinkwrap.call(this, grunt); });
......
require('../../js/transition')
require('../../js/alert')
require('../../js/button')
require('../../js/carousel')
require('../../js/collapse')
require('../../js/dropdown')
require('../../js/modal')
require('../../js/tooltip')
require('../../js/popover')
require('../../js/scrollspy')
require('../../js/tab')
require('../../js/affix')
require('../../js/transition.js')
require('../../js/alert.js')
require('../../js/button.js')
require('../../js/carousel.js')
require('../../js/collapse.js')
require('../../js/dropdown.js')
require('../../js/modal.js')
require('../../js/tooltip.js')
require('../../js/popover.js')
require('../../js/scrollspy.js')
require('../../js/tab.js')
require('../../js/affix.js')
\ No newline at end of file
'use strict';
var fs = require('fs');
var path = require('path');
var destDir = 'dist/js';
var destFilename = 'npm.js';
var destFilepath = path.join(destDir, destFilename);
function srcPathToDestRequire(srcFilepath) {
var requirePath = path.relative(destDir, srcFilepath);
return "require('"+requirePath+"')";
}
module.exports = function generateCommonJSModule(grunt, files) {
var moduleOutputJs = files.map(srcPathToDestRequire).join('\n');
try {
fs.writeFileSync(destFilepath, moduleOutputJs);
}
catch (err) {
grunt.fail.warn(err);
}
grunt.log.writeln('File ' + destFilepath.cyan + ' created.');
};
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment