diff --git a/src/app/pages/maps/components/googleMaps/googleMaps.component.ts b/src/app/pages/maps/components/googleMaps/googleMaps.component.ts new file mode 100644 index 00000000..9fa7558b --- /dev/null +++ b/src/app/pages/maps/components/googleMaps/googleMaps.component.ts @@ -0,0 +1,19 @@ +import {Component, ViewEncapsulation} from 'angular2/core'; + +@Component({ + selector: 'google-maps', + pipes: [], + providers: [], + styles: [], + template: 'googleMaps' +}) +export class GoogleMaps { + + constructor() { + } + + ngOnInit() { + console.log('googleMaps'); + } + +} diff --git a/src/app/pages/maps/components/googleMaps/index.ts b/src/app/pages/maps/components/googleMaps/index.ts new file mode 100644 index 00000000..a8af940c --- /dev/null +++ b/src/app/pages/maps/components/googleMaps/index.ts @@ -0,0 +1 @@ +export * from './googleMaps.component'; diff --git a/src/app/pages/maps/index.ts b/src/app/pages/maps/index.ts new file mode 100644 index 00000000..e96d8cca --- /dev/null +++ b/src/app/pages/maps/index.ts @@ -0,0 +1 @@ +export * from './maps.component'; diff --git a/src/app/pages/maps/maps.component.ts b/src/app/pages/maps/maps.component.ts new file mode 100644 index 00000000..5224b98e --- /dev/null +++ b/src/app/pages/maps/maps.component.ts @@ -0,0 +1,29 @@ +import {Component, ViewEncapsulation} from 'angular2/core'; +import {RouteConfig} from 'angular2/router'; + +import {GoogleMaps} from './components/googleMaps'; + +@Component({ + selector: 'maps', + pipes: [], + providers: [], + styles: [], + template: `` +}) +@RouteConfig([ + { + name: 'GoogleMaps', + component: GoogleMaps, + path: '/google-maps', + useAsDefault: true + }, +]) +export class Maps { + + constructor() { + } + + ngOnInit() { + } + +} diff --git a/src/app/pages/pages.component.ts b/src/app/pages/pages.component.ts index 12a5d952..dda1b975 100644 --- a/src/app/pages/pages.component.ts +++ b/src/app/pages/pages.component.ts @@ -1,9 +1,10 @@ import {Component, ViewEncapsulation} from 'angular2/core'; import {RouteConfig, Router} from 'angular2/router'; +import {PageTop, ContentTop, Sidebar} from '../theme'; import {Dashboard} from './dashboard'; import {Ui} from './ui'; -import {PageTop, ContentTop, Sidebar} from '../theme'; +import {Maps} from './maps'; @Component({ selector: 'pages', @@ -32,6 +33,11 @@ import {PageTop, ContentTop, Sidebar} from '../theme'; component: Ui, path: '/ui/...', }, + { + name: 'Maps', + component: Maps, + path: '/maps/...', + }, ]) export class Pages { diff --git a/src/app/pages/ui/ui.component.ts b/src/app/pages/ui/ui.component.ts index 8599b37a..1fd7185a 100644 --- a/src/app/pages/ui/ui.component.ts +++ b/src/app/pages/ui/ui.component.ts @@ -15,15 +15,7 @@ import {Typography} from './components/typography'; name: 'Typography', component: Typography, path: '/typography', - useAsDefault: true, - data: { - title: 'Typography', - selected: false, - expanded: false, - sidebarMeta: { - order: 0, - } - } + useAsDefault: true }, ]) export class Ui { diff --git a/src/app/theme/sidebar/sidebar.component.ts b/src/app/theme/sidebar/sidebar.component.ts index 2dbbcbd3..b35da2fd 100644 --- a/src/app/theme/sidebar/sidebar.component.ts +++ b/src/app/theme/sidebar/sidebar.component.ts @@ -102,22 +102,23 @@ export class Sidebar { private selectMenuItem() { let currentMenu; - let isCurrent = (instruction) => (instruction ? this._router.isRouteActive(this._router.generate([instruction])) : false); + let isCurrent = (instructions) => (instructions.filter(i => typeof i !== 'undefined').length > 0 ? this._router.isRouteActive(this._router.generate(instructions)) : false); let assignCurrent = (menu) => (menu.selected ? currentMenu = menu : null); this.menuItems.forEach(function (menu: any) { - menu.selected = isCurrent(menu.name); + menu.selected = isCurrent([menu.name]); menu.expanded = menu.expanded || menu.selected; assignCurrent(menu); if (menu.subMenu) { menu.subMenu.forEach(function (subMenu) { - subMenu.selected = isCurrent(subMenu.name) && !subMenu.disabled; + subMenu.selected = isCurrent([menu.name, subMenu.name]) && !subMenu.disabled; assignCurrent(menu); }); } }); + // notifies all subscribers this._themeGlobal.setData('menu.activeLink', currentMenu); } diff --git a/src/app/theme/sidebar/sidebar.html b/src/app/theme/sidebar/sidebar.html index 1b51071e..8a81fd25 100644 --- a/src/app/theme/sidebar/sidebar.html +++ b/src/app/theme/sidebar/sidebar.html @@ -27,11 +27,11 @@ [ngClass]="{expanded: subitem.expanded, 'slide-right': subitem.slideRight}">
  • - + {{ subSubitem.title }}
  • - {{ subitem.title}} diff --git a/src/app/theme/sidebar/sidebar.service.ts b/src/app/theme/sidebar/sidebar.service.ts index 2edddf0a..2bbdddac 100644 --- a/src/app/theme/sidebar/sidebar.service.ts +++ b/src/app/theme/sidebar/sidebar.service.ts @@ -20,6 +20,20 @@ export class SidebarService { expanded: false, order: 200 }, + { + title: 'Maps', + name: 'Maps', + icon: 'ion-ios-location-outline', + selected: false, + expanded: false, + order: 300, + subMenu: [ + { + title: 'Google Maps', + name: 'GoogleMaps', + } + ] + }, { title: 'Pages', icon: 'ion-document',