X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/6b4ec65b0303487fc45024dae8b814c054e535ef..refs/pull/139/head:/gulpfile.js diff --git a/gulpfile.js b/gulpfile.js index 7974350d1..7deefc71a 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -1,8 +1,27 @@ var elixir = require('laravel-elixir'); +// Custom extensions +var gulp = require('gulp'); +var Task = elixir.Task; +var fs = require('fs'); + +elixir.extend('queryVersion', function(inputFiles) { + new Task('queryVersion', function() { + var manifestObject = {}; + var uidString = Date.now().toString(16).slice(4); + for (var i = 0; i < inputFiles.length; i++) { + var file = inputFiles[i]; + manifestObject[file] = file + '?version=' + uidString; + } + var fileContents = JSON.stringify(manifestObject, null, 1); + fs.writeFileSync('public/build/manifest.json', fileContents); + }).watch(['./public/css/*.css', './public/js/*.js']); +}); elixir(function(mix) { - mix.sass('styles.scss'); - mix.scripts('image-manager.js', 'public/js/image-manager.js'); - mix.browserify(['jquery-extensions.js', 'pages/book-show.js' ,'global.js'], 'public/js/common.js'); + mix.sass('styles.scss') + .sass('print-styles.scss') + .sass('export-styles.scss') + .browserify('global.js', 'public/js/common.js') + .queryVersion(['css/styles.css', 'css/print-styles.css', 'js/common.js']); });