PeerTube/client/src/main.browser.ts

46 lines
1.1 KiB
TypeScript

/* tslint: disable */
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'
/**
* Bootstrap our Angular app with a top level NgModule
*/
export function main (): Promise<any> {
return platformBrowserDynamic()
.bootstrapModule(AppModule)
.then(decorateModuleRef)
.then((ngModuleRef: any) => {
// `module` global ref for webpackhmr
// Don't run this in Prod
return hmrModule(ngModuleRef, module)
})
.catch((err) => console.error(err))
}
/**
* Needed for hmr
* in prod this is replace for document ready
*/
switch (document.readyState) {
case 'loading':
document.addEventListener('DOMContentLoaded', _domReadyHandler, false)
break
case 'interactive':
case 'complete':
default:
main()
}
function _domReadyHandler () {
document.removeEventListener('DOMContentLoaded', _domReadyHandler, false)
main()
}