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']);
});