aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/app
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/app')
-rw-r--r--client/src/app/+about/about-instance/about-instance.component.ts2
-rw-r--r--client/src/app/+about/about-instance/contact-admin-modal.component.ts2
-rw-r--r--client/src/app/+admin/moderation/video-abuse-list/moderation-comment-modal.component.ts2
-rw-r--r--client/src/app/+admin/moderation/video-abuse-list/video-abuse-list.component.ts2
-rw-r--r--client/src/app/+admin/system/logs/logs.component.ts2
-rw-r--r--client/src/app/+admin/users/user-list/user-list.component.ts2
-rw-r--r--client/src/app/+my-account/my-account-notifications/my-account-notifications.component.ts2
-rw-r--r--client/src/app/+my-account/my-account-ownership/my-account-accept-ownership/my-account-accept-ownership.component.ts2
-rw-r--r--client/src/app/+my-account/my-account-ownership/my-account-ownership.component.ts2
-rw-r--r--client/src/app/+my-account/my-account-videos/my-account-videos.component.ts4
-rw-r--r--client/src/app/+my-account/my-account-videos/video-change-ownership/video-change-ownership.component.ts2
-rw-r--r--client/src/app/+my-account/shared/actor-avatar-info.component.ts2
-rw-r--r--client/src/app/+video-channels/video-channels.component.ts2
-rw-r--r--client/src/app/app-routing.module.ts16
-rw-r--r--client/src/app/login/login.component.ts4
-rw-r--r--client/src/app/menu/avatar-notification.component.ts2
-rw-r--r--client/src/app/menu/language-chooser.component.ts2
-rw-r--r--client/src/app/menu/menu.component.ts2
-rw-r--r--client/src/app/shared/confirm/confirm.component.ts2
-rw-r--r--client/src/app/shared/moderation/user-ban-modal.component.ts2
-rw-r--r--client/src/app/shared/moderation/user-moderation-dropdown.component.ts2
-rw-r--r--client/src/app/shared/video-playlist/video-playlist-element-miniature.component.ts2
-rw-r--r--client/src/app/shared/video/modals/video-blacklist.component.ts2
-rw-r--r--client/src/app/shared/video/modals/video-download.component.ts2
-rw-r--r--client/src/app/shared/video/modals/video-report.component.ts2
-rw-r--r--client/src/app/shared/video/video-actions-dropdown.component.ts10
-rw-r--r--client/src/app/videos/+video-edit/shared/video-caption-add-modal.component.ts2
-rw-r--r--client/src/app/videos/+video-edit/shared/video-edit.component.ts2
-rw-r--r--client/src/app/videos/+video-edit/video-add-components/video-import-torrent.component.ts2
-rw-r--r--client/src/app/videos/+video-edit/video-add-components/video-upload.component.ts2
-rw-r--r--client/src/app/videos/+video-edit/video-add.component.ts6
-rw-r--r--client/src/app/videos/+video-watch/comment/video-comment-add.component.ts4
-rw-r--r--client/src/app/videos/+video-watch/comment/video-comments.component.ts2
-rw-r--r--client/src/app/videos/+video-watch/modal/video-share.component.html2
-rw-r--r--client/src/app/videos/+video-watch/modal/video-share.component.ts2
-rw-r--r--client/src/app/videos/+video-watch/modal/video-support.component.ts2
-rw-r--r--client/src/app/videos/+video-watch/video-watch.component.ts8
-rw-r--r--client/src/app/videos/+video-watch/video-watch.module.ts4
-rw-r--r--client/src/app/videos/videos-routing.module.ts6
39 files changed, 61 insertions, 61 deletions
diff --git a/client/src/app/+about/about-instance/about-instance.component.ts b/client/src/app/+about/about-instance/about-instance.component.ts
index 4a63f5e38..a5204de27 100644
--- a/client/src/app/+about/about-instance/about-instance.component.ts
+++ b/client/src/app/+about/about-instance/about-instance.component.ts
@@ -11,7 +11,7 @@ import { MarkdownService } from '@app/shared/renderer'
11 styleUrls: [ './about-instance.component.scss' ] 11 styleUrls: [ './about-instance.component.scss' ]
12}) 12})
13export class AboutInstanceComponent implements OnInit { 13export class AboutInstanceComponent implements OnInit {
14 @ViewChild('contactAdminModal') contactAdminModal: ContactAdminModalComponent 14 @ViewChild('contactAdminModal', { static: true }) contactAdminModal: ContactAdminModalComponent
15 15
16 shortDescription = '' 16 shortDescription = ''
17 descriptionHTML = '' 17 descriptionHTML = ''
diff --git a/client/src/app/+about/about-instance/contact-admin-modal.component.ts b/client/src/app/+about/about-instance/contact-admin-modal.component.ts
index c609c98c3..878d49b55 100644
--- a/client/src/app/+about/about-instance/contact-admin-modal.component.ts
+++ b/client/src/app/+about/about-instance/contact-admin-modal.component.ts
@@ -13,7 +13,7 @@ import { InstanceService } from '@app/shared/instance/instance.service'
13 styleUrls: [ './contact-admin-modal.component.scss' ] 13 styleUrls: [ './contact-admin-modal.component.scss' ]
14}) 14})
15export class ContactAdminModalComponent extends FormReactive implements OnInit { 15export class ContactAdminModalComponent extends FormReactive implements OnInit {
16 @ViewChild('modal') modal: NgbModal 16 @ViewChild('modal', { static: true }) modal: NgbModal
17 17
18 error: string 18 error: string
19 19
diff --git a/client/src/app/+admin/moderation/video-abuse-list/moderation-comment-modal.component.ts b/client/src/app/+admin/moderation/video-abuse-list/moderation-comment-modal.component.ts
index f915978ee..f8a5ef8cb 100644
--- a/client/src/app/+admin/moderation/video-abuse-list/moderation-comment-modal.component.ts
+++ b/client/src/app/+admin/moderation/video-abuse-list/moderation-comment-modal.component.ts
@@ -13,7 +13,7 @@ import { VideoAbuse } from '../../../../../../shared/models/videos'
13 styleUrls: [ './moderation-comment-modal.component.scss' ] 13 styleUrls: [ './moderation-comment-modal.component.scss' ]
14}) 14})
15export class ModerationCommentModalComponent extends FormReactive implements OnInit { 15export class ModerationCommentModalComponent extends FormReactive implements OnInit {
16 @ViewChild('modal') modal: NgbModal 16 @ViewChild('modal', { static: true }) modal: NgbModal
17 @Output() commentUpdated = new EventEmitter<string>() 17 @Output() commentUpdated = new EventEmitter<string>()
18 18
19 private abuseToComment: VideoAbuse 19 private abuseToComment: VideoAbuse
diff --git a/client/src/app/+admin/moderation/video-abuse-list/video-abuse-list.component.ts b/client/src/app/+admin/moderation/video-abuse-list/video-abuse-list.component.ts
index 3aa875668..778f18d3d 100644
--- a/client/src/app/+admin/moderation/video-abuse-list/video-abuse-list.component.ts
+++ b/client/src/app/+admin/moderation/video-abuse-list/video-abuse-list.component.ts
@@ -17,7 +17,7 @@ import { MarkdownService } from '@app/shared/renderer'
17 styleUrls: [ '../moderation.component.scss'] 17 styleUrls: [ '../moderation.component.scss']
18}) 18})
19export class VideoAbuseListComponent extends RestTable implements OnInit { 19export class VideoAbuseListComponent extends RestTable implements OnInit {
20 @ViewChild('moderationCommentModal') moderationCommentModal: ModerationCommentModalComponent 20 @ViewChild('moderationCommentModal', { static: true }) moderationCommentModal: ModerationCommentModalComponent
21 21
22 videoAbuses: (VideoAbuse & { moderationCommentHtml?: string, reasonHtml?: string })[] = [] 22 videoAbuses: (VideoAbuse & { moderationCommentHtml?: string, reasonHtml?: string })[] = []
23 totalRecords = 0 23 totalRecords = 0
diff --git a/client/src/app/+admin/system/logs/logs.component.ts b/client/src/app/+admin/system/logs/logs.component.ts
index 1a3508a3b..b2aca8461 100644
--- a/client/src/app/+admin/system/logs/logs.component.ts
+++ b/client/src/app/+admin/system/logs/logs.component.ts
@@ -10,7 +10,7 @@ import { LogLevel } from '@shared/models/server/log-level.type'
10 styleUrls: [ './logs.component.scss' ] 10 styleUrls: [ './logs.component.scss' ]
11}) 11})
12export class LogsComponent implements OnInit { 12export class LogsComponent implements OnInit {
13 @ViewChild('logsElement') logsElement: ElementRef<HTMLElement> 13 @ViewChild('logsElement', { static: true }) logsElement: ElementRef<HTMLElement>
14 14
15 loading = false 15 loading = false
16 16
diff --git a/client/src/app/+admin/users/user-list/user-list.component.ts b/client/src/app/+admin/users/user-list/user-list.component.ts
index 66ab796f9..c9c790689 100644
--- a/client/src/app/+admin/users/user-list/user-list.component.ts
+++ b/client/src/app/+admin/users/user-list/user-list.component.ts
@@ -14,7 +14,7 @@ import { DropdownAction } from '@app/shared/buttons/action-dropdown.component'
14 styleUrls: [ './user-list.component.scss' ] 14 styleUrls: [ './user-list.component.scss' ]
15}) 15})
16export class UserListComponent extends RestTable implements OnInit { 16export class UserListComponent extends RestTable implements OnInit {
17 @ViewChild('userBanModal') userBanModal: UserBanModalComponent 17 @ViewChild('userBanModal', { static: true }) userBanModal: UserBanModalComponent
18 18
19 users: User[] = [] 19 users: User[] = []
20 totalRecords = 0 20 totalRecords = 0
diff --git a/client/src/app/+my-account/my-account-notifications/my-account-notifications.component.ts b/client/src/app/+my-account/my-account-notifications/my-account-notifications.component.ts
index 3e197088d..9eca13d0f 100644
--- a/client/src/app/+my-account/my-account-notifications/my-account-notifications.component.ts
+++ b/client/src/app/+my-account/my-account-notifications/my-account-notifications.component.ts
@@ -6,7 +6,7 @@ import { UserNotificationsComponent } from '@app/shared'
6 styleUrls: [ './my-account-notifications.component.scss' ] 6 styleUrls: [ './my-account-notifications.component.scss' ]
7}) 7})
8export class MyAccountNotificationsComponent { 8export class MyAccountNotificationsComponent {
9 @ViewChild('userNotification') userNotification: UserNotificationsComponent 9 @ViewChild('userNotification', { static: true }) userNotification: UserNotificationsComponent
10 10
11 markAllAsRead () { 11 markAllAsRead () {
12 this.userNotification.markAllAsRead() 12 this.userNotification.markAllAsRead()
diff --git a/client/src/app/+my-account/my-account-ownership/my-account-accept-ownership/my-account-accept-ownership.component.ts b/client/src/app/+my-account/my-account-ownership/my-account-accept-ownership/my-account-accept-ownership.component.ts
index 79d29b139..6df929ec9 100644
--- a/client/src/app/+my-account/my-account-ownership/my-account-accept-ownership/my-account-accept-ownership.component.ts
+++ b/client/src/app/+my-account/my-account-ownership/my-account-accept-ownership/my-account-accept-ownership.component.ts
@@ -18,7 +18,7 @@ import { NgbModal } from '@ng-bootstrap/ng-bootstrap'
18export class MyAccountAcceptOwnershipComponent extends FormReactive implements OnInit { 18export class MyAccountAcceptOwnershipComponent extends FormReactive implements OnInit {
19 @Output() accepted = new EventEmitter<void>() 19 @Output() accepted = new EventEmitter<void>()
20 20
21 @ViewChild('modal') modal: ElementRef 21 @ViewChild('modal', { static: true }) modal: ElementRef
22 22
23 videoChangeOwnership: VideoChangeOwnership | undefined = undefined 23 videoChangeOwnership: VideoChangeOwnership | undefined = undefined
24 24
diff --git a/client/src/app/+my-account/my-account-ownership/my-account-ownership.component.ts b/client/src/app/+my-account/my-account-ownership/my-account-ownership.component.ts
index 77857c4fd..aeeb0e5a7 100644
--- a/client/src/app/+my-account/my-account-ownership/my-account-ownership.component.ts
+++ b/client/src/app/+my-account/my-account-ownership/my-account-ownership.component.ts
@@ -18,7 +18,7 @@ export class MyAccountOwnershipComponent extends RestTable implements OnInit {
18 sort: SortMeta = { field: 'createdAt', order: -1 } 18 sort: SortMeta = { field: 'createdAt', order: -1 }
19 pagination: RestPagination = { count: this.rowsPerPage, start: 0 } 19 pagination: RestPagination = { count: this.rowsPerPage, start: 0 }
20 20
21 @ViewChild('myAccountAcceptOwnershipComponent') myAccountAcceptOwnershipComponent: MyAccountAcceptOwnershipComponent 21 @ViewChild('myAccountAcceptOwnershipComponent', { static: true }) myAccountAcceptOwnershipComponent: MyAccountAcceptOwnershipComponent
22 22
23 constructor ( 23 constructor (
24 private notifier: Notifier, 24 private notifier: Notifier,
diff --git a/client/src/app/+my-account/my-account-videos/my-account-videos.component.ts b/client/src/app/+my-account/my-account-videos/my-account-videos.component.ts
index 5f29364a8..2c86a3c56 100644
--- a/client/src/app/+my-account/my-account-videos/my-account-videos.component.ts
+++ b/client/src/app/+my-account/my-account-videos/my-account-videos.component.ts
@@ -23,8 +23,8 @@ import { DisableForReuseHook } from '@app/core/routing/disable-for-reuse-hook'
23 styleUrls: [ './my-account-videos.component.scss' ] 23 styleUrls: [ './my-account-videos.component.scss' ]
24}) 24})
25export class MyAccountVideosComponent implements DisableForReuseHook { 25export class MyAccountVideosComponent implements DisableForReuseHook {
26 @ViewChild('videosSelection') videosSelection: VideosSelectionComponent 26 @ViewChild('videosSelection', { static: true }) videosSelection: VideosSelectionComponent
27 @ViewChild('videoChangeOwnershipModal') videoChangeOwnershipModal: VideoChangeOwnershipComponent 27 @ViewChild('videoChangeOwnershipModal', { static: true }) videoChangeOwnershipModal: VideoChangeOwnershipComponent
28 28
29 titlePage: string 29 titlePage: string
30 selection: SelectionType = {} 30 selection: SelectionType = {}
diff --git a/client/src/app/+my-account/my-account-videos/video-change-ownership/video-change-ownership.component.ts b/client/src/app/+my-account/my-account-videos/video-change-ownership/video-change-ownership.component.ts
index 37d7cf2a4..36d1ea091 100644
--- a/client/src/app/+my-account/my-account-videos/video-change-ownership/video-change-ownership.component.ts
+++ b/client/src/app/+my-account/my-account-videos/video-change-ownership/video-change-ownership.component.ts
@@ -13,7 +13,7 @@ import { VideoOwnershipService } from '@app/shared/video-ownership'
13 styleUrls: [ './video-change-ownership.component.scss' ] 13 styleUrls: [ './video-change-ownership.component.scss' ]
14}) 14})
15export class VideoChangeOwnershipComponent extends FormReactive implements OnInit { 15export class VideoChangeOwnershipComponent extends FormReactive implements OnInit {
16 @ViewChild('modal') modal: ElementRef 16 @ViewChild('modal', { static: true }) modal: ElementRef
17 17
18 usernamePropositions: string[] 18 usernamePropositions: string[]
19 19
diff --git a/client/src/app/+my-account/shared/actor-avatar-info.component.ts b/client/src/app/+my-account/shared/actor-avatar-info.component.ts
index 72c815a0c..0289a66c3 100644
--- a/client/src/app/+my-account/shared/actor-avatar-info.component.ts
+++ b/client/src/app/+my-account/shared/actor-avatar-info.component.ts
@@ -10,7 +10,7 @@ import { Notifier } from '@app/core'
10 styleUrls: [ './actor-avatar-info.component.scss' ] 10 styleUrls: [ './actor-avatar-info.component.scss' ]
11}) 11})
12export class ActorAvatarInfoComponent { 12export class ActorAvatarInfoComponent {
13 @ViewChild('avatarfileInput') avatarfileInput: ElementRef<HTMLInputElement> 13 @ViewChild('avatarfileInput', { static: false }) avatarfileInput: ElementRef<HTMLInputElement>
14 14
15 @Input() actor: VideoChannel | Account 15 @Input() actor: VideoChannel | Account
16 16
diff --git a/client/src/app/+video-channels/video-channels.component.ts b/client/src/app/+video-channels/video-channels.component.ts
index 41ff82e98..d2975b67c 100644
--- a/client/src/app/+video-channels/video-channels.component.ts
+++ b/client/src/app/+video-channels/video-channels.component.ts
@@ -15,7 +15,7 @@ import { I18n } from '@ngx-translate/i18n-polyfill'
15 styleUrls: [ './video-channels.component.scss' ] 15 styleUrls: [ './video-channels.component.scss' ]
16}) 16})
17export class VideoChannelsComponent implements OnInit, OnDestroy { 17export class VideoChannelsComponent implements OnInit, OnDestroy {
18 @ViewChild('subscribeButton') subscribeButton: SubscribeButtonComponent 18 @ViewChild('subscribeButton', { static: false }) subscribeButton: SubscribeButtonComponent
19 19
20 videoChannel: VideoChannel 20 videoChannel: VideoChannel
21 hotkeys: Hotkey[] 21 hotkeys: Hotkey[]
diff --git a/client/src/app/app-routing.module.ts b/client/src/app/app-routing.module.ts
index 7ca51f226..b5a677d15 100644
--- a/client/src/app/app-routing.module.ts
+++ b/client/src/app/app-routing.module.ts
@@ -8,31 +8,31 @@ import { CustomReuseStrategy } from '@app/core/routing/custom-reuse-strategy'
8const routes: Routes = [ 8const routes: Routes = [
9 { 9 {
10 path: 'admin', 10 path: 'admin',
11 loadChildren: './+admin/admin.module#AdminModule' 11 loadChildren: () => import('./+admin/admin.module').then(m => m.AdminModule)
12 }, 12 },
13 { 13 {
14 path: 'my-account', 14 path: 'my-account',
15 loadChildren: './+my-account/my-account.module#MyAccountModule' 15 loadChildren: () => import('./+my-account/my-account.module').then(m => m.MyAccountModule)
16 }, 16 },
17 { 17 {
18 path: 'verify-account', 18 path: 'verify-account',
19 loadChildren: './+signup/+verify-account/verify-account.module#VerifyAccountModule' 19 loadChildren: () => import('./+signup/+verify-account/verify-account.module').then(m => m.VerifyAccountModule)
20 }, 20 },
21 { 21 {
22 path: 'accounts', 22 path: 'accounts',
23 loadChildren: './+accounts/accounts.module#AccountsModule' 23 loadChildren: () => import('./+accounts/accounts.module').then(m => m.AccountsModule)
24 }, 24 },
25 { 25 {
26 path: 'video-channels', 26 path: 'video-channels',
27 loadChildren: './+video-channels/video-channels.module#VideoChannelsModule' 27 loadChildren: () => import('./+video-channels/video-channels.module').then(m => m.VideoChannelsModule)
28 }, 28 },
29 { 29 {
30 path: 'about', 30 path: 'about',
31 loadChildren: './+about/about.module#AboutModule' 31 loadChildren: () => import('./+about/about.module').then(m => m.AboutModule)
32 }, 32 },
33 { 33 {
34 path: 'signup', 34 path: 'signup',
35 loadChildren: './+signup/+register/register.module#RegisterModule' 35 loadChildren: () => import('./+signup/+register/register.module').then(m => m.RegisterModule)
36 }, 36 },
37 { 37 {
38 path: '', 38 path: '',
@@ -40,7 +40,7 @@ const routes: Routes = [
40 }, 40 },
41 { 41 {
42 path: '**', 42 path: '**',
43 loadChildren: './+page-not-found/page-not-found.module#PageNotFoundModule' 43 loadChildren: () => import('./+page-not-found/page-not-found.module').then(m => m.PageNotFoundModule)
44 } 44 }
45] 45]
46 46
diff --git a/client/src/app/login/login.component.ts b/client/src/app/login/login.component.ts
index fc2442c0e..12c631107 100644
--- a/client/src/app/login/login.component.ts
+++ b/client/src/app/login/login.component.ts
@@ -16,8 +16,8 @@ import { Router } from '@angular/router'
16}) 16})
17 17
18export class LoginComponent extends FormReactive implements OnInit { 18export class LoginComponent extends FormReactive implements OnInit {
19 @ViewChild('emailInput') input: ElementRef 19 @ViewChild('emailInput', { static: true }) input: ElementRef
20 @ViewChild('forgotPasswordModal') forgotPasswordModal: ElementRef 20 @ViewChild('forgotPasswordModal', { static: true }) forgotPasswordModal: ElementRef
21 21
22 error: string = null 22 error: string = null
23 forgotPasswordEmail = '' 23 forgotPasswordEmail = ''
diff --git a/client/src/app/menu/avatar-notification.component.ts b/client/src/app/menu/avatar-notification.component.ts
index a77a001ca..38dbb935b 100644
--- a/client/src/app/menu/avatar-notification.component.ts
+++ b/client/src/app/menu/avatar-notification.component.ts
@@ -13,7 +13,7 @@ import { filter } from 'rxjs/operators'
13 styleUrls: [ './avatar-notification.component.scss' ] 13 styleUrls: [ './avatar-notification.component.scss' ]
14}) 14})
15export class AvatarNotificationComponent implements OnInit, OnDestroy { 15export class AvatarNotificationComponent implements OnInit, OnDestroy {
16 @ViewChild('popover') popover: NgbPopover 16 @ViewChild('popover', { static: true }) popover: NgbPopover
17 @Input() user: User 17 @Input() user: User
18 18
19 unreadNotifications = 0 19 unreadNotifications = 0
diff --git a/client/src/app/menu/language-chooser.component.ts b/client/src/app/menu/language-chooser.component.ts
index 8eb84673e..4a6e4c75a 100644
--- a/client/src/app/menu/language-chooser.component.ts
+++ b/client/src/app/menu/language-chooser.component.ts
@@ -9,7 +9,7 @@ import { sortBy } from '@app/shared/misc/utils'
9 styleUrls: [ './language-chooser.component.scss' ] 9 styleUrls: [ './language-chooser.component.scss' ]
10}) 10})
11export class LanguageChooserComponent { 11export class LanguageChooserComponent {
12 @ViewChild('modal') modal: ElementRef 12 @ViewChild('modal', { static: true }) modal: ElementRef
13 13
14 languages: { id: string, label: string }[] = [] 14 languages: { id: string, label: string }[] = []
15 15
diff --git a/client/src/app/menu/menu.component.ts b/client/src/app/menu/menu.component.ts
index ede64b7eb..c7c31577a 100644
--- a/client/src/app/menu/menu.component.ts
+++ b/client/src/app/menu/menu.component.ts
@@ -11,7 +11,7 @@ import { HotkeysService } from 'angular2-hotkeys'
11 styleUrls: [ './menu.component.scss' ] 11 styleUrls: [ './menu.component.scss' ]
12}) 12})
13export class MenuComponent implements OnInit { 13export class MenuComponent implements OnInit {
14 @ViewChild('languageChooserModal') languageChooserModal: LanguageChooserComponent 14 @ViewChild('languageChooserModal', { static: true }) languageChooserModal: LanguageChooserComponent
15 15
16 user: User 16 user: User
17 isLoggedIn: boolean 17 isLoggedIn: boolean
diff --git a/client/src/app/shared/confirm/confirm.component.ts b/client/src/app/shared/confirm/confirm.component.ts
index 63c163da6..53aed14d7 100644
--- a/client/src/app/shared/confirm/confirm.component.ts
+++ b/client/src/app/shared/confirm/confirm.component.ts
@@ -10,7 +10,7 @@ import { NgbModalRef } from '@ng-bootstrap/ng-bootstrap/modal/modal-ref'
10 styleUrls: [ './confirm.component.scss' ] 10 styleUrls: [ './confirm.component.scss' ]
11}) 11})
12export class ConfirmComponent implements OnInit { 12export class ConfirmComponent implements OnInit {
13 @ViewChild('confirmModal') confirmModal: ElementRef 13 @ViewChild('confirmModal', { static: true }) confirmModal: ElementRef
14 14
15 title = '' 15 title = ''
16 message = '' 16 message = ''
diff --git a/client/src/app/shared/moderation/user-ban-modal.component.ts b/client/src/app/shared/moderation/user-ban-modal.component.ts
index 942765301..cf0e1577a 100644
--- a/client/src/app/shared/moderation/user-ban-modal.component.ts
+++ b/client/src/app/shared/moderation/user-ban-modal.component.ts
@@ -14,7 +14,7 @@ import { User } from '../../../../../shared'
14 styleUrls: [ './user-ban-modal.component.scss' ] 14 styleUrls: [ './user-ban-modal.component.scss' ]
15}) 15})
16export class UserBanModalComponent extends FormReactive implements OnInit { 16export class UserBanModalComponent extends FormReactive implements OnInit {
17 @ViewChild('modal') modal: NgbModal 17 @ViewChild('modal', { static: true }) modal: NgbModal
18 @Output() userBanned = new EventEmitter<User | User[]>() 18 @Output() userBanned = new EventEmitter<User | User[]>()
19 19
20 private usersToBan: User | User[] 20 private usersToBan: User | User[]
diff --git a/client/src/app/shared/moderation/user-moderation-dropdown.component.ts b/client/src/app/shared/moderation/user-moderation-dropdown.component.ts
index 9dd16812b..24f717821 100644
--- a/client/src/app/shared/moderation/user-moderation-dropdown.component.ts
+++ b/client/src/app/shared/moderation/user-moderation-dropdown.component.ts
@@ -13,7 +13,7 @@ import { BlocklistService } from '@app/shared/blocklist'
13 templateUrl: './user-moderation-dropdown.component.html' 13 templateUrl: './user-moderation-dropdown.component.html'
14}) 14})
15export class UserModerationDropdownComponent implements OnChanges { 15export class UserModerationDropdownComponent implements OnChanges {
16 @ViewChild('userBanModal') userBanModal: UserBanModalComponent 16 @ViewChild('userBanModal', { static: false }) userBanModal: UserBanModalComponent
17 17
18 @Input() user: User 18 @Input() user: User
19 @Input() account: Account 19 @Input() account: Account
diff --git a/client/src/app/shared/video-playlist/video-playlist-element-miniature.component.ts b/client/src/app/shared/video-playlist/video-playlist-element-miniature.component.ts
index 57990707a..62cf6536d 100644
--- a/client/src/app/shared/video-playlist/video-playlist-element-miniature.component.ts
+++ b/client/src/app/shared/video-playlist/video-playlist-element-miniature.component.ts
@@ -17,7 +17,7 @@ import { secondsToTime } from '../../../assets/player/utils'
17 changeDetection: ChangeDetectionStrategy.OnPush 17 changeDetection: ChangeDetectionStrategy.OnPush
18}) 18})
19export class VideoPlaylistElementMiniatureComponent { 19export class VideoPlaylistElementMiniatureComponent {
20 @ViewChild('moreDropdown') moreDropdown: NgbDropdown 20 @ViewChild('moreDropdown', { static: false }) moreDropdown: NgbDropdown
21 21
22 @Input() playlist: VideoPlaylist 22 @Input() playlist: VideoPlaylist
23 @Input() video: Video 23 @Input() video: Video
diff --git a/client/src/app/shared/video/modals/video-blacklist.component.ts b/client/src/app/shared/video/modals/video-blacklist.component.ts
index 4e4e8dc50..f0c70a365 100644
--- a/client/src/app/shared/video/modals/video-blacklist.component.ts
+++ b/client/src/app/shared/video/modals/video-blacklist.component.ts
@@ -16,7 +16,7 @@ import { FormReactive, VideoBlacklistValidatorsService } from '@app/shared/forms
16export class VideoBlacklistComponent extends FormReactive implements OnInit { 16export class VideoBlacklistComponent extends FormReactive implements OnInit {
17 @Input() video: VideoDetails = null 17 @Input() video: VideoDetails = null
18 18
19 @ViewChild('modal') modal: NgbModal 19 @ViewChild('modal', { static: true }) modal: NgbModal
20 20
21 @Output() videoBlacklisted = new EventEmitter() 21 @Output() videoBlacklisted = new EventEmitter()
22 22
diff --git a/client/src/app/shared/video/modals/video-download.component.ts b/client/src/app/shared/video/modals/video-download.component.ts
index 16f3621b4..4022a11e8 100644
--- a/client/src/app/shared/video/modals/video-download.component.ts
+++ b/client/src/app/shared/video/modals/video-download.component.ts
@@ -10,7 +10,7 @@ import { Notifier } from '@app/core'
10 styleUrls: [ './video-download.component.scss' ] 10 styleUrls: [ './video-download.component.scss' ]
11}) 11})
12export class VideoDownloadComponent { 12export class VideoDownloadComponent {
13 @ViewChild('modal') modal: ElementRef 13 @ViewChild('modal', { static: true }) modal: ElementRef
14 14
15 downloadType: 'direct' | 'torrent' = 'torrent' 15 downloadType: 'direct' | 'torrent' = 'torrent'
16 resolutionId: number | string = -1 16 resolutionId: number | string = -1
diff --git a/client/src/app/shared/video/modals/video-report.component.ts b/client/src/app/shared/video/modals/video-report.component.ts
index 725dd020f..1d368ff17 100644
--- a/client/src/app/shared/video/modals/video-report.component.ts
+++ b/client/src/app/shared/video/modals/video-report.component.ts
@@ -17,7 +17,7 @@ import { VideoAbuseService } from '@app/shared/video-abuse'
17export class VideoReportComponent extends FormReactive implements OnInit { 17export class VideoReportComponent extends FormReactive implements OnInit {
18 @Input() video: VideoDetails = null 18 @Input() video: VideoDetails = null
19 19
20 @ViewChild('modal') modal: NgbModal 20 @ViewChild('modal', { static: true }) modal: NgbModal
21 21
22 error: string = null 22 error: string = null
23 23
diff --git a/client/src/app/shared/video/video-actions-dropdown.component.ts b/client/src/app/shared/video/video-actions-dropdown.component.ts
index 8d4e33697..7f3e25d0a 100644
--- a/client/src/app/shared/video/video-actions-dropdown.component.ts
+++ b/client/src/app/shared/video/video-actions-dropdown.component.ts
@@ -29,12 +29,12 @@ export type VideoActionsDisplayType = {
29 styleUrls: [ './video-actions-dropdown.component.scss' ] 29 styleUrls: [ './video-actions-dropdown.component.scss' ]
30}) 30})
31export class VideoActionsDropdownComponent implements OnChanges { 31export class VideoActionsDropdownComponent implements OnChanges {
32 @ViewChild('playlistDropdown') playlistDropdown: NgbDropdown 32 @ViewChild('playlistDropdown', { static: false }) playlistDropdown: NgbDropdown
33 @ViewChild('playlistAdd') playlistAdd: VideoAddToPlaylistComponent 33 @ViewChild('playlistAdd', { static: false }) playlistAdd: VideoAddToPlaylistComponent
34 34
35 @ViewChild('videoDownloadModal') videoDownloadModal: VideoDownloadComponent 35 @ViewChild('videoDownloadModal', { static: false }) videoDownloadModal: VideoDownloadComponent
36 @ViewChild('videoReportModal') videoReportModal: VideoReportComponent 36 @ViewChild('videoReportModal', { static: false }) videoReportModal: VideoReportComponent
37 @ViewChild('videoBlacklistModal') videoBlacklistModal: VideoBlacklistComponent 37 @ViewChild('videoBlacklistModal', { static: false }) videoBlacklistModal: VideoBlacklistComponent
38 38
39 @Input() video: Video | VideoDetails 39 @Input() video: Video | VideoDetails
40 40
diff --git a/client/src/app/videos/+video-edit/shared/video-caption-add-modal.component.ts b/client/src/app/videos/+video-edit/shared/video-caption-add-modal.component.ts
index 1413e7262..86c6e03e7 100644
--- a/client/src/app/videos/+video-edit/shared/video-caption-add-modal.component.ts
+++ b/client/src/app/videos/+video-edit/shared/video-caption-add-modal.component.ts
@@ -18,7 +18,7 @@ export class VideoCaptionAddModalComponent extends FormReactive implements OnIni
18 18
19 @Output() captionAdded = new EventEmitter<VideoCaptionEdit>() 19 @Output() captionAdded = new EventEmitter<VideoCaptionEdit>()
20 20
21 @ViewChild('modal') modal: ElementRef 21 @ViewChild('modal', { static: true }) modal: ElementRef
22 22
23 videoCaptionLanguages: VideoConstant<string>[] = [] 23 videoCaptionLanguages: VideoConstant<string>[] = []
24 24
diff --git a/client/src/app/videos/+video-edit/shared/video-edit.component.ts b/client/src/app/videos/+video-edit/shared/video-edit.component.ts
index cea352bfb..d0d5e2a2b 100644
--- a/client/src/app/videos/+video-edit/shared/video-edit.component.ts
+++ b/client/src/app/videos/+video-edit/shared/video-edit.component.ts
@@ -29,7 +29,7 @@ export class VideoEditComponent implements OnInit, OnDestroy {
29 @Input() videoCaptions: (VideoCaptionEdit & { captionPath?: string })[] = [] 29 @Input() videoCaptions: (VideoCaptionEdit & { captionPath?: string })[] = []
30 @Input() waitTranscodingEnabled = true 30 @Input() waitTranscodingEnabled = true
31 31
32 @ViewChild('videoCaptionAddModal') videoCaptionAddModal: VideoCaptionAddModalComponent 32 @ViewChild('videoCaptionAddModal', { static: true }) videoCaptionAddModal: VideoCaptionAddModalComponent
33 33
34 // So that it can be accessed in the template 34 // So that it can be accessed in the template
35 readonly SPECIAL_SCHEDULED_PRIVACY = VideoEdit.SPECIAL_SCHEDULED_PRIVACY 35 readonly SPECIAL_SCHEDULED_PRIVACY = VideoEdit.SPECIAL_SCHEDULED_PRIVACY
diff --git a/client/src/app/videos/+video-edit/video-add-components/video-import-torrent.component.ts b/client/src/app/videos/+video-edit/video-add-components/video-import-torrent.component.ts
index e47624dd6..74e1e755b 100644
--- a/client/src/app/videos/+video-edit/video-add-components/video-import-torrent.component.ts
+++ b/client/src/app/videos/+video-edit/video-add-components/video-import-torrent.component.ts
@@ -25,7 +25,7 @@ import { scrollToTop } from '@app/shared/misc/utils'
25export class VideoImportTorrentComponent extends VideoSend implements OnInit, CanComponentDeactivate { 25export class VideoImportTorrentComponent extends VideoSend implements OnInit, CanComponentDeactivate {
26 @Output() firstStepDone = new EventEmitter<string>() 26 @Output() firstStepDone = new EventEmitter<string>()
27 @Output() firstStepError = new EventEmitter<void>() 27 @Output() firstStepError = new EventEmitter<void>()
28 @ViewChild('torrentfileInput') torrentfileInput: ElementRef<HTMLInputElement> 28 @ViewChild('torrentfileInput', { static: false }) torrentfileInput: ElementRef<HTMLInputElement>
29 29
30 magnetUri = '' 30 magnetUri = ''
31 31
diff --git a/client/src/app/videos/+video-edit/video-add-components/video-upload.component.ts b/client/src/app/videos/+video-edit/video-add-components/video-upload.component.ts
index 69fa13a2f..23b79edd3 100644
--- a/client/src/app/videos/+video-edit/video-add-components/video-upload.component.ts
+++ b/client/src/app/videos/+video-edit/video-add-components/video-upload.component.ts
@@ -27,7 +27,7 @@ import { scrollToTop } from '@app/shared/misc/utils'
27export class VideoUploadComponent extends VideoSend implements OnInit, OnDestroy, CanComponentDeactivate { 27export class VideoUploadComponent extends VideoSend implements OnInit, OnDestroy, CanComponentDeactivate {
28 @Output() firstStepDone = new EventEmitter<string>() 28 @Output() firstStepDone = new EventEmitter<string>()
29 @Output() firstStepError = new EventEmitter<void>() 29 @Output() firstStepError = new EventEmitter<void>()
30 @ViewChild('videofileInput') videofileInput: ElementRef<HTMLInputElement> 30 @ViewChild('videofileInput', { static: false }) videofileInput: ElementRef<HTMLInputElement>
31 31
32 // So that it can be accessed in the template 32 // So that it can be accessed in the template
33 readonly SPECIAL_SCHEDULED_PRIVACY = VideoEdit.SPECIAL_SCHEDULED_PRIVACY 33 readonly SPECIAL_SCHEDULED_PRIVACY = VideoEdit.SPECIAL_SCHEDULED_PRIVACY
diff --git a/client/src/app/videos/+video-edit/video-add.component.ts b/client/src/app/videos/+video-edit/video-add.component.ts
index 01fdfcb66..193de441d 100644
--- a/client/src/app/videos/+video-edit/video-add.component.ts
+++ b/client/src/app/videos/+video-edit/video-add.component.ts
@@ -11,9 +11,9 @@ import { VideoImportTorrentComponent } from '@app/videos/+video-edit/video-add-c
11 styleUrls: [ './video-add.component.scss' ] 11 styleUrls: [ './video-add.component.scss' ]
12}) 12})
13export class VideoAddComponent implements CanComponentDeactivate { 13export class VideoAddComponent implements CanComponentDeactivate {
14 @ViewChild('videoUpload') videoUpload: VideoUploadComponent 14 @ViewChild('videoUpload', { static: false }) videoUpload: VideoUploadComponent
15 @ViewChild('videoImportUrl') videoImportUrl: VideoImportUrlComponent 15 @ViewChild('videoImportUrl', { static: false }) videoImportUrl: VideoImportUrlComponent
16 @ViewChild('videoImportTorrent') videoImportTorrent: VideoImportTorrentComponent 16 @ViewChild('videoImportTorrent', { static: false }) videoImportTorrent: VideoImportTorrentComponent
17 17
18 secondStepType: 'upload' | 'import-url' | 'import-torrent' 18 secondStepType: 'upload' | 'import-url' | 'import-torrent'
19 videoName: string 19 videoName: string
diff --git a/client/src/app/videos/+video-watch/comment/video-comment-add.component.ts b/client/src/app/videos/+video-watch/comment/video-comment-add.component.ts
index ac1d02d94..8cdd37680 100644
--- a/client/src/app/videos/+video-watch/comment/video-comment-add.component.ts
+++ b/client/src/app/videos/+video-watch/comment/video-comment-add.component.ts
@@ -27,8 +27,8 @@ export class VideoCommentAddComponent extends FormReactive implements OnInit {
27 27
28 @Output() commentCreated = new EventEmitter<VideoCommentCreate>() 28 @Output() commentCreated = new EventEmitter<VideoCommentCreate>()
29 29
30 @ViewChild('visitorModal') visitorModal: NgbModal 30 @ViewChild('visitorModal', { static: true }) visitorModal: NgbModal
31 @ViewChild('textarea') textareaElement: ElementRef 31 @ViewChild('textarea', { static: true }) textareaElement: ElementRef
32 32
33 addingComment = false 33 addingComment = false
34 34
diff --git a/client/src/app/videos/+video-watch/comment/video-comments.component.ts b/client/src/app/videos/+video-watch/comment/video-comments.component.ts
index 5bafc55e5..64bd18072 100644
--- a/client/src/app/videos/+video-watch/comment/video-comments.component.ts
+++ b/client/src/app/videos/+video-watch/comment/video-comments.component.ts
@@ -20,7 +20,7 @@ import { HooksService } from '@app/core/plugins/hooks.service'
20 styleUrls: ['./video-comments.component.scss'] 20 styleUrls: ['./video-comments.component.scss']
21}) 21})
22export class VideoCommentsComponent implements OnInit, OnChanges, OnDestroy { 22export class VideoCommentsComponent implements OnInit, OnChanges, OnDestroy {
23 @ViewChild('commentHighlightBlock') commentHighlightBlock: ElementRef 23 @ViewChild('commentHighlightBlock', { static: false }) commentHighlightBlock: ElementRef
24 @Input() video: VideoDetails 24 @Input() video: VideoDetails
25 @Input() user: User 25 @Input() user: User
26 26
diff --git a/client/src/app/videos/+video-watch/modal/video-share.component.html b/client/src/app/videos/+video-watch/modal/video-share.component.html
index 82e59d04d..e0be9f265 100644
--- a/client/src/app/videos/+video-watch/modal/video-share.component.html
+++ b/client/src/app/videos/+video-watch/modal/video-share.component.html
@@ -27,7 +27,7 @@
27 <ngb-tab i18n-title title="QR-Code" id="qrcode"> 27 <ngb-tab i18n-title title="QR-Code" id="qrcode">
28 <ng-template ngbTabContent> 28 <ng-template ngbTabContent>
29 <div class="tab-content"> 29 <div class="tab-content">
30 <ngx-qrcode qrc-element-type="url" [qrc-value]="getVideoUrl()" qrc-errorCorrectionLevel="Q"></ngx-qrcode> 30 <qrcode [qrdata]="getVideoUrl()" size="256" level="Q"></qrcode>
31 </div> 31 </div>
32 </ng-template> 32 </ng-template>
33 </ngb-tab> 33 </ngb-tab>
diff --git a/client/src/app/videos/+video-watch/modal/video-share.component.ts b/client/src/app/videos/+video-watch/modal/video-share.component.ts
index eaaf6b902..f45afccfb 100644
--- a/client/src/app/videos/+video-watch/modal/video-share.component.ts
+++ b/client/src/app/videos/+video-watch/modal/video-share.component.ts
@@ -30,7 +30,7 @@ type Customizations = {
30 styleUrls: [ './video-share.component.scss' ] 30 styleUrls: [ './video-share.component.scss' ]
31}) 31})
32export class VideoShareComponent { 32export class VideoShareComponent {
33 @ViewChild('modal') modal: ElementRef 33 @ViewChild('modal', { static: true }) modal: ElementRef
34 34
35 @Input() video: VideoDetails = null 35 @Input() video: VideoDetails = null
36 @Input() videoCaptions: VideoCaption[] = [] 36 @Input() videoCaptions: VideoCaption[] = []
diff --git a/client/src/app/videos/+video-watch/modal/video-support.component.ts b/client/src/app/videos/+video-watch/modal/video-support.component.ts
index 5e7afa012..b56a51fbf 100644
--- a/client/src/app/videos/+video-watch/modal/video-support.component.ts
+++ b/client/src/app/videos/+video-watch/modal/video-support.component.ts
@@ -11,7 +11,7 @@ import { MarkdownService } from '@app/shared/renderer'
11export class VideoSupportComponent { 11export class VideoSupportComponent {
12 @Input() video: VideoDetails = null 12 @Input() video: VideoDetails = null
13 13
14 @ViewChild('modal') modal: NgbModal 14 @ViewChild('modal', { static: true }) modal: NgbModal
15 15
16 videoHTMLSupport = '' 16 videoHTMLSupport = ''
17 17
diff --git a/client/src/app/videos/+video-watch/video-watch.component.ts b/client/src/app/videos/+video-watch/video-watch.component.ts
index 228c45a06..027c2b026 100644
--- a/client/src/app/videos/+video-watch/video-watch.component.ts
+++ b/client/src/app/videos/+video-watch/video-watch.component.ts
@@ -43,10 +43,10 @@ import { HooksService } from '@app/core/plugins/hooks.service'
43export class VideoWatchComponent implements OnInit, OnDestroy { 43export class VideoWatchComponent implements OnInit, OnDestroy {
44 private static LOCAL_STORAGE_PRIVACY_CONCERN_KEY = 'video-watch-privacy-concern' 44 private static LOCAL_STORAGE_PRIVACY_CONCERN_KEY = 'video-watch-privacy-concern'
45 45
46 @ViewChild('videoWatchPlaylist') videoWatchPlaylist: VideoWatchPlaylistComponent 46 @ViewChild('videoWatchPlaylist', { static: true }) videoWatchPlaylist: VideoWatchPlaylistComponent
47 @ViewChild('videoShareModal') videoShareModal: VideoShareComponent 47 @ViewChild('videoShareModal', { static: false }) videoShareModal: VideoShareComponent
48 @ViewChild('videoSupportModal') videoSupportModal: VideoSupportComponent 48 @ViewChild('videoSupportModal', { static: false }) videoSupportModal: VideoSupportComponent
49 @ViewChild('subscribeButton') subscribeButton: SubscribeButtonComponent 49 @ViewChild('subscribeButton', { static: false }) subscribeButton: SubscribeButtonComponent
50 50
51 player: any 51 player: any
52 playerElement: HTMLVideoElement 52 playerElement: HTMLVideoElement
diff --git a/client/src/app/videos/+video-watch/video-watch.module.ts b/client/src/app/videos/+video-watch/video-watch.module.ts
index 67596a3da..f083aca4d 100644
--- a/client/src/app/videos/+video-watch/video-watch.module.ts
+++ b/client/src/app/videos/+video-watch/video-watch.module.ts
@@ -8,17 +8,17 @@ import { VideoCommentsComponent } from './comment/video-comments.component'
8import { VideoShareComponent } from './modal/video-share.component' 8import { VideoShareComponent } from './modal/video-share.component'
9import { VideoWatchRoutingModule } from './video-watch-routing.module' 9import { VideoWatchRoutingModule } from './video-watch-routing.module'
10import { VideoWatchComponent } from './video-watch.component' 10import { VideoWatchComponent } from './video-watch.component'
11import { NgxQRCodeModule } from 'ngx-qrcode2'
12import { NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap' 11import { NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap'
13import { RecommendationsModule } from '@app/videos/recommendations/recommendations.module' 12import { RecommendationsModule } from '@app/videos/recommendations/recommendations.module'
14import { VideoWatchPlaylistComponent } from '@app/videos/+video-watch/video-watch-playlist.component' 13import { VideoWatchPlaylistComponent } from '@app/videos/+video-watch/video-watch-playlist.component'
14import { QRCodeModule } from 'angularx-qrcode'
15 15
16@NgModule({ 16@NgModule({
17 imports: [ 17 imports: [
18 VideoWatchRoutingModule, 18 VideoWatchRoutingModule,
19 SharedModule, 19 SharedModule,
20 NgbTooltipModule, 20 NgbTooltipModule,
21 NgxQRCodeModule, 21 QRCodeModule,
22 RecommendationsModule 22 RecommendationsModule
23 ], 23 ],
24 24
diff --git a/client/src/app/videos/videos-routing.module.ts b/client/src/app/videos/videos-routing.module.ts
index 505173a5b..bc7520207 100644
--- a/client/src/app/videos/videos-routing.module.ts
+++ b/client/src/app/videos/videos-routing.module.ts
@@ -77,7 +77,7 @@ const videosRoutes: Routes = [
77 }, 77 },
78 { 78 {
79 path: 'upload', 79 path: 'upload',
80 loadChildren: 'app/videos/+video-edit/video-add.module#VideoAddModule', 80 loadChildren: () => import('app/videos/+video-edit/video-add.module').then(m => m.VideoAddModule),
81 data: { 81 data: {
82 meta: { 82 meta: {
83 title: 'Upload a video' 83 title: 'Upload a video'
@@ -86,7 +86,7 @@ const videosRoutes: Routes = [
86 }, 86 },
87 { 87 {
88 path: 'update/:uuid', 88 path: 'update/:uuid',
89 loadChildren: 'app/videos/+video-edit/video-update.module#VideoUpdateModule', 89 loadChildren: () => import('app/videos/+video-edit/video-update.module').then(m => m.VideoUpdateModule),
90 data: { 90 data: {
91 meta: { 91 meta: {
92 title: 'Edit a video' 92 title: 'Edit a video'
@@ -95,7 +95,7 @@ const videosRoutes: Routes = [
95 }, 95 },
96 { 96 {
97 path: 'watch', 97 path: 'watch',
98 loadChildren: 'app/videos/+video-watch/video-watch.module#VideoWatchModule', 98 loadChildren: () => import('app/videos/+video-watch/video-watch.module').then(m => m.VideoWatchModule),
99 data: { 99 data: {
100 preload: 3000 100 preload: 3000
101 } 101 }