-import { GuardsCheckStart, NavigationEnd, Router } from '@angular/router'
-import { AuthService, RedirectService, ServerService, ThemeService } from '@app/core'
-import { is18nPath } from '../../../shared/models/i18n'
-import { ScreenService } from '@app/shared/misc/screen.service'
-import { skip, debounceTime } from 'rxjs/operators'
-import { HotkeysService, Hotkey } from 'angular2-hotkeys'
-import { I18n } from '@ngx-translate/i18n-polyfill'
-import { fromEvent } from 'rxjs'
+import { Event, GuardsCheckStart, RouteConfigLoadEnd, RouteConfigLoadStart, Router } from '@angular/router'
+import {
+ AuthService,
+ MarkdownService,
+ PeerTubeRouterService,
+ RedirectService,
+ ScreenService,
+ ScrollService,
+ ServerService,
+ ThemeService,
+ User,
+ UserLocalStorageService
+} from '@app/core'
+import { HooksService } from '@app/core/plugins/hooks.service'
+import { PluginService } from '@app/core/plugins/plugin.service'
+import { AccountSetupWarningModalComponent } from '@app/modal/account-setup-warning-modal.component'
+import { AdminWelcomeModalComponent } from '@app/modal/admin-welcome-modal.component'
+import { CustomModalComponent } from '@app/modal/custom-modal.component'
+import { InstanceConfigWarningModalComponent } from '@app/modal/instance-config-warning-modal.component'
+import { NgbConfig, NgbModal } from '@ng-bootstrap/ng-bootstrap'
+import { LoadingBarService } from '@ngx-loading-bar/core'
+import { logger } from '@root-helpers/logger'
+import { peertubeLocalStorage } from '@root-helpers/peertube-web-storage'
+import { getShortLocale } from '@shared/core-utils/i18n'
+import { BroadcastMessageLevel, HTMLServerConfig, UserRole } from '@shared/models'
+import { MenuService } from './core/menu/menu.service'
+import { POP_STATE_MODAL_DISMISS } from './helpers'
+import { GlobalIconName } from './shared/shared-icons'
+import { InstanceService } from './shared/shared-instance'