X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fmain.ts;h=f456e89c5d799e6097ae1a78a5b11468bb24a6ed;hb=b18d4b9f368fd20d6990bd4e9459bb539141a2c1;hp=9686ba4b863ac0c71d8a13e246a3ecc92b1bce7d;hpb=78967fca4cacbc247fa6fb62d64b2d6825a10804;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/main.ts b/client/src/main.ts index 9686ba4b8..f456e89c5 100644 --- a/client/src/main.ts +++ b/client/src/main.ts @@ -1,22 +1,46 @@ -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 = [] if (environment.production) { enableProdMode() } +// Template translation, should be in the bootstrap step +if (isOnDevLocale()) { + const locale = buildFileLocale(getDevLocale()) + const translations = require(`raw-loader!./locale/target/angular_${locale}.xml`) + + 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? - if ('serviceWorker' in navigator && environment.production) { - navigator.serviceWorker.register('/ngsw-worker.js') - .catch(err => console.error('Cannot register service worker.', err)) + // if ('serviceWorker' in navigator && environment.production) { + // navigator.serviceWorker.register('/ngsw-worker.js') + // .catch(err => console.error('Cannot register service worker.', err)) + // } + + if (navigator.serviceWorker) { + navigator.serviceWorker.getRegistrations() + .then(registrations => { + for (const registration of registrations) { + registration.unregister() + } + }) } return bootstrapModule