-import { enableProdMode } from '@angular/core'
+import { enableProdMode, TRANSLATIONS, TRANSLATIONS_FORMAT } from '@angular/core'
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'
import { AppModule } from './app/app.module'
import { environment } from './environments/environment'
import { hmrBootstrap } from './hmr'
+import { getDevLocale, isOnDevLocale } from '@app/shared/i18n/i18n-utils'
+import { buildFileLocale } from '../../shared'
+let providers: any[] = []
if (environment.production) {
enableProdMode()
}
+// Template translation, should be in the bootstrap step
+if (isOnDevLocale()) {
+ const locale = buildFileLocale(getDevLocale())
+ const translations = require(`raw-loader!./locale/angular.${locale}.xlf`)
+
+ providers = [
+ { provide: TRANSLATIONS, useValue: translations },
+ { provide: TRANSLATIONS_FORMAT, useValue: 'xlf' }
+ ]
+}
+
const bootstrap = () => platformBrowserDynamic()
- .bootstrapModule(AppModule)
+ .bootstrapModule(AppModule, { providers })
.then(bootstrapModule => {
// TODO: Uncomment and remove unregistration when https://github.com/angular/angular/issues/21191 is fixed
// TODO: Remove when https://github.com/angular/angular-cli/issues/8779 is fixed?
// .catch(err => console.error('Cannot register service worker.', err))
// }
- navigator.serviceWorker.getRegistrations().then(registrations => {
- for (const registration of registrations) {
- registration.unregister()
- }
- })
+ if (navigator.serviceWorker && typeof navigator.serviceWorker.getRegistrations === 'function') {
+ navigator.serviceWorker.getRegistrations()
+ .then(registrations => {
+ for (const registration of registrations) {
+ registration.unregister()
+ }
+ })
+ }
return bootstrapModule
})