1
|
// the polyfills must be the first thing imported
|
2
|
import 'angular2-universal-polyfills';
|
3
|
import 'ts-helpers';
|
4
|
import './__workaround.browser'; // temporary until 2.1.1 things are patched in Core
|
5
|
|
6
|
// Angular 2
|
7
|
import { enableProdMode } from '@angular/core';
|
8
|
import { platformBrowser } from '@angular/platform-browser';
|
9
|
// for AoT use platformBrowser
|
10
|
// import { platformUniversalDynamic } from 'angular2-universal/browser';
|
11
|
|
12
|
import { load as loadWebFont } from 'webfontloader';
|
13
|
|
14
|
// enable prod for faster renders
|
15
|
enableProdMode();
|
16
|
|
17
|
import { MainModuleNgFactory } from './browser.module.ngfactory';
|
18
|
|
19
|
export const platformRef = platformBrowser();
|
20
|
|
21
|
// on document ready bootstrap Angular 2
|
22
|
export function main() {
|
23
|
// Load fonts async
|
24
|
// https://github.com/typekit/webfontloader#configuration
|
25
|
// loadWebFont({
|
26
|
// google: {
|
27
|
// families: ['Droid Sans']
|
28
|
// }
|
29
|
// });
|
30
|
|
31
|
return platformRef.bootstrapModuleFactory(MainModuleNgFactory);
|
32
|
}
|
33
|
|
34
|
// support async tag or hmr
|
35
|
switch (document.readyState) {
|
36
|
case 'loading':
|
37
|
document.addEventListener('DOMContentLoaded', () => main());
|
38
|
break;
|
39
|
case 'interactive':
|
40
|
case 'complete':
|
41
|
default:
|
42
|
main();
|
43
|
}
|