Skip to content

Commit d7e7c56

Browse files
authored
Asset Concatination (silverbux#64)
1 parent e3352ee commit d7e7c56

File tree

3 files changed

+46
-21
lines changed

3 files changed

+46
-21
lines changed

gulpfile.js

+26-15
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
var elixir = require('laravel-elixir')
2+
3+
require('./tasks/concatScripts.task.js');
24
require('laravel-elixir-karma')
35
require('./tasks/angular.task.js')
46
require('./tasks/bower.task.js')
@@ -25,27 +27,36 @@ elixir(function (mix) {
2527
var fontsOutputFolder = config.fonts.outputFolder
2628
var buildPath = config.buildPath
2729

28-
var assets = [
29-
jsOutputFolder + '/vendor.js',
30-
jsOutputFolder + '/partials.js',
31-
jsOutputFolder + '/app.js',
32-
cssOutputFolder + '/vendor.css',
33-
cssOutputFolder + '/app.css'
34-
],
35-
karmaJsDir = [
36-
jsOutputFolder + '/vendor.js',
37-
'node_modules/angular-mocks/angular-mocks.js',
38-
'node_modules/ng-describe/dist/ng-describe.js',
39-
jsOutputFolder + '/partials.js',
40-
jsOutputFolder + '/app.js',
41-
'tests/angular/**/*.spec.js'
42-
]
30+
var assets = [
31+
'public/js/final.js',
32+
'public/css/final.css'
33+
],
34+
scripts = [
35+
'./public/js/vendor.js',
36+
'./public/js/partials.js',
37+
'./public/js/app.js',
38+
'./public/dist/js/app.js'
39+
],
40+
styles = [
41+
'./public/css/vendor.css',
42+
'./public/css/app.css'
43+
],
44+
karmaJsDir = [
45+
jsOutputFolder + '/vendor.js',
46+
'node_modules/angular-mocks/angular-mocks.js',
47+
'node_modules/ng-describe/dist/ng-describe.js',
48+
jsOutputFolder + '/partials.js',
49+
jsOutputFolder + '/app.js',
50+
'tests/angular/**/*.spec.js'
51+
];
4352

4453
mix
4554
.bower()
4655
.angular('./angular/')
4756
.ngHtml2Js('./angular/**/*.html')
57+
.concatScripts(scripts, 'final.js')
4858
.sass('./angular/**/*.scss', 'public/css')
59+
.styles(styles, './public/css/final.css')
4960
.version(assets)
5061
.browserSync({
5162
proxy: 'localhost:8000'

resources/views/index.blade.php

+2-6
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
<meta charset="utf-8">
55
<meta http-equiv="X-UA-Compatible" content="IE=edge">
66
<meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
7-
<link rel="stylesheet" href="{!! elixir('css/vendor.css') !!}">
8-
<link rel="stylesheet" href="{!! elixir('css/app.css') !!}">
7+
<link rel="stylesheet" href="{!! elixir('css/final.css') !!}">
98
<link rel='stylesheet' type='text/css' href='https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic'>
109
<!-- Font Awesome -->
1110
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.5.0/css/font-awesome.min.css">
@@ -22,11 +21,8 @@
2221
<body route-bodyclass>
2322
<div class="wrapper">
2423
<div ui-view="layout"></div>
25-
<script src="{!! elixir('js/vendor.js') !!}"></script>
26-
<script src="{!! elixir('js/partials.js') !!}"></script>
27-
<script src="{!! elixir('js/app.js') !!}"></script>
2824
<div class="control-sidebar-bg"></div>
2925
</div>
30-
<script src="dist/js/app.js"></script>
26+
<script src="{!! elixir('js/final.js') !!}" async defer></script>
3127
</body>
3228
</html>

tasks/concatScripts.task.js

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
var gulp = require('gulp');
2+
var concat = require('gulp-concat');
3+
4+
var Elixir = require('laravel-elixir');
5+
6+
var Task = Elixir.Task;
7+
8+
Elixir.extend('concatScripts', function(scripts, dest) {
9+
10+
new Task('concat-scripts', function() {
11+
12+
return gulp.src(scripts)
13+
.pipe(concat(dest))
14+
.pipe(gulp.dest(Elixir.config.js.outputFolder));
15+
16+
}).watch(scripts);
17+
18+
});

0 commit comments

Comments
 (0)