diff --git a/ionic/components/app/test/material/index.ts b/ionic/components/app/test/material/index.ts index 02b0f2aa85..4864d56158 100644 --- a/ionic/components/app/test/material/index.ts +++ b/ionic/components/app/test/material/index.ts @@ -6,11 +6,11 @@ import {App, IonicView, Register} from 'ionic/ionic'; template: '' + 'Heading' + '' + - '' + + '' + '' + '' + - '' + - '' + + '' + + '' + '' + '' + '' + diff --git a/ionic/components/icon/icon.ts b/ionic/components/icon/icon.ts index fb9e92e45e..3af7e18c32 100644 --- a/ionic/components/icon/icon.ts +++ b/ionic/components/icon/icon.ts @@ -1,10 +1,14 @@ -import {Directive, onInit, ElementRef} from 'angular2/angular2'; +import {Directive, View, CSSClass, onInit, ElementRef} from 'angular2/angular2'; +import {IonicConfig} from '../../config/config'; +import {IonicComponent} from '../../config/annotations'; +import {Ion} from '../ion'; +import {Platform} from '../../platform/platform'; @Directive({ selector: 'icon', properties: [ - 'name' + 'name', ], host: { '[attr.aria-label]': 'label', @@ -12,7 +16,7 @@ import {Directive, onInit, ElementRef} from 'angular2/angular2'; }, lifecycle: [onInit] }) -export class Icon { +export class IconDirective { constructor(elementRef: ElementRef) { this.ele = elementRef.nativeElement; } @@ -23,3 +27,30 @@ export class Icon { } } } + +@IonicComponent({ + selector: 'ion-icon', + properties: [ + 'md', + 'ios' + ], + host: { + 'mode': 'mode' + } +}) +@View({ + template: '', + directives: [CSSClass] +}) +export class Icon extends Ion { + constructor(elementRef: ElementRef, ionicConfig: IonicConfig) { + super(elementRef, ionicConfig); + } + onIonInit() { + this.iconClass = this.ios; + console.log('ICON', this.mode); + setTimeout(() => { + console.log('MODE', this.mode); + }); + } +} diff --git a/ionic/components/nav-bar/extensions/material.scss b/ionic/components/nav-bar/extensions/material.scss index b60c899619..8b18b85a18 100644 --- a/ionic/components/nav-bar/extensions/material.scss +++ b/ionic/components/nav-bar/extensions/material.scss @@ -2,12 +2,19 @@ // Material Design Navbar // -------------------------------------------------- +$navbar-order-material: ( + back-button: 10, + primary: 20, + title: 30, + secondary: 40 +); + $navbar-material-height: 6.4rem !default; $navbar-material-background: #f7f7f8; //get-color(primary, base) !default;//#f7f7f8 !default; $navbar-material-title-font-size: 2rem !default; -$navbar-material-button-font-size: 2rem !default; -$navbar-material-button-text-color: #007aff !default; +$navbar-material-button-font-size: 24px !default; +$navbar-material-button-text-color: #fff !default; //#007aff !default; .nav[mode="md"] .navbar-container { @@ -18,6 +25,26 @@ $navbar-material-button-text-color: #007aff !default; padding: 0px 16px; } + .toolbar-inner { + padding: 0px 16px; + } + + .toolbar-title { + order: map-get($navbar-order-ios, 'title'); + } + + .toolbar-primary-item { + order: map-get($navbar-order-ios, 'primary'); + } + + .toolbar-secondary-item { + order: map-get($navbar-order-ios, 'secondary'); + } + + .toolbar-primary-item ion-nav-items button:first-child { + margin-left: 0; + } + ion-title { font-size: $navbar-material-title-font-size; font-weight: 500; diff --git a/ionic/config/annotations.ts b/ionic/config/annotations.ts index 038941fa5d..e122c4ba58 100644 --- a/ionic/config/annotations.ts +++ b/ionic/config/annotations.ts @@ -11,6 +11,7 @@ import { List, Item, ItemGroup, ItemGroupTitle, Toolbar, Icon, + IconDirective, Checkbox, TapInput, Switch, Input, TextInput, Label, Segment, SegmentButton, SegmentControlValueAccessor, @@ -51,6 +52,7 @@ export const IonicDirectives = [ // Media forwardRef(() => Icon), + forwardRef(() => IconDirective), // Form forwardRef(() => Segment),