import { BytesPipe, KeysPipe, NgPipesModule } from 'ngx-pipes' import { SharedModule as PrimeSharedModule } from 'primeng/api' import { InputMaskModule } from 'primeng/inputmask' import { InputSwitchModule } from 'primeng/inputswitch' import { MultiSelectModule } from 'primeng/multiselect' import { ClipboardModule } from '@angular/cdk/clipboard' import { CommonModule, DatePipe } from '@angular/common' import { HttpClientModule } from '@angular/common/http' import { NgModule } from '@angular/core' import { FormsModule, ReactiveFormsModule } from '@angular/forms' import { RouterModule } from '@angular/router' import { NgbCollapseModule, NgbDropdownModule, NgbModalModule, NgbNavModule, NgbPopoverModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap' import { NgSelectModule } from '@ng-select/ng-select' import { I18n } from '@ngx-translate/i18n-polyfill' import { SharedGlobalIconModule } from '../shared-icons' import { AccountService, ActorAvatarInfoComponent, AvatarComponent } from './account' import { FromNowPipe, InfiniteScrollerDirective, NumberFormatterPipe, PeerTubeTemplateDirective } from './angular' import { ActionDropdownComponent, ButtonComponent, DeleteButtonComponent, EditButtonComponent } from './buttons' import { DateToggleComponent } from './date' import { FeedComponent } from './feeds' import { LoaderComponent, SmallLoaderComponent } from './loaders' import { HelpComponent, ListOverflowComponent, TopMenuDropdownComponent } from './misc' import { UserHistoryService, UserNotificationsComponent, UserNotificationService, UserQuotaComponent } from './users' import { RedundancyService, VideoImportService, VideoOwnershipService, VideoService } from './video' import { VideoCaptionService } from './video-caption' import { VideoChannelService } from './video-channel' import { AUTH_INTERCEPTOR_PROVIDER } from './auth' @NgModule({ imports: [ CommonModule, FormsModule, ReactiveFormsModule, RouterModule, HttpClientModule, NgbDropdownModule, NgbModalModule, NgbPopoverModule, NgbNavModule, NgbTooltipModule, NgbCollapseModule, ClipboardModule, PrimeSharedModule, InputMaskModule, NgPipesModule, MultiSelectModule, InputSwitchModule, NgSelectModule, SharedGlobalIconModule ], declarations: [ AvatarComponent, ActorAvatarInfoComponent, FromNowPipe, InfiniteScrollerDirective, NumberFormatterPipe, PeerTubeTemplateDirective, ActionDropdownComponent, ButtonComponent, DeleteButtonComponent, EditButtonComponent, DateToggleComponent, FeedComponent, LoaderComponent, SmallLoaderComponent, HelpComponent, ListOverflowComponent, TopMenuDropdownComponent, UserQuotaComponent, UserNotificationsComponent ], exports: [ CommonModule, FormsModule, ReactiveFormsModule, RouterModule, HttpClientModule, NgbDropdownModule, NgbModalModule, NgbPopoverModule, NgbNavModule, NgbTooltipModule, NgbCollapseModule, ClipboardModule, PrimeSharedModule, InputMaskModule, BytesPipe, KeysPipe, MultiSelectModule, AvatarComponent, ActorAvatarInfoComponent, FromNowPipe, InfiniteScrollerDirective, NumberFormatterPipe, PeerTubeTemplateDirective, ActionDropdownComponent, ButtonComponent, DeleteButtonComponent, EditButtonComponent, DateToggleComponent, FeedComponent, LoaderComponent, SmallLoaderComponent, HelpComponent, ListOverflowComponent, TopMenuDropdownComponent, UserQuotaComponent, UserNotificationsComponent, NgSelectModule ], providers: [ I18n, DatePipe, FromNowPipe, AUTH_INTERCEPTOR_PROVIDER, AccountService, UserHistoryService, UserNotificationService, RedundancyService, VideoImportService, VideoOwnershipService, VideoService, VideoCaptionService, VideoChannelService ] }) export class SharedMainModule { }