Send server announce when users upload a video
[oweals/peertube.git] / client / src / main.browser.ts
index aeae06e045d4b5a23ebc3019f3f176f8c520063f..28f0d57814b524f89506b5832d7e42d08a39d694 100644 (file)
@@ -1,22 +1,28 @@
 /* tslint: disable */
 
-import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
-import { decorateModuleRef } from './app/environment';
+import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'
+import { decorateModuleRef } from './app/environment'
+import { hmrModule } from '@angularclass/hmr'
 
 /**
  * App Module
  * our top level module that holds all of our components
  */
-import { AppModule } from './app';
+import { AppModule } from './app'
 
 /**
  * Bootstrap our Angular app with a top level NgModule
  */
-export function main(): Promise<any> {
+export function main (): Promise<any> {
   return platformBrowserDynamic()
     .bootstrapModule(AppModule)
     .then(decorateModuleRef)
-    .catch((err) => console.error(err));
+    .then((ngModuleRef: any) => {
+      // `module` global ref for webpackhmr
+      // Don't run this in Prod
+      return hmrModule(ngModuleRef, module)
+    })
+    .catch((err) => console.error(err))
 }
 
 /**
@@ -25,15 +31,15 @@ export function main(): Promise<any> {
  */
 switch (document.readyState) {
   case 'loading':
-    document.addEventListener('DOMContentLoaded', _domReadyHandler, false);
-    break;
+    document.addEventListener('DOMContentLoaded', _domReadyHandler, false)
+    break
   case 'interactive':
   case 'complete':
   default:
-    main();
+    main()
 }
 
-function _domReadyHandler() {
- document.removeEventListener('DOMContentLoaded', _domReadyHandler, false);
- main();
+function _domReadyHandler () {
+  document.removeEventListener('DOMContentLoaded', _domReadyHandler, false)
+  main()
 }