UNPKG

@protoarch.angular/api

Version:
47 lines 5.19 kB
import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http'; import { NgModule } from '@angular/core'; import { Api } from './api.service'; import * as ApiTokens from './api.tokens'; import { BlobErrorHttpInterceptor } from './blob-error-http.interceptor'; import * as i0 from "@angular/core"; export function nullSerializerFactory() { return { serialize: data => data, deserialize: data => data, }; } export class ApiModule { static forRoot(options = {}) { return { ngModule: ApiModule, providers: [ Api, { provide: ApiTokens.API_ENDPOINT, useValue: options.endpoint || '', }, options.serializeProvider || { provide: ApiTokens.API_SERIALIZER, useFactory: nullSerializerFactory, }, { provide: HTTP_INTERCEPTORS, useClass: BlobErrorHttpInterceptor, multi: true, }, ], }; } static ɵfac = function ApiModule_Factory(t) { return new (t || ApiModule)(); }; static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: ApiModule }); static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ providers: [Api], imports: [HttpClientModule] }); } (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ApiModule, [{ type: NgModule, args: [{ imports: [HttpClientModule], providers: [Api], }] }], null, null); })(); (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(ApiModule, { imports: [HttpClientModule] }); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvYXBpLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RSxPQUFPLEVBQXNCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU1RCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2xDLE9BQU8sS0FBSyxTQUFTLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLCtCQUErQixDQUFDOztBQUV2RSxNQUFNLFVBQVUscUJBQXFCO0lBQ2pDLE9BQU87UUFDSCxTQUFTLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJO1FBQ3ZCLFdBQVcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUk7S0FDNUIsQ0FBQztBQUNOLENBQUM7QUFLRCxNQUFNLE9BQU8sU0FBUztJQUNsQixNQUFNLENBQUMsT0FBTyxDQUFDLFVBQTZCLEVBQUU7UUFDMUMsT0FBTztZQUNILFFBQVEsRUFBRSxTQUFTO1lBQ25CLFNBQVMsRUFBRTtnQkFDUCxHQUFHO2dCQUNIO29CQUNJLE9BQU8sRUFBRSxTQUFTLENBQUMsWUFBWTtvQkFDL0IsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRLElBQUksRUFBRTtpQkFDbkM7Z0JBQ0QsT0FBTyxDQUFDLGlCQUFpQixJQUFJO29CQUN6QixPQUFPLEVBQUUsU0FBUyxDQUFDLGNBQWM7b0JBQ2pDLFVBQVUsRUFBRSxxQkFBcUI7aUJBQ3BDO2dCQUNEO29CQUNJLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLEtBQUssRUFBRSxJQUFJO2lCQUNkO2FBQ0o7U0FDSixDQUFDO0lBQ04sQ0FBQzttRUFyQlEsU0FBUzs0REFBVCxTQUFTO2lFQUZQLENBQUMsR0FBRyxDQUFDLFlBRE4sZ0JBQWdCOztpRkFHakIsU0FBUztjQUpyQixRQUFRO2VBQUM7Z0JBQ04sT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7Z0JBQzNCLFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQzthQUNuQjs7d0ZBQ1ksU0FBUyxjQUhSLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SHR0cENsaWVudE1vZHVsZSwgSFRUUF9JTlRFUkNFUFRPUlN9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHtNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7SUFwaU1vZHVsZU9wdGlvbnMsIElTZXJpYWxpemVyfSBmcm9tICcuL2FwaS5vcHRpb25zJztcclxuaW1wb3J0IHtBcGl9IGZyb20gJy4vYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgKiBhcyBBcGlUb2tlbnMgZnJvbSAnLi9hcGkudG9rZW5zJztcclxuaW1wb3J0IHtCbG9iRXJyb3JIdHRwSW50ZXJjZXB0b3J9IGZyb20gJy4vYmxvYi1lcnJvci1odHRwLmludGVyY2VwdG9yJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBudWxsU2VyaWFsaXplckZhY3RvcnkoKTogSVNlcmlhbGl6ZXIge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICBzZXJpYWxpemU6IGRhdGEgPT4gZGF0YSxcclxuICAgICAgICBkZXNlcmlhbGl6ZTogZGF0YSA9PiBkYXRhLFxyXG4gICAgfTtcclxufVxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW0h0dHBDbGllbnRNb2R1bGVdLFxyXG4gICAgcHJvdmlkZXJzOiBbQXBpXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaU1vZHVsZSB7XHJcbiAgICBzdGF0aWMgZm9yUm9vdChvcHRpb25zOiBJQXBpTW9kdWxlT3B0aW9ucyA9IHt9KTogTW9kdWxlV2l0aFByb3ZpZGVyczxBcGlNb2R1bGU+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBuZ01vZHVsZTogQXBpTW9kdWxlLFxyXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICAgICAgICAgIEFwaSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBcGlUb2tlbnMuQVBJX0VORFBPSU5ULFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZVZhbHVlOiBvcHRpb25zLmVuZHBvaW50IHx8ICcnLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIG9wdGlvbnMuc2VyaWFsaXplUHJvdmlkZXIgfHwge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFwaVRva2Vucy5BUElfU0VSSUFMSVpFUixcclxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiBudWxsU2VyaWFsaXplckZhY3RvcnksXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZUNsYXNzOiBCbG9iRXJyb3JIdHRwSW50ZXJjZXB0b3IsXHJcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBdLFxyXG4gICAgICAgIH07XHJcbiAgICB9XHJcbn1cclxuIl19