From a55c46ddef111c7be0d3421a59a4e1c360cad0a7 Mon Sep 17 00:00:00 2001 From: CRIMX Date: Tue, 17 Apr 2018 09:43:25 +0800 Subject: [PATCH] fix(helpers): fix wrong deletion --- src/_helpers/config-manager.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/_helpers/config-manager.ts b/src/_helpers/config-manager.ts index 275eb7fac..da678c10f 100644 --- a/src/_helpers/config-manager.ts +++ b/src/_helpers/config-manager.ts @@ -2,6 +2,8 @@ import { AppConfig, appConfigFactory } from '@/app-config' import { storage, StorageListenerCb } from './browser-api' import { map } from 'rxjs/operators' import { Observable } from 'rxjs/Observable' +import { fromPromise } from 'rxjs/observable/fromPromise' +import { concat } from 'rxjs/observable/concat' export type AppConfigChanged = { config: { @@ -28,8 +30,14 @@ export function addAppConfigListener (cb: StorageListenerCb): void { return storage.sync.addListener('config', cb) } +/** + * Get AppConfig and create a stream listening config changing + */ export function createAppConfigStream (): Observable { - return storage.createStream('config').pipe(map(x => x.config.newValue)) + return concat( + fromPromise(getAppConfig()), + storage.createStream('config').pipe(map(x => x.config.newValue)), + ) } export const appConfig = {