@ng-atomic/common 18.6.0 → 18.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,10 +2,11 @@ import { Injectable, InjectionToken, inject } from '@angular/core';
2
2
  import { from } from 'rxjs';
3
3
  import { mergeMap, take } from 'rxjs/operators';
4
4
  import * as i0 from "@angular/core";
5
- export const PROVIDE_AUTHORIZATION = new InjectionToken('PROVIDE_AUTHORIZATION');
5
+ export const AUTHORIZATION = new InjectionToken('[@ng-atomic/common] AUTHORIZATION');
6
+ /** @deprecated use `authorizationInterceptor` instead. */
6
7
  export class AuthorizationInterceptor {
7
8
  constructor() {
8
- this.getAuth = inject(PROVIDE_AUTHORIZATION);
9
+ this.getAuth = inject(AUTHORIZATION);
9
10
  }
10
11
  intercept(req, next) {
11
12
  if (!req.url.startsWith('/api'))
@@ -23,10 +24,16 @@ export class AuthorizationInterceptor {
23
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: AuthorizationInterceptor, decorators: [{
24
25
  type: Injectable
25
26
  }] });
26
- export const authorizationInterceptor = (req, next) => {
27
- if (!req.url.startsWith('/api'))
28
- return next(req);
29
- const getAuth = inject(PROVIDE_AUTHORIZATION, { optional: true }) ?? null;
30
- return from(getAuth()).pipe(take(1), mergeMap(token => next(token ? req.clone({ setHeaders: { Authorization: token } }) : req)));
31
- };
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXphdGlvbi5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvaW50ZXJjZXB0b3JzL2F1dGhvcml6YXRpb24vYXV0aG9yaXphdGlvbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkUsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUdoRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBdUIsdUJBQXVCLENBQUMsQ0FBQztBQUd2RyxNQUFNLE9BQU8sd0JBQXdCO0lBRHJDO1FBR1UsWUFBTyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0tBYWpEO0lBWEMsU0FBUyxDQUFDLEdBQXlCLEVBQUUsSUFBaUI7UUFDcEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUFFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV6RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxHQUF5QixFQUFFLEtBQWE7UUFDbEUsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUMsYUFBYSxFQUFFLEtBQUssRUFBQyxFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDOzhHQWRVLHdCQUF3QjtrSEFBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVOztBQWtCWCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBc0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7SUFDdkUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUFFLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUUxRSxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDekIsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxVQUFVLEVBQUUsRUFBQyxhQUFhLEVBQUUsS0FBSyxFQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUN6RixDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cFJlcXVlc3QsIEh0dHBIYW5kbGVyLCBIdHRwRXZlbnQsIEh0dHBJbnRlcmNlcHRvciwgSHR0cEludGVyY2VwdG9yRm4gfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtZXJnZU1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IHR5cGUgUHJvdmlkZUF1dGhvcml6YXRpb24gPSAoKSA9PiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHwgT2JzZXJ2YWJsZTxzdHJpbmcgfCBudWxsPjtcbmV4cG9ydCBjb25zdCBQUk9WSURFX0FVVEhPUklaQVRJT04gPSBuZXcgSW5qZWN0aW9uVG9rZW48UHJvdmlkZUF1dGhvcml6YXRpb24+KCdQUk9WSURFX0FVVEhPUklaQVRJT04nKTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEF1dGhvcml6YXRpb25JbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG5cbiAgcHJpdmF0ZSBnZXRBdXRoID0gaW5qZWN0KFBST1ZJREVfQVVUSE9SSVpBVElPTik7XG5cbiAgaW50ZXJjZXB0KHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcbiAgICBpZiAoIXJlcS51cmwuc3RhcnRzV2l0aCgnL2FwaScpKSByZXR1cm4gbmV4dC5oYW5kbGUocmVxKTtcblxuICAgIHJldHVybiBmcm9tKHRoaXMuZ2V0QXV0aCgpKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5waXBlKG1lcmdlTWFwKGlkVG9rZW4gPT4gbmV4dC5oYW5kbGUoaWRUb2tlbiA/IHRoaXMuZ2V0UmVxdWVzdFdpdGhUb2tlbihyZXEsIGlkVG9rZW4pIDogcmVxKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSZXF1ZXN0V2l0aFRva2VuKHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIHRva2VuOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gcmVxLmNsb25lKHsgc2V0SGVhZGVyczoge0F1dGhvcml6YXRpb246IHRva2VufSB9KTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgYXV0aG9yaXphdGlvbkludGVyY2VwdG9yOiBIdHRwSW50ZXJjZXB0b3JGbiA9IChyZXEsIG5leHQpID0+IHtcbiAgaWYgKCFyZXEudXJsLnN0YXJ0c1dpdGgoJy9hcGknKSkgcmV0dXJuIG5leHQocmVxKTtcbiAgY29uc3QgZ2V0QXV0aCA9IGluamVjdChQUk9WSURFX0FVVEhPUklaQVRJT04sIHsgb3B0aW9uYWw6IHRydWUgfSkgPz8gbnVsbDtcblxuICByZXR1cm4gZnJvbShnZXRBdXRoKCkpLnBpcGUoXG4gICAgdGFrZSgxKSxcbiAgICBtZXJnZU1hcCh0b2tlbiA9PiBuZXh0KHRva2VuID8gcmVxLmNsb25lKHsgc2V0SGVhZGVyczoge0F1dGhvcml6YXRpb246IHRva2VufSB9KSA6IHJlcSkpLFxuICApO1xufTtcbiJdfQ==
27
+ export function authorizationInterceptor(isAuthorizedRequest = req => req.url.startsWith('/api')) {
28
+ return (req, next) => {
29
+ if (!isAuthorizedRequest(req))
30
+ return next(req);
31
+ const getAuth = inject(AUTHORIZATION, { optional: true }) ?? null;
32
+ return from(getAuth()).pipe(take(1), mergeMap(token => next(token ? req.clone({ setHeaders: { Authorization: token } }) : req)));
33
+ };
34
+ }
35
+ ;
36
+ export function provideAuthorization(useFactory) {
37
+ return { provide: AUTHORIZATION, useFactory };
38
+ }
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXphdGlvbi5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvaW50ZXJjZXB0b3JzL2F1dGhvcml6YXRpb24vYXV0aG9yaXphdGlvbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBWSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0UsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUdoRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxjQUFjLENBQW1CLG1DQUFtQyxDQUFDLENBQUM7QUFFdkcsMERBQTBEO0FBRTFELE1BQU0sT0FBTyx3QkFBd0I7SUFEckM7UUFHVSxZQUFPLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBYXpDO0lBWEMsU0FBUyxDQUFDLEdBQXlCLEVBQUUsSUFBaUI7UUFDcEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUFFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV6RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxHQUF5QixFQUFFLEtBQWE7UUFDbEUsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUMsYUFBYSxFQUFFLEtBQUssRUFBQyxFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDOzhHQWRVLHdCQUF3QjtrSEFBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVOztBQWtCWCxNQUFNLFVBQVUsd0JBQXdCLENBQ3RDLHNCQUE4RCxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztJQUUvRixPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQ25CLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoRCxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsYUFBYSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDO1FBQ2xFLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUN6QixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ3pGLENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDO0FBQUEsQ0FBQztBQUVGLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxVQUFrQztJQUNyRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsQ0FBQztBQUNoRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBSZXF1ZXN0LCBIdHRwSGFuZGxlciwgSHR0cEV2ZW50LCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBJbnRlcmNlcHRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWVyZ2VNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCB0eXBlIEdldEF1dGhvcml6YXRpb24gPSAoKSA9PiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHwgT2JzZXJ2YWJsZTxzdHJpbmcgfCBudWxsPjtcbmV4cG9ydCBjb25zdCBBVVRIT1JJWkFUSU9OID0gbmV3IEluamVjdGlvblRva2VuPEdldEF1dGhvcml6YXRpb24+KCdbQG5nLWF0b21pYy9jb21tb25dIEFVVEhPUklaQVRJT04nKTtcblxuLyoqIEBkZXByZWNhdGVkIHVzZSBgYXV0aG9yaXphdGlvbkludGVyY2VwdG9yYCBpbnN0ZWFkLiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEF1dGhvcml6YXRpb25JbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG5cbiAgcHJpdmF0ZSBnZXRBdXRoID0gaW5qZWN0KEFVVEhPUklaQVRJT04pO1xuXG4gIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XG4gICAgaWYgKCFyZXEudXJsLnN0YXJ0c1dpdGgoJy9hcGknKSkgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSk7XG5cbiAgICByZXR1cm4gZnJvbSh0aGlzLmdldEF1dGgoKSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAucGlwZShtZXJnZU1hcChpZFRva2VuID0+IG5leHQuaGFuZGxlKGlkVG9rZW4gPyB0aGlzLmdldFJlcXVlc3RXaXRoVG9rZW4ocmVxLCBpZFRva2VuKSA6IHJlcSkpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UmVxdWVzdFdpdGhUb2tlbihyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCB0b2tlbjogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHJlcS5jbG9uZSh7IHNldEhlYWRlcnM6IHtBdXRob3JpemF0aW9uOiB0b2tlbn0gfSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGF1dGhvcml6YXRpb25JbnRlcmNlcHRvcihcbiAgaXNBdXRob3JpemVkUmVxdWVzdDogKHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4pID0+IGJvb2xlYW4gPSByZXEgPT4gcmVxLnVybC5zdGFydHNXaXRoKCcvYXBpJylcbik6IEh0dHBJbnRlcmNlcHRvckZuIHtcbiAgcmV0dXJuIChyZXEsIG5leHQpID0+IHtcbiAgICBpZiAoIWlzQXV0aG9yaXplZFJlcXVlc3QocmVxKSkgcmV0dXJuIG5leHQocmVxKTtcbiAgICBjb25zdCBnZXRBdXRoID0gaW5qZWN0KEFVVEhPUklaQVRJT04sIHsgb3B0aW9uYWw6IHRydWUgfSkgPz8gbnVsbDtcbiAgICByZXR1cm4gZnJvbShnZXRBdXRoKCkpLnBpcGUoXG4gICAgICB0YWtlKDEpLFxuICAgICAgbWVyZ2VNYXAodG9rZW4gPT4gbmV4dCh0b2tlbiA/IHJlcS5jbG9uZSh7IHNldEhlYWRlcnM6IHtBdXRob3JpemF0aW9uOiB0b2tlbn0gfSkgOiByZXEpKSxcbiAgICApO1xuICB9O1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVBdXRob3JpemF0aW9uKHVzZUZhY3Rvcnk6ICgpID0+IEdldEF1dGhvcml6YXRpb24pOiBQcm92aWRlciB7XG4gIHJldHVybiB7IHByb3ZpZGU6IEFVVEhPUklaQVRJT04sIHVzZUZhY3RvcnkgfTtcbn1cbiJdfQ==
@@ -1,10 +1,8 @@
1
- import { NgModule, inject } from '@angular/core';
1
+ import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { HTTP_INTERCEPTORS } from '@angular/common/http';
4
- import { AuthorizationInterceptor, PROVIDE_AUTHORIZATION } from '@ng-atomic/common/interceptors/authorization';
4
+ import { AuthorizationInterceptor } from '@ng-atomic/common/interceptors/authorization';
5
5
  import { ThrottleInterceptor } from '@ng-atomic/common/interceptors/throttle';
6
- import { AuthService } from '@ng-atomic/common/services/auth';
7
- import { map, of, switchMap } from 'rxjs';
8
6
  import * as i0 from "@angular/core";
9
7
  export class InterceptorsModule {
10
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: InterceptorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
@@ -20,7 +18,6 @@ export class InterceptorsModule {
20
18
  useClass: ThrottleInterceptor,
21
19
  multi: true
22
20
  },
23
- provideAuthorization()
24
21
  ], imports: [CommonModule] }); }
25
22
  }
26
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: InterceptorsModule, decorators: [{
@@ -41,14 +38,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
41
38
  useClass: ThrottleInterceptor,
42
39
  multi: true
43
40
  },
44
- provideAuthorization()
45
41
  ],
46
42
  }]
47
43
  }] });
48
- export function provideAuthorization() {
49
- return {
50
- provide: PROVIDE_AUTHORIZATION,
51
- useValue: () => inject(AuthService).auth$.pipe(switchMap(auth => auth ? auth.getIdToken() : of('')), map(token => `Bearer ${token}`)),
52
- };
53
- }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3JzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvaW50ZXJjZXB0b3JzL2ludGVyY2VwdG9ycy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQy9HLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBcUIxQyxNQUFNLE9BQU8sa0JBQWtCOzhHQUFsQixrQkFBa0I7K0dBQWxCLGtCQUFrQixZQWhCM0IsWUFBWTsrR0FnQkgsa0JBQWtCLGFBZGxCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsS0FBSyxFQUFFLElBQUk7YUFDWjtZQUNEO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRCxvQkFBb0IsRUFBRTtTQUN2QixZQWRDLFlBQVk7OzJGQWdCSCxrQkFBa0I7a0JBbkI5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsUUFBUSxFQUFFLHdCQUF3Qjs0QkFDbEMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsUUFBUSxFQUFFLG1CQUFtQjs0QkFDN0IsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Qsb0JBQW9CLEVBQUU7cUJBQ3ZCO2lCQUNGOztBQUdELE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTztRQUNMLE9BQU8sRUFBRSxxQkFBcUI7UUFDOUIsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUM1QyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3BELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLFVBQVUsS0FBSyxFQUFFLENBQUMsQ0FDaEM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIVFRQX0lOVEVSQ0VQVE9SUyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEF1dGhvcml6YXRpb25JbnRlcmNlcHRvciwgUFJPVklERV9BVVRIT1JJWkFUSU9OIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vaW50ZXJjZXB0b3JzL2F1dGhvcml6YXRpb24nO1xuaW1wb3J0IHsgVGhyb3R0bGVJbnRlcmNlcHRvciB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL2ludGVyY2VwdG9ycy90aHJvdHRsZSc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL2F1dGgnO1xuaW1wb3J0IHsgbWFwLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW10sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICB1c2VDbGFzczogQXV0aG9yaXphdGlvbkludGVyY2VwdG9yLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLFxuICAgICAgdXNlQ2xhc3M6IFRocm90dGxlSW50ZXJjZXB0b3IsXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH0sXG4gICAgcHJvdmlkZUF1dGhvcml6YXRpb24oKVxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBJbnRlcmNlcHRvcnNNb2R1bGUgeyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlQXV0aG9yaXphdGlvbigpIHtcbiAgcmV0dXJuIHtcbiAgICBwcm92aWRlOiBQUk9WSURFX0FVVEhPUklaQVRJT04sXG4gICAgdXNlVmFsdWU6ICgpID0+IGluamVjdChBdXRoU2VydmljZSkuYXV0aCQucGlwZShcbiAgICAgIHN3aXRjaE1hcChhdXRoID0+IGF1dGggPyBhdXRoLmdldElkVG9rZW4oKSA6IG9mKCcnKSksXG4gICAgICBtYXAodG9rZW4gPT4gYEJlYXJlciAke3Rva2VufWApLFxuICAgICksXG4gIH07XG59XG4iXX0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3JzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvaW50ZXJjZXB0b3JzL2ludGVyY2VwdG9ycy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDeEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7O0FBb0I5RSxNQUFNLE9BQU8sa0JBQWtCOzhHQUFsQixrQkFBa0I7K0dBQWxCLGtCQUFrQixZQWYzQixZQUFZOytHQWVILGtCQUFrQixhQWJsQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsWUFiQyxZQUFZOzsyRkFlSCxrQkFBa0I7a0JBbEI5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsUUFBUSxFQUFFLHdCQUF3Qjs0QkFDbEMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsUUFBUSxFQUFFLG1CQUFtQjs0QkFDN0IsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEhUVFBfSU5URVJDRVBUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQXV0aG9yaXphdGlvbkludGVyY2VwdG9yIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vaW50ZXJjZXB0b3JzL2F1dGhvcml6YXRpb24nO1xuaW1wb3J0IHsgVGhyb3R0bGVJbnRlcmNlcHRvciB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL2ludGVyY2VwdG9ycy90aHJvdHRsZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW10sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICB1c2VDbGFzczogQXV0aG9yaXphdGlvbkludGVyY2VwdG9yLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLFxuICAgICAgdXNlQ2xhc3M6IFRocm90dGxlSW50ZXJjZXB0b3IsXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEludGVyY2VwdG9yc01vZHVsZSB7IH1cbiJdfQ==
@@ -3,10 +3,11 @@ import { InjectionToken, inject, Injectable } from '@angular/core';
3
3
  import { from } from 'rxjs';
4
4
  import { take, mergeMap } from 'rxjs/operators';
5
5
 
6
- const PROVIDE_AUTHORIZATION = new InjectionToken('PROVIDE_AUTHORIZATION');
6
+ const AUTHORIZATION = new InjectionToken('[@ng-atomic/common] AUTHORIZATION');
7
+ /** @deprecated use `authorizationInterceptor` instead. */
7
8
  class AuthorizationInterceptor {
8
9
  constructor() {
9
- this.getAuth = inject(PROVIDE_AUTHORIZATION);
10
+ this.getAuth = inject(AUTHORIZATION);
10
11
  }
11
12
  intercept(req, next) {
12
13
  if (!req.url.startsWith('/api'))
@@ -24,16 +25,22 @@ class AuthorizationInterceptor {
24
25
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: AuthorizationInterceptor, decorators: [{
25
26
  type: Injectable
26
27
  }] });
27
- const authorizationInterceptor = (req, next) => {
28
- if (!req.url.startsWith('/api'))
29
- return next(req);
30
- const getAuth = inject(PROVIDE_AUTHORIZATION, { optional: true }) ?? null;
31
- return from(getAuth()).pipe(take(1), mergeMap(token => next(token ? req.clone({ setHeaders: { Authorization: token } }) : req)));
32
- };
28
+ function authorizationInterceptor(isAuthorizedRequest = req => req.url.startsWith('/api')) {
29
+ return (req, next) => {
30
+ if (!isAuthorizedRequest(req))
31
+ return next(req);
32
+ const getAuth = inject(AUTHORIZATION, { optional: true }) ?? null;
33
+ return from(getAuth()).pipe(take(1), mergeMap(token => next(token ? req.clone({ setHeaders: { Authorization: token } }) : req)));
34
+ };
35
+ }
36
+ ;
37
+ function provideAuthorization(useFactory) {
38
+ return { provide: AUTHORIZATION, useFactory };
39
+ }
33
40
 
34
41
  /**
35
42
  * Generated bundle index. Do not edit.
36
43
  */
37
44
 
38
- export { AuthorizationInterceptor, PROVIDE_AUTHORIZATION, authorizationInterceptor };
45
+ export { AUTHORIZATION, AuthorizationInterceptor, authorizationInterceptor, provideAuthorization };
39
46
  //# sourceMappingURL=ng-atomic-common-interceptors-authorization.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-common-interceptors-authorization.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/interceptors/authorization/authorization.interceptor.ts","../../../../../packages/@ng-atomic/common/src/lib/interceptors/authorization/ng-atomic-common-interceptors-authorization.ts"],"sourcesContent":["import { Injectable, InjectionToken, inject } from '@angular/core';\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor, HttpInterceptorFn } from '@angular/common/http';\nimport { from, Observable } from 'rxjs';\nimport { mergeMap, take } from 'rxjs/operators';\n\nexport type ProvideAuthorization = () => Promise<string | null> | Observable<string | null>;\nexport const PROVIDE_AUTHORIZATION = new InjectionToken<ProvideAuthorization>('PROVIDE_AUTHORIZATION');\n\n@Injectable()\nexport class AuthorizationInterceptor implements HttpInterceptor {\n\n private getAuth = inject(PROVIDE_AUTHORIZATION);\n\n intercept(req: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>> {\n if (!req.url.startsWith('/api')) return next.handle(req);\n\n return from(this.getAuth())\n .pipe(take(1))\n .pipe(mergeMap(idToken => next.handle(idToken ? this.getRequestWithToken(req, idToken) : req)));\n }\n\n private getRequestWithToken(req: HttpRequest<unknown>, token: string) {\n return req.clone({ setHeaders: {Authorization: token} });\n }\n}\n\nexport const authorizationInterceptor: HttpInterceptorFn = (req, next) => {\n if (!req.url.startsWith('/api')) return next(req);\n const getAuth = inject(PROVIDE_AUTHORIZATION, { optional: true }) ?? null;\n\n return from(getAuth()).pipe(\n take(1),\n mergeMap(token => next(token ? req.clone({ setHeaders: {Authorization: token} }) : req)),\n );\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAMa,qBAAqB,GAAG,IAAI,cAAc,CAAuB,uBAAuB,EAAE;MAG1F,wBAAwB,CAAA;AADrC,IAAA,WAAA,GAAA;AAGU,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAajD,KAAA;IAXC,SAAS,CAAC,GAAyB,EAAE,IAAiB,EAAA;QACpD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;AAAE,YAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAEzD,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;AACxB,aAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,aAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;KACnG;IAEO,mBAAmB,CAAC,GAAyB,EAAE,KAAa,EAAA;AAClE,QAAA,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,EAAC,aAAa,EAAE,KAAK,EAAC,EAAE,CAAC,CAAC;KAC1D;8GAdU,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAAxB,wBAAwB,EAAA,CAAA,CAAA,EAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBADpC,UAAU;;MAkBE,wBAAwB,GAAsB,CAAC,GAAG,EAAE,IAAI,KAAI;IACvE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;AAAE,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,IAAA,MAAM,OAAO,GAAG,MAAM,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC;IAE1E,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CACzB,IAAI,CAAC,CAAC,CAAC,EACP,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,EAAC,aAAa,EAAE,KAAK,EAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CACzF,CAAC;AACJ;;AClCA;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-atomic-common-interceptors-authorization.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/interceptors/authorization/authorization.interceptor.ts","../../../../../packages/@ng-atomic/common/src/lib/interceptors/authorization/ng-atomic-common-interceptors-authorization.ts"],"sourcesContent":["import { Injectable, InjectionToken, Provider, inject } from '@angular/core';\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor, HttpInterceptorFn } from '@angular/common/http';\nimport { from, Observable } from 'rxjs';\nimport { mergeMap, take } from 'rxjs/operators';\n\nexport type GetAuthorization = () => Promise<string | null> | Observable<string | null>;\nexport const AUTHORIZATION = new InjectionToken<GetAuthorization>('[@ng-atomic/common] AUTHORIZATION');\n\n/** @deprecated use `authorizationInterceptor` instead. */\n@Injectable()\nexport class AuthorizationInterceptor implements HttpInterceptor {\n\n private getAuth = inject(AUTHORIZATION);\n\n intercept(req: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>> {\n if (!req.url.startsWith('/api')) return next.handle(req);\n\n return from(this.getAuth())\n .pipe(take(1))\n .pipe(mergeMap(idToken => next.handle(idToken ? this.getRequestWithToken(req, idToken) : req)));\n }\n\n private getRequestWithToken(req: HttpRequest<unknown>, token: string) {\n return req.clone({ setHeaders: {Authorization: token} });\n }\n}\n\nexport function authorizationInterceptor(\n isAuthorizedRequest: (req: HttpRequest<unknown>) => boolean = req => req.url.startsWith('/api')\n): HttpInterceptorFn {\n return (req, next) => {\n if (!isAuthorizedRequest(req)) return next(req);\n const getAuth = inject(AUTHORIZATION, { optional: true }) ?? null;\n return from(getAuth()).pipe(\n take(1),\n mergeMap(token => next(token ? req.clone({ setHeaders: {Authorization: token} }) : req)),\n );\n };\n};\n\nexport function provideAuthorization(useFactory: () => GetAuthorization): Provider {\n return { provide: AUTHORIZATION, useFactory };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAMa,aAAa,GAAG,IAAI,cAAc,CAAmB,mCAAmC,EAAE;AAEvG;MAEa,wBAAwB,CAAA;AADrC,IAAA,WAAA,GAAA;AAGU,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;AAazC,KAAA;IAXC,SAAS,CAAC,GAAyB,EAAE,IAAiB,EAAA;QACpD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;AAAE,YAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAEzD,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;AACxB,aAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,aAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;KACnG;IAEO,mBAAmB,CAAC,GAAyB,EAAE,KAAa,EAAA;AAClE,QAAA,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,EAAC,aAAa,EAAE,KAAK,EAAC,EAAE,CAAC,CAAC;KAC1D;8GAdU,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAAxB,wBAAwB,EAAA,CAAA,CAAA,EAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBADpC,UAAU;;AAkBK,SAAA,wBAAwB,CACtC,mBAAA,GAA8D,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAA;AAE/F,IAAA,OAAO,CAAC,GAAG,EAAE,IAAI,KAAI;AACnB,QAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC;AAAE,YAAA,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC;QAClE,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CACzB,IAAI,CAAC,CAAC,CAAC,EACP,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,EAAC,aAAa,EAAE,KAAK,EAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CACzF,CAAC;AACJ,KAAC,CAAC;AACJ,CAAC;AAAA,CAAC;AAEI,SAAU,oBAAoB,CAAC,UAAkC,EAAA;AACrE,IAAA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AAChD;;AC1CA;;AAEG;;;;"}
@@ -1,11 +1,9 @@
1
1
  import * as i0 from '@angular/core';
2
- import { NgModule, inject } from '@angular/core';
2
+ import { NgModule } from '@angular/core';
3
3
  import { CommonModule } from '@angular/common';
4
4
  import { HTTP_INTERCEPTORS } from '@angular/common/http';
5
- import { AuthorizationInterceptor, PROVIDE_AUTHORIZATION } from '@ng-atomic/common/interceptors/authorization';
5
+ import { AuthorizationInterceptor } from '@ng-atomic/common/interceptors/authorization';
6
6
  import { ThrottleInterceptor } from '@ng-atomic/common/interceptors/throttle';
7
- import { AuthService } from '@ng-atomic/common/services/auth';
8
- import { switchMap, of, map } from 'rxjs';
9
7
 
10
8
  class InterceptorsModule {
11
9
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: InterceptorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
@@ -21,7 +19,6 @@ class InterceptorsModule {
21
19
  useClass: ThrottleInterceptor,
22
20
  multi: true
23
21
  },
24
- provideAuthorization()
25
22
  ], imports: [CommonModule] }); }
26
23
  }
27
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: InterceptorsModule, decorators: [{
@@ -42,20 +39,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
42
39
  useClass: ThrottleInterceptor,
43
40
  multi: true
44
41
  },
45
- provideAuthorization()
46
42
  ],
47
43
  }]
48
44
  }] });
49
- function provideAuthorization() {
50
- return {
51
- provide: PROVIDE_AUTHORIZATION,
52
- useValue: () => inject(AuthService).auth$.pipe(switchMap(auth => auth ? auth.getIdToken() : of('')), map(token => `Bearer ${token}`)),
53
- };
54
- }
55
45
 
56
46
  /**
57
47
  * Generated bundle index. Do not edit.
58
48
  */
59
49
 
60
- export { InterceptorsModule, provideAuthorization };
50
+ export { InterceptorsModule };
61
51
  //# sourceMappingURL=ng-atomic-common-interceptors.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-common-interceptors.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/interceptors/interceptors.module.ts","../../../../../packages/@ng-atomic/common/src/lib/interceptors/ng-atomic-common-interceptors.ts"],"sourcesContent":["import { NgModule, inject } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { AuthorizationInterceptor, PROVIDE_AUTHORIZATION } from '@ng-atomic/common/interceptors/authorization';\nimport { ThrottleInterceptor } from '@ng-atomic/common/interceptors/throttle';\nimport { AuthService } from '@ng-atomic/common/services/auth';\nimport { map, of, switchMap } from 'rxjs';\n\n@NgModule({\n declarations: [],\n imports: [\n CommonModule\n ],\n providers: [\n {\n provide: HTTP_INTERCEPTORS,\n useClass: AuthorizationInterceptor,\n multi: true\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ThrottleInterceptor,\n multi: true\n },\n provideAuthorization()\n ],\n})\nexport class InterceptorsModule { }\n\nexport function provideAuthorization() {\n return {\n provide: PROVIDE_AUTHORIZATION,\n useValue: () => inject(AuthService).auth$.pipe(\n switchMap(auth => auth ? auth.getIdToken() : of('')),\n map(token => `Bearer ${token}`),\n ),\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;MA2Ba,kBAAkB,CAAA;8GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAhB3B,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;AAgBH,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,EAdlB,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,QAAQ,EAAE,wBAAwB;AAClC,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACD,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,QAAQ,EAAE,mBAAmB;AAC7B,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACD,YAAA,oBAAoB,EAAE;AACvB,SAAA,EAAA,OAAA,EAAA,CAdC,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAgBH,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAnB9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;AAChB,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,QAAQ,EAAE,wBAAwB;AAClC,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,QAAQ,EAAE,mBAAmB;AAC7B,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACD,wBAAA,oBAAoB,EAAE;AACvB,qBAAA;AACF,iBAAA,CAAA;;SAGe,oBAAoB,GAAA;IAClC,OAAO;AACL,QAAA,OAAO,EAAE,qBAAqB;QAC9B,QAAQ,EAAE,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,IAAI,CAC5C,SAAS,CAAC,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EACpD,GAAG,CAAC,KAAK,IAAI,CAAU,OAAA,EAAA,KAAK,CAAE,CAAA,CAAC,CAChC;KACF,CAAC;AACJ;;ACrCA;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-atomic-common-interceptors.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/interceptors/interceptors.module.ts","../../../../../packages/@ng-atomic/common/src/lib/interceptors/ng-atomic-common-interceptors.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { AuthorizationInterceptor } from '@ng-atomic/common/interceptors/authorization';\nimport { ThrottleInterceptor } from '@ng-atomic/common/interceptors/throttle';\n\n@NgModule({\n declarations: [],\n imports: [\n CommonModule\n ],\n providers: [\n {\n provide: HTTP_INTERCEPTORS,\n useClass: AuthorizationInterceptor,\n multi: true\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ThrottleInterceptor,\n multi: true\n },\n ],\n})\nexport class InterceptorsModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAwBa,kBAAkB,CAAA;8GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAf3B,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;AAeH,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,EAblB,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,QAAQ,EAAE,wBAAwB;AAClC,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACD,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,QAAQ,EAAE,mBAAmB;AAC7B,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACF,SAAA,EAAA,OAAA,EAAA,CAbC,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAeH,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAlB9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;AAChB,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,QAAQ,EAAE,wBAAwB;AAClC,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,QAAQ,EAAE,mBAAmB;AAC7B,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAA;;;ACvBD;;AAEG;;;;"}
@@ -1,9 +1,10 @@
1
- import { InjectionToken } from '@angular/core';
1
+ import { InjectionToken, Provider } from '@angular/core';
2
2
  import { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor, HttpInterceptorFn } from '@angular/common/http';
3
3
  import { Observable } from 'rxjs';
4
4
  import * as i0 from "@angular/core";
5
- export type ProvideAuthorization = () => Promise<string | null> | Observable<string | null>;
6
- export declare const PROVIDE_AUTHORIZATION: InjectionToken<ProvideAuthorization>;
5
+ export type GetAuthorization = () => Promise<string | null> | Observable<string | null>;
6
+ export declare const AUTHORIZATION: InjectionToken<GetAuthorization>;
7
+ /** @deprecated use `authorizationInterceptor` instead. */
7
8
  export declare class AuthorizationInterceptor implements HttpInterceptor {
8
9
  private getAuth;
9
10
  intercept(req: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>>;
@@ -11,4 +12,5 @@ export declare class AuthorizationInterceptor implements HttpInterceptor {
11
12
  static ɵfac: i0.ɵɵFactoryDeclaration<AuthorizationInterceptor, never>;
12
13
  static ɵprov: i0.ɵɵInjectableDeclaration<AuthorizationInterceptor>;
13
14
  }
14
- export declare const authorizationInterceptor: HttpInterceptorFn;
15
+ export declare function authorizationInterceptor(isAuthorizedRequest?: (req: HttpRequest<unknown>) => boolean): HttpInterceptorFn;
16
+ export declare function provideAuthorization(useFactory: () => GetAuthorization): Provider;
@@ -5,7 +5,3 @@ export declare class InterceptorsModule {
5
5
  static ɵmod: i0.ɵɵNgModuleDeclaration<InterceptorsModule, never, [typeof i1.CommonModule], never>;
6
6
  static ɵinj: i0.ɵɵInjectorDeclaration<InterceptorsModule>;
7
7
  }
8
- export declare function provideAuthorization(): {
9
- provide: import("@angular/core").InjectionToken<import("@ng-atomic/common/interceptors/authorization").ProvideAuthorization>;
10
- useValue: () => import("rxjs").Observable<string>;
11
- };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ng-atomic/common",
3
- "version": "18.6.0",
3
+ "version": "18.8.0",
4
4
  "license": "MIT",
5
5
  "peerDependencies": {
6
6
  "@angular/cdk": "^18.0.0",
@@ -11,7 +11,7 @@
11
11
  "@angular/material": "^18.0.0",
12
12
  "@angular/router": "^18.0.0",
13
13
  "@ngrx/component-store": "^18.0.0",
14
- "@nx-ddd/core": "18.6.0",
14
+ "@nx-ddd/core": "18.8.0",
15
15
  "dayjs": "1.11.12",
16
16
  "flat": "^6.0.0",
17
17
  "lodash-es": "^4.17.15",
@@ -64,18 +64,18 @@
64
64
  "esm": "./esm2022/directives/ios-safari-scroll-buggyfill/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs",
65
65
  "default": "./fesm2022/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs"
66
66
  },
67
- "./interceptors/authorization": {
68
- "types": "./interceptors/authorization/index.d.ts",
69
- "esm2022": "./esm2022/interceptors/authorization/ng-atomic-common-interceptors-authorization.mjs",
70
- "esm": "./esm2022/interceptors/authorization/ng-atomic-common-interceptors-authorization.mjs",
71
- "default": "./fesm2022/ng-atomic-common-interceptors-authorization.mjs"
72
- },
73
67
  "./interceptors/throttle": {
74
68
  "types": "./interceptors/throttle/index.d.ts",
75
69
  "esm2022": "./esm2022/interceptors/throttle/ng-atomic-common-interceptors-throttle.mjs",
76
70
  "esm": "./esm2022/interceptors/throttle/ng-atomic-common-interceptors-throttle.mjs",
77
71
  "default": "./fesm2022/ng-atomic-common-interceptors-throttle.mjs"
78
72
  },
73
+ "./interceptors/authorization": {
74
+ "types": "./interceptors/authorization/index.d.ts",
75
+ "esm2022": "./esm2022/interceptors/authorization/ng-atomic-common-interceptors-authorization.mjs",
76
+ "esm": "./esm2022/interceptors/authorization/ng-atomic-common-interceptors-authorization.mjs",
77
+ "default": "./fesm2022/ng-atomic-common-interceptors-authorization.mjs"
78
+ },
79
79
  "./interceptors/token": {
80
80
  "types": "./interceptors/token/index.d.ts",
81
81
  "esm2022": "./esm2022/interceptors/token/ng-atomic-common-interceptors-token.mjs",
@@ -142,18 +142,18 @@
142
142
  "esm": "./esm2022/pipes/keys/ng-atomic-common-pipes-keys.mjs",
143
143
  "default": "./fesm2022/ng-atomic-common-pipes-keys.mjs"
144
144
  },
145
- "./pipes/map": {
146
- "types": "./pipes/map/index.d.ts",
147
- "esm2022": "./esm2022/pipes/map/ng-atomic-common-pipes-map.mjs",
148
- "esm": "./esm2022/pipes/map/ng-atomic-common-pipes-map.mjs",
149
- "default": "./fesm2022/ng-atomic-common-pipes-map.mjs"
150
- },
151
145
  "./pipes/page": {
152
146
  "types": "./pipes/page/index.d.ts",
153
147
  "esm2022": "./esm2022/pipes/page/ng-atomic-common-pipes-page.mjs",
154
148
  "esm": "./esm2022/pipes/page/ng-atomic-common-pipes-page.mjs",
155
149
  "default": "./fesm2022/ng-atomic-common-pipes-page.mjs"
156
150
  },
151
+ "./pipes/map": {
152
+ "types": "./pipes/map/index.d.ts",
153
+ "esm2022": "./esm2022/pipes/map/ng-atomic-common-pipes-map.mjs",
154
+ "esm": "./esm2022/pipes/map/ng-atomic-common-pipes-map.mjs",
155
+ "default": "./fesm2022/ng-atomic-common-pipes-map.mjs"
156
+ },
157
157
  "./pipes/pagination": {
158
158
  "types": "./pipes/pagination/index.d.ts",
159
159
  "esm2022": "./esm2022/pipes/pagination/ng-atomic-common-pipes-pagination.mjs",