Mercurial > repos > saskia-hiltemann > ireport
diff iframe-resizer/gruntfile.js @ 0:ac5f9272033b draft
first upload
author | saskia-hiltemann |
---|---|
date | Tue, 01 Jul 2014 11:42:23 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/iframe-resizer/gruntfile.js Tue Jul 01 11:42:23 2014 -0400 @@ -0,0 +1,159 @@ +/*global module:false*/ +module.exports = function(grunt) { + + // show elapsed time at the end + require('time-grunt')(grunt); + + // load all grunt tasks + //require('load-grunt-tasks')(grunt); + require('jit-grunt')(grunt,{ + 'replace':'grunt-text-replace', + 'bump-only':'grunt-bump', + 'bump-commit':'grunt-bump' + }); + + // Project configuration. + grunt.initConfig({ + pkg: grunt.file.readJSON('package.json'), + + meta: { + bannerLocal: '/*! iFrame Resizer (iframeSizer.min.js ) - v<%= pkg.version %> - ' + + '<%= grunt.template.today("yyyy-mm-dd") %>\n' + + ' * Desc: Force cross domain iframes to size to content.\n' + + ' * Requires: iframeResizer.contentWindow.min.js to be loaded into the target frame.\n' + + ' * Copyright: (c) <%= grunt.template.today("yyyy") %> David J. Bradshaw - dave@bradshaw.net\n' + + ' * License: MIT\n */\n', + bannerRemote: '/*! iFrame Resizer (iframeSizer.contentWindow.min.js) - v<%= pkg.version %> - ' + + '<%= grunt.template.today("yyyy-mm-dd") %>\n' + + ' * Desc: Include this file in any page being loaded into an iframe\n' + + ' * to force the iframe to resize to the content size.\n' + + ' * Requires: iframeResizer.min.js on host page.\n' + + ' * Copyright: (c) <%= grunt.template.today("yyyy") %> David J. Bradshaw - dave@bradshaw.net\n' + + ' * License: MIT\n */\n' + }, + + qunit: { + files: ['test/*.html'] + }, + + jshint: { + options: { + globals: { + jQuery:false, + require:true, + process:true + }, + }, + gruntfile: { + src: 'gruntfile.js' + }, + code: { + src: 'src/**/*.js' + }, + }, + + uglify: { + options: { + sourceMaps:true, + sourceMapIncludeSources:true, + report:'gzip', + }, + local: { + options:{ + banner:'<%= meta.bannerLocal %>', + sourceMap: 'src/iframeResizer.map' + }, + src: ['src/iframeResizer.js'], + dest: 'js/iframeResizer.min.js', + }, + remote: { + options: { + banner:'<%= meta.bannerRemote %>', + sourceMap: 'src/iframeResizer.contentWindow.map' + }, + src: ['src/iframeResizer.contentWindow.js'], + dest: 'js/iframeResizer.contentWindow.min.js', + } + }, + + watch: { + files: ['src/**/*'], + tasks: 'sefault' + }, + + replace: { + min: { + src: ['js/*.min.js'], + overwrite: true, + replacements: [{ + from: /sourceMappingURL=src\//g, + to: 'sourceMappingURL=..\/src\/' + }] + }, + + map: { + src: ['src/*.map'], + overwrite: true, + replacements: [{ + from: /src\//g, + to: '' + }] + } + }, + + bump: { + options: { + files: ['package.json','bower.json','component.json','iframeResizer.jquery.json'], + updateConfigs: ['pkg'], + commit: true, + commitMessage: 'Release v%VERSION%', + commitFiles: ['-a'], // '-a' for all files + createTag: true, + tagName: 'v%VERSION%', + tagMessage: 'Version %VERSION%', + push: true, + pushTo: 'origin', + gitDescribeOptions: '--tags --always --abbrev=1 --dirty=-d' // options to use with '$ git describe' + } + }, + + shell: { + options:{ + stdout: true, + stderr: true, + failOnError: true + }, + deployExample: { + command: function(){ + + var + retStr = '', + fs = require('fs'); + + if (fs.existsSync('bin')) { + retStr = 'bin/deploy.sh'; + } + + return retStr; + } + } + }, + + jsonlint: { + json: { + src: [ '*.json' ] + } + } + + }); + + grunt.registerTask('default', ['notest','qunit']); + grunt.registerTask('notest', ['jsonlint','jshint','uglify','replace']); + grunt.registerTask('test', ['jshint','qunit']); + + grunt.registerTask('postBump',['uglify','replace','bump-commit','shell']); + grunt.registerTask('patch', ['default','bump-only:patch','postBump']); + grunt.registerTask('minor', ['default','bump-only:minor','postBump']); + grunt.registerTask('major', ['default','bump-only:major','postBump']); + +};