@ngrx/data 12.3.0 → 13.0.0-beta.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 (71) hide show
  1. package/bundles/ngrx-data.umd.js +416 -343
  2. package/bundles/ngrx-data.umd.js.map +1 -1
  3. package/esm2015/ngrx-data.js +1 -2
  4. package/esm2015/src/actions/entity-action-factory.js +7 -4
  5. package/esm2015/src/dataservices/default-data.service.js +13 -13
  6. package/esm2015/src/dataservices/entity-cache-data.service.js +12 -13
  7. package/esm2015/src/dataservices/entity-data.service.js +8 -9
  8. package/esm2015/src/dataservices/http-url-generator.js +8 -9
  9. package/esm2015/src/dataservices/persistence-result-handler.service.js +9 -11
  10. package/esm2015/src/dispatchers/entity-cache-dispatcher.js +16 -15
  11. package/esm2015/src/dispatchers/entity-dispatcher-default-options.js +7 -4
  12. package/esm2015/src/dispatchers/entity-dispatcher-factory.js +19 -18
  13. package/esm2015/src/effects/entity-cache-effects.js +17 -16
  14. package/esm2015/src/effects/entity-effects.js +17 -16
  15. package/esm2015/src/entity-data-without-effects.module.js +77 -43
  16. package/esm2015/src/entity-data.module.js +47 -29
  17. package/esm2015/src/entity-metadata/entity-definition.service.js +12 -8
  18. package/esm2015/src/entity-services/entity-collection-service-elements-factory.js +11 -15
  19. package/esm2015/src/entity-services/entity-collection-service-factory.js +8 -9
  20. package/esm2015/src/entity-services/entity-services-base.js +8 -9
  21. package/esm2015/src/entity-services/entity-services-elements.js +11 -15
  22. package/esm2015/src/reducers/entity-cache-reducer.js +10 -13
  23. package/esm2015/src/reducers/entity-collection-creator.js +10 -9
  24. package/esm2015/src/reducers/entity-collection-reducer-methods.js +8 -9
  25. package/esm2015/src/reducers/entity-collection-reducer-registry.js +13 -10
  26. package/esm2015/src/reducers/entity-collection-reducer.js +8 -9
  27. package/esm2015/src/selectors/entity-selectors$.js +12 -12
  28. package/esm2015/src/selectors/entity-selectors.js +15 -9
  29. package/esm2015/src/utils/correlation-id-generator.js +7 -4
  30. package/esm2015/src/utils/default-logger.js +7 -4
  31. package/esm2015/src/utils/default-pluralizer.js +12 -8
  32. package/fesm2015/ngrx-data.js +313 -281
  33. package/fesm2015/ngrx-data.js.map +1 -1
  34. package/ngrx-data.d.ts +1 -1
  35. package/package.json +8 -9
  36. package/schematics-core/index.js +2 -1
  37. package/schematics-core/index.js.map +1 -1
  38. package/schematics-core/utility/libs-version.js +1 -1
  39. package/schematics-core/utility/libs-version.js.map +1 -1
  40. package/schematics-core/utility/ngrx-utils.js +7 -1
  41. package/schematics-core/utility/ngrx-utils.js.map +1 -1
  42. package/src/actions/entity-action-factory.d.ts +3 -0
  43. package/src/dataservices/default-data.service.d.ts +3 -0
  44. package/src/dataservices/entity-cache-data.service.d.ts +3 -0
  45. package/src/dataservices/entity-data.service.d.ts +3 -0
  46. package/src/dataservices/http-url-generator.d.ts +3 -0
  47. package/src/dataservices/persistence-result-handler.service.d.ts +3 -0
  48. package/src/dispatchers/entity-cache-dispatcher.d.ts +3 -0
  49. package/src/dispatchers/entity-dispatcher-default-options.d.ts +3 -0
  50. package/src/dispatchers/entity-dispatcher-factory.d.ts +3 -0
  51. package/src/effects/entity-cache-effects.d.ts +3 -0
  52. package/src/effects/entity-effects.d.ts +3 -0
  53. package/src/entity-data-without-effects.module.d.ts +5 -0
  54. package/src/entity-data.module.d.ts +6 -0
  55. package/src/entity-metadata/entity-definition.service.d.ts +3 -0
  56. package/src/entity-services/entity-collection-service-base.d.ts +1 -1
  57. package/src/entity-services/entity-collection-service-elements-factory.d.ts +3 -0
  58. package/src/entity-services/entity-collection-service-factory.d.ts +3 -0
  59. package/src/entity-services/entity-services-base.d.ts +3 -0
  60. package/src/entity-services/entity-services-elements.d.ts +3 -0
  61. package/src/reducers/entity-cache-reducer.d.ts +3 -0
  62. package/src/reducers/entity-collection-creator.d.ts +3 -0
  63. package/src/reducers/entity-collection-reducer-methods.d.ts +3 -0
  64. package/src/reducers/entity-collection-reducer-registry.d.ts +3 -0
  65. package/src/reducers/entity-collection-reducer.d.ts +3 -0
  66. package/src/selectors/entity-selectors$.d.ts +3 -0
  67. package/src/selectors/entity-selectors.d.ts +3 -0
  68. package/src/utils/correlation-id-generator.d.ts +3 -0
  69. package/src/utils/default-logger.d.ts +3 -0
  70. package/src/utils/default-pluralizer.d.ts +3 -0
  71. package/ngrx-data.metadata.json +0 -1
@@ -1,5 +1,6 @@
1
1
  import { Injectable } from '@angular/core';
2
- import { EntityCollectionReducerMethodsFactory } from './entity-collection-reducer-methods';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./entity-collection-reducer-methods";
3
4
  /** Create a default reducer for a specific entity collection */
4
5
  export class EntityCollectionReducerFactory {
5
6
  constructor(methodsFactory) {
@@ -15,11 +16,9 @@ export class EntityCollectionReducerFactory {
15
16
  };
16
17
  }
17
18
  }
18
- EntityCollectionReducerFactory.decorators = [
19
- { type: Injectable }
20
- ];
21
- /** @nocollapse */
22
- EntityCollectionReducerFactory.ctorParameters = () => [
23
- { type: EntityCollectionReducerMethodsFactory }
24
- ];
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZGF0YS9zcmMvcmVkdWNlcnMvZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBTzVGLGdFQUFnRTtBQUVoRSxNQUFNLE9BQU8sOEJBQThCO0lBQ3pDLFlBQW9CLGNBQXFEO1FBQXJELG1CQUFjLEdBQWQsY0FBYyxDQUF1QztJQUFHLENBQUM7SUFFN0UsaUVBQWlFO0lBQ2pFLE1BQU0sQ0FBVSxVQUFrQjtRQUNoQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBSSxVQUFVLENBQUMsQ0FBQztRQUUxRCxnRkFBZ0Y7UUFDaEYsT0FBTyxTQUFTLHVCQUF1QixDQUNyQyxVQUErQixFQUMvQixNQUFvQjtZQUVwQixNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN2RCxPQUFPLGFBQWEsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDO1FBQ3hFLENBQUMsQ0FBQztJQUNKLENBQUM7OztZQWhCRixVQUFVOzs7O1lBUkYscUNBQXFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBFbnRpdHlBY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zL2VudGl0eS1hY3Rpb24nO1xuaW1wb3J0IHsgRW50aXR5Q29sbGVjdGlvbiB9IGZyb20gJy4vZW50aXR5LWNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRW50aXR5Q29sbGVjdGlvblJlZHVjZXJNZXRob2RzRmFjdG9yeSB9IGZyb20gJy4vZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci1tZXRob2RzJztcblxuZXhwb3J0IHR5cGUgRW50aXR5Q29sbGVjdGlvblJlZHVjZXI8VCA9IGFueT4gPSAoXG4gIGNvbGxlY3Rpb246IEVudGl0eUNvbGxlY3Rpb248VD4sXG4gIGFjdGlvbjogRW50aXR5QWN0aW9uXG4pID0+IEVudGl0eUNvbGxlY3Rpb248VD47XG5cbi8qKiBDcmVhdGUgYSBkZWZhdWx0IHJlZHVjZXIgZm9yIGEgc3BlY2lmaWMgZW50aXR5IGNvbGxlY3Rpb24gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlckZhY3Rvcnkge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1ldGhvZHNGYWN0b3J5OiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlck1ldGhvZHNGYWN0b3J5KSB7fVxuXG4gIC8qKiBDcmVhdGUgYSBkZWZhdWx0IHJlZHVjZXIgZm9yIGEgY29sbGVjdGlvbiBvZiBlbnRpdGllcyBvZiBUICovXG4gIGNyZWF0ZTxUID0gYW55PihlbnRpdHlOYW1lOiBzdHJpbmcpOiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcjxUPiB7XG4gICAgY29uc3QgbWV0aG9kcyA9IHRoaXMubWV0aG9kc0ZhY3RvcnkuY3JlYXRlPFQ+KGVudGl0eU5hbWUpO1xuXG4gICAgLyoqIFBlcmZvcm0gQWN0aW9ucyBhZ2FpbnN0IGEgcGFydGljdWxhciBlbnRpdHkgY29sbGVjdGlvbiBpbiB0aGUgRW50aXR5Q2FjaGUgKi9cbiAgICByZXR1cm4gZnVuY3Rpb24gZW50aXR5Q29sbGVjdGlvblJlZHVjZXIoXG4gICAgICBjb2xsZWN0aW9uOiBFbnRpdHlDb2xsZWN0aW9uPFQ+LFxuICAgICAgYWN0aW9uOiBFbnRpdHlBY3Rpb25cbiAgICApOiBFbnRpdHlDb2xsZWN0aW9uPFQ+IHtcbiAgICAgIGNvbnN0IHJlZHVjZXJNZXRob2QgPSBtZXRob2RzW2FjdGlvbi5wYXlsb2FkLmVudGl0eU9wXTtcbiAgICAgIHJldHVybiByZWR1Y2VyTWV0aG9kID8gcmVkdWNlck1ldGhvZChjb2xsZWN0aW9uLCBhY3Rpb24pIDogY29sbGVjdGlvbjtcbiAgICB9O1xuICB9XG59XG4iXX0=
19
+ /** @nocollapse */ EntityCollectionReducerFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EntityCollectionReducerFactory, deps: [{ token: i1.EntityCollectionReducerMethodsFactory }], target: i0.ɵɵFactoryTarget.Injectable });
20
+ /** @nocollapse */ EntityCollectionReducerFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EntityCollectionReducerFactory });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EntityCollectionReducerFactory, decorators: [{
22
+ type: Injectable
23
+ }], ctorParameters: function () { return [{ type: i1.EntityCollectionReducerMethodsFactory }]; } });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZGF0YS9zcmMvcmVkdWNlcnMvZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFXM0MsZ0VBQWdFO0FBRWhFLE1BQU0sT0FBTyw4QkFBOEI7SUFDekMsWUFBb0IsY0FBcUQ7UUFBckQsbUJBQWMsR0FBZCxjQUFjLENBQXVDO0lBQUcsQ0FBQztJQUU3RSxpRUFBaUU7SUFDakUsTUFBTSxDQUFVLFVBQWtCO1FBQ2hDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFJLFVBQVUsQ0FBQyxDQUFDO1FBRTFELGdGQUFnRjtRQUNoRixPQUFPLFNBQVMsdUJBQXVCLENBQ3JDLFVBQStCLEVBQy9CLE1BQW9CO1lBRXBCLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3ZELE9BQU8sYUFBYSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7UUFDeEUsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs7OElBZlUsOEJBQThCO2tKQUE5Qiw4QkFBOEI7MkZBQTlCLDhCQUE4QjtrQkFEMUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRW50aXR5QWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucy9lbnRpdHktYWN0aW9uJztcbmltcG9ydCB7IEVudGl0eUNvbGxlY3Rpb24gfSBmcm9tICcuL2VudGl0eS1jb2xsZWN0aW9uJztcbmltcG9ydCB7IEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyTWV0aG9kc0ZhY3RvcnkgfSBmcm9tICcuL2VudGl0eS1jb2xsZWN0aW9uLXJlZHVjZXItbWV0aG9kcyc7XG5cbmV4cG9ydCB0eXBlIEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyPFQgPSBhbnk+ID0gKFxuICBjb2xsZWN0aW9uOiBFbnRpdHlDb2xsZWN0aW9uPFQ+LFxuICBhY3Rpb246IEVudGl0eUFjdGlvblxuKSA9PiBFbnRpdHlDb2xsZWN0aW9uPFQ+O1xuXG4vKiogQ3JlYXRlIGEgZGVmYXVsdCByZWR1Y2VyIGZvciBhIHNwZWNpZmljIGVudGl0eSBjb2xsZWN0aW9uICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRW50aXR5Q29sbGVjdGlvblJlZHVjZXJGYWN0b3J5IHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtZXRob2RzRmFjdG9yeTogRW50aXR5Q29sbGVjdGlvblJlZHVjZXJNZXRob2RzRmFjdG9yeSkge31cblxuICAvKiogQ3JlYXRlIGEgZGVmYXVsdCByZWR1Y2VyIGZvciBhIGNvbGxlY3Rpb24gb2YgZW50aXRpZXMgb2YgVCAqL1xuICBjcmVhdGU8VCA9IGFueT4oZW50aXR5TmFtZTogc3RyaW5nKTogRW50aXR5Q29sbGVjdGlvblJlZHVjZXI8VD4ge1xuICAgIGNvbnN0IG1ldGhvZHMgPSB0aGlzLm1ldGhvZHNGYWN0b3J5LmNyZWF0ZTxUPihlbnRpdHlOYW1lKTtcblxuICAgIC8qKiBQZXJmb3JtIEFjdGlvbnMgYWdhaW5zdCBhIHBhcnRpY3VsYXIgZW50aXR5IGNvbGxlY3Rpb24gaW4gdGhlIEVudGl0eUNhY2hlICovXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyKFxuICAgICAgY29sbGVjdGlvbjogRW50aXR5Q29sbGVjdGlvbjxUPixcbiAgICAgIGFjdGlvbjogRW50aXR5QWN0aW9uXG4gICAgKTogRW50aXR5Q29sbGVjdGlvbjxUPiB7XG4gICAgICBjb25zdCByZWR1Y2VyTWV0aG9kID0gbWV0aG9kc1thY3Rpb24ucGF5bG9hZC5lbnRpdHlPcF07XG4gICAgICByZXR1cm4gcmVkdWNlck1ldGhvZCA/IHJlZHVjZXJNZXRob2QoY29sbGVjdGlvbiwgYWN0aW9uKSA6IGNvbGxlY3Rpb247XG4gICAgfTtcbiAgfVxufVxuIl19
@@ -1,10 +1,11 @@
1
1
  import { Inject, Injectable } from '@angular/core';
2
- import { Store } from '@ngrx/store';
3
- import { Actions } from '@ngrx/effects';
4
2
  import { filter, shareReplay } from 'rxjs/operators';
5
3
  import { OP_ERROR } from '../actions/entity-op';
6
4
  import { ofEntityType } from '../actions/entity-action-operators';
7
5
  import { ENTITY_CACHE_SELECTOR_TOKEN, } from './entity-cache-selector';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@ngrx/store";
8
+ import * as i2 from "@ngrx/effects";
8
9
  /** Creates observable EntitySelectors$ for entity collections. */
9
10
  export class EntitySelectors$Factory {
10
11
  constructor(store, actions, selectEntityCache) {
@@ -40,13 +41,12 @@ export class EntitySelectors$Factory {
40
41
  return selectors$;
41
42
  }
42
43
  }
43
- EntitySelectors$Factory.decorators = [
44
- { type: Injectable }
45
- ];
46
- /** @nocollapse */
47
- EntitySelectors$Factory.ctorParameters = () => [
48
- { type: Store },
49
- { type: Actions },
50
- { type: undefined, decorators: [{ type: Inject, args: [ENTITY_CACHE_SELECTOR_TOKEN,] }] }
51
- ];
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNlbGVjdG9ycyQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGEvc3JjL3NlbGVjdG9ycy9lbnRpdHktc2VsZWN0b3JzJC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJeEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2xFLE9BQU8sRUFDTCwyQkFBMkIsR0FFNUIsTUFBTSx5QkFBeUIsQ0FBQztBQXlEakMsa0VBQWtFO0FBRWxFLE1BQU0sT0FBTyx1QkFBdUI7SUFPbEMsWUFDVSxLQUFpQixFQUNqQixPQUE4QixFQUU5QixpQkFBc0M7UUFIdEMsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixZQUFPLEdBQVAsT0FBTyxDQUF1QjtRQUU5QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQXFCO1FBRTlDLG9FQUFvRTtRQUNwRSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUNyQyxNQUFNLENBQ0osQ0FBQyxFQUFnQixFQUFFLEVBQUUsQ0FDbkIsRUFBRSxDQUFDLE9BQU87WUFDVixFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVE7WUFDbkIsRUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUN6QyxFQUNELFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztRQUtJO0lBQ0osTUFBTSxDQUNKLFVBQWtCLEVBQ2xCLFNBQTZCO1FBRTdCLE1BQU0sVUFBVSxHQUE0QjtZQUMxQyxVQUFVO1NBQ1gsQ0FBQztRQUVGLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDdEMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUM3QixpRUFBaUU7Z0JBQ2pFLHNDQUFzQztnQkFDdEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO2dCQUMzRCxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQU8sU0FBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDL0Q7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILFVBQVUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDeEUsVUFBVSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUNoRCxZQUFZLENBQUMsVUFBVSxDQUFDLENBQ3pCLENBQUM7UUFDRixPQUFPLFVBQWdCLENBQUM7SUFDMUIsQ0FBQzs7O1lBdERGLFVBQVU7Ozs7WUF2RUYsS0FBSztZQUNMLE9BQU87NENBaUZYLE1BQU0sU0FBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQWN0aW9ucyB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gJ0BuZ3J4L2VudGl0eSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEVudGl0eUFjdGlvbiB9IGZyb20gJy4uL2FjdGlvbnMvZW50aXR5LWFjdGlvbic7XG5pbXBvcnQgeyBPUF9FUlJPUiB9IGZyb20gJy4uL2FjdGlvbnMvZW50aXR5LW9wJztcbmltcG9ydCB7IG9mRW50aXR5VHlwZSB9IGZyb20gJy4uL2FjdGlvbnMvZW50aXR5LWFjdGlvbi1vcGVyYXRvcnMnO1xuaW1wb3J0IHtcbiAgRU5USVRZX0NBQ0hFX1NFTEVDVE9SX1RPS0VOLFxuICBFbnRpdHlDYWNoZVNlbGVjdG9yLFxufSBmcm9tICcuL2VudGl0eS1jYWNoZS1zZWxlY3Rvcic7XG5pbXBvcnQgeyBFbnRpdHlTZWxlY3RvcnMgfSBmcm9tICcuL2VudGl0eS1zZWxlY3RvcnMnO1xuaW1wb3J0IHsgRW50aXR5Q2FjaGUgfSBmcm9tICcuLi9yZWR1Y2Vycy9lbnRpdHktY2FjaGUnO1xuaW1wb3J0IHtcbiAgRW50aXR5Q29sbGVjdGlvbixcbiAgQ2hhbmdlU3RhdGVNYXAsXG59IGZyb20gJy4uL3JlZHVjZXJzL2VudGl0eS1jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBUaGUgc2VsZWN0b3Igb2JzZXJ2YWJsZSBmdW5jdGlvbnMgZm9yIGVudGl0eSBjb2xsZWN0aW9uIG1lbWJlcnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW50aXR5U2VsZWN0b3JzJDxUPiB7XG4gIC8qKiBOYW1lIG9mIHRoZSBlbnRpdHkgY29sbGVjdGlvbiBmb3IgdGhlc2Ugc2VsZWN0b3JzJCAqL1xuICByZWFkb25seSBlbnRpdHlOYW1lOiBzdHJpbmc7XG5cbiAgLyoqIE5hbWVzIGZyb20gY3VzdG9tIHNlbGVjdG9ycyBmcm9tIGFkZGl0aW9uYWxDb2xsZWN0aW9uU3RhdGUgZml0cyBoZXJlLCAnYW55JyB0byBhdm9pZCBjb25mbGljdCB3aXRoIGVudGl0eU5hbWUgKi9cbiAgcmVhZG9ubHkgW25hbWU6IHN0cmluZ106IE9ic2VydmFibGU8YW55PiB8IFN0b3JlPGFueT4gfCBhbnk7XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgdGhlIGNvbGxlY3Rpb24gYXMgYSB3aG9sZSAqL1xuICByZWFkb25seSBjb2xsZWN0aW9uJDogT2JzZXJ2YWJsZTxFbnRpdHlDb2xsZWN0aW9uPiB8IFN0b3JlPEVudGl0eUNvbGxlY3Rpb24+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIGNvdW50IG9mIGVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbi4gKi9cbiAgcmVhZG9ubHkgY291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj4gfCBTdG9yZTxudW1iZXI+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIGFsbCBlbnRpdGllcyBpbiB0aGUgY2FjaGVkIGNvbGxlY3Rpb24uICovXG4gIHJlYWRvbmx5IGVudGl0aWVzJDogT2JzZXJ2YWJsZTxUW10+IHwgU3RvcmU8VFtdPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiBhY3Rpb25zIHJlbGF0ZWQgdG8gdGhpcyBlbnRpdHkgdHlwZS4gKi9cbiAgcmVhZG9ubHkgZW50aXR5QWN0aW9ucyQ6IE9ic2VydmFibGU8RW50aXR5QWN0aW9uPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiB0aGUgbWFwIG9mIGVudGl0eSBrZXlzIHRvIGVudGl0aWVzICovXG4gIHJlYWRvbmx5IGVudGl0eU1hcCQ6IE9ic2VydmFibGU8RGljdGlvbmFyeTxUPj4gfCBTdG9yZTxEaWN0aW9uYXJ5PFQ+PjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiBlcnJvciBhY3Rpb25zIHJlbGF0ZWQgdG8gdGhpcyBlbnRpdHkgdHlwZS4gKi9cbiAgcmVhZG9ubHkgZXJyb3JzJDogT2JzZXJ2YWJsZTxFbnRpdHlBY3Rpb24+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIHRoZSBmaWx0ZXIgcGF0dGVybiBhcHBsaWVkIGJ5IHRoZSBlbnRpdHkgY29sbGVjdGlvbidzIGZpbHRlciBmdW5jdGlvbiAqL1xuICByZWFkb25seSBmaWx0ZXIkOiBPYnNlcnZhYmxlPHN0cmluZz4gfCBTdG9yZTxzdHJpbmc+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIGVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbiB0aGF0IHBhc3MgdGhlIGZpbHRlciBmdW5jdGlvbiAqL1xuICByZWFkb25seSBmaWx0ZXJlZEVudGl0aWVzJDogT2JzZXJ2YWJsZTxUW10+IHwgU3RvcmU8VFtdPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiB0aGUga2V5cyBvZiB0aGUgY2FjaGVkIGNvbGxlY3Rpb24sIGluIHRoZSBjb2xsZWN0aW9uJ3MgbmF0aXZlIHNvcnQgb3JkZXIgKi9cbiAgcmVhZG9ubHkga2V5cyQ6IE9ic2VydmFibGU8c3RyaW5nW10gfCBudW1iZXJbXT4gfCBTdG9yZTxzdHJpbmdbXSB8IG51bWJlcltdPjtcblxuICAvKiogT2JzZXJ2YWJsZSB0cnVlIHdoZW4gdGhlIGNvbGxlY3Rpb24gaGFzIGJlZW4gbG9hZGVkICovXG4gIHJlYWRvbmx5IGxvYWRlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gfCBTdG9yZTxib29sZWFuPjtcblxuICAvKiogT2JzZXJ2YWJsZSB0cnVlIHdoZW4gYSBtdWx0aS1lbnRpdHkgcXVlcnkgY29tbWFuZCBpcyBpbiBwcm9ncmVzcy4gKi9cbiAgcmVhZG9ubHkgbG9hZGluZyQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gfCBTdG9yZTxib29sZWFuPjtcblxuICAvKiogQ2hhbmdlU3RhdGUgKGluY2x1ZGluZyBvcmlnaW5hbCB2YWx1ZXMpIG9mIGVudGl0aWVzIHdpdGggdW5zYXZlZCBjaGFuZ2VzICovXG4gIHJlYWRvbmx5IGNoYW5nZVN0YXRlJDpcbiAgICB8IE9ic2VydmFibGU8Q2hhbmdlU3RhdGVNYXA8VD4+XG4gICAgfCBTdG9yZTxDaGFuZ2VTdGF0ZU1hcDxUPj47XG59XG5cbi8qKiBDcmVhdGVzIG9ic2VydmFibGUgRW50aXR5U2VsZWN0b3JzJCBmb3IgZW50aXR5IGNvbGxlY3Rpb25zLiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVudGl0eVNlbGVjdG9ycyRGYWN0b3J5IHtcbiAgLyoqIE9ic2VydmFibGUgb2YgdGhlIEVudGl0eUNhY2hlICovXG4gIGVudGl0eUNhY2hlJDogT2JzZXJ2YWJsZTxFbnRpdHlDYWNoZT47XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgZXJyb3IgRW50aXR5QWN0aW9ucyAoZS5nLiBRVUVSWV9BTExfRVJST1IpIGZvciBhbGwgZW50aXR5IHR5cGVzICovXG4gIGVudGl0eUFjdGlvbkVycm9ycyQ6IE9ic2VydmFibGU8RW50aXR5QWN0aW9uPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxhbnk+LFxuICAgIHByaXZhdGUgYWN0aW9uczogQWN0aW9uczxFbnRpdHlBY3Rpb24+LFxuICAgIEBJbmplY3QoRU5USVRZX0NBQ0hFX1NFTEVDVE9SX1RPS0VOKVxuICAgIHByaXZhdGUgc2VsZWN0RW50aXR5Q2FjaGU6IEVudGl0eUNhY2hlU2VsZWN0b3JcbiAgKSB7XG4gICAgLy8gVGhpcyBzZXJ2aWNlIGFwcGxpZXMgdG8gdGhlIGNhY2hlIGluIG5ncngvc3RvcmUgbmFtZWQgYGNhY2hlTmFtZWBcbiAgICB0aGlzLmVudGl0eUNhY2hlJCA9IHRoaXMuc3RvcmUuc2VsZWN0KHRoaXMuc2VsZWN0RW50aXR5Q2FjaGUpO1xuICAgIHRoaXMuZW50aXR5QWN0aW9uRXJyb3JzJCA9IGFjdGlvbnMucGlwZShcbiAgICAgIGZpbHRlcihcbiAgICAgICAgKGVhOiBFbnRpdHlBY3Rpb24pID0+XG4gICAgICAgICAgZWEucGF5bG9hZCAmJlxuICAgICAgICAgIGVhLnBheWxvYWQuZW50aXR5T3AgJiZcbiAgICAgICAgICBlYS5wYXlsb2FkLmVudGl0eU9wLmVuZHNXaXRoKE9QX0VSUk9SKVxuICAgICAgKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuIGVudGl0eSBjb2xsZWN0aW9uJ3Mgc2VsZWN0b3JzJCBvYnNlcnZhYmxlcyBmb3IgdGhpcyBmYWN0b3J5J3Mgc3RvcmUuXG4gICAqIGBzZWxlY3RvcnMkYCBhcmUgb2JzZXJ2YWJsZSBzZWxlY3RvcnMgb2YgdGhlIGNhY2hlZCBlbnRpdHkgY29sbGVjdGlvbi5cbiAgICogQHBhcmFtIGVudGl0eU5hbWUgLSBpcyBhbHNvIHRoZSBuYW1lIG9mIHRoZSBjb2xsZWN0aW9uLlxuICAgKiBAcGFyYW0gc2VsZWN0b3JzIC0gc2VsZWN0b3IgZnVuY3Rpb25zIGZvciB0aGlzIGNvbGxlY3Rpb24uXG4gICAqKi9cbiAgY3JlYXRlPFQsIFMkIGV4dGVuZHMgRW50aXR5U2VsZWN0b3JzJDxUPiA9IEVudGl0eVNlbGVjdG9ycyQ8VD4+KFxuICAgIGVudGl0eU5hbWU6IHN0cmluZyxcbiAgICBzZWxlY3RvcnM6IEVudGl0eVNlbGVjdG9yczxUPlxuICApOiBTJCB7XG4gICAgY29uc3Qgc2VsZWN0b3JzJDogeyBbcHJvcDogc3RyaW5nXTogYW55IH0gPSB7XG4gICAgICBlbnRpdHlOYW1lLFxuICAgIH07XG5cbiAgICBPYmplY3Qua2V5cyhzZWxlY3RvcnMpLmZvckVhY2goKG5hbWUpID0+IHtcbiAgICAgIGlmIChuYW1lLnN0YXJ0c1dpdGgoJ3NlbGVjdCcpKSB7XG4gICAgICAgIC8vIHN0cmlwICdzZWxlY3QnIHByZWZpeCBmcm9tIHRoZSBzZWxlY3RvciBmbiBuYW1lIGFuZCBhcHBlbmQgYCRgXG4gICAgICAgIC8vIEV4OiAnc2VsZWN0RW50aXRpZXMnID0+ICdlbnRpdGllcyQnXG4gICAgICAgIGNvbnN0IG5hbWUkID0gbmFtZVs2XS50b0xvd2VyQ2FzZSgpICsgbmFtZS5zdWJzdHIoNykgKyAnJCc7XG4gICAgICAgIHNlbGVjdG9ycyRbbmFtZSRdID0gdGhpcy5zdG9yZS5zZWxlY3QoKDxhbnk+c2VsZWN0b3JzKVtuYW1lXSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgc2VsZWN0b3JzJC5lbnRpdHlBY3Rpb25zJCA9IHRoaXMuYWN0aW9ucy5waXBlKG9mRW50aXR5VHlwZShlbnRpdHlOYW1lKSk7XG4gICAgc2VsZWN0b3JzJC5lcnJvcnMkID0gdGhpcy5lbnRpdHlBY3Rpb25FcnJvcnMkLnBpcGUoXG4gICAgICBvZkVudGl0eVR5cGUoZW50aXR5TmFtZSlcbiAgICApO1xuICAgIHJldHVybiBzZWxlY3RvcnMkIGFzIFMkO1xuICB9XG59XG4iXX0=
44
+ /** @nocollapse */ EntitySelectors$Factory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EntitySelectors$Factory, deps: [{ token: i1.Store }, { token: i2.Actions }, { token: ENTITY_CACHE_SELECTOR_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable });
45
+ /** @nocollapse */ EntitySelectors$Factory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EntitySelectors$Factory });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EntitySelectors$Factory, decorators: [{
47
+ type: Injectable
48
+ }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.Actions }, { type: undefined, decorators: [{
49
+ type: Inject,
50
+ args: [ENTITY_CACHE_SELECTOR_TOKEN]
51
+ }] }]; } });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNlbGVjdG9ycyQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGEvc3JjL3NlbGVjdG9ycy9lbnRpdHktc2VsZWN0b3JzJC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU1uRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3JELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbEUsT0FBTyxFQUNMLDJCQUEyQixHQUU1QixNQUFNLHlCQUF5QixDQUFDOzs7O0FBeURqQyxrRUFBa0U7QUFFbEUsTUFBTSxPQUFPLHVCQUF1QjtJQU9sQyxZQUNVLEtBQWlCLEVBQ2pCLE9BQThCLEVBRTlCLGlCQUFzQztRQUh0QyxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBRTlCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBcUI7UUFFOUMsb0VBQW9FO1FBQ3BFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQ3JDLE1BQU0sQ0FDSixDQUFDLEVBQWdCLEVBQUUsRUFBRSxDQUNuQixFQUFFLENBQUMsT0FBTztZQUNWLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUTtZQUNuQixFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQ3pDLEVBQ0QsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7O1FBS0k7SUFDSixNQUFNLENBQ0osVUFBa0IsRUFDbEIsU0FBNkI7UUFFN0IsTUFBTSxVQUFVLEdBQTRCO1lBQzFDLFVBQVU7U0FDWCxDQUFDO1FBRUYsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN0QyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQzdCLGlFQUFpRTtnQkFDakUsc0NBQXNDO2dCQUN0QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7Z0JBQzNELFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBTyxTQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzthQUMvRDtRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsVUFBVSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUN4RSxVQUFVLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQ2hELFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FDekIsQ0FBQztRQUNGLE9BQU8sVUFBZ0IsQ0FBQztJQUMxQixDQUFDOzt1SUFyRFUsdUJBQXVCLDhEQVV4QiwyQkFBMkI7MklBVjFCLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVOzswQkFXTixNQUFNOzJCQUFDLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBBY3Rpb25zIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnQG5ncngvZW50aXR5JztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRW50aXR5QWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucy9lbnRpdHktYWN0aW9uJztcbmltcG9ydCB7IE9QX0VSUk9SIH0gZnJvbSAnLi4vYWN0aW9ucy9lbnRpdHktb3AnO1xuaW1wb3J0IHsgb2ZFbnRpdHlUeXBlIH0gZnJvbSAnLi4vYWN0aW9ucy9lbnRpdHktYWN0aW9uLW9wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBFTlRJVFlfQ0FDSEVfU0VMRUNUT1JfVE9LRU4sXG4gIEVudGl0eUNhY2hlU2VsZWN0b3IsXG59IGZyb20gJy4vZW50aXR5LWNhY2hlLXNlbGVjdG9yJztcbmltcG9ydCB7IEVudGl0eVNlbGVjdG9ycyB9IGZyb20gJy4vZW50aXR5LXNlbGVjdG9ycyc7XG5pbXBvcnQgeyBFbnRpdHlDYWNoZSB9IGZyb20gJy4uL3JlZHVjZXJzL2VudGl0eS1jYWNoZSc7XG5pbXBvcnQge1xuICBFbnRpdHlDb2xsZWN0aW9uLFxuICBDaGFuZ2VTdGF0ZU1hcCxcbn0gZnJvbSAnLi4vcmVkdWNlcnMvZW50aXR5LWNvbGxlY3Rpb24nO1xuXG4vKipcbiAqIFRoZSBzZWxlY3RvciBvYnNlcnZhYmxlIGZ1bmN0aW9ucyBmb3IgZW50aXR5IGNvbGxlY3Rpb24gbWVtYmVycy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbnRpdHlTZWxlY3RvcnMkPFQ+IHtcbiAgLyoqIE5hbWUgb2YgdGhlIGVudGl0eSBjb2xsZWN0aW9uIGZvciB0aGVzZSBzZWxlY3RvcnMkICovXG4gIHJlYWRvbmx5IGVudGl0eU5hbWU6IHN0cmluZztcblxuICAvKiogTmFtZXMgZnJvbSBjdXN0b20gc2VsZWN0b3JzIGZyb20gYWRkaXRpb25hbENvbGxlY3Rpb25TdGF0ZSBmaXRzIGhlcmUsICdhbnknIHRvIGF2b2lkIGNvbmZsaWN0IHdpdGggZW50aXR5TmFtZSAqL1xuICByZWFkb25seSBbbmFtZTogc3RyaW5nXTogT2JzZXJ2YWJsZTxhbnk+IHwgU3RvcmU8YW55PiB8IGFueTtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiB0aGUgY29sbGVjdGlvbiBhcyBhIHdob2xlICovXG4gIHJlYWRvbmx5IGNvbGxlY3Rpb24kOiBPYnNlcnZhYmxlPEVudGl0eUNvbGxlY3Rpb24+IHwgU3RvcmU8RW50aXR5Q29sbGVjdGlvbj47XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgY291bnQgb2YgZW50aXRpZXMgaW4gdGhlIGNhY2hlZCBjb2xsZWN0aW9uLiAqL1xuICByZWFkb25seSBjb3VudCQ6IE9ic2VydmFibGU8bnVtYmVyPiB8IFN0b3JlPG51bWJlcj47XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgYWxsIGVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbi4gKi9cbiAgcmVhZG9ubHkgZW50aXRpZXMkOiBPYnNlcnZhYmxlPFRbXT4gfCBTdG9yZTxUW10+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIGFjdGlvbnMgcmVsYXRlZCB0byB0aGlzIGVudGl0eSB0eXBlLiAqL1xuICByZWFkb25seSBlbnRpdHlBY3Rpb25zJDogT2JzZXJ2YWJsZTxFbnRpdHlBY3Rpb24+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIHRoZSBtYXAgb2YgZW50aXR5IGtleXMgdG8gZW50aXRpZXMgKi9cbiAgcmVhZG9ubHkgZW50aXR5TWFwJDogT2JzZXJ2YWJsZTxEaWN0aW9uYXJ5PFQ+PiB8IFN0b3JlPERpY3Rpb25hcnk8VD4+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIGVycm9yIGFjdGlvbnMgcmVsYXRlZCB0byB0aGlzIGVudGl0eSB0eXBlLiAqL1xuICByZWFkb25seSBlcnJvcnMkOiBPYnNlcnZhYmxlPEVudGl0eUFjdGlvbj47XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgdGhlIGZpbHRlciBwYXR0ZXJuIGFwcGxpZWQgYnkgdGhlIGVudGl0eSBjb2xsZWN0aW9uJ3MgZmlsdGVyIGZ1bmN0aW9uICovXG4gIHJlYWRvbmx5IGZpbHRlciQ6IE9ic2VydmFibGU8c3RyaW5nPiB8IFN0b3JlPHN0cmluZz47XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgZW50aXRpZXMgaW4gdGhlIGNhY2hlZCBjb2xsZWN0aW9uIHRoYXQgcGFzcyB0aGUgZmlsdGVyIGZ1bmN0aW9uICovXG4gIHJlYWRvbmx5IGZpbHRlcmVkRW50aXRpZXMkOiBPYnNlcnZhYmxlPFRbXT4gfCBTdG9yZTxUW10+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIHRoZSBrZXlzIG9mIHRoZSBjYWNoZWQgY29sbGVjdGlvbiwgaW4gdGhlIGNvbGxlY3Rpb24ncyBuYXRpdmUgc29ydCBvcmRlciAqL1xuICByZWFkb25seSBrZXlzJDogT2JzZXJ2YWJsZTxzdHJpbmdbXSB8IG51bWJlcltdPiB8IFN0b3JlPHN0cmluZ1tdIHwgbnVtYmVyW10+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIHRydWUgd2hlbiB0aGUgY29sbGVjdGlvbiBoYXMgYmVlbiBsb2FkZWQgKi9cbiAgcmVhZG9ubHkgbG9hZGVkJDogT2JzZXJ2YWJsZTxib29sZWFuPiB8IFN0b3JlPGJvb2xlYW4+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIHRydWUgd2hlbiBhIG11bHRpLWVudGl0eSBxdWVyeSBjb21tYW5kIGlzIGluIHByb2dyZXNzLiAqL1xuICByZWFkb25seSBsb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPiB8IFN0b3JlPGJvb2xlYW4+O1xuXG4gIC8qKiBDaGFuZ2VTdGF0ZSAoaW5jbHVkaW5nIG9yaWdpbmFsIHZhbHVlcykgb2YgZW50aXRpZXMgd2l0aCB1bnNhdmVkIGNoYW5nZXMgKi9cbiAgcmVhZG9ubHkgY2hhbmdlU3RhdGUkOlxuICAgIHwgT2JzZXJ2YWJsZTxDaGFuZ2VTdGF0ZU1hcDxUPj5cbiAgICB8IFN0b3JlPENoYW5nZVN0YXRlTWFwPFQ+Pjtcbn1cblxuLyoqIENyZWF0ZXMgb2JzZXJ2YWJsZSBFbnRpdHlTZWxlY3RvcnMkIGZvciBlbnRpdHkgY29sbGVjdGlvbnMuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRW50aXR5U2VsZWN0b3JzJEZhY3Rvcnkge1xuICAvKiogT2JzZXJ2YWJsZSBvZiB0aGUgRW50aXR5Q2FjaGUgKi9cbiAgZW50aXR5Q2FjaGUkOiBPYnNlcnZhYmxlPEVudGl0eUNhY2hlPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiBlcnJvciBFbnRpdHlBY3Rpb25zIChlLmcuIFFVRVJZX0FMTF9FUlJPUikgZm9yIGFsbCBlbnRpdHkgdHlwZXMgKi9cbiAgZW50aXR5QWN0aW9uRXJyb3JzJDogT2JzZXJ2YWJsZTxFbnRpdHlBY3Rpb24+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4sXG4gICAgcHJpdmF0ZSBhY3Rpb25zOiBBY3Rpb25zPEVudGl0eUFjdGlvbj4sXG4gICAgQEluamVjdChFTlRJVFlfQ0FDSEVfU0VMRUNUT1JfVE9LRU4pXG4gICAgcHJpdmF0ZSBzZWxlY3RFbnRpdHlDYWNoZTogRW50aXR5Q2FjaGVTZWxlY3RvclxuICApIHtcbiAgICAvLyBUaGlzIHNlcnZpY2UgYXBwbGllcyB0byB0aGUgY2FjaGUgaW4gbmdyeC9zdG9yZSBuYW1lZCBgY2FjaGVOYW1lYFxuICAgIHRoaXMuZW50aXR5Q2FjaGUkID0gdGhpcy5zdG9yZS5zZWxlY3QodGhpcy5zZWxlY3RFbnRpdHlDYWNoZSk7XG4gICAgdGhpcy5lbnRpdHlBY3Rpb25FcnJvcnMkID0gYWN0aW9ucy5waXBlKFxuICAgICAgZmlsdGVyKFxuICAgICAgICAoZWE6IEVudGl0eUFjdGlvbikgPT5cbiAgICAgICAgICBlYS5wYXlsb2FkICYmXG4gICAgICAgICAgZWEucGF5bG9hZC5lbnRpdHlPcCAmJlxuICAgICAgICAgIGVhLnBheWxvYWQuZW50aXR5T3AuZW5kc1dpdGgoT1BfRVJST1IpXG4gICAgICApLFxuICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gZW50aXR5IGNvbGxlY3Rpb24ncyBzZWxlY3RvcnMkIG9ic2VydmFibGVzIGZvciB0aGlzIGZhY3RvcnkncyBzdG9yZS5cbiAgICogYHNlbGVjdG9ycyRgIGFyZSBvYnNlcnZhYmxlIHNlbGVjdG9ycyBvZiB0aGUgY2FjaGVkIGVudGl0eSBjb2xsZWN0aW9uLlxuICAgKiBAcGFyYW0gZW50aXR5TmFtZSAtIGlzIGFsc28gdGhlIG5hbWUgb2YgdGhlIGNvbGxlY3Rpb24uXG4gICAqIEBwYXJhbSBzZWxlY3RvcnMgLSBzZWxlY3RvciBmdW5jdGlvbnMgZm9yIHRoaXMgY29sbGVjdGlvbi5cbiAgICoqL1xuICBjcmVhdGU8VCwgUyQgZXh0ZW5kcyBFbnRpdHlTZWxlY3RvcnMkPFQ+ID0gRW50aXR5U2VsZWN0b3JzJDxUPj4oXG4gICAgZW50aXR5TmFtZTogc3RyaW5nLFxuICAgIHNlbGVjdG9yczogRW50aXR5U2VsZWN0b3JzPFQ+XG4gICk6IFMkIHtcbiAgICBjb25zdCBzZWxlY3RvcnMkOiB7IFtwcm9wOiBzdHJpbmddOiBhbnkgfSA9IHtcbiAgICAgIGVudGl0eU5hbWUsXG4gICAgfTtcblxuICAgIE9iamVjdC5rZXlzKHNlbGVjdG9ycykuZm9yRWFjaCgobmFtZSkgPT4ge1xuICAgICAgaWYgKG5hbWUuc3RhcnRzV2l0aCgnc2VsZWN0JykpIHtcbiAgICAgICAgLy8gc3RyaXAgJ3NlbGVjdCcgcHJlZml4IGZyb20gdGhlIHNlbGVjdG9yIGZuIG5hbWUgYW5kIGFwcGVuZCBgJGBcbiAgICAgICAgLy8gRXg6ICdzZWxlY3RFbnRpdGllcycgPT4gJ2VudGl0aWVzJCdcbiAgICAgICAgY29uc3QgbmFtZSQgPSBuYW1lWzZdLnRvTG93ZXJDYXNlKCkgKyBuYW1lLnN1YnN0cig3KSArICckJztcbiAgICAgICAgc2VsZWN0b3JzJFtuYW1lJF0gPSB0aGlzLnN0b3JlLnNlbGVjdCgoPGFueT5zZWxlY3RvcnMpW25hbWVdKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBzZWxlY3RvcnMkLmVudGl0eUFjdGlvbnMkID0gdGhpcy5hY3Rpb25zLnBpcGUob2ZFbnRpdHlUeXBlKGVudGl0eU5hbWUpKTtcbiAgICBzZWxlY3RvcnMkLmVycm9ycyQgPSB0aGlzLmVudGl0eUFjdGlvbkVycm9ycyQucGlwZShcbiAgICAgIG9mRW50aXR5VHlwZShlbnRpdHlOYW1lKVxuICAgICk7XG4gICAgcmV0dXJuIHNlbGVjdG9ycyQgYXMgUyQ7XG4gIH1cbn1cbiJdfQ==
@@ -3,6 +3,8 @@ import { createSelector } from '@ngrx/store';
3
3
  import { ENTITY_CACHE_SELECTOR_TOKEN, createEntityCacheSelector, } from './entity-cache-selector';
4
4
  import { ENTITY_CACHE_NAME } from '../reducers/constants';
5
5
  import { EntityCollectionCreator } from '../reducers/entity-collection-creator';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../reducers/entity-collection-creator";
6
8
  /** Creates EntitySelector functions for entity collections. */
7
9
  export class EntitySelectorsFactory {
8
10
  constructor(entityCollectionCreator, selectEntityCache) {
@@ -72,12 +74,16 @@ export class EntitySelectorsFactory {
72
74
  selectCollection, selectEntityCache: this.selectEntityCache }, entitySelectors);
73
75
  }
74
76
  }
75
- EntitySelectorsFactory.decorators = [
76
- { type: Injectable }
77
- ];
78
- /** @nocollapse */
79
- EntitySelectorsFactory.ctorParameters = () => [
80
- { type: EntityCollectionCreator, decorators: [{ type: Optional }] },
81
- { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [ENTITY_CACHE_SELECTOR_TOKEN,] }] }
82
- ];
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZGF0YS9zcmMvc2VsZWN0b3JzL2VudGl0eS1zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTdELE9BQU8sRUFBRSxjQUFjLEVBQVksTUFBTSxhQUFhLENBQUM7QUFJdkQsT0FBTyxFQUNMLDJCQUEyQixFQUUzQix5QkFBeUIsR0FDMUIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUsxRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQW9GaEYsK0RBQStEO0FBRS9ELE1BQU0sT0FBTyxzQkFBc0I7SUFJakMsWUFDYyx1QkFBaUQsRUFHN0QsaUJBQXVDO1FBRXZDLElBQUksQ0FBQyx1QkFBdUI7WUFDMUIsdUJBQXVCLElBQUksSUFBSSx1QkFBdUIsRUFBRSxDQUFDO1FBQzNELElBQUksQ0FBQyxpQkFBaUI7WUFDcEIsaUJBQWlCLElBQUkseUJBQXlCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHdCQUF3QixDQUd0QixVQUFrQjtRQUNsQixNQUFNLGFBQWEsR0FBRyxDQUFDLFFBQXFCLEVBQUUsRUFBRSxFQUFFLENBQzdDLENBQ0QsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDO1lBQ2hCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLENBQUksVUFBVSxDQUFDLENBQUMsQ0FDdEQsQ0FBQztRQUNKLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBOEJELDJDQUEyQztJQUMzQyx5QkFBeUIsQ0FHdkIsY0FBMEM7UUFDMUMsTUFBTSxRQUFRLEdBQ1osT0FBTyxjQUFjLEtBQUssUUFBUTtZQUNoQyxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFO1lBQ2hDLENBQUMsQ0FBQyxjQUFjLENBQUM7UUFDckIsTUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFzQixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1FBQ3JELE1BQU0sZUFBZSxHQUFHLENBQUMsQ0FBc0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUUvRCxNQUFNLGNBQWMsR0FHaEIsY0FBYyxDQUNoQixVQUFVLEVBQ1YsZUFBZSxFQUNmLENBQUMsSUFBeUIsRUFBRSxRQUF1QixFQUFPLEVBQUUsQ0FDMUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBTSxDQUFDLENBQ3hDLENBQUM7UUFFRixNQUFNLFdBQVcsR0FBMEMsY0FBYyxDQUN2RSxVQUFVLEVBQ1YsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQ3RCLENBQUM7UUFFRixrRkFBa0Y7UUFDbEYsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFzQixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBRTFELE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDbkMsTUFBTSxzQkFBc0IsR0FBdUMsUUFBUTtZQUN6RSxDQUFDLENBQUMsY0FBYyxDQUNaLGNBQWMsRUFDZCxZQUFZLEVBQ1osQ0FBQyxRQUFhLEVBQUUsT0FBWSxFQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUNsRTtZQUNILENBQUMsQ0FBQyxjQUFjLENBQUM7UUFFbkIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFzQixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQzFELE1BQU0sYUFBYSxHQUFHLENBQUMsQ0FBc0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUM1RCxNQUFNLGlCQUFpQixHQUFHLENBQUMsQ0FBc0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztRQUVwRSw2RUFBNkU7UUFDN0UsMkNBQTJDO1FBQzNDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyx5QkFBeUIsSUFBSSxFQUFFLENBQUM7UUFDdkQsTUFBTSxjQUFjLEdBRWhCLEVBQUUsQ0FBQztRQUNQLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDL0IsY0FBYyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQzNELENBQXNCLEVBQ3RCLEVBQUUsQ0FBTyxDQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLGdCQUNMLFdBQVc7WUFDWCxjQUFjO1lBQ2QsZUFBZTtZQUNmLFlBQVk7WUFDWixzQkFBc0I7WUFDdEIsVUFBVTtZQUNWLFlBQVk7WUFDWixhQUFhO1lBQ2IsaUJBQWlCLElBQ2QsY0FBYyxDQUNiLENBQUM7SUFDVCxDQUFDO0lBcUNELDJDQUEyQztJQUMzQyxNQUFNLENBQ0osY0FBMEM7UUFFMUMsTUFBTSxRQUFRLEdBQ1osT0FBTyxjQUFjLEtBQUssUUFBUTtZQUNoQyxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFO1lBQ2hDLENBQUMsQ0FBQyxjQUFjLENBQUM7UUFDckIsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQztRQUN2QyxNQUFNLGdCQUFnQixHQUdsQixJQUFJLENBQUMsd0JBQXdCLENBQUksVUFBVSxDQUFDLENBQUM7UUFDakQsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUksUUFBUSxDQUFDLENBQUM7UUFFeEUsTUFBTSxlQUFlLEdBRWpCLEVBQUUsQ0FBQztRQUNQLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUM3QyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsY0FBYyxDQUNqQyxnQkFBZ0IsRUFDaEIsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQ3ZCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sZ0JBQ0wsVUFBVTtZQUNWLGdCQUFnQixFQUNoQixpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCLElBQ3RDLGVBQWUsQ0FDZCxDQUFDO0lBQ1QsQ0FBQzs7O1lBck1GLFVBQVU7Ozs7WUFyRkYsdUJBQXVCLHVCQTJGM0IsUUFBUTs0Q0FDUixRQUFRLFlBQ1IsTUFBTSxTQUFDLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLy8gUHJvZCBidWlsZCByZXF1aXJlcyBgTWVtb2l6ZWRTZWxlY3RvciBldmVuIHRob3VnaCBub3QgdXNlZC5cbmltcG9ydCB7IE1lbW9pemVkU2VsZWN0b3IgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBjcmVhdGVTZWxlY3RvciwgU2VsZWN0b3IgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnQG5ncngvZW50aXR5JztcblxuaW1wb3J0IHsgRW50aXR5Q2FjaGUgfSBmcm9tICcuLi9yZWR1Y2Vycy9lbnRpdHktY2FjaGUnO1xuaW1wb3J0IHtcbiAgRU5USVRZX0NBQ0hFX1NFTEVDVE9SX1RPS0VOLFxuICBFbnRpdHlDYWNoZVNlbGVjdG9yLFxuICBjcmVhdGVFbnRpdHlDYWNoZVNlbGVjdG9yLFxufSBmcm9tICcuL2VudGl0eS1jYWNoZS1zZWxlY3Rvcic7XG5pbXBvcnQgeyBFTlRJVFlfQ0FDSEVfTkFNRSB9IGZyb20gJy4uL3JlZHVjZXJzL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBFbnRpdHlDb2xsZWN0aW9uLFxuICBDaGFuZ2VTdGF0ZU1hcCxcbn0gZnJvbSAnLi4vcmVkdWNlcnMvZW50aXR5LWNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRW50aXR5Q29sbGVjdGlvbkNyZWF0b3IgfSBmcm9tICcuLi9yZWR1Y2Vycy9lbnRpdHktY29sbGVjdGlvbi1jcmVhdG9yJztcbmltcG9ydCB7IEVudGl0eU1ldGFkYXRhIH0gZnJvbSAnLi4vZW50aXR5LW1ldGFkYXRhL2VudGl0eS1tZXRhZGF0YSc7XG5cbi8qKlxuICogVGhlIHNlbGVjdG9yIGZ1bmN0aW9ucyBmb3IgZW50aXR5IGNvbGxlY3Rpb24gbWVtYmVycyxcbiAqIFNlbGVjdHMgZnJvbSB0aGUgZW50aXR5IGNvbGxlY3Rpb24gdG8gdGhlIGNvbGxlY3Rpb24gbWVtYmVyXG4gKiBDb250cmFzdCB3aXRoIHtFbnRpdHlTZWxlY3RvcnN9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbGxlY3Rpb25TZWxlY3RvcnM8VD4ge1xuICByZWFkb25seSBbc2VsZWN0b3I6IHN0cmluZ106IGFueTtcblxuICAvKiogQ291bnQgb2YgZW50aXRpZXMgaW4gdGhlIGNhY2hlZCBjb2xsZWN0aW9uLiAqL1xuICByZWFkb25seSBzZWxlY3RDb3VudDogU2VsZWN0b3I8RW50aXR5Q29sbGVjdGlvbjxUPiwgbnVtYmVyPjtcblxuICAvKiogQWxsIGVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbi4gKi9cbiAgcmVhZG9ubHkgc2VsZWN0RW50aXRpZXM6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIFRbXT47XG5cbiAgLyoqIE1hcCBvZiBlbnRpdHkga2V5cyB0byBlbnRpdGllcyAqL1xuICByZWFkb25seSBzZWxlY3RFbnRpdHlNYXA6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIERpY3Rpb25hcnk8VD4+O1xuXG4gIC8qKiBGaWx0ZXIgcGF0dGVybiBhcHBsaWVkIGJ5IHRoZSBlbnRpdHkgY29sbGVjdGlvbidzIGZpbHRlciBmdW5jdGlvbiAqL1xuICByZWFkb25seSBzZWxlY3RGaWx0ZXI6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIHN0cmluZz47XG5cbiAgLyoqIEVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbiB0aGF0IHBhc3MgdGhlIGZpbHRlciBmdW5jdGlvbiAqL1xuICByZWFkb25seSBzZWxlY3RGaWx0ZXJlZEVudGl0aWVzOiBTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBUW10+O1xuXG4gIC8qKiBLZXlzIG9mIHRoZSBjYWNoZWQgY29sbGVjdGlvbiwgaW4gdGhlIGNvbGxlY3Rpb24ncyBuYXRpdmUgc29ydCBvcmRlciAqL1xuICByZWFkb25seSBzZWxlY3RLZXlzOiBTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBzdHJpbmdbXSB8IG51bWJlcltdPjtcblxuICAvKiogVHJ1ZSB3aGVuIHRoZSBjb2xsZWN0aW9uIGhhcyBiZWVuIGZ1bGx5IGxvYWRlZC4gKi9cbiAgcmVhZG9ubHkgc2VsZWN0TG9hZGVkOiBTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBib29sZWFuPjtcblxuICAvKiogVHJ1ZSB3aGVuIGEgbXVsdGktZW50aXR5IHF1ZXJ5IGNvbW1hbmQgaXMgaW4gcHJvZ3Jlc3MuICovXG4gIHJlYWRvbmx5IHNlbGVjdExvYWRpbmc6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIGJvb2xlYW4+O1xuXG4gIC8qKiBDaGFuZ2VTdGF0ZSAoaW5jbHVkaW5nIG9yaWdpbmFsIHZhbHVlcykgb2YgZW50aXRpZXMgd2l0aCB1bnNhdmVkIGNoYW5nZXMgKi9cbiAgcmVhZG9ubHkgc2VsZWN0Q2hhbmdlU3RhdGU6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIENoYW5nZVN0YXRlTWFwPFQ+Pjtcbn1cblxuLyoqXG4gKiBUaGUgc2VsZWN0b3IgZnVuY3Rpb25zIGZvciBlbnRpdHkgY29sbGVjdGlvbiBtZW1iZXJzLFxuICogU2VsZWN0cyBmcm9tIHN0b3JlIHJvb3QsIHRocm91Z2ggRW50aXR5Q2FjaGUsIHRvIHRoZSBlbnRpdHkgY29sbGVjdGlvbiBtZW1iZXJcbiAqIENvbnRyYXN0IHdpdGgge0NvbGxlY3Rpb25TZWxlY3RvcnN9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVudGl0eVNlbGVjdG9yczxUPiB7XG4gIC8qKiBOYW1lIG9mIHRoZSBlbnRpdHkgY29sbGVjdGlvbiBmb3IgdGhlc2Ugc2VsZWN0b3JzICovXG4gIHJlYWRvbmx5IGVudGl0eU5hbWU6IHN0cmluZztcblxuICByZWFkb25seSBbbmFtZTogc3RyaW5nXTogTWVtb2l6ZWRTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBhbnk+IHwgc3RyaW5nO1xuXG4gIC8qKiBUaGUgY2FjaGVkIEVudGl0eUNvbGxlY3Rpb24gaXRzZWxmICovXG4gIHJlYWRvbmx5IHNlbGVjdENvbGxlY3Rpb246IE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBFbnRpdHlDb2xsZWN0aW9uPFQ+PjtcblxuICAvKiogQ291bnQgb2YgZW50aXRpZXMgaW4gdGhlIGNhY2hlZCBjb2xsZWN0aW9uLiAqL1xuICByZWFkb25seSBzZWxlY3RDb3VudDogTWVtb2l6ZWRTZWxlY3RvcjxPYmplY3QsIG51bWJlcj47XG5cbiAgLyoqIEFsbCBlbnRpdGllcyBpbiB0aGUgY2FjaGVkIGNvbGxlY3Rpb24uICovXG4gIHJlYWRvbmx5IHNlbGVjdEVudGl0aWVzOiBNZW1vaXplZFNlbGVjdG9yPE9iamVjdCwgVFtdPjtcblxuICAvKiogVGhlIEVudGl0eUNhY2hlICovXG4gIHJlYWRvbmx5IHNlbGVjdEVudGl0eUNhY2hlOiBNZW1vaXplZFNlbGVjdG9yPE9iamVjdCwgRW50aXR5Q2FjaGU+O1xuXG4gIC8qKiBNYXAgb2YgZW50aXR5IGtleXMgdG8gZW50aXRpZXMgKi9cbiAgcmVhZG9ubHkgc2VsZWN0RW50aXR5TWFwOiBNZW1vaXplZFNlbGVjdG9yPE9iamVjdCwgRGljdGlvbmFyeTxUPj47XG5cbiAgLyoqIEZpbHRlciBwYXR0ZXJuIGFwcGxpZWQgYnkgdGhlIGVudGl0eSBjb2xsZWN0aW9uJ3MgZmlsdGVyIGZ1bmN0aW9uICovXG4gIHJlYWRvbmx5IHNlbGVjdEZpbHRlcjogTWVtb2l6ZWRTZWxlY3RvcjxPYmplY3QsIHN0cmluZz47XG5cbiAgLyoqIEVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbiB0aGF0IHBhc3MgdGhlIGZpbHRlciBmdW5jdGlvbiAqL1xuICByZWFkb25seSBzZWxlY3RGaWx0ZXJlZEVudGl0aWVzOiBNZW1vaXplZFNlbGVjdG9yPE9iamVjdCwgVFtdPjtcblxuICAvKiogS2V5cyBvZiB0aGUgY2FjaGVkIGNvbGxlY3Rpb24sIGluIHRoZSBjb2xsZWN0aW9uJ3MgbmF0aXZlIHNvcnQgb3JkZXIgKi9cbiAgcmVhZG9ubHkgc2VsZWN0S2V5czogTWVtb2l6ZWRTZWxlY3RvcjxPYmplY3QsIHN0cmluZ1tdIHwgbnVtYmVyW10+O1xuXG4gIC8qKiBUcnVlIHdoZW4gdGhlIGNvbGxlY3Rpb24gaGFzIGJlZW4gZnVsbHkgbG9hZGVkLiAqL1xuICByZWFkb25seSBzZWxlY3RMb2FkZWQ6IE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBib29sZWFuPjtcblxuICAvKiogVHJ1ZSB3aGVuIGEgbXVsdGktZW50aXR5IHF1ZXJ5IGNvbW1hbmQgaXMgaW4gcHJvZ3Jlc3MuICovXG4gIHJlYWRvbmx5IHNlbGVjdExvYWRpbmc6IE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBib29sZWFuPjtcblxuICAvKiogQ2hhbmdlU3RhdGUgKGluY2x1ZGluZyBvcmlnaW5hbCB2YWx1ZXMpIG9mIGVudGl0aWVzIHdpdGggdW5zYXZlZCBjaGFuZ2VzICovXG4gIHJlYWRvbmx5IHNlbGVjdENoYW5nZVN0YXRlOiBNZW1vaXplZFNlbGVjdG9yPE9iamVjdCwgQ2hhbmdlU3RhdGVNYXA8VD4+O1xufVxuXG4vKiogQ3JlYXRlcyBFbnRpdHlTZWxlY3RvciBmdW5jdGlvbnMgZm9yIGVudGl0eSBjb2xsZWN0aW9ucy4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFbnRpdHlTZWxlY3RvcnNGYWN0b3J5IHtcbiAgcHJpdmF0ZSBlbnRpdHlDb2xsZWN0aW9uQ3JlYXRvcjogRW50aXR5Q29sbGVjdGlvbkNyZWF0b3I7XG4gIHByaXZhdGUgc2VsZWN0RW50aXR5Q2FjaGU6IEVudGl0eUNhY2hlU2VsZWN0b3I7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgZW50aXR5Q29sbGVjdGlvbkNyZWF0b3I/OiBFbnRpdHlDb2xsZWN0aW9uQ3JlYXRvcixcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoRU5USVRZX0NBQ0hFX1NFTEVDVE9SX1RPS0VOKVxuICAgIHNlbGVjdEVudGl0eUNhY2hlPzogRW50aXR5Q2FjaGVTZWxlY3RvclxuICApIHtcbiAgICB0aGlzLmVudGl0eUNvbGxlY3Rpb25DcmVhdG9yID1cbiAgICAgIGVudGl0eUNvbGxlY3Rpb25DcmVhdG9yIHx8IG5ldyBFbnRpdHlDb2xsZWN0aW9uQ3JlYXRvcigpO1xuICAgIHRoaXMuc2VsZWN0RW50aXR5Q2FjaGUgPVxuICAgICAgc2VsZWN0RW50aXR5Q2FjaGUgfHwgY3JlYXRlRW50aXR5Q2FjaGVTZWxlY3RvcihFTlRJVFlfQ0FDSEVfTkFNRSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIHRoZSBOZ1J4IHNlbGVjdG9yIGZyb20gdGhlIHN0b3JlIHJvb3QgdG8gdGhlIG5hbWVkIGNvbGxlY3Rpb24sXG4gICAqIGUuZy4gZnJvbSBPYmplY3QgdG8gSGVyb2VzLlxuICAgKiBAcGFyYW0gZW50aXR5TmFtZSB0aGUgbmFtZSBvZiB0aGUgY29sbGVjdGlvblxuICAgKi9cbiAgY3JlYXRlQ29sbGVjdGlvblNlbGVjdG9yPFxuICAgIFQgPSBhbnksXG4gICAgQyBleHRlbmRzIEVudGl0eUNvbGxlY3Rpb248VD4gPSBFbnRpdHlDb2xsZWN0aW9uPFQ+XG4gID4oZW50aXR5TmFtZTogc3RyaW5nKSB7XG4gICAgY29uc3QgZ2V0Q29sbGVjdGlvbiA9IChjYWNoZTogRW50aXR5Q2FjaGUgPSB7fSkgPT5cbiAgICAgIDxDPihcbiAgICAgICAgKGNhY2hlW2VudGl0eU5hbWVdIHx8XG4gICAgICAgICAgdGhpcy5lbnRpdHlDb2xsZWN0aW9uQ3JlYXRvci5jcmVhdGU8VD4oZW50aXR5TmFtZSkpXG4gICAgICApO1xuICAgIHJldHVybiBjcmVhdGVTZWxlY3Rvcih0aGlzLnNlbGVjdEVudGl0eUNhY2hlLCBnZXRDb2xsZWN0aW9uKTtcbiAgfVxuXG4gIC8vLy8vLy8gY3JlYXRlQ29sbGVjdGlvblNlbGVjdG9ycyAvLy8vLy8vLy8vXG5cbiAgLy8gQmFzZWQgb24gQG5ncngvZW50aXR5L3N0YXRlX3NlbGVjdG9ycy50c1xuXG4gIC8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC91bmlmaWVkLXNpZ25hdHVyZXMgKi9cbiAgLy8gY3JlYXRlQ29sbGVjdGlvblNlbGVjdG9ycyhtZXRhZGF0YSkgb3ZlcmxvYWRcbiAgLyoqXG4gICAqIENyZWF0ZXMgZW50aXR5IGNvbGxlY3Rpb24gc2VsZWN0b3JzIGZyb20gbWV0YWRhdGEuXG4gICAqIEBwYXJhbSBtZXRhZGF0YSAtIEVudGl0eU1ldGFkYXRhIGZvciB0aGUgY29sbGVjdGlvbi5cbiAgICogTWF5IGJlIHBhcnRpYWwgYnV0IG11Y2ggaGF2ZSBgZW50aXR5TmFtZWAuXG4gICAqL1xuICBjcmVhdGVDb2xsZWN0aW9uU2VsZWN0b3JzPFxuICAgIFQsXG4gICAgUyBleHRlbmRzIENvbGxlY3Rpb25TZWxlY3RvcnM8VD4gPSBDb2xsZWN0aW9uU2VsZWN0b3JzPFQ+XG4gID4obWV0YWRhdGE6IEVudGl0eU1ldGFkYXRhPFQ+KTogUztcblxuICAvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5pZmllZC1zaWduYXR1cmVzICovXG4gIC8vIGNyZWF0ZUNvbGxlY3Rpb25TZWxlY3RvcnMoZW50aXR5TmFtZSkgb3ZlcmxvYWRcbiAgLyoqXG4gICAqIENyZWF0ZXMgZGVmYXVsdCBlbnRpdHkgY29sbGVjdGlvbiBzZWxlY3RvcnMgZm9yIGFuIGVudGl0eSB0eXBlLlxuICAgKiBVc2UgdGhlIG1ldGFkYXRhIG92ZXJsb2FkIGZvciBhZGRpdGlvbmFsIGNvbGxlY3Rpb24gc2VsZWN0b3JzLlxuICAgKiBAcGFyYW0gZW50aXR5TmFtZSAtIG5hbWUgb2YgdGhlIGVudGl0eSB0eXBlXG4gICAqL1xuICBjcmVhdGVDb2xsZWN0aW9uU2VsZWN0b3JzPFxuICAgIFQsXG4gICAgUyBleHRlbmRzIENvbGxlY3Rpb25TZWxlY3RvcnM8VD4gPSBDb2xsZWN0aW9uU2VsZWN0b3JzPFQ+XG4gID4oZW50aXR5TmFtZTogc3RyaW5nKTogUztcblxuICAvLyBjcmVhdGVDb2xsZWN0aW9uU2VsZWN0b3JzIGltcGxlbWVudGF0aW9uXG4gIGNyZWF0ZUNvbGxlY3Rpb25TZWxlY3RvcnM8XG4gICAgVCxcbiAgICBTIGV4dGVuZHMgQ29sbGVjdGlvblNlbGVjdG9yczxUPiA9IENvbGxlY3Rpb25TZWxlY3RvcnM8VD5cbiAgPihtZXRhZGF0YU9yTmFtZTogRW50aXR5TWV0YWRhdGE8VD4gfCBzdHJpbmcpOiBTIHtcbiAgICBjb25zdCBtZXRhZGF0YSA9XG4gICAgICB0eXBlb2YgbWV0YWRhdGFPck5hbWUgPT09ICdzdHJpbmcnXG4gICAgICAgID8geyBlbnRpdHlOYW1lOiBtZXRhZGF0YU9yTmFtZSB9XG4gICAgICAgIDogbWV0YWRhdGFPck5hbWU7XG4gICAgY29uc3Qgc2VsZWN0S2V5cyA9IChjOiBFbnRpdHlDb2xsZWN0aW9uPFQ+KSA9PiBjLmlkcztcbiAgICBjb25zdCBzZWxlY3RFbnRpdHlNYXAgPSAoYzogRW50aXR5Q29sbGVjdGlvbjxUPikgPT4gYy5lbnRpdGllcztcblxuICAgIGNvbnN0IHNlbGVjdEVudGl0aWVzOiBTZWxlY3RvcjxcbiAgICAgIEVudGl0eUNvbGxlY3Rpb248VD4sXG4gICAgICBUW11cbiAgICA+ID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICBzZWxlY3RLZXlzLFxuICAgICAgc2VsZWN0RW50aXR5TWFwLFxuICAgICAgKGtleXM6IChudW1iZXIgfCBzdHJpbmcpW10sIGVudGl0aWVzOiBEaWN0aW9uYXJ5PFQ+KTogVFtdID0+XG4gICAgICAgIGtleXMubWFwKChrZXkpID0+IGVudGl0aWVzW2tleV0gYXMgVClcbiAgICApO1xuXG4gICAgY29uc3Qgc2VsZWN0Q291bnQ6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIG51bWJlcj4gPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIHNlbGVjdEtleXMsXG4gICAgICAoa2V5cykgPT4ga2V5cy5sZW5ndGhcbiAgICApO1xuXG4gICAgLy8gRW50aXR5Q29sbGVjdGlvbiBzZWxlY3RvcnMgdGhhdCBnbyBiZXlvbmQgdGhlIG5ncngvZW50aXR5L0VudGl0eVN0YXRlIHNlbGVjdG9yc1xuICAgIGNvbnN0IHNlbGVjdEZpbHRlciA9IChjOiBFbnRpdHlDb2xsZWN0aW9uPFQ+KSA9PiBjLmZpbHRlcjtcblxuICAgIGNvbnN0IGZpbHRlckZuID0gbWV0YWRhdGEuZmlsdGVyRm47XG4gICAgY29uc3Qgc2VsZWN0RmlsdGVyZWRFbnRpdGllczogU2VsZWN0b3I8RW50aXR5Q29sbGVjdGlvbjxUPiwgVFtdPiA9IGZpbHRlckZuXG4gICAgICA/IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgICAgIHNlbGVjdEVudGl0aWVzLFxuICAgICAgICAgIHNlbGVjdEZpbHRlcixcbiAgICAgICAgICAoZW50aXRpZXM6IFRbXSwgcGF0dGVybjogYW55KTogVFtdID0+IGZpbHRlckZuKGVudGl0aWVzLCBwYXR0ZXJuKVxuICAgICAgICApXG4gICAgICA6IHNlbGVjdEVudGl0aWVzO1xuXG4gICAgY29uc3Qgc2VsZWN0TG9hZGVkID0gKGM6IEVudGl0eUNvbGxlY3Rpb248VD4pID0+IGMubG9hZGVkO1xuICAgIGNvbnN0IHNlbGVjdExvYWRpbmcgPSAoYzogRW50aXR5Q29sbGVjdGlvbjxUPikgPT4gYy5sb2FkaW5nO1xuICAgIGNvbnN0IHNlbGVjdENoYW5nZVN0YXRlID0gKGM6IEVudGl0eUNvbGxlY3Rpb248VD4pID0+IGMuY2hhbmdlU3RhdGU7XG5cbiAgICAvLyBDcmVhdGUgY29sbGVjdGlvbiBzZWxlY3RvcnMgZm9yIGVhY2ggYGFkZGl0aW9uYWxDb2xsZWN0aW9uU3RhdGVgIHByb3BlcnR5LlxuICAgIC8vIFRoZXNlIGFsbCBleHRlbmQgZnJvbSBgc2VsZWN0Q29sbGVjdGlvbmBcbiAgICBjb25zdCBleHRyYSA9IG1ldGFkYXRhLmFkZGl0aW9uYWxDb2xsZWN0aW9uU3RhdGUgfHwge307XG4gICAgY29uc3QgZXh0cmFTZWxlY3RvcnM6IHtcbiAgICAgIFtuYW1lOiBzdHJpbmddOiBTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBhbnk+O1xuICAgIH0gPSB7fTtcbiAgICBPYmplY3Qua2V5cyhleHRyYSkuZm9yRWFjaCgoaykgPT4ge1xuICAgICAgZXh0cmFTZWxlY3RvcnNbJ3NlbGVjdCcgKyBrWzBdLnRvVXBwZXJDYXNlKCkgKyBrLnNsaWNlKDEpXSA9IChcbiAgICAgICAgYzogRW50aXR5Q29sbGVjdGlvbjxUPlxuICAgICAgKSA9PiAoPGFueT5jKVtrXTtcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICBzZWxlY3RDb3VudCxcbiAgICAgIHNlbGVjdEVudGl0aWVzLFxuICAgICAgc2VsZWN0RW50aXR5TWFwLFxuICAgICAgc2VsZWN0RmlsdGVyLFxuICAgICAgc2VsZWN0RmlsdGVyZWRFbnRpdGllcyxcbiAgICAgIHNlbGVjdEtleXMsXG4gICAgICBzZWxlY3RMb2FkZWQsXG4gICAgICBzZWxlY3RMb2FkaW5nLFxuICAgICAgc2VsZWN0Q2hhbmdlU3RhdGUsXG4gICAgICAuLi5leHRyYVNlbGVjdG9ycyxcbiAgICB9IGFzIFM7XG4gIH1cblxuICAvLy8vLy8vIGNyZWF0ZSAvLy8vLy8vLy8vXG5cbiAgLy8gY3JlYXRlKG1ldGFkYXRhKSBvdmVybG9hZFxuICAvKipcbiAgICogQ3JlYXRlcyB0aGUgc3RvcmUtcm9vdGVkIHNlbGVjdG9ycyBmb3IgYW4gZW50aXR5IGNvbGxlY3Rpb24uXG4gICAqIHtFbnRpdHlTZWxlY3RvcnMkRmFjdG9yeX0gdHVybnMgdGhlbSBpbnRvIHNlbGVjdG9ycyQuXG4gICAqXG4gICAqIEBwYXJhbSBtZXRhZGF0YSAtIEVudGl0eU1ldGFkYXRhIGZvciB0aGUgY29sbGVjdGlvbi5cbiAgICogTWF5IGJlIHBhcnRpYWwgYnV0IG11Y2ggaGF2ZSBgZW50aXR5TmFtZWAuXG4gICAqXG4gICAqIEJhc2VkIG9uIG5ncngvZW50aXR5L3N0YXRlX3NlbGVjdG9ycy50c1xuICAgKiBEaWZmZXJzIGluIHRoYXQgdGhlc2Ugc2VsZWN0b3JzIHNlbGVjdCBmcm9tIHRoZSBOZ1J4IHN0b3JlIHJvb3QsXG4gICAqIHRocm91Z2ggdGhlIGNvbGxlY3Rpb24sIHRvIHRoZSBjb2xsZWN0aW9uIG1lbWJlcnMuXG4gICAqL1xuICBjcmVhdGU8VCwgUyBleHRlbmRzIEVudGl0eVNlbGVjdG9yczxUPiA9IEVudGl0eVNlbGVjdG9yczxUPj4oXG4gICAgbWV0YWRhdGE6IEVudGl0eU1ldGFkYXRhPFQ+XG4gICk6IFM7XG5cbiAgLy8gY3JlYXRlKGVudGl0eU5hbWUpIG92ZXJsb2FkXG4gIC8qKlxuICAgKiBDcmVhdGVzIHRoZSBkZWZhdWx0IHN0b3JlLXJvb3RlZCBzZWxlY3RvcnMgZm9yIGFuIGVudGl0eSBjb2xsZWN0aW9uLlxuICAgKiB7RW50aXR5U2VsZWN0b3JzJEZhY3Rvcnl9IHR1cm5zIHRoZW0gaW50byBzZWxlY3RvcnMkLlxuICAgKiBVc2UgdGhlIG1ldGFkYXRhIG92ZXJsb2FkIGZvciBhZGRpdGlvbmFsIGNvbGxlY3Rpb24gc2VsZWN0b3JzLlxuICAgKlxuICAgKiBAcGFyYW0gZW50aXR5TmFtZSAtIG5hbWUgb2YgdGhlIGVudGl0eSB0eXBlLlxuICAgKlxuICAgKiBCYXNlZCBvbiBuZ3J4L2VudGl0eS9zdGF0ZV9zZWxlY3RvcnMudHNcbiAgICogRGlmZmVycyBpbiB0aGF0IHRoZXNlIHNlbGVjdG9ycyBzZWxlY3QgZnJvbSB0aGUgTmdSeCBzdG9yZSByb290LFxuICAgKiB0aHJvdWdoIHRoZSBjb2xsZWN0aW9uLCB0byB0aGUgY29sbGVjdGlvbiBtZW1iZXJzLlxuICAgKi9cbiAgY3JlYXRlPFQsIFMgZXh0ZW5kcyBFbnRpdHlTZWxlY3RvcnM8VD4gPSBFbnRpdHlTZWxlY3RvcnM8VD4+KFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5pZmllZC1zaWduYXR1cmVzXG4gICAgZW50aXR5TmFtZTogc3RyaW5nXG4gICk6IFM7XG5cbiAgLy8gY3JlYXRlQ29sbGVjdGlvblNlbGVjdG9ycyBpbXBsZW1lbnRhdGlvblxuICBjcmVhdGU8VCwgUyBleHRlbmRzIEVudGl0eVNlbGVjdG9yczxUPiA9IEVudGl0eVNlbGVjdG9yczxUPj4oXG4gICAgbWV0YWRhdGFPck5hbWU6IEVudGl0eU1ldGFkYXRhPFQ+IHwgc3RyaW5nXG4gICk6IFMge1xuICAgIGNvbnN0IG1ldGFkYXRhID1cbiAgICAgIHR5cGVvZiBtZXRhZGF0YU9yTmFtZSA9PT0gJ3N0cmluZydcbiAgICAgICAgPyB7IGVudGl0eU5hbWU6IG1ldGFkYXRhT3JOYW1lIH1cbiAgICAgICAgOiBtZXRhZGF0YU9yTmFtZTtcbiAgICBjb25zdCBlbnRpdHlOYW1lID0gbWV0YWRhdGEuZW50aXR5TmFtZTtcbiAgICBjb25zdCBzZWxlY3RDb2xsZWN0aW9uOiBTZWxlY3RvcjxcbiAgICAgIE9iamVjdCxcbiAgICAgIEVudGl0eUNvbGxlY3Rpb248VD5cbiAgICA+ID0gdGhpcy5jcmVhdGVDb2xsZWN0aW9uU2VsZWN0b3I8VD4oZW50aXR5TmFtZSk7XG4gICAgY29uc3QgY29sbGVjdGlvblNlbGVjdG9ycyA9IHRoaXMuY3JlYXRlQ29sbGVjdGlvblNlbGVjdG9yczxUPihtZXRhZGF0YSk7XG5cbiAgICBjb25zdCBlbnRpdHlTZWxlY3RvcnM6IHtcbiAgICAgIFtuYW1lOiBzdHJpbmddOiBTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBhbnk+O1xuICAgIH0gPSB7fTtcbiAgICBPYmplY3Qua2V5cyhjb2xsZWN0aW9uU2VsZWN0b3JzKS5mb3JFYWNoKChrKSA9PiB7XG4gICAgICBlbnRpdHlTZWxlY3RvcnNba10gPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgICAgc2VsZWN0Q29sbGVjdGlvbixcbiAgICAgICAgY29sbGVjdGlvblNlbGVjdG9yc1trXVxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICBlbnRpdHlOYW1lLFxuICAgICAgc2VsZWN0Q29sbGVjdGlvbixcbiAgICAgIHNlbGVjdEVudGl0eUNhY2hlOiB0aGlzLnNlbGVjdEVudGl0eUNhY2hlLFxuICAgICAgLi4uZW50aXR5U2VsZWN0b3JzLFxuICAgIH0gYXMgUztcbiAgfVxufVxuIl19
77
+ /** @nocollapse */ EntitySelectorsFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EntitySelectorsFactory, deps: [{ token: i1.EntityCollectionCreator, optional: true }, { token: ENTITY_CACHE_SELECTOR_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
78
+ /** @nocollapse */ EntitySelectorsFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EntitySelectorsFactory });
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EntitySelectorsFactory, decorators: [{
80
+ type: Injectable
81
+ }], ctorParameters: function () { return [{ type: i1.EntityCollectionCreator, decorators: [{
82
+ type: Optional
83
+ }] }, { type: undefined, decorators: [{
84
+ type: Optional
85
+ }, {
86
+ type: Inject,
87
+ args: [ENTITY_CACHE_SELECTOR_TOKEN]
88
+ }] }]; } });
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZGF0YS9zcmMvc2VsZWN0b3JzL2VudGl0eS1zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTdELE9BQU8sRUFBRSxjQUFjLEVBQVksTUFBTSxhQUFhLENBQUM7QUFJdkQsT0FBTyxFQUNMLDJCQUEyQixFQUUzQix5QkFBeUIsR0FDMUIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUsxRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7O0FBb0ZoRiwrREFBK0Q7QUFFL0QsTUFBTSxPQUFPLHNCQUFzQjtJQUlqQyxZQUNjLHVCQUFpRCxFQUc3RCxpQkFBdUM7UUFFdkMsSUFBSSxDQUFDLHVCQUF1QjtZQUMxQix1QkFBdUIsSUFBSSxJQUFJLHVCQUF1QixFQUFFLENBQUM7UUFDM0QsSUFBSSxDQUFDLGlCQUFpQjtZQUNwQixpQkFBaUIsSUFBSSx5QkFBeUIsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsd0JBQXdCLENBR3RCLFVBQWtCO1FBQ2xCLE1BQU0sYUFBYSxHQUFHLENBQUMsUUFBcUIsRUFBRSxFQUFFLEVBQUUsQ0FDN0MsQ0FDRCxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7WUFDaEIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBSSxVQUFVLENBQUMsQ0FBQyxDQUN0RCxDQUFDO1FBQ0osT0FBTyxjQUFjLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUE4QkQsMkNBQTJDO0lBQzNDLHlCQUF5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SSxRQUFRLENBQUMsQ0FBQztRQUV4RSxNQUFNLGVBQWUsR0FFakIsRUFBRSxDQUFDO1FBQ1AsTUFBTSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzdDLGVBQWUsQ0FBQyxDQUFDLENBQUMsR0FBRyxjQUFjLENBQ2pDLGdCQUFnQixFQUNoQixtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FDdkIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxnQkFDTCxVQUFVO1lBQ1YsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsSUFDdEMsZUFBZSxDQUNkLENBQUM7SUFDVCxDQUFDOztzSUFwTVUsc0JBQXNCLHlFQU92QiwyQkFBMkI7MElBUDFCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQURsQyxVQUFVOzswQkFNTixRQUFROzswQkFDUixRQUFROzswQkFDUixNQUFNOzJCQUFDLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLy8gUHJvZCBidWlsZCByZXF1aXJlcyBgTWVtb2l6ZWRTZWxlY3RvciBldmVuIHRob3VnaCBub3QgdXNlZC5cbmltcG9ydCB7IE1lbW9pemVkU2VsZWN0b3IgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBjcmVhdGVTZWxlY3RvciwgU2VsZWN0b3IgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnQG5ncngvZW50aXR5JztcblxuaW1wb3J0IHsgRW50aXR5Q2FjaGUgfSBmcm9tICcuLi9yZWR1Y2Vycy9lbnRpdHktY2FjaGUnO1xuaW1wb3J0IHtcbiAgRU5USVRZX0NBQ0hFX1NFTEVDVE9SX1RPS0VOLFxuICBFbnRpdHlDYWNoZVNlbGVjdG9yLFxuICBjcmVhdGVFbnRpdHlDYWNoZVNlbGVjdG9yLFxufSBmcm9tICcuL2VudGl0eS1jYWNoZS1zZWxlY3Rvcic7XG5pbXBvcnQgeyBFTlRJVFlfQ0FDSEVfTkFNRSB9IGZyb20gJy4uL3JlZHVjZXJzL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBFbnRpdHlDb2xsZWN0aW9uLFxuICBDaGFuZ2VTdGF0ZU1hcCxcbn0gZnJvbSAnLi4vcmVkdWNlcnMvZW50aXR5LWNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRW50aXR5Q29sbGVjdGlvbkNyZWF0b3IgfSBmcm9tICcuLi9yZWR1Y2Vycy9lbnRpdHktY29sbGVjdGlvbi1jcmVhdG9yJztcbmltcG9ydCB7IEVudGl0eU1ldGFkYXRhIH0gZnJvbSAnLi4vZW50aXR5LW1ldGFkYXRhL2VudGl0eS1tZXRhZGF0YSc7XG5cbi8qKlxuICogVGhlIHNlbGVjdG9yIGZ1bmN0aW9ucyBmb3IgZW50aXR5IGNvbGxlY3Rpb24gbWVtYmVycyxcbiAqIFNlbGVjdHMgZnJvbSB0aGUgZW50aXR5IGNvbGxlY3Rpb24gdG8gdGhlIGNvbGxlY3Rpb24gbWVtYmVyXG4gKiBDb250cmFzdCB3aXRoIHtFbnRpdHlTZWxlY3RvcnN9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbGxlY3Rpb25TZWxlY3RvcnM8VD4ge1xuICByZWFkb25seSBbc2VsZWN0b3I6IHN0cmluZ106IGFueTtcblxuICAvKiogQ291bnQgb2YgZW50aXRpZXMgaW4gdGhlIGNhY2hlZCBjb2xsZWN0aW9uLiAqL1xuICByZWFkb25seSBzZWxlY3RDb3VudDogU2VsZWN0b3I8RW50aXR5Q29sbGVjdGlvbjxUPiwgbnVtYmVyPjtcblxuICAvKiogQWxsIGVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbi4gKi9cbiAgcmVhZG9ubHkgc2VsZWN0RW50aXRpZXM6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIFRbXT47XG5cbiAgLyoqIE1hcCBvZiBlbnRpdHkga2V5cyB0byBlbnRpdGllcyAqL1xuICByZWFkb25seSBzZWxlY3RFbnRpdHlNYXA6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIERpY3Rpb25hcnk8VD4+O1xuXG4gIC8qKiBGaWx0ZXIgcGF0dGVybiBhcHBsaWVkIGJ5IHRoZSBlbnRpdHkgY29sbGVjdGlvbidzIGZpbHRlciBmdW5jdGlvbiAqL1xuICByZWFkb25seSBzZWxlY3RGaWx0ZXI6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIHN0cmluZz47XG5cbiAgLyoqIEVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbiB0aGF0IHBhc3MgdGhlIGZpbHRlciBmdW5jdGlvbiAqL1xuICByZWFkb25seSBzZWxlY3RGaWx0ZXJlZEVudGl0aWVzOiBTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBUW10+O1xuXG4gIC8qKiBLZXlzIG9mIHRoZSBjYWNoZWQgY29sbGVjdGlvbiwgaW4gdGhlIGNvbGxlY3Rpb24ncyBuYXRpdmUgc29ydCBvcmRlciAqL1xuICByZWFkb25seSBzZWxlY3RLZXlzOiBTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBzdHJpbmdbXSB8IG51bWJlcltdPjtcblxuICAvKiogVHJ1ZSB3aGVuIHRoZSBjb2xsZWN0aW9uIGhhcyBiZWVuIGZ1bGx5IGxvYWRlZC4gKi9cbiAgcmVhZG9ubHkgc2VsZWN0TG9hZGVkOiBTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBib29sZWFuPjtcblxuICAvKiogVHJ1ZSB3aGVuIGEgbXVsdGktZW50aXR5IHF1ZXJ5IGNvbW1hbmQgaXMgaW4gcHJvZ3Jlc3MuICovXG4gIHJlYWRvbmx5IHNlbGVjdExvYWRpbmc6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIGJvb2xlYW4+O1xuXG4gIC8qKiBDaGFuZ2VTdGF0ZSAoaW5jbHVkaW5nIG9yaWdpbmFsIHZhbHVlcykgb2YgZW50aXRpZXMgd2l0aCB1bnNhdmVkIGNoYW5nZXMgKi9cbiAgcmVhZG9ubHkgc2VsZWN0Q2hhbmdlU3RhdGU6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIENoYW5nZVN0YXRlTWFwPFQ+Pjtcbn1cblxuLyoqXG4gKiBUaGUgc2VsZWN0b3IgZnVuY3Rpb25zIGZvciBlbnRpdHkgY29sbGVjdGlvbiBtZW1iZXJzLFxuICogU2VsZWN0cyBmcm9tIHN0b3JlIHJvb3QsIHRocm91Z2ggRW50aXR5Q2FjaGUsIHRvIHRoZSBlbnRpdHkgY29sbGVjdGlvbiBtZW1iZXJcbiAqIENvbnRyYXN0IHdpdGgge0NvbGxlY3Rpb25TZWxlY3RvcnN9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVudGl0eVNlbGVjdG9yczxUPiB7XG4gIC8qKiBOYW1lIG9mIHRoZSBlbnRpdHkgY29sbGVjdGlvbiBmb3IgdGhlc2Ugc2VsZWN0b3JzICovXG4gIHJlYWRvbmx5IGVudGl0eU5hbWU6IHN0cmluZztcblxuICByZWFkb25seSBbbmFtZTogc3RyaW5nXTogTWVtb2l6ZWRTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBhbnk+IHwgc3RyaW5nO1xuXG4gIC8qKiBUaGUgY2FjaGVkIEVudGl0eUNvbGxlY3Rpb24gaXRzZWxmICovXG4gIHJlYWRvbmx5IHNlbGVjdENvbGxlY3Rpb246IE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBFbnRpdHlDb2xsZWN0aW9uPFQ+PjtcblxuICAvKiogQ291bnQgb2YgZW50aXRpZXMgaW4gdGhlIGNhY2hlZCBjb2xsZWN0aW9uLiAqL1xuICByZWFkb25seSBzZWxlY3RDb3VudDogTWVtb2l6ZWRTZWxlY3RvcjxPYmplY3QsIG51bWJlcj47XG5cbiAgLyoqIEFsbCBlbnRpdGllcyBpbiB0aGUgY2FjaGVkIGNvbGxlY3Rpb24uICovXG4gIHJlYWRvbmx5IHNlbGVjdEVudGl0aWVzOiBNZW1vaXplZFNlbGVjdG9yPE9iamVjdCwgVFtdPjtcblxuICAvKiogVGhlIEVudGl0eUNhY2hlICovXG4gIHJlYWRvbmx5IHNlbGVjdEVudGl0eUNhY2hlOiBNZW1vaXplZFNlbGVjdG9yPE9iamVjdCwgRW50aXR5Q2FjaGU+O1xuXG4gIC8qKiBNYXAgb2YgZW50aXR5IGtleXMgdG8gZW50aXRpZXMgKi9cbiAgcmVhZG9ubHkgc2VsZWN0RW50aXR5TWFwOiBNZW1vaXplZFNlbGVjdG9yPE9iamVjdCwgRGljdGlvbmFyeTxUPj47XG5cbiAgLyoqIEZpbHRlciBwYXR0ZXJuIGFwcGxpZWQgYnkgdGhlIGVudGl0eSBjb2xsZWN0aW9uJ3MgZmlsdGVyIGZ1bmN0aW9uICovXG4gIHJlYWRvbmx5IHNlbGVjdEZpbHRlcjogTWVtb2l6ZWRTZWxlY3RvcjxPYmplY3QsIHN0cmluZz47XG5cbiAgLyoqIEVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbiB0aGF0IHBhc3MgdGhlIGZpbHRlciBmdW5jdGlvbiAqL1xuICByZWFkb25seSBzZWxlY3RGaWx0ZXJlZEVudGl0aWVzOiBNZW1vaXplZFNlbGVjdG9yPE9iamVjdCwgVFtdPjtcblxuICAvKiogS2V5cyBvZiB0aGUgY2FjaGVkIGNvbGxlY3Rpb24sIGluIHRoZSBjb2xsZWN0aW9uJ3MgbmF0aXZlIHNvcnQgb3JkZXIgKi9cbiAgcmVhZG9ubHkgc2VsZWN0S2V5czogTWVtb2l6ZWRTZWxlY3RvcjxPYmplY3QsIHN0cmluZ1tdIHwgbnVtYmVyW10+O1xuXG4gIC8qKiBUcnVlIHdoZW4gdGhlIGNvbGxlY3Rpb24gaGFzIGJlZW4gZnVsbHkgbG9hZGVkLiAqL1xuICByZWFkb25seSBzZWxlY3RMb2FkZWQ6IE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBib29sZWFuPjtcblxuICAvKiogVHJ1ZSB3aGVuIGEgbXVsdGktZW50aXR5IHF1ZXJ5IGNvbW1hbmQgaXMgaW4gcHJvZ3Jlc3MuICovXG4gIHJlYWRvbmx5IHNlbGVjdExvYWRpbmc6IE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBib29sZWFuPjtcblxuICAvKiogQ2hhbmdlU3RhdGUgKGluY2x1ZGluZyBvcmlnaW5hbCB2YWx1ZXMpIG9mIGVudGl0aWVzIHdpdGggdW5zYXZlZCBjaGFuZ2VzICovXG4gIHJlYWRvbmx5IHNlbGVjdENoYW5nZVN0YXRlOiBNZW1vaXplZFNlbGVjdG9yPE9iamVjdCwgQ2hhbmdlU3RhdGVNYXA8VD4+O1xufVxuXG4vKiogQ3JlYXRlcyBFbnRpdHlTZWxlY3RvciBmdW5jdGlvbnMgZm9yIGVudGl0eSBjb2xsZWN0aW9ucy4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFbnRpdHlTZWxlY3RvcnNGYWN0b3J5IHtcbiAgcHJpdmF0ZSBlbnRpdHlDb2xsZWN0aW9uQ3JlYXRvcjogRW50aXR5Q29sbGVjdGlvbkNyZWF0b3I7XG4gIHByaXZhdGUgc2VsZWN0RW50aXR5Q2FjaGU6IEVudGl0eUNhY2hlU2VsZWN0b3I7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgZW50aXR5Q29sbGVjdGlvbkNyZWF0b3I/OiBFbnRpdHlDb2xsZWN0aW9uQ3JlYXRvcixcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoRU5USVRZX0NBQ0hFX1NFTEVDVE9SX1RPS0VOKVxuICAgIHNlbGVjdEVudGl0eUNhY2hlPzogRW50aXR5Q2FjaGVTZWxlY3RvclxuICApIHtcbiAgICB0aGlzLmVudGl0eUNvbGxlY3Rpb25DcmVhdG9yID1cbiAgICAgIGVudGl0eUNvbGxlY3Rpb25DcmVhdG9yIHx8IG5ldyBFbnRpdHlDb2xsZWN0aW9uQ3JlYXRvcigpO1xuICAgIHRoaXMuc2VsZWN0RW50aXR5Q2FjaGUgPVxuICAgICAgc2VsZWN0RW50aXR5Q2FjaGUgfHwgY3JlYXRlRW50aXR5Q2FjaGVTZWxlY3RvcihFTlRJVFlfQ0FDSEVfTkFNRSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIHRoZSBOZ1J4IHNlbGVjdG9yIGZyb20gdGhlIHN0b3JlIHJvb3QgdG8gdGhlIG5hbWVkIGNvbGxlY3Rpb24sXG4gICAqIGUuZy4gZnJvbSBPYmplY3QgdG8gSGVyb2VzLlxuICAgKiBAcGFyYW0gZW50aXR5TmFtZSB0aGUgbmFtZSBvZiB0aGUgY29sbGVjdGlvblxuICAgKi9cbiAgY3JlYXRlQ29sbGVjdGlvblNlbGVjdG9yPFxuICAgIFQgPSBhbnksXG4gICAgQyBleHRlbmRzIEVudGl0eUNvbGxlY3Rpb248VD4gPSBFbnRpdHlDb2xsZWN0aW9uPFQ+XG4gID4oZW50aXR5TmFtZTogc3RyaW5nKSB7XG4gICAgY29uc3QgZ2V0Q29sbGVjdGlvbiA9IChjYWNoZTogRW50aXR5Q2FjaGUgPSB7fSkgPT5cbiAgICAgIDxDPihcbiAgICAgICAgKGNhY2hlW2VudGl0eU5hbWVdIHx8XG4gICAgICAgICAgdGhpcy5lbnRpdHlDb2xsZWN0aW9uQ3JlYXRvci5jcmVhdGU8VD4oZW50aXR5TmFtZSkpXG4gICAgICApO1xuICAgIHJldHVybiBjcmVhdGVTZWxlY3Rvcih0aGlzLnNlbGVjdEVudGl0eUNhY2hlLCBnZXRDb2xsZWN0aW9uKTtcbiAgfVxuXG4gIC8vLy8vLy8gY3JlYXRlQ29sbGVjdGlvblNlbGVjdG9ycyAvLy8vLy8vLy8vXG5cbiAgLy8gQmFzZWQgb24gQG5ncngvZW50aXR5L3N0YXRlX3NlbGVjdG9ycy50c1xuXG4gIC8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC91bmlmaWVkLXNpZ25hdHVyZXMgKi9cbiAgLy8gY3JlYXRlQ29sbGVjdGlvblNlbGVjdG9ycyhtZXRhZGF0YSkgb3ZlcmxvYWRcbiAgLyoqXG4gICAqIENyZWF0ZXMgZW50aXR5IGNvbGxlY3Rpb24gc2VsZWN0b3JzIGZyb20gbWV0YWRhdGEuXG4gICAqIEBwYXJhbSBtZXRhZGF0YSAtIEVudGl0eU1ldGFkYXRhIGZvciB0aGUgY29sbGVjdGlvbi5cbiAgICogTWF5IGJlIHBhcnRpYWwgYnV0IG11Y2ggaGF2ZSBgZW50aXR5TmFtZWAuXG4gICAqL1xuICBjcmVhdGVDb2xsZWN0aW9uU2VsZWN0b3JzPFxuICAgIFQsXG4gICAgUyBleHRlbmRzIENvbGxlY3Rpb25TZWxlY3RvcnM8VD4gPSBDb2xsZWN0aW9uU2VsZWN0b3JzPFQ+XG4gID4obWV0YWRhdGE6IEVudGl0eU1ldGFkYXRhPFQ+KTogUztcblxuICAvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5pZmllZC1zaWduYXR1cmVzICovXG4gIC8vIGNyZWF0ZUNvbGxlY3Rpb25TZWxlY3RvcnMoZW50aXR5TmFtZSkgb3ZlcmxvYWRcbiAgLyoqXG4gICAqIENyZWF0ZXMgZGVmYXVsdCBlbnRpdHkgY29sbGVjdGlvbiBzZWxlY3RvcnMgZm9yIGFuIGVudGl0eSB0eXBlLlxuICAgKiBVc2UgdGhlIG1ldGFkYXRhIG92ZXJsb2FkIGZvciBhZGRpdGlvbmFsIGNvbGxlY3Rpb24gc2VsZWN0b3JzLlxuICAgKiBAcGFyYW0gZW50aXR5TmFtZSAtIG5hbWUgb2YgdGhlIGVudGl0eSB0eXBlXG4gICAqL1xuICBjcmVhdGVDb2xsZWN0aW9uU2VsZWN0b3JzPFxuICAgIFQsXG4gICAgUyBleHRlbmRzIENvbGxlY3Rpb25TZWxlY3RvcnM8VD4gPSBDb2xsZWN0aW9uU2VsZWN0b3JzPFQ+XG4gID4oZW50aXR5TmFtZTogc3RyaW5nKTogUztcblxuICAvLyBjcmVhdGVDb2xsZWN0aW9uU2VsZWN0b3JzIGltcGxlbWVudGF0aW9uXG4gIGNyZWF0ZUNvbGxlY3Rpb25TZWxlY3RvcnM8XG4gICAgVCxcbiAgICBTIGV4dGVuZHMgQ29sbGVjdGlvblNlbGVjdG9yczxUPiA9IENvbGxlY3Rpb25TZWxlY3RvcnM8VD5cbiAgPihtZXRhZGF0YU9yTmFtZTogRW50aXR5TWV0YWRhdGE8VD4gfCBzdHJpbmcpOiBTIHtcbiAgICBjb25zdCBtZXRhZGF0YSA9XG4gICAgICB0eXBlb2YgbWV0YWRhdGFPck5hbWUgPT09ICdzdHJpbmcnXG4gICAgICAgID8geyBlbnRpdHlOYW1lOiBtZXRhZGF0YU9yTmFtZSB9XG4gICAgICAgIDogbWV0YWRhdGFPck5hbWU7XG4gICAgY29uc3Qgc2VsZWN0S2V5cyA9IChjOiBFbnRpdHlDb2xsZWN0aW9uPFQ+KSA9PiBjLmlkcztcbiAgICBjb25zdCBzZWxlY3RFbnRpdHlNYXAgPSAoYzogRW50aXR5Q29sbGVjdGlvbjxUPikgPT4gYy5lbnRpdGllcztcblxuICAgIGNvbnN0IHNlbGVjdEVudGl0aWVzOiBTZWxlY3RvcjxcbiAgICAgIEVudGl0eUNvbGxlY3Rpb248VD4sXG4gICAgICBUW11cbiAgICA+ID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICBzZWxlY3RLZXlzLFxuICAgICAgc2VsZWN0RW50aXR5TWFwLFxuICAgICAgKGtleXM6IChudW1iZXIgfCBzdHJpbmcpW10sIGVudGl0aWVzOiBEaWN0aW9uYXJ5PFQ+KTogVFtdID0+XG4gICAgICAgIGtleXMubWFwKChrZXkpID0+IGVudGl0aWVzW2tleV0gYXMgVClcbiAgICApO1xuXG4gICAgY29uc3Qgc2VsZWN0Q291bnQ6IFNlbGVjdG9yPEVudGl0eUNvbGxlY3Rpb248VD4sIG51bWJlcj4gPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIHNlbGVjdEtleXMsXG4gICAgICAoa2V5cykgPT4ga2V5cy5sZW5ndGhcbiAgICApO1xuXG4gICAgLy8gRW50aXR5Q29sbGVjdGlvbiBzZWxlY3RvcnMgdGhhdCBnbyBiZXlvbmQgdGhlIG5ncngvZW50aXR5L0VudGl0eVN0YXRlIHNlbGVjdG9yc1xuICAgIGNvbnN0IHNlbGVjdEZpbHRlciA9IChjOiBFbnRpdHlDb2xsZWN0aW9uPFQ+KSA9PiBjLmZpbHRlcjtcblxuICAgIGNvbnN0IGZpbHRlckZuID0gbWV0YWRhdGEuZmlsdGVyRm47XG4gICAgY29uc3Qgc2VsZWN0RmlsdGVyZWRFbnRpdGllczogU2VsZWN0b3I8RW50aXR5Q29sbGVjdGlvbjxUPiwgVFtdPiA9IGZpbHRlckZuXG4gICAgICA/IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgICAgIHNlbGVjdEVudGl0aWVzLFxuICAgICAgICAgIHNlbGVjdEZpbHRlcixcbiAgICAgICAgICAoZW50aXRpZXM6IFRbXSwgcGF0dGVybjogYW55KTogVFtdID0+IGZpbHRlckZuKGVudGl0aWVzLCBwYXR0ZXJuKVxuICAgICAgICApXG4gICAgICA6IHNlbGVjdEVudGl0aWVzO1xuXG4gICAgY29uc3Qgc2VsZWN0TG9hZGVkID0gKGM6IEVudGl0eUNvbGxlY3Rpb248VD4pID0+IGMubG9hZGVkO1xuICAgIGNvbnN0IHNlbGVjdExvYWRpbmcgPSAoYzogRW50aXR5Q29sbGVjdGlvbjxUPikgPT4gYy5sb2FkaW5nO1xuICAgIGNvbnN0IHNlbGVjdENoYW5nZVN0YXRlID0gKGM6IEVudGl0eUNvbGxlY3Rpb248VD4pID0+IGMuY2hhbmdlU3RhdGU7XG5cbiAgICAvLyBDcmVhdGUgY29sbGVjdGlvbiBzZWxlY3RvcnMgZm9yIGVhY2ggYGFkZGl0aW9uYWxDb2xsZWN0aW9uU3RhdGVgIHByb3BlcnR5LlxuICAgIC8vIFRoZXNlIGFsbCBleHRlbmQgZnJvbSBgc2VsZWN0Q29sbGVjdGlvbmBcbiAgICBjb25zdCBleHRyYSA9IG1ldGFkYXRhLmFkZGl0aW9uYWxDb2xsZWN0aW9uU3RhdGUgfHwge307XG4gICAgY29uc3QgZXh0cmFTZWxlY3RvcnM6IHtcbiAgICAgIFtuYW1lOiBzdHJpbmddOiBTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBhbnk+O1xuICAgIH0gPSB7fTtcbiAgICBPYmplY3Qua2V5cyhleHRyYSkuZm9yRWFjaCgoaykgPT4ge1xuICAgICAgZXh0cmFTZWxlY3RvcnNbJ3NlbGVjdCcgKyBrWzBdLnRvVXBwZXJDYXNlKCkgKyBrLnNsaWNlKDEpXSA9IChcbiAgICAgICAgYzogRW50aXR5Q29sbGVjdGlvbjxUPlxuICAgICAgKSA9PiAoPGFueT5jKVtrXTtcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICBzZWxlY3RDb3VudCxcbiAgICAgIHNlbGVjdEVudGl0aWVzLFxuICAgICAgc2VsZWN0RW50aXR5TWFwLFxuICAgICAgc2VsZWN0RmlsdGVyLFxuICAgICAgc2VsZWN0RmlsdGVyZWRFbnRpdGllcyxcbiAgICAgIHNlbGVjdEtleXMsXG4gICAgICBzZWxlY3RMb2FkZWQsXG4gICAgICBzZWxlY3RMb2FkaW5nLFxuICAgICAgc2VsZWN0Q2hhbmdlU3RhdGUsXG4gICAgICAuLi5leHRyYVNlbGVjdG9ycyxcbiAgICB9IGFzIFM7XG4gIH1cblxuICAvLy8vLy8vIGNyZWF0ZSAvLy8vLy8vLy8vXG5cbiAgLy8gY3JlYXRlKG1ldGFkYXRhKSBvdmVybG9hZFxuICAvKipcbiAgICogQ3JlYXRlcyB0aGUgc3RvcmUtcm9vdGVkIHNlbGVjdG9ycyBmb3IgYW4gZW50aXR5IGNvbGxlY3Rpb24uXG4gICAqIHtFbnRpdHlTZWxlY3RvcnMkRmFjdG9yeX0gdHVybnMgdGhlbSBpbnRvIHNlbGVjdG9ycyQuXG4gICAqXG4gICAqIEBwYXJhbSBtZXRhZGF0YSAtIEVudGl0eU1ldGFkYXRhIGZvciB0aGUgY29sbGVjdGlvbi5cbiAgICogTWF5IGJlIHBhcnRpYWwgYnV0IG11Y2ggaGF2ZSBgZW50aXR5TmFtZWAuXG4gICAqXG4gICAqIEJhc2VkIG9uIG5ncngvZW50aXR5L3N0YXRlX3NlbGVjdG9ycy50c1xuICAgKiBEaWZmZXJzIGluIHRoYXQgdGhlc2Ugc2VsZWN0b3JzIHNlbGVjdCBmcm9tIHRoZSBOZ1J4IHN0b3JlIHJvb3QsXG4gICAqIHRocm91Z2ggdGhlIGNvbGxlY3Rpb24sIHRvIHRoZSBjb2xsZWN0aW9uIG1lbWJlcnMuXG4gICAqL1xuICBjcmVhdGU8VCwgUyBleHRlbmRzIEVudGl0eVNlbGVjdG9yczxUPiA9IEVudGl0eVNlbGVjdG9yczxUPj4oXG4gICAgbWV0YWRhdGE6IEVudGl0eU1ldGFkYXRhPFQ+XG4gICk6IFM7XG5cbiAgLy8gY3JlYXRlKGVudGl0eU5hbWUpIG92ZXJsb2FkXG4gIC8qKlxuICAgKiBDcmVhdGVzIHRoZSBkZWZhdWx0IHN0b3JlLXJvb3RlZCBzZWxlY3RvcnMgZm9yIGFuIGVudGl0eSBjb2xsZWN0aW9uLlxuICAgKiB7RW50aXR5U2VsZWN0b3JzJEZhY3Rvcnl9IHR1cm5zIHRoZW0gaW50byBzZWxlY3RvcnMkLlxuICAgKiBVc2UgdGhlIG1ldGFkYXRhIG92ZXJsb2FkIGZvciBhZGRpdGlvbmFsIGNvbGxlY3Rpb24gc2VsZWN0b3JzLlxuICAgKlxuICAgKiBAcGFyYW0gZW50aXR5TmFtZSAtIG5hbWUgb2YgdGhlIGVudGl0eSB0eXBlLlxuICAgKlxuICAgKiBCYXNlZCBvbiBuZ3J4L2VudGl0eS9zdGF0ZV9zZWxlY3RvcnMudHNcbiAgICogRGlmZmVycyBpbiB0aGF0IHRoZXNlIHNlbGVjdG9ycyBzZWxlY3QgZnJvbSB0aGUgTmdSeCBzdG9yZSByb290LFxuICAgKiB0aHJvdWdoIHRoZSBjb2xsZWN0aW9uLCB0byB0aGUgY29sbGVjdGlvbiBtZW1iZXJzLlxuICAgKi9cbiAgY3JlYXRlPFQsIFMgZXh0ZW5kcyBFbnRpdHlTZWxlY3RvcnM8VD4gPSBFbnRpdHlTZWxlY3RvcnM8VD4+KFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5pZmllZC1zaWduYXR1cmVzXG4gICAgZW50aXR5TmFtZTogc3RyaW5nXG4gICk6IFM7XG5cbiAgLy8gY3JlYXRlQ29sbGVjdGlvblNlbGVjdG9ycyBpbXBsZW1lbnRhdGlvblxuICBjcmVhdGU8VCwgUyBleHRlbmRzIEVudGl0eVNlbGVjdG9yczxUPiA9IEVudGl0eVNlbGVjdG9yczxUPj4oXG4gICAgbWV0YWRhdGFPck5hbWU6IEVudGl0eU1ldGFkYXRhPFQ+IHwgc3RyaW5nXG4gICk6IFMge1xuICAgIGNvbnN0IG1ldGFkYXRhID1cbiAgICAgIHR5cGVvZiBtZXRhZGF0YU9yTmFtZSA9PT0gJ3N0cmluZydcbiAgICAgICAgPyB7IGVudGl0eU5hbWU6IG1ldGFkYXRhT3JOYW1lIH1cbiAgICAgICAgOiBtZXRhZGF0YU9yTmFtZTtcbiAgICBjb25zdCBlbnRpdHlOYW1lID0gbWV0YWRhdGEuZW50aXR5TmFtZTtcbiAgICBjb25zdCBzZWxlY3RDb2xsZWN0aW9uOiBTZWxlY3RvcjxcbiAgICAgIE9iamVjdCxcbiAgICAgIEVudGl0eUNvbGxlY3Rpb248VD5cbiAgICA+ID0gdGhpcy5jcmVhdGVDb2xsZWN0aW9uU2VsZWN0b3I8VD4oZW50aXR5TmFtZSk7XG4gICAgY29uc3QgY29sbGVjdGlvblNlbGVjdG9ycyA9IHRoaXMuY3JlYXRlQ29sbGVjdGlvblNlbGVjdG9yczxUPihtZXRhZGF0YSk7XG5cbiAgICBjb25zdCBlbnRpdHlTZWxlY3RvcnM6IHtcbiAgICAgIFtuYW1lOiBzdHJpbmddOiBTZWxlY3RvcjxFbnRpdHlDb2xsZWN0aW9uPFQ+LCBhbnk+O1xuICAgIH0gPSB7fTtcbiAgICBPYmplY3Qua2V5cyhjb2xsZWN0aW9uU2VsZWN0b3JzKS5mb3JFYWNoKChrKSA9PiB7XG4gICAgICBlbnRpdHlTZWxlY3RvcnNba10gPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgICAgc2VsZWN0Q29sbGVjdGlvbixcbiAgICAgICAgY29sbGVjdGlvblNlbGVjdG9yc1trXVxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICBlbnRpdHlOYW1lLFxuICAgICAgc2VsZWN0Q29sbGVjdGlvbixcbiAgICAgIHNlbGVjdEVudGl0eUNhY2hlOiB0aGlzLnNlbGVjdEVudGl0eUNhY2hlLFxuICAgICAgLi4uZW50aXR5U2VsZWN0b3JzLFxuICAgIH0gYXMgUztcbiAgfVxufVxuIl19
@@ -1,4 +1,5 @@
1
1
  import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
2
3
  /**
3
4
  * Generates a string id beginning 'CRID',
4
5
  * followed by a monotonically increasing integer for use as a correlation id.
@@ -21,7 +22,9 @@ export class CorrelationIdGenerator {
21
22
  return this.prefix + this.seed;
22
23
  }
23
24
  }
24
- CorrelationIdGenerator.decorators = [
25
- { type: Injectable }
26
- ];
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ycmVsYXRpb24taWQtZ2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRhL3NyYy91dGlscy9jb3JyZWxhdGlvbi1pZC1nZW5lcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQzs7Ozs7Ozs7R0FRRztBQUVILE1BQU0sT0FBTyxzQkFBc0I7SUFEbkM7UUFFRSx1QkFBdUI7UUFDYixTQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLCtCQUErQjtRQUNyQixXQUFNLEdBQUcsTUFBTSxDQUFDO0lBTTVCLENBQUM7SUFMQyxxQ0FBcUM7SUFDckMsSUFBSTtRQUNGLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQ2YsT0FBTyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDakMsQ0FBQzs7O1lBVkYsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBHZW5lcmF0ZXMgYSBzdHJpbmcgaWQgYmVnaW5uaW5nICdDUklEJyxcbiAqIGZvbGxvd2VkIGJ5IGEgbW9ub3RvbmljYWxseSBpbmNyZWFzaW5nIGludGVnZXIgZm9yIHVzZSBhcyBhIGNvcnJlbGF0aW9uIGlkLlxuICogQXMgdGhleSBhcmUgcHJvZHVjZWQgbG9jYWxseSBieSBhIHNpbmdsZXRvbiBzZXJ2aWNlLFxuICogdGhlc2UgaWRzIGFyZSBndWFyYW50ZWVkIHRvIGJlIHVuaXF1ZSBvbmx5XG4gKiBmb3IgdGhlIGR1cmF0aW9uIG9mIGEgc2luZ2xlIGNsaWVudCBicm93c2VyIGluc3RhbmNlLlxuICogTmdyeCBlbnRpdHkgZGlzcGF0Y2hlciBxdWVyeSBhbmQgc2F2ZSBtZXRob2RzIGNhbGwgdGhpcyBzZXJ2aWNlIHRvIGdlbmVyYXRlIGRlZmF1bHQgY29ycmVsYXRpb24gaWRzLlxuICogRG8gTk9UIHVzZSBmb3IgZW50aXR5IGtleXMuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb3JyZWxhdGlvbklkR2VuZXJhdG9yIHtcbiAgLyoqIFNlZWQgZm9yIHRoZSBpZHMgKi9cbiAgcHJvdGVjdGVkIHNlZWQgPSAwO1xuICAvKiogUHJlZml4IG9mIHRoZSBpZCwgJ0NSSUQ7ICovXG4gIHByb3RlY3RlZCBwcmVmaXggPSAnQ1JJRCc7XG4gIC8qKiBSZXR1cm4gdGhlIG5leHQgY29ycmVsYXRpb24gaWQgKi9cbiAgbmV4dCgpIHtcbiAgICB0aGlzLnNlZWQgKz0gMTtcbiAgICByZXR1cm4gdGhpcy5wcmVmaXggKyB0aGlzLnNlZWQ7XG4gIH1cbn1cbiJdfQ==
25
+ /** @nocollapse */ CorrelationIdGenerator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: CorrelationIdGenerator, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
26
+ /** @nocollapse */ CorrelationIdGenerator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: CorrelationIdGenerator });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: CorrelationIdGenerator, decorators: [{
28
+ type: Injectable
29
+ }] });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ycmVsYXRpb24taWQtZ2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRhL3NyYy91dGlscy9jb3JyZWxhdGlvbi1pZC1nZW5lcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFM0M7Ozs7Ozs7O0dBUUc7QUFFSCxNQUFNLE9BQU8sc0JBQXNCO0lBRG5DO1FBRUUsdUJBQXVCO1FBQ2IsU0FBSSxHQUFHLENBQUMsQ0FBQztRQUNuQiwrQkFBK0I7UUFDckIsV0FBTSxHQUFHLE1BQU0sQ0FBQztLQU0zQjtJQUxDLHFDQUFxQztJQUNyQyxJQUFJO1FBQ0YsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNqQyxDQUFDOztzSUFUVSxzQkFBc0I7MElBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEdlbmVyYXRlcyBhIHN0cmluZyBpZCBiZWdpbm5pbmcgJ0NSSUQnLFxuICogZm9sbG93ZWQgYnkgYSBtb25vdG9uaWNhbGx5IGluY3JlYXNpbmcgaW50ZWdlciBmb3IgdXNlIGFzIGEgY29ycmVsYXRpb24gaWQuXG4gKiBBcyB0aGV5IGFyZSBwcm9kdWNlZCBsb2NhbGx5IGJ5IGEgc2luZ2xldG9uIHNlcnZpY2UsXG4gKiB0aGVzZSBpZHMgYXJlIGd1YXJhbnRlZWQgdG8gYmUgdW5pcXVlIG9ubHlcbiAqIGZvciB0aGUgZHVyYXRpb24gb2YgYSBzaW5nbGUgY2xpZW50IGJyb3dzZXIgaW5zdGFuY2UuXG4gKiBOZ3J4IGVudGl0eSBkaXNwYXRjaGVyIHF1ZXJ5IGFuZCBzYXZlIG1ldGhvZHMgY2FsbCB0aGlzIHNlcnZpY2UgdG8gZ2VuZXJhdGUgZGVmYXVsdCBjb3JyZWxhdGlvbiBpZHMuXG4gKiBEbyBOT1QgdXNlIGZvciBlbnRpdHkga2V5cy5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvcnJlbGF0aW9uSWRHZW5lcmF0b3Ige1xuICAvKiogU2VlZCBmb3IgdGhlIGlkcyAqL1xuICBwcm90ZWN0ZWQgc2VlZCA9IDA7XG4gIC8qKiBQcmVmaXggb2YgdGhlIGlkLCAnQ1JJRDsgKi9cbiAgcHJvdGVjdGVkIHByZWZpeCA9ICdDUklEJztcbiAgLyoqIFJldHVybiB0aGUgbmV4dCBjb3JyZWxhdGlvbiBpZCAqL1xuICBuZXh0KCkge1xuICAgIHRoaXMuc2VlZCArPSAxO1xuICAgIHJldHVybiB0aGlzLnByZWZpeCArIHRoaXMuc2VlZDtcbiAgfVxufVxuIl19
@@ -1,4 +1,5 @@
1
1
  import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
2
3
  export class DefaultLogger {
3
4
  error(message, extra) {
4
5
  if (message) {
@@ -16,7 +17,9 @@ export class DefaultLogger {
16
17
  }
17
18
  }
18
19
  }
19
- DefaultLogger.decorators = [
20
- { type: Injectable }
21
- ];
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1sb2dnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGEvc3JjL3V0aWxzL2RlZmF1bHQtbG9nZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJM0MsTUFBTSxPQUFPLGFBQWE7SUFDeEIsS0FBSyxDQUFDLE9BQWEsRUFBRSxLQUFXO1FBQzlCLElBQUksT0FBTyxFQUFFO1lBQ1gsS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUNoRTtJQUNILENBQUM7SUFFRCxHQUFHLENBQUMsT0FBYSxFQUFFLEtBQVc7UUFDNUIsSUFBSSxPQUFPLEVBQUU7WUFDWCxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzVEO0lBQ0gsQ0FBQztJQUVELElBQUksQ0FBQyxPQUFhLEVBQUUsS0FBVztRQUM3QixJQUFJLE9BQU8sRUFBRTtZQUNYLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDOUQ7SUFDSCxDQUFDOzs7WUFsQkYsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvZ2dlciB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEZWZhdWx0TG9nZ2VyIGltcGxlbWVudHMgTG9nZ2VyIHtcbiAgZXJyb3IobWVzc2FnZT86IGFueSwgZXh0cmE/OiBhbnkpIHtcbiAgICBpZiAobWVzc2FnZSkge1xuICAgICAgZXh0cmEgPyBjb25zb2xlLmVycm9yKG1lc3NhZ2UsIGV4dHJhKSA6IGNvbnNvbGUuZXJyb3IobWVzc2FnZSk7XG4gICAgfVxuICB9XG5cbiAgbG9nKG1lc3NhZ2U/OiBhbnksIGV4dHJhPzogYW55KSB7XG4gICAgaWYgKG1lc3NhZ2UpIHtcbiAgICAgIGV4dHJhID8gY29uc29sZS5sb2cobWVzc2FnZSwgZXh0cmEpIDogY29uc29sZS5sb2cobWVzc2FnZSk7XG4gICAgfVxuICB9XG5cbiAgd2FybihtZXNzYWdlPzogYW55LCBleHRyYT86IGFueSkge1xuICAgIGlmIChtZXNzYWdlKSB7XG4gICAgICBleHRyYSA/IGNvbnNvbGUud2FybihtZXNzYWdlLCBleHRyYSkgOiBjb25zb2xlLndhcm4obWVzc2FnZSk7XG4gICAgfVxuICB9XG59XG4iXX0=
20
+ /** @nocollapse */ DefaultLogger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: DefaultLogger, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
21
+ /** @nocollapse */ DefaultLogger.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: DefaultLogger });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: DefaultLogger, decorators: [{
23
+ type: Injectable
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1sb2dnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGEvc3JjL3V0aWxzL2RlZmF1bHQtbG9nZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLEtBQUssQ0FBQyxPQUFhLEVBQUUsS0FBVztRQUM5QixJQUFJLE9BQU8sRUFBRTtZQUNYLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDaEU7SUFDSCxDQUFDO0lBRUQsR0FBRyxDQUFDLE9BQWEsRUFBRSxLQUFXO1FBQzVCLElBQUksT0FBTyxFQUFFO1lBQ1gsS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7SUFFRCxJQUFJLENBQUMsT0FBYSxFQUFFLEtBQVc7UUFDN0IsSUFBSSxPQUFPLEVBQUU7WUFDWCxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzlEO0lBQ0gsQ0FBQzs7NkhBakJVLGFBQWE7aUlBQWIsYUFBYTsyRkFBYixhQUFhO2tCQUR6QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9nZ2VyIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERlZmF1bHRMb2dnZXIgaW1wbGVtZW50cyBMb2dnZXIge1xuICBlcnJvcihtZXNzYWdlPzogYW55LCBleHRyYT86IGFueSkge1xuICAgIGlmIChtZXNzYWdlKSB7XG4gICAgICBleHRyYSA/IGNvbnNvbGUuZXJyb3IobWVzc2FnZSwgZXh0cmEpIDogY29uc29sZS5lcnJvcihtZXNzYWdlKTtcbiAgICB9XG4gIH1cblxuICBsb2cobWVzc2FnZT86IGFueSwgZXh0cmE/OiBhbnkpIHtcbiAgICBpZiAobWVzc2FnZSkge1xuICAgICAgZXh0cmEgPyBjb25zb2xlLmxvZyhtZXNzYWdlLCBleHRyYSkgOiBjb25zb2xlLmxvZyhtZXNzYWdlKTtcbiAgICB9XG4gIH1cblxuICB3YXJuKG1lc3NhZ2U/OiBhbnksIGV4dHJhPzogYW55KSB7XG4gICAgaWYgKG1lc3NhZ2UpIHtcbiAgICAgIGV4dHJhID8gY29uc29sZS53YXJuKG1lc3NhZ2UsIGV4dHJhKSA6IGNvbnNvbGUud2FybihtZXNzYWdlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,6 @@
1
1
  import { Inject, Injectable, Optional } from '@angular/core';
2
2
  import { PLURAL_NAMES_TOKEN } from './interfaces';
3
+ import * as i0 from "@angular/core";
3
4
  const uncountable = [
4
5
  // 'sheep',
5
6
  // 'fish',
@@ -57,11 +58,14 @@ export class DefaultPluralizer {
57
58
  this.pluralNames = Object.assign(Object.assign({}, this.pluralNames), (pluralNames || {}));
58
59
  }
59
60
  }
60
- DefaultPluralizer.decorators = [
61
- { type: Injectable }
62
- ];
63
- /** @nocollapse */
64
- DefaultPluralizer.ctorParameters = () => [
65
- { type: Array, decorators: [{ type: Optional }, { type: Inject, args: [PLURAL_NAMES_TOKEN,] }] }
66
- ];
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1wbHVyYWxpemVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRhL3NyYy91dGlscy9kZWZhdWx0LXBsdXJhbGl6ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBcUIsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFckUsTUFBTSxXQUFXLEdBQUc7SUFDbEIsV0FBVztJQUNYLFVBQVU7SUFDVixVQUFVO0lBQ1YsV0FBVztJQUNYLFVBQVU7SUFDVixhQUFhO0lBQ2IsV0FBVztJQUNYLGFBQWE7SUFDYixPQUFPO0lBQ1AsUUFBUTtDQUNULENBQUM7QUFHRixNQUFNLE9BQU8saUJBQWlCO0lBRzVCLFlBR0UsV0FBZ0M7UUFMbEMsZ0JBQVcsR0FBc0IsRUFBRSxDQUFDO1FBT2xDLGlDQUFpQztRQUNqQyxJQUFJLFdBQVcsRUFBRTtZQUNmLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQzNEO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILFNBQVMsQ0FBQyxJQUFZO1FBQ3BCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMsSUFBSSxNQUFNLEVBQUU7WUFDVixPQUFPLE1BQU0sQ0FBQztTQUNmO1FBQ0QsbUNBQW1DO1FBQ25DLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEQsT0FBTyxJQUFJLENBQUM7WUFDWixZQUFZO1NBQ2I7YUFBTSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakMsT0FBTyxJQUFJLEdBQUcsR0FBRyxDQUFDO1lBQ2xCLGdCQUFnQjtTQUNqQjthQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQy9DLHlDQUF5QztTQUMxQzthQUFNLElBQUksbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pDLE9BQU8sSUFBSSxHQUFHLElBQUksQ0FBQztTQUNwQjthQUFNO1lBQ0wsT0FBTyxJQUFJLEdBQUcsR0FBRyxDQUFDO1NBQ25CO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILG1CQUFtQixDQUFDLFdBQThCO1FBQ2hELElBQUksQ0FBQyxXQUFXLG1DQUFRLElBQUksQ0FBQyxXQUFXLEdBQUssQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLENBQUUsQ0FBQztJQUNyRSxDQUFDOzs7WUEvQ0YsVUFBVTs7Ozt3Q0FLTixRQUFRLFlBQ1IsTUFBTSxTQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVudGl0eVBsdXJhbE5hbWVzLCBQTFVSQUxfTkFNRVNfVE9LRU4gfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG5jb25zdCB1bmNvdW50YWJsZSA9IFtcbiAgLy8gJ3NoZWVwJyxcbiAgLy8gJ2Zpc2gnLFxuICAvLyAnZGVlcicsXG4gIC8vICdtb29zZScsXG4gIC8vICdyaWNlJyxcbiAgLy8gJ3NwZWNpZXMnLFxuICAnZXF1aXBtZW50JyxcbiAgJ2luZm9ybWF0aW9uJyxcbiAgJ21vbmV5JyxcbiAgJ3NlcmllcycsXG5dO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGVmYXVsdFBsdXJhbGl6ZXIge1xuICBwbHVyYWxOYW1lczogRW50aXR5UGx1cmFsTmFtZXMgPSB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoUExVUkFMX05BTUVTX1RPS0VOKVxuICAgIHBsdXJhbE5hbWVzOiBFbnRpdHlQbHVyYWxOYW1lc1tdXG4gICkge1xuICAgIC8vIG1lcmdlIGVhY2ggcGx1cmFsIG5hbWVzIG9iamVjdFxuICAgIGlmIChwbHVyYWxOYW1lcykge1xuICAgICAgcGx1cmFsTmFtZXMuZm9yRWFjaCgocG4pID0+IHRoaXMucmVnaXN0ZXJQbHVyYWxOYW1lcyhwbikpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQbHVyYWxpemUgYSBzaW5ndWxhciBuYW1lIHVzaW5nIGNvbW1vbiBFbmdsaXNoIGxhbmd1YWdlIHBsdXJhbGl6YXRpb24gcnVsZXNcbiAgICogRXhhbXBsZXM6IFwiY29tcGFueVwiIC0+IFwiY29tcGFuaWVzXCIsIFwiZW1wbG95ZWVcIiAtPiBcImVtcGxveWVlc1wiLCBcInRheFwiIC0+IFwidGF4ZXNcIlxuICAgKi9cbiAgcGx1cmFsaXplKG5hbWU6IHN0cmluZykge1xuICAgIGNvbnN0IHBsdXJhbCA9IHRoaXMucGx1cmFsTmFtZXNbbmFtZV07XG4gICAgaWYgKHBsdXJhbCkge1xuICAgICAgcmV0dXJuIHBsdXJhbDtcbiAgICB9XG4gICAgLy8gc2luZ3VsYXIgYW5kIHBsdXJhbCBhcmUgdGhlIHNhbWVcbiAgICBpZiAodW5jb3VudGFibGUuaW5kZXhPZihuYW1lLnRvTG93ZXJDYXNlKCkpID49IDApIHtcbiAgICAgIHJldHVybiBuYW1lO1xuICAgICAgLy8gdm93ZWwgKyB5XG4gICAgfSBlbHNlIGlmICgvW2FlaW91XXkkLy50ZXN0KG5hbWUpKSB7XG4gICAgICByZXR1cm4gbmFtZSArICdzJztcbiAgICAgIC8vIGNvbnNvbmFudCArIHlcbiAgICB9IGVsc2UgaWYgKG5hbWUuZW5kc1dpdGgoJ3knKSkge1xuICAgICAgcmV0dXJuIG5hbWUuc3Vic3RyKDAsIG5hbWUubGVuZ3RoIC0gMSkgKyAnaWVzJztcbiAgICAgIC8vIGVuZGluZ3MgdHlwaWNhbGx5IHBsdXJhbGl6ZWQgd2l0aCAnZXMnXG4gICAgfSBlbHNlIGlmICgvW3N8c3N8c2h8Y2h8eHx6XSQvLnRlc3QobmFtZSkpIHtcbiAgICAgIHJldHVybiBuYW1lICsgJ2VzJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5hbWUgKyAncyc7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIGEgbWFwcGluZyBvZiBlbnRpdHkgdHlwZSBuYW1lIHRvIHRoZSBlbnRpdHkgbmFtZSdzIHBsdXJhbFxuICAgKiBAcGFyYW0gcGx1cmFsTmFtZXMge0VudGl0eVBsdXJhbE5hbWVzfSBwbHVyYWwgbmFtZXMgZm9yIGVudGl0eSB0eXBlc1xuICAgKi9cbiAgcmVnaXN0ZXJQbHVyYWxOYW1lcyhwbHVyYWxOYW1lczogRW50aXR5UGx1cmFsTmFtZXMpOiB2b2lkIHtcbiAgICB0aGlzLnBsdXJhbE5hbWVzID0geyAuLi50aGlzLnBsdXJhbE5hbWVzLCAuLi4ocGx1cmFsTmFtZXMgfHwge30pIH07XG4gIH1cbn1cbiJdfQ==
61
+ /** @nocollapse */ DefaultPluralizer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: DefaultPluralizer, deps: [{ token: PLURAL_NAMES_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
62
+ /** @nocollapse */ DefaultPluralizer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: DefaultPluralizer });
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: DefaultPluralizer, decorators: [{
64
+ type: Injectable
65
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
66
+ type: Optional
67
+ }, {
68
+ type: Inject,
69
+ args: [PLURAL_NAMES_TOKEN]
70
+ }] }]; } });
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1wbHVyYWxpemVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRhL3NyYy91dGlscy9kZWZhdWx0LXBsdXJhbGl6ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBcUIsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBRXJFLE1BQU0sV0FBVyxHQUFHO0lBQ2xCLFdBQVc7SUFDWCxVQUFVO0lBQ1YsVUFBVTtJQUNWLFdBQVc7SUFDWCxVQUFVO0lBQ1YsYUFBYTtJQUNiLFdBQVc7SUFDWCxhQUFhO0lBQ2IsT0FBTztJQUNQLFFBQVE7Q0FDVCxDQUFDO0FBR0YsTUFBTSxPQUFPLGlCQUFpQjtJQUc1QixZQUdFLFdBQWdDO1FBTGxDLGdCQUFXLEdBQXNCLEVBQUUsQ0FBQztRQU9sQyxpQ0FBaUM7UUFDakMsSUFBSSxXQUFXLEVBQUU7WUFDZixXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMzRDtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxTQUFTLENBQUMsSUFBWTtRQUNwQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLElBQUksTUFBTSxFQUFFO1lBQ1YsT0FBTyxNQUFNLENBQUM7U0FDZjtRQUNELG1DQUFtQztRQUNuQyxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2hELE9BQU8sSUFBSSxDQUFDO1lBQ1osWUFBWTtTQUNiO2FBQU0sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pDLE9BQU8sSUFBSSxHQUFHLEdBQUcsQ0FBQztZQUNsQixnQkFBZ0I7U0FDakI7YUFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQztZQUMvQyx5Q0FBeUM7U0FDMUM7YUFBTSxJQUFJLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN6QyxPQUFPLElBQUksR0FBRyxJQUFJLENBQUM7U0FDcEI7YUFBTTtZQUNMLE9BQU8sSUFBSSxHQUFHLEdBQUcsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxtQkFBbUIsQ0FBQyxXQUE4QjtRQUNoRCxJQUFJLENBQUMsV0FBVyxtQ0FBUSxJQUFJLENBQUMsV0FBVyxHQUFLLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQyxDQUFFLENBQUM7SUFDckUsQ0FBQzs7aUlBOUNVLGlCQUFpQixrQkFLbEIsa0JBQWtCO3FJQUxqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVTs7MEJBS04sUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFbnRpdHlQbHVyYWxOYW1lcywgUExVUkFMX05BTUVTX1RPS0VOIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuY29uc3QgdW5jb3VudGFibGUgPSBbXG4gIC8vICdzaGVlcCcsXG4gIC8vICdmaXNoJyxcbiAgLy8gJ2RlZXInLFxuICAvLyAnbW9vc2UnLFxuICAvLyAncmljZScsXG4gIC8vICdzcGVjaWVzJyxcbiAgJ2VxdWlwbWVudCcsXG4gICdpbmZvcm1hdGlvbicsXG4gICdtb25leScsXG4gICdzZXJpZXMnLFxuXTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERlZmF1bHRQbHVyYWxpemVyIHtcbiAgcGx1cmFsTmFtZXM6IEVudGl0eVBsdXJhbE5hbWVzID0ge307XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFBMVVJBTF9OQU1FU19UT0tFTilcbiAgICBwbHVyYWxOYW1lczogRW50aXR5UGx1cmFsTmFtZXNbXVxuICApIHtcbiAgICAvLyBtZXJnZSBlYWNoIHBsdXJhbCBuYW1lcyBvYmplY3RcbiAgICBpZiAocGx1cmFsTmFtZXMpIHtcbiAgICAgIHBsdXJhbE5hbWVzLmZvckVhY2goKHBuKSA9PiB0aGlzLnJlZ2lzdGVyUGx1cmFsTmFtZXMocG4pKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUGx1cmFsaXplIGEgc2luZ3VsYXIgbmFtZSB1c2luZyBjb21tb24gRW5nbGlzaCBsYW5ndWFnZSBwbHVyYWxpemF0aW9uIHJ1bGVzXG4gICAqIEV4YW1wbGVzOiBcImNvbXBhbnlcIiAtPiBcImNvbXBhbmllc1wiLCBcImVtcGxveWVlXCIgLT4gXCJlbXBsb3llZXNcIiwgXCJ0YXhcIiAtPiBcInRheGVzXCJcbiAgICovXG4gIHBsdXJhbGl6ZShuYW1lOiBzdHJpbmcpIHtcbiAgICBjb25zdCBwbHVyYWwgPSB0aGlzLnBsdXJhbE5hbWVzW25hbWVdO1xuICAgIGlmIChwbHVyYWwpIHtcbiAgICAgIHJldHVybiBwbHVyYWw7XG4gICAgfVxuICAgIC8vIHNpbmd1bGFyIGFuZCBwbHVyYWwgYXJlIHRoZSBzYW1lXG4gICAgaWYgKHVuY291bnRhYmxlLmluZGV4T2YobmFtZS50b0xvd2VyQ2FzZSgpKSA+PSAwKSB7XG4gICAgICByZXR1cm4gbmFtZTtcbiAgICAgIC8vIHZvd2VsICsgeVxuICAgIH0gZWxzZSBpZiAoL1thZWlvdV15JC8udGVzdChuYW1lKSkge1xuICAgICAgcmV0dXJuIG5hbWUgKyAncyc7XG4gICAgICAvLyBjb25zb25hbnQgKyB5XG4gICAgfSBlbHNlIGlmIChuYW1lLmVuZHNXaXRoKCd5JykpIHtcbiAgICAgIHJldHVybiBuYW1lLnN1YnN0cigwLCBuYW1lLmxlbmd0aCAtIDEpICsgJ2llcyc7XG4gICAgICAvLyBlbmRpbmdzIHR5cGljYWxseSBwbHVyYWxpemVkIHdpdGggJ2VzJ1xuICAgIH0gZWxzZSBpZiAoL1tzfHNzfHNofGNofHh8el0kLy50ZXN0KG5hbWUpKSB7XG4gICAgICByZXR1cm4gbmFtZSArICdlcyc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBuYW1lICsgJ3MnO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlciBhIG1hcHBpbmcgb2YgZW50aXR5IHR5cGUgbmFtZSB0byB0aGUgZW50aXR5IG5hbWUncyBwbHVyYWxcbiAgICogQHBhcmFtIHBsdXJhbE5hbWVzIHtFbnRpdHlQbHVyYWxOYW1lc30gcGx1cmFsIG5hbWVzIGZvciBlbnRpdHkgdHlwZXNcbiAgICovXG4gIHJlZ2lzdGVyUGx1cmFsTmFtZXMocGx1cmFsTmFtZXM6IEVudGl0eVBsdXJhbE5hbWVzKTogdm9pZCB7XG4gICAgdGhpcy5wbHVyYWxOYW1lcyA9IHsgLi4udGhpcy5wbHVyYWxOYW1lcywgLi4uKHBsdXJhbE5hbWVzIHx8IHt9KSB9O1xuICB9XG59XG4iXX0=