cedd07d39a533250e99a75162b47d2f5e03daa99
[oweals/peertube.git] / client / src / app / +video-channels / video-channels-routing.module.ts
1 import { NgModule } from '@angular/core'
2 import { RouterModule, Routes } from '@angular/router'
3 import { MetaGuard } from '@ngx-meta/core'
4 import { VideoChannelsComponent } from './video-channels.component'
5 import { VideoChannelVideosComponent } from './video-channel-videos/video-channel-videos.component'
6 import { VideoChannelAboutComponent } from './video-channel-about/video-channel-about.component'
7 import { VideoChannelPlaylistsComponent } from '@app/+video-channels/video-channel-playlists/video-channel-playlists.component'
8
9 const videoChannelsRoutes: Routes = [
10   {
11     path: ':videoChannelName',
12     component: VideoChannelsComponent,
13     canActivateChild: [ MetaGuard ],
14     children: [
15       {
16         path: '',
17         redirectTo: 'videos',
18         pathMatch: 'full'
19       },
20       {
21         path: 'videos',
22         component: VideoChannelVideosComponent,
23         data: {
24           meta: {
25             title: 'Video channel videos'
26           }
27         }
28       },
29       {
30         path: 'video-playlists',
31         component: VideoChannelPlaylistsComponent,
32         data: {
33           meta: {
34             title: 'Video channel playlists'
35           }
36         }
37       },
38       {
39         path: 'about',
40         component: VideoChannelAboutComponent,
41         data: {
42           meta: {
43             title: 'About video channel'
44           }
45         }
46       }
47     ]
48   }
49 ]
50
51 @NgModule({
52   imports: [ RouterModule.forChild(videoChannelsRoutes) ],
53   exports: [ RouterModule ]
54 })
55 export class VideoChannelsRoutingModule {}