@ngrx/data 11.0.0-rc.0 → 11.1.1

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 (149) hide show
  1. package/bundles/ngrx-data.umd.js +902 -4475
  2. package/bundles/ngrx-data.umd.js.map +1 -1
  3. package/bundles/ngrx-data.umd.min.js +15 -1
  4. package/bundles/ngrx-data.umd.min.js.map +1 -1
  5. package/esm2015/index.js +2 -7
  6. package/esm2015/ngrx-data.js +2 -7
  7. package/esm2015/public_api.js +2 -7
  8. package/esm2015/src/actions/entity-action-factory.js +6 -31
  9. package/esm2015/src/actions/entity-action-guard.js +23 -130
  10. package/esm2015/src/actions/entity-action-operators.js +11 -64
  11. package/esm2015/src/actions/entity-action.js +2 -68
  12. package/esm2015/src/actions/entity-cache-action.js +14 -125
  13. package/esm2015/src/actions/entity-cache-change-set.js +15 -126
  14. package/esm2015/src/actions/entity-op.js +70 -89
  15. package/esm2015/src/actions/merge-strategy.js +8 -16
  16. package/esm2015/src/actions/update-response-data.js +2 -36
  17. package/esm2015/src/dataservices/data-service-error.js +1 -34
  18. package/esm2015/src/dataservices/default-data-service-config.js +1 -41
  19. package/esm2015/src/dataservices/default-data.service.js +5 -163
  20. package/esm2015/src/dataservices/entity-cache-data.service.js +17 -103
  21. package/esm2015/src/dataservices/entity-data.service.js +5 -31
  22. package/esm2015/src/dataservices/http-url-generator.js +11 -97
  23. package/esm2015/src/dataservices/interfaces.js +2 -71
  24. package/esm2015/src/dataservices/persistence-result-handler.service.js +7 -66
  25. package/esm2015/src/dispatchers/entity-cache-dispatcher.js +40 -97
  26. package/esm2015/src/dispatchers/entity-commands.js +2 -247
  27. package/esm2015/src/dispatchers/entity-dispatcher-base.js +65 -287
  28. package/esm2015/src/dispatchers/entity-dispatcher-default-options.js +6 -48
  29. package/esm2015/src/dispatchers/entity-dispatcher-factory.js +2 -64
  30. package/esm2015/src/dispatchers/entity-dispatcher.js +1 -74
  31. package/esm2015/src/effects/entity-cache-effects.js +21 -135
  32. package/esm2015/src/effects/entity-effects-scheduler.js +2 -10
  33. package/esm2015/src/effects/entity-effects.js +18 -128
  34. package/esm2015/src/entity-data-without-effects.module.js +7 -79
  35. package/esm2015/src/entity-data.module.js +3 -25
  36. package/esm2015/src/entity-metadata/entity-definition.js +2 -42
  37. package/esm2015/src/entity-metadata/entity-definition.service.js +14 -52
  38. package/esm2015/src/entity-metadata/entity-filters.js +5 -33
  39. package/esm2015/src/entity-metadata/entity-metadata.js +1 -34
  40. package/esm2015/src/entity-services/entity-collection-service-base.js +56 -208
  41. package/esm2015/src/entity-services/entity-collection-service-elements-factory.js +3 -60
  42. package/esm2015/src/entity-services/entity-collection-service-factory.js +5 -20
  43. package/esm2015/src/entity-services/entity-collection-service.js +2 -53
  44. package/esm2015/src/entity-services/entity-services-base.js +18 -78
  45. package/esm2015/src/entity-services/entity-services-elements.js +9 -44
  46. package/esm2015/src/entity-services/entity-services.js +1 -70
  47. package/esm2015/src/index.js +1 -6
  48. package/esm2015/src/reducers/constants.js +1 -11
  49. package/esm2015/src/reducers/entity-cache-reducer.js +33 -175
  50. package/esm2015/src/reducers/entity-cache.js +2 -10
  51. package/esm2015/src/reducers/entity-change-tracker-base.js +115 -262
  52. package/esm2015/src/reducers/entity-change-tracker.js +2 -179
  53. package/esm2015/src/reducers/entity-collection-creator.js +5 -29
  54. package/esm2015/src/reducers/entity-collection-reducer-methods.js +44 -503
  55. package/esm2015/src/reducers/entity-collection-reducer-registry.js +8 -50
  56. package/esm2015/src/reducers/entity-collection-reducer.js +5 -34
  57. package/esm2015/src/reducers/entity-collection.js +9 -65
  58. package/esm2015/src/selectors/entity-cache-selector.js +1 -12
  59. package/esm2015/src/selectors/entity-selectors$.js +11 -137
  60. package/esm2015/src/selectors/entity-selectors.js +23 -262
  61. package/esm2015/src/utils/correlation-id-generator.js +4 -30
  62. package/esm2015/src/utils/default-logger.js +1 -21
  63. package/esm2015/src/utils/default-pluralizer.js +3 -24
  64. package/esm2015/src/utils/guid-fns.js +9 -41
  65. package/esm2015/src/utils/interfaces.js +1 -49
  66. package/esm2015/src/utils/utilities.js +6 -25
  67. package/fesm2015/ngrx-data.js +721 -4410
  68. package/fesm2015/ngrx-data.js.map +1 -1
  69. package/package.json +5 -5
  70. package/schematics-core/index.js +4 -1
  71. package/schematics-core/index.js.map +1 -1
  72. package/schematics-core/utility/ast-utils.js +127 -1
  73. package/schematics-core/utility/ast-utils.js.map +1 -1
  74. package/schematics-core/utility/config.js +1 -1
  75. package/schematics-core/utility/config.js.map +1 -1
  76. package/schematics-core/utility/find-component.js +101 -0
  77. package/schematics-core/utility/find-component.js.map +1 -0
  78. package/schematics-core/utility/libs-version.js +1 -1
  79. package/schematics-core/utility/libs-version.js.map +1 -1
  80. package/schematics-core/utility/project.js +4 -2
  81. package/schematics-core/utility/project.js.map +1 -1
  82. package/CHANGELOG.md +0 -3
  83. package/esm2015/index.ngsummary.json +0 -1
  84. package/esm2015/ngrx-data.ngsummary.json +0 -1
  85. package/esm2015/public_api.ngsummary.json +0 -1
  86. package/esm2015/src/actions/entity-action-factory.ngsummary.json +0 -1
  87. package/esm2015/src/actions/entity-action-guard.ngsummary.json +0 -1
  88. package/esm2015/src/actions/entity-action-operators.ngsummary.json +0 -1
  89. package/esm2015/src/actions/entity-action.ngsummary.json +0 -1
  90. package/esm2015/src/actions/entity-cache-action.ngsummary.json +0 -1
  91. package/esm2015/src/actions/entity-cache-change-set.ngsummary.json +0 -1
  92. package/esm2015/src/actions/entity-op.ngsummary.json +0 -1
  93. package/esm2015/src/actions/merge-strategy.ngsummary.json +0 -1
  94. package/esm2015/src/actions/update-response-data.ngsummary.json +0 -1
  95. package/esm2015/src/dataservices/data-service-error.ngsummary.json +0 -1
  96. package/esm2015/src/dataservices/default-data-service-config.ngsummary.json +0 -1
  97. package/esm2015/src/dataservices/default-data.service.ngsummary.json +0 -1
  98. package/esm2015/src/dataservices/entity-cache-data.service.ngsummary.json +0 -1
  99. package/esm2015/src/dataservices/entity-data.service.ngsummary.json +0 -1
  100. package/esm2015/src/dataservices/http-url-generator.ngsummary.json +0 -1
  101. package/esm2015/src/dataservices/interfaces.ngsummary.json +0 -1
  102. package/esm2015/src/dataservices/persistence-result-handler.service.ngsummary.json +0 -1
  103. package/esm2015/src/dispatchers/entity-cache-dispatcher.ngsummary.json +0 -1
  104. package/esm2015/src/dispatchers/entity-commands.ngsummary.json +0 -1
  105. package/esm2015/src/dispatchers/entity-dispatcher-base.ngsummary.json +0 -1
  106. package/esm2015/src/dispatchers/entity-dispatcher-default-options.ngsummary.json +0 -1
  107. package/esm2015/src/dispatchers/entity-dispatcher-factory.ngsummary.json +0 -1
  108. package/esm2015/src/dispatchers/entity-dispatcher.ngsummary.json +0 -1
  109. package/esm2015/src/effects/entity-cache-effects.ngsummary.json +0 -1
  110. package/esm2015/src/effects/entity-effects-scheduler.ngsummary.json +0 -1
  111. package/esm2015/src/effects/entity-effects.ngsummary.json +0 -1
  112. package/esm2015/src/entity-data-without-effects.module.ngfactory.js +0 -36
  113. package/esm2015/src/entity-data-without-effects.module.ngsummary.json +0 -1
  114. package/esm2015/src/entity-data.module.ngfactory.js +0 -48
  115. package/esm2015/src/entity-data.module.ngsummary.json +0 -1
  116. package/esm2015/src/entity-metadata/entity-definition.ngsummary.json +0 -1
  117. package/esm2015/src/entity-metadata/entity-definition.service.ngsummary.json +0 -1
  118. package/esm2015/src/entity-metadata/entity-filters.ngsummary.json +0 -1
  119. package/esm2015/src/entity-metadata/entity-metadata.ngsummary.json +0 -1
  120. package/esm2015/src/entity-services/entity-collection-service-base.ngsummary.json +0 -1
  121. package/esm2015/src/entity-services/entity-collection-service-elements-factory.ngsummary.json +0 -1
  122. package/esm2015/src/entity-services/entity-collection-service-factory.ngsummary.json +0 -1
  123. package/esm2015/src/entity-services/entity-collection-service.ngsummary.json +0 -1
  124. package/esm2015/src/entity-services/entity-services-base.ngsummary.json +0 -1
  125. package/esm2015/src/entity-services/entity-services-elements.ngsummary.json +0 -1
  126. package/esm2015/src/entity-services/entity-services.ngsummary.json +0 -1
  127. package/esm2015/src/index.ngsummary.json +0 -1
  128. package/esm2015/src/reducers/constants.ngsummary.json +0 -1
  129. package/esm2015/src/reducers/entity-cache-reducer.ngsummary.json +0 -1
  130. package/esm2015/src/reducers/entity-cache.ngsummary.json +0 -1
  131. package/esm2015/src/reducers/entity-change-tracker-base.ngsummary.json +0 -1
  132. package/esm2015/src/reducers/entity-change-tracker.ngsummary.json +0 -1
  133. package/esm2015/src/reducers/entity-collection-creator.ngsummary.json +0 -1
  134. package/esm2015/src/reducers/entity-collection-reducer-methods.ngsummary.json +0 -1
  135. package/esm2015/src/reducers/entity-collection-reducer-registry.ngsummary.json +0 -1
  136. package/esm2015/src/reducers/entity-collection-reducer.ngsummary.json +0 -1
  137. package/esm2015/src/reducers/entity-collection.ngsummary.json +0 -1
  138. package/esm2015/src/selectors/entity-cache-selector.ngsummary.json +0 -1
  139. package/esm2015/src/selectors/entity-selectors$.ngsummary.json +0 -1
  140. package/esm2015/src/selectors/entity-selectors.ngsummary.json +0 -1
  141. package/esm2015/src/utils/correlation-id-generator.ngsummary.json +0 -1
  142. package/esm2015/src/utils/default-logger.ngsummary.json +0 -1
  143. package/esm2015/src/utils/default-pluralizer.ngsummary.json +0 -1
  144. package/esm2015/src/utils/guid-fns.ngsummary.json +0 -1
  145. package/esm2015/src/utils/interfaces.ngsummary.json +0 -1
  146. package/esm2015/src/utils/utilities.ngsummary.json +0 -1
  147. package/schematics/ng-add/files/entity-metadata.ts.template +0 -10
  148. package/src/entity-data-without-effects.module.ngfactory.d.ts +0 -3
  149. package/src/entity-data.module.ngfactory.d.ts +0 -3
@@ -1,39 +1,22 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: src/reducers/entity-collection-reducer-registry.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
1
  import { Inject, Injectable, Optional } from '@angular/core';
7
2
  import { compose } from '@ngrx/store';
8
3
  import { ENTITY_COLLECTION_META_REDUCERS } from './constants';
9
4
  import { EntityCollectionReducerFactory, } from './entity-collection-reducer';
10
- /**
11
- * A hash of EntityCollectionReducers
12
- * @record
13
- */
14
- export function EntityCollectionReducers() { }
15
5
  /**
16
6
  * Registry of entity types and their previously-constructed reducers.
17
7
  * Can create a new CollectionReducer, which it registers for subsequent use.
18
8
  */
19
9
  export class EntityCollectionReducerRegistry {
20
- /**
21
- * @param {?} entityCollectionReducerFactory
22
- * @param {?=} entityCollectionMetaReducers
23
- */
24
10
  constructor(entityCollectionReducerFactory, entityCollectionMetaReducers) {
25
11
  this.entityCollectionReducerFactory = entityCollectionReducerFactory;
26
12
  this.entityCollectionReducers = {};
27
- this.entityCollectionMetaReducer = (/** @type {?} */ (compose.apply(null, entityCollectionMetaReducers || [])));
13
+ this.entityCollectionMetaReducer = compose.apply(null, entityCollectionMetaReducers || []);
28
14
  }
29
15
  /**
30
16
  * Get the registered EntityCollectionReducer<T> for this entity type or create one and register it.
31
- * @template T
32
- * @param {?} entityName Name of the entity type for this reducer
33
- * @return {?}
17
+ * @param entityName Name of the entity type for this reducer
34
18
  */
35
19
  getOrCreateReducer(entityName) {
36
- /** @type {?} */
37
20
  let reducer = this.entityCollectionReducers[entityName];
38
21
  if (!reducer) {
39
22
  reducer = this.entityCollectionReducerFactory.create(entityName);
@@ -44,38 +27,30 @@ export class EntityCollectionReducerRegistry {
44
27
  }
45
28
  /**
46
29
  * Register an EntityCollectionReducer for an entity type
47
- * @template T
48
- * @param {?} entityName - the name of the entity type
49
- * @param {?} reducer - reducer for that entity type
30
+ * @param entityName - the name of the entity type
31
+ * @param reducer - reducer for that entity type
50
32
  *
51
33
  * Examples:
52
34
  * registerReducer('Hero', myHeroReducer);
53
35
  * registerReducer('Villain', myVillainReducer);
54
- * @return {?}
55
36
  */
56
37
  registerReducer(entityName, reducer) {
57
- reducer = this.entityCollectionMetaReducer((/** @type {?} */ (reducer)));
38
+ reducer = this.entityCollectionMetaReducer(reducer);
58
39
  return (this.entityCollectionReducers[entityName.trim()] = reducer);
59
40
  }
60
41
  /**
61
42
  * Register a batch of EntityCollectionReducers.
62
- * @param {?} reducers - reducers to merge into existing reducers
43
+ * @param reducers - reducers to merge into existing reducers
63
44
  *
64
45
  * Examples:
65
46
  * registerReducers({
66
47
  * Hero: myHeroReducer,
67
48
  * Villain: myVillainReducer
68
49
  * });
69
- * @return {?}
70
50
  */
71
51
  registerReducers(reducers) {
72
- /** @type {?} */
73
52
  const keys = reducers ? Object.keys(reducers) : [];
74
- keys.forEach((/**
75
- * @param {?} key
76
- * @return {?}
77
- */
78
- (key) => this.registerReducer(key, reducers[key])));
53
+ keys.forEach((key) => this.registerReducer(key, reducers[key]));
79
54
  }
80
55
  }
81
56
  EntityCollectionReducerRegistry.decorators = [
@@ -86,21 +61,4 @@ EntityCollectionReducerRegistry.ctorParameters = () => [
86
61
  { type: EntityCollectionReducerFactory },
87
62
  { type: Array, decorators: [{ type: Optional }, { type: Inject, args: [ENTITY_COLLECTION_META_REDUCERS,] }] }
88
63
  ];
89
- if (false) {
90
- /**
91
- * @type {?}
92
- * @protected
93
- */
94
- EntityCollectionReducerRegistry.prototype.entityCollectionReducers;
95
- /**
96
- * @type {?}
97
- * @private
98
- */
99
- EntityCollectionReducerRegistry.prototype.entityCollectionMetaReducer;
100
- /**
101
- * @type {?}
102
- * @private
103
- */
104
- EntityCollectionReducerRegistry.prototype.entityCollectionReducerFactory;
105
- }
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci1yZWdpc3RyeS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGEvIiwic291cmNlcyI6WyJzcmMvcmVkdWNlcnMvZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci1yZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsT0FBTyxFQUFlLE1BQU0sYUFBYSxDQUFDO0FBSW5ELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM5RCxPQUFPLEVBRUwsOEJBQThCLEdBQy9CLE1BQU0sNkJBQTZCLENBQUM7Ozs7O0FBR3JDLDhDQUVDOzs7OztBQU9ELE1BQU0sT0FBTywrQkFBK0I7Ozs7O0lBTzFDLFlBQ1UsOEJBQThELEVBR3RFLDRCQUE0RTtRQUhwRSxtQ0FBOEIsR0FBOUIsOEJBQThCLENBQWdDO1FBUDlELDZCQUF3QixHQUE2QixFQUFFLENBQUM7UUFZaEUsSUFBSSxDQUFDLDJCQUEyQixHQUFHLG1CQUFBLE9BQU8sQ0FBQyxLQUFLLENBQzlDLElBQUksRUFDSiw0QkFBNEIsSUFBSSxFQUFFLENBQ25DLEVBQU8sQ0FBQztJQUNYLENBQUM7Ozs7Ozs7SUFNRCxrQkFBa0IsQ0FBSSxVQUFrQjs7WUFDbEMsT0FBTyxHQUErQixJQUFJLENBQUMsd0JBQXdCLENBQ3JFLFVBQVUsQ0FDWDtRQUVELElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixPQUFPLEdBQUcsSUFBSSxDQUFDLDhCQUE4QixDQUFDLE1BQU0sQ0FBSSxVQUFVLENBQUMsQ0FBQztZQUNwRSxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBSSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFVBQVUsQ0FBQyxHQUFHLE9BQU8sQ0FBQztTQUNyRDtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Ozs7Ozs7Ozs7OztJQVdELGVBQWUsQ0FDYixVQUFrQixFQUNsQixPQUFtQztRQUVuQyxPQUFPLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLG1CQUFBLE9BQU8sRUFBTyxDQUFDLENBQUM7UUFDM0QsT0FBTyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUN0RSxDQUFDOzs7Ozs7Ozs7Ozs7SUFZRCxnQkFBZ0IsQ0FBQyxRQUFrQzs7Y0FDM0MsSUFBSSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtRQUNsRCxJQUFJLENBQUMsT0FBTzs7OztRQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBQyxDQUFDO0lBQ2xFLENBQUM7OztZQW5FRixVQUFVOzs7O1lBWlQsOEJBQThCO3dDQXNCM0IsUUFBUSxZQUNSLE1BQU0sU0FBQywrQkFBK0I7Ozs7Ozs7SUFUekMsbUVBQWtFOzs7OztJQUNsRSxzRUFHRTs7Ozs7SUFHQSx5RUFBc0UiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb21wb3NlLCBNZXRhUmVkdWNlciB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0IHsgRW50aXR5QWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucy9lbnRpdHktYWN0aW9uJztcbmltcG9ydCB7IEVudGl0eUNvbGxlY3Rpb24gfSBmcm9tICcuL2VudGl0eS1jb2xsZWN0aW9uJztcbmltcG9ydCB7IEVOVElUWV9DT0xMRUNUSU9OX01FVEFfUkVEVUNFUlMgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcixcbiAgRW50aXR5Q29sbGVjdGlvblJlZHVjZXJGYWN0b3J5LFxufSBmcm9tICcuL2VudGl0eS1jb2xsZWN0aW9uLXJlZHVjZXInO1xuXG4vKiogQSBoYXNoIG9mIEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VycyAqL1xuZXhwb3J0IGludGVyZmFjZSBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcnMge1xuICBbZW50aXR5OiBzdHJpbmddOiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcjxhbnk+O1xufVxuXG4vKipcbiAqIFJlZ2lzdHJ5IG9mIGVudGl0eSB0eXBlcyBhbmQgdGhlaXIgcHJldmlvdXNseS1jb25zdHJ1Y3RlZCByZWR1Y2Vycy5cbiAqIENhbiBjcmVhdGUgYSBuZXcgQ29sbGVjdGlvblJlZHVjZXIsIHdoaWNoIGl0IHJlZ2lzdGVycyBmb3Igc3Vic2VxdWVudCB1c2UuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlclJlZ2lzdHJ5IHtcbiAgcHJvdGVjdGVkIGVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyczogRW50aXR5Q29sbGVjdGlvblJlZHVjZXJzID0ge307XG4gIHByaXZhdGUgZW50aXR5Q29sbGVjdGlvbk1ldGFSZWR1Y2VyOiBNZXRhUmVkdWNlcjxcbiAgICBFbnRpdHlDb2xsZWN0aW9uLFxuICAgIEVudGl0eUFjdGlvblxuICA+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZW50aXR5Q29sbGVjdGlvblJlZHVjZXJGYWN0b3J5OiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlckZhY3RvcnksXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KEVOVElUWV9DT0xMRUNUSU9OX01FVEFfUkVEVUNFUlMpXG4gICAgZW50aXR5Q29sbGVjdGlvbk1ldGFSZWR1Y2Vycz86IE1ldGFSZWR1Y2VyPEVudGl0eUNvbGxlY3Rpb24sIEVudGl0eUFjdGlvbj5bXVxuICApIHtcbiAgICB0aGlzLmVudGl0eUNvbGxlY3Rpb25NZXRhUmVkdWNlciA9IGNvbXBvc2UuYXBwbHkoXG4gICAgICBudWxsLFxuICAgICAgZW50aXR5Q29sbGVjdGlvbk1ldGFSZWR1Y2VycyB8fCBbXVxuICAgICkgYXMgYW55O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgcmVnaXN0ZXJlZCBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcjxUPiBmb3IgdGhpcyBlbnRpdHkgdHlwZSBvciBjcmVhdGUgb25lIGFuZCByZWdpc3RlciBpdC5cbiAgICogQHBhcmFtIGVudGl0eU5hbWUgTmFtZSBvZiB0aGUgZW50aXR5IHR5cGUgZm9yIHRoaXMgcmVkdWNlclxuICAgKi9cbiAgZ2V0T3JDcmVhdGVSZWR1Y2VyPFQ+KGVudGl0eU5hbWU6IHN0cmluZyk6IEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyPFQ+IHtcbiAgICBsZXQgcmVkdWNlcjogRW50aXR5Q29sbGVjdGlvblJlZHVjZXI8VD4gPSB0aGlzLmVudGl0eUNvbGxlY3Rpb25SZWR1Y2Vyc1tcbiAgICAgIGVudGl0eU5hbWVcbiAgICBdO1xuXG4gICAgaWYgKCFyZWR1Y2VyKSB7XG4gICAgICByZWR1Y2VyID0gdGhpcy5lbnRpdHlDb2xsZWN0aW9uUmVkdWNlckZhY3RvcnkuY3JlYXRlPFQ+KGVudGl0eU5hbWUpO1xuICAgICAgcmVkdWNlciA9IHRoaXMucmVnaXN0ZXJSZWR1Y2VyPFQ+KGVudGl0eU5hbWUsIHJlZHVjZXIpO1xuICAgICAgdGhpcy5lbnRpdHlDb2xsZWN0aW9uUmVkdWNlcnNbZW50aXR5TmFtZV0gPSByZWR1Y2VyO1xuICAgIH1cbiAgICByZXR1cm4gcmVkdWNlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlciBhbiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlciBmb3IgYW4gZW50aXR5IHR5cGVcbiAgICogQHBhcmFtIGVudGl0eU5hbWUgLSB0aGUgbmFtZSBvZiB0aGUgZW50aXR5IHR5cGVcbiAgICogQHBhcmFtIHJlZHVjZXIgLSByZWR1Y2VyIGZvciB0aGF0IGVudGl0eSB0eXBlXG4gICAqXG4gICAqIEV4YW1wbGVzOlxuICAgKiAgIHJlZ2lzdGVyUmVkdWNlcignSGVybycsIG15SGVyb1JlZHVjZXIpO1xuICAgKiAgIHJlZ2lzdGVyUmVkdWNlcignVmlsbGFpbicsIG15VmlsbGFpblJlZHVjZXIpO1xuICAgKi9cbiAgcmVnaXN0ZXJSZWR1Y2VyPFQ+KFxuICAgIGVudGl0eU5hbWU6IHN0cmluZyxcbiAgICByZWR1Y2VyOiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcjxUPlxuICApOiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcjxUPiB7XG4gICAgcmVkdWNlciA9IHRoaXMuZW50aXR5Q29sbGVjdGlvbk1ldGFSZWR1Y2VyKHJlZHVjZXIgYXMgYW55KTtcbiAgICByZXR1cm4gKHRoaXMuZW50aXR5Q29sbGVjdGlvblJlZHVjZXJzW2VudGl0eU5hbWUudHJpbSgpXSA9IHJlZHVjZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIGEgYmF0Y2ggb2YgRW50aXR5Q29sbGVjdGlvblJlZHVjZXJzLlxuICAgKiBAcGFyYW0gcmVkdWNlcnMgLSByZWR1Y2VycyB0byBtZXJnZSBpbnRvIGV4aXN0aW5nIHJlZHVjZXJzXG4gICAqXG4gICAqIEV4YW1wbGVzOlxuICAgKiAgIHJlZ2lzdGVyUmVkdWNlcnMoe1xuICAgKiAgICAgSGVybzogbXlIZXJvUmVkdWNlcixcbiAgICogICAgIFZpbGxhaW46IG15VmlsbGFpblJlZHVjZXJcbiAgICogICB9KTtcbiAgICovXG4gIHJlZ2lzdGVyUmVkdWNlcnMocmVkdWNlcnM6IEVudGl0eUNvbGxlY3Rpb25SZWR1Y2Vycykge1xuICAgIGNvbnN0IGtleXMgPSByZWR1Y2VycyA/IE9iamVjdC5rZXlzKHJlZHVjZXJzKSA6IFtdO1xuICAgIGtleXMuZm9yRWFjaCgoa2V5KSA9PiB0aGlzLnJlZ2lzdGVyUmVkdWNlcihrZXksIHJlZHVjZXJzW2tleV0pKTtcbiAgfVxufVxuIl19
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci1yZWdpc3RyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZGF0YS9zcmMvcmVkdWNlcnMvZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci1yZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLE9BQU8sRUFBZSxNQUFNLGFBQWEsQ0FBQztBQUluRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDOUQsT0FBTyxFQUVMLDhCQUE4QixHQUMvQixNQUFNLDZCQUE2QixDQUFDO0FBT3JDOzs7R0FHRztBQUVILE1BQU0sT0FBTywrQkFBK0I7SUFPMUMsWUFDVSw4QkFBOEQsRUFHdEUsNEJBQTRFO1FBSHBFLG1DQUE4QixHQUE5Qiw4QkFBOEIsQ0FBZ0M7UUFQOUQsNkJBQXdCLEdBQTZCLEVBQUUsQ0FBQztRQVloRSxJQUFJLENBQUMsMkJBQTJCLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FDOUMsSUFBSSxFQUNKLDRCQUE0QixJQUFJLEVBQUUsQ0FDNUIsQ0FBQztJQUNYLENBQUM7SUFFRDs7O09BR0c7SUFDSCxrQkFBa0IsQ0FBSSxVQUFrQjtRQUN0QyxJQUFJLE9BQU8sR0FBK0IsSUFBSSxDQUFDLHdCQUF3QixDQUNyRSxVQUFVLENBQ1gsQ0FBQztRQUVGLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixPQUFPLEdBQUcsSUFBSSxDQUFDLDhCQUE4QixDQUFDLE1BQU0sQ0FBSSxVQUFVLENBQUMsQ0FBQztZQUNwRSxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBSSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFVBQVUsQ0FBQyxHQUFHLE9BQU8sQ0FBQztTQUNyRDtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILGVBQWUsQ0FDYixVQUFrQixFQUNsQixPQUFtQztRQUVuQyxPQUFPLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLE9BQWMsQ0FBQyxDQUFDO1FBQzNELE9BQU8sQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNILGdCQUFnQixDQUFDLFFBQWtDO1FBQ2pELE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQzs7O1lBbkVGLFVBQVU7Ozs7WUFaVCw4QkFBOEI7d0NBc0IzQixRQUFRLFlBQ1IsTUFBTSxTQUFDLCtCQUErQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvbXBvc2UsIE1ldGFSZWR1Y2VyIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuXG5pbXBvcnQgeyBFbnRpdHlBY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zL2VudGl0eS1hY3Rpb24nO1xuaW1wb3J0IHsgRW50aXR5Q29sbGVjdGlvbiB9IGZyb20gJy4vZW50aXR5LWNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRU5USVRZX0NPTExFQ1RJT05fTUVUQV9SRURVQ0VSUyB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7XG4gIEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyLFxuICBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlckZhY3RvcnksXG59IGZyb20gJy4vZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlcic7XG5cbi8qKiBBIGhhc2ggb2YgRW50aXR5Q29sbGVjdGlvblJlZHVjZXJzICovXG5leHBvcnQgaW50ZXJmYWNlIEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VycyB7XG4gIFtlbnRpdHk6IHN0cmluZ106IEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyPGFueT47XG59XG5cbi8qKlxuICogUmVnaXN0cnkgb2YgZW50aXR5IHR5cGVzIGFuZCB0aGVpciBwcmV2aW91c2x5LWNvbnN0cnVjdGVkIHJlZHVjZXJzLlxuICogQ2FuIGNyZWF0ZSBhIG5ldyBDb2xsZWN0aW9uUmVkdWNlciwgd2hpY2ggaXQgcmVnaXN0ZXJzIGZvciBzdWJzZXF1ZW50IHVzZS5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyUmVnaXN0cnkge1xuICBwcm90ZWN0ZWQgZW50aXR5Q29sbGVjdGlvblJlZHVjZXJzOiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcnMgPSB7fTtcbiAgcHJpdmF0ZSBlbnRpdHlDb2xsZWN0aW9uTWV0YVJlZHVjZXI6IE1ldGFSZWR1Y2VyPFxuICAgIEVudGl0eUNvbGxlY3Rpb24sXG4gICAgRW50aXR5QWN0aW9uXG4gID47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbnRpdHlDb2xsZWN0aW9uUmVkdWNlckZhY3Rvcnk6IEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyRmFjdG9yeSxcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoRU5USVRZX0NPTExFQ1RJT05fTUVUQV9SRURVQ0VSUylcbiAgICBlbnRpdHlDb2xsZWN0aW9uTWV0YVJlZHVjZXJzPzogTWV0YVJlZHVjZXI8RW50aXR5Q29sbGVjdGlvbiwgRW50aXR5QWN0aW9uPltdXG4gICkge1xuICAgIHRoaXMuZW50aXR5Q29sbGVjdGlvbk1ldGFSZWR1Y2VyID0gY29tcG9zZS5hcHBseShcbiAgICAgIG51bGwsXG4gICAgICBlbnRpdHlDb2xsZWN0aW9uTWV0YVJlZHVjZXJzIHx8IFtdXG4gICAgKSBhcyBhbnk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSByZWdpc3RlcmVkIEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyPFQ+IGZvciB0aGlzIGVudGl0eSB0eXBlIG9yIGNyZWF0ZSBvbmUgYW5kIHJlZ2lzdGVyIGl0LlxuICAgKiBAcGFyYW0gZW50aXR5TmFtZSBOYW1lIG9mIHRoZSBlbnRpdHkgdHlwZSBmb3IgdGhpcyByZWR1Y2VyXG4gICAqL1xuICBnZXRPckNyZWF0ZVJlZHVjZXI8VD4oZW50aXR5TmFtZTogc3RyaW5nKTogRW50aXR5Q29sbGVjdGlvblJlZHVjZXI8VD4ge1xuICAgIGxldCByZWR1Y2VyOiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcjxUPiA9IHRoaXMuZW50aXR5Q29sbGVjdGlvblJlZHVjZXJzW1xuICAgICAgZW50aXR5TmFtZVxuICAgIF07XG5cbiAgICBpZiAoIXJlZHVjZXIpIHtcbiAgICAgIHJlZHVjZXIgPSB0aGlzLmVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyRmFjdG9yeS5jcmVhdGU8VD4oZW50aXR5TmFtZSk7XG4gICAgICByZWR1Y2VyID0gdGhpcy5yZWdpc3RlclJlZHVjZXI8VD4oZW50aXR5TmFtZSwgcmVkdWNlcik7XG4gICAgICB0aGlzLmVudGl0eUNvbGxlY3Rpb25SZWR1Y2Vyc1tlbnRpdHlOYW1lXSA9IHJlZHVjZXI7XG4gICAgfVxuICAgIHJldHVybiByZWR1Y2VyO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIGFuIEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyIGZvciBhbiBlbnRpdHkgdHlwZVxuICAgKiBAcGFyYW0gZW50aXR5TmFtZSAtIHRoZSBuYW1lIG9mIHRoZSBlbnRpdHkgdHlwZVxuICAgKiBAcGFyYW0gcmVkdWNlciAtIHJlZHVjZXIgZm9yIHRoYXQgZW50aXR5IHR5cGVcbiAgICpcbiAgICogRXhhbXBsZXM6XG4gICAqICAgcmVnaXN0ZXJSZWR1Y2VyKCdIZXJvJywgbXlIZXJvUmVkdWNlcik7XG4gICAqICAgcmVnaXN0ZXJSZWR1Y2VyKCdWaWxsYWluJywgbXlWaWxsYWluUmVkdWNlcik7XG4gICAqL1xuICByZWdpc3RlclJlZHVjZXI8VD4oXG4gICAgZW50aXR5TmFtZTogc3RyaW5nLFxuICAgIHJlZHVjZXI6IEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyPFQ+XG4gICk6IEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyPFQ+IHtcbiAgICByZWR1Y2VyID0gdGhpcy5lbnRpdHlDb2xsZWN0aW9uTWV0YVJlZHVjZXIocmVkdWNlciBhcyBhbnkpO1xuICAgIHJldHVybiAodGhpcy5lbnRpdHlDb2xsZWN0aW9uUmVkdWNlcnNbZW50aXR5TmFtZS50cmltKCldID0gcmVkdWNlcik7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXIgYSBiYXRjaCBvZiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcnMuXG4gICAqIEBwYXJhbSByZWR1Y2VycyAtIHJlZHVjZXJzIHRvIG1lcmdlIGludG8gZXhpc3RpbmcgcmVkdWNlcnNcbiAgICpcbiAgICogRXhhbXBsZXM6XG4gICAqICAgcmVnaXN0ZXJSZWR1Y2Vycyh7XG4gICAqICAgICBIZXJvOiBteUhlcm9SZWR1Y2VyLFxuICAgKiAgICAgVmlsbGFpbjogbXlWaWxsYWluUmVkdWNlclxuICAgKiAgIH0pO1xuICAgKi9cbiAgcmVnaXN0ZXJSZWR1Y2VycyhyZWR1Y2VyczogRW50aXR5Q29sbGVjdGlvblJlZHVjZXJzKSB7XG4gICAgY29uc3Qga2V5cyA9IHJlZHVjZXJzID8gT2JqZWN0LmtleXMocmVkdWNlcnMpIDogW107XG4gICAga2V5cy5mb3JFYWNoKChrZXkpID0+IHRoaXMucmVnaXN0ZXJSZWR1Y2VyKGtleSwgcmVkdWNlcnNba2V5XSkpO1xuICB9XG59XG4iXX0=
@@ -1,40 +1,18 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: src/reducers/entity-collection-reducer.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
1
  import { Injectable } from '@angular/core';
7
2
  import { EntityCollectionReducerMethodsFactory } from './entity-collection-reducer-methods';
8
- /**
9
- * Create a default reducer for a specific entity collection
10
- */
3
+ /** Create a default reducer for a specific entity collection */
11
4
  export class EntityCollectionReducerFactory {
12
- /**
13
- * @param {?} methodsFactory
14
- */
15
5
  constructor(methodsFactory) {
16
6
  this.methodsFactory = methodsFactory;
17
7
  }
18
- /**
19
- * Create a default reducer for a collection of entities of T
20
- * @template T
21
- * @param {?} entityName
22
- * @return {?}
23
- */
8
+ /** Create a default reducer for a collection of entities of T */
24
9
  create(entityName) {
25
- /** @type {?} */
26
10
  const methods = this.methodsFactory.create(entityName);
27
11
  /** Perform Actions against a particular entity collection in the EntityCache */
28
- return (/**
29
- * @param {?} collection
30
- * @param {?} action
31
- * @return {?}
32
- */
33
- function entityCollectionReducer(collection, action) {
34
- /** @type {?} */
12
+ return function entityCollectionReducer(collection, action) {
35
13
  const reducerMethod = methods[action.payload.entityOp];
36
14
  return reducerMethod ? reducerMethod(collection, action) : collection;
37
- });
15
+ };
38
16
  }
39
17
  }
40
18
  EntityCollectionReducerFactory.decorators = [
@@ -44,11 +22,4 @@ EntityCollectionReducerFactory.decorators = [
44
22
  EntityCollectionReducerFactory.ctorParameters = () => [
45
23
  { type: EntityCollectionReducerMethodsFactory }
46
24
  ];
47
- if (false) {
48
- /**
49
- * @type {?}
50
- * @private
51
- */
52
- EntityCollectionReducerFactory.prototype.methodsFactory;
53
- }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGEvIiwic291cmNlcyI6WyJzcmMvcmVkdWNlcnMvZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJM0MsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7QUFTNUYsTUFBTSxPQUFPLDhCQUE4Qjs7OztJQUN6QyxZQUFvQixjQUFxRDtRQUFyRCxtQkFBYyxHQUFkLGNBQWMsQ0FBdUM7SUFBRyxDQUFDOzs7Ozs7O0lBRzdFLE1BQU0sQ0FBVSxVQUFrQjs7Y0FDMUIsT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFJLFVBQVUsQ0FBQztRQUV6RCxnRkFBZ0Y7UUFDaEY7Ozs7O1FBQU8sU0FBUyx1QkFBdUIsQ0FDckMsVUFBK0IsRUFDL0IsTUFBb0I7O2tCQUVkLGFBQWEsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDdEQsT0FBTyxhQUFhLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztRQUN4RSxDQUFDLEVBQUM7SUFDSixDQUFDOzs7WUFoQkYsVUFBVTs7OztZQVJGLHFDQUFxQzs7Ozs7OztJQVVoQyx3REFBNkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEVudGl0eUFjdGlvbiB9IGZyb20gJy4uL2FjdGlvbnMvZW50aXR5LWFjdGlvbic7XG5pbXBvcnQgeyBFbnRpdHlDb2xsZWN0aW9uIH0gZnJvbSAnLi9lbnRpdHktY29sbGVjdGlvbic7XG5pbXBvcnQgeyBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlck1ldGhvZHNGYWN0b3J5IH0gZnJvbSAnLi9lbnRpdHktY29sbGVjdGlvbi1yZWR1Y2VyLW1ldGhvZHMnO1xuXG5leHBvcnQgdHlwZSBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcjxUID0gYW55PiA9IChcbiAgY29sbGVjdGlvbjogRW50aXR5Q29sbGVjdGlvbjxUPixcbiAgYWN0aW9uOiBFbnRpdHlBY3Rpb25cbikgPT4gRW50aXR5Q29sbGVjdGlvbjxUPjtcblxuLyoqIENyZWF0ZSBhIGRlZmF1bHQgcmVkdWNlciBmb3IgYSBzcGVjaWZpYyBlbnRpdHkgY29sbGVjdGlvbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyRmFjdG9yeSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbWV0aG9kc0ZhY3Rvcnk6IEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyTWV0aG9kc0ZhY3RvcnkpIHt9XG5cbiAgLyoqIENyZWF0ZSBhIGRlZmF1bHQgcmVkdWNlciBmb3IgYSBjb2xsZWN0aW9uIG9mIGVudGl0aWVzIG9mIFQgKi9cbiAgY3JlYXRlPFQgPSBhbnk+KGVudGl0eU5hbWU6IHN0cmluZyk6IEVudGl0eUNvbGxlY3Rpb25SZWR1Y2VyPFQ+IHtcbiAgICBjb25zdCBtZXRob2RzID0gdGhpcy5tZXRob2RzRmFjdG9yeS5jcmVhdGU8VD4oZW50aXR5TmFtZSk7XG5cbiAgICAvKiogUGVyZm9ybSBBY3Rpb25zIGFnYWluc3QgYSBwYXJ0aWN1bGFyIGVudGl0eSBjb2xsZWN0aW9uIGluIHRoZSBFbnRpdHlDYWNoZSAqL1xuICAgIHJldHVybiBmdW5jdGlvbiBlbnRpdHlDb2xsZWN0aW9uUmVkdWNlcihcbiAgICAgIGNvbGxlY3Rpb246IEVudGl0eUNvbGxlY3Rpb248VD4sXG4gICAgICBhY3Rpb246IEVudGl0eUFjdGlvblxuICAgICk6IEVudGl0eUNvbGxlY3Rpb248VD4ge1xuICAgICAgY29uc3QgcmVkdWNlck1ldGhvZCA9IG1ldGhvZHNbYWN0aW9uLnBheWxvYWQuZW50aXR5T3BdO1xuICAgICAgcmV0dXJuIHJlZHVjZXJNZXRob2QgPyByZWR1Y2VyTWV0aG9kKGNvbGxlY3Rpb24sIGFjdGlvbikgOiBjb2xsZWN0aW9uO1xuICAgIH07XG4gIH1cbn1cbiJdfQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZGF0YS9zcmMvcmVkdWNlcnMvZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBTzVGLGdFQUFnRTtBQUVoRSxNQUFNLE9BQU8sOEJBQThCO0lBQ3pDLFlBQW9CLGNBQXFEO1FBQXJELG1CQUFjLEdBQWQsY0FBYyxDQUF1QztJQUFHLENBQUM7SUFFN0UsaUVBQWlFO0lBQ2pFLE1BQU0sQ0FBVSxVQUFrQjtRQUNoQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBSSxVQUFVLENBQUMsQ0FBQztRQUUxRCxnRkFBZ0Y7UUFDaEYsT0FBTyxTQUFTLHVCQUF1QixDQUNyQyxVQUErQixFQUMvQixNQUFvQjtZQUVwQixNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN2RCxPQUFPLGFBQWEsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDO1FBQ3hFLENBQUMsQ0FBQztJQUNKLENBQUM7OztZQWhCRixVQUFVOzs7O1lBUkYscUNBQXFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBFbnRpdHlBY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zL2VudGl0eS1hY3Rpb24nO1xuaW1wb3J0IHsgRW50aXR5Q29sbGVjdGlvbiB9IGZyb20gJy4vZW50aXR5LWNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRW50aXR5Q29sbGVjdGlvblJlZHVjZXJNZXRob2RzRmFjdG9yeSB9IGZyb20gJy4vZW50aXR5LWNvbGxlY3Rpb24tcmVkdWNlci1tZXRob2RzJztcblxuZXhwb3J0IHR5cGUgRW50aXR5Q29sbGVjdGlvblJlZHVjZXI8VCA9IGFueT4gPSAoXG4gIGNvbGxlY3Rpb246IEVudGl0eUNvbGxlY3Rpb248VD4sXG4gIGFjdGlvbjogRW50aXR5QWN0aW9uXG4pID0+IEVudGl0eUNvbGxlY3Rpb248VD47XG5cbi8qKiBDcmVhdGUgYSBkZWZhdWx0IHJlZHVjZXIgZm9yIGEgc3BlY2lmaWMgZW50aXR5IGNvbGxlY3Rpb24gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlckZhY3Rvcnkge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1ldGhvZHNGYWN0b3J5OiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlck1ldGhvZHNGYWN0b3J5KSB7fVxuXG4gIC8qKiBDcmVhdGUgYSBkZWZhdWx0IHJlZHVjZXIgZm9yIGEgY29sbGVjdGlvbiBvZiBlbnRpdGllcyBvZiBUICovXG4gIGNyZWF0ZTxUID0gYW55PihlbnRpdHlOYW1lOiBzdHJpbmcpOiBFbnRpdHlDb2xsZWN0aW9uUmVkdWNlcjxUPiB7XG4gICAgY29uc3QgbWV0aG9kcyA9IHRoaXMubWV0aG9kc0ZhY3RvcnkuY3JlYXRlPFQ+KGVudGl0eU5hbWUpO1xuXG4gICAgLyoqIFBlcmZvcm0gQWN0aW9ucyBhZ2FpbnN0IGEgcGFydGljdWxhciBlbnRpdHkgY29sbGVjdGlvbiBpbiB0aGUgRW50aXR5Q2FjaGUgKi9cbiAgICByZXR1cm4gZnVuY3Rpb24gZW50aXR5Q29sbGVjdGlvblJlZHVjZXIoXG4gICAgICBjb2xsZWN0aW9uOiBFbnRpdHlDb2xsZWN0aW9uPFQ+LFxuICAgICAgYWN0aW9uOiBFbnRpdHlBY3Rpb25cbiAgICApOiBFbnRpdHlDb2xsZWN0aW9uPFQ+IHtcbiAgICAgIGNvbnN0IHJlZHVjZXJNZXRob2QgPSBtZXRob2RzW2FjdGlvbi5wYXlsb2FkLmVudGl0eU9wXTtcbiAgICAgIHJldHVybiByZWR1Y2VyTWV0aG9kID8gcmVkdWNlck1ldGhvZChjb2xsZWN0aW9uLCBhY3Rpb24pIDogY29sbGVjdGlvbjtcbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -1,69 +1,13 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: src/reducers/entity-collection.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- /** @enum {number} */
7
- const ChangeType = {
1
+ /** Types of change in a ChangeState instance */
2
+ export var ChangeType;
3
+ (function (ChangeType) {
8
4
  /** The entity has not changed from its last known server state. */
9
- Unchanged: 0,
5
+ ChangeType[ChangeType["Unchanged"] = 0] = "Unchanged";
10
6
  /** The entity was added to the collection */
11
- Added: 1,
7
+ ChangeType[ChangeType["Added"] = 1] = "Added";
12
8
  /** The entity is scheduled for delete and was removed from the collection */
13
- Deleted: 2,
9
+ ChangeType[ChangeType["Deleted"] = 2] = "Deleted";
14
10
  /** The entity in the collection was updated */
15
- Updated: 3,
16
- };
17
- export { ChangeType };
18
- ChangeType[ChangeType.Unchanged] = 'Unchanged';
19
- ChangeType[ChangeType.Added] = 'Added';
20
- ChangeType[ChangeType.Deleted] = 'Deleted';
21
- ChangeType[ChangeType.Updated] = 'Updated';
22
- /**
23
- * Change state for an entity with unsaved changes;
24
- * an entry in an EntityCollection.changeState map
25
- * @record
26
- * @template T
27
- */
28
- export function ChangeState() { }
29
- if (false) {
30
- /** @type {?} */
31
- ChangeState.prototype.changeType;
32
- /** @type {?|undefined} */
33
- ChangeState.prototype.originalValue;
34
- }
35
- /**
36
- * Data and information about a collection of entities of a single type.
37
- * EntityCollections are maintained in the EntityCache within the ngrx store.
38
- * @record
39
- * @template T
40
- */
41
- export function EntityCollection() { }
42
- if (false) {
43
- /**
44
- * Name of the entity type for this collection
45
- * @type {?}
46
- */
47
- EntityCollection.prototype.entityName;
48
- /**
49
- * A map of ChangeStates, keyed by id, for entities with unsaved changes
50
- * @type {?}
51
- */
52
- EntityCollection.prototype.changeState;
53
- /**
54
- * The user's current collection filter pattern
55
- * @type {?|undefined}
56
- */
57
- EntityCollection.prototype.filter;
58
- /**
59
- * true if collection was ever filled by QueryAll; forced false if cleared
60
- * @type {?}
61
- */
62
- EntityCollection.prototype.loaded;
63
- /**
64
- * true when a query or save operation is in progress
65
- * @type {?}
66
- */
67
- EntityCollection.prototype.loading;
68
- }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRhLyIsInNvdXJjZXMiOlsic3JjL3JlZHVjZXJzL2VudGl0eS1jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUdBLE1BQVksVUFBVTtJQUNwQixtRUFBbUU7SUFDbkUsU0FBUyxHQUFJO0lBQ2IsNkNBQTZDO0lBQzdDLEtBQUssR0FBQTtJQUNMLDZFQUE2RTtJQUM3RSxPQUFPLEdBQUE7SUFDUCwrQ0FBK0M7SUFDL0MsT0FBTyxHQUFBO0VBQ1I7Ozs7Ozs7Ozs7OztBQU1ELGlDQUdDOzs7SUFGQyxpQ0FBdUI7O0lBQ3ZCLG9DQUE4Qjs7Ozs7Ozs7QUFhaEMsc0NBV0M7Ozs7OztJQVRDLHNDQUFtQjs7Ozs7SUFFbkIsdUNBQStCOzs7OztJQUUvQixrQ0FBZ0I7Ozs7O0lBRWhCLGtDQUFnQjs7Ozs7SUFFaEIsbUNBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW50aXR5U3RhdGUsIERpY3Rpb25hcnkgfSBmcm9tICdAbmdyeC9lbnRpdHknO1xuXG4vKiogVHlwZXMgb2YgY2hhbmdlIGluIGEgQ2hhbmdlU3RhdGUgaW5zdGFuY2UgKi9cbmV4cG9ydCBlbnVtIENoYW5nZVR5cGUge1xuICAvKiogVGhlIGVudGl0eSBoYXMgbm90IGNoYW5nZWQgZnJvbSBpdHMgbGFzdCBrbm93biBzZXJ2ZXIgc3RhdGUuICovXG4gIFVuY2hhbmdlZCA9IDAsXG4gIC8qKiBUaGUgZW50aXR5IHdhcyBhZGRlZCB0byB0aGUgY29sbGVjdGlvbiAqL1xuICBBZGRlZCxcbiAgLyoqIFRoZSBlbnRpdHkgaXMgc2NoZWR1bGVkIGZvciBkZWxldGUgYW5kIHdhcyByZW1vdmVkIGZyb20gdGhlIGNvbGxlY3Rpb24gKi9cbiAgRGVsZXRlZCxcbiAgLyoqIFRoZSBlbnRpdHkgaW4gdGhlIGNvbGxlY3Rpb24gd2FzIHVwZGF0ZWQgKi9cbiAgVXBkYXRlZCxcbn1cblxuLyoqXG4gKiBDaGFuZ2Ugc3RhdGUgZm9yIGFuIGVudGl0eSB3aXRoIHVuc2F2ZWQgY2hhbmdlcztcbiAqIGFuIGVudHJ5IGluIGFuIEVudGl0eUNvbGxlY3Rpb24uY2hhbmdlU3RhdGUgbWFwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hhbmdlU3RhdGU8VD4ge1xuICBjaGFuZ2VUeXBlOiBDaGFuZ2VUeXBlO1xuICBvcmlnaW5hbFZhbHVlPzogVCB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBNYXAgb2YgZW50aXR5IHByaW1hcnkga2V5cyB0byBlbnRpdHkgQ2hhbmdlU3RhdGVzLlxuICogRWFjaCBlbnRyeSByZXByZXNlbnRzIGFuIGVudGl0eSB3aXRoIHVuc2F2ZWQgY2hhbmdlcy5cbiAqL1xuZXhwb3J0IHR5cGUgQ2hhbmdlU3RhdGVNYXA8VD4gPSBEaWN0aW9uYXJ5PENoYW5nZVN0YXRlPFQ+PjtcblxuLyoqXG4gKiBEYXRhIGFuZCBpbmZvcm1hdGlvbiBhYm91dCBhIGNvbGxlY3Rpb24gb2YgZW50aXRpZXMgb2YgYSBzaW5nbGUgdHlwZS5cbiAqIEVudGl0eUNvbGxlY3Rpb25zIGFyZSBtYWludGFpbmVkIGluIHRoZSBFbnRpdHlDYWNoZSB3aXRoaW4gdGhlIG5ncnggc3RvcmUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW50aXR5Q29sbGVjdGlvbjxUID0gYW55PiBleHRlbmRzIEVudGl0eVN0YXRlPFQ+IHtcbiAgLyoqIE5hbWUgb2YgdGhlIGVudGl0eSB0eXBlIGZvciB0aGlzIGNvbGxlY3Rpb24gKi9cbiAgZW50aXR5TmFtZTogc3RyaW5nO1xuICAvKiogQSBtYXAgb2YgQ2hhbmdlU3RhdGVzLCBrZXllZCBieSBpZCwgZm9yIGVudGl0aWVzIHdpdGggdW5zYXZlZCBjaGFuZ2VzICovXG4gIGNoYW5nZVN0YXRlOiBDaGFuZ2VTdGF0ZU1hcDxUPjtcbiAgLyoqIFRoZSB1c2VyJ3MgY3VycmVudCBjb2xsZWN0aW9uIGZpbHRlciBwYXR0ZXJuICovXG4gIGZpbHRlcj86IHN0cmluZztcbiAgLyoqIHRydWUgaWYgY29sbGVjdGlvbiB3YXMgZXZlciBmaWxsZWQgYnkgUXVlcnlBbGw7IGZvcmNlZCBmYWxzZSBpZiBjbGVhcmVkICovXG4gIGxvYWRlZDogYm9vbGVhbjtcbiAgLyoqIHRydWUgd2hlbiBhIHF1ZXJ5IG9yIHNhdmUgb3BlcmF0aW9uIGlzIGluIHByb2dyZXNzICovXG4gIGxvYWRpbmc6IGJvb2xlYW47XG59XG4iXX0=
11
+ ChangeType[ChangeType["Updated"] = 3] = "Updated";
12
+ })(ChangeType || (ChangeType = {}));
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGEvc3JjL3JlZHVjZXJzL2VudGl0eS1jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGdEQUFnRDtBQUNoRCxNQUFNLENBQU4sSUFBWSxVQVNYO0FBVEQsV0FBWSxVQUFVO0lBQ3BCLG1FQUFtRTtJQUNuRSxxREFBYSxDQUFBO0lBQ2IsNkNBQTZDO0lBQzdDLDZDQUFLLENBQUE7SUFDTCw2RUFBNkU7SUFDN0UsaURBQU8sQ0FBQTtJQUNQLCtDQUErQztJQUMvQyxpREFBTyxDQUFBO0FBQ1QsQ0FBQyxFQVRXLFVBQVUsS0FBVixVQUFVLFFBU3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW50aXR5U3RhdGUsIERpY3Rpb25hcnkgfSBmcm9tICdAbmdyeC9lbnRpdHknO1xuXG4vKiogVHlwZXMgb2YgY2hhbmdlIGluIGEgQ2hhbmdlU3RhdGUgaW5zdGFuY2UgKi9cbmV4cG9ydCBlbnVtIENoYW5nZVR5cGUge1xuICAvKiogVGhlIGVudGl0eSBoYXMgbm90IGNoYW5nZWQgZnJvbSBpdHMgbGFzdCBrbm93biBzZXJ2ZXIgc3RhdGUuICovXG4gIFVuY2hhbmdlZCA9IDAsXG4gIC8qKiBUaGUgZW50aXR5IHdhcyBhZGRlZCB0byB0aGUgY29sbGVjdGlvbiAqL1xuICBBZGRlZCxcbiAgLyoqIFRoZSBlbnRpdHkgaXMgc2NoZWR1bGVkIGZvciBkZWxldGUgYW5kIHdhcyByZW1vdmVkIGZyb20gdGhlIGNvbGxlY3Rpb24gKi9cbiAgRGVsZXRlZCxcbiAgLyoqIFRoZSBlbnRpdHkgaW4gdGhlIGNvbGxlY3Rpb24gd2FzIHVwZGF0ZWQgKi9cbiAgVXBkYXRlZCxcbn1cblxuLyoqXG4gKiBDaGFuZ2Ugc3RhdGUgZm9yIGFuIGVudGl0eSB3aXRoIHVuc2F2ZWQgY2hhbmdlcztcbiAqIGFuIGVudHJ5IGluIGFuIEVudGl0eUNvbGxlY3Rpb24uY2hhbmdlU3RhdGUgbWFwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hhbmdlU3RhdGU8VD4ge1xuICBjaGFuZ2VUeXBlOiBDaGFuZ2VUeXBlO1xuICBvcmlnaW5hbFZhbHVlPzogVCB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBNYXAgb2YgZW50aXR5IHByaW1hcnkga2V5cyB0byBlbnRpdHkgQ2hhbmdlU3RhdGVzLlxuICogRWFjaCBlbnRyeSByZXByZXNlbnRzIGFuIGVudGl0eSB3aXRoIHVuc2F2ZWQgY2hhbmdlcy5cbiAqL1xuZXhwb3J0IHR5cGUgQ2hhbmdlU3RhdGVNYXA8VD4gPSBEaWN0aW9uYXJ5PENoYW5nZVN0YXRlPFQ+PjtcblxuLyoqXG4gKiBEYXRhIGFuZCBpbmZvcm1hdGlvbiBhYm91dCBhIGNvbGxlY3Rpb24gb2YgZW50aXRpZXMgb2YgYSBzaW5nbGUgdHlwZS5cbiAqIEVudGl0eUNvbGxlY3Rpb25zIGFyZSBtYWludGFpbmVkIGluIHRoZSBFbnRpdHlDYWNoZSB3aXRoaW4gdGhlIG5ncnggc3RvcmUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW50aXR5Q29sbGVjdGlvbjxUID0gYW55PiBleHRlbmRzIEVudGl0eVN0YXRlPFQ+IHtcbiAgLyoqIE5hbWUgb2YgdGhlIGVudGl0eSB0eXBlIGZvciB0aGlzIGNvbGxlY3Rpb24gKi9cbiAgZW50aXR5TmFtZTogc3RyaW5nO1xuICAvKiogQSBtYXAgb2YgQ2hhbmdlU3RhdGVzLCBrZXllZCBieSBpZCwgZm9yIGVudGl0aWVzIHdpdGggdW5zYXZlZCBjaGFuZ2VzICovXG4gIGNoYW5nZVN0YXRlOiBDaGFuZ2VTdGF0ZU1hcDxUPjtcbiAgLyoqIFRoZSB1c2VyJ3MgY3VycmVudCBjb2xsZWN0aW9uIGZpbHRlciBwYXR0ZXJuICovXG4gIGZpbHRlcj86IHN0cmluZztcbiAgLyoqIHRydWUgaWYgY29sbGVjdGlvbiB3YXMgZXZlciBmaWxsZWQgYnkgUXVlcnlBbGw7IGZvcmNlZCBmYWxzZSBpZiBjbGVhcmVkICovXG4gIGxvYWRlZDogYm9vbGVhbjtcbiAgLyoqIHRydWUgd2hlbiBhIHF1ZXJ5IG9yIHNhdmUgb3BlcmF0aW9uIGlzIGluIHByb2dyZXNzICovXG4gIGxvYWRpbmc6IGJvb2xlYW47XG59XG4iXX0=
@@ -1,25 +1,14 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: src/selectors/entity-cache-selector.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
1
  import { InjectionToken, Optional } from '@angular/core';
7
2
  import { createFeatureSelector } from '@ngrx/store';
8
3
  import { ENTITY_CACHE_NAME, ENTITY_CACHE_NAME_TOKEN, } from '../reducers/constants';
9
- /** @type {?} */
10
4
  export const ENTITY_CACHE_SELECTOR_TOKEN = new InjectionToken('@ngrx/data Entity Cache Selector');
11
- /** @type {?} */
12
5
  export const entityCacheSelectorProvider = {
13
6
  provide: ENTITY_CACHE_SELECTOR_TOKEN,
14
7
  useFactory: createEntityCacheSelector,
15
8
  deps: [[new Optional(), ENTITY_CACHE_NAME_TOKEN]],
16
9
  };
17
- /**
18
- * @param {?=} entityCacheName
19
- * @return {?}
20
- */
21
10
  export function createEntityCacheSelector(entityCacheName) {
22
11
  entityCacheName = entityCacheName || ENTITY_CACHE_NAME;
23
12
  return createFeatureSelector(entityCacheName);
24
13
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNhY2hlLXNlbGVjdG9yLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uL21vZHVsZXMvZGF0YS8iLCJzb3VyY2VzIjpbInNyYy9zZWxlY3RvcnMvZW50aXR5LWNhY2hlLXNlbGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBb0IsTUFBTSxhQUFhLENBQUM7QUFFdEUsT0FBTyxFQUNMLGlCQUFpQixFQUNqQix1QkFBdUIsR0FDeEIsTUFBTSx1QkFBdUIsQ0FBQzs7QUFFL0IsTUFBTSxPQUFPLDJCQUEyQixHQUFHLElBQUksY0FBYyxDQUUzRCxrQ0FBa0MsQ0FBQzs7QUFFckMsTUFBTSxPQUFPLDJCQUEyQixHQUFvQjtJQUMxRCxPQUFPLEVBQUUsMkJBQTJCO0lBQ3BDLFVBQVUsRUFBRSx5QkFBeUI7SUFDckMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLHVCQUF1QixDQUFDLENBQUM7Q0FDbEQ7Ozs7O0FBSUQsTUFBTSxVQUFVLHlCQUF5QixDQUN2QyxlQUF3QjtJQUV4QixlQUFlLEdBQUcsZUFBZSxJQUFJLGlCQUFpQixDQUFDO0lBQ3ZELE9BQU8scUJBQXFCLENBQWMsZUFBZSxDQUFDLENBQUM7QUFDN0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBPcHRpb25hbCwgRmFjdG9yeVByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjcmVhdGVGZWF0dXJlU2VsZWN0b3IsIE1lbW9pemVkU2VsZWN0b3IgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBFbnRpdHlDYWNoZSB9IGZyb20gJy4uL3JlZHVjZXJzL2VudGl0eS1jYWNoZSc7XG5pbXBvcnQge1xuICBFTlRJVFlfQ0FDSEVfTkFNRSxcbiAgRU5USVRZX0NBQ0hFX05BTUVfVE9LRU4sXG59IGZyb20gJy4uL3JlZHVjZXJzL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjb25zdCBFTlRJVFlfQ0FDSEVfU0VMRUNUT1JfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48XG4gIE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBFbnRpdHlDYWNoZT5cbj4oJ0BuZ3J4L2RhdGEgRW50aXR5IENhY2hlIFNlbGVjdG9yJyk7XG5cbmV4cG9ydCBjb25zdCBlbnRpdHlDYWNoZVNlbGVjdG9yUHJvdmlkZXI6IEZhY3RvcnlQcm92aWRlciA9IHtcbiAgcHJvdmlkZTogRU5USVRZX0NBQ0hFX1NFTEVDVE9SX1RPS0VOLFxuICB1c2VGYWN0b3J5OiBjcmVhdGVFbnRpdHlDYWNoZVNlbGVjdG9yLFxuICBkZXBzOiBbW25ldyBPcHRpb25hbCgpLCBFTlRJVFlfQ0FDSEVfTkFNRV9UT0tFTl1dLFxufTtcblxuZXhwb3J0IHR5cGUgRW50aXR5Q2FjaGVTZWxlY3RvciA9IE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBFbnRpdHlDYWNoZT47XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVFbnRpdHlDYWNoZVNlbGVjdG9yKFxuICBlbnRpdHlDYWNoZU5hbWU/OiBzdHJpbmdcbik6IE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBFbnRpdHlDYWNoZT4ge1xuICBlbnRpdHlDYWNoZU5hbWUgPSBlbnRpdHlDYWNoZU5hbWUgfHwgRU5USVRZX0NBQ0hFX05BTUU7XG4gIHJldHVybiBjcmVhdGVGZWF0dXJlU2VsZWN0b3I8RW50aXR5Q2FjaGU+KGVudGl0eUNhY2hlTmFtZSk7XG59XG4iXX0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNhY2hlLXNlbGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRhL3NyYy9zZWxlY3RvcnMvZW50aXR5LWNhY2hlLXNlbGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFtQixNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUscUJBQXFCLEVBQW9CLE1BQU0sYUFBYSxDQUFDO0FBRXRFLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsdUJBQXVCLEdBQ3hCLE1BQU0sdUJBQXVCLENBQUM7QUFFL0IsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsSUFBSSxjQUFjLENBRTNELGtDQUFrQyxDQUFDLENBQUM7QUFFdEMsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQW9CO0lBQzFELE9BQU8sRUFBRSwyQkFBMkI7SUFDcEMsVUFBVSxFQUFFLHlCQUF5QjtJQUNyQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztDQUNsRCxDQUFDO0FBSUYsTUFBTSxVQUFVLHlCQUF5QixDQUN2QyxlQUF3QjtJQUV4QixlQUFlLEdBQUcsZUFBZSxJQUFJLGlCQUFpQixDQUFDO0lBQ3ZELE9BQU8scUJBQXFCLENBQWMsZUFBZSxDQUFDLENBQUM7QUFDN0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBPcHRpb25hbCwgRmFjdG9yeVByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjcmVhdGVGZWF0dXJlU2VsZWN0b3IsIE1lbW9pemVkU2VsZWN0b3IgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBFbnRpdHlDYWNoZSB9IGZyb20gJy4uL3JlZHVjZXJzL2VudGl0eS1jYWNoZSc7XG5pbXBvcnQge1xuICBFTlRJVFlfQ0FDSEVfTkFNRSxcbiAgRU5USVRZX0NBQ0hFX05BTUVfVE9LRU4sXG59IGZyb20gJy4uL3JlZHVjZXJzL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjb25zdCBFTlRJVFlfQ0FDSEVfU0VMRUNUT1JfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48XG4gIE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBFbnRpdHlDYWNoZT5cbj4oJ0BuZ3J4L2RhdGEgRW50aXR5IENhY2hlIFNlbGVjdG9yJyk7XG5cbmV4cG9ydCBjb25zdCBlbnRpdHlDYWNoZVNlbGVjdG9yUHJvdmlkZXI6IEZhY3RvcnlQcm92aWRlciA9IHtcbiAgcHJvdmlkZTogRU5USVRZX0NBQ0hFX1NFTEVDVE9SX1RPS0VOLFxuICB1c2VGYWN0b3J5OiBjcmVhdGVFbnRpdHlDYWNoZVNlbGVjdG9yLFxuICBkZXBzOiBbW25ldyBPcHRpb25hbCgpLCBFTlRJVFlfQ0FDSEVfTkFNRV9UT0tFTl1dLFxufTtcblxuZXhwb3J0IHR5cGUgRW50aXR5Q2FjaGVTZWxlY3RvciA9IE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBFbnRpdHlDYWNoZT47XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVFbnRpdHlDYWNoZVNlbGVjdG9yKFxuICBlbnRpdHlDYWNoZU5hbWU/OiBzdHJpbmdcbik6IE1lbW9pemVkU2VsZWN0b3I8T2JqZWN0LCBFbnRpdHlDYWNoZT4ge1xuICBlbnRpdHlDYWNoZU5hbWUgPSBlbnRpdHlDYWNoZU5hbWUgfHwgRU5USVRZX0NBQ0hFX05BTUU7XG4gIHJldHVybiBjcmVhdGVGZWF0dXJlU2VsZWN0b3I8RW50aXR5Q2FjaGU+KGVudGl0eUNhY2hlTmFtZSk7XG59XG4iXX0=
@@ -1,8 +1,3 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: src/selectors/entity-selectors$.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
1
  import { Inject, Injectable } from '@angular/core';
7
2
  import { Store } from '@ngrx/store';
8
3
  import { Actions } from '@ngrx/effects';
@@ -10,133 +5,39 @@ import { filter, shareReplay } from 'rxjs/operators';
10
5
  import { OP_ERROR } from '../actions/entity-op';
11
6
  import { ofEntityType } from '../actions/entity-action-operators';
12
7
  import { ENTITY_CACHE_SELECTOR_TOKEN, } from './entity-cache-selector';
13
- /**
14
- * The selector observable functions for entity collection members.
15
- * @record
16
- * @template T
17
- */
18
- export function EntitySelectors$() { }
19
- if (false) {
20
- /**
21
- * Name of the entity collection for these selectors$
22
- * @type {?}
23
- */
24
- EntitySelectors$.prototype.entityName;
25
- /**
26
- * Observable of the collection as a whole
27
- * @type {?}
28
- */
29
- EntitySelectors$.prototype.collection$;
30
- /**
31
- * Observable of count of entities in the cached collection.
32
- * @type {?}
33
- */
34
- EntitySelectors$.prototype.count$;
35
- /**
36
- * Observable of all entities in the cached collection.
37
- * @type {?}
38
- */
39
- EntitySelectors$.prototype.entities$;
40
- /**
41
- * Observable of actions related to this entity type.
42
- * @type {?}
43
- */
44
- EntitySelectors$.prototype.entityActions$;
45
- /**
46
- * Observable of the map of entity keys to entities
47
- * @type {?}
48
- */
49
- EntitySelectors$.prototype.entityMap$;
50
- /**
51
- * Observable of error actions related to this entity type.
52
- * @type {?}
53
- */
54
- EntitySelectors$.prototype.errors$;
55
- /**
56
- * Observable of the filter pattern applied by the entity collection's filter function
57
- * @type {?}
58
- */
59
- EntitySelectors$.prototype.filter$;
60
- /**
61
- * Observable of entities in the cached collection that pass the filter function
62
- * @type {?}
63
- */
64
- EntitySelectors$.prototype.filteredEntities$;
65
- /**
66
- * Observable of the keys of the cached collection, in the collection's native sort order
67
- * @type {?}
68
- */
69
- EntitySelectors$.prototype.keys$;
70
- /**
71
- * Observable true when the collection has been loaded
72
- * @type {?}
73
- */
74
- EntitySelectors$.prototype.loaded$;
75
- /**
76
- * Observable true when a multi-entity query command is in progress.
77
- * @type {?}
78
- */
79
- EntitySelectors$.prototype.loading$;
80
- /**
81
- * ChangeState (including original values) of entities with unsaved changes
82
- * @type {?}
83
- */
84
- EntitySelectors$.prototype.changeState$;
85
- /* Skipping unhandled member: readonly [name: string]: Observable<any> | Store<any> | any;*/
86
- }
87
- /**
88
- * Creates observable EntitySelectors$ for entity collections.
89
- */
8
+ /** Creates observable EntitySelectors$ for entity collections. */
90
9
  export class EntitySelectors$Factory {
91
- /**
92
- * @param {?} store
93
- * @param {?} actions
94
- * @param {?} selectEntityCache
95
- */
96
10
  constructor(store, actions, selectEntityCache) {
97
11
  this.store = store;
98
12
  this.actions = actions;
99
13
  this.selectEntityCache = selectEntityCache;
100
14
  // This service applies to the cache in ngrx/store named `cacheName`
101
15
  this.entityCache$ = this.store.select(this.selectEntityCache);
102
- this.entityActionErrors$ = actions.pipe(filter((/**
103
- * @param {?} ea
104
- * @return {?}
105
- */
106
- (ea) => ea.payload &&
16
+ this.entityActionErrors$ = actions.pipe(filter((ea) => ea.payload &&
107
17
  ea.payload.entityOp &&
108
- ea.payload.entityOp.endsWith(OP_ERROR))), shareReplay(1));
18
+ ea.payload.entityOp.endsWith(OP_ERROR)), shareReplay(1));
109
19
  }
110
20
  /**
111
21
  * Creates an entity collection's selectors$ observables for this factory's store.
112
22
  * `selectors$` are observable selectors of the cached entity collection.
113
- * @template T, S$
114
- * @param {?} entityName - is also the name of the collection.
115
- * @param {?} selectors - selector functions for this collection.
116
- *
117
- * @return {?}
118
- */
23
+ * @param entityName - is also the name of the collection.
24
+ * @param selectors - selector functions for this collection.
25
+ **/
119
26
  create(entityName, selectors) {
120
- /** @type {?} */
121
27
  const selectors$ = {
122
28
  entityName,
123
29
  };
124
- Object.keys(selectors).forEach((/**
125
- * @param {?} name
126
- * @return {?}
127
- */
128
- (name) => {
30
+ Object.keys(selectors).forEach((name) => {
129
31
  if (name.startsWith('select')) {
130
32
  // strip 'select' prefix from the selector fn name and append `$`
131
33
  // Ex: 'selectEntities' => 'entities$'
132
- /** @type {?} */
133
34
  const name$ = name[6].toLowerCase() + name.substr(7) + '$';
134
- selectors$[name$] = this.store.select(((/** @type {?} */ (selectors)))[name]);
35
+ selectors$[name$] = this.store.select(selectors[name]);
135
36
  }
136
- }));
37
+ });
137
38
  selectors$.entityActions$ = this.actions.pipe(ofEntityType(entityName));
138
39
  selectors$.errors$ = this.entityActionErrors$.pipe(ofEntityType(entityName));
139
- return (/** @type {?} */ (selectors$));
40
+ return selectors$;
140
41
  }
141
42
  }
142
43
  EntitySelectors$Factory.decorators = [
@@ -148,31 +49,4 @@ EntitySelectors$Factory.ctorParameters = () => [
148
49
  { type: Actions },
149
50
  { type: undefined, decorators: [{ type: Inject, args: [ENTITY_CACHE_SELECTOR_TOKEN,] }] }
150
51
  ];
151
- if (false) {
152
- /**
153
- * Observable of the EntityCache
154
- * @type {?}
155
- */
156
- EntitySelectors$Factory.prototype.entityCache$;
157
- /**
158
- * Observable of error EntityActions (e.g. QUERY_ALL_ERROR) for all entity types
159
- * @type {?}
160
- */
161
- EntitySelectors$Factory.prototype.entityActionErrors$;
162
- /**
163
- * @type {?}
164
- * @private
165
- */
166
- EntitySelectors$Factory.prototype.store;
167
- /**
168
- * @type {?}
169
- * @private
170
- */
171
- EntitySelectors$Factory.prototype.actions;
172
- /**
173
- * @type {?}
174
- * @private
175
- */
176
- EntitySelectors$Factory.prototype.selectEntityCache;
177
- }
178
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNlbGVjdG9ycyQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRhLyIsInNvdXJjZXMiOlsic3JjL3NlbGVjdG9ycy9lbnRpdHktc2VsZWN0b3JzJC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUl4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3JELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbEUsT0FBTyxFQUNMLDJCQUEyQixHQUU1QixNQUFNLHlCQUF5QixDQUFDOzs7Ozs7QUFXakMsc0NBNENDOzs7Ozs7SUExQ0Msc0NBQTRCOzs7OztJQU01Qix1Q0FBNkU7Ozs7O0lBRzdFLGtDQUFvRDs7Ozs7SUFHcEQscUNBQWlEOzs7OztJQUdqRCwwQ0FBa0Q7Ozs7O0lBR2xELHNDQUFzRTs7Ozs7SUFHdEUsbUNBQTJDOzs7OztJQUczQyxtQ0FBcUQ7Ozs7O0lBR3JELDZDQUF5RDs7Ozs7SUFHekQsaUNBQTZFOzs7OztJQUc3RSxtQ0FBdUQ7Ozs7O0lBR3ZELG9DQUF3RDs7Ozs7SUFHeEQsd0NBRTZCOzs7Ozs7QUFLL0IsTUFBTSxPQUFPLHVCQUF1Qjs7Ozs7O0lBT2xDLFlBQ1UsS0FBaUIsRUFDakIsT0FBOEIsRUFFOUIsaUJBQXNDO1FBSHRDLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFFOUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtRQUU5QyxvRUFBb0U7UUFDcEUsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FDckMsTUFBTTs7OztRQUNKLENBQUMsRUFBZ0IsRUFBRSxFQUFFLENBQ25CLEVBQUUsQ0FBQyxPQUFPO1lBQ1YsRUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRO1lBQ25CLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFDekMsRUFDRCxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUNKLENBQUM7Ozs7Ozs7Ozs7SUFRRCxNQUFNLENBQ0osVUFBa0IsRUFDbEIsU0FBNkI7O2NBRXZCLFVBQVUsR0FBNEI7WUFDMUMsVUFBVTtTQUNYO1FBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPOzs7O1FBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN0QyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7Ozs7c0JBR3ZCLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHO2dCQUMxRCxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxtQkFBSyxTQUFTLEVBQUEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDL0Q7UUFDSCxDQUFDLEVBQUMsQ0FBQztRQUNILFVBQVUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDeEUsVUFBVSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUNoRCxZQUFZLENBQUMsVUFBVSxDQUFDLENBQ3pCLENBQUM7UUFDRixPQUFPLG1CQUFBLFVBQVUsRUFBTSxDQUFDO0lBQzFCLENBQUM7OztZQXRERixVQUFVOzs7O1lBdkVGLEtBQUs7WUFDTCxPQUFPOzRDQWlGWCxNQUFNLFNBQUMsMkJBQTJCOzs7Ozs7O0lBUnJDLCtDQUFzQzs7Ozs7SUFHdEMsc0RBQThDOzs7OztJQUc1Qyx3Q0FBeUI7Ozs7O0lBQ3pCLDBDQUFzQzs7Ozs7SUFDdEMsb0RBQzhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEFjdGlvbnMgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tICdAbmdyeC9lbnRpdHknO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIHNoYXJlUmVwbGF5IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBFbnRpdHlBY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zL2VudGl0eS1hY3Rpb24nO1xuaW1wb3J0IHsgT1BfRVJST1IgfSBmcm9tICcuLi9hY3Rpb25zL2VudGl0eS1vcCc7XG5pbXBvcnQgeyBvZkVudGl0eVR5cGUgfSBmcm9tICcuLi9hY3Rpb25zL2VudGl0eS1hY3Rpb24tb3BlcmF0b3JzJztcbmltcG9ydCB7XG4gIEVOVElUWV9DQUNIRV9TRUxFQ1RPUl9UT0tFTixcbiAgRW50aXR5Q2FjaGVTZWxlY3Rvcixcbn0gZnJvbSAnLi9lbnRpdHktY2FjaGUtc2VsZWN0b3InO1xuaW1wb3J0IHsgRW50aXR5U2VsZWN0b3JzIH0gZnJvbSAnLi9lbnRpdHktc2VsZWN0b3JzJztcbmltcG9ydCB7IEVudGl0eUNhY2hlIH0gZnJvbSAnLi4vcmVkdWNlcnMvZW50aXR5LWNhY2hlJztcbmltcG9ydCB7XG4gIEVudGl0eUNvbGxlY3Rpb24sXG4gIENoYW5nZVN0YXRlTWFwLFxufSBmcm9tICcuLi9yZWR1Y2Vycy9lbnRpdHktY29sbGVjdGlvbic7XG5cbi8qKlxuICogVGhlIHNlbGVjdG9yIG9ic2VydmFibGUgZnVuY3Rpb25zIGZvciBlbnRpdHkgY29sbGVjdGlvbiBtZW1iZXJzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVudGl0eVNlbGVjdG9ycyQ8VD4ge1xuICAvKiogTmFtZSBvZiB0aGUgZW50aXR5IGNvbGxlY3Rpb24gZm9yIHRoZXNlIHNlbGVjdG9ycyQgKi9cbiAgcmVhZG9ubHkgZW50aXR5TmFtZTogc3RyaW5nO1xuXG4gIC8qKiBOYW1lcyBmcm9tIGN1c3RvbSBzZWxlY3RvcnMgZnJvbSBhZGRpdGlvbmFsQ29sbGVjdGlvblN0YXRlIGZpdHMgaGVyZSwgJ2FueScgdG8gYXZvaWQgY29uZmxpY3Qgd2l0aCBlbnRpdHlOYW1lICovXG4gIHJlYWRvbmx5IFtuYW1lOiBzdHJpbmddOiBPYnNlcnZhYmxlPGFueT4gfCBTdG9yZTxhbnk+IHwgYW55O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIHRoZSBjb2xsZWN0aW9uIGFzIGEgd2hvbGUgKi9cbiAgcmVhZG9ubHkgY29sbGVjdGlvbiQ6IE9ic2VydmFibGU8RW50aXR5Q29sbGVjdGlvbj4gfCBTdG9yZTxFbnRpdHlDb2xsZWN0aW9uPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiBjb3VudCBvZiBlbnRpdGllcyBpbiB0aGUgY2FjaGVkIGNvbGxlY3Rpb24uICovXG4gIHJlYWRvbmx5IGNvdW50JDogT2JzZXJ2YWJsZTxudW1iZXI+IHwgU3RvcmU8bnVtYmVyPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiBhbGwgZW50aXRpZXMgaW4gdGhlIGNhY2hlZCBjb2xsZWN0aW9uLiAqL1xuICByZWFkb25seSBlbnRpdGllcyQ6IE9ic2VydmFibGU8VFtdPiB8IFN0b3JlPFRbXT47XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgYWN0aW9ucyByZWxhdGVkIHRvIHRoaXMgZW50aXR5IHR5cGUuICovXG4gIHJlYWRvbmx5IGVudGl0eUFjdGlvbnMkOiBPYnNlcnZhYmxlPEVudGl0eUFjdGlvbj47XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgdGhlIG1hcCBvZiBlbnRpdHkga2V5cyB0byBlbnRpdGllcyAqL1xuICByZWFkb25seSBlbnRpdHlNYXAkOiBPYnNlcnZhYmxlPERpY3Rpb25hcnk8VD4+IHwgU3RvcmU8RGljdGlvbmFyeTxUPj47XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgZXJyb3IgYWN0aW9ucyByZWxhdGVkIHRvIHRoaXMgZW50aXR5IHR5cGUuICovXG4gIHJlYWRvbmx5IGVycm9ycyQ6IE9ic2VydmFibGU8RW50aXR5QWN0aW9uPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiB0aGUgZmlsdGVyIHBhdHRlcm4gYXBwbGllZCBieSB0aGUgZW50aXR5IGNvbGxlY3Rpb24ncyBmaWx0ZXIgZnVuY3Rpb24gKi9cbiAgcmVhZG9ubHkgZmlsdGVyJDogT2JzZXJ2YWJsZTxzdHJpbmc+IHwgU3RvcmU8c3RyaW5nPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiBlbnRpdGllcyBpbiB0aGUgY2FjaGVkIGNvbGxlY3Rpb24gdGhhdCBwYXNzIHRoZSBmaWx0ZXIgZnVuY3Rpb24gKi9cbiAgcmVhZG9ubHkgZmlsdGVyZWRFbnRpdGllcyQ6IE9ic2VydmFibGU8VFtdPiB8IFN0b3JlPFRbXT47XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgdGhlIGtleXMgb2YgdGhlIGNhY2hlZCBjb2xsZWN0aW9uLCBpbiB0aGUgY29sbGVjdGlvbidzIG5hdGl2ZSBzb3J0IG9yZGVyICovXG4gIHJlYWRvbmx5IGtleXMkOiBPYnNlcnZhYmxlPHN0cmluZ1tdIHwgbnVtYmVyW10+IHwgU3RvcmU8c3RyaW5nW10gfCBudW1iZXJbXT47XG5cbiAgLyoqIE9ic2VydmFibGUgdHJ1ZSB3aGVuIHRoZSBjb2xsZWN0aW9uIGhhcyBiZWVuIGxvYWRlZCAqL1xuICByZWFkb25seSBsb2FkZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHwgU3RvcmU8Ym9vbGVhbj47XG5cbiAgLyoqIE9ic2VydmFibGUgdHJ1ZSB3aGVuIGEgbXVsdGktZW50aXR5IHF1ZXJ5IGNvbW1hbmQgaXMgaW4gcHJvZ3Jlc3MuICovXG4gIHJlYWRvbmx5IGxvYWRpbmckOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHwgU3RvcmU8Ym9vbGVhbj47XG5cbiAgLyoqIENoYW5nZVN0YXRlIChpbmNsdWRpbmcgb3JpZ2luYWwgdmFsdWVzKSBvZiBlbnRpdGllcyB3aXRoIHVuc2F2ZWQgY2hhbmdlcyAqL1xuICByZWFkb25seSBjaGFuZ2VTdGF0ZSQ6XG4gICAgfCBPYnNlcnZhYmxlPENoYW5nZVN0YXRlTWFwPFQ+PlxuICAgIHwgU3RvcmU8Q2hhbmdlU3RhdGVNYXA8VD4+O1xufVxuXG4vKiogQ3JlYXRlcyBvYnNlcnZhYmxlIEVudGl0eVNlbGVjdG9ycyQgZm9yIGVudGl0eSBjb2xsZWN0aW9ucy4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFbnRpdHlTZWxlY3RvcnMkRmFjdG9yeSB7XG4gIC8qKiBPYnNlcnZhYmxlIG9mIHRoZSBFbnRpdHlDYWNoZSAqL1xuICBlbnRpdHlDYWNoZSQ6IE9ic2VydmFibGU8RW50aXR5Q2FjaGU+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIGVycm9yIEVudGl0eUFjdGlvbnMgKGUuZy4gUVVFUllfQUxMX0VSUk9SKSBmb3IgYWxsIGVudGl0eSB0eXBlcyAqL1xuICBlbnRpdHlBY3Rpb25FcnJvcnMkOiBPYnNlcnZhYmxlPEVudGl0eUFjdGlvbj47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIGFjdGlvbnM6IEFjdGlvbnM8RW50aXR5QWN0aW9uPixcbiAgICBASW5qZWN0KEVOVElUWV9DQUNIRV9TRUxFQ1RPUl9UT0tFTilcbiAgICBwcml2YXRlIHNlbGVjdEVudGl0eUNhY2hlOiBFbnRpdHlDYWNoZVNlbGVjdG9yXG4gICkge1xuICAgIC8vIFRoaXMgc2VydmljZSBhcHBsaWVzIHRvIHRoZSBjYWNoZSBpbiBuZ3J4L3N0b3JlIG5hbWVkIGBjYWNoZU5hbWVgXG4gICAgdGhpcy5lbnRpdHlDYWNoZSQgPSB0aGlzLnN0b3JlLnNlbGVjdCh0aGlzLnNlbGVjdEVudGl0eUNhY2hlKTtcbiAgICB0aGlzLmVudGl0eUFjdGlvbkVycm9ycyQgPSBhY3Rpb25zLnBpcGUoXG4gICAgICBmaWx0ZXIoXG4gICAgICAgIChlYTogRW50aXR5QWN0aW9uKSA9PlxuICAgICAgICAgIGVhLnBheWxvYWQgJiZcbiAgICAgICAgICBlYS5wYXlsb2FkLmVudGl0eU9wICYmXG4gICAgICAgICAgZWEucGF5bG9hZC5lbnRpdHlPcC5lbmRzV2l0aChPUF9FUlJPUilcbiAgICAgICksXG4gICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhbiBlbnRpdHkgY29sbGVjdGlvbidzIHNlbGVjdG9ycyQgb2JzZXJ2YWJsZXMgZm9yIHRoaXMgZmFjdG9yeSdzIHN0b3JlLlxuICAgKiBgc2VsZWN0b3JzJGAgYXJlIG9ic2VydmFibGUgc2VsZWN0b3JzIG9mIHRoZSBjYWNoZWQgZW50aXR5IGNvbGxlY3Rpb24uXG4gICAqIEBwYXJhbSBlbnRpdHlOYW1lIC0gaXMgYWxzbyB0aGUgbmFtZSBvZiB0aGUgY29sbGVjdGlvbi5cbiAgICogQHBhcmFtIHNlbGVjdG9ycyAtIHNlbGVjdG9yIGZ1bmN0aW9ucyBmb3IgdGhpcyBjb2xsZWN0aW9uLlxuICAgKiovXG4gIGNyZWF0ZTxULCBTJCBleHRlbmRzIEVudGl0eVNlbGVjdG9ycyQ8VD4gPSBFbnRpdHlTZWxlY3RvcnMkPFQ+PihcbiAgICBlbnRpdHlOYW1lOiBzdHJpbmcsXG4gICAgc2VsZWN0b3JzOiBFbnRpdHlTZWxlY3RvcnM8VD5cbiAgKTogUyQge1xuICAgIGNvbnN0IHNlbGVjdG9ycyQ6IHsgW3Byb3A6IHN0cmluZ106IGFueSB9ID0ge1xuICAgICAgZW50aXR5TmFtZSxcbiAgICB9O1xuXG4gICAgT2JqZWN0LmtleXMoc2VsZWN0b3JzKS5mb3JFYWNoKChuYW1lKSA9PiB7XG4gICAgICBpZiAobmFtZS5zdGFydHNXaXRoKCdzZWxlY3QnKSkge1xuICAgICAgICAvLyBzdHJpcCAnc2VsZWN0JyBwcmVmaXggZnJvbSB0aGUgc2VsZWN0b3IgZm4gbmFtZSBhbmQgYXBwZW5kIGAkYFxuICAgICAgICAvLyBFeDogJ3NlbGVjdEVudGl0aWVzJyA9PiAnZW50aXRpZXMkJ1xuICAgICAgICBjb25zdCBuYW1lJCA9IG5hbWVbNl0udG9Mb3dlckNhc2UoKSArIG5hbWUuc3Vic3RyKDcpICsgJyQnO1xuICAgICAgICBzZWxlY3RvcnMkW25hbWUkXSA9IHRoaXMuc3RvcmUuc2VsZWN0KCg8YW55PnNlbGVjdG9ycylbbmFtZV0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHNlbGVjdG9ycyQuZW50aXR5QWN0aW9ucyQgPSB0aGlzLmFjdGlvbnMucGlwZShvZkVudGl0eVR5cGUoZW50aXR5TmFtZSkpO1xuICAgIHNlbGVjdG9ycyQuZXJyb3JzJCA9IHRoaXMuZW50aXR5QWN0aW9uRXJyb3JzJC5waXBlKFxuICAgICAgb2ZFbnRpdHlUeXBlKGVudGl0eU5hbWUpXG4gICAgKTtcbiAgICByZXR1cm4gc2VsZWN0b3JzJCBhcyBTJDtcbiAgfVxufVxuIl19
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNlbGVjdG9ycyQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGEvc3JjL3NlbGVjdG9ycy9lbnRpdHktc2VsZWN0b3JzJC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJeEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2xFLE9BQU8sRUFDTCwyQkFBMkIsR0FFNUIsTUFBTSx5QkFBeUIsQ0FBQztBQXlEakMsa0VBQWtFO0FBRWxFLE1BQU0sT0FBTyx1QkFBdUI7SUFPbEMsWUFDVSxLQUFpQixFQUNqQixPQUE4QixFQUU5QixpQkFBc0M7UUFIdEMsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixZQUFPLEdBQVAsT0FBTyxDQUF1QjtRQUU5QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQXFCO1FBRTlDLG9FQUFvRTtRQUNwRSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUNyQyxNQUFNLENBQ0osQ0FBQyxFQUFnQixFQUFFLEVBQUUsQ0FDbkIsRUFBRSxDQUFDLE9BQU87WUFDVixFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVE7WUFDbkIsRUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUN6QyxFQUNELFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztRQUtJO0lBQ0osTUFBTSxDQUNKLFVBQWtCLEVBQ2xCLFNBQTZCO1FBRTdCLE1BQU0sVUFBVSxHQUE0QjtZQUMxQyxVQUFVO1NBQ1gsQ0FBQztRQUVGLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDdEMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUM3QixpRUFBaUU7Z0JBQ2pFLHNDQUFzQztnQkFDdEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO2dCQUMzRCxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQU8sU0FBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDL0Q7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILFVBQVUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDeEUsVUFBVSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUNoRCxZQUFZLENBQUMsVUFBVSxDQUFDLENBQ3pCLENBQUM7UUFDRixPQUFPLFVBQWdCLENBQUM7SUFDMUIsQ0FBQzs7O1lBdERGLFVBQVU7Ozs7WUF2RUYsS0FBSztZQUNMLE9BQU87NENBaUZYLE1BQU0sU0FBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQWN0aW9ucyB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gJ0BuZ3J4L2VudGl0eSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEVudGl0eUFjdGlvbiB9IGZyb20gJy4uL2FjdGlvbnMvZW50aXR5LWFjdGlvbic7XG5pbXBvcnQgeyBPUF9FUlJPUiB9IGZyb20gJy4uL2FjdGlvbnMvZW50aXR5LW9wJztcbmltcG9ydCB7IG9mRW50aXR5VHlwZSB9IGZyb20gJy4uL2FjdGlvbnMvZW50aXR5LWFjdGlvbi1vcGVyYXRvcnMnO1xuaW1wb3J0IHtcbiAgRU5USVRZX0NBQ0hFX1NFTEVDVE9SX1RPS0VOLFxuICBFbnRpdHlDYWNoZVNlbGVjdG9yLFxufSBmcm9tICcuL2VudGl0eS1jYWNoZS1zZWxlY3Rvcic7XG5pbXBvcnQgeyBFbnRpdHlTZWxlY3RvcnMgfSBmcm9tICcuL2VudGl0eS1zZWxlY3RvcnMnO1xuaW1wb3J0IHsgRW50aXR5Q2FjaGUgfSBmcm9tICcuLi9yZWR1Y2Vycy9lbnRpdHktY2FjaGUnO1xuaW1wb3J0IHtcbiAgRW50aXR5Q29sbGVjdGlvbixcbiAgQ2hhbmdlU3RhdGVNYXAsXG59IGZyb20gJy4uL3JlZHVjZXJzL2VudGl0eS1jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBUaGUgc2VsZWN0b3Igb2JzZXJ2YWJsZSBmdW5jdGlvbnMgZm9yIGVudGl0eSBjb2xsZWN0aW9uIG1lbWJlcnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW50aXR5U2VsZWN0b3JzJDxUPiB7XG4gIC8qKiBOYW1lIG9mIHRoZSBlbnRpdHkgY29sbGVjdGlvbiBmb3IgdGhlc2Ugc2VsZWN0b3JzJCAqL1xuICByZWFkb25seSBlbnRpdHlOYW1lOiBzdHJpbmc7XG5cbiAgLyoqIE5hbWVzIGZyb20gY3VzdG9tIHNlbGVjdG9ycyBmcm9tIGFkZGl0aW9uYWxDb2xsZWN0aW9uU3RhdGUgZml0cyBoZXJlLCAnYW55JyB0byBhdm9pZCBjb25mbGljdCB3aXRoIGVudGl0eU5hbWUgKi9cbiAgcmVhZG9ubHkgW25hbWU6IHN0cmluZ106IE9ic2VydmFibGU8YW55PiB8IFN0b3JlPGFueT4gfCBhbnk7XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgdGhlIGNvbGxlY3Rpb24gYXMgYSB3aG9sZSAqL1xuICByZWFkb25seSBjb2xsZWN0aW9uJDogT2JzZXJ2YWJsZTxFbnRpdHlDb2xsZWN0aW9uPiB8IFN0b3JlPEVudGl0eUNvbGxlY3Rpb24+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIGNvdW50IG9mIGVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbi4gKi9cbiAgcmVhZG9ubHkgY291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj4gfCBTdG9yZTxudW1iZXI+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIGFsbCBlbnRpdGllcyBpbiB0aGUgY2FjaGVkIGNvbGxlY3Rpb24uICovXG4gIHJlYWRvbmx5IGVudGl0aWVzJDogT2JzZXJ2YWJsZTxUW10+IHwgU3RvcmU8VFtdPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiBhY3Rpb25zIHJlbGF0ZWQgdG8gdGhpcyBlbnRpdHkgdHlwZS4gKi9cbiAgcmVhZG9ubHkgZW50aXR5QWN0aW9ucyQ6IE9ic2VydmFibGU8RW50aXR5QWN0aW9uPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiB0aGUgbWFwIG9mIGVudGl0eSBrZXlzIHRvIGVudGl0aWVzICovXG4gIHJlYWRvbmx5IGVudGl0eU1hcCQ6IE9ic2VydmFibGU8RGljdGlvbmFyeTxUPj4gfCBTdG9yZTxEaWN0aW9uYXJ5PFQ+PjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiBlcnJvciBhY3Rpb25zIHJlbGF0ZWQgdG8gdGhpcyBlbnRpdHkgdHlwZS4gKi9cbiAgcmVhZG9ubHkgZXJyb3JzJDogT2JzZXJ2YWJsZTxFbnRpdHlBY3Rpb24+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIHRoZSBmaWx0ZXIgcGF0dGVybiBhcHBsaWVkIGJ5IHRoZSBlbnRpdHkgY29sbGVjdGlvbidzIGZpbHRlciBmdW5jdGlvbiAqL1xuICByZWFkb25seSBmaWx0ZXIkOiBPYnNlcnZhYmxlPHN0cmluZz4gfCBTdG9yZTxzdHJpbmc+O1xuXG4gIC8qKiBPYnNlcnZhYmxlIG9mIGVudGl0aWVzIGluIHRoZSBjYWNoZWQgY29sbGVjdGlvbiB0aGF0IHBhc3MgdGhlIGZpbHRlciBmdW5jdGlvbiAqL1xuICByZWFkb25seSBmaWx0ZXJlZEVudGl0aWVzJDogT2JzZXJ2YWJsZTxUW10+IHwgU3RvcmU8VFtdPjtcblxuICAvKiogT2JzZXJ2YWJsZSBvZiB0aGUga2V5cyBvZiB0aGUgY2FjaGVkIGNvbGxlY3Rpb24sIGluIHRoZSBjb2xsZWN0aW9uJ3MgbmF0aXZlIHNvcnQgb3JkZXIgKi9cbiAgcmVhZG9ubHkga2V5cyQ6IE9ic2VydmFibGU8c3RyaW5nW10gfCBudW1iZXJbXT4gfCBTdG9yZTxzdHJpbmdbXSB8IG51bWJlcltdPjtcblxuICAvKiogT2JzZXJ2YWJsZSB0cnVlIHdoZW4gdGhlIGNvbGxlY3Rpb24gaGFzIGJlZW4gbG9hZGVkICovXG4gIHJlYWRvbmx5IGxvYWRlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gfCBTdG9yZTxib29sZWFuPjtcblxuICAvKiogT2JzZXJ2YWJsZSB0cnVlIHdoZW4gYSBtdWx0aS1lbnRpdHkgcXVlcnkgY29tbWFuZCBpcyBpbiBwcm9ncmVzcy4gKi9cbiAgcmVhZG9ubHkgbG9hZGluZyQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gfCBTdG9yZTxib29sZWFuPjtcblxuICAvKiogQ2hhbmdlU3RhdGUgKGluY2x1ZGluZyBvcmlnaW5hbCB2YWx1ZXMpIG9mIGVudGl0aWVzIHdpdGggdW5zYXZlZCBjaGFuZ2VzICovXG4gIHJlYWRvbmx5IGNoYW5nZVN0YXRlJDpcbiAgICB8IE9ic2VydmFibGU8Q2hhbmdlU3RhdGVNYXA8VD4+XG4gICAgfCBTdG9yZTxDaGFuZ2VTdGF0ZU1hcDxUPj47XG59XG5cbi8qKiBDcmVhdGVzIG9ic2VydmFibGUgRW50aXR5U2VsZWN0b3JzJCBmb3IgZW50aXR5IGNvbGxlY3Rpb25zLiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVudGl0eVNlbGVjdG9ycyRGYWN0b3J5IHtcbiAgLyoqIE9ic2VydmFibGUgb2YgdGhlIEVudGl0eUNhY2hlICovXG4gIGVudGl0eUNhY2hlJDogT2JzZXJ2YWJsZTxFbnRpdHlDYWNoZT47XG5cbiAgLyoqIE9ic2VydmFibGUgb2YgZXJyb3IgRW50aXR5QWN0aW9ucyAoZS5nLiBRVUVSWV9BTExfRVJST1IpIGZvciBhbGwgZW50aXR5IHR5cGVzICovXG4gIGVudGl0eUFjdGlvbkVycm9ycyQ6IE9ic2VydmFibGU8RW50aXR5QWN0aW9uPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxhbnk+LFxuICAgIHByaXZhdGUgYWN0aW9uczogQWN0aW9uczxFbnRpdHlBY3Rpb24+LFxuICAgIEBJbmplY3QoRU5USVRZX0NBQ0hFX1NFTEVDVE9SX1RPS0VOKVxuICAgIHByaXZhdGUgc2VsZWN0RW50aXR5Q2FjaGU6IEVudGl0eUNhY2hlU2VsZWN0b3JcbiAgKSB7XG4gICAgLy8gVGhpcyBzZXJ2aWNlIGFwcGxpZXMgdG8gdGhlIGNhY2hlIGluIG5ncngvc3RvcmUgbmFtZWQgYGNhY2hlTmFtZWBcbiAgICB0aGlzLmVudGl0eUNhY2hlJCA9IHRoaXMuc3RvcmUuc2VsZWN0KHRoaXMuc2VsZWN0RW50aXR5Q2FjaGUpO1xuICAgIHRoaXMuZW50aXR5QWN0aW9uRXJyb3JzJCA9IGFjdGlvbnMucGlwZShcbiAgICAgIGZpbHRlcihcbiAgICAgICAgKGVhOiBFbnRpdHlBY3Rpb24pID0+XG4gICAgICAgICAgZWEucGF5bG9hZCAmJlxuICAgICAgICAgIGVhLnBheWxvYWQuZW50aXR5T3AgJiZcbiAgICAgICAgICBlYS5wYXlsb2FkLmVudGl0eU9wLmVuZHNXaXRoKE9QX0VSUk9SKVxuICAgICAgKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuIGVudGl0eSBjb2xsZWN0aW9uJ3Mgc2VsZWN0b3JzJCBvYnNlcnZhYmxlcyBmb3IgdGhpcyBmYWN0b3J5J3Mgc3RvcmUuXG4gICAqIGBzZWxlY3RvcnMkYCBhcmUgb2JzZXJ2YWJsZSBzZWxlY3RvcnMgb2YgdGhlIGNhY2hlZCBlbnRpdHkgY29sbGVjdGlvbi5cbiAgICogQHBhcmFtIGVudGl0eU5hbWUgLSBpcyBhbHNvIHRoZSBuYW1lIG9mIHRoZSBjb2xsZWN0aW9uLlxuICAgKiBAcGFyYW0gc2VsZWN0b3JzIC0gc2VsZWN0b3IgZnVuY3Rpb25zIGZvciB0aGlzIGNvbGxlY3Rpb24uXG4gICAqKi9cbiAgY3JlYXRlPFQsIFMkIGV4dGVuZHMgRW50aXR5U2VsZWN0b3JzJDxUPiA9IEVudGl0eVNlbGVjdG9ycyQ8VD4+KFxuICAgIGVudGl0eU5hbWU6IHN0cmluZyxcbiAgICBzZWxlY3RvcnM6IEVudGl0eVNlbGVjdG9yczxUPlxuICApOiBTJCB7XG4gICAgY29uc3Qgc2VsZWN0b3JzJDogeyBbcHJvcDogc3RyaW5nXTogYW55IH0gPSB7XG4gICAgICBlbnRpdHlOYW1lLFxuICAgIH07XG5cbiAgICBPYmplY3Qua2V5cyhzZWxlY3RvcnMpLmZvckVhY2goKG5hbWUpID0+IHtcbiAgICAgIGlmIChuYW1lLnN0YXJ0c1dpdGgoJ3NlbGVjdCcpKSB7XG4gICAgICAgIC8vIHN0cmlwICdzZWxlY3QnIHByZWZpeCBmcm9tIHRoZSBzZWxlY3RvciBmbiBuYW1lIGFuZCBhcHBlbmQgYCRgXG4gICAgICAgIC8vIEV4OiAnc2VsZWN0RW50aXRpZXMnID0+ICdlbnRpdGllcyQnXG4gICAgICAgIGNvbnN0IG5hbWUkID0gbmFtZVs2XS50b0xvd2VyQ2FzZSgpICsgbmFtZS5zdWJzdHIoNykgKyAnJCc7XG4gICAgICAgIHNlbGVjdG9ycyRbbmFtZSRdID0gdGhpcy5zdG9yZS5zZWxlY3QoKDxhbnk+c2VsZWN0b3JzKVtuYW1lXSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgc2VsZWN0b3JzJC5lbnRpdHlBY3Rpb25zJCA9IHRoaXMuYWN0aW9ucy5waXBlKG9mRW50aXR5VHlwZShlbnRpdHlOYW1lKSk7XG4gICAgc2VsZWN0b3JzJC5lcnJvcnMkID0gdGhpcy5lbnRpdHlBY3Rpb25FcnJvcnMkLnBpcGUoXG4gICAgICBvZkVudGl0eVR5cGUoZW50aXR5TmFtZSlcbiAgICApO1xuICAgIHJldHVybiBzZWxlY3RvcnMkIGFzIFMkO1xuICB9XG59XG4iXX0=