]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/app/+videos/videos-routing.module.ts
Fix autoblock message on upload page
[github/Chocobozzz/PeerTube.git] / client / src / app / +videos / videos-routing.module.ts
CommitLineData
df98563e 1import { NgModule } from '@angular/core'
dd24f1bb 2import { RouterModule, Routes, UrlSegment } from '@angular/router'
ba5d4a84 3import { LoginGuard } from '@app/core'
dd24f1bb 4import { VideosListCommonPageComponent } from './video-list'
1942f11d 5import { VideoOverviewComponent } from './video-list/overview/video-overview.component'
67ed6552 6import { VideoUserSubscriptionsComponent } from './video-list/video-user-subscriptions.component'
1942f11d 7import { VideosComponent } from './videos.component'
0629423c 8
693b1aba 9const videosRoutes: Routes = [
0629423c 10 {
1942f11d 11 path: '',
0629423c
C
12 component: VideosComponent,
13 children: [
2d3741d6
C
14 {
15 path: 'overview',
16 component: VideoOverviewComponent,
17 data: {
18 meta: {
f29f487e 19 title: $localize`Discover videos`
2d3741d6
C
20 }
21 }
22 },
dd24f1bb 23
0629423c 24 {
dd24f1bb 25 // Old URL redirection
c07eb946 26 path: 'most-liked',
dd24f1bb 27 redirectTo: 'trending?sort=most-liked'
c07eb946 28 },
9bf9d2a5 29 {
dd24f1bb
C
30 matcher: (url: UrlSegment[]) => {
31 if (url.length === 1 && [ 'recently-added', 'trending', 'local' ].includes(url[0].path)) {
32 return {
33 consumed: url,
34 posParams: {
35 page: new UrlSegment(url[0].path, {})
36 }
37 }
38 }
39
40 return null
41 },
42
43 component: VideosListCommonPageComponent,
b58c69a1 44 data: {
489290b8
C
45 reuse: {
46 enabled: true,
dd24f1bb 47 key: 'videos-list'
b58c69a1
C
48 }
49 }
0629423c 50 },
dd24f1bb 51
066e94c5 52 {
22a16e36 53 path: 'subscriptions',
b2dd58a8 54 canActivate: [ LoginGuard ],
22a16e36
C
55 component: VideoUserSubscriptionsComponent,
56 data: {
57 meta: {
f29f487e 58 title: $localize`Subscriptions`
489290b8
C
59 },
60 reuse: {
61 enabled: true,
62 key: 'subscription-videos-list'
22a16e36
C
63 }
64 }
0629423c
C
65 }
66 ]
67 }
df98563e 68]
693b1aba
C
69
70@NgModule({
71 imports: [ RouterModule.forChild(videosRoutes) ],
72 exports: [ RouterModule ]
73})
74export class VideosRoutingModule {}