diff --git a/Gruntfile.js b/Gruntfile.js index 1d7571020c..d9b580abcb 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -1,3 +1,44 @@ module.exports = function(grunt) { -} \ No newline at end of file + grunt.initConfig({ + pkg: grunt.file.readJSON('package.json'), + + concat: { + options: { + separator: ';' + }, + dist: { + src: [ + 'js/ionic.js', + 'js/platform.js', + 'js/utils.js', + 'js/events.js', + 'js/gestures.js', + 'js/viewController.js', + 'js/views/**/*.js', + 'js/controllers/**/*.js' + ], + dest: 'dist/<%= pkg.name %>.js' + } + }, + jshint: { + files: ['Gruntfile.js', 'js/**/*.js', 'test/**/*.js'], + options: { + // options here to override JSHint defaults + globals: { + jQuery: true, + console: true, + module: true, + document: true + } + } + } + }); + + grunt.loadNpmTasks('grunt-contrib-uglify'); + grunt.loadNpmTasks('grunt-contrib-jshint'); + grunt.loadNpmTasks('grunt-contrib-watch'); + grunt.loadNpmTasks('grunt-contrib-concat'); + + grunt.registerTask('default', ['jshint', 'concat']); +}; diff --git a/js/ionic.js b/js/ionic.js index bd1b08e356..c61d39b2be 100644 --- a/js/ionic.js +++ b/js/ionic.js @@ -5,14 +5,16 @@ function initalize() { document.removeEventListener( "DOMContentLoaded", initalize, false ); window.removeEventListener( "load", initalize, false ); + /* // trigger that the DOM is ready - ion.trigger("ready"); + ionic.trigger("ready"); // trigger that the start page is in view - ion.trigger("pageview"); + ionic.trigger("pageview"); // trigger that the webapp has been initalized - ion.trigger("initalized"); + ionic.trigger("initalized"); + */ } // When the DOM is ready, initalize the webapp diff --git a/js/platform.js b/js/platform.js new file mode 100644 index 0000000000..ee1e198133 --- /dev/null +++ b/js/platform.js @@ -0,0 +1,26 @@ +(function(ionic) { + + ionic.Platform = { + PLATFORM_CLASS_MAP: { + 'ios7': 'ios7' + }, + annotate: function() { + var platform = this._checkPlatforms(); + platform && document.body.classList.add('platform-' + platform); + }, + _checkPlatforms: function() { + if(this.isIOS7()) { + return 'ios7'; + } + }, + isIOS7: function() { + if(!window.device) { + return false; + } + return parseFloat(window.device.version) >= 7.0; + } + } + + ionic.Platform.annotate(); + +})(ionic = window.ionic || {}); diff --git a/js/viewController.js b/js/viewController.js index eec9f769fc..2a0583d45c 100644 --- a/js/viewController.js +++ b/js/viewController.js @@ -3,7 +3,7 @@ this.init(); }; - ion.ViewController.prototype = { + ionic.ViewController.prototype = { // Initialize this view controller init: function() { }, diff --git a/package.json b/package.json index 207b338d99..fe6c447a40 100644 --- a/package.json +++ b/package.json @@ -3,13 +3,15 @@ "private": true, "version": "0.0.01", "devDependencies": { - "grunt": "~0.4.0", - "grunt-contrib-watch": "~0.1.0", + "grunt": "~0.4.1", + "grunt-contrib-watch": "~0.5.3", + "grunt-contrib-concat": "~0.3.0", + "grunt-contrib-uglify": "~0.2.4", + "grunt-contrib-jshint": "~0.6.4" }, "licenses": [ { - "type": "MIT", - "url": "https://github.com/zurb/foundation/blob/master/LICENSE" + "type": "MIT" } ] -} \ No newline at end of file +}