UNPKG

ng-config-cat

Version:

An Angular service for ConfigCat

41 lines 2.12 kB
import { Inject, Injectable } from '@angular/core'; import { AutoPollingModeConfiguration, LazyPollingModeConfiguration, ManualPollingModeConfiguration, ConfigCatAutoModeClient, ConfigCatLazyModeClient, ConfigCatManualModeClient, } from '../classes'; import { NG_CONFIG_CAT_OPTIONS_TOKEN } from '../constants/ng-config-cat-options.token'; import * as i0 from "@angular/core"; import * as i1 from "../constants/ng-config-cat-options.token"; export class NgConfigCatService { constructor(ngConfigCatConfiguration) { const { sdkKey, configuration = new AutoPollingModeConfiguration() } = ngConfigCatConfiguration; if (configuration instanceof AutoPollingModeConfiguration) { this.configCatClient = new ConfigCatAutoModeClient(sdkKey, configuration); } else if (configuration instanceof LazyPollingModeConfiguration) { this.configCatClient = new ConfigCatLazyModeClient(sdkKey, configuration); } else if (configuration instanceof ManualPollingModeConfiguration) { this.configCatClient = new ConfigCatManualModeClient(sdkKey, configuration); } else { throw new TypeError('NgConfigCat configuration should be represent by an instance of PollingModeConfiguration class'); } } getValue(key, defaultValue, user) { return this.configCatClient.getValue(key, defaultValue, user); } getAllKeys() { return this.configCatClient.getAllKeys(); } forceRefresh() { return this.configCatClient.forceRefresh(); } } NgConfigCatService.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgConfigCatService_Factory() { return new NgConfigCatService(i0.ɵɵinject(i1.NG_CONFIG_CAT_OPTIONS_TOKEN)); }, token: NgConfigCatService, providedIn: "root" }); NgConfigCatService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; NgConfigCatService.ctorParameters = () => [ { type: undefined, decorators: [{ type: Inject, args: [NG_CONFIG_CAT_OPTIONS_TOKEN,] }] } ]; //# sourceMappingURL=ng-config-cat.service.js.map