diff --git a/ionic/components/app/structure.scss b/ionic/components/app/structure.scss
index c57ee0fc69..ed04f4f4f2 100644
--- a/ionic/components/app/structure.scss
+++ b/ionic/components/app/structure.scss
@@ -131,7 +131,7 @@ ion-view {
}
}
-.no-navbar > .navbar-container {
+[no-navbar] > .navbar-container {
display: none;
}
diff --git a/ionic/components/card/card.ts b/ionic/components/card/card.ts
index 238898e144..437ec3626f 100644
--- a/ionic/components/card/card.ts
+++ b/ionic/components/card/card.ts
@@ -1,24 +1,12 @@
-import {ElementRef} from 'angular2/angular2';
-
-import {Ion} from '../ion';
-import {IonicConfig} from '../../config/config';
-import {IonicDirective} from '../../config/decorators';
-import {ListVirtualScroll} from './virtual';
-import * as util from 'ionic/util';
+import {Directive} from 'angular2/angular2';
/**
* TODO
*/
-@IonicDirective({
- selector: 'ion-card'
-})
-export class Card extends Ion {
- /**
- * TODO
- * @param {ElementeRef} elementRef TODO
- * @param {IonicConfig} ionicConfig TODO
- */
- constructor(elementRef: ElementRef, ionicConfig: IonicConfig) {
- super(elementRef, ionicConfig);
+@Directive({
+ selector: 'ion-card',
+ host: {
+ 'class': 'card'
}
-}
+})
+export class Card {}
diff --git a/ionic/components/checkbox/checkbox.ts b/ionic/components/checkbox/checkbox.ts
index ec6219214e..d9814214d5 100644
--- a/ionic/components/checkbox/checkbox.ts
+++ b/ionic/components/checkbox/checkbox.ts
@@ -1,15 +1,8 @@
-import {
- View,
- Directive,
- ElementRef,
- Optional,
- NgControl
-} from 'angular2/angular2';
+import {Component, View, Directive, ElementRef, Optional, NgControl} from 'angular2/angular2';
import {Ion} from '../ion';
import {IonInput} from '../form/input';
import {IonicConfig} from '../../config/config';
-import {IonicComponent} from '../../config/decorators';
/**
* The checkbox is no different than the HTML checkbox input, except it's styled differently
@@ -23,7 +16,7 @@ import {IonicComponent} from '../../config/decorators';
*
* ```
*/
-@IonicComponent({
+@Component({
selector: 'ion-checkbox',
inputs: [
'value',
diff --git a/ionic/components/content/content.ts b/ionic/components/content/content.ts
index 029445429f..198cb6ba0d 100644
--- a/ionic/components/content/content.ts
+++ b/ionic/components/content/content.ts
@@ -3,7 +3,6 @@ import {Component, View, ElementRef, Optional, Host} from 'angular2/angular2';
import {Ion} from '../ion';
import {IonicConfig} from '../../config/config';
import {IonicPlatform} from '../../platform/platform';
-import {IonicComponent} from '../../config/decorators';
import {ViewController} from '../nav/view-controller';
import {Tab} from '../tabs/tab';
import {ScrollTo} from '../../animations/scroll-to';
diff --git a/ionic/components/item/item.ts b/ionic/components/item/item.ts
index 53750e6e93..8863eb0539 100644
--- a/ionic/components/item/item.ts
+++ b/ionic/components/item/item.ts
@@ -1,6 +1,4 @@
-import {Component, Directive, View, ElementRef, NgIf, ViewQuery, QueryList} from 'angular2/angular2';
-
-import * as util from 'ionic/util';
+import {Component, View} from 'angular2/angular2';
/**
@@ -31,25 +29,6 @@ import * as util from 'ionic/util';
'' +
''+
'' +
- '' +
- '',
- directives: [NgIf]
+ ''
})
-export class Item {
- /**
- * TODO
- * @param {ElementRef} elementRef A reference to the component's DOM element.
- */
- constructor(elementRef: ElementRef) {
- this._isOpen = false;
- this._isSlideActive = false;
- this._isTransitioning = false;
- this._transform = '';
-
- this.ele = elementRef.nativeElement;
- this.swipeButtons = {};
- this.optionButtons = {};
-
- }
-
-}
+export class Item {}
diff --git a/ionic/components/list/list.ts b/ionic/components/list/list.ts
index 2ceeef3a97..14d2a8b72c 100644
--- a/ionic/components/list/list.ts
+++ b/ionic/components/list/list.ts
@@ -2,7 +2,6 @@ import {Directive, ElementRef} from 'angular2/angular2';
import {Ion} from '../ion';
import {IonicConfig} from '../../config/config';
-import {IonicDirective} from '../../config/decorators';
import {ListVirtualScroll} from './virtual';
import * as util from 'ionic/util';
@@ -17,13 +16,16 @@ import * as util from 'ionic/util';
* interaction modes such as swipe to edit, drag to reorder, and removing items.
*
*/
-@IonicDirective({
+@Directive({
selector: 'ion-list',
inputs: [
'items',
'virtual',
'content'
- ]
+ ],
+ host: {
+ 'class': 'list'
+ }
})
export class List extends Ion {
/**
diff --git a/ionic/components/menu/test/basic/e2e.ts b/ionic/components/menu/test/basic/e2e.ts
index 0a67f84760..063470be1e 100644
--- a/ionic/components/menu/test/basic/e2e.ts
+++ b/ionic/components/menu/test/basic/e2e.ts
@@ -5,5 +5,5 @@ it('should toggle open menu', function() {
it('should close menu', function() {
- element(by.css('.e2eCloseMenu')).click();
+ element(by.css('[menu-close=leftMenu]')).click();
});
diff --git a/ionic/components/menu/test/basic/main.html b/ionic/components/menu/test/basic/main.html
index 0d6f204fd3..0c4af2d548 100644
--- a/ionic/components/menu/test/basic/main.html
+++ b/ionic/components/menu/test/basic/main.html
@@ -12,7 +12,7 @@
{{p.title}}
-