add components and routes to actual modules

This commit is contained in:
Mason Payne
2019-03-20 23:38:57 -06:00
parent 4d0d5f1721
commit c95f5614b5
25 changed files with 335 additions and 87 deletions

View File

@ -0,0 +1,3 @@
<p>
authentication works!
</p>

View File

@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { AuthenticationComponent } from './authentication.component';
describe('AuthenticationComponent', () => {
let component: AuthenticationComponent;
let fixture: ComponentFixture<AuthenticationComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ AuthenticationComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(AuthenticationComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@ -0,0 +1,15 @@
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-authentication',
templateUrl: './authentication.component.html',
styleUrls: ['./authentication.component.scss']
})
export class AuthenticationComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}

View File

@ -0,0 +1,3 @@
<p>
authorization works!
</p>

View File

@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { AuthorizationComponent } from './authorization.component';
describe('AuthorizationComponent', () => {
let component: AuthorizationComponent;
let fixture: ComponentFixture<AuthorizationComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ AuthorizationComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(AuthorizationComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@ -0,0 +1,15 @@
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-authorization',
templateUrl: './authorization.component.html',
styleUrls: ['./authorization.component.scss']
})
export class AuthorizationComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}

View File

@ -57,7 +57,8 @@
<ul class="nav">
<li routerLinkActive="active" *ngFor="let menuItem of menuItems" class="{{menuItem.class}} nav-item">
<a class="nav-link" [routerLink]="[menuItem.path]">
<i class="material-icons">{{menuItem.icon}}</i>
<i class="fas fa-{{menuItem.icon}}"></i>
<!-- <i class="material-icons">{{menuItem.icon}}</i> -->
<p>{{menuItem.title}}</p>
</a>
</li>

View File

@ -7,20 +7,60 @@ import { LinkifyService } from '../../linkify.service';
declare const $: any;
declare interface RouteInfo {
path: string;
title: string;
icon: string;
class: string;
path: string;
title: string;
icon: string;
class: string;
}
export const ROUTES: RouteInfo[] = [
{ path: '/dashboard', title: 'Dashboard', icon: 'dashboard', class: '' },
{ path: '/user-profile', title: 'User Profile', icon:'person', class: '' },
{ path: '/table-list', title: 'Table List', icon:'content_paste', class: '' },
{ path: '/typography', title: 'Typography', icon:'library_books', class: '' },
{ path: '/icons', title: 'Icons', icon:'bubble_chart', class: '' },
{ path: '/maps', title: 'Maps', icon:'location_on', class: '' },
{ path: '/notifications', title: 'Notifications', icon:'notifications', class: '' },
{ path: '/upgrade', title: 'Upgrade to PRO', icon:'unarchive', class: 'active-pro' },
{
path: '/dashboard',
title: 'Dashboard',
icon: 'tachometer-alt',
class: ''
},
{
path: '/user-profile',
title: 'User Profile',
icon:'user-alt',
class: ''
},
{
path: '/authentication',
title: 'Authentication',
icon:'key',
class: ''
},
{
path: '/authorization',
title: 'Authorization',
icon:'shield-alt',
class: ''
},
{
path: '/feature-switches',
title: 'Feature Switches',
icon:'toggle-on',
class: ''
},
{
path: '/short-links',
title: 'Short Links',
icon:'link',
class: ''
},
{
path: '/email',
title: 'Email',
icon:'envelope',
class: ''
},
// { path: '/table-list', title: 'Table List', icon:'content_paste', class: '' },
// { path: '/typography', title: 'Typography', icon:'library_books', class: '' },
// { path: '/icons', title: 'Icons', icon:'bubble_chart', class: '' },
// { path: '/maps', title: 'Maps', icon:'location_on', class: '' },
// { path: '/notifications', title: 'Notifications', icon:'notifications', class: '' },
// { path: '/upgrade', title: 'Upgrade to PRO', icon:'unarchive', class: 'active-pro' },
];
@Component({
@ -38,24 +78,24 @@ export class SidebarComponent implements OnInit {
ngOnInit() {
this.menuItems = ROUTES.filter(menuItem => menuItem);
let self = this;
this.appModulesService.getAvailableAppModules().subscribe((availableModules: AvailableAppModule[]) => {
self.menuItems = availableModules.map((appModule: AvailableAppModule) => {
return {
path: this.linkify.transform(appModule.name),
title: appModule.name,
icon: "dashboard",
class: "",
label: ""
};
});
// self.appModules = availableModules;
});
// let self = this;
// this.appModulesService.getAvailableAppModules().subscribe((availableModules: AvailableAppModule[]) => {
// self.menuItems = availableModules.map((appModule: AvailableAppModule) => {
// return {
// path: this.linkify.transform(appModule.name),
// title: appModule.name,
// icon: "dashboard",
// class: "",
// label: ""
// };
// });
// // self.appModules = availableModules;
// });
}
isMobileMenu() {
if ($(window).width() > 991) {
return false;
}
return true;
if ($(window).width() > 991) {
return false;
}
return true;
};
}

View File

@ -0,0 +1,3 @@
<p>
email works!
</p>

View File

View File

@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { EmailComponent } from './email.component';
describe('EmailComponent', () => {
let component: EmailComponent;
let fixture: ComponentFixture<EmailComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ EmailComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(EmailComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@ -0,0 +1,15 @@
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-email',
templateUrl: './email.component.html',
styleUrls: ['./email.component.scss']
})
export class EmailComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}

View File

@ -0,0 +1,3 @@
<p>
feature-switches works!
</p>

View File

@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { FeatureSwitchesComponent } from './feature-switches.component';
describe('FeatureSwitchesComponent', () => {
let component: FeatureSwitchesComponent;
let fixture: ComponentFixture<FeatureSwitchesComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ FeatureSwitchesComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(FeatureSwitchesComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@ -0,0 +1,15 @@
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-feature-switches',
templateUrl: './feature-switches.component.html',
styleUrls: ['./feature-switches.component.scss']
})
export class FeatureSwitchesComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}

View File

@ -12,6 +12,14 @@ import { MapsComponent } from '../../maps/maps.component';
import { NotificationsComponent } from '../../notifications/notifications.component';
import { UpgradeComponent } from '../../upgrade/upgrade.component';
// modules for appModules
import { AuthorizationComponent } from '../../authorization/authorization.component';
import { AuthenticationComponent } from '../../authentication/authentication.component';
import { FeatureSwitchesComponent } from '../../feature-switches/feature-switches.component';
import { ShortLinksComponent } from '../../short-links/short-links.component';
import { EmailComponent } from '../../email/email.component';
import {
MatButtonModule,
MatInputModule,
@ -41,6 +49,12 @@ import {
MapsComponent,
NotificationsComponent,
UpgradeComponent,
AuthorizationComponent,
AuthenticationComponent,
FeatureSwitchesComponent,
ShortLinksComponent,
EmailComponent,
]
})

View File

@ -2,62 +2,39 @@ import { Routes } from '@angular/router';
import { DashboardComponent } from '../../dashboard/dashboard.component';
import { UserProfileComponent } from '../../user-profile/user-profile.component';
import { TableListComponent } from '../../table-list/table-list.component';
import { TypographyComponent } from '../../typography/typography.component';
import { IconsComponent } from '../../icons/icons.component';
import { MapsComponent } from '../../maps/maps.component';
import { NotificationsComponent } from '../../notifications/notifications.component';
import { UpgradeComponent } from '../../upgrade/upgrade.component';
import { AuthenticationComponent } from '../../authentication/authentication.component';
import { AuthorizationComponent } from '../../authorization/authorization.component';
import { FeatureSwitchesComponent } from '../../feature-switches/feature-switches.component';
import { ShortLinksComponent } from '../../short-links/short-links.component';
import { EmailComponent } from '../../email/email.component';
export const AdminLayoutRoutes: Routes = [
// {
// path: '',
// children: [ {
// path: 'dashboard',
// component: DashboardComponent
// }]}, {
// path: '',
// children: [ {
// path: 'userprofile',
// component: UserProfileComponent
// }]
// }, {
// path: '',
// children: [ {
// path: 'icons',
// component: IconsComponent
// }]
// }, {
// path: '',
// children: [ {
// path: 'notifications',
// component: NotificationsComponent
// }]
// }, {
// path: '',
// children: [ {
// path: 'maps',
// component: MapsComponent
// }]
// }, {
// path: '',
// children: [ {
// path: 'typography',
// component: TypographyComponent
// }]
// }, {
// path: '',
// children: [ {
// path: 'upgrade',
// component: UpgradeComponent
// }]
// }
{ path: 'dashboard', component: DashboardComponent },
{ path: 'user-profile', component: UserProfileComponent },
{ path: 'table-list', component: TableListComponent },
{ path: 'typography', component: TypographyComponent },
{ path: 'icons', component: IconsComponent },
{ path: 'maps', component: MapsComponent },
{ path: 'notifications', component: NotificationsComponent },
{ path: 'upgrade', component: UpgradeComponent },
{
path: 'dashboard',
component: DashboardComponent
},
{
path: 'user-profile',
component: UserProfileComponent
},
{
path: 'authentication',
component: AuthenticationComponent,
},
{
path: 'authorization',
component: AuthorizationComponent,
},
{
path: 'feature-switches',
component: FeatureSwitchesComponent,
},
{
path: 'short-links',
component: ShortLinksComponent,
},
{
path: 'email',
component: EmailComponent,
}
];

View File

@ -0,0 +1,3 @@
<p>
short-links works!
</p>

View File

@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ShortLinksComponent } from './short-links.component';
describe('ShortLinksComponent', () => {
let component: ShortLinksComponent;
let fixture: ComponentFixture<ShortLinksComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ ShortLinksComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(ShortLinksComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@ -0,0 +1,15 @@
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-short-links',
templateUrl: './short-links.component.html',
styleUrls: ['./short-links.component.scss']
})
export class ShortLinksComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}

View File

@ -13,7 +13,8 @@
<meta name="viewport" content="width=device-width" />
<!-- Fonts and icons -->
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css" rel="stylesheet">
<!-- <link href="https://maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css" rel="stylesheet"> -->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.0/css/all.css" integrity="sha384-Mmxa0mLqhmOeaE8vgOSbKacftZcsNYDjQzuCOm6D02luYSzBG8vpaOykv9lFQ51Y" crossorigin="anonymous">
<link href='https://fonts.googleapis.com/css?family=Roboto:400,700,300|Material+Icons' rel='stylesheet' type='text/css'>
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=YOUR-KEY-HERE"></script>