zend-blog-3-backend
/
Gruntfile.js
142 строки · 5.7 Кб
1'use strict';2
3module.exports = function (grunt) {4grunt.loadNpmTasks('grunt-contrib-concat');5grunt.loadNpmTasks('grunt-contrib-uglify');6grunt.loadNpmTasks('grunt-contrib-cssmin');7
8grunt.initConfig({9pkg: grunt.file.readJSON('package.json'),10banner_format: '/* <%= pkg.name %> v<%= pkg.version %> --- <%= grunt.template.today("dd mmm yyyy HH:MM:ss o") %> */\n',11concat: {12css_login: {13options: {14stripBanners: {15block: true16},17banner: '<%= banner_format %>'18},19src: [20'bower_components/bootstrap/dist/css/bootstrap.css',21'web/css/main.css'22],23dest: 'web/dist/<%= pkg.name %>_login.css'24},25css_jquery_ui: {26options: {27stripBanners: {28block: true29},30banner: '<%= banner_format %>'31},32src: [33'bower_components/jquery-ui/themes/base/core.css',34'bower_components/jquery-ui/themes/base/accordion.css',35'bower_components/jquery-ui/themes/base/autocomplete.css',36'bower_components/jquery-ui/themes/base/button.css',37'bower_components/jquery-ui/themes/base/datepicker.css',38'bower_components/jquery-ui/themes/base/dialog.css',39'bower_components/jquery-ui/themes/base/draggable.css',40'bower_components/jquery-ui/themes/base/menu.css',41'bower_components/jquery-ui/themes/base/progressbar.css',42'bower_components/jquery-ui/themes/base/resizable.css',43'bower_components/jquery-ui/themes/base/selectable.css',44'bower_components/jquery-ui/themes/base/selectmenu.css',45'bower_components/jquery-ui/themes/base/sortable.css',46'bower_components/jquery-ui/themes/base/slider.css',47'bower_components/jquery-ui/themes/base/spinner.css',48'bower_components/jquery-ui/themes/base/tabs.css',49'bower_components/jquery-ui/themes/base/tooltip.css',50'bower_components/jquery-ui/themes/base/theme.css'51],52dest: 'web/dist/<%= pkg.name %>_jq_ui.css'53},54css_preview: {55options: {56stripBanners: {57block: true58},59banner: '<%= banner_format %>'60},61src: [62'web/dist/<%= pkg.name %>_jq_ui.css',63'bower_components/bootstrap/dist/css/bootstrap.css',64'web/css/pygments_table.css',65'web/css/pygments.css',66'web/css/blog.css'67],68dest: 'web/dist/<%= pkg.name %>_preview.css'69},70css_main: {71options: {72stripBanners: {73block: true74},75banner: '<%= banner_format %>'76},77src: [78'web/dist/<%= pkg.name %>_jq_ui.css',79'bower_components/bootstrap/dist/css/bootstrap.css',80'web/css/pygments_inline.css',81'web/css/pygments.css',82'web/css/symbola.css',83'web/css/main.css'84],85dest: 'web/dist/<%= pkg.name %>_main.css'86},87js: {88options: {89stripBanners: {90block: true91},92banner: '<%= banner_format %>'93},94src: [95'web/spa/assets/vendor.js',96'bower_components/bootstrap/dist/js/bootstrap.js',97'bower_components/moment/moment.js',98'bower_components/moment/locale/ru.js',99'bower_components/jquery-ui/ui/core.js',100'bower_components/jquery-ui/ui/widget.js',101'bower_components/jquery-ui/ui/position.js',102'bower_components/jquery-ui/ui/autocomplete.js',103'bower_components/jquery-ui/ui/menu.js',104'web/bundles/fosjsrouting/js/router.js',105'web/spa/assets/mtt-blog.js'106],107dest: 'web/dist/<%= pkg.name %>.js'108}109},110cssmin: {111options: {112shorthandCompacting: false,113format: 'keep-breaks',114roundingPrecision: -1115},116target: {117files: {118'web/dist/<%= pkg.name %>_login.min.css': ['<%= concat.css_login.dest %>'],119'web/dist/<%= pkg.name %>_tmp_preview.min.css': ['<%= concat.css_preview.dest %>'],120'web/dist/<%= pkg.name %>_tmp_main.min.css': ['<%= concat.css_main.dest %>']121}122}123},124uglify: {125options: {126output: {127ascii_only: true,128max_line_len: 160129}130},131dist: {132files: {133'web/dist/<%= pkg.name %>_tmp.min.js': ['<%= concat.js.dest %>']134}135}136}137});138
139grunt.registerTask('build', ['concat', 'cssmin', 'uglify']);140grunt.registerTask('style', ['concat', 'cssmin']);141grunt.registerTask('default', ['build']);142};143