]>
Commit | Line | Data |
---|---|---|
1 | /* tslint: disable */ | |
2 | ||
3 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic' | |
4 | import { decorateModuleRef } from './app/environment' | |
5 | import { hmrModule } from '@angularclass/hmr' | |
6 | ||
7 | /** | |
8 | * App Module | |
9 | * our top level module that holds all of our components | |
10 | */ | |
11 | import { AppModule } from './app' | |
12 | ||
13 | /** | |
14 | * Bootstrap our Angular app with a top level NgModule | |
15 | */ | |
16 | export function main (): Promise<any> { | |
17 | return platformBrowserDynamic() | |
18 | .bootstrapModule(AppModule) | |
19 | .then(decorateModuleRef) | |
20 | .then((ngModuleRef: any) => { | |
21 | // `module` global ref for webpackhmr | |
22 | // Don't run this in Prod | |
23 | return hmrModule(ngModuleRef, module) | |
24 | }) | |
25 | .catch((err) => console.error(err)) | |
26 | } | |
27 | ||
28 | /** | |
29 | * Needed for hmr | |
30 | * in prod this is replace for document ready | |
31 | */ | |
32 | switch (document.readyState) { | |
33 | case 'loading': | |
34 | document.addEventListener('DOMContentLoaded', _domReadyHandler, false) | |
35 | break | |
36 | case 'interactive': | |
37 | case 'complete': | |
38 | default: | |
39 | main() | |
40 | } | |
41 | ||
42 | function _domReadyHandler () { | |
43 | document.removeEventListener('DOMContentLoaded', _domReadyHandler, false) | |
44 | main() | |
45 | } |