// Angular 2 import { enableDebugTools, disableDebugTools } from '@angular/platform-browser'; import { ApplicationRef, enableProdMode } from '@angular/core'; // Environment Providers let PROVIDERS: any[] = [ // common env directives ]; // Angular debug tools in the dev console // https://github.com/angular/angular/blob/86405345b781a9dc2438c0fbe3e9409245647019/TOOLS_JS.md let _decorateModuleRef = (value: T): T => { return value; }; if ('production' === ENV) { enableProdMode(); // Production _decorateModuleRef = (modRef: any) => { disableDebugTools(); return modRef; }; PROVIDERS = [ ...PROVIDERS, // custom providers in production ]; } else { _decorateModuleRef = (modRef: any) => { const appRef = modRef.injector.get(ApplicationRef); const cmpRef = appRef.components[0]; let _ng = ( window).ng; enableDebugTools(cmpRef); ( window).ng.probe = _ng.probe; ( window).ng.coreTokens = _ng.coreTokens; return modRef; }; // Development PROVIDERS = [ ...PROVIDERS, // custom providers in development ]; } export const decorateModuleRef = _decorateModuleRef; export const ENV_PROVIDERS = [ ...PROVIDERS ];