From 329a34892bbc5059c47c2c57ca2153c1c78d911a Mon Sep 17 00:00:00 2001 From: "Manu Mtz.-Almeida" Date: Fri, 27 Apr 2018 01:44:43 +0200 Subject: [PATCH] fix(angular): Config provider --- angular/src/module.ts | 15 ++++----------- angular/src/providers/config.ts | 14 ++------------ 2 files changed, 6 insertions(+), 23 deletions(-) diff --git a/angular/src/module.ts b/angular/src/module.ts index 0cb2aa84c7..7ebbc1da23 100644 --- a/angular/src/module.ts +++ b/angular/src/module.ts @@ -4,6 +4,7 @@ import { CommonModule } from '@angular/common'; import * as c from './directives'; import * as d from './directives/proxies'; import * as p from './providers'; +import { setupConfig } from '@ionic/core'; const DECLARATIONS = [ @@ -120,6 +121,7 @@ const PROVIDERS = [ p.Platform, p.Events, p.DomController, + p.Config ]; @NgModule({ @@ -136,21 +138,12 @@ const PROVIDERS = [ }) export class IonicModule { static forRoot(config?: {[key: string]: any}): ModuleWithProviders { + setupConfig(config); return { ngModule: IonicModule, - providers: [ - // Load config with defualt values - { provide: ConfigToken, useValue: config }, - { provide: p.Config, useFactory: setupConfig, deps: [ ConfigToken ] }, - - ...PROVIDERS, - ] + providers: PROVIDERS }; } } export const ConfigToken = new InjectionToken('USERCONFIG'); -export function setupConfig(userConfig: any): p.Config { - const config = new p.Config(userConfig); - return config; -} diff --git a/angular/src/providers/config.ts b/angular/src/providers/config.ts index cbda79be7f..3335d20f40 100644 --- a/angular/src/providers/config.ts +++ b/angular/src/providers/config.ts @@ -1,19 +1,9 @@ import { Config as CoreConfig } from '@ionic/core'; +import { Injectable } from '@angular/core'; +@Injectable() export class Config { - constructor(defaultConfig: {[key: string]: any}) { - const Ionic = (window as any).Ionic; - if (Ionic.config && Ionic.config.constructor.name !== 'Object') { - console.error('ionic config was already initialized'); - return; - } - Ionic.config = { - ...Ionic.config, - ...defaultConfig - }; - } - get(key: string, fallback?: any): any { return getConfig().get(key, fallback); }