diff --git a/src/app/layouts/components/default.layout.component.html b/src/app/layouts/components/default.layout.component.html index 284aca4..62ef1e2 100644 --- a/src/app/layouts/components/default.layout.component.html +++ b/src/app/layouts/components/default.layout.component.html @@ -96,11 +96,16 @@
- +
- +
diff --git a/src/app/layouts/components/default.layout.component.ts b/src/app/layouts/components/default.layout.component.ts index 9e5e8df..23e8780 100644 --- a/src/app/layouts/components/default.layout.component.ts +++ b/src/app/layouts/components/default.layout.component.ts @@ -1,7 +1,14 @@ import { Subscription } from 'rxjs'; -import { Component, ViewChild, OnDestroy, OnInit, Type } from '@angular/core'; -import { Router, ActivatedRoute } from '@angular/router'; +import { + Component, + ViewChild, + OnDestroy, + OnInit, + Type, + Injector +} from '@angular/core'; +import { Router, NavigationEnd } from '@angular/router'; import { MatTabChangeEvent } from '@angular/material/tabs'; import { MatSidenav } from '@angular/material/sidenav'; @@ -11,6 +18,7 @@ import { Store, select } from '@ngrx/store'; import { LogService } from '@ucap/ng-logger'; import { AppSelector } from '@app/store/state'; +import { UCAP_PATH_PARAM } from '@app/types/tokens'; @Component({ selector: 'app-layouts-default', @@ -21,20 +29,25 @@ export class DefaultLayoutComponent implements OnInit, OnDestroy { @ViewChild('leftSidenav', { static: true }) leftSidenav: MatSidenav; - leftSectionComponent: Type; - contentSectionComponent: Type; + sidenavComponent: Type; + sidenavInjector: Injector; + contentComponent: Type; + contentInjector: Injector; private windowSizeSubscription: Subscription; private routerEventSubscription: Subscription; constructor( private router: Router, - private activatedRoute: ActivatedRoute, + private injector: Injector, private store: Store, private logService: LogService ) { this.routerEventSubscription = this.router.events.subscribe((event) => { - this.logService.debug('DefaultLayoutComponent', event); + if (event instanceof NavigationEnd) { + this.logService.debug('DefaultLayoutComponent', event); + this.onRoute(event.url); + } }); } @@ -82,28 +95,40 @@ export class DefaultLayoutComponent implements OnInit, OnDestroy { onRoute(url: string) { this.logService.debug('onRoute', url); + + this.sidenavInjector = Injector.create({ + providers: [{ provide: UCAP_PATH_PARAM, useValue: 'sidenav' }], + parent: this.injector + }); + this.contentInjector = Injector.create({ + providers: [{ provide: UCAP_PATH_PARAM, useValue: 'content' }], + parent: this.injector + }); + switch (url) { case '/organization': - import('@app/sections/organization/organization.section.module').then( - (m) => { - this.leftSectionComponent = m.TreeListSectionComponent; - } - ); - import('@app/sections/organization/organization.section.module').then( - (m) => { - this.contentSectionComponent = m.MembersSectionComponent; - } - ); + import('@app/pages/organization/organization.page.module').then((m) => { + this.sidenavComponent = m.SidenavPageComponent; + this.contentComponent = m.IndexPageComponent; + }); break; case '/group': + import('@app/pages/group/group.page.module').then((m) => { + this.sidenavComponent = m.SidenavPageComponent; + this.contentComponent = m.IndexPageComponent; + }); break; case '/chat': import('@app/pages/chat/chat.page.module').then((m) => { - this.leftSectionComponent = m.RoomListPageComponent; - this.contentSectionComponent = m.IndexPageComponent; + this.sidenavComponent = m.SidenavPageComponent; + this.contentComponent = m.IndexPageComponent; }); break; case '/message': + import('@app/pages/message/message.page.module').then((m) => { + this.sidenavComponent = m.SidenavPageComponent; + this.contentComponent = m.IndexPageComponent; + }); break; default: diff --git a/src/app/pages/call/call-routing.page.module.ts b/src/app/pages/call/call-routing.page.module.ts index 32029df..94708a1 100644 --- a/src/app/pages/call/call-routing.page.module.ts +++ b/src/app/pages/call/call-routing.page.module.ts @@ -1,14 +1,7 @@ import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; -import { IndexPageComponent } from './components/index.page.component'; - -const routes: Routes = [ - { - path: 'index', - component: IndexPageComponent - } -]; +const routes: Routes = []; @NgModule({ imports: [RouterModule.forChild(routes)], diff --git a/src/app/pages/call/call.page.module.ts b/src/app/pages/call/call.page.module.ts index 09a40bb..efac5ff 100644 --- a/src/app/pages/call/call.page.module.ts +++ b/src/app/pages/call/call.page.module.ts @@ -5,7 +5,12 @@ import { FlexLayoutModule } from '@angular/flex-layout'; import { AppCallRoutingPageModule } from './call-routing.page.module'; -import { COMPONENTS } from './components'; +import { IndexPageComponent } from './components/index.page.component'; +import { SidenavPageComponent } from './components/sidenav.page.component'; + +export const COMPONENTS = [IndexPageComponent, SidenavPageComponent]; + +export { IndexPageComponent, SidenavPageComponent }; @NgModule({ imports: [CommonModule, FlexLayoutModule, AppCallRoutingPageModule], diff --git a/src/app/pages/call/components/sidenav.page.component.html b/src/app/pages/call/components/sidenav.page.component.html new file mode 100644 index 0000000..b4de8eb --- /dev/null +++ b/src/app/pages/call/components/sidenav.page.component.html @@ -0,0 +1,3 @@ +
+ sidenav page of call is works! +
diff --git a/src/app/pages/chat/components/room-list.page.component.scss b/src/app/pages/call/components/sidenav.page.component.scss similarity index 100% rename from src/app/pages/chat/components/room-list.page.component.scss rename to src/app/pages/call/components/sidenav.page.component.scss diff --git a/src/app/pages/chat/components/room-list.page.component.spec.ts b/src/app/pages/call/components/sidenav.page.component.spec.ts similarity index 65% rename from src/app/pages/chat/components/room-list.page.component.spec.ts rename to src/app/pages/call/components/sidenav.page.component.spec.ts index f3f2f9e..c04ef4e 100644 --- a/src/app/pages/chat/components/room-list.page.component.spec.ts +++ b/src/app/pages/call/components/sidenav.page.component.spec.ts @@ -1,28 +1,28 @@ import { TestBed, async } from '@angular/core/testing'; import { RouterTestingModule } from '@angular/router/testing'; -import { RoomListPageComponent } from './room-list.page.component'; +import { SidenavPageComponent } from './sidenav.page.component'; -describe('app::pages::chat::RoomListPageComponent', () => { +describe('app::pages::call::SidenavPageComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ imports: [RouterTestingModule], - declarations: [RoomListPageComponent] + declarations: [SidenavPageComponent] }).compileComponents(); })); it('should create the app', () => { - const fixture = TestBed.createComponent(RoomListPageComponent); + const fixture = TestBed.createComponent(SidenavPageComponent); const app = fixture.componentInstance; expect(app).toBeTruthy(); }); it(`should have as title 'ucap-lg-web'`, () => { - const fixture = TestBed.createComponent(RoomListPageComponent); + const fixture = TestBed.createComponent(SidenavPageComponent); const app = fixture.componentInstance; }); it('should render title', () => { - const fixture = TestBed.createComponent(RoomListPageComponent); + const fixture = TestBed.createComponent(SidenavPageComponent); fixture.detectChanges(); const compiled = fixture.nativeElement; expect(compiled.querySelector('.content span').textContent).toContain( diff --git a/src/app/pages/call/components/sidenav.page.component.ts b/src/app/pages/call/components/sidenav.page.component.ts new file mode 100644 index 0000000..f016d75 --- /dev/null +++ b/src/app/pages/call/components/sidenav.page.component.ts @@ -0,0 +1,20 @@ +import { Component, Inject } from '@angular/core'; +import { Router } from '@angular/router'; + +import { LogService } from '@ucap/ng-logger'; + +import { UCAP_PATH_PARAM } from '@app/types/tokens'; + +@Component({ + selector: 'app-pages-call-sidenav', + templateUrl: './sidenav.page.component.html', + styleUrls: ['./sidenav.page.component.scss'] +}) +export class SidenavPageComponent { + constructor( + @Inject(UCAP_PATH_PARAM) private pathParam: string, + private logService: LogService + ) { + this.logService.info('app-pages-call-sidenav', 'pathParam', this.pathParam); + } +} diff --git a/src/app/pages/chat/chat.page.module.ts b/src/app/pages/chat/chat.page.module.ts index 2d53e8f..bc9dddc 100644 --- a/src/app/pages/chat/chat.page.module.ts +++ b/src/app/pages/chat/chat.page.module.ts @@ -6,11 +6,11 @@ import { FlexLayoutModule } from '@angular/flex-layout'; import { AppChatRoutingPageModule } from './chat-routing.page.module'; import { IndexPageComponent } from './components/index.page.component'; -import { RoomListPageComponent } from './components/room-list.page.component'; +import { SidenavPageComponent } from './components/sidenav.page.component'; -export const COMPONENTS = [IndexPageComponent, RoomListPageComponent]; +export const COMPONENTS = [IndexPageComponent, SidenavPageComponent]; -export { IndexPageComponent, RoomListPageComponent }; +export { IndexPageComponent, SidenavPageComponent }; @NgModule({ imports: [CommonModule, FlexLayoutModule, AppChatRoutingPageModule], diff --git a/src/app/pages/chat/components/room-list.page.component.html b/src/app/pages/chat/components/room-list.page.component.html deleted file mode 100644 index 438df1d..0000000 --- a/src/app/pages/chat/components/room-list.page.component.html +++ /dev/null @@ -1,3 +0,0 @@ -
- Room list page of chat is works! -
diff --git a/src/app/pages/chat/components/room-list.page.component.ts b/src/app/pages/chat/components/room-list.page.component.ts deleted file mode 100644 index 7155de7..0000000 --- a/src/app/pages/chat/components/room-list.page.component.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Component } from '@angular/core'; -import { Router } from '@angular/router'; - -@Component({ - selector: 'app-pages-chat-room-list', - templateUrl: './room-list.page.component.html', - styleUrls: ['./room-list.page.component.scss'] -}) -export class RoomListPageComponent { - constructor(private router: Router) { - console.log('RoomListPageComponent', this.router.url, this.router); - } -} diff --git a/src/app/pages/chat/components/sidenav.page.component.html b/src/app/pages/chat/components/sidenav.page.component.html new file mode 100644 index 0000000..a409ebd --- /dev/null +++ b/src/app/pages/chat/components/sidenav.page.component.html @@ -0,0 +1,3 @@ +
+ sidenav page of chat is works! +
diff --git a/src/app/sections/organization/components/members.section.component.scss b/src/app/pages/chat/components/sidenav.page.component.scss similarity index 100% rename from src/app/sections/organization/components/members.section.component.scss rename to src/app/pages/chat/components/sidenav.page.component.scss diff --git a/src/app/sections/organization/components/members.section.component.spec.ts b/src/app/pages/chat/components/sidenav.page.component.spec.ts similarity index 64% rename from src/app/sections/organization/components/members.section.component.spec.ts rename to src/app/pages/chat/components/sidenav.page.component.spec.ts index 6e9df29..577f0dc 100644 --- a/src/app/sections/organization/components/members.section.component.spec.ts +++ b/src/app/pages/chat/components/sidenav.page.component.spec.ts @@ -1,28 +1,28 @@ import { TestBed, async } from '@angular/core/testing'; import { RouterTestingModule } from '@angular/router/testing'; -import { MembersSectionComponent } from './members.section.component'; +import { SidenavPageComponent } from './sidenav.page.component'; -describe('app::sections::organization::MembersSectionComponent', () => { +describe('app::pages::chat::SidenavPageComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ imports: [RouterTestingModule], - declarations: [MembersSectionComponent] + declarations: [SidenavPageComponent] }).compileComponents(); })); it('should create the app', () => { - const fixture = TestBed.createComponent(MembersSectionComponent); + const fixture = TestBed.createComponent(SidenavPageComponent); const app = fixture.componentInstance; expect(app).toBeTruthy(); }); it(`should have as title 'ucap-lg-web'`, () => { - const fixture = TestBed.createComponent(MembersSectionComponent); + const fixture = TestBed.createComponent(SidenavPageComponent); const app = fixture.componentInstance; }); it('should render title', () => { - const fixture = TestBed.createComponent(MembersSectionComponent); + const fixture = TestBed.createComponent(SidenavPageComponent); fixture.detectChanges(); const compiled = fixture.nativeElement; expect(compiled.querySelector('.content span').textContent).toContain( diff --git a/src/app/pages/chat/components/sidenav.page.component.ts b/src/app/pages/chat/components/sidenav.page.component.ts new file mode 100644 index 0000000..016839a --- /dev/null +++ b/src/app/pages/chat/components/sidenav.page.component.ts @@ -0,0 +1,20 @@ +import { Component, Inject } from '@angular/core'; +import { Router } from '@angular/router'; + +import { LogService } from '@ucap/ng-logger'; + +import { UCAP_PATH_PARAM } from '@app/types/tokens'; + +@Component({ + selector: 'app-pages-chat-sidenav', + templateUrl: './sidenav.page.component.html', + styleUrls: ['./sidenav.page.component.scss'] +}) +export class SidenavPageComponent { + constructor( + @Inject(UCAP_PATH_PARAM) private pathParam: string, + private logService: LogService + ) { + this.logService.info('app-pages-chat-sidenav', 'pathParam', this.pathParam); + } +} diff --git a/src/app/pages/group/components/index.page.component.ts b/src/app/pages/group/components/index.page.component.ts index 032b6c8..5765e91 100644 --- a/src/app/pages/group/components/index.page.component.ts +++ b/src/app/pages/group/components/index.page.component.ts @@ -1,5 +1,8 @@ -import { Component } from '@angular/core'; -import { Store } from '@ngrx/store'; +import { Component, Inject } from '@angular/core'; + +import { LogService } from '@ucap/ng-logger'; + +import { UCAP_PATH_PARAM } from '@app/types/tokens'; @Component({ selector: 'app-pages-group-index', @@ -7,5 +10,10 @@ import { Store } from '@ngrx/store'; styleUrls: ['./index.page.component.scss'] }) export class IndexPageComponent { - constructor(private store: Store) {} + constructor( + @Inject(UCAP_PATH_PARAM) private pathParam: string, + private logService: LogService + ) { + this.logService.info('app-pages-group-index', 'pathParam', this.pathParam); + } } diff --git a/src/app/pages/group/components/index.ts b/src/app/pages/group/components/index.ts deleted file mode 100644 index be6f642..0000000 --- a/src/app/pages/group/components/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { IndexPageComponent } from './index.page.component'; - -export const COMPONENTS = [IndexPageComponent]; diff --git a/src/app/pages/group/components/sidenav.page.component.html b/src/app/pages/group/components/sidenav.page.component.html new file mode 100644 index 0000000..e04db7f --- /dev/null +++ b/src/app/pages/group/components/sidenav.page.component.html @@ -0,0 +1,3 @@ +
+ sidenav page of group is works! +
diff --git a/src/app/sections/organization/components/tree-list.section.component.scss b/src/app/pages/group/components/sidenav.page.component.scss similarity index 100% rename from src/app/sections/organization/components/tree-list.section.component.scss rename to src/app/pages/group/components/sidenav.page.component.scss diff --git a/src/app/sections/organization/components/tree-list.section.component.spec.ts b/src/app/pages/group/components/sidenav.page.component.spec.ts similarity index 63% rename from src/app/sections/organization/components/tree-list.section.component.spec.ts rename to src/app/pages/group/components/sidenav.page.component.spec.ts index bd664c4..abd8de2 100644 --- a/src/app/sections/organization/components/tree-list.section.component.spec.ts +++ b/src/app/pages/group/components/sidenav.page.component.spec.ts @@ -1,28 +1,28 @@ import { TestBed, async } from '@angular/core/testing'; import { RouterTestingModule } from '@angular/router/testing'; -import { TreeListSectionComponent } from './tree-list.section.component'; +import { SidenavPageComponent } from './sidenav.page.component'; -describe('app::sections::organization::TreeListSectionComponent', () => { +describe('app::pages::group::SidenavPageComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ imports: [RouterTestingModule], - declarations: [TreeListSectionComponent] + declarations: [SidenavPageComponent] }).compileComponents(); })); it('should create the app', () => { - const fixture = TestBed.createComponent(TreeListSectionComponent); + const fixture = TestBed.createComponent(SidenavPageComponent); const app = fixture.componentInstance; expect(app).toBeTruthy(); }); it(`should have as title 'ucap-lg-web'`, () => { - const fixture = TestBed.createComponent(TreeListSectionComponent); + const fixture = TestBed.createComponent(SidenavPageComponent); const app = fixture.componentInstance; }); it('should render title', () => { - const fixture = TestBed.createComponent(TreeListSectionComponent); + const fixture = TestBed.createComponent(SidenavPageComponent); fixture.detectChanges(); const compiled = fixture.nativeElement; expect(compiled.querySelector('.content span').textContent).toContain( diff --git a/src/app/pages/group/components/sidenav.page.component.ts b/src/app/pages/group/components/sidenav.page.component.ts new file mode 100644 index 0000000..0f4a98f --- /dev/null +++ b/src/app/pages/group/components/sidenav.page.component.ts @@ -0,0 +1,23 @@ +import { Component, Inject } from '@angular/core'; + +import { LogService } from '@ucap/ng-logger'; + +import { UCAP_PATH_PARAM } from '@app/types/tokens'; + +@Component({ + selector: 'app-pages-group-sidenav', + templateUrl: './sidenav.page.component.html', + styleUrls: ['./sidenav.page.component.scss'] +}) +export class SidenavPageComponent { + constructor( + @Inject(UCAP_PATH_PARAM) private pathParam: string, + private logService: LogService + ) { + this.logService.info( + 'app-pages-group-sidenav', + 'pathParam', + this.pathParam + ); + } +} diff --git a/src/app/pages/group/group-routing.page.module.ts b/src/app/pages/group/group-routing.page.module.ts index 05e05b0..7e754b4 100644 --- a/src/app/pages/group/group-routing.page.module.ts +++ b/src/app/pages/group/group-routing.page.module.ts @@ -1,14 +1,7 @@ import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; -import { IndexPageComponent } from './components/index.page.component'; - -const routes: Routes = [ - { - path: 'index', - component: IndexPageComponent - } -]; +const routes: Routes = []; @NgModule({ imports: [RouterModule.forChild(routes)], diff --git a/src/app/pages/group/group.page.module.ts b/src/app/pages/group/group.page.module.ts index 050a9df..fa66058 100644 --- a/src/app/pages/group/group.page.module.ts +++ b/src/app/pages/group/group.page.module.ts @@ -5,7 +5,12 @@ import { FlexLayoutModule } from '@angular/flex-layout'; import { AppGroupRoutingPageModule } from './group-routing.page.module'; -import { COMPONENTS } from './components'; +import { IndexPageComponent } from './components/index.page.component'; +import { SidenavPageComponent } from './components/sidenav.page.component'; + +export const COMPONENTS = [IndexPageComponent, SidenavPageComponent]; + +export { IndexPageComponent, SidenavPageComponent }; @NgModule({ imports: [CommonModule, FlexLayoutModule, AppGroupRoutingPageModule], diff --git a/src/app/pages/message/components/index.ts b/src/app/pages/message/components/index.ts deleted file mode 100644 index be6f642..0000000 --- a/src/app/pages/message/components/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { IndexPageComponent } from './index.page.component'; - -export const COMPONENTS = [IndexPageComponent]; diff --git a/src/app/pages/message/components/sidenav.page.component.html b/src/app/pages/message/components/sidenav.page.component.html new file mode 100644 index 0000000..e04db7f --- /dev/null +++ b/src/app/pages/message/components/sidenav.page.component.html @@ -0,0 +1,3 @@ +
+ sidenav page of group is works! +
diff --git a/src/app/pages/message/components/sidenav.page.component.scss b/src/app/pages/message/components/sidenav.page.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/src/app/pages/message/components/sidenav.page.component.spec.ts b/src/app/pages/message/components/sidenav.page.component.spec.ts new file mode 100644 index 0000000..abd8de2 --- /dev/null +++ b/src/app/pages/message/components/sidenav.page.component.spec.ts @@ -0,0 +1,32 @@ +import { TestBed, async } from '@angular/core/testing'; +import { RouterTestingModule } from '@angular/router/testing'; +import { SidenavPageComponent } from './sidenav.page.component'; + +describe('app::pages::group::SidenavPageComponent', () => { + beforeEach(async(() => { + TestBed.configureTestingModule({ + imports: [RouterTestingModule], + declarations: [SidenavPageComponent] + }).compileComponents(); + })); + + it('should create the app', () => { + const fixture = TestBed.createComponent(SidenavPageComponent); + const app = fixture.componentInstance; + expect(app).toBeTruthy(); + }); + + it(`should have as title 'ucap-lg-web'`, () => { + const fixture = TestBed.createComponent(SidenavPageComponent); + const app = fixture.componentInstance; + }); + + it('should render title', () => { + const fixture = TestBed.createComponent(SidenavPageComponent); + fixture.detectChanges(); + const compiled = fixture.nativeElement; + expect(compiled.querySelector('.content span').textContent).toContain( + 'ucap-lg-web app is running!' + ); + }); +}); diff --git a/src/app/pages/message/components/sidenav.page.component.ts b/src/app/pages/message/components/sidenav.page.component.ts new file mode 100644 index 0000000..0f4a98f --- /dev/null +++ b/src/app/pages/message/components/sidenav.page.component.ts @@ -0,0 +1,23 @@ +import { Component, Inject } from '@angular/core'; + +import { LogService } from '@ucap/ng-logger'; + +import { UCAP_PATH_PARAM } from '@app/types/tokens'; + +@Component({ + selector: 'app-pages-group-sidenav', + templateUrl: './sidenav.page.component.html', + styleUrls: ['./sidenav.page.component.scss'] +}) +export class SidenavPageComponent { + constructor( + @Inject(UCAP_PATH_PARAM) private pathParam: string, + private logService: LogService + ) { + this.logService.info( + 'app-pages-group-sidenav', + 'pathParam', + this.pathParam + ); + } +} diff --git a/src/app/pages/message/message.page.module.ts b/src/app/pages/message/message.page.module.ts index a9a4562..c1cb93e 100644 --- a/src/app/pages/message/message.page.module.ts +++ b/src/app/pages/message/message.page.module.ts @@ -5,7 +5,12 @@ import { FlexLayoutModule } from '@angular/flex-layout'; import { AppMessageRoutingPageModule } from './message-routing.page.module'; -import { COMPONENTS } from './components'; +import { IndexPageComponent } from './components/index.page.component'; +import { SidenavPageComponent } from './components/sidenav.page.component'; + +export const COMPONENTS = [IndexPageComponent, SidenavPageComponent]; + +export { IndexPageComponent, SidenavPageComponent }; @NgModule({ imports: [CommonModule, FlexLayoutModule, AppMessageRoutingPageModule], diff --git a/src/app/pages/organization/components/index.ts b/src/app/pages/organization/components/index.ts deleted file mode 100644 index be6f642..0000000 --- a/src/app/pages/organization/components/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { IndexPageComponent } from './index.page.component'; - -export const COMPONENTS = [IndexPageComponent]; diff --git a/src/app/pages/organization/components/sidenav.page.component.html b/src/app/pages/organization/components/sidenav.page.component.html new file mode 100644 index 0000000..00e135e --- /dev/null +++ b/src/app/pages/organization/components/sidenav.page.component.html @@ -0,0 +1,3 @@ +
+ sidenav page of ogranization is works! +
diff --git a/src/app/pages/organization/components/sidenav.page.component.scss b/src/app/pages/organization/components/sidenav.page.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/src/app/pages/organization/components/sidenav.page.component.spec.ts b/src/app/pages/organization/components/sidenav.page.component.spec.ts new file mode 100644 index 0000000..abd8de2 --- /dev/null +++ b/src/app/pages/organization/components/sidenav.page.component.spec.ts @@ -0,0 +1,32 @@ +import { TestBed, async } from '@angular/core/testing'; +import { RouterTestingModule } from '@angular/router/testing'; +import { SidenavPageComponent } from './sidenav.page.component'; + +describe('app::pages::group::SidenavPageComponent', () => { + beforeEach(async(() => { + TestBed.configureTestingModule({ + imports: [RouterTestingModule], + declarations: [SidenavPageComponent] + }).compileComponents(); + })); + + it('should create the app', () => { + const fixture = TestBed.createComponent(SidenavPageComponent); + const app = fixture.componentInstance; + expect(app).toBeTruthy(); + }); + + it(`should have as title 'ucap-lg-web'`, () => { + const fixture = TestBed.createComponent(SidenavPageComponent); + const app = fixture.componentInstance; + }); + + it('should render title', () => { + const fixture = TestBed.createComponent(SidenavPageComponent); + fixture.detectChanges(); + const compiled = fixture.nativeElement; + expect(compiled.querySelector('.content span').textContent).toContain( + 'ucap-lg-web app is running!' + ); + }); +}); diff --git a/src/app/pages/organization/components/sidenav.page.component.ts b/src/app/pages/organization/components/sidenav.page.component.ts new file mode 100644 index 0000000..fd1a99d --- /dev/null +++ b/src/app/pages/organization/components/sidenav.page.component.ts @@ -0,0 +1,23 @@ +import { Component, Inject } from '@angular/core'; + +import { LogService } from '@ucap/ng-logger'; + +import { UCAP_PATH_PARAM } from '@app/types/tokens'; + +@Component({ + selector: 'app-pages-ogranization-sidenav', + templateUrl: './sidenav.page.component.html', + styleUrls: ['./sidenav.page.component.scss'] +}) +export class SidenavPageComponent { + constructor( + @Inject(UCAP_PATH_PARAM) private pathParam: string, + private logService: LogService + ) { + this.logService.info( + 'app-pages-ogranization-sidenav', + 'pathParam', + this.pathParam + ); + } +} diff --git a/src/app/pages/organization/organization-routing.page.module.ts b/src/app/pages/organization/organization-routing.page.module.ts index dce135a..1849d3b 100644 --- a/src/app/pages/organization/organization-routing.page.module.ts +++ b/src/app/pages/organization/organization-routing.page.module.ts @@ -1,14 +1,7 @@ import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; -import { IndexPageComponent } from './components/index.page.component'; - -const routes: Routes = [ - { - path: 'index', - component: IndexPageComponent - } -]; +const routes: Routes = []; @NgModule({ imports: [RouterModule.forChild(routes)], diff --git a/src/app/pages/organization/organization.page.module.ts b/src/app/pages/organization/organization.page.module.ts index dfad3dd..0626149 100644 --- a/src/app/pages/organization/organization.page.module.ts +++ b/src/app/pages/organization/organization.page.module.ts @@ -5,7 +5,12 @@ import { FlexLayoutModule } from '@angular/flex-layout'; import { AppOrganizationRoutingPageModule } from './organization-routing.page.module'; -import { COMPONENTS } from './components'; +import { IndexPageComponent } from './components/index.page.component'; +import { SidenavPageComponent } from './components/sidenav.page.component'; + +export const COMPONENTS = [IndexPageComponent, SidenavPageComponent]; + +export { IndexPageComponent, SidenavPageComponent }; @NgModule({ imports: [CommonModule, FlexLayoutModule, AppOrganizationRoutingPageModule], diff --git a/src/app/sections/organization/components/members.section.component.html b/src/app/sections/organization/components/members.section.component.html deleted file mode 100644 index b93f0f9..0000000 --- a/src/app/sections/organization/components/members.section.component.html +++ /dev/null @@ -1,3 +0,0 @@ -
- members -
diff --git a/src/app/sections/organization/components/members.section.component.ts b/src/app/sections/organization/components/members.section.component.ts deleted file mode 100644 index 490c137..0000000 --- a/src/app/sections/organization/components/members.section.component.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Subscription } from 'rxjs'; -import { take, filter } from 'rxjs/operators'; - -import { Component, OnInit, OnDestroy, Input, ViewChild } from '@angular/core'; - -import { LogService } from '@ucap/ng-logger'; - -@Component({ - selector: 'app-sections-organization-members', - templateUrl: './members.section.component.html', - styleUrls: ['./members.section.component.scss'] -}) -export class MembersSectionComponent implements OnInit, OnDestroy { - constructor(private logService: LogService) {} - - ngOnInit(): void {} - - ngOnDestroy(): void {} -} diff --git a/src/app/sections/organization/components/tree-list.section.component.html b/src/app/sections/organization/components/tree-list.section.component.html deleted file mode 100644 index 8361593..0000000 --- a/src/app/sections/organization/components/tree-list.section.component.html +++ /dev/null @@ -1,3 +0,0 @@ -
- tree list -
diff --git a/src/app/sections/organization/components/tree-list.section.component.ts b/src/app/sections/organization/components/tree-list.section.component.ts deleted file mode 100644 index 1177582..0000000 --- a/src/app/sections/organization/components/tree-list.section.component.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Subscription } from 'rxjs'; -import { take, filter } from 'rxjs/operators'; - -import { Component, OnInit, OnDestroy, Input, ViewChild } from '@angular/core'; - -import { LogService } from '@ucap/ng-logger'; - -@Component({ - selector: 'app-sections-organization-tree-list', - templateUrl: './tree-list.section.component.html', - styleUrls: ['./tree-list.section.component.scss'] -}) -export class TreeListSectionComponent implements OnInit, OnDestroy { - constructor(private logService: LogService) {} - - ngOnInit(): void {} - - ngOnDestroy(): void {} -} diff --git a/src/app/sections/organization/organization.section.module.ts b/src/app/sections/organization/organization.section.module.ts deleted file mode 100644 index 2b67a39..0000000 --- a/src/app/sections/organization/organization.section.module.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; - -import { FlexLayoutModule } from '@angular/flex-layout'; - -import { MatCheckboxModule } from '@angular/material/checkbox'; - -import { I18nModule, UCAP_I18N_NAMESPACE } from '@ucap/ng-i18n'; - -import { AuthenticationUiModule } from '@ucap/ng-ui-authentication'; - -import { MembersSectionComponent } from './components/members.section.component'; -import { TreeListSectionComponent } from './components/tree-list.section.component'; - -const COMPONENTS = [MembersSectionComponent, TreeListSectionComponent]; - -export { MembersSectionComponent, TreeListSectionComponent }; - -@NgModule({ - imports: [ - CommonModule, - FlexLayoutModule, - MatCheckboxModule, - I18nModule, - AuthenticationUiModule - ], - exports: [...COMPONENTS], - declarations: [...COMPONENTS], - entryComponents: [], - providers: [ - { - provide: UCAP_I18N_NAMESPACE, - useValue: ['organization'] - } - ] -}) -export class AppOrganizationSectionModule {} diff --git a/src/app/types/tokens.ts b/src/app/types/tokens.ts new file mode 100644 index 0000000..ee27c47 --- /dev/null +++ b/src/app/types/tokens.ts @@ -0,0 +1,5 @@ +import { InjectionToken } from '@angular/core'; + +export const UCAP_PATH_PARAM = new InjectionToken( + '@ucap/app PATH_PARAM' +); diff --git a/src/environments/environment.hmr.ts b/src/environments/environment.hmr.ts index c1591cc..7cc0e71 100644 --- a/src/environments/environment.hmr.ts +++ b/src/environments/environment.hmr.ts @@ -178,6 +178,6 @@ export const environment: Environment = { }, pingProtocolModuleConfig: { statusCode: 'O', - interval: 5 + interval: 20 } };