UNPKG

@yaagoub/decorators

Version:

Angular decorators

23 lines 3.23 kB
import { APP_INITIALIZER } from '@angular/core'; import { Injector, makeEnvironmentProviders } from '@angular/core'; import { InterceptorStore } from '../http/interceptors/interceptor.store'; import { YgbInjector } from './ygb-injector'; export function provideDecoratorsConfig(config = {}) { return makeEnvironmentProviders([ InterceptorStore, { provide: APP_INITIALIZER, multi: true, deps: [Injector, InterceptorStore], useFactory: (injector, store) => { return () => { YgbInjector.setInjector(injector); if (config.interceptors?.length) { store.addInterceptor(...config.interceptors); } }; } } ]); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1kZWNvcmF0b3JzLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZGVjb3JhdG9ycy9zcmMvZ2xvYmFsL3Byb3ZpZGUtZGVjb3JhdG9ycy1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUUsUUFBUSxFQUF3Qix3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFTN0MsTUFBTSxVQUFVLHVCQUF1QixDQUFDLFNBQTJCLEVBQUU7SUFDbkUsT0FBTyx3QkFBd0IsQ0FBQztRQUM5QixnQkFBZ0I7UUFDaEI7WUFDRSxPQUFPLEVBQUUsZUFBZTtZQUN4QixLQUFLLEVBQUUsSUFBSTtZQUNYLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQztZQUNsQyxVQUFVLEVBQUUsQ0FBQyxRQUFrQixFQUFFLEtBQXVCLEVBQUUsRUFBRTtnQkFDMUQsT0FBTyxHQUFHLEVBQUU7b0JBQ1YsV0FBVyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDbEMsSUFBSSxNQUFNLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxDQUFDO3dCQUNoQyxLQUFLLENBQUMsY0FBYyxDQUFDLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO29CQUMvQyxDQUFDO2dCQUNILENBQUMsQ0FBQztZQUNKLENBQUM7U0FDRjtLQUNGLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUFBfSU5JVElBTElaRVIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEluamVjdG9yLCBFbnZpcm9ubWVudFByb3ZpZGVycywgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbnRlcmNlcHRvciB9IGZyb20gXCIuLi9odHRwL3R5cGVzXCI7XG5pbXBvcnQgeyBJbnRlcmNlcHRvclN0b3JlIH0gZnJvbSAnLi4vaHR0cC9pbnRlcmNlcHRvcnMvaW50ZXJjZXB0b3Iuc3RvcmUnO1xuaW1wb3J0IHsgWWdiSW5qZWN0b3IgfSBmcm9tICcuL3lnYi1pbmplY3Rvcic7XG5cblxuZXhwb3J0IGludGVyZmFjZSBEZWNvcmF0b3JzQ29uZmlnIHtcbiAgaW50ZXJjZXB0b3JzPzogSW50ZXJjZXB0b3JbXTtcbn1cblxuXG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRGVjb3JhdG9yc0NvbmZpZyhjb25maWc6IERlY29yYXRvcnNDb25maWcgPSB7fSk6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbXG4gICAgSW50ZXJjZXB0b3JTdG9yZSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgIGRlcHM6IFtJbmplY3RvciwgSW50ZXJjZXB0b3JTdG9yZV0sXG4gICAgICB1c2VGYWN0b3J5OiAoaW5qZWN0b3I6IEluamVjdG9yLCBzdG9yZTogSW50ZXJjZXB0b3JTdG9yZSkgPT4ge1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgIFlnYkluamVjdG9yLnNldEluamVjdG9yKGluamVjdG9yKTtcbiAgICAgICAgICBpZiAoY29uZmlnLmludGVyY2VwdG9ycz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBzdG9yZS5hZGRJbnRlcmNlcHRvciguLi5jb25maWcuaW50ZXJjZXB0b3JzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfVxuICBdKTtcbn1cbiJdfQ==