a wee bit faster

This commit is contained in:
Tim Lancina
2015-06-04 11:16:31 -05:00
parent 7d15f6c606
commit fa138af539
12 changed files with 54 additions and 44 deletions

View File

@@ -7,10 +7,10 @@ System.config({
]
},
"paths": {
"ionic/*": "dist/ionic/*.js",
//"ionic/*": "dist/js/es6/ionic/*.js",
"github:*": "jspm_packages/github/*.js",
"npm:*": "jspm_packages/npm/*.js",
"angular2/*": "angular2/dist/js/dev/es6/angular2/*.es6",
//"angular2/*": "angular2/dist/js/dev/es6/angular2/*.es6",
"*": "*.js"
}
});

View File

@@ -23,12 +23,20 @@ var webpack = require('gulp-webpack');
var lazypipe = require('lazypipe');
gulp.task('build', function() {
gulp.task('clean.build', function() {
runSequence(
'clean',
'ionic.traceur',
'ionic.transpile',
'ionic.bundle.deps',
'ionic.bundle.js',
'ionic.examples',
'sass',
'fonts',
'polyfills');
})
gulp.task('build', function() {
runSequence(
'ionic.transpile',
'ionic.examples',
'sass',
'fonts',
@@ -39,24 +47,17 @@ gulp.task('watch', function() {
runSequence(
'clean',
'link.angular',
'ionic.copy.js',
'ionic.traceur',
'ionic.bundle.deps',
'ionic.bundle.js',
'ionic.examples',
'sass',
'fonts',
'polyfills',
function() {
watch('ionic/**/*.js', function(file) {
var splt = file.path.split('/');
var filename = splt[splt.length - 1];
var dest = file.path.replace(__dirname, '../angular-ionic/modules');
dest = dest.replace(filename, '')
doubleCheckDistFiles();
return gulp.src(file.path).pipe(gulp.dest(dest));
watch('ionic/**/*.js', function() {
gulp.start('');
});
watch('ionic/components/*/test/**/*', function() {
@@ -98,32 +99,37 @@ var babelOptions = {
'angular2-annotations',
'type-assertion:after'
],*/
modules: "system"
modules: "system",
moduleIds: true,
getModuleId: function(name) {
return "ionic/" + name;
}
};
gulp.task('ionic.traceur', function(done) {
gulp.task('ionic.transpile', function(done) {
return gulp.src(['ionic/**/*.js', '!ionic/components/*/test/**/*'])
.pipe(traceur(traceurOptions))
.pipe(gulp.dest('dist/ionic'));
});
gulp.task('ionic.bundle.js', function() {
var Builder = require('systemjs-builder');
var builder = new Builder();
return builder.loadConfig('config.js').then(function(){
builder.config({ baseURL: 'file:' + process.cwd() });
return builder.build('dist/ionic/ionic - dist/js/dependencies', 'dist/js/ionic.bundle.js');
}, function(error){
throw new Error(error);
})
.pipe(gulp.dest('dist/js/es6/ionic'))
.pipe(babel(babelOptions))
.pipe(gulp.dest('dist/js/es5/ionic'))
.pipe(concat('ionic.bundle.js'))
.pipe(gulp.dest('dist/js/'));
});
gulp.task('ionic.bundle.deps', function() {
var Builder = require('systemjs-builder');
var Builder = require('systemjs-builder')
var builder = new Builder();
return builder.loadConfig('config.js').then(function(){
builder.config({ baseURL: 'file:' + process.cwd() });
return builder.build('dist/ionic/ionic - [dist/ionic/ionic]', 'dist/js/dependencies.js');
// add ionic and angular2 build paths, since config.js is loaded at runtime from
// tests we don't want to put them there
builder.config({
baseURL: 'file:' + process.cwd(),
paths : {
"ionic/*": "dist/js/es6/ionic/*.js",
"angular2/*": "angular2/dist/js/dev/es6/angular2/*.es6",
}
});
return builder.build('dist/js/es6/ionic/**/* - [dist/js/es6/ionic/**/*]', 'dist/js/dependencies.js');
}, function(error){
throw new Error(error);
})
@@ -132,7 +138,7 @@ gulp.task('ionic.bundle.deps', function() {
gulp.task('ionic.examples', function() {
var buildTest = lazypipe()
.pipe(traceur, traceurOptions)
.pipe(babel, babelOptions)
//.pipe(babel, babelOptions) Let SystemJS load index.js at runtime, saves build time
// Get each test folder with gulp.src
return gulp.src('ionic/components/*/test/*/**/*')

View File

@@ -1,7 +1,7 @@
import {ComponentConfig} from 'ionic/config/component-config'
import {ComponentConfig} from 'ionic/config/component'
import {Aside} from 'ionic/components/aside/aside';
import * as asideTypes from 'ionic/components/aside/types/types'
import * as asideGestures from 'ionic/components/aside/gestures/gestures';
import * as asideTypes from 'ionic/components/aside/extensions/types'
import * as asideGestures from 'ionic/components/aside/extensions/gestures';
export let AsideConfig = new ComponentConfig(Aside)

View File

@@ -8,7 +8,10 @@ import {Injector} from 'angular2/di';
import {ViewContainerRef} from 'angular2/src/core/compiler/view_container_ref';
import {Compiler} from 'angular2/angular2';
import {NavBase} from './nav-base';
import {NavController} from './nav-controller';
import {NavItem, NavParams} from './nav-item';
import {Tabs} from '../tabs/tabs';
//import {nav} from './nav-base';
import {SwipeHandle} from './swipe-handle';
import {IonicComponent} from '../../config/component';

View File

@@ -1,6 +1,6 @@
import {Component, Parent, Decorator, View, NgElement} from 'angular2/angular2'
import {Nav} from 'ionic/components/nav/nav'
import {NavPane} from 'ionic/components/nav-pane/nav-pane'
//import {NavPane} from 'ionic/components/nav-pane/nav-pane'
import * as util from 'ionic/util'
// TODO consider more explicit API, a la tabs

View File

@@ -21,16 +21,17 @@
<!-- web animations polyfill for non-chrome browsers
<script src="/../../polyfills/web-animations.min.js"></script> -->
<script src="/../../../../scripts/component/zone-microtask.js" type="text/javascript"></script>
<script src="/../../../../scripts/resources/zone-microtask.js" type="text/javascript"></script>
<!-- <script src="long-stack-trace-zone.js" type="text/javascript"></script> -->
<!-- <script src="traceur-runtime.js" type="text/javascript"></script>
<script src="system.src.js" type="text/javascript"></script>
<script src="extension-register.js" type="text/javascript"></script>
<script src="extension-cjs.js" type="text/javascript"></script>
<script src="runtime_paths.js" type="text/javascript"></script> -->
<script src="/../../../../scripts/component/traceur-runtime.js" type="text/javascript"></script>
<script src="/../../../../scripts/component/babel-external-helpers.js" type="text/javascript"></script><script src="/../../../../scripts/component/Reflect.js" type="text/javascript"></script>
<script src="/../../../../scripts/component/system.src.js"></script>
<script src="/../../../../scripts/resources/traceur-runtime.js" type="text/javascript"></script>
<script src="/../../../../scripts/resources/babel-external-helpers.js" type="text/javascript"></script>
<script src="/../../../../scripts/resources/Reflect.js" type="text/javascript"></script>
<script src="/../../../../scripts/resources/system.src.js"></script>
<script src="/../../../../config.js"></script>
<script src="/../../../../dist/js/dependencies.js"></script>
<script src="/../../../../dist/js/ionic.bundle.js"></script>