mirror of
				https://github.com/librenms/librenms.git
				synced 2024-10-07 16:52:45 +00:00 
			
		
		
		
	git-subtree-dir: lib/gridster git-subtree-mainline:26f137d822git-subtree-split:314037471f
		
			
				
	
	
		
			184 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			184 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /*global module:false*/
 | |
| module.exports = function(grunt) {
 | |
| 
 | |
|   // Project configuration.
 | |
|   grunt.initConfig({
 | |
|     pkg: grunt.file.readJSON('package.json'),
 | |
|     meta: {
 | |
|       banner: '/*! <%= pkg.title || pkg.name %> - v<%= pkg.version %> - ' +
 | |
|               '<%= grunt.template.today("yyyy-mm-dd") %>\n' +
 | |
|               '<%= pkg.homepage ? "* " + pkg.homepage : "" %>\n' +
 | |
|               '* Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author.name %>;' +
 | |
|               ' Licensed <%= _.pluck(pkg.licenses, "type").join(", ") %> */\n\n',
 | |
| 
 | |
|       minibanner: '/*! <%= pkg.title || pkg.name %> - v<%= pkg.version %> - ' +
 | |
|                   '<%= grunt.template.today("yyyy-mm-dd") %> - ' +
 | |
|                   '<%= pkg.homepage ? "* " + pkg.homepage + " - " : "" %>' +
 | |
|                   'Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author.name %>;' +
 | |
|                   ' Licensed <%= _.pluck(pkg.licenses, "type").join(", ") %> */ '
 | |
|     },
 | |
|     concat: {
 | |
|       options: {
 | |
|         stripBanners: true,
 | |
|         banner: '<%= meta.banner %>'
 | |
|       },
 | |
|       dist_js: {
 | |
|         src: ['src/jquery.coords.js', 'src/jquery.collision.js', 'src/utils.js', 'src/jquery.draggable.js', 'src/jquery.<%= pkg.name %>.js'],
 | |
|         dest: 'dist/jquery.<%= pkg.name %>.js'
 | |
|       },
 | |
| 
 | |
|       dist_extras_js: {
 | |
|         src: ['src/jquery.coords.js', 'src/jquery.collision.js', 'src/utils.js', 'src/jquery.draggable.js', 'src/jquery.<%= pkg.name %>.js', 'src/jquery.<%= pkg.name %>.extras.js'],
 | |
|         dest: 'dist/jquery.<%= pkg.name %>.with-extras.js'
 | |
|       },
 | |
| 
 | |
|       dist_css: {
 | |
|         src: ['src/jquery.<%= pkg.name %>.css'],
 | |
|         dest: 'dist/jquery.<%= pkg.name %>.css'
 | |
|       },
 | |
| 
 | |
|       dist_demo_js: {
 | |
|         src: ['src/jquery.coords.js', 'src/jquery.collision.js', 'src/utils.js', 'src/jquery.draggable.js', 'src/jquery.<%= pkg.name %>.js'],
 | |
|         dest: 'gh-pages/dist/jquery.<%= pkg.name %>.js'
 | |
|       },
 | |
| 
 | |
|       dist_extras_demo_js: {
 | |
|         src: ['src/jquery.coords.js', 'src/jquery.collision.js', 'src/utils.js', 'src/jquery.draggable.js', 'src/jquery.<%= pkg.name %>.js', 'src/jquery.<%= pkg.name %>.extras.js'],
 | |
|         dest: 'gh-pages/dist/jquery.<%= pkg.name %>.with-extras.js'
 | |
|       },
 | |
| 
 | |
|       dist_demo_css: {
 | |
|         src: ['src/jquery.<%= pkg.name %>.css'],
 | |
|         dest: 'gh-pages/dist/jquery.<%= pkg.name %>.css'
 | |
|       }
 | |
|     },
 | |
|     uglify: {
 | |
|       options: {
 | |
|         banner: '<%= meta.minibanner %>'
 | |
|       },
 | |
|       dist: {
 | |
|         files: {
 | |
|           'dist/jquery.<%= pkg.name %>.min.js': ['<%= concat.dist_js.dest %>']
 | |
|         }
 | |
|       },
 | |
| 
 | |
|       dist_extras: {
 | |
|         files: {
 | |
|           'dist/jquery.<%= pkg.name %>.with-extras.min.js': ['<%= concat.dist_extras_js.dest %>']
 | |
|         }
 | |
|       },
 | |
| 
 | |
|       dist_demo: {
 | |
|         files: {
 | |
|           'gh-pages/dist/jquery.<%= pkg.name %>.min.js': ['<%= concat.dist_js.dest %>'],
 | |
|         }
 | |
|       },
 | |
| 
 | |
|       dist_extras_demo: {
 | |
|         files: {
 | |
|           'gh-pages/dist/jquery.<%= pkg.name %>.with-extras.min.js': ['<%= concat.dist_extras_js.dest %>']
 | |
|         }
 | |
|       }
 | |
|     },
 | |
|     cssmin: {
 | |
|       compress: {
 | |
|         options: {
 | |
|           keepSpecialComments: 0,
 | |
|           banner: '<%= meta.minibanner %>'
 | |
|         },
 | |
|         files: {
 | |
|           "dist/jquery.<%= pkg.name %>.min.css": ["dist/jquery.<%= pkg.name %>.css"],
 | |
|           "gh-pages/dist/jquery.<%= pkg.name %>.min.css": ["dist/jquery.<%= pkg.name %>.css"]
 | |
|         }
 | |
|       }
 | |
|     },
 | |
|     jshint: {
 | |
|       files: ['grunt.js', 'src/**/*.js', 'test/**/*.js']
 | |
|     },
 | |
|     watch: {
 | |
|       files: ['<%= lint.files %>', 'src/jquery.<%= pkg.name %>.css'],
 | |
|       tasks: 'min concat'
 | |
|     },
 | |
|     jshint: {
 | |
|       options: {
 | |
|         curly: true,
 | |
|         eqeqeq: true,
 | |
|         immed: true,
 | |
|         latedef: true,
 | |
|         newcap: true,
 | |
|         noarg: true,
 | |
|         sub: true,
 | |
|         undef: true,
 | |
|         boss: true,
 | |
|         eqnull: true,
 | |
|         browser: true
 | |
|       },
 | |
|       globals: {
 | |
|         jQuery: true
 | |
|       }
 | |
|     },
 | |
|     yuidoc: {
 | |
|       compile: {
 | |
|         "name": 'gridster.js',
 | |
|         "description": 'gridster.js, a drag-and-drop multi-column jQuery grid plugin',
 | |
|         "version": '0.1.0',
 | |
|         "url": 'http://gridster.net/',
 | |
|         "logo": 'https://ducksboard.com/static/images/svg/logo-ducksboard-black-small.svg',
 | |
|         options: {
 | |
|           paths: "src/",
 | |
|           outdir: "gh-pages/docs/"
 | |
|         }
 | |
|       }
 | |
|     },
 | |
| 
 | |
|     bump: {
 | |
|       options: {
 | |
|         files: ['package.json'],
 | |
|         updateConfigs: ['pkg'],
 | |
|         commit: true,
 | |
|         commitMessage: 'Release v%VERSION%',
 | |
|         commitFiles: ['package.json', 'CHANGELOG.md', 'dist/'], // '-a' for all files
 | |
|         createTag: true,
 | |
|         tagName: 'v%VERSION%',
 | |
|         tagMessage: 'Version %VERSION%',
 | |
|         push: false,
 | |
|         pushTo: 'origin',
 | |
|         gitDescribeOptions: '--tags --always --abbrev=1 --dirty=-d' // options to use with '$ git describe'
 | |
|       }
 | |
|     },
 | |
| 
 | |
|     changelog: {
 | |
|         options: {
 | |
|             dest: 'CHANGELOG.md'
 | |
|         }
 | |
|     },
 | |
| 
 | |
|     watch: {
 | |
|       files: ['libs/*.js', 'src/*.js', 'src/*.css', 'Gruntfile.js'],
 | |
|       tasks: ['concat', 'uglify', 'cssmin']
 | |
|     }
 | |
|   });
 | |
| 
 | |
| 
 | |
|   grunt.loadNpmTasks('grunt-contrib-watch');
 | |
|   grunt.loadNpmTasks('grunt-contrib-jshint');
 | |
|   grunt.loadNpmTasks('grunt-contrib-concat');
 | |
|   grunt.loadNpmTasks('grunt-contrib-uglify');
 | |
|   grunt.loadNpmTasks('grunt-contrib-cssmin');
 | |
|   grunt.loadNpmTasks('grunt-contrib-yuidoc');
 | |
|   grunt.loadNpmTasks('grunt-bump');
 | |
|   grunt.loadNpmTasks('grunt-conventional-changelog');
 | |
| 
 | |
|   // Default task.
 | |
|   grunt.registerTask('default', ['jshint', 'concat', 'uglify', 'cssmin']);
 | |
|   grunt.registerTask('build', ['default']);
 | |
|   grunt.registerTask('docs', ['yuidoc']);
 | |
| 
 | |
|   grunt.registerTask('release', ['build', 'bump-only:patch', 'build', 'docs', 'changelog']);
 | |
|   grunt.registerTask('release:minor', ['build', 'bump-only:minor', 'build', 'docs', 'changelog']);
 | |
|   grunt.registerTask('release:major', ['build', 'bump-only:major', 'build', 'docs', 'changelog']);
 | |
|   grunt.registerTask('release:git', ['build', 'bump-only:git', 'build', 'docs', 'changelog', 'bump-commit']);
 | |
|   grunt.registerTask('release:commit', ['bump-commit']);
 | |
| 
 | |
| };
 |