| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302 | 
							- /**
 -  * Owl Carousel
 -  *
 -  * Bartosz Wojciechowski
 -  *
 -  * Copyright (c) 2014
 -  * Licensed under the MIT license.
 -  */
 - module.exports = function(grunt) {
 - 
 - 	if (!grunt.file.isDir('bower_components')) {
 - 		grunt.fail.fatal('>> Please run "bower install" before continuing.');
 - 	}
 - 	require('load-grunt-tasks')(grunt);
 - 
 - 	grunt
 - 		.initConfig({
 - 			pkg: grunt.file.readJSON('package.json'),
 - 			app: grunt.file.readJSON('_config.json'),
 - 			vendor: 'bower_components',
 - 			banner: '/**\n' + ' * Owl Carousel v<%= pkg.version %>\n'
 - 				+ ' * Copyright 2013-<%= grunt.template.today("yyyy") %> <%= pkg.author.name %>\n'
 - 				+ ' * Licensed under <%= pkg.license.type %> (<%= pkg.license.url %>)\n' + ' */\n',
 - 
 - 			// assemble
 - 			assemble: {
 - 				options: {
 - 					flatten: false,
 - 					expand: true,
 - 					production: false,
 - 					assets: '<%= app.docs.dest %>/assets',
 - 					postprocess: require('pretty'),
 - 
 - 					// metadata
 - 					pkg: '<%= pkg %>',
 - 					app: '<%= app %>',
 - 					data: [ '<%= app.docs.src %>/data/*.{json,yml}' ],
 - 
 - 					// templates
 - 					partials: '<%= app.docs.templates %>/partials/*.hbs',
 - 					layoutdir: '<%= app.docs.layouts %>/',
 - 
 - 					// extensions
 - 					helpers: '<%= app.docs.src %>/helpers/*.js'
 - 				},
 - 				index: {
 - 					options: {
 - 						layout: 'home.hbs'
 - 					},
 - 					files: [ {
 - 						expand: true,
 - 						cwd: '<%= app.docs.pages %>/',
 - 						src: '*.hbs',
 - 						dest: '<%= app.docs.dest %>/'
 - 					} ]
 - 				},
 - 				demos: {
 - 					options: {
 - 						layout: 'demos.hbs'
 - 					},
 - 					files: [ {
 - 						expand: true,
 - 						cwd: '<%= app.docs.pages %>/demos/',
 - 						src: '*.hbs',
 - 						dest: '<%= app.docs.dest %>/demos'
 - 					} ]
 - 				},
 - 				docs: {
 - 					options: {
 - 						layout: 'docs.hbs'
 - 					},
 - 					files: [ {
 - 						expand: true,
 - 						cwd: '<%= app.docs.pages %>/docs/',
 - 						src: '*.hbs',
 - 						dest: '<%= app.docs.dest %>/docs'
 - 					} ]
 - 				}
 - 			},
 - 
 - 			// clean
 - 			clean: {
 - 				docs: [ '<%= app.docs.dest %>/**/*.*' ],
 - 				dist: [ 'dist/**/*.*' ]
 - 			},
 - 
 - 			// sass
 - 			sass: {
 - 				docs: {
 - 					options: {
 - 						outputStyle: 'compressed',
 - 						includePaths: [ '<%= app.docs.src %>/assets/scss/', 'bower_components/foundation/scss' ]
 - 					},
 - 					files: {
 - 						'<%= app.docs.dest %>/assets/css/docs.theme.min.css': '<%= app.docs.src %>/assets/scss/docs.theme.scss'
 - 					}
 - 				},
 - 				dist: {
 - 					options: {
 - 						outputStyle: 'nested'
 - 					},
 - 					files: [ {
 - 						expand: true,
 - 						flatten: true,
 - 						cwd: 'src/scss/',
 - 						src: '*scss',
 - 						dest: 'src/css/',
 - 						ext: '.css',
 - 						extDot: 'last'
 - 					} ]
 - 				}
 - 			},
 - 
 - 			concat: {
 - 				dist: {
 - 					files: {
 - 						'dist/assets/owl.carousel.css': [ 'src/css/*.css', '!src/css/owl.theme*.css' ],
 - 						'dist/<%= pkg.name %>.js': '<%= app.src.scripts %>'
 - 					}
 - 				}
 - 			},
 - 
 - 			cssmin: {
 - 				dist: {
 - 					files: {
 - 						'dist/assets/<%= pkg.name %>.min.css': [ 'src/css/*.css', '!src/css/owl.theme*.css' ],
 - 						'dist/assets/owl.theme.default.min.css': 'src/css/owl.theme.default.css',
 - 						'dist/assets/owl.theme.green.min.css': 'src/css/owl.theme.green.css'
 - 					}
 - 				}
 - 			},
 - 
 - 			jshint: {
 - 				options: {
 - 					jshintrc: 'src/js/.jshintrc'
 - 				},
 - 				dist: {
 - 					src: [ '<%= app.src.scripts %>', 'Gruntfile.js' ]
 - 				}
 - 			},
 - 
 - 			qunit: {
 - 				dist: [ 'test/*.html' ]
 - 			},
 - 
 - 			jscs: {
 - 				options: {
 - 					config: 'src/js/.jscsrc',
 - 					reporter: 'text.js',
 - 					reporterOutput: 'jscs.report.txt'
 - 				},
 - 				dist: {
 - 					src: [ '<%= app.src.scripts %>', 'Gruntfile.js' ]
 - 				}
 - 			},
 - 
 - 			uglify: {
 - 				dist: {
 - 					files: {
 - 						'dist/<%= pkg.name %>.min.js': '<%= app.src.scripts %>'
 - 					}
 - 				}
 - 			},
 - 
 - 			// copy
 - 			copy: {
 - 				themes: {
 - 					expand: true,
 - 					flatten: true,
 - 					cwd: 'src/css/',
 - 					src: [ 'owl.theme.*' ],
 - 					dest: 'dist/assets'
 - 				},
 - 				distImages: {
 - 					expand: true,
 - 					flatten: true,
 - 					cwd: 'src/',
 - 					src: [ 'img/*.*' ],
 - 					dest: 'dist/assets'
 - 				},
 - 
 - 				distToDocs: {
 - 					expand: true,
 - 					cwd: 'dist/',
 - 					src: [ '**/*.*' ],
 - 					dest: '<%= app.docs.dest %>/assets/owlcarousel'
 - 				},
 - 
 - 				srcToDocs: {
 - 					expand: true,
 - 					cwd: 'src/js',
 - 					src: [ '**/*.js' ],
 - 					dest: '<%= app.docs.dest %>/assets/owlcarousel/src'
 - 				},
 - 
 - 				docsAssets: {
 - 					expand: true,
 - 					cwd: '<%= app.docs.src %>/assets/',
 - 					src: [ 'css/*.css', 'vendors/*.js', 'vendors/*.map', 'img/*.*', 'js/*.*' ],
 - 					dest: '<%= app.docs.dest %>/assets/'
 - 				},
 - 				readme: {
 - 					files: [ {
 - 						'dist/LICENSE': 'LICENSE',
 - 						'dist/README.md': 'README.md'
 - 					} ]
 - 				}
 - 			},
 - 
 - 			// connect
 - 			connect: {
 - 				options: {
 - 					port: 9000,
 - 					open: true,
 - 					livereload: true,
 - 					hostname: 'localhost'
 - 				},
 - 				docs: {
 - 					options: {
 - 						base: "<%= app.docs.dest %>"
 - 					}
 - 				}
 - 			},
 - 
 - 			// watch
 - 			watch: {
 - 				options: {
 - 					livereload: true
 - 				},
 - 				templates: {
 - 					files: [ '<%= app.docs.templates %>/**/*.hbs' ],
 - 					tasks: [ 'assemble' ]
 - 				},
 - 				sass: {
 - 					files: [ '<%= app.docs.src %>/assets/**/*.scss' ],
 - 					tasks: [ 'sass:docs' ]
 - 				},
 - 				sassDist: {
 - 					files: [ 'src/**/*.scss' ],
 - 					tasks: [ 'sass:dist', 'concat:dist', 'cssmin:dist', 'copy:themes','copy:distToDocs' ]
 - 				},
 - 				jsDocs: {
 - 					files: [ '<%= app.docs.src %>/assets/**/*.js' ],
 - 					tasks: [ 'copy:docsAssets' ]
 - 				},
 - 				js: {
 - 					files: [ 'src/**/*.js' ],
 - 					tasks: [ 'jscs:dist', 'jshint:dist', 'qunit:dist', 'uglify:dist', 'concat:dist', 'copy:distToDocs', 'copy:srcToDocs' ]
 - 				},
 - 				helpers: {
 - 					files: [ '<%= app.src %>/helpers/*.js' ],
 - 					tasks: [ 'assemble' ]
 - 				},
 - 				test: {
 - 					files: [ 'test/*.html', 'test/unit/*.js' ],
 - 					tasks: [ 'qunit:dist' ]
 - 				}
 - 			},
 - 
 - 			// compress zip
 - 			compress: {
 - 				zip: {
 - 					options: {
 - 						archive: 'docs/download/owl.carousel.<%= pkg.version %>.zip'
 - 					},
 - 					files: [ {
 - 						expand: true,
 - 						cwd: 'dist/',
 - 						src: [ '**' ],
 - 						dest: 'owl.carousel.<%= pkg.version %>'
 - 					} ]
 - 				}
 - 			},
 - 
 - 			// publish to github pages
 - 			'gh-pages': {
 - 				options: {
 - 					base: 'docs'
 - 				},
 - 				src: '**/*'
 - 			}
 - 		});
 - 
 - 	grunt.loadNpmTasks('assemble');
 - 
 - 	// tasks
 - 	grunt.registerTask('dist', [ 'clean:dist', 'sass:dist', 'concat:dist', 'cssmin:dist', 'copy:themes', 'copy:distImages', 'jscs:dist', 'uglify:dist', 'copy:readme' ]);
 - 
 - 	grunt.registerTask('docs', [ 'dist', 'clean:docs', 'assemble', 'sass:docs', 'copy:docsAssets', 'copy:distToDocs', 'zip' ]);
 - 
 - 	grunt.registerTask('test', [ 'jshint:dist', 'qunit:dist' ]);
 - 
 - 	grunt.registerTask('default', [ 'dist', 'docs', 'test' ]);
 - 
 - 	grunt.registerTask('serve', [ 'connect:docs', 'watch' ]);
 - 
 - 	grunt.registerTask('zip', [ 'compress' ]);
 - 
 - 	grunt.registerTask('deploy', [ 'docs', 'gh-pages' ]);
 - 
 - };
 
 
  |