@dontdrinkandroot/ngx-extensions 0.3.1 → 0.4.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.
Files changed (56) hide show
  1. package/{esm2020 → esm2022}/src/cookie/cookie.service.mjs +4 -4
  2. package/esm2022/src/ddr-extensions.module.mjs +67 -0
  3. package/{esm2020 → esm2022}/src/http/redirect-to-login-interceptor.service.mjs +4 -4
  4. package/{esm2020 → esm2022}/src/http/with-credentials-interceptor.service.mjs +4 -4
  5. package/{esm2020 → esm2022}/src/image/lazy-image.directive.mjs +4 -4
  6. package/{esm2020 → esm2022}/src/jwt/jwt-interceptor.service.mjs +4 -4
  7. package/{esm2020 → esm2022}/src/jwt/jwt-refresh-token-interceptor.service.mjs +4 -4
  8. package/esm2022/src/jwt/jwt.service.mjs +81 -0
  9. package/esm2022/src/logger/console-logger.service.mjs +43 -0
  10. package/esm2022/src/logger/logger.service.mjs +9 -0
  11. package/{esm2020 → esm2022}/src/oauth/oauth2-access-token-interceptor.service.mjs +4 -4
  12. package/esm2022/src/oauth/oauth2-error.mjs +8 -0
  13. package/{esm2020 → esm2022}/src/oauth/oauth2-refresh-token-interceptor.service.mjs +4 -4
  14. package/{esm2020 → esm2022}/src/oauth/oauth2.module.mjs +5 -5
  15. package/esm2022/src/oauth/oauth2.service.mjs +125 -0
  16. package/{esm2020 → esm2022}/src/oauth/redirect-to-oauth2-login-interceptor.service.mjs +4 -4
  17. package/{esm2020 → esm2022}/src/scroll/bottom-hit.directive.mjs +4 -4
  18. package/{esm2020 → esm2022}/src/scroll/scroll.service.mjs +4 -4
  19. package/esm2022/src/storage/local-storage.service.mjs +53 -0
  20. package/{esm2020 → esm2022}/src/visibility/visibility.service.mjs +4 -4
  21. package/{fesm2020 → fesm2022}/dontdrinkandroot-ngx-extensions.mjs +109 -101
  22. package/fesm2022/dontdrinkandroot-ngx-extensions.mjs.map +1 -0
  23. package/package.json +9 -15
  24. package/src/image/lazy-image.directive.d.ts +1 -1
  25. package/src/jwt/jwt.service.d.ts +3 -1
  26. package/src/logger/console-logger.service.d.ts +8 -8
  27. package/src/logger/logger.service.d.ts +5 -5
  28. package/src/oauth/oauth2.service.d.ts +3 -1
  29. package/src/storage/local-storage.service.d.ts +4 -4
  30. package/src/visibility/visibility.service.d.ts +1 -1
  31. package/esm2020/src/ddr-extensions.module.mjs +0 -67
  32. package/esm2020/src/jwt/jwt.service.mjs +0 -79
  33. package/esm2020/src/logger/console-logger.service.mjs +0 -43
  34. package/esm2020/src/logger/logger.service.mjs +0 -9
  35. package/esm2020/src/oauth/oauth2-error.mjs +0 -8
  36. package/esm2020/src/oauth/oauth2.service.mjs +0 -119
  37. package/esm2020/src/storage/local-storage.service.mjs +0 -53
  38. package/fesm2015/dontdrinkandroot-ngx-extensions.mjs +0 -1126
  39. package/fesm2015/dontdrinkandroot-ngx-extensions.mjs.map +0 -1
  40. package/fesm2020/dontdrinkandroot-ngx-extensions.mjs.map +0 -1
  41. /package/{esm2020 → esm2022}/dontdrinkandroot-ngx-extensions.mjs +0 -0
  42. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  43. /package/{esm2020 → esm2022}/src/http/url-info.mjs +0 -0
  44. /package/{esm2020 → esm2022}/src/jwt/jwt-token-response.mjs +0 -0
  45. /package/{esm2020 → esm2022}/src/methoddecorator/debounce.mjs +0 -0
  46. /package/{esm2020 → esm2022}/src/methoddecorator/limit.mjs +0 -0
  47. /package/{esm2020 → esm2022}/src/oauth/json-web-token.mjs +0 -0
  48. /package/{esm2020 → esm2022}/src/oauth/oauth2-config.mjs +0 -0
  49. /package/{esm2020 → esm2022}/src/oauth/token-response.mjs +0 -0
  50. /package/{esm2020 → esm2022}/src/storage/storage.service.mjs +0 -0
  51. /package/{esm2020 → esm2022}/src/typeguard/is-non-null.mjs +0 -0
  52. /package/{esm2020 → esm2022}/src/util/collection-utils.mjs +0 -0
  53. /package/{esm2020 → esm2022}/src/util/number-utils.mjs +0 -0
  54. /package/{esm2020 → esm2022}/src/util/object-utils.mjs +0 -0
  55. /package/{esm2020 → esm2022}/src/util/string-utils.mjs +0 -0
  56. /package/{esm2020 → esm2022}/src/util/type-utils.mjs +0 -0
@@ -170,16 +170,16 @@ class LazyImageDirective {
170
170
  isHidden(element) {
171
171
  return window.getComputedStyle(element).display === 'none';
172
172
  }
173
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: LazyImageDirective, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
174
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.3", type: LazyImageDirective, selector: "[ddrLazyImage]", inputs: { src: ["ddrLazyImage", "src"], objectFit: "objectFit", offset: "offset" }, host: { listeners: { "window:resize": "windowResized($event)", "window:scroll": "windowScroll($event)" }, properties: { "src": "this.hostSrc", "style.width.px": "this.hostStyleWidthPx", "style.height.px": "this.hostStyleHeightPx", "style.object-fit": "this.hostStyleObjectFit" } }, usesOnChanges: true, ngImport: i0 }); }
173
175
  }
174
- LazyImageDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: LazyImageDirective, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
175
- LazyImageDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.3", type: LazyImageDirective, selector: "[ddrLazyImage]", inputs: { src: ["ddrLazyImage", "src"], objectFit: "objectFit", offset: "offset" }, host: { listeners: { "window:resize": "windowResized($event)", "window:scroll": "windowScroll($event)" }, properties: { "src": "this.hostSrc", "style.width.px": "this.hostStyleWidthPx", "style.height.px": "this.hostStyleHeightPx", "style.object-fit": "this.hostStyleObjectFit" } }, usesOnChanges: true, ngImport: i0 });
176
176
  __decorate([
177
177
  Debounce()
178
178
  ], LazyImageDirective.prototype, "windowResized", null);
179
179
  __decorate([
180
180
  Limit()
181
181
  ], LazyImageDirective.prototype, "windowScroll", null);
182
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: LazyImageDirective, decorators: [{
182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: LazyImageDirective, decorators: [{
183
183
  type: Directive,
184
184
  args: [{ selector: '[ddrLazyImage]' }]
185
185
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { src: [{
@@ -239,16 +239,16 @@ class BottomHitDirective {
239
239
  this.onElementBottomHit.emit();
240
240
  }
241
241
  }
242
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: BottomHitDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
243
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.3", type: BottomHitDirective, selector: "[ddrBottomHit]", outputs: { onWindowBottomHit: "onWindowBottomHit", onElementBottomHit: "onElementBottomHit" }, host: { listeners: { "scroll": "scrolled($event)", "window:scroll": "windowScrolled($event)" } }, ngImport: i0 }); }
242
244
  }
243
- BottomHitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: BottomHitDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
244
- BottomHitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.3", type: BottomHitDirective, selector: "[ddrBottomHit]", outputs: { onWindowBottomHit: "onWindowBottomHit", onElementBottomHit: "onElementBottomHit" }, host: { listeners: { "scroll": "scrolled($event)", "window:scroll": "windowScrolled($event)" } }, ngImport: i0 });
245
245
  __decorate([
246
246
  Limit()
247
247
  ], BottomHitDirective.prototype, "scrolled", null);
248
248
  __decorate([
249
249
  Limit()
250
250
  ], BottomHitDirective.prototype, "windowScrolled", null);
251
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: BottomHitDirective, decorators: [{
251
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: BottomHitDirective, decorators: [{
252
252
  type: Directive,
253
253
  args: [{
254
254
  selector: '[ddrBottomHit]'
@@ -265,7 +265,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImpor
265
265
  args: ['window:scroll', ['$event']]
266
266
  }] } });
267
267
 
268
- class LoggerService {
268
+ class Logger {
269
269
  constructor() {
270
270
  this.debugEnabled = false;
271
271
  this.infoEnabled = true;
@@ -274,43 +274,43 @@ class LoggerService {
274
274
  }
275
275
  }
276
276
 
277
- class ConsoleLoggerService extends LoggerService {
277
+ class ConsoleLogger extends Logger {
278
278
  /**
279
279
  * @override
280
280
  */
281
- debug(message, ...optionalParams) {
281
+ debug(...data) {
282
282
  if (this.debugEnabled) {
283
- console.debug(message, optionalParams);
283
+ console.debug(...data);
284
284
  }
285
285
  }
286
286
  /**
287
287
  * @override
288
288
  */
289
- info(message, ...optionalParams) {
289
+ info(...data) {
290
290
  if (this.infoEnabled) {
291
- console.info(message, optionalParams);
291
+ console.info(...data);
292
292
  }
293
293
  }
294
294
  /**
295
295
  * @override
296
296
  */
297
- warn(message, ...optionalParams) {
297
+ warn(...data) {
298
298
  if (this.warnEnabled) {
299
- console.warn(message, optionalParams);
299
+ console.warn(...data);
300
300
  }
301
301
  }
302
302
  /**
303
303
  * @override
304
304
  */
305
- error(message, ...optionalParams) {
305
+ error(...data) {
306
306
  if (this.errorEnabled) {
307
- console.error(message, optionalParams);
307
+ console.error(...data);
308
308
  }
309
309
  }
310
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ConsoleLogger, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
311
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ConsoleLogger }); }
310
312
  }
311
- ConsoleLoggerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: ConsoleLoggerService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
312
- ConsoleLoggerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: ConsoleLoggerService });
313
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: ConsoleLoggerService, decorators: [{
313
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ConsoleLogger, decorators: [{
314
314
  type: Injectable
315
315
  }] });
316
316
 
@@ -357,43 +357,43 @@ class LocalStorageService extends StorageService {
357
357
  getFullKey(key) {
358
358
  return this.storagePrefix + '.' + key;
359
359
  }
360
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: LocalStorageService, deps: [{ token: DDR_STORAGE_PREFIX }, { token: Logger }], target: i0.ɵɵFactoryTarget.Injectable }); }
361
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: LocalStorageService }); }
360
362
  }
361
- LocalStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: LocalStorageService, deps: [{ token: DDR_STORAGE_PREFIX }, { token: LoggerService }], target: i0.ɵɵFactoryTarget.Injectable });
362
- LocalStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: LocalStorageService });
363
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: LocalStorageService, decorators: [{
363
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: LocalStorageService, decorators: [{
364
364
  type: Injectable
365
365
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
366
366
  type: Inject,
367
367
  args: [DDR_STORAGE_PREFIX]
368
- }] }, { type: LoggerService }]; } });
368
+ }] }, { type: Logger }]; } });
369
369
 
370
370
  const DDR_JWT_REFRESH_TOKEN_URL = new InjectionToken('DDR_JWT_REFRESH_TOKEN_URL');
371
371
  const DDR_LOGIN_PATH = new InjectionToken('DDR_LOGIN_PATH');
372
372
  class DdrExtensionsModule {
373
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DdrExtensionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
374
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: DdrExtensionsModule, declarations: [LazyImageDirective,
375
+ BottomHitDirective], exports: [LazyImageDirective,
376
+ BottomHitDirective] }); }
377
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DdrExtensionsModule, providers: [
378
+ {
379
+ provide: DDR_LOGIN_PATH,
380
+ useValue: '/login'
381
+ },
382
+ {
383
+ provide: Logger,
384
+ useClass: ConsoleLogger
385
+ },
386
+ {
387
+ provide: DDR_STORAGE_PREFIX,
388
+ useValue: 'ddr'
389
+ },
390
+ {
391
+ provide: StorageService,
392
+ useClass: LocalStorageService
393
+ },
394
+ ] }); }
373
395
  }
374
- DdrExtensionsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: DdrExtensionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
375
- DdrExtensionsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.3", ngImport: i0, type: DdrExtensionsModule, declarations: [LazyImageDirective,
376
- BottomHitDirective], exports: [LazyImageDirective,
377
- BottomHitDirective] });
378
- DdrExtensionsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: DdrExtensionsModule, providers: [
379
- {
380
- provide: DDR_LOGIN_PATH,
381
- useValue: '/login'
382
- },
383
- {
384
- provide: LoggerService,
385
- useClass: ConsoleLoggerService
386
- },
387
- {
388
- provide: DDR_STORAGE_PREFIX,
389
- useValue: 'ddr'
390
- },
391
- {
392
- provide: StorageService,
393
- useClass: LocalStorageService
394
- },
395
- ] });
396
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: DdrExtensionsModule, decorators: [{
396
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DdrExtensionsModule, decorators: [{
397
397
  type: NgModule,
398
398
  args: [{
399
399
  declarations: [
@@ -407,8 +407,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImpor
407
407
  useValue: '/login'
408
408
  },
409
409
  {
410
- provide: LoggerService,
411
- useClass: ConsoleLoggerService
410
+ provide: Logger,
411
+ useClass: ConsoleLogger
412
412
  },
413
413
  {
414
414
  provide: DDR_STORAGE_PREFIX,
@@ -427,6 +427,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImpor
427
427
  }] });
428
428
 
429
429
  // This service is based on the `ng2-cookies` package which sadly is not a service and does
430
+ // not use `DOCUMENT` injection and therefore doesn't work well with AoT production builds.
431
+ // Package: https://github.com/BCJTI/ng2-cookies
430
432
  class CookieService {
431
433
  constructor(document) {
432
434
  this.document = document;
@@ -543,10 +545,10 @@ class CookieService {
543
545
  const escapedName = name.replace(/([\[\]{}()|=;+?,.*^$])/ig, '\\$1');
544
546
  return new RegExp('(?:^' + escapedName + '|;\\s*' + escapedName + ')=(.*?)(?:;|$)', 'g');
545
547
  }
548
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CookieService, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
549
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CookieService, providedIn: 'root' }); }
546
550
  }
547
- CookieService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: CookieService, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
548
- CookieService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: CookieService, providedIn: 'root' });
549
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: CookieService, decorators: [{
551
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CookieService, decorators: [{
550
552
  type: Injectable,
551
553
  args: [{
552
554
  providedIn: 'root'
@@ -623,10 +625,10 @@ class ScrollService {
623
625
  }, 1);
624
626
  }
625
627
  }
628
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ScrollService, deps: [{ token: i1.Router }, { token: i2.ViewportScroller }], target: i0.ɵɵFactoryTarget.Injectable }); }
629
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ScrollService, providedIn: 'root' }); }
626
630
  }
627
- ScrollService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: ScrollService, deps: [{ token: i1.Router }, { token: i2.ViewportScroller }], target: i0.ɵɵFactoryTarget.Injectable });
628
- ScrollService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: ScrollService, providedIn: 'root' });
629
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: ScrollService, decorators: [{
631
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ScrollService, decorators: [{
630
632
  type: Injectable,
631
633
  args: [{
632
634
  providedIn: 'root'
@@ -640,10 +642,10 @@ class VisibilityService {
640
642
  getVisibilityObservable() {
641
643
  return this.visibility$;
642
644
  }
645
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: VisibilityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
646
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: VisibilityService, providedIn: 'root' }); }
643
647
  }
644
- VisibilityService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: VisibilityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
645
- VisibilityService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: VisibilityService, providedIn: 'root' });
646
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: VisibilityService, decorators: [{
648
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: VisibilityService, decorators: [{
647
649
  type: Injectable,
648
650
  args: [{ providedIn: 'root' }]
649
651
  }], ctorParameters: function () { return []; } });
@@ -658,10 +660,10 @@ class WithCredentialsInterceptor {
658
660
  });
659
661
  return next.handle(cloned);
660
662
  }
663
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WithCredentialsInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
664
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WithCredentialsInterceptor }); }
661
665
  }
662
- WithCredentialsInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: WithCredentialsInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
663
- WithCredentialsInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: WithCredentialsInterceptor });
664
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: WithCredentialsInterceptor, decorators: [{
666
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WithCredentialsInterceptor, decorators: [{
665
667
  type: Injectable
666
668
  }] });
667
669
 
@@ -709,10 +711,10 @@ class RedirectToLoginInterceptor {
709
711
  return throwError(err);
710
712
  }));
711
713
  }
714
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: RedirectToLoginInterceptor, deps: [{ token: i1.Router }, { token: DDR_LOGIN_PATH }], target: i0.ɵɵFactoryTarget.Injectable }); }
715
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: RedirectToLoginInterceptor }); }
712
716
  }
713
- RedirectToLoginInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: RedirectToLoginInterceptor, deps: [{ token: i1.Router }, { token: DDR_LOGIN_PATH }], target: i0.ɵɵFactoryTarget.Injectable });
714
- RedirectToLoginInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: RedirectToLoginInterceptor });
715
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: RedirectToLoginInterceptor, decorators: [{
717
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: RedirectToLoginInterceptor, decorators: [{
716
718
  type: Injectable
717
719
  }], ctorParameters: function () { return [{ type: i1.Router }, { type: undefined, decorators: [{
718
720
  type: Inject,
@@ -730,17 +732,21 @@ class OAuth2Config {
730
732
  }
731
733
 
732
734
  class OAuth2Error extends Error {
735
+ static { this.CODE_NOT_FOUND = 'code_not_found'; }
736
+ static { this.ACCESS_DENIED = 'access_denied'; }
733
737
  constructor(error) {
734
738
  super(error);
735
739
  }
736
740
  }
737
- OAuth2Error.CODE_NOT_FOUND = 'code_not_found';
738
- OAuth2Error.ACCESS_DENIED = 'access_denied';
739
741
 
740
742
  class OAuth2Service {
741
- constructor(route, httpClient, config) {
743
+ static { this.STORAGE_KEY_CHALLENGE = 'ddr_oauth2_challenge'; }
744
+ static { this.STORAGE_KEY_REFRESH_TOKEN = 'ddr_oauth2_refresh_token'; }
745
+ static { this.STORAGE_KEY_RETURN_URL = 'ddr_oauth2_return_url'; }
746
+ constructor(route, httpClient, loggerService, config) {
742
747
  this.route = route;
743
748
  this.httpClient = httpClient;
749
+ this.loggerService = loggerService;
744
750
  this.config = config;
745
751
  this.accessTokenString = null;
746
752
  this.accessToken = null;
@@ -796,12 +802,16 @@ class OAuth2Service {
796
802
  }
797
803
  performRefresh() {
798
804
  if (null == this.refreshTokenRequest$) {
799
- console.log('Performing token refesh');
805
+ this.loggerService.info('Performing token refesh');
800
806
  const params = new HttpParams()
801
807
  .set('grant_type', 'refresh_token')
802
808
  .set('refresh_token', TypeUtils.notNull(this.getRefreshToken()))
803
809
  .set('client_id', this.config.clientId);
804
- this.refreshTokenRequest$ = this.httpClient.post(this.config.tokenUri, params).pipe(map(tokenResponse => this.processTokenResponse(tokenResponse)), catchError(error => {
810
+ this.refreshTokenRequest$ = this.httpClient.post(this.config.tokenUri, params).pipe(map(tokenResponse => {
811
+ const token = this.processTokenResponse(tokenResponse);
812
+ this.refreshTokenRequest$ = null;
813
+ return token;
814
+ }), catchError(error => {
805
815
  this.accessTokenString = null;
806
816
  this.accessToken = null;
807
817
  localStorage.removeItem(OAuth2Service.STORAGE_KEY_REFRESH_TOKEN);
@@ -815,7 +825,7 @@ class OAuth2Service {
815
825
  localStorage.removeItem(OAuth2Service.STORAGE_KEY_CHALLENGE);
816
826
  this.accessTokenString = tokenResponse.access_token;
817
827
  this.accessToken = JSON.parse(atob(tokenResponse.access_token.split('.')[1]));
818
- console.log('Access Token Expiry', new Date(this.accessToken.exp * 1000));
828
+ this.loggerService.info('Access Token Expiry', new Date(this.accessToken.exp * 1000));
819
829
  localStorage.setItem(OAuth2Service.STORAGE_KEY_REFRESH_TOKEN, tokenResponse.refresh_token);
820
830
  return this.accessToken;
821
831
  }
@@ -831,15 +841,12 @@ class OAuth2Service {
831
841
  getReturnUrl() {
832
842
  return localStorage.getItem(OAuth2Service.STORAGE_KEY_RETURN_URL);
833
843
  }
844
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2Service, deps: [{ token: i1.ActivatedRoute }, { token: i2$1.HttpClient }, { token: Logger }, { token: DDR_OAUTH2_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable }); }
845
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2Service }); }
834
846
  }
835
- OAuth2Service.STORAGE_KEY_CHALLENGE = 'ddr_oauth2_challenge';
836
- OAuth2Service.STORAGE_KEY_REFRESH_TOKEN = 'ddr_oauth2_refresh_token';
837
- OAuth2Service.STORAGE_KEY_RETURN_URL = 'ddr_oauth2_return_url';
838
- OAuth2Service.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2Service, deps: [{ token: i1.ActivatedRoute }, { token: i2$1.HttpClient }, { token: DDR_OAUTH2_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
839
- OAuth2Service.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2Service });
840
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2Service, decorators: [{
847
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2Service, decorators: [{
841
848
  type: Injectable
842
- }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2$1.HttpClient }, { type: OAuth2Config, decorators: [{
849
+ }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2$1.HttpClient }, { type: Logger }, { type: OAuth2Config, decorators: [{
843
850
  type: Inject,
844
851
  args: [DDR_OAUTH2_CONFIG]
845
852
  }] }]; } });
@@ -857,10 +864,10 @@ class OAuth2RefreshTokenInterceptor {
857
864
  }
858
865
  return next.handle(req);
859
866
  }
867
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2RefreshTokenInterceptor, deps: [{ token: OAuth2Service }], target: i0.ɵɵFactoryTarget.Injectable }); }
868
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2RefreshTokenInterceptor }); }
860
869
  }
861
- OAuth2RefreshTokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2RefreshTokenInterceptor, deps: [{ token: OAuth2Service }], target: i0.ɵɵFactoryTarget.Injectable });
862
- OAuth2RefreshTokenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2RefreshTokenInterceptor });
863
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2RefreshTokenInterceptor, decorators: [{
870
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2RefreshTokenInterceptor, decorators: [{
864
871
  type: Injectable
865
872
  }], ctorParameters: function () { return [{ type: OAuth2Service }]; } });
866
873
 
@@ -886,10 +893,10 @@ class RedirectToOAuth2LoginInterceptor {
886
893
  return throwError(err);
887
894
  }));
888
895
  }
896
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: RedirectToOAuth2LoginInterceptor, deps: [{ token: OAuth2Service }, { token: i1.Router }, { token: DDR_OAUTH2_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable }); }
897
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: RedirectToOAuth2LoginInterceptor }); }
889
898
  }
890
- RedirectToOAuth2LoginInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: RedirectToOAuth2LoginInterceptor, deps: [{ token: OAuth2Service }, { token: i1.Router }, { token: DDR_OAUTH2_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
891
- RedirectToOAuth2LoginInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: RedirectToOAuth2LoginInterceptor });
892
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: RedirectToOAuth2LoginInterceptor, decorators: [{
899
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: RedirectToOAuth2LoginInterceptor, decorators: [{
893
900
  type: Injectable
894
901
  }], ctorParameters: function () { return [{ type: OAuth2Service }, { type: i1.Router }, { type: OAuth2Config, decorators: [{
895
902
  type: Inject,
@@ -912,10 +919,10 @@ class OAuth2AccessTokenInterceptor {
912
919
  }
913
920
  return next.handle(req);
914
921
  }
922
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2AccessTokenInterceptor, deps: [{ token: OAuth2Service }], target: i0.ɵɵFactoryTarget.Injectable }); }
923
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2AccessTokenInterceptor }); }
915
924
  }
916
- OAuth2AccessTokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2AccessTokenInterceptor, deps: [{ token: OAuth2Service }], target: i0.ɵɵFactoryTarget.Injectable });
917
- OAuth2AccessTokenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2AccessTokenInterceptor });
918
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2AccessTokenInterceptor, decorators: [{
925
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2AccessTokenInterceptor, decorators: [{
919
926
  type: Injectable
920
927
  }], ctorParameters: function () { return [{ type: OAuth2Service }]; } });
921
928
 
@@ -947,11 +954,11 @@ class OAuth2Module {
947
954
  ],
948
955
  };
949
956
  }
957
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2Module, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
958
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: OAuth2Module }); }
959
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2Module }); }
950
960
  }
951
- OAuth2Module.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2Module, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
952
- OAuth2Module.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.3", ngImport: i0, type: OAuth2Module });
953
- OAuth2Module.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2Module });
954
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: OAuth2Module, decorators: [{
961
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: OAuth2Module, decorators: [{
955
962
  type: NgModule
956
963
  }] });
957
964
 
@@ -960,8 +967,9 @@ function isNonNull(value) {
960
967
  }
961
968
 
962
969
  class JwtService {
963
- constructor(storageService) {
970
+ constructor(storageService, loggerService) {
964
971
  this.storageService = storageService;
972
+ this.loggerService = loggerService;
965
973
  /**
966
974
  * The current token.
967
975
  */
@@ -985,7 +993,7 @@ class JwtService {
985
993
  this.token = token;
986
994
  const decodedToken = JSON.parse(atob(token.split('.')[1]));
987
995
  this.tokenExpiry = decodedToken.exp * 1000;
988
- console.log('New refresh token, expiry', new Date(this.tokenExpiry));
996
+ this.loggerService.info('New refresh token, expiry', new Date(this.tokenExpiry));
989
997
  }
990
998
  /**
991
999
  * Gets the current token.
@@ -1025,15 +1033,15 @@ class JwtService {
1025
1033
  getRefreshTokenStorageKey() {
1026
1034
  return 'jwt.refresh_token';
1027
1035
  }
1036
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: JwtService, deps: [{ token: StorageService }, { token: Logger }], target: i0.ɵɵFactoryTarget.Injectable }); }
1037
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: JwtService, providedIn: 'root' }); }
1028
1038
  }
1029
- JwtService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JwtService, deps: [{ token: StorageService }], target: i0.ɵɵFactoryTarget.Injectable });
1030
- JwtService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JwtService, providedIn: 'root' });
1031
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JwtService, decorators: [{
1039
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: JwtService, decorators: [{
1032
1040
  type: Injectable,
1033
1041
  args: [{
1034
1042
  providedIn: 'root'
1035
1043
  }]
1036
- }], ctorParameters: function () { return [{ type: StorageService }]; } });
1044
+ }], ctorParameters: function () { return [{ type: StorageService }, { type: Logger }]; } });
1037
1045
 
1038
1046
  class JwtInterceptor {
1039
1047
  constructor(jwtService) {
@@ -1051,10 +1059,10 @@ class JwtInterceptor {
1051
1059
  }
1052
1060
  return next.handle(req);
1053
1061
  }
1062
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: JwtInterceptor, deps: [{ token: JwtService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1063
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: JwtInterceptor }); }
1054
1064
  }
1055
- JwtInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JwtInterceptor, deps: [{ token: JwtService }], target: i0.ɵɵFactoryTarget.Injectable });
1056
- JwtInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JwtInterceptor });
1057
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JwtInterceptor, decorators: [{
1065
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: JwtInterceptor, decorators: [{
1058
1066
  type: Injectable
1059
1067
  }], ctorParameters: function () { return [{ type: JwtService }]; } });
1060
1068
 
@@ -1091,10 +1099,10 @@ class JwtRefreshTokenInterceptor {
1091
1099
  }
1092
1100
  return this.refreshTokenRequest$;
1093
1101
  }
1102
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: JwtRefreshTokenInterceptor, deps: [{ token: JwtService }, { token: i2$1.HttpClient }, { token: DDR_JWT_REFRESH_TOKEN_URL }], target: i0.ɵɵFactoryTarget.Injectable }); }
1103
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: JwtRefreshTokenInterceptor }); }
1094
1104
  }
1095
- JwtRefreshTokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JwtRefreshTokenInterceptor, deps: [{ token: JwtService }, { token: i2$1.HttpClient }, { token: DDR_JWT_REFRESH_TOKEN_URL }], target: i0.ɵɵFactoryTarget.Injectable });
1096
- JwtRefreshTokenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JwtRefreshTokenInterceptor });
1097
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JwtRefreshTokenInterceptor, decorators: [{
1105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: JwtRefreshTokenInterceptor, decorators: [{
1098
1106
  type: Injectable
1099
1107
  }], ctorParameters: function () { return [{ type: JwtService }, { type: i2$1.HttpClient }, { type: undefined, decorators: [{
1100
1108
  type: Inject,