2 * Copyright (c) 2012, Intel Corporation.
4 * This program is licensed under the terms and conditions of the
5 * Apache License, version 2.0. The full text of the Apache License is at
6 * http://www.apache.org/licenses/LICENSE-2.0
10 module.exports = function(grunt) {
12 // Project configuration.
18 'src/javascripts/*.js',
19 'src/bootstrap/**/*.{js,less}',
20 'src/stylesheets/**/*.less',
21 'src/themes/**/*.less',
33 'src/javascripts/*.js',
53 'dist/cowhide-default.css': 'src/themes/default/default.less',
54 'dist/cowhide-responsive.css': 'src/bootstrap/less/responsive.less'
59 'dist/cowhide-default-night.css': 'src/themes/default/default-night.less'
64 'dist/cowhide-amelia.css': 'src/themes/amelia/amelia.less'
69 // TODO: add theme implementation for amelia-night.
70 'dist/cowhide-amelia-night.css': 'src/themes/amelia/amelia.less'
75 'dist/cowhide-spruce.css': 'src/themes/spruce/spruce.less'
80 // TODO: add theme implementation for spruce-night.
81 'dist/cowhide-spruce-night.css': 'src/themes/spruce/spruce.less'
88 'lib/jquery/dist/jquery.js',
89 'lib/jquery-ui/dist/jquery-ui.js',
90 'lib/underscore/underscore.js',
92 // Bootstrap files must preserve order.
93 'src/bootstrap/js/bootstrap-transition.js',
94 'src/bootstrap/js/bootstrap-alert.js',
95 'src/bootstrap/js/bootstrap-button.js',
96 'src/bootstrap/js/bootstrap-carousel.js',
97 'src/bootstrap/js/bootstrap-collapse.js',
98 'src/bootstrap/js/bootstrap-dropdown.js',
99 'src/bootstrap/js/bootstrap-modal.js',
100 'src/bootstrap/js/bootstrap-tooltip.js',
101 'src/bootstrap/js/bootstrap-popover.js',
102 'src/bootstrap/js/bootstrap-scrollspy.js',
103 'src/bootstrap/js/bootstrap-tab.js',
104 'src/bootstrap/js/bootstrap-typeahead.js',
105 'src/bootstrap/js/bootstrap-affix.js',
107 'src/javascripts/api.js',
109 'src/javascripts/cowhide-core.js',
110 'src/javascripts/cowhide-widget.js',
111 'src/javascripts/cowhide-button.js',
112 'src/javascripts/cowhide-seat-selector.js',
113 'src/javascripts/cowhide-slider.js',
114 'src/javascripts/cowhide-text-input.js',
115 'src/javascripts/cowhide-radio-input.js',
116 'src/javascripts/cowhide-checkbox-input.js',
117 'src/javascripts/cowhide-select.js',
118 'src/javascripts/cowhide-page.js',
119 'src/javascripts/cowhide-header.js',
120 'src/javascripts/cowhide-simple-scrollable.js'
121 ], dest: 'dist/cowhide.js'
125 'lib/jquery-ui/dist/jquery-ui.css',
126 'dist/cowhide-default.css',
127 ], dest: 'dist/cowhide-default.css'
131 'lib/jquery-ui/dist/jquery-ui.css',
132 'dist/cowhide-default-night.css',
133 ], dest: 'dist/cowhide-default-night.css'
137 'lib/jquery-ui/dist/jquery-ui.css',
138 'dist/cowhide-amelia.css',
139 ], dest: 'dist/cowhide-amelia.css'
143 'lib/jquery-ui/dist/jquery-ui.css',
144 'dist/cowhide-amelia-night.css',
145 ], dest: 'dist/cowhide-amelia-night.css'
149 'lib/jquery-ui/dist/jquery-ui.css',
150 'dist/cowhide-spruce.css',
151 ], dest: 'dist/cowhide-spruce.css'
155 'lib/jquery-ui/dist/jquery-ui.css',
156 'dist/cowhide-spruce-night.css',
157 ], dest: 'dist/cowhide-spruce-night.css'
162 src: ['dist/cowhide.js'],
163 dest: 'dist/cowhide.min.js'
168 src: ['dist/cowhide-default.css'],
169 dest: 'dist/cowhide-default.min.css'
172 src: ['dist/cowhide-responsive.css'],
173 dest: 'dist/cowhide-responsive.min.css'
176 src: ['dist/cowhide-default-night.css'],
177 dest: 'dist/cowhide-default-night.min.css'
180 src: ['dist/cowhide-amelia.css'],
181 dest: 'dist/cowhide-amelia.min.css'
184 src: ['dist/cowhide-amelia-night.css'],
185 dest: 'dist/cowhide-amelia-night.min.css'
188 src: ['dist/cowhide-spruce.css'],
189 dest: 'dist/cowhide-spruce.min.css'
192 src: ['dist/cowhide-spruce-night.css'],
193 dest: 'dist/cowhide-spruce-night.min.css'
199 {dest: 'dist/', src: ['images/**'], cwd: 'lib/jquery-ui/dist/', expand: true},
200 {dest: 'dist/', src: ['images/**']},
201 {dest: 'dist/', src: ['README.md']},
202 {dest: 'dist/', src: ['docs/**']}
208 command: 'node dist/docs/build'
214 archive: 'dist/cowhide.zip'
217 {dest: 'cowhide', src: ['**'], cwd: 'dist', expand: true}
224 grunt.loadNpmTasks('grunt-update-submodules');
225 grunt.loadNpmTasks('grunt-contrib-clean');
226 grunt.loadNpmTasks('grunt-contrib-jshint');
227 grunt.loadNpmTasks('grunt-contrib-less');
228 grunt.loadNpmTasks('grunt-contrib-concat');
229 grunt.loadNpmTasks('grunt-contrib-uglify');
230 grunt.loadNpmTasks('grunt-contrib-cssmin');
231 grunt.loadNpmTasks('grunt-contrib-copy');
232 grunt.loadNpmTasks('grunt-exec');
233 grunt.loadNpmTasks('grunt-contrib-compress');
235 grunt.registerTask('default', ['update_submodules', 'clean', 'jshint', 'less', 'concat', 'uglify', 'cssmin', 'copy', 'exec:build_docs', 'compress']);