UNPKG

@dagonmetric/ng-config

Version:

Configuration and options service for Angular applications.

108 lines (103 loc) 3.6 kB
import { InjectionToken, ɵɵdefineInjectable, ɵɵinject, INJECTOR, Injectable, Injector, Inject, NgModule } from '@angular/core'; import { CONFIG_PROVIDER } from '@dagonmetric/ng-config'; import { HttpClient } from '@angular/common/http'; /** * @fileoverview added by tsickle * Generated from: http-config/src/http-config-provider-options.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ const HTTP_CONFIG_PROVIDER_OPTIONS = new InjectionToken('HttpConfigProviderOptions'); /** * @fileoverview added by tsickle * Generated from: http-config/src/http-config-provider.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * Implements an HTTP client API for HttpConfigProvider that relies on the Angular HttpClient. */ class HttpConfigProvider { /** * @param {?} httpClient * @param {?} injector * @param {?} options */ constructor(httpClient, injector, options) { this.httpClient = httpClient; if (typeof options.endpoint === 'string') { this.configEndpoint = options.endpoint; } else { this.configEndpoint = injector.get(options.endpoint); } } /** * @return {?} */ get name() { return 'HttpConfigProvider'; } /** * @return {?} */ get endpoint() { return this.configEndpoint; } /** * @return {?} */ load() { return this.httpClient.get(this.configEndpoint); } } /** @nocollapse */ HttpConfigProvider.ɵprov = ɵɵdefineInjectable({ factory: function HttpConfigProvider_Factory() { return new HttpConfigProvider(ɵɵinject(HttpClient), ɵɵinject(INJECTOR), ɵɵinject(HTTP_CONFIG_PROVIDER_OPTIONS)); }, token: HttpConfigProvider, providedIn: "any" }); HttpConfigProvider.decorators = [ { type: Injectable, args: [{ providedIn: 'any' },] } ]; /** @nocollapse */ HttpConfigProvider.ctorParameters = () => [ { type: HttpClient }, { type: Injector }, { type: undefined, decorators: [{ type: Inject, args: [HTTP_CONFIG_PROVIDER_OPTIONS,] }] } ]; /** * @fileoverview added by tsickle * Generated from: http-config/src/http-config-provider.module.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * The `NGMODULE` for providing `HttpConfigProvider`. */ class HttpConfigProviderModule { /** * Call this method to provide options for configuring the `HttpConfigProvider`. * @param {?} options An option object for `HttpConfigProvider`. * @return {?} */ static configure(options) { return { ngModule: HttpConfigProviderModule, providers: [ { provide: HTTP_CONFIG_PROVIDER_OPTIONS, useValue: options } ] }; } } HttpConfigProviderModule.decorators = [ { type: NgModule, args: [{ providers: [ { provide: CONFIG_PROVIDER, useClass: HttpConfigProvider, multi: true } ] },] } ]; export { HTTP_CONFIG_PROVIDER_OPTIONS, HttpConfigProvider, HttpConfigProviderModule }; //# sourceMappingURL=ng-config-http-config.js.map